/* Layout-specific applications of the official Optimizing Me tokens. */
:root{--orange:var(--brand-orange);--ink:var(--brand-navy);--muted:var(--text-muted);--cream:var(--bg-page-warm);--line:var(--border-subtle);--green:var(--brand-navy);--font:var(--font-sans)}
body{font-family:var(--font-sans);color:var(--text-body)}
.theme-dark{--muted:var(--peri-300);--line:var(--border-on-dark);color:var(--brand-peach)}
h1,h2,h3{color:var(--text-strong);font-family:var(--font-sans)}
h1{font-weight:var(--fw-extrabold);font-size:clamp(56px,5.6vw,80px);letter-spacing:var(--tracking-hero);line-height:var(--lh-tight)}
h2{font-weight:var(--fw-regular);letter-spacing:0;line-height:var(--lh-heading)}
h3{font-weight:var(--fw-semibold);letter-spacing:0}
.eyebrow{font-weight:var(--fw-bold);letter-spacing:var(--tracking-label)}
.header{background:var(--brand-navy);border-color:var(--border-on-dark);color:var(--brand-white)}
.nav{height:112px}
.brand{display:block;line-height:1;padding:15px 0;flex-shrink:0}
.brand img{height:auto;object-fit:contain}
.header .brand img{width:157.5px}
.brand-mark,.brand-name{display:none}
nav{gap:26px}
nav>a{font-weight:var(--fw-medium);font-size:12px}
.button{border-radius:var(--radius-pill);color:var(--brand-navy);font-weight:var(--fw-bold);box-shadow:var(--shadow-accent);transition:background var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-out)}
.button:hover{background:var(--orange-400);transform:translateY(-1px)}
.button.dark{background:var(--brand-orange);color:var(--brand-navy)}
.button.dark:hover{background:var(--orange-400)}
.icon{width:19px;height:19px;display:inline-block;vertical-align:middle;flex-shrink:0}
.icon-up-right{transform:rotate(-45deg)}
.icon-down{transform:rotate(90deg)}
.icon-up{transform:rotate(-90deg)}
.hero-shell{background:var(--brand-navy);position:relative;overflow:hidden}
.hero{padding-top:58px;padding-bottom:70px;position:relative;z-index:1}
.hero-shell:before{content:'';position:absolute;width:650px;height:650px;left:-425px;bottom:-425px;background:url('brand/assets/patterns/spiral-vortex-white.svg') center/contain no-repeat;opacity:.1;pointer-events:none}
.hero-copy>.eyebrow{color:var(--peri-300);font-size:10px}
.hero-description{color:var(--brand-peach);font-size:15px;max-width:475px}
.hero .text-link{color:var(--brand-white);border-color:var(--border-on-dark)}
.hero .text-link:hover{color:var(--orange-300)}
.hero-facts{color:var(--peri-300);gap:24px}
.hero-facts b{color:var(--brand-white);font-size:13px}
.hero-facts span+span{border-color:var(--border-on-dark);padding-left:20px}
.hero-image{border-radius:90px var(--radius-lg) var(--radius-lg) var(--radius-lg);height:575px;box-shadow:var(--shadow-lg)}
.hero-image:after{background:linear-gradient(0deg,var(--brand-navy),transparent 52%)}
.hero-image figcaption{font-size:15px;font-weight:var(--fw-medium)}
.hero-image figcaption small{color:var(--peach-200);font-weight:var(--fw-regular)}
.image-label{background:var(--cream-50);color:var(--brand-navy);border-radius:var(--radius-pill)}
.trusted{padding-top:38px;padding-bottom:40px}
.organizations{color:var(--brand-navy)}
.intro-copy .large-copy{font-weight:var(--fw-semibold);color:var(--brand-navy);font-size:23px}
.explore{background:var(--brand-navy);color:var(--brand-white)}
.explore .section-top>p{color:var(--peri-300)}
.explore .eyebrow{color:var(--peri-300)}
.explorer{gap:46px}
.theme-tab{border-color:var(--border-on-dark);color:var(--brand-white);font-size:21px;letter-spacing:0;border-radius:0;font-weight:var(--fw-medium)}
.theme-tab:last-child{border-color:var(--border-on-dark)}
.theme-tab>span:first-child{color:var(--peri-300)}
.theme-tab.active{background:var(--navy-600);border-color:transparent;border-radius:var(--radius-md);box-shadow:none;color:var(--brand-white)}
.theme-tab.active>span:first-child{color:var(--orange-300)}
.theme-tab:hover:not(.active){background:var(--navy-800)}
.theme-panel p:last-child{color:var(--brand-peach)}
.theme-panel h3{font-size:24px;font-weight:var(--fw-semibold)}
.breath-art span{border-color:var(--brand-periwinkle)}
.breath-art div{color:var(--peri-300)}
.step-number{color:var(--navy-500);font-weight:var(--fw-semibold)}
.steps h3{font-size:24px}
.team-section{background:var(--peach-100)}
.team-photo img{border-radius:var(--radius-lg) 80px var(--radius-lg) var(--radius-lg)}
.vertical-caption{background:var(--bg-page-warm);color:var(--brand-navy);border-radius:var(--radius-pill);font-size:7px}
.team-photo.team-carousel{height:auto;min-width:0}
.carousel-viewport{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--brand-navy);border-radius:var(--radius-lg) 80px var(--radius-lg) var(--radius-lg);touch-action:pan-y}
.carousel-slide{width:100%;height:100%}
.carousel-slide[hidden]{display:none}
.team-carousel .carousel-slide img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:0;user-select:none}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px}
.carousel-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--brand-navy);border-radius:var(--radius-pill);background:var(--brand-navy);color:var(--brand-white);cursor:pointer}
.carousel-arrow:hover{background:var(--brand-orange);color:var(--brand-navy)}
.carousel-prev .icon{transform:rotate(180deg)}
.carousel-dots{display:flex;align-items:center}
.carousel-dot{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
.carousel-dot span{display:block;width:9px;height:9px;border:1px solid var(--brand-navy);border-radius:var(--radius-pill);background:transparent}
.carousel-dot[aria-pressed="true"] span{background:var(--brand-navy);width:24px}
.carousel-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.event-list li{border-color:var(--border-subtle);color:var(--brand-navy)}
.event-list li>span:last-child{color:var(--peri-600)}
.facilitator-portrait{width:100%;max-width:390px}
.facilitator-portrait img{height:470px;object-fit:cover;object-position:center 25%;border-radius:42% 42% var(--radius-lg) var(--radius-lg);filter:none;aspect-ratio:auto;box-shadow:var(--shadow-md)}
.facilitator-title{color:var(--brand-navy)!important;font-weight:var(--fw-medium)}
.portrait-tag{font-size:10px;letter-spacing:0}
.faqs summary{color:var(--brand-navy);font-weight:var(--fw-semibold);font-size:14px}
.faqs summary>span{color:var(--peri-600);line-height:1;transition:transform var(--dur-base) var(--ease-standard)}
.faqs details[open] summary>span{transform:rotate(180deg)}
.faqs summary .icon{width:20px;height:20px}
.booking{background:var(--brand-navy);color:var(--brand-white);border-radius:var(--radius-lg);padding:66px 64px}
.booking h2{color:var(--brand-white);font-weight:var(--fw-extrabold);font-size:62px;letter-spacing:var(--tracking-hero)}
.booking-copy>.eyebrow{color:var(--peri-300)}
.booking-copy>p:not(.eyebrow){color:var(--brand-peach)}
.booking-copy .booking-note{color:var(--peri-300)}
.booking-art{background:url('brand/assets/patterns/spiral-vortex-white.svg') center/contain no-repeat;opacity:.13}
.booking-art span{display:none}
.footer .brand img{width:180px}
.footer{color:var(--brand-navy)}
.footer .brand{padding:12px 0}
:focus-visible{outline-color:var(--brand-navy)}
.header :focus-visible,.theme-dark :focus-visible,.booking :focus-visible{outline-color:var(--brand-white)}
.skip{background:var(--brand-navy);color:var(--brand-white)}
@media(min-width:1600px){h1{font-size:90px}.hero-image{height:640px}}
@media(max-width:1100px){h1{font-size:clamp(46px,5.6vw,67px);letter-spacing:var(--tracking-hero)}.hero-image{height:545px}.hero-facts{gap:14px}.hero-facts span+span{padding-left:13px}.hero-facts b{font-size:12px}.theme-panel{gap:22px}.theme-tab{font-size:18px}.header .brand img{width:142.5px}nav{gap:20px}}
@media(max-width:900px) and (min-width:761px){nav{gap:14px}nav>a{font-size:10px}.button.small{padding:12px 16px;gap:14px}.header .brand img{width:127.5px}.hero-facts{gap:10px;font-size:9px}.hero-facts span+span{padding-left:10px}.hero-facts b{font-size:11px}}
@media(max-width:760px){.nav{height:92px}.header .brand img{width:131.25px}.menu-toggle{border-color:var(--border-on-dark);border-radius:var(--radius-sm)}.menu-toggle span{background:var(--brand-white)}nav{top:92px;background:var(--brand-navy);border-color:var(--border-on-dark);gap:22px}nav>a{font-size:13px}.hero{padding-top:38px;padding-bottom:40px}h1{font-size:clamp(44px,10.8vw,70px);letter-spacing:var(--tracking-hero);line-height:var(--lh-tight)}h2{font-size:34px;letter-spacing:0}.hero-image{height:420px}.hero-copy>.eyebrow{font-size:9px}.hero-facts{gap:18px;font-size:9px}.hero-facts b{font-size:11px}.hero-facts span+span{padding-left:16px}.hero-description{font-size:14px}.hero-image figcaption{font-size:14px}.trusted{padding-top:32px;padding-bottom:32px}.section-top>p{font-size:12px}.theme-tab{font-size:18px}.theme-panel h3{font-size:22px}.theme-panel p:last-child{font-size:12px}.theme-panel{gap:20px}.facilitator-portrait{max-width:310px;width:100%}.facilitator-portrait img{height:375px}.facilitator-title{font-size:16px}.faqs summary{font-size:13px}.booking{padding:40px 28px}.booking h2{font-size:43px;letter-spacing:var(--tracking-hero)}.booking-art{opacity:.1}.footer .brand img{width:170px}.hero-actions{gap:19px}.hero-actions .text-link{font-size:11px}.vertical-caption{font-size:6px;letter-spacing:1px}}
@media(max-width:380px){.hero-facts{gap:12px}.hero-facts span+span{padding-left:12px}.hero-facts b{font-size:10px}.hero-image{height:370px}.theme-panel{gap:15px}.breath-art{width:76px;height:76px}.booking{padding:35px 23px}.booking h2{font-size:39px}}
