/*
Theme Name: Hannah Sandstrom Nonoo Psychology
Template: bridge
Version: 1.0.0
Description: Bridge child theme styling for Hannah Sandstrom Nonoo Psychology.
*/

:root{
  --hsn-green:#29483A;
  --hsn-green-dark:#17382F;
  --hsn-cream:#F7F1E6;
  --hsn-cream-2:#EFE4D0;
  --hsn-sage:#A8B8A2;
  --hsn-orange:#D86627;
  --hsn-yellow:#F3B23C;
  --hsn-charcoal:#353833;
  --hsn-white:#FFFDF8;
}

body{color:var(--hsn-charcoal);background:var(--hsn-white);}
.content, .content .container, .full_width{background:var(--hsn-white);}
.hsn-page{font-size:17px;line-height:1.75;color:var(--hsn-charcoal);}
.hsn-page h1,.hsn-page h2,.hsn-page h3{font-family:Georgia,"Times New Roman",serif;color:var(--hsn-green-dark);font-weight:400;line-height:1.08;}
.hsn-page h1{font-size:clamp(44px,5.2vw,78px);letter-spacing:-.025em;}
.hsn-page h2{font-size:clamp(34px,3.5vw,54px);}
.hsn-page h3{font-size:25px;}
.hsn-eyebrow{font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--hsn-green);font-weight:700;margin-bottom:18px;}
.hsn-accent{color:var(--hsn-orange);}
.hsn-section{padding:90px 7vw;}
.hsn-section--cream{background:var(--hsn-cream);}
.hsn-section--soft{background:#FBF8F1;}
.hsn-section--green{background:var(--hsn-green-dark);color:#fff;}
.hsn-section--green h2,.hsn-section--green h3{color:#fff;}
.hsn-hero{padding:115px 7vw;background:linear-gradient(90deg,rgba(247,241,230,.98) 0%,rgba(247,241,230,.92) 48%,rgba(247,241,230,.40) 72%),linear-gradient(135deg,#f7f1e6,#d8cdbb);position:relative;overflow:hidden;}
.hsn-hero:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-100px;top:-110px;background:rgba(243,178,60,.18);}
.hsn-hero .wpb_wrapper{position:relative;z-index:2;}
.hsn-hero p{max-width:650px;font-size:20px;}
.hsn-btn,.hsn-page a.hsn-btn{display:inline-block;background:var(--hsn-orange);color:#fff!important;padding:14px 26px;border-radius:30px;text-decoration:none!important;font-weight:700;margin-top:16px;transition:.25s ease;}
.hsn-btn:hover,.hsn-page a.hsn-btn:hover{background:var(--hsn-green-dark);}
.hsn-btn--yellow,.hsn-page a.hsn-btn--yellow{background:var(--hsn-yellow);color:var(--hsn-green-dark)!important;}
.hsn-grid{display:grid;gap:24px;}
.hsn-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.hsn-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.hsn-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}
.hsn-card{height:100%;background:#fff;border:1px solid rgba(41,72,58,.12);border-radius:16px;padding:34px;box-shadow:0 10px 35px rgba(23,56,47,.06);}
.hsn-card .hsn-icon{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#FCE6C3;color:var(--hsn-orange);font-size:25px;margin-bottom:20px;}
.hsn-card:nth-child(3n+1) .hsn-icon{background:#DDE7DA;color:var(--hsn-green);}
.hsn-quote{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-style:italic;color:var(--hsn-green-dark);border-left:4px solid var(--hsn-yellow);padding:15px 0 15px 28px;}
.hsn-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.hsn-image-panel{min-height:420px;border-radius:18px;background:linear-gradient(145deg,#d8e1d4,#f2c46c);position:relative;overflow:hidden;}
.hsn-image-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(255,255,255,.65),transparent 28%),linear-gradient(155deg,transparent 20%,rgba(41,72,58,.32));}
.hsn-list{list-style:none;padding:0;margin:25px 0;}
.hsn-list li{padding:10px 0 10px 32px;position:relative;border-bottom:1px solid rgba(41,72,58,.1);}
.hsn-list li:before{content:"✓";position:absolute;left:0;color:var(--hsn-orange);font-weight:800;}
.hsn-resource{border-top:3px solid var(--hsn-yellow);}
.hsn-contact-box{background:var(--hsn-cream);border-radius:18px;padding:35px;}
.hsn-page input[type=text],.hsn-page input[type=email],.hsn-page input[type=tel],.hsn-page textarea{width:100%;box-sizing:border-box;border:1px solid #d8d2c8!important;background:#fff!important;padding:14px 16px!important;border-radius:8px!important;margin-bottom:14px!important;color:var(--hsn-charcoal)!important;}
.hsn-page textarea{min-height:160px;}
.hsn-small{font-size:14px;opacity:.82;}
.hsn-divider{width:42px;height:3px;background:var(--hsn-yellow);margin:18px 0 28px;}
.hsn-center{text-align:center;}
.hsn-center .hsn-divider{margin-left:auto;margin-right:auto;}
@media(max-width:900px){
 .hsn-section,.hsn-hero{padding:65px 28px;}
 .hsn-grid--4,.hsn-grid--3{grid-template-columns:repeat(2,minmax(0,1fr));}
 .hsn-split{grid-template-columns:1fr;gap:35px;}
}
@media(max-width:600px){
 .hsn-grid--4,.hsn-grid--3,.hsn-grid--2{grid-template-columns:1fr;}
 .hsn-hero{padding:70px 22px;}
 .hsn-section{padding:55px 22px;}
 .hsn-page h1{font-size:43px;}
 .hsn-page h2{font-size:34px;}
}


/* =========================================================
   HANNAH CUSTOM HEADER + FOOTER
   ========================================================= */

/* Hide Bridge's native header/footer because this child theme supplies its own. */
header.page_header, .page_header, footer.footer, .footer_top_holder, .footer_bottom_holder {display:none!important;}
.content{margin-top:0!important;}

.hsn-site-header{
  position:relative; z-index:1000; background:#FFFDF8;
  border-bottom:1px solid rgba(41,72,58,.08);
}
.hsn-header-inner{
  max-width:1450px; min-height:86px; margin:0 auto; padding:0 5vw;
  display:flex; align-items:center; justify-content:space-between; gap:30px;
}
.hsn-brand{display:flex;align-items:center;gap:14px;text-decoration:none!important;color:var(--hsn-green-dark)!important;}
.hsn-brand-mark{width:48px;height:48px;display:block;position:relative;}
.hsn-brand-mark:before,.hsn-brand-mark:after,.hsn-brand-mark span:before{
  content:"";position:absolute;border:2px solid var(--hsn-green);border-radius:100% 0 100% 0;width:20px;height:30px;
}
.hsn-brand-mark:before{left:7px;top:12px;transform:rotate(-38deg);}
.hsn-brand-mark:after{left:22px;top:8px;transform:rotate(38deg);}
.hsn-brand-mark span:before{width:10px;height:10px;border:0;border-radius:50%;background:var(--hsn-yellow);right:1px;top:1px;}
.hsn-brand-copy{display:flex;flex-direction:column;line-height:1;}
.hsn-brand-copy strong{font:400 23px/1.1 Georgia,"Times New Roman",serif;white-space:nowrap;}
.hsn-brand-copy small{font-size:10px;letter-spacing:.34em;margin-top:8px;color:var(--hsn-green);}
.hsn-main-nav{display:flex;align-items:center;gap:35px;}
.hsn-menu{display:flex;align-items:center;gap:32px;list-style:none!important;margin:0!important;padding:0!important;}
.hsn-menu li{margin:0!important;}
.hsn-menu a{color:var(--hsn-green-dark)!important;text-decoration:none!important;font-size:14px;position:relative;padding:32px 0;}
.hsn-menu a:hover:after,.hsn-menu .current-menu-item>a:after{
  content:"";height:2px;background:var(--hsn-orange);position:absolute;left:0;right:0;bottom:22px;
}
.hsn-header-cta{
  background:var(--hsn-orange);color:#fff!important;text-decoration:none!important;
  padding:13px 23px;border-radius:28px;font-weight:600;white-space:nowrap;
}
.hsn-header-cta:hover{background:var(--hsn-green-dark);}
.hsn-menu-toggle{display:none;background:none;border:0;font-size:28px;color:var(--hsn-green-dark);}

.hsn-site-footer{background:#FFFDF8;color:var(--hsn-green-dark);}
.hsn-footer-cta{
  background:var(--hsn-green-dark);color:#fff;display:flex;align-items:center;justify-content:center;
  gap:90px;padding:45px 7vw;text-align:left;
}
.hsn-footer-cta h2{color:#fff;font:400 34px/1.1 Georgia,"Times New Roman",serif;margin:0 0 8px;}
.hsn-footer-cta p{margin:0;color:rgba(255,255,255,.84);}
.hsn-footer-cta .hsn-eyebrow{color:var(--hsn-yellow);margin-bottom:8px;}
.hsn-footer-main{
  max-width:1450px;margin:0 auto;padding:45px 5vw 35px;
  display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;align-items:center;
}
.hsn-footer-main .hsn-brand-mark{width:42px;height:42px;}
.hsn-footer-main .hsn-brand-copy strong{font-size:20px;}
.hsn-copyright{font-size:12px;color:#6e716d;margin:25px 0 0;}
.hsn-footer-menu{display:flex;justify-content:center;gap:22px;list-style:none!important;margin:0!important;padding:0!important;flex-wrap:wrap;}
.hsn-footer-menu a{color:var(--hsn-green-dark)!important;text-decoration:none!important;font-size:13px;}
.hsn-footer-tagline{text-align:right;font-size:10px;letter-spacing:.24em;color:#65766f;}
.hsn-footer-tagline i{display:inline-block;width:28px;height:2px;background:var(--hsn-yellow);vertical-align:middle;margin-left:10px;}

@media(max-width:1000px){
 .hsn-header-inner{min-height:74px;}
 .hsn-menu-toggle{display:block;}
 .hsn-main-nav{
   display:none;position:absolute;top:74px;left:0;right:0;background:#FFFDF8;padding:20px 6vw 28px;
   border-top:1px solid rgba(41,72,58,.08);box-shadow:0 12px 25px rgba(0,0,0,.06);
   align-items:stretch;
 }
 .hsn-main-nav.is-open{display:block;}
 .hsn-menu{display:block;}
 .hsn-menu li{border-bottom:1px solid rgba(41,72,58,.09);}
 .hsn-menu a{display:block;padding:14px 0;}
 .hsn-menu a:hover:after,.hsn-menu .current-menu-item>a:after{display:none;}
 .hsn-header-cta{display:inline-block;margin-top:20px;}
 .hsn-footer-main{grid-template-columns:1fr;text-align:center;}
 .hsn-footer-main .hsn-brand{justify-content:center;}
 .hsn-footer-tagline{text-align:center;}
 .hsn-footer-cta{gap:35px;}
}
@media(max-width:650px){
 .hsn-brand-copy strong{font-size:17px;}
 .hsn-brand-copy small{font-size:8px;}
 .hsn-brand-mark{width:38px;height:38px;}
 .hsn-footer-cta{display:block;text-align:center;padding:38px 25px;}
 .hsn-footer-cta .hsn-btn{margin-top:20px;}
}
