*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#3a2b22;-webkit-font-smoothing:antialiased;background:#f7f1e6;margin:0;font-family:Karla,system-ui,sans-serif}a{color:#1e4359;text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:#a9762b}input,textarea{font-family:Karla,system-ui,sans-serif}:focus-visible{outline-offset:3px;border-radius:2px;outline:3px solid #a9762b}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.22,.7,.3,1);transform:translateY(14px)}[data-reveal].is-visible{opacity:1;transform:none}.hv-gold:hover{background:#e9c98e!important}.hv-bay:hover{background:#16354a!important}.hv-ghost-light:hover{color:#e9c98e!important;border-color:#e9c98e!important}.hv-ghost-dark:hover{color:#a9762b!important;border-color:#a9762b!important}.hv-enlarge:hover{background:#a9762b!important}.hv-credit:hover{color:#e9c98e!important}.review-card{transition:transform .35s cubic-bezier(.22,.7,.3,1),box-shadow .35s,border-color .35s}.review-card:hover{border-color:#c79a4e8c;transform:translateY(-4px);box-shadow:0 24px 42px -24px #1e43598c}.nav-mobile-toggle,.nav-mobile-panel{display:none}@media (max-width:767px){.nav-desktop{display:none!important}.nav-mobile-toggle{display:inline-flex!important}.nav-mobile-panel{display:flex!important}}@media (min-width:768px){.nav-mobile-panel{display:none!important}}.route-progress{z-index:2000;opacity:0;pointer-events:none;background:linear-gradient(90deg,#1e4359 0%,#2f6178 45%,#c79a4e 100%);border-radius:0 3px 3px 0;width:0;height:3px;transition:width .2s,opacity .35s .1s;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 0 10px #c79a4e99,0 1px 4px #1e435980}.route-progress[data-visible=true]{opacity:1;transition:width .2s,opacity .15s}.route-progress:after{content:"";background:linear-gradient(90deg,#0000,#fbf7efa6,#0000);animation:1.1s ease-in-out infinite rp-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes rp-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes drift-l{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes drift-r{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes bob-y{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes swim-r{0%{transform:translate(-16vw)}to{transform:translate(116vw)}}@keyframes swim-l{0%{transform:translate(116vw)scaleX(-1)}to{transform:translate(-16vw)scaleX(-1)}}@keyframes tail-flick{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}@keyframes undulate{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}@keyframes bubble-up{0%{opacity:0;transform:translateY(6px)scale(.6)}18%{opacity:.55}to{opacity:0;transform:translateY(-74px)scale(1)}}@keyframes gull-cross{0%{left:-12%}to{left:110%}}@keyframes glide-y{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes wing-l{0%,to{transform:rotate(-14deg)}50%{transform:rotate(18deg)}}@keyframes wing-r{0%,to{transform:rotate(14deg)}50%{transform:rotate(-18deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes tile-float{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes tile-float-off{0%,to{transform:translateY(20px)}50%{transform:translateY(10px)}}@keyframes sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes fish-jump{0%,38%{transform:translateY(0)rotate(0)}46%{transform:translateY(-32px)rotate(-28deg)}53%{transform:translateY(-50px)rotate(-4deg)}60%{transform:translateY(-32px)rotate(24deg)}68%,to{transform:translateY(0)rotate(0)}}@keyframes steam-rise{0%,to{opacity:.3;transform:translateY(3px)}50%{opacity:.85;transform:translateY(-2px)}}@keyframes glow-dot{0%,to{box-shadow:0 0 0 3px #4e7a4a2e}50%{box-shadow:0 0 0 6px #4e7a4a14}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1!important;transition:none!important;transform:none!important}[data-anim]{animation:none!important}.review-card{transition:none!important}.review-card:hover{transform:none}.route-progress{transition:opacity .2s!important}.route-progress:after{display:none}}
