/* Public editorial layouts consume the shared brand tokens. */
.public-page{--site-width:1240px;background:var(--ea-cream);color:var(--ea-charcoal)}
.public-page :is(h1,h2,h3){font-family:var(--font-display);font-weight:400;letter-spacing:-.025em}
.public-page h1{font-size:clamp(2.5rem,5.1vw,5rem);line-height:1.12}.public-page h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.23}.public-page h3{font-size:clamp(1.3rem,2vw,1.7rem)}
.public-header{max-width:1440px;margin:auto;padding:28px clamp(20px,3vw,48px);gap:36px;min-height:112px;background:var(--ea-cream);border-bottom:1px solid var(--line)}
.public-brand{gap:16px;min-width:205px}.public-brand strong{font-family:var(--font-display);font-size:1.25rem}.public-brand .brand-mark{width:64px;height:64px;font-size:1.45rem}.brand-logo{object-fit:contain;width:auto;max-width:200px;height:72px}
.public-navigation{gap:28px}.public-navigation nav{gap:20px}.public-navigation nav a{font-size:.95rem;min-height:44px;display:flex;align-items:center}.public-navigation nav a.active{color:var(--ea-hunter);box-shadow:inset 0 -2px var(--ea-orange)}
.public-account .btn{white-space:nowrap}.public-account{gap:16px}.public-account>details{position:relative}.account-menu{z-index:30}
.public-hero{max-width:var(--site-width);padding:70px 32px 80px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center;min-height:660px}.hero-copy{max-width:620px}.hero-copy .hero-intro{font-size:1.125rem;max-width:48ch;margin-block:28px}.public-kicker{color:var(--ea-saddle);margin-bottom:22px}.hero-visual{min-width:0;height:530px;border-radius:160px 160px 8px 8px;overflow:hidden;background:var(--ea-sage)}.cms-hero-image{width:100%;height:100%;object-fit:cover}.hero-art{position:relative;min-height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:46px;color:var(--ea-cream);background:linear-gradient(155deg,#a7b89a 0%,#768e66 43%,#3f6b4f 100%);overflow:hidden}.hero-art .art-word{position:relative;font:400 clamp(2.6rem,4vw,4.5rem)/1.15 'Allura',cursive;z-index:2}.hero-art small{position:relative;color:var(--ea-cream);letter-spacing:.16em;text-transform:uppercase;margin-top:14px;z-index:2}.art-horizon{position:absolute;width:170%;height:65%;bottom:-12%;left:-35%;border-radius:50%;background:#3f6b4f;transform:rotate(-12deg)}.art-ring{position:absolute;width:260px;height:260px;border:1px solid #f6efe388;border-radius:50%;left:30%;top:12%}.hero-art-boarding{background:linear-gradient(145deg,#c7b59e,#8b6a4a)}.hero-art-boarding .art-horizon{background:#705139}.hero-art-events{background:linear-gradient(145deg,#c7b59e,#cc6a3d)}
.public-section{max-width:var(--site-width);margin:auto;padding:76px 32px}.public-section-heading{align-items:end;margin-bottom:36px}.public-card-grid{gap:24px}.public-card{padding:34px;background:#fffbf4;border:1px solid #c7b59e88;border-radius:8px}.public-card p{max-width:60ch}.service-link{min-height:230px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:background .2s,transform .2s}.service-link:hover{background:#e6ecdf;transform:translateY(-3px)}.service-link h3{margin-top:32px}.service-index{color:var(--ea-saddle);letter-spacing:.15em}.service-arrow{position:absolute;right:30px;bottom:30px;font-size:1.5rem}.public-empty{grid-column:1/-1;padding:42px;background:#ece4d7;border-left:3px solid var(--ea-saddle)}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.editorial-split>div:last-child{font-size:1.125rem;padding-top:28px}.care-band{background:#dfe6d7;border-block:1px solid #a7b89a77}.story-intro{max-width:960px;text-align:center;padding-block:100px}.story-intro>p:last-child{max-width:60ch;margin:28px auto 0}.event-intro{border-top:1px solid var(--ea-taupe);display:grid;grid-template-columns:1fr 1.4fr;gap:20px 60px}.event-intro .public-kicker{grid-column:1/-1}.event-intro>p:last-child{max-width:50ch}
.public-hero-lessons .hero-visual{border-radius:8px 120px 8px 8px;height:470px}.public-hero-boarding{grid-template-columns:1fr 1.1fr}.public-hero-boarding .hero-copy{order:2}.public-hero-boarding .hero-visual{border-radius:8px;height:530px}.public-hero-events{min-height:430px;padding-bottom:54px;grid-template-columns:1.5fr 1fr}.public-hero-events .hero-visual{height:300px;border-radius:50% 50% 8px 8px}.public-hero-about{grid-template-columns:1fr 1fr}.public-hero-about .hero-visual{height:540px;border-radius:8px 8px 160px 8px}
.cms-content-flow{gap:32px;grid-template-columns:repeat(2,minmax(0,1fr))}.cms-full{grid-column:1/-1}.public-feature{gap:64px;align-items:center;padding-block:28px}.cms-image{width:100%;object-fit:cover;border-radius:8px;max-height:620px}.cms-gallery-card{overflow:hidden;border-radius:8px;background:#eee5d8}.cms-gallery-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.cms-gallery-card figcaption{padding:20px}.public-testimonial{font:400 clamp(1.3rem,2vw,1.8rem)/1.6 var(--font-display);background:#e4e9dc;border:0;padding:46px}.quote-mark{display:block;color:var(--ea-saddle);font-size:4rem;line-height:1}.public-testimonial cite{display:block;font:500 .9rem var(--font-body);margin-top:24px}.public-faq details{background:#eee6da;border:0;border-bottom:1px solid var(--ea-taupe);padding:24px 28px}.public-faq summary{font-size:1.1rem;min-height:30px}.public-faq details p{max-width:80ch;padding-top:16px}
.public-cta{max-width:var(--site-width);margin:40px auto 80px;padding:60px;background:var(--ea-hunter);color:var(--ea-cream);border-radius:8px}.public-cta h2,.public-cta p{color:var(--ea-cream)}.public-cta .public-kicker{color:var(--ea-taupe)}.public-cta .public-button{background:var(--ea-cream);color:var(--ea-hunter)}
.contact-composition{padding-block:84px;gap:80px;align-items:start;grid-template-columns:1fr 1.15fr}.contact-composition h1{font-size:clamp(2.5rem,4vw,4rem)}.contact-details{margin-top:36px;padding-top:24px;border-top:1px solid var(--ea-taupe)}.contact-details a{font-size:1.1rem}.contact-composition .form-card{padding:36px;background:#fffbf4}
.public-footer{background:#e4dbc9;border-top:1px solid var(--ea-taupe);padding:64px 32px 30px}.public-footer-inner{max-width:1176px;margin:auto;display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:64px}.public-footer nav{display:grid;gap:8px}.public-footer a{color:#2d503a}.public-footer .brand-mark{color:var(--ea-hunter)}.footer-note{max-width:1176px;margin:36px auto 0;border-top:1px solid var(--ea-taupe);padding-top:24px;color:var(--ea-charcoal)}
.auth-content h1,.auth-content h2{font-family:var(--font-display)}.auth-content .form-card{background:#fffbf4;border-top:4px solid var(--ea-hunter)}
@media(max-width:1200px){.public-header{flex-wrap:wrap;gap:18px}.public-navigation{flex:1;justify-content:flex-end;gap:20px}.public-navigation nav{gap:14px}.public-hero{gap:40px}}
@media(max-width:900px){.public-header{padding:20px 24px;min-height:96px}.public-navigation{flex-direction:column;align-items:stretch}.public-navigation nav{align-items:stretch}.public-hero{padding:48px 24px;min-height:0;gap:36px}.hero-visual{height:400px}.public-section{padding:52px 24px}.editorial-split{gap:32px}.contact-composition{gap:32px}.public-footer-inner{gap:32px}.public-brand .brand-mark{height:54px;width:54px}}
@media(max-width:640px){.public-hero,.public-hero-boarding,.public-hero-events,.public-hero-about,.editorial-split,.contact-composition,.event-intro{grid-template-columns:1fr}.public-hero-boarding .hero-copy{order:0}.public-hero h1{font-size:2.65rem}.hero-visual,.public-hero-lessons .hero-visual,.public-hero-boarding .hero-visual,.public-hero-about .hero-visual{height:340px}.public-hero-events .hero-visual{height:260px}.hero-art{padding:32px}.hero-art .art-word{font-size:3rem}.public-card-grid,.cms-content-flow{grid-template-columns:1fr}.public-card{padding:28px}.editorial-split>div:last-child{padding-top:0}.public-feature{gap:24px}.public-cta{margin:24px;padding:36px 24px}.public-footer-inner{grid-template-columns:1fr}.public-footer{padding:48px 24px}.contact-composition .form-card{padding:24px}.brand-logo{max-width:160px;height:58px}.public-brand{min-width:0}.public-brand strong{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.service-link{transition:none}}
.public-footer .public-brand strong{color:var(--ea-hunter)}
.public-button,.btn-cta{color:#fff}.public-cta .public-button{color:var(--ea-hunter)}
