:root{--navy:#0c2a4a;--navy-mid:#163e6b;--steel:#2f6fb8;--steel-soft:#5b8fc9;--ink:#1a2330;--charcoal:#3a4553;--muted:#667181;--line:#e4e9f0;--paper:#fbfcfe;--white:#fff;--banner:#fff;--banner-deep:#e8edf4;--equipment:#c4a35a;--shadow:0 16px 40px #0c2a4a14;--header-h:4.75rem;--ease:cubic-bezier(.22, 1, .36, 1);--font-display:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}#book{scroll-margin-top:calc(var(--header-h) + 1rem)}body{background:radial-gradient(900px 480px at 0% 0%, #2f6fb80d, transparent 55%), radial-gradient(700px 420px at 100% 10%, #c4a35a0a, transparent 50%), linear-gradient(180deg, #fff 0%, var(--paper) 55%, #f4f7fb 100%);min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;opacity:.02;z-index:0;background-image:linear-gradient(#0c2a4a8c 1px,#0000 1px),linear-gradient(90deg,#0c2a4a8c 1px,#0000 1px);background-size:56px 56px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}#root{z-index:1;min-height:100vh;position:relative}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1}.container{width:min(1120px,100% - 2.5rem);margin-inline:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:50;height:var(--header-h);background:#fff;border-bottom:1px solid #e8edf4;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 1px #0c2a4a0a}.site-header__inner{grid-template-columns:minmax(0,auto) 1fr auto;align-items:center;gap:.75rem 1rem;width:min(1120px,100% - 2.5rem);margin-inline:auto;display:grid}.brand{grid-column:1;align-items:center;min-width:0;max-width:min(180px,36vw);display:inline-flex;overflow:hidden}.brand__logo{object-fit:contain;pointer-events:none;width:auto;max-width:100%;height:3.6rem}.nav{grid-column:2;justify-content:center;align-items:center;gap:1.75rem;display:none}.nav a{color:var(--charcoal);font-size:.95rem;font-weight:600;position:relative}.nav a:after{content:"";background:var(--steel);transform-origin:0;width:100%;height:2px;transition:transform .35s var(--ease);position:absolute;bottom:-.35rem;left:0;transform:scaleX(0)}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1)}.nav a:hover,.nav a[aria-current=page]{color:var(--navy)}.header-actions{z-index:20;grid-column:3;align-items:center;gap:.6rem;display:inline-flex;position:relative}.header-cta{z-index:20;pointer-events:auto;touch-action:manipulation;cursor:pointer;white-space:nowrap;flex-shrink:0;display:inline-flex;position:relative}.header-cta__label{display:none}.header-cta__short{display:inline}.call-toast{top:calc(var(--header-h) + .75rem);z-index:80;background:var(--navy);color:var(--white);animation:call-toast-in .25s var(--ease);border-radius:.7rem;padding:.7rem 1rem;font-size:.9rem;font-weight:600;position:fixed;right:1rem;box-shadow:0 12px 28px #0c2a4a38}@keyframes call-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.menu-toggle{border:1px solid var(--line);background:var(--white);cursor:pointer;z-index:20;border-radius:.75rem;place-items:center;gap:.3rem;width:2.75rem;height:2.75rem;display:grid;position:relative}.menu-toggle span{background:var(--navy);width:1.15rem;height:2px;transition:transform .3s var(--ease), opacity .3s var(--ease);display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.mobile-nav{inset:var(--header-h) 0 auto 0;opacity:0;pointer-events:none;transition:transform .4s var(--ease), opacity .4s var(--ease);z-index:40;background:#fff;border-bottom:1px solid #e8edf4;gap:1rem;padding:1.25rem 1.25rem 1.5rem;display:grid;position:fixed;transform:translateY(-120%)}.mobile-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-nav a{font-family:var(--font-display);color:var(--navy);font-size:1.35rem;font-weight:600}.btn{min-height:2.85rem;font-family:var(--font-body);letter-spacing:.01em;cursor:pointer;transition:transform .25s var(--ease), background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);border:1.5px solid #0000;border-radius:.7rem;justify-content:center;align-items:center;gap:.55rem;padding:.7rem 1.3rem;font-size:.95rem;font-weight:700;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--navy);color:var(--white);box-shadow:0 10px 24px #0c2a4a29}.btn--primary:hover{background:var(--navy-mid)}.btn--ghost{color:var(--navy);background:#ffffff73;border-color:#0c2a4a47}.btn--ghost:hover{background:var(--white);border-color:var(--navy)}.btn--outline{color:var(--navy);background:0 0;border-color:#0c2a4a38}.btn--outline:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.btn--light{background:var(--white);color:var(--navy);box-shadow:0 8px 20px #0c2a4a1a}.btn--light:hover{background:#f3f7fb}.spark-divider{color:var(--steel);align-items:center;gap:.85rem;display:flex}.spark-divider:before,.spark-divider:after{content:"";background:linear-gradient(90deg, transparent, var(--line), transparent);flex:1;height:1px}.spark{clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);background:currentColor;width:.7rem;height:.7rem;animation:2.8s ease-in-out infinite sparkle}@keyframes sparkle{0%,to{opacity:.75;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.25)rotate(18deg)}}.hero{min-height:calc(100svh - var(--header-h));color:var(--ink);align-items:stretch;display:grid;position:relative;overflow:hidden}.hero__media{position:absolute;inset:0}.hero__media img{object-fit:cover;object-position:72% 35%;width:100%;height:100%;animation:heroZoom 18s var(--ease) forwards;transform:scale(1.06)}@keyframes heroZoom{0%{transform:scale(1.1)}to{transform:scale(1.02)}}.hero__shade{background:linear-gradient(#ffffffd1 0%,#ffffffb8 42%,#ffffff8c 68%,#ffffff47 100%);position:absolute;inset:0}@media (width>=900px){.hero__shade{background:linear-gradient(105deg,#ffffffe0 0%,#ffffffad 30%,#f7f9fc52 54%,#f7f9fc14 76%,#0000 100%)}}.hero__content{z-index:1;width:min(1120px,100% - 2.5rem);animation:riseIn .9s var(--ease) both;flex-direction:column;justify-content:center;align-items:flex-start;margin-inline:auto;padding:clamp(3.5rem,8vw,5.5rem) 0;display:flex;position:relative}@media (width>=900px){.hero__content{max-width:min(1120px,100% - 2.5rem);padding-right:min(42vw,28rem)}.hero__title,.hero__lede,.hero__actions{max-width:26rem}}@keyframes riseIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero__title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(2.6rem,7vw,4.1rem);font-weight:700;line-height:1.05}.hero__title em{color:var(--navy);font-style:normal}.hero__lede{max-width:28rem;color:var(--charcoal);margin:1.1rem 0 0;font-size:1.08rem;line-height:1.6}.hero__actions{flex-wrap:wrap;gap:.85rem;margin-top:1.75rem;display:flex}.section{padding:clamp(3.5rem,7vw,5.5rem) 0}.section--tight{padding:clamp(2.5rem,5vw,3.5rem) 0}.section__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--steel);margin:0 0 .7rem;font-size:.8rem;font-weight:700}.section__title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--navy);margin:0;font-size:clamp(2rem,4.5vw,3rem);font-weight:700;line-height:1.1}.section__lede{max-width:36rem;color:var(--muted);margin:1rem 0 0;font-size:1.05rem;line-height:1.65}.section-head{margin-bottom:2.5rem}.section-head .spark-divider{max-width:14rem;margin-top:1.5rem}.feature-strip{gap:1.5rem;display:grid}.feature{border-top:1px solid var(--line);padding-top:1.25rem}.feature h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin:0;font-size:1.35rem;font-weight:700}.feature p{color:var(--muted);margin:.55rem 0 0;line-height:1.6}.cta-band{color:var(--ink);border-block:1px solid var(--line);background:linear-gradient(135deg,#f3f7fbf0,#e8f0f8e6),url(/hero-cab.jpg) 50%/cover;position:relative;overflow:hidden}.cta-band__inner{align-items:center;gap:1.5rem;display:grid}.cta-band h2{font-family:var(--font-display);letter-spacing:-.03em;color:var(--navy);margin:0;font-size:clamp(2rem,4.5vw,2.8rem);font-weight:700;line-height:1.1}.cta-band p{color:var(--muted);max-width:32rem;margin:.75rem 0 0;line-height:1.6}.cta-band__actions{flex-wrap:wrap;gap:.85rem;display:flex}.phone-link{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);font-size:1.7rem;font-weight:700}.page-hero{padding:clamp(3rem,6vw,4.5rem) 0 1rem}.book-page{padding-bottom:clamp(3.5rem,7vw,5.5rem)}.book-page .spark-divider{max-width:12rem;margin:1.5rem 0 2.5rem}.book-form{gap:2rem;max-width:720px;display:grid}.book-fieldset{border:0;margin:0;padding:0}.book-fieldset legend{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin-bottom:.9rem;font-size:1.25rem;font-weight:700}.book-options{gap:.75rem;display:grid}.book-options--dates,.book-options--slots{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr))}.book-option{border:1.5px solid var(--line);cursor:pointer;transition:border-color .25s var(--ease), background .25s var(--ease), transform .25s var(--ease);background:#ffffffe6;border-radius:.85rem;gap:.25rem;padding:1rem 1.1rem;display:grid;position:relative}.book-option:hover{border-color:#2f6fb873;transform:translateY(-1px)}.book-option.is-selected{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#0c2a4a0a}.book-option input{opacity:0;pointer-events:none;position:absolute}.book-option__title{color:var(--ink);font-weight:700}.book-option__meta{color:var(--muted);font-size:.92rem}.book-option__original{opacity:.75;text-decoration:line-through}.book-option--compact{text-align:center;place-items:center;padding:.85rem .6rem}.book-fields{gap:1rem;display:grid}.book-fields label{color:var(--charcoal);gap:.4rem;font-size:.92rem;font-weight:600;display:grid}.book-fields input,.book-fields textarea{border:1.5px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:.7rem;padding:.8rem .95rem;font-weight:500}.book-fields input:focus,.book-fields textarea:focus{outline-offset:1px;border-color:var(--steel);outline:2px solid #2f6fb859}.book-submit{justify-items:start;gap:.85rem;padding-top:.5rem;display:grid}.book-summary{color:var(--navy);margin:0;font-weight:600}.book-note{color:var(--muted);margin:0;font-size:.95rem}.book-note a,.book-confirm a{color:var(--navy);font-weight:700}.book-confirm{gap:1rem;max-width:34rem;padding:1.75rem 0 0;display:grid}.book-confirm h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin:0;font-size:1.8rem}.book-confirm p{color:var(--muted);margin:0;line-height:1.6}.book-confirm__actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}@media (width>=720px){.book-options--services{grid-template-columns:1fr}.book-fields{grid-template-columns:1fr 1fr}.book-fields__full{grid-column:1/-1}}.page-hero .spark-divider{max-width:12rem;margin-top:1.5rem}.service-stack{gap:1.5rem;display:grid}.service-tier{border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .35s var(--ease), box-shadow .35s var(--ease);background:#ffffffe0;border-radius:1.1rem;gap:1.25rem;padding:1.75rem 1.35rem;display:grid;position:relative}.service-tier:hover{transform:translateY(-4px);box-shadow:0 22px 50px #0c2a4a1f}.service-tier--featured{background:linear-gradient(#2f6fb80f,#0000 42%),#fffffff2;border-color:#2f6fb859}.service-tier__badge{letter-spacing:.08em;text-transform:uppercase;color:var(--steel);align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;top:1rem;right:1rem}.service-tier__badge .spark{width:.55rem;height:.55rem}.service-tier h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin:0;padding-right:6rem;font-size:clamp(1.6rem,3.5vw,2rem);font-weight:700}.service-tier__price{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:.45rem .65rem;margin:.4rem 0 0;font-size:1.45rem;font-weight:700;display:flex}.service-tier__price>span:first-child{font-family:var(--font-body);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.85rem;font-weight:600}.service-tier__original{color:var(--muted);font-size:1.05rem;font-weight:600;text-decoration:line-through;text-decoration-thickness:1.5px}.service-tier__sale{color:var(--navy)}.service-tier__desc{color:var(--muted);margin:0;line-height:1.6}.checklist{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.checklist li{color:var(--charcoal);grid-template-columns:1.1rem 1fr;align-items:start;gap:.65rem;line-height:1.45;display:grid}.checklist li:before{content:"";background:var(--steel);clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);width:.7rem;height:.7rem;margin-top:.35rem}.service-tier__meta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:.5rem;display:flex}.service-tier__time{color:var(--muted);margin:0;font-size:.95rem}.service-tier__time strong{color:var(--navy);font-weight:700}.note{color:var(--muted);margin:0;font-size:.95rem;font-style:italic}.info-grid{gap:1.25rem;display:grid}.info-panel{border-top:1px solid var(--line);padding:1.5rem 0 0}.info-panel h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin:0;font-size:1.45rem;font-weight:700}.info-panel p{color:var(--muted);margin:.7rem 0 0;line-height:1.6}.addon-list{gap:.7rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.addon-list li{border-bottom:1px dashed var(--line);color:var(--charcoal);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.7rem;display:flex}.addon-list li:last-child{border-bottom:0;padding-bottom:0}.addon-list strong{white-space:nowrap;color:var(--navy);font-family:var(--font-display);font-size:1.05rem;font-weight:700}.closing{text-align:center;padding:clamp(3rem,6vw,4.5rem) 0}.closing .spark-divider{max-width:12rem;margin:1.25rem auto 0}.closing__actions{flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:1.75rem;display:flex}.closing__or{color:var(--muted);margin:1.25rem 0 0;font-size:.9rem;font-weight:600}.closing__tagline{font-family:var(--font-display);letter-spacing:-.01em;color:var(--navy);margin:1.75rem 0 0;font-size:1.2rem;font-weight:600}.site-footer{color:var(--ink);background:#fff;border-top:1px solid #e8edf4;margin-top:auto;padding:2.5rem 0 1.75rem;box-shadow:0 -1px #0c2a4a0a}.site-footer__inner{gap:1.5rem;display:grid}.site-footer__name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy);margin:0 0 .75rem;font-size:1.35rem;font-weight:700}.site-footer p{color:var(--charcoal);margin:0;line-height:1.55}.site-footer a{color:var(--navy);font-weight:600}.site-footer a:hover{color:#0a1f38}.site-footer__meta{flex-wrap:wrap;gap:1rem 1.5rem;font-size:.95rem;display:flex}.site-footer__bottom{color:var(--muted);border-top:1px solid #e8edf4;margin-top:.5rem;padding-top:1.25rem;font-size:.85rem}@media (width>=720px){.brand{max-width:240px}.brand__logo{height:4rem}.nav{display:flex}.header-cta__label{display:inline}.header-cta__short,.menu-toggle,.mobile-nav{display:none}.feature-strip{grid-template-columns:repeat(3,1fr);gap:2rem}.cta-band__inner{grid-template-columns:1.4fr auto}.service-tier{padding:2rem 2rem 1.75rem}.info-grid{grid-template-columns:1.1fr .9fr;gap:2.5rem}.site-footer__inner{grid-template-columns:1.2fr 1fr;align-items:end}}@media (width>=960px){.service-stack{gap:1.75rem}.service-tier{grid-template-columns:1.05fr 1.2fr;align-items:start}.service-tier__aside{display:contents}.service-tier__copy{grid-column:1}.service-tier__body{grid-area:1/2/span 3}.service-tier__meta{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
