/* Luciak Counselling: approved Belleza / Figtree / Jost typography. */
:root{
 --font-heading:"Belleza","Optima","Palatino Linotype",serif;
 --font-body:"Figtree","Helvetica Neue",Arial,sans-serif;
 --font-ui:"Jost","Futura","Helvetica Neue",Arial,sans-serif;
}
body.luciak-site,body.luciak-booking,body.luciak-grief{
 font-family:var(--font-body);font-size:17px;font-weight:400;line-height:1.65;
 font-synthesis:none;-webkit-font-smoothing:auto;
}
body.luciak-site{--olive:#66745c;--olive-dark:#35412f;--olive-deep:#2a3427;--ink:#3a3a3a;--muted:#566150;}
body.luciak-site :is(h1,h2,h3),body.luciak-booking :is(h1,h2,h3),body.luciak-grief :is(h1,h2,h3){
 font-family:var(--font-heading);font-weight:400;font-style:normal;letter-spacing:.01em;text-transform:none;
}
body.luciak-site h1{font-size:clamp(24.8px,2.728vw,33.48px);line-height:1.25;text-wrap:balance;}
body.luciak-site h2{font-size:34px;line-height:1.25;text-wrap:balance;}
body.luciak-site h3{font-size:24px;line-height:1.3;}
body.luciak-site main :is(p,li,address){font-family:var(--font-body);font-size:17px;line-height:1.65;font-weight:400;letter-spacing:0;}
body.luciak-site .svc-includes{font-size:16px!important;line-height:1.65!important;}
body.luciak-site :is(.fee-unit,.fee-row span,.online-note p,.provider-grid span,.svc-more-item span,.facts dd,.therapist-card p){font-family:var(--font-body);font-size:16px;line-height:1.65;}
body.luciak-site :is(.non-direct,.billing-disclaimer,.provider-help){font-family:var(--font-body);font-size:16px!important;line-height:1.65!important;}
body.luciak-site :is(.primary-nav a,.clinic-benefits a,.header-cta,.button,.hero-book,.text-link,.phone-button,.eyebrow,.support-eyebrow,.hero-eyebrow,.profile-name,.profile-role,.secure-note,.principle strong,.site-footer,.svc-nav strong,.svc-more-item strong,.facts dt,.group-label,.therapist-location){
 font-family:var(--font-ui);font-weight:500;font-style:normal;text-shadow:none;
}
body.luciak-site .primary-nav a{font-size:13px;line-height:1.2;letter-spacing:.14em;color:#fff;opacity:1;}
body.luciak-site .clinic-benefits a{font-size:12px;line-height:1.35;letter-spacing:.12em;color:#384532;}
body.luciak-site .header-cta{font-size:13px;line-height:1.2;font-weight:600;letter-spacing:.14em;min-height:44px;padding:12px 17px;}
body.luciak-site .secure-note{font-size:11px;line-height:1.4;letter-spacing:.14em;}
body.luciak-site :is(.button,.phone-button){font-size:13px;line-height:1.2;font-weight:600;letter-spacing:.12em;min-height:44px;padding:12px 20px;}
body.luciak-site :is(.hero-book,.text-link){font-size:13px;line-height:1.4;letter-spacing:.12em;min-height:44px;display:inline-flex;align-items:center;}
body.luciak-site :is(.eyebrow,.support-eyebrow,.hero-eyebrow){font-size:12px;line-height:1.4;letter-spacing:.17em;font-weight:500;}
body.luciak-site .hero-kicker{font-size:16px;line-height:1.65;letter-spacing:0;}
body.luciak-site .hero-copy{width:min(760px,calc(100% - 72px));text-shadow:none;}
body.luciak-site .hero h1{max-width:none;}
body.luciak-site .hero-actions{gap:20px;}
body.luciak-site .profile-name{font-size:14px;line-height:1.4;letter-spacing:.16em;color:#fff;}
body.luciak-site :is(.profile-role,.profile-foot){font-size:11px;line-height:1.4;letter-spacing:.14em;color:#fff;opacity:1;}
body.luciak-site :is(.profile-panel,.finder-band,.principle){background:var(--olive);}
body.luciak-site .finder-copy h2{font-size:28px;color:#fff;}
body.luciak-site .finder-copy p{font-size:16px;color:#fff;}
body.luciak-site .faq summary{font-family:var(--font-body);font-size:18px;line-height:1.4;font-weight:500;padding-top:23px;padding-bottom:23px;}
body.luciak-site .faq details p{font-size:17px;line-height:1.65;}
body.luciak-site .location-copy h2{font-size:30px;}
body.luciak-site .principle strong{font-size:14px;line-height:1.4;letter-spacing:.14em;}
body.luciak-site .principle span{font-family:var(--font-body);font-size:16px;line-height:1.65;letter-spacing:0;max-width:260px;color:#fff;}
body.luciak-site .site-footer{font-size:12px;line-height:1.4;letter-spacing:.12em;}
body.luciak-site :is(.svc-nav strong,.svc-more-item strong,.facts dt,.group-label,.therapist-location){font-size:12px;line-height:1.4;}
body.luciak-site .group-feature .group-detail h3{font-family:var(--font-heading);}
body.luciak-site .group-feature .grief-tagline{font-family:var(--font-heading);font-size:26px;line-height:1.3;}
/* Booking choices retain their existing flow and touch targets. */
body.luciak-booking .page-title{font-size:33.48px;line-height:1.25;}
body.luciak-booking .section-title{font-size:24px;line-height:1.3;}
body.luciak-booking :is(button,.header-phone,.footer-phone,.step-label){font-family:var(--font-ui);}
body.luciak-booking :is(.opt-label,.check-label){font-family:var(--font-ui);font-weight:500;font-size:16px;}
body.luciak-booking :is(.opt-desc,.check-sub,.page-subtitle){font-family:var(--font-body);font-size:15px;line-height:1.55;}
body.luciak-booking .cta-btn{font-weight:600;}
/* The group microsite retains its artwork and warm palette. */
body.luciak-grief :is(h1 em,.aside-note,.nav-title){font-family:var(--font-heading);font-style:normal;}
body.luciak-grief :is(.btn,.text-link,.return,.nav-links a,.eyebrow,.number){font-family:var(--font-ui);font-weight:500;}
body.luciak-grief .btn{font-weight:600;}
@media(min-width:721px) and (max-width:1000px){
 body.luciak-site .nav-inner{gap:clamp(14px,2.4vw,26px);}
}
@media(max-width:720px){
 body.luciak-site,body.luciak-booking,body.luciak-grief{font-size:16px;}
 body.luciak-site .lc-benefits-header .brand-logo{width:min(243.75px,calc(100vw - 104px));}
 body.luciak-site h1{font-size:clamp(24px,6.4vw,28px);line-height:1.25;}
 body.luciak-site h2{font-size:28px;line-height:1.25;}
 body.luciak-site h3{font-size:22px;line-height:1.3;}
 body.luciak-site main :is(p,li,address){font-size:16px;line-height:1.65;}
 body.luciak-site .hero-copy{width:min(560px,calc(100% - 40px));padding:40px 0;}
 body.luciak-site .hero-eyebrow{font-size:11px;line-height:1.5;letter-spacing:.14em;margin-bottom:16px;}
 body.luciak-site .hero-actions{flex-direction:column;gap:10px;margin-top:24px;}
 body.luciak-site .hero :is(.button,.hero-book){font-size:12px;min-height:44px;max-width:100%;}
 body.luciak-site .hero .button{padding:12px 20px;}
 body.luciak-site .hero-book{padding:8px 0;}
 body.luciak-site :is(.eyebrow,.support-eyebrow){font-size:12px;line-height:1.4;}
 body.luciak-site .profile-name{font-size:14px;}
 body.luciak-site :is(.profile-role,.profile-foot){font-size:11px;}
 body.luciak-site .therapist-location{font-size:12px;}
 body.luciak-site .faq summary{font-size:17px;padding-top:22px;padding-bottom:22px;}
 body.luciak-site .faq details p{font-size:16px;}
 body.luciak-site .finder-copy h2{font-size:26px;}
 body.luciak-site .location-copy h2{font-size:28px;}
 body.luciak-site .site-footer{font-size:11px;}
 body.luciak-booking .page-title{font-size:28px;}
 body.luciak-booking .logo-band img{max-width:350px;}
}
@media(max-width:620px){
 body.luciak-grief .clinic-logo{width:228.75px;max-width:100%;}
}
/* Override the group page's legacy inline heading font. */
body.luciak-site :is(h1,h2,h3){font-family:var(--font-heading)!important;}
@media(max-width:720px){
 body.luciak-site :is(.therapists-intro-grid,.team-heading){grid-template-columns:1fr;gap:20px;}
}
/* The Grande Prairie booking page also displays the shared benefits strip. */
body.luciak-booking .clinic-benefits a{
 font-family:var(--font-ui);font-size:12px;font-weight:500;line-height:1.35;letter-spacing:.12em;
}

/* Subpage hero refinement: smaller sage descriptor, 20% more height. */
body.luciak-site .hero .hero-kicker{font-size:13.28px;}
body.luciak-site .hero{min-height:408px;}
body.luciak-site .forms-hero{min-height:300px;}
body.luciak-site .hero[aria-labelledby="groups-title"]{min-height:336px;}
@media(max-width:720px){
 body.luciak-site .hero{min-height:381.6px;}
 body.luciak-site .forms-hero{min-height:240px;}
 body.luciak-site .hero[aria-labelledby="groups-title"]{min-height:264px;}
}
