
:root{
 --sage:#78917e;--dark:#3e5a50;--pink:#c97972;--cream:#fbf7f1;
 --logo-bg:#faf5ef;--blush:#f4e3dd;--soft:#e8eee7;--text:#314a43;
 --copy:#58645f;--white:#fffdfa;--line:#ded8d1
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
.wrap{width:min(1120px,calc(100% - 64px));margin:auto}
header{background:var(--logo-bg);border-bottom:1px solid #e7e0da;position:sticky;top:0;z-index:50}
.nav{min-height:92px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.logo{width:205px;height:72px;object-fit:contain;object-position:left center}
.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:12px}
.desktop-nav a{white-space:nowrap}
.btn,button{border:0;background:var(--sage);color:#fff;border-radius:999px;padding:13px 22px;font-weight:700;font-size:12px;cursor:pointer}
.btn.outline{background:transparent;color:var(--dark);border:1px solid var(--sage)}
.mobile-toggle{display:none;margin-left:auto;background:transparent;color:var(--dark);border:1px solid var(--sage);border-radius:10px;padding:9px 12px;font-size:20px;line-height:1}
.mobile-nav{display:none;background:var(--logo-bg);border-top:1px solid #e7e0da;padding:8px 0 18px}
.mobile-nav.open{display:block}
.mobile-nav a{display:block;padding:11px 0;font-size:14px;border-bottom:1px solid rgba(62,90,80,.08)}
.mobile-nav .btn{display:inline-flex;margin-top:14px;border-bottom:0}

.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:#687d74;margin-bottom:12px}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:0;color:var(--text)}
h1{font-size:66px;line-height:1.02}h2{font-size:43px;line-height:1.08}h3{font-size:23px;line-height:1.18}
p{color:var(--copy)}.lead{font-size:18px;max-width:560px;margin:22px 0}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero{padding:72px 0;background:linear-gradient(90deg,var(--cream) 0 55%,#f1e2dc 55%)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.image-placeholder{min-height:330px;background:#e7ddd3;border:1px solid #d8cdc3;display:grid;place-items:center;text-align:center;color:#7b7169;font-family:Georgia,'Times New Roman',serif;font-size:21px}
.image-placeholder small{font-family:Arial;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.hero-image{min-height:390px;background:linear-gradient(135deg,#e4e9df,#ead8d2)}
.section{padding:86px 0;background:var(--white)}.blush{background:var(--blush)}.sage-soft{background:var(--soft)}
.text-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}
.copy p{margin:0 0 12px;font-size:15px}
.counselling-grid,.about-grid,.guide-grid,.content-grid{display:grid;grid-template-columns:1fr .9fr;gap:80px;align-items:center}
.counselling-grid p,.about-grid p,.guide-grid p,.content-grid p{font-size:15px}
.section-head{max-width:720px;margin-bottom:40px}
.support-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cfd8cf}
.support-list article{padding:28px 30px 28px 0;border-bottom:1px solid #cfd8cf}
.support-list article:nth-child(even){padding-left:40px;border-left:1px solid #cfd8cf}
.support-list p{margin:8px 0 0;font-size:14px}.support-list .wide{grid-column:1/-1;border-left:0!important;padding-left:0!important}
.about-grid{grid-template-columns:.75fr 1.25fr}.portrait{min-height:430px;background:#e5ddd4}
.guide{background:#f8ebe5}.guide-grid{grid-template-columns:1.25fr .75fr}
.guide-card{width:280px;min-height:350px;justify-self:center;background:#fffaf4;box-shadow:0 16px 38px #a78f8440;padding:50px 30px;display:flex;flex-direction:column;justify-content:center;text-align:center;transform:rotate(2deg)}
.guide-card strong{font-family:Georgia;font-size:34px;font-weight:400;line-height:1.1}.guide-card span{margin-top:20px;font-size:12px;color:var(--copy)}
.mini-logo{font-size:11px;letter-spacing:2px;color:var(--sage);margin-bottom:28px}
.cta{padding:66px 0;background:var(--pink);color:white}.cta h2,.cta p{color:white}.cta p{max-width:650px}.light{color:#f8eae5}
.cta-grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.cream-btn{background:var(--cream);color:var(--dark)}

.page-hero{padding:78px 0 64px;background:linear-gradient(110deg,var(--cream),#f4e5df)}
.page-hero .wrap{max-width:900px}.page-hero h1{font-size:58px}.page-hero h2{font-size:30px;margin-top:16px;max-width:820px}
.prose{max-width:820px}.prose p{font-size:16px;margin:0 0 16px}.prose h2{margin:44px 0 18px}.prose h3{margin:30px 0 12px}
.check-list{list-style:none;padding:0;margin:22px 0}.check-list li{padding:11px 0 11px 27px;border-bottom:1px solid var(--line);position:relative;color:var(--copy)}
.check-list li:before{content:"•";position:absolute;left:4px;color:var(--pink);font-size:22px;top:5px}
.question-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.question-list div{background:var(--blush);padding:20px;border-radius:12px;font-family:Georgia;font-size:20px}
.info-box{background:var(--soft);padding:28px;border-radius:14px;margin:28px 0}
.legal{max-width:860px}.legal h2{font-size:30px;margin:38px 0 14px}.legal h3{font-size:21px;margin:25px 0 10px}.legal p,.legal li{color:var(--copy);font-size:14px}
.form-placeholder{border:1px solid var(--line);background:#fff;padding:28px;border-radius:14px}.form-placeholder label{display:block;font-size:12px;font-weight:700;margin:15px 0 6px}.field{height:44px;border:1px solid #d5cec7;border-radius:8px;background:#fff}.field.large{height:120px}

footer{padding:36px 0 22px;background:var(--logo-bg);border-top:1px solid #e7e0da}
.footer-top{display:grid;grid-template-columns:220px 1fr;gap:45px;align-items:start}
.footer-logo{width:185px;height:76px;object-fit:contain;object-position:left center}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.footer-links strong{display:block;font-size:12px;margin-bottom:9px}.footer-links a{display:block;font-size:11px;color:var(--copy);padding:3px 0}
.footer-bottom{border-top:1px solid var(--line);margin-top:26px;padding-top:16px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--copy)}

@media(max-width:980px){
 .desktop-nav{display:none}.mobile-toggle{display:block}
 .hero-grid,.text-split,.counselling-grid,.about-grid,.guide-grid,.content-grid,.cta-grid{grid-template-columns:1fr;gap:42px}
 .hero{background:var(--cream)}.support-list{grid-template-columns:1fr}
 .support-list article:nth-child(even){padding-left:0;border-left:0}.support-list .wide{grid-column:auto}
 h1{font-size:52px}.page-hero h1{font-size:48px}.guide-card{justify-self:start}
 .question-list{grid-template-columns:1fr}
 .footer-top{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:620px){
 .wrap{width:calc(100% - 32px)}.nav{min-height:76px}.logo{width:160px;height:60px}
 .hero,.section,.page-hero{padding:58px 0}h1{font-size:42px}.page-hero h1{font-size:40px}h2{font-size:34px}
 .image-placeholder,.hero-image{min-height:260px}.portrait{min-height:320px}.guide-card{width:230px;min-height:290px}
 .footer-links{grid-template-columns:1fr 1fr}.footer-bottom{display:block}.footer-bottom div+div{margin-top:8px}
}


/* Selected online-counselling hero image */
.hero-photo{min-height:390px;overflow:hidden;background:#eadfd5}
.hero-photo img{width:100%;height:100%;min-height:390px;object-fit:cover;object-position:48% center}
@media(max-width:980px){
 .hero-photo{min-height:360px}
 .hero-photo img{min-height:360px;object-position:43% center}
}
@media(max-width:620px){
 .hero-photo{min-height:300px}
 .hero-photo img{min-height:300px;object-position:40% center}
}

/* V4 refined homepage hero */
.hero{padding:76px 0 82px;background:var(--cream);overflow:hidden}
.hero-grid{grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}
.hero-photo{min-height:390px;overflow:hidden;border-radius:16px;background:#eadfd5;box-shadow:0 22px 48px rgba(70,61,55,.18)}
.hero-photo img{width:100%;height:100%;min-height:390px;display:block;object-fit:cover;object-position:48% center}
@media(max-width:980px){
 .hero{padding:58px 0 64px}.hero-grid{grid-template-columns:1fr;gap:38px}
 .hero-photo{min-height:360px;border-radius:14px;box-shadow:0 16px 34px rgba(70,61,55,.16)}
 .hero-photo img{min-height:360px;object-position:43% center}
}
@media(max-width:620px){
 .hero{padding:44px 0 52px}.hero-photo{min-height:285px;border-radius:12px}
 .hero-photo img{min-height:285px;object-position:40% center}
}

/* V5 — larger homepage hero image */
.hero .wrap{
  width:min(1240px,calc(100% - 64px));
}
.hero-grid{
  grid-template-columns:.92fr 1.08fr;
  gap:54px;
}
.hero-photo{
  min-height:470px;
}
.hero-photo img{
  min-height:470px;
}
@media(max-width:980px){
  .hero .wrap{width:min(1120px,calc(100% - 48px))}
  .hero-grid{grid-template-columns:1fr}
  .hero-photo,.hero-photo img{min-height:420px}
}
@media(max-width:620px){
  .hero .wrap{width:calc(100% - 32px)}
  .hero-photo,.hero-photo img{min-height:320px}
}

/* V6 homepage — full-bleed photographic hero */
.hero-background{
  position:relative;
  min-height:650px;
  padding:0;
  background:#eee6dc;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.hero-background-image{
  position:absolute;
  inset:0;
  background-image:url("assets/hero-reflection-coast.png");
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.hero-background-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(249,245,239,.98) 0%,
    rgba(249,245,239,.94) 24%,
    rgba(249,245,239,.76) 40%,
    rgba(249,245,239,.30) 55%,
    rgba(249,245,239,0) 70%
  );
}
.hero-background-content{
  position:relative;
  z-index:2;
  width:min(1240px,calc(100% - 64px));
  padding:86px 0;
}
.hero-background .hero-copy{
  max-width:650px;
}
.hero-background h1,
.hero-background .eyebrow,
.hero-background .hero-lead{
  color:var(--deep-green);
}
.hero-background .hero-lead{
  max-width:570px;
}
.hero-background .button.secondary{
  background:rgba(249,245,239,.68);
  backdrop-filter:blur(2px);
}

/* Former hero image now belongs to the counselling explanation section */
.counselling-online-photo{
  overflow:hidden;
  border-radius:16px;
  box-shadow:0 18px 40px rgba(70,61,55,.14);
}
.counselling-online-photo img{
  display:block;
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  object-position:center;
}

@media(max-width:980px){
  .hero-background{min-height:610px}
  .hero-background-image{background-position:64% center}
  .hero-background-overlay{
    background:linear-gradient(
      90deg,
      rgba(249,245,239,.97) 0%,
      rgba(249,245,239,.90) 42%,
      rgba(249,245,239,.52) 65%,
      rgba(249,245,239,.12) 100%
    );
  }
  .hero-background-content{
    width:min(1120px,calc(100% - 48px));
    padding:72px 0;
  }
}
@media(max-width:620px){
  .hero-background{
    min-height:650px;
    align-items:flex-end;
  }
  .hero-background-image{
    background-position:68% center;
  }
  .hero-background-overlay{
    background:linear-gradient(
      180deg,
      rgba(249,245,239,.12) 0%,
      rgba(249,245,239,.45) 34%,
      rgba(249,245,239,.94) 68%,
      rgba(249,245,239,.99) 100%
    );
  }
  .hero-background-content{
    width:calc(100% - 32px);
    padding:250px 0 48px;
  }
  .hero-background h1 br{display:none}
  .counselling-online-photo img{min-height:300px}
}

/* V7 — explicit hero CTA buttons */
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
  position:relative;
  z-index:3;
}
.hero-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 22px;
  border-radius:999px;
  font-weight:700;
  font-size:14px;
  line-height:1.2;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease;
}
.hero-btn:hover{transform:translateY(-1px)}
.hero-btn-primary{
  background:#78917e;
  color:#fff;
  border:1px solid #78917e;
}
.hero-btn-secondary{
  background:rgba(250,245,239,.88);
  color:#355148;
  border:1px solid #78917e;
  backdrop-filter:blur(2px);
}
@media(max-width:620px){
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-btn{width:100%;text-align:center}
}

/* V8 — Overcoming ADHD Paralysis lead magnet */
.guide-download-grid{display:grid;grid-template-columns:1fr .9fr;gap:64px;align-items:start}
.lead-form-card{background:#faf5ef;border:1px solid rgba(120,145,126,.28);border-radius:18px;padding:34px;box-shadow:0 16px 38px rgba(70,61,55,.08)}
.lead-form-card h2{margin-top:4px}
.guide-form{display:grid;gap:10px;margin-top:24px}
.guide-form label{font-weight:700;color:var(--deep-green);margin-top:8px}
.guide-form input{width:100%;padding:14px 15px;border:1px solid rgba(53,81,72,.35);border-radius:10px;background:#fff;font:inherit;color:#293c36}
.guide-form input:focus{outline:2px solid rgba(120,145,126,.32);border-color:#78917e}
.form-disclosure,.form-note{font-size:13px;line-height:1.55;color:#5f6c67}
.form-disclosure{margin:10px 0 8px}
.form-note{margin-top:18px}
.guide-submit{border:0;cursor:pointer;margin-top:4px}
.guide-success{padding-top:18px}
.guide-success h3{font-family:Georgia,serif;font-size:27px;color:var(--deep-green);margin:0 0 8px}
@media(max-width:820px){.guide-download-grid{grid-template-columns:1fr;gap:36px}.lead-form-card{padding:26px}}

.contact-form{display:grid;gap:10px;max-width:680px}.contact-form label{font-weight:700;color:var(--deep-green);margin-top:8px}
.contact-form input,.contact-form textarea{width:100%;padding:14px 15px;border:1px solid rgba(53,81,72,.35);border-radius:10px;background:#fff;font:inherit;color:#293c36}
.contact-form textarea{resize:vertical}.contact-form .btn{border:0;cursor:pointer;justify-self:start;margin-top:10px}
.footer-crisis{max-width:1180px;margin:24px auto 0;padding:18px 24px 0;border-top:1px solid rgba(53,81,72,.16);font-size:13px;line-height:1.55;text-align:center}

/* V10 professional details */
.professional-details{background:#faf5ef}
.registration-pending{font-style:italic;color:#68756f}
.service-detail-note{margin-top:22px;padding:18px 20px;border-left:3px solid #78917e;background:#faf5ef}
.service-detail-note p{margin:4px 0}

/* V11 FAQ */
.faq-section{background:#fff}
.faq-heading{max-width:720px;margin-bottom:30px}
.faq-list{max-width:900px}
.faq-list details{border-top:1px solid rgba(53,81,72,.20);padding:0}
.faq-list details:last-child{border-bottom:1px solid rgba(53,81,72,.20)}
.faq-list summary{cursor:pointer;list-style:none;padding:20px 42px 20px 0;font-family:Georgia,serif;font-size:21px;line-height:1.35;color:var(--deep-green);position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:4px;top:17px;font-family:Arial,sans-serif;font-size:27px;font-weight:400;color:#78917e}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{max-width:760px;margin:0;padding:0 42px 20px 0;line-height:1.7}

/* V12 requested refinements */
.footer-social{display:flex;justify-content:center;gap:24px;margin:24px auto 0}.footer-social a{color:inherit;text-decoration:none;font-weight:600}.footer-social a:hover{text-decoration:underline}.footer-crisis{max-width:1180px;margin:18px auto;padding:16px 24px;border-top:1px solid rgba(53,81,72,.16);border-bottom:1px solid rgba(53,81,72,.16);font-size:13px;line-height:1.55;text-align:center}
