:root{--navy: #0a1a24;--navy-deep: #061018;--navy-mid: #12303d;--sea: #5b8a8a;--sea-light: #7eadaa;--sea-mist: #d4e4e2;--foam: #eaf2f1;--sand: #c9b89a;--brass: #b8955a;--brass-hover: #a07f48;--ink: #142028;--muted: #5a6b73;--white: #fafcfb;--line: rgba(10, 26, 36, .1);--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Outfit", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--header-h: 5.75rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:400;color:var(--ink);background:var(--foam);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}ul{list-style:none}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.01em}.container{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}.section{padding:clamp(4.5rem,10vw,7rem) 0}.section-label{font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--sea);margin-bottom:.85rem}.section-title{font-size:clamp(2.25rem,4.5vw,3.35rem);color:var(--navy);max-width:18ch;margin-bottom:1rem}.section-lede{font-size:1.05rem;color:var(--muted);max-width:42ch;font-weight:300}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.75rem;font-size:.9rem;font-weight:500;letter-spacing:.04em;transition:background .3s var(--ease),color .3s var(--ease),transform .3s var(--ease),border-color .3s var(--ease)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brass);color:var(--navy-deep)}.btn-primary:hover{background:var(--brass-hover)}.btn-ghost{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.35)}.btn-ghost:hover{border-color:#ffffffb3;background:#ffffff0f}.btn-dark{background:var(--navy);color:var(--white)}.btn-dark:hover{background:var(--navy-mid)}@keyframes fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes ken-burns{0%{transform:scale(1.08)}to{transform:scale(1)}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal,.reveal.visible{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important}}.approach{background:linear-gradient(165deg,var(--foam) 0%,#dfecea 45%,var(--sea-mist) 100%)}.approach-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2.5rem,6vw,5rem);align-items:center}.approach-points{margin-top:2.5rem;display:flex;flex-direction:column;gap:1.5rem}.approach-points li{display:grid;gap:.3rem;padding-left:1.15rem;border-left:2px solid var(--sea)}.approach-points strong{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--navy)}.approach-points span{font-size:.95rem;color:var(--muted);font-weight:300;max-width:38ch}.approach-visual{position:relative}.approach-visual img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:center 18%;filter:saturate(.95) contrast(1.02)}.approach-caption{margin-top:.85rem;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.approach-link{display:inline-block;margin-top:2rem;font-size:.9rem;font-weight:500;letter-spacing:.04em;color:var(--navy);border-bottom:1px solid var(--sea);padding-bottom:.15rem;transition:color .25s var(--ease),border-color .25s var(--ease)}.approach-link:hover{color:var(--sea);border-color:var(--sea-light)}@media (max-width: 840px){.approach-grid{grid-template-columns:1fr}.approach-visual{order:-1}.approach-visual img{aspect-ratio:16 / 11}}.booking{background:radial-gradient(ellipse 80% 60% at 10% 0%,rgba(91,138,138,.18),transparent 55%),linear-gradient(180deg,var(--navy) 0%,var(--navy-deep) 100%);color:var(--white)}.booking .section-label{color:var(--sea-light)}.booking .section-title{color:var(--white)}.booking .section-lede{color:#ffffffa6}.booking-fee{margin-top:1.25rem;font-size:.95rem;font-weight:500;color:var(--sea-light);letter-spacing:.02em}.booking-error{margin-top:1rem;font-size:.9rem;color:#f0b4b4}.booking-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:start}.booking-steps{margin-top:2.5rem;display:flex;flex-direction:column;gap:.85rem}.booking-steps li{display:flex;align-items:center;gap:.85rem;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:#fff6;transition:color .3s var(--ease)}.booking-steps li.is-active,.booking-steps li.is-done{color:var(--white)}.booking-steps li span{width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center;font-size:.75rem;border:1px solid rgba(255,255,255,.25);transition:background .3s var(--ease),border-color .3s var(--ease)}.booking-steps li.is-active span{background:var(--brass);border-color:var(--brass);color:var(--navy-deep)}.booking-steps li.is-done span{background:var(--sea);border-color:var(--sea)}.booking-panel{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);padding:clamp(1.5rem,4vw,2.25rem)}.booking-step{border:none;min-height:18rem}.booking-step legend{font-family:var(--font-display);font-size:1.75rem;margin-bottom:1.35rem;color:var(--white)}.program-options{display:grid;gap:.65rem}.program-option{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;align-items:center;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.12);cursor:pointer;transition:border-color .25s var(--ease),background .25s var(--ease)}.program-option:hover,.program-option.is-selected{border-color:var(--sea-light);background:#5b8a8a1f}.program-option input{position:absolute;opacity:0;pointer-events:none}.option-name{font-family:var(--font-display);font-size:1.25rem;grid-column:1}.option-meta{grid-column:2;grid-row:1 / 3;font-size:.85rem;color:var(--sea-light);white-space:nowrap}.selected-program{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--sea-light);margin-bottom:1.25rem}.field{display:grid;gap:.4rem;margin-bottom:1.1rem}.field label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c}.field input,.field textarea{background:#00000040;border:1px solid rgba(255,255,255,.14);padding:.8rem .95rem;color:var(--white);outline:none;transition:border-color .25s var(--ease);width:100%}.field input:focus,.field textarea:focus{border-color:var(--sea-light)}.field input[type=date]{color-scheme:dark}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.field-full{grid-column:1 / -1}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.time-option{display:grid;place-items:center;padding:.85rem .5rem;border:1px solid rgba(255,255,255,.14);font-size:.88rem;cursor:pointer;transition:border-color .25s var(--ease),background .25s var(--ease),color .25s var(--ease)}.time-option input{position:absolute;opacity:0;pointer-events:none}.time-option:hover,.time-option.is-selected{border-color:var(--brass);background:#b8955a26;color:var(--sand)}.booking-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.1)}.btn-text{color:#fff9;font-size:.9rem;padding:.5rem 0}.btn-text:hover{color:var(--white)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.booking-confirm{max-width:36rem;animation:fade-up .8s var(--ease) both}.confirm-details{margin:2rem 0 2.25rem;display:grid;gap:1.15rem;padding:1.5rem 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.confirm-details div{display:grid;gap:.2rem}.confirm-details dt{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff73}.confirm-details dd{font-family:var(--font-display);font-size:1.35rem}@media (max-width: 840px){.booking-layout{grid-template-columns:1fr}.booking-steps{flex-direction:row;flex-wrap:wrap;gap:1rem 1.5rem}}@media (max-width: 560px){.field-grid{grid-template-columns:1fr}.time-grid{grid-template-columns:repeat(2,1fr)}.option-meta{grid-column:1;grid-row:auto}.program-option{grid-template-columns:1fr}}.faq{background:var(--white)}.faq-intro{margin-bottom:clamp(2.5rem,5vw,3.5rem)}.faq-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line);margin-bottom:2.5rem}.faq-item{padding:1.75rem 0;border-bottom:1px solid var(--line)}.faq-item dt{font-family:var(--font-display);font-size:clamp(1.2rem,2.5vw,1.45rem);font-weight:600;color:var(--navy);margin-bottom:.55rem}.faq-item dd{font-size:1rem;font-weight:300;color:var(--muted);max-width:58ch;line-height:1.65}.faq-area{padding:1.75rem 0 0;border-top:1px solid var(--line)}.faq-area h3{font-family:var(--font-display);font-size:1.5rem;color:var(--navy);margin-bottom:.85rem}.faq-area p{font-size:.95rem;font-weight:300;color:var(--muted);line-height:1.65;margin-bottom:.65rem}.faq-area strong{font-weight:500;color:var(--navy-mid)}.site-footer{background:var(--navy-deep);color:#ffffffb3;padding-top:clamp(3.5rem,7vw,5rem);padding-bottom:2rem}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2.5rem 2rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.08)}.footer-logo{display:block;width:10rem;height:auto;max-width:none;margin-bottom:.85rem;object-fit:contain}.footer-tag{font-weight:300;max-width:22ch;color:#ffffff8c}.footer-trainer{margin-top:1rem}.footer-trainer a{font-size:.9rem;color:var(--sea-light);border-bottom:1px solid transparent;transition:color .25s var(--ease),border-color .25s var(--ease)}.footer-trainer a:hover{color:var(--white);border-color:#ffffff59}.footer-col h3{font-family:var(--font-body);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sea-light);margin-bottom:.85rem}.footer-col p{font-size:.95rem;font-weight:300;line-height:1.7}.footer-col a:hover{color:var(--white)}.footer-cta{margin-top:1.25rem;padding:.75rem 1.25rem;font-size:.8rem}.footer-bottom{padding-top:1.5rem;font-size:.8rem;color:#ffffff59}@media (max-width: 800px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@media (max-width: 480px){.footer-grid{grid-template-columns:1fr}}.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header-h);overflow:hidden;transition:background .4s var(--ease),backdrop-filter .4s var(--ease),box-shadow .4s var(--ease)}.site-header.is-scrolled{background:#0a1a24eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px #ffffff0f}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:1.25rem}.logo{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:.3rem .55rem;background:#0a1a24b8;border:1px solid rgba(184,149,90,.5);box-shadow:0 0 0 1px #ffffff14,0 10px 30px #00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}.site-header.is-scrolled .logo{background:#ffffff14;border-color:#b8955aa6;box-shadow:0 0 0 1px #ffffff1a,0 8px 22px #00000047}.logo-img{display:block;height:calc(var(--header-h) - 1.4rem);max-height:4.1rem;width:auto;object-fit:contain;filter:brightness(1.12) contrast(1.15) saturate(1.08) drop-shadow(0 2px 10px rgba(0,0,0,.45))}.nav{display:flex;gap:2rem}.nav a{font-size:.85rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8;transition:color .25s var(--ease)}.nav a:hover{color:var(--white)}.header-cta{padding:.7rem 1.25rem;font-size:.8rem;flex-shrink:0}@media (max-width: 860px){.nav{display:none}}@media (max-width: 600px){.logo{padding:.22rem .4rem}.logo-img{height:calc(var(--header-h) - 1.1rem);max-height:3.5rem}.header-cta{padding:.6rem .9rem;font-size:.72rem}}@media (max-width: 380px){.logo-img{max-height:3.1rem}.header-cta{padding:.55rem .75rem}}.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--white);overflow:hidden}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-video{width:100%;height:100%;object-fit:cover;object-position:center}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#06101873,#06101833 35%,#061018d1),linear-gradient(90deg,rgba(6,16,24,.55) 0%,transparent 55%)}.hero-content{position:relative;z-index:1;padding-bottom:clamp(3.5rem,10vw,6.5rem);padding-top:calc(var(--header-h) + 2rem);max-width:40rem;margin-left:max(calc((100% - 1120px)/2 + 1.25rem),1.25rem);margin-right:auto;width:min(40rem,calc(100% - 2.5rem))}.hero-brand{font-family:var(--font-display);font-size:clamp(2.75rem,7vw,4.75rem);font-weight:600;line-height:1;letter-spacing:-.02em;margin-bottom:1.25rem;animation:fade-up 1s var(--ease) .15s both}.hero-headline{font-family:var(--font-body);font-size:clamp(1.05rem,2.2vw,1.25rem);font-weight:400;letter-spacing:.01em;line-height:1.45;color:#ffffffe6;max-width:28ch;margin-bottom:.85rem;animation:fade-up 1s var(--ease) .3s both}.hero-lede{font-size:.98rem;font-weight:300;color:#ffffffad;max-width:36ch;margin-bottom:2rem;animation:fade-up 1s var(--ease) .45s both}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;animation:fade-up 1s var(--ease) .6s both}@media (max-width: 600px){.hero{align-items:flex-end}.hero-content{margin-left:1.25rem}}.programs{background:var(--white)}.programs-intro{margin-bottom:clamp(2.5rem,5vw,3.5rem)}.programs-fee-row{margin-top:1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem}.programs-fee{margin:0;font-size:.95rem;font-weight:500;color:var(--sea);letter-spacing:.02em}.programs-fee-row .btn{padding:.75rem 1.35rem;font-size:.85rem}.programs-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}.program-row{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;padding:2.25rem 0;border-bottom:1px solid var(--line)}.program-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.5rem;margin-bottom:.65rem}.program-meta h3{font-size:clamp(1.65rem,3vw,2.1rem);color:var(--navy)}.program-duration{font-size:.95rem;font-weight:500;color:var(--sea)}.program-desc{font-size:1rem;color:var(--muted);font-weight:300;max-width:48ch;margin-bottom:1.1rem}.program-features{display:flex;flex-wrap:wrap;gap:.55rem 1.25rem}.program-features li{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--navy-mid);position:relative;padding-left:.9rem}.program-features li:before{content:"";position:absolute;left:0;top:.45em;width:.35rem;height:.35rem;border-radius:50%;background:var(--sand)}@media (max-width: 720px){.program-row{grid-template-columns:1fr;gap:1.35rem;align-items:start}.program-row .btn{width:100%;text-align:center}}.stories{background:linear-gradient(180deg,var(--foam) 0%,#e3ecea 100%)}.stories-intro{margin-bottom:clamp(2.5rem,5vw,3.5rem)}.stories-list{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.75rem,4vw,2.75rem)}.story blockquote{font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.45rem);font-weight:500;font-style:italic;line-height:1.4;color:var(--navy);margin-bottom:1.35rem}.story footer{display:grid;gap:.15rem}.story cite{font-style:normal;font-size:.9rem;font-weight:500;color:var(--navy)}.story span{font-size:.85rem;color:var(--muted);font-weight:300}@media (max-width: 800px){.stories-list{grid-template-columns:1fr;gap:2.5rem}.story{padding-bottom:2rem;border-bottom:1px solid var(--line)}.story:last-child{border-bottom:none;padding-bottom:0}}.meet-page{background:var(--foam)}.meet-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--white);overflow:hidden}.meet-hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.meet-hero-img{width:100%;height:100%;object-fit:cover;object-position:center top}.meet-hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#06101866,#06101826 40%,#061018e0),linear-gradient(90deg,rgba(6,16,24,.5) 0%,transparent 60%)}.meet-hero-content{position:relative;z-index:1;padding-bottom:clamp(3.5rem,10vw,6.5rem);padding-top:calc(var(--header-h) + 2rem);max-width:38rem;margin-left:max(calc((100% - 1120px)/2 + 1.25rem),1.25rem);margin-right:auto;width:min(38rem,calc(100% - 2.5rem))}.meet-eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--sea-light);margin-bottom:.85rem;animation:fade-up 1s var(--ease) .1s both}.meet-name{font-family:var(--font-display);font-size:clamp(3rem,8vw,5.25rem);font-weight:600;line-height:.95;letter-spacing:-.02em;margin-bottom:.85rem;animation:fade-up 1s var(--ease) .2s both}.meet-role{font-size:1.05rem;font-weight:400;color:#ffffffe0;margin-bottom:.85rem;animation:fade-up 1s var(--ease) .35s both}.meet-lede{font-size:.98rem;font-weight:300;color:#ffffffad;max-width:34ch;margin-bottom:2rem;animation:fade-up 1s var(--ease) .45s both}.meet-actions{display:flex;flex-wrap:wrap;gap:.85rem;animation:fade-up 1s var(--ease) .55s both}.meet-bio{background:linear-gradient(165deg,var(--foam) 0%,#dfecea 50%,var(--sea-mist) 100%)}.meet-bio-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2.5rem,6vw,4.5rem);align-items:start}.meet-bio-text{font-size:1.05rem;font-weight:300;color:var(--muted);max-width:48ch;margin-bottom:1.15rem}.meet-bio-text:last-child{margin-bottom:0}.meet-highlights{display:flex;flex-direction:column;gap:1.75rem;padding-top:2.5rem}.meet-highlights li{display:grid;gap:.35rem;padding-left:1.15rem;border-left:2px solid var(--sea)}.meet-highlights strong{font-family:var(--font-display);font-size:1.85rem;font-weight:600;color:var(--navy);line-height:1.1}.meet-highlights span{font-size:.95rem;color:var(--muted);font-weight:300}.meet-action{background:radial-gradient(ellipse 70% 50% at 80% 20%,rgba(91,138,138,.12),transparent 55%),var(--navy-deep);color:var(--white)}.meet-action .section-label{color:var(--sea-light)}.meet-action .section-title{color:var(--white);max-width:14ch}.meet-action .section-lede{color:#ffffffa6}.meet-action-inner{display:grid;grid-template-columns:minmax(16rem,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4rem);align-items:center}.meet-action-intro{margin-bottom:0}.meet-action-visual{width:100%}.meet-action-visual img{width:100%;height:auto;display:block}@media (max-width: 840px){.meet-bio-grid{grid-template-columns:1fr}.meet-highlights{padding-top:.5rem}.meet-hero-content{margin-left:1.25rem}.meet-hero-img{object-position:center top}.meet-action-inner{grid-template-columns:1fr;gap:2rem}}
