@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-display: swap;
    margin: 0;
    background-color: #ffffff;
}

img {
    max-width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
}

header.main-header {
    background-color: #1c0337;
    color:#fff;
}

.thg-container {
    max-width:1200px;
    margin:0 auto;
    padding:0 20px 40px;
}

.thg-section .thg-container > * {
    padding-left: 12px;
    padding-right: 12px;
}

/* HERO */
.thg-hero {
    padding:80px 20px 40px;
    background: radial-gradient(circle at top left, #522081, #000000 60%, #000020 100%);
    color:#fff;
}

.thg-hero-inner {
    display:grid;
    grid-template-columns:2fr 1.5fr;
    gap:30px;
    align-items:center;
    max-width:1200px;
    margin:0 auto;
}

.thg-hero h1 {
    font-size:2.5rem;
    margin-bottom:.5rem;
}

.thg-hero h2 {
    font-size:1.5rem;
    font-weight:400;
    margin-bottom:1rem;
}

.thg-btn {
    background:#ffb400;
    color:#000;
    padding:12px 22px;
    border-radius:4px;
    text-decoration:none;
    font-weight:600;
    text-transform:uppercase;
    display:inline-block;
    margin:10px 10px 0 0;
    letter-spacing:0.03em;
}

.thg-btn-secondary {
    border:1px solid #fff;
    background:transparent;
    color:#fff;
}

.thg-section {
    padding:40px 0;
}

.thg-intro {
    font-size: 1.05rem;
    font-weight: 500;
    margin-bottom: 8px;
    opacity: 0.95;
}

.thg-why {
    font-size: 1.05rem;
    margin-top: 10px;
    line-height: 1.6;
}

.thg-section.alt {
    background:#f9f9f9;
}

/* FAQ SECTION – full width patterned background */
.thg-section.alt#faq-blocks {
    background-color: #f9f9f9;
    background-image: url("https://www.thathypnotistguy.com/wp-content/uploads/2020/05/que.png");
    background-repeat: repeat;
    background-position: center center;
    background-size: 400px;
}

/* ✅ ADDITION: inset FAQ content for more side margin */
#faq-blocks .thg-container {
    padding-left: 40px;
    padding-right: 40px;
}

.thg-two-col {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:32px;
}

.thg-testimonial {
    background:#f0f0ff;
    padding:20px;
    border-left:10px solid #020083;
    border-radius:4px;
    font-style:italic;
    margin-bottom:20px;
}

.thg-testimonial-split {
  display: grid;
  gap: 32px;
  align-items: center;
}

/* Desktop: 2 columns */
@media (min-width: 900px) {
  .thg-testimonial-split {
    grid-template-columns: 1fr 1.2fr;
  }
}

/* Image */
.thg-testimonial-image .image-wrap {
  width: 100%;
  height: 260px;
  overflow: hidden;
  border-radius: 6px;
}

.thg-testimonial-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Quotes */
.thg-testimonial-quotes {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.thg-testimonial-quotes .quote p {
  margin: 0 0 6px;
  font-size: 1.05rem;
  line-height: 1.55;
}

.thg-testimonial-quotes .quote span {
  font-weight: 600;
  font-size: 0.95rem;
  opacity: 0.85;
}

/* Testimonials v2 layout */
.thg-testimonials-v2{
  display:grid;
  gap:24px;
  align-items:start;
}

/* Desktop: image left, 2 quotes right, long quote full width underneath */
@media (min-width: 900px){
  .thg-testimonials-v2{
    grid-template-columns: 1fr 1.15fr;
    grid-template-areas:
      "img short"
      "long long";
  }
  .thg-testimonial-image{ grid-area: img; }
  .thg-testimonial-short-quotes{ grid-area: short; }
  .thg-testimonial-long{ grid-area: long; }
}

/* Mobile/tablet: stack */
@media (max-width: 899px){
  .thg-testimonials-v2{
    grid-template-columns: 1fr;
  }
}

/* Image sizing (so it doesn’t dominate) */
.thg-testimonial-image .image-wrap{
  width:100%;
  height:220px;          /* adjust: 180–240 */
  overflow:hidden;
  border-radius:6px;
}
.thg-testimonial-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Make the two short quotes feel tidy */
.thg-testimonial-short-quotes{
  display:flex;
  flex-direction:column;
  gap:18px;
}

/* ===== STATIC FOOTER ===== */
.thg-static-footer {
  background: #0b0b2b;
  color: #ffffff;
  padding: 60px 20px 0;
  margin-top: 60px;
}

.thg-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 2fr 1fr 1.5fr;
  gap: 40px;
}

.thg-footer-brand h2 {
  font-size: 2rem;
  margin: 0 0 10px;
}

.thg-footer-brand h3 {
  font-size: 1.1rem;
  margin: 0 0 15px;
  font-weight: 500;
  opacity: 0.9;
}

.thg-footer-brand p {
  font-size: 0.95rem;
  line-height: 1.6;
  opacity: 0.85;
}

.thg-footer-links h4,
.thg-footer-cta h4 {
  font-size: 1rem;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.thg-footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.thg-footer-links li {
  margin-bottom: 8px;
}

.thg-footer-links a {
  color: #ffffff;
  text-decoration: none;
  opacity: 0.85;
}

.thg-footer-links a:hover {
  opacity: 1;
  text-decoration: underline;
}

.thg-footer-cta p {
  font-size: 0.9rem;
  line-height: 1.6;
  opacity: 0.85;
  margin-bottom: 15px;
}

.thg-footer-btn {
  display: inline-block;
  background: #ffb400;
  color: #000;
  padding: 10px 18px;
  border-radius: 4px;
  font-weight: 600;
  text-decoration: none;
}

.thg-footer-btn:hover {
  background: #ffc933;
}

.thg-footer-bottom {
  margin-top: 40px;
  padding: 15px 0;
  border-top: 1px solid rgba(255,255,255,0.15);
  text-align: center;
  font-size: 0.85rem;
  opacity: 0.8;
}

/* Mobile */
@media (max-width: 900px) {
  .thg-footer-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .thg-footer-btn {
    margin-top: 10px;
  }
}


.thg-monkey {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    align-items:center;
}

.thg-monkey img {
    border-radius:6px;
    box-shadow:0 6px 20px rgba(0,0,0,0.35);
}

/* Award banner */
.thg-award-banner {
    margin-top:20px;
    padding:12px 18px;
    background:#fff4cc;
    color:#222;
    border-left:10px solid #ffb400;
    border-radius:4px;
    font-size:0.95rem;
}
.thg-award-banner a {
    color:#020083;
    font-weight:600;
    text-decoration:none;
}

/* FAQ Block Styling */
#faq-blocks h3 {
    margin-top:0;
    text-align:center;
}

#faq-blocks .thg-two-col > div {
    background:#e5e5e5;
    padding:20px;
    border-radius:6px;
}

/* Inquiry iframe */
.iframe-wrapper {
    width:100%;
    overflow:hidden;
    border-radius:6px;
    background:#fff;
}

#inquiry-iframe {
    width:100%;
    height: 1400px;
    border:none;
    display:block;
    contain: layout paint;
}

footer.thg-footer {
    background:#111;
    color:#ccc;
    padding:20px 0;
    font-size:.85rem;
}

/* MOBILE LAYOUT */
@media (max-width: 900px) {

    .thg-hero-inner {
        grid-template-columns: 1fr !important;
        text-align: center;
    }

    .thg-two-col {
        grid-template-columns:1fr !important;
    }

    .thg-monkey {
        grid-template-columns:1fr !important;
        text-align:center;
    }

    .thg-monkey img {
        max-width:80%;
        margin:0 auto;
    }

    header.main-header .thg-container {
        display:flex;
        flex-direction:column;
        align-items:center;
        text-align:center;
        gap:10px;
    }

    header.main-header ul {
        flex-direction:column;
        gap:5px;
    }
    


/* Mobile: stacked (default) */

    /* ✅ Mobile-friendly FAQ padding */
    #faq-blocks .thg-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    #inquiry-iframe {
        height: 1600px;
    }
}