:root{--black-sea:#01040A;--deep-teal:#06282D;--wake:#38BDF8;--trace:#67E8F9;--foam:#E8FCFF;--mist:#ACEFF8;--dim-cyan:#75BFCB;--measure:70ch;--shadow:rgba(0,0,0,.72)}
*{box-sizing:border-box}html{background:var(--black-sea);color:var(--foam);scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:"Alegreya Sans",system-ui,sans-serif;font-size:clamp(1.05rem,.4vw + 1rem,1.25rem);line-height:1.55;color:var(--foam);background:radial-gradient(circle at 18% 18%,rgba(56,189,248,.08),transparent 30rem),linear-gradient(140deg,var(--black-sea),#021319 52%,var(--black-sea));overflow-x:hidden}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(115deg,transparent 0 42px,rgba(103,232,249,.035) 43px 44px,transparent 45px 92px);mask-image:radial-gradient(circle at 50% 35%,#000 0 38%,transparent 76%);opacity:.42;transform:translate3d(calc(var(--scroll,0)*-.015px),calc(var(--scroll,0)*.02px),0)}a{color:inherit}h1,h2,h3,legend,.brand{font-family:"Bodoni Moda",Georgia,serif;font-weight:500;letter-spacing:-.035em;line-height:.94;margin:0;text-wrap:balance}h1{font-size:clamp(4rem,11vw,3.6rem);text-shadow:0 18px 38px var(--shadow);max-width:9ch}h2{font-size:clamp(2.35rem,5vw,3.6rem);max-width:12ch}p{margin:0;color:var(--mist)}.measure{max-width:var(--measure)}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:20;padding:.65rem .9rem;background:var(--foam);color:var(--black-sea);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
#plankton-field{position:fixed;inset:0;z-index:-3;width:100%;height:100%;background:var(--black-sea)}.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.11;mix-blend-mode:screen}.grain::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.55'/%3E%3C/svg%3E")}
.entry-seq{position:fixed;inset:0;z-index:30;background:var(--black-sea);display:grid;place-items:center;pointer-events:none;animation:loaderFade .9s ease .35s forwards}.entry-seq span{width:.45rem;height:.45rem;border-radius:50%;background:var(--trace);margin:.35rem;box-shadow:10px 16px 28px rgba(56,189,248,.35);display:inline-block;animation:preload 1.2s ease-in-out infinite alternate}.entry-seq span:nth-child(2){animation-delay:.16s}.entry-seq span:nth-child(3){animation-delay:.32s}@keyframes preload{to{transform:translateY(-1rem);opacity:.35}}@keyframes loaderFade{to{opacity:0;visibility:hidden}}
.site-header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:clamp(1rem,2vw,1.8rem) clamp(1rem,4vw,4rem);transition:transform .35s ease,background-color .35s ease}.site-header.is-hidden{transform:translateY(-100%)}.site-header.is-scrolled{background-color:rgba(1,4,10,.82)}.brand{font-size:clamp(1.25rem,2vw,1.8rem);text-decoration:none;color:var(--foam)}.wake-nav{display:flex;gap:clamp(.5rem,1.4vw,1.25rem);align-items:center}.wake-link{position:relative;text-decoration:none;color:var(--mist);outline:none}.wake-link::after{content:"";position:absolute;left:0;width:100%;bottom:-.22em;height:1px;background:linear-gradient(90deg,transparent,var(--wake),var(--trace));transition:transform .45s ease,opacity .45s ease;opacity:.4;transform:scaleX(0);transform-origin:left}.wake-link:hover::after,.wake-link:focus-visible::after,.wake-link[aria-current=page]::after{transform:scaleX(1);opacity:1}.wake-link[aria-current=page]{color:var(--foam)}.demo-badge{position:fixed;right:1rem;bottom:1rem;z-index:12;padding:.45rem .65rem;border:1px solid rgba(103,232,249,.32);border-radius:999px;background:rgba(1,4,10,.78);color:var(--trace);font-size:.82rem;box-shadow:8px 16px 32px rgba(0,0,0,.38)}
.viewport{min-height:100svh}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,34rem);align-items:center;padding:8rem clamp(1.2rem,6vw,7rem) 4rem}.hero::before,.page-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:min(68rem,80vw);pointer-events:none;background:radial-gradient(ellipse at 30% 45%,rgba(1,4,10,.96) 0 22%,rgba(1,4,10,.72) 46%,transparent 74%);z-index:-1}.hero-copy{max-width:39rem}.lede{margin-top:1.2rem;font-size:clamp(1.35rem,2vw,2rem);color:var(--foam)}.hero-copy p:not(.lede){margin-top:1rem;max-width:62ch}.word{display:inline-block}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.4rem;margin-top:2rem}.button,.price-current{display:inline-flex;align-items:center;justify-content:center;min-height:3.1rem;padding:.85rem 1.15rem;border:1px solid rgba(103,232,249,.55);border-radius:999px;color:var(--black-sea);background:var(--trace);text-decoration:none;font-weight:700;box-shadow:10px 18px 34px rgba(0,0,0,.42);transition:transform .25s ease,background-color .25s ease,color .25s ease}.button:hover,.button:focus-visible,.price-current:hover,.price-current:focus-visible{background:var(--wake);transform:translateY(-2px)}:focus-visible{outline:2px solid var(--wake);outline-offset:4px}
.current-map{align-self:stretch;display:grid;place-items:center;opacity:.85}.current-map svg{width:min(30rem,45vw);filter:drop-shadow(10px 20px 34px rgba(0,0,0,.55))}.current-map path{fill:none;stroke:var(--trace);stroke-width:1;stroke-dasharray:2 20;stroke-linecap:round;opacity:.72}.section,.page-hero{padding:clamp(4rem,9vw,8rem) clamp(1.2rem,6vw,7rem);position:relative}.page-hero{min-height:62svh;display:flex;flex-direction:column;justify-content:end;gap:1.2rem}.page-hero.slim{min-height:47svh}.page-hero p{max-width:var(--measure);font-size:clamp(1.2rem,2vw,1.65rem);color:var(--mist)}.intro-drift{border-top:1px solid rgba(103,232,249,.14)}.intro-drift .measure{margin-left:auto}.intro-drift p,.bio-text p{margin-top:1.2rem}.section-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2rem}.stream-list{display:grid;gap:.75rem}
.service-row{display:grid;grid-template-columns:minmax(14rem,1.1fr) minmax(18rem,1.5fr) auto;gap:1.2rem;align-items:center;padding:1rem 0;border-top:1px solid rgba(103,232,249,.16);color:var(--dim-cyan);opacity:.72;transition:color .35s ease,opacity .35s ease,transform .35s ease}.service-row:hover,.service-row:focus-within{color:var(--foam);opacity:1;transform:translateX(.35rem)}.service-row__main{display:grid}.service-row__main span{color:var(--foam);font-family:"Bodoni Moda",Georgia,serif;font-size:clamp(1.5rem,2.4vw,2.4rem);letter-spacing:-.035em}.service-row small{color:var(--trace)}.service-row strong{color:var(--trace);white-space:nowrap}.quotes{background:linear-gradient(180deg,transparent,rgba(6,40,45,.38),transparent)}.quote-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin-top:2rem}.quote-ripple{margin:0;padding-top:1rem;border-top:1px solid rgba(103,232,249,.2)}blockquote{margin:0;color:var(--foam);font-size:1.18rem}figcaption{margin-top:1rem;color:var(--trace)}
.reading-river{padding:0 clamp(1.2rem,6vw,7rem) 7rem}.reading-detail{min-height:18rem;display:grid;grid-template-columns:minmax(15rem,.9fr) minmax(18rem,1.25fr) auto;gap:2rem;align-items:center;border-top:1px solid rgba(103,232,249,.18);padding:clamp(2rem,5vw,4rem) 0}.reading-detail h2{font-size:clamp(2.1rem,4vw,3.6rem)}.reading-detail__title p,.blurb{color:var(--foam)}.reading-detail__body p+p{margin-top:.8rem}ul{padding-left:1.1rem;color:var(--mist)}li::marker{color:var(--wake)}.price-current{color:var(--black-sea);white-space:nowrap}.bio-current{display:grid;grid-template-columns:minmax(0,var(--measure)) minmax(14rem,22rem);gap:clamp(2rem,8vw,8rem);align-items:start}.bio-aside{border-top:1px solid rgba(103,232,249,.22);padding-top:1rem;display:grid;gap:1rem;color:var(--trace)}
.booking-flow{padding:0 clamp(1.2rem,6vw,7rem) 7rem;display:grid;grid-template-columns:minmax(14rem,24rem) minmax(0,1fr);gap:clamp(2rem,6vw,5rem)}.step-current{list-style:none;padding:0;margin:0;position:sticky;top:7rem;align-self:start;display:grid;gap:1.2rem}.step-current li{padding-top:1rem;border-top:1px solid rgba(103,232,249,.18)}.step-current strong{display:block;font-family:"Bodoni Moda",Georgia,serif;font-size:1.45rem;letter-spacing:-.025em;color:var(--foam)}.step-current span{color:var(--dim-cyan)}.booking-form{display:grid;gap:2rem}fieldset{border:0;margin:0;padding:0}legend{font-size:clamp(1.8rem,3vw,3rem);margin-bottom:1rem}.choice-current,.date-current,.time-current{display:grid;gap:.75rem}.date-current,.time-current{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-choice,.date-choice,.time-choice{appearance:none;border:1px solid rgba(103,232,249,.18);border-radius:1.4rem;padding:1rem;text-align:left;color:var(--dim-cyan);background:rgba(1,4,10,.62);font:inherit;cursor:pointer;transition:transform .25s ease,border-color .25s ease,color .25s ease,background-color .25s ease}.service-choice span{display:block;font-family:"Bodoni Moda",Georgia,serif;color:var(--foam);font-size:1.45rem;letter-spacing:-.03em}.service-choice small{color:var(--dim-cyan)}.service-choice:hover,.service-choice:focus-visible,.date-choice:hover,.date-choice:focus-visible,.time-choice:hover,.time-choice:focus-visible,.is-selected{border-color:rgba(56,189,248,.85);background:rgba(6,40,45,.8);color:var(--foam);transform:translateY(-2px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}label{display:grid;gap:.35rem;color:var(--trace)}.wide{grid-column:1/-1}input,textarea{width:100%;border:1px solid rgba(103,232,249,.2);border-radius:1rem;padding:.9rem 1rem;background:rgba(1,4,10,.76);color:var(--foam);font:inherit;transition:border-color .25s ease,background-color .25s ease}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid var(--wake);outline-offset:3px;border-color:var(--wake);background:rgba(6,40,45,.85)}.form-note{color:var(--trace)}
.contact-current{display:grid;grid-template-columns:minmax(16rem,1fr) minmax(0,var(--measure));gap:4rem;align-items:start}.contact-lines{display:grid;gap:.8rem}.contact-line{font-family:"Bodoni Moda",Georgia,serif;font-size:clamp(1.8rem,3vw,3.4rem);letter-spacing:-.035em;color:var(--foam)}.policies p+p{margin-top:1rem}.faq-current{padding-top:0}.faq-current h2{margin-bottom:2rem}.faq-item{border-top:1px solid rgba(103,232,249,.18);padding:1.05rem 0;max-width:var(--measure)}.faq-item summary{cursor:pointer;color:var(--foam);font-family:"Bodoni Moda",Georgia,serif;font-size:1.5rem;letter-spacing:-.025em}.faq-item p{margin-top:.8rem}.site-footer{display:flex;justify-content:space-between;gap:2rem;padding:3rem clamp(1.2rem,6vw,7rem) 5rem;border-top:1px solid rgba(103,232,249,.18);color:var(--dim-cyan)}.footer-name{font-family:"Bodoni Moda",Georgia,serif;color:var(--foam);font-size:1.4rem;letter-spacing:-.03em}.site-footer>div:last-child{display:grid;gap:.4rem;justify-items:end}
@media (hover:hover) and (pointer:fine){.magnetic{will-change:transform}}@media (max-width:900px){.site-header{align-items:flex-start}.wake-nav{flex-wrap:wrap;justify-content:flex-end;font-size:.98rem}.hero{grid-template-columns:1fr}.current-map{display:none}.section-head,.site-footer,.contact-current{display:grid}.quote-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.service-row,.reading-detail,.bio-current,.booking-flow{grid-template-columns:1fr}.step-current{position:static}}@media (max-width:560px){body{font-size:1.03rem}h1{font-size:clamp(3.35rem,18vw,3.6rem)}.site-header{position:absolute}.brand{max-width:6ch}.wake-nav{max-width:14rem;gap:.45rem .75rem}.page-hero{min-height:54svh;padding-top:8rem}.quote-flow,.date-current,.time-current,.form-grid{grid-template-columns:1fr}.service-row strong,.price-current{justify-self:start}.demo-badge{right:.65rem;bottom:.65rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.entry-seq{display:none}}
