:root{--ink:#1f302b;--muted:#5f7069;--cream:#f8faf6;--soft:#eaf0ea;--rose:#9fb7a7;--brown:#285548;--white:#fff;--line:rgba(31,48,43,.14);--forest:#173b31;--eucalyptus:#3f7566;--sage:#a9bfae;--mist:#eef3ee;--moss:#6d8877;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--cream);line-height:1.65}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{width:min(1120px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(248,250,246,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:"Playfair Display",serif;font-size:25px}.brand span{font-style:italic}.main-nav{display:flex;align-items:center;gap:28px;font-size:14px}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;padding:14px 24px;background:var(--brown);color:white;font:600 14px "DM Sans",sans-serif;cursor:pointer}.button.small{padding:10px 18px}.menu-toggle{display:none;background:none;border:0}.hero{padding:72px 0 80px}.hero-grid{display:grid;grid-template-columns:1.05fr .78fr;align-items:center;gap:90px}.hero-copy h1,.short-copy h2,.center-heading h2,.story-copy h2,.contact-copy h2,.fee-box h2{font-family:"Playfair Display",serif;font-weight:500;line-height:1.08;margin:12px 0 22px}.hero-copy h1{font-size:clamp(52px,6vw,82px);max-width:760px}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:590px;margin:0 0 30px;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600;color:var(--brown);margin:0}.hero-photo{height:620px;border-radius:180px 180px 24px 24px;overflow:hidden;box-shadow:0 22px 60px rgba(23,59,49,.15)}.section{padding:110px 0}.intro-grid,.story-grid,.contact-grid{display:grid;grid-template-columns:.82fr 1fr;gap:100px;align-items:center}.photo-card{height:620px;overflow:hidden;border-radius:22px}.short-copy h2,.story-copy h2,.contact-copy h2{font-size:clamp(40px,5vw,62px)}.short-copy p,.story-copy p,.contact-copy p{font-size:18px;color:var(--muted);max-width:560px}.text-link{display:inline-block;margin-top:12px;font-weight:600;border-bottom:1px solid var(--ink)}.muted{background:var(--soft)}.center-heading{text-align:center;max-width:700px;margin:0 auto 48px}.center-heading h2{font-size:clamp(40px,5vw,62px)}.simple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.simple-card{background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.8);padding:34px;border-radius:18px}.simple-card h3{font-family:"Playfair Display",serif;font-size:25px;margin:0 0 10px}.simple-card p{margin:0;color:var(--muted)}.story-strip{padding-top:90px}.story-grid{grid-template-columns:1fr .72fr}.wide-photo{height:560px;border-radius:24px;overflow:hidden}.fees{padding-top:20px}.fee-box{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--brown);color:white;border-radius:24px;padding:56px 64px;align-items:center}.fee-box .eyebrow{color:#dce9df}.fee-box h2{font-size:48px}.fee-box p{color:rgba(255,255,255,.8);margin:8px 0}.small-text{font-size:13px}.contact-grid{align-items:start}.contact-copy a{font-weight:600;border-bottom:1px solid}.contact-form{display:grid;gap:18px;background:white;padding:38px;border-radius:20px;box-shadow:0 14px 45px rgba(23,59,49,.08)}label{display:grid;gap:7px;font-size:13px;font-weight:600}input,textarea{width:100%;border:1px solid var(--line);background:#fbfdf9;border-radius:10px;padding:13px;font:inherit;color:inherit}textarea{resize:vertical}.contact-form .button{justify-self:start}footer{border-top:1px solid var(--line);padding:32px 0}.footer-wrap{display:flex;justify-content:space-between;align-items:center}.footer-wrap>div:first-child{display:grid}.footer-wrap span{font-size:13px;color:var(--muted)}.footer-links{display:flex;gap:24px;font-size:13px}.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.container{width:min(100% - 28px,1120px)}.nav-wrap{height:68px}.menu-toggle{display:grid;gap:5px;padding:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink)}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);padding:24px;flex-direction:column;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{padding:46px 0 60px}.hero-grid,.intro-grid,.story-grid,.contact-grid,.fee-box{grid-template-columns:1fr;gap:38px}.hero-copy h1{font-size:48px}.hero-photo{height:500px;order:-1;border-radius:120px 120px 18px 18px}.section{padding:76px 0}.photo-card,.wide-photo{height:490px}.simple-grid{grid-template-columns:1fr}.fee-box{padding:38px 28px}.fee-box h2{font-size:40px}.contact-form{padding:26px}.footer-wrap{align-items:flex-start;gap:20px}.footer-links{flex-direction:column;gap:6px}}


.credentials{padding-top:30px}.credentials-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch}.credentials-card,.experience-card{border-radius:24px;padding:46px}.credentials-card{background:white;border:1px solid var(--line)}.credentials-card h2{font-family:"Playfair Display",serif;font-size:clamp(36px,4vw,50px);font-weight:500;line-height:1.12;margin:12px 0 26px}.credentials-card>p:last-child{color:var(--muted);max-width:650px;margin:28px 0 0}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-list span{display:inline-flex;align-items:center;min-height:42px;padding:9px 15px;border:1px solid rgba(40,85,72,.24);border-radius:999px;color:var(--brown);font-size:14px;background:#fff}.experience-card{display:flex;flex-direction:column;justify-content:flex-end;background:#3f7566;color:white;min-height:370px}.experience-card h3{font-family:"Playfair Display",serif;font-size:clamp(28px,3.3vw,42px);line-height:1.16;margin:14px 0 16px}.experience-card p:last-child{color:rgba(255,255,255,.78);font-size:17px;margin:0}.eyebrow.light{color:#d5e4d9}.access-section{background:#173b31;color:white;padding:105px 0}.access-heading{max-width:900px;margin-bottom:56px}.access-heading h2{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(48px,6vw,78px);line-height:1.02;margin:12px 0 0}.access-heading em{font-weight:500;color:#b9d0bf}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.access-card{border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:40px;background:rgba(255,255,255,.035)}.access-card h3{font-family:"Playfair Display",serif;font-size:27px;margin:24px 0 10px}.access-card p{color:rgba(255,255,255,.68);font-size:17px;margin:0;max-width:520px}.access-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:rgba(169,191,174,.18);color:#b9d0bf;font-weight:700}.access-icon.cool{background:rgba(169,191,174,.18);color:#b9d0bf}
@media(max-width:800px){.credentials-grid,.access-grid{grid-template-columns:1fr}.credentials-card,.experience-card{padding:30px}.experience-card{min-height:300px}.access-section{padding:76px 0}.access-heading{margin-bottom:36px}.access-heading h2{font-size:46px}.access-card{padding:30px}}

.instagram-panel{margin-top:64px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;padding:38px 42px;border:1px solid var(--line);border-radius:22px;background:var(--soft)}
.instagram-copy h3{font-family:"Playfair Display",serif;font-size:clamp(30px,4vw,44px);font-weight:500;line-height:1.12;margin:9px 0 10px}
.instagram-copy>p:last-child{max-width:650px;margin:0;color:var(--muted);font-size:16px}
.instagram-link{min-width:245px;display:grid;gap:8px;justify-items:start;padding:20px 24px;border-radius:16px;background:var(--brown);color:white;transition:transform .2s ease,box-shadow .2s ease}
.instagram-link:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(23,59,49,.16)}
.instagram-link span{font-size:13px;color:rgba(255,255,255,.72)}
.instagram-link strong{font-size:15px}
@media(max-width:800px){.instagram-panel{grid-template-columns:1fr;gap:24px;margin-top:44px;padding:30px 26px}.instagram-link{min-width:0;width:100%}}

/* Version 1.0 additions */
.therapy-fit{padding-top:30px}
.therapy-fit-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start;padding:48px 52px;border:1px solid var(--line);border-radius:24px;background:var(--white)}
.therapy-fit-inner h2,.perinatal-copy h2,.faq-heading h2{font-family:"Playfair Display",serif;font-size:clamp(36px,5vw,56px);font-weight:500;line-height:1.08;margin:8px 0 0}
.therapy-fit-inner>p{margin:8px 0 0;color:var(--muted);font-size:18px}
.perinatal-section{background:#e7eee8}
.perinatal-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:60px;align-items:stretch}
.perinatal-copy{padding:26px 0}
.perinatal-copy p{max-width:690px;color:var(--muted);font-size:17px}
.perinatal-callout{background:#3f7566;color:white;border-radius:24px;padding:42px;display:flex;flex-direction:column;justify-content:center}
.perinatal-callout h3,.hardship-callout h3,.fee-detail-card h3{font-family:"Playfair Display",serif;font-size:30px;line-height:1.15;margin:8px 0 14px}
.perinatal-callout p{color:rgba(255,255,255,.78)}
.light-link{color:white}
.fees .center-heading{max-width:720px;margin:0 auto 44px}
.fees .center-heading>p:last-child{color:var(--muted);font-size:17px}
.fee-details{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fee-detail-card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:30px}
.fee-detail-card p:last-child{color:var(--muted);margin-bottom:0}
.hardship-callout{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:34px 40px;border-radius:20px;background:var(--brown);color:white}
.hardship-callout h3{margin-bottom:0}
.hardship-callout>p{margin:0;color:rgba(255,255,255,.78)}
.faq-section{background:var(--soft)}
.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}
.faq-heading{position:sticky;top:120px}
.faq-heading>p:last-child{color:var(--muted);font-size:17px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:0}
.faq-list summary{position:relative;cursor:pointer;list-style:none;padding:24px 48px 24px 0;font-family:"Playfair Display",serif;font-size:22px;line-height:1.3}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:4px;top:19px;font-family:"DM Sans",sans-serif;font-size:28px;font-weight:400}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{margin:-4px 54px 24px 0;color:var(--muted)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label span{font-size:12px;color:var(--muted);font-weight:400}
.contact-form select{width:100%;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:10px;padding:14px}
.contact-form select:focus{outline:2px solid rgba(40,85,72,.2);border-color:var(--brown)}
@media(max-width:900px){
  .therapy-fit-inner,.perinatal-grid,.faq-grid,.hardship-callout{grid-template-columns:1fr;gap:30px}
  .fee-details{grid-template-columns:1fr}
  .faq-heading{position:static}
}
@media(max-width:620px){
  .therapy-fit-inner{padding:32px 26px}
  .perinatal-callout{padding:32px 26px}
  .hardship-callout{padding:30px 26px}
  .form-row{grid-template-columns:1fr}
  .faq-list summary{font-size:20px}
}

/* Scenic Therapy final nature-inspired brand */
body{
  background:
    radial-gradient(circle at 8% 8%, rgba(169,191,174,.12), transparent 28rem),
    var(--cream);
}
.site-header{box-shadow:0 8px 30px rgba(23,59,49,.035)}
.brand{color:var(--forest);letter-spacing:-.01em}
.main-nav a:not(.button){position:relative}
.main-nav a:not(.button)::after{
  content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;
  background:var(--eucalyptus);transition:right .22s ease
}
.main-nav a:not(.button):hover::after{right:0}
.button{
  background:var(--forest);
  box-shadow:0 9px 22px rgba(23,59,49,.14);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease
}
.button:hover{background:var(--eucalyptus);transform:translateY(-2px);box-shadow:0 13px 26px rgba(23,59,49,.2)}
.eyebrow{color:var(--eucalyptus)}
.hero-photo{box-shadow:0 24px 62px rgba(23,59,49,.17)}
.text-link{border-color:var(--eucalyptus);color:var(--forest)}
.muted,.faq-section{background:var(--mist)}
.simple-card{
  background:rgba(255,255,255,.74);
  border-color:rgba(255,255,255,.9);
  box-shadow:0 12px 32px rgba(23,59,49,.045)
}
.simple-card:hover,.fee-detail-card:hover{
  transform:translateY(-3px);
  box-shadow:0 17px 36px rgba(23,59,49,.08)
}
.simple-card,.fee-detail-card{transition:transform .22s ease,box-shadow .22s ease}
.credentials-card{box-shadow:0 14px 38px rgba(23,59,49,.055)}
.tag-list span{border-color:rgba(40,85,72,.25);color:var(--forest);background:var(--mist)}
.experience-card{
  background:
    linear-gradient(145deg,rgba(255,255,255,.05),transparent 52%),
    var(--eucalyptus)
}
.access-section{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 90% 10%,rgba(169,191,174,.13),transparent 24rem),
    radial-gradient(circle at 8% 92%,rgba(255,255,255,.055),transparent 22rem),
    var(--forest)
}
.access-heading em{color:#c7d8cb}
.access-icon,.access-icon.cool{background:rgba(169,191,174,.16);color:#dce9df}
.perinatal-section{
  background:
    linear-gradient(180deg,rgba(255,255,255,.2),transparent),
    #e7eee8
}
.perinatal-callout{
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.1),transparent 14rem),
    var(--eucalyptus)
}
.fee-detail-card{box-shadow:0 12px 30px rgba(23,59,49,.045)}
.hardship-callout{
  background:
    radial-gradient(circle at 90% 10%,rgba(169,191,174,.12),transparent 18rem),
    var(--forest)
}
.instagram-link{background:var(--forest)}
.instagram-link:hover{background:var(--eucalyptus)}
.instagram-panel{
  background:
    linear-gradient(135deg,rgba(169,191,174,.13),transparent 55%),
    var(--mist)
}
.contact-form{box-shadow:0 16px 46px rgba(23,59,49,.08)}
input,textarea,.contact-form select{background:#fbfdf9}
input:focus,textarea:focus,.contact-form select:focus{
  outline:2px solid rgba(63,117,102,.18);
  border-color:var(--eucalyptus)
}
footer{background:#f3f7f2}
.contribution-card{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:54px;
  align-items:center;
  margin-top:24px;
  padding:38px 44px;
  border:1px solid rgba(40,85,72,.16);
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(169,191,174,.18),transparent 60%),
    var(--mist);
}
.contribution-card h3{
  font-family:"Playfair Display",serif;
  color:var(--forest);
  font-size:clamp(29px,3.6vw,43px);
  font-weight:500;
  line-height:1.12;
  margin:9px 0 0;
}
.contribution-card>p{color:var(--muted);font-size:17px;margin:0}
@media(max-width:800px){
  .contribution-card{grid-template-columns:1fr;gap:20px;padding:30px}
}


/* Final launch polish */
#top,#about,#support,#qualifications,#fees,#faq,#contact{scroll-margin-top:108px}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:10px 14px;border-radius:8px;background:var(--forest);color:#fff;font-weight:600;transform:translateY(-150%);transition:transform .18s ease}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid rgba(63,117,102,.38);outline-offset:4px}
.menu-toggle{border-radius:8px}
.site-header.scrolled{box-shadow:0 10px 34px rgba(23,59,49,.09)}
.main-nav.open{box-shadow:0 16px 30px rgba(23,59,49,.09)}
@media(max-width:800px){
  #top,#about,#support,#fees,#faq,#contact{scroll-margin-top:82px}
  #qualifications{scroll-margin-top:94px}
  .main-nav{max-height:calc(100vh - 68px);overflow:auto}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

.hidden-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
