:root{--cream:#FFE9CF;--shell:#FFF4E4;--ink:#17212B;--muted:#4A5260;--sunset:#B3410E;--coral:#F29A7E;--peach:#FFC79A;--mint:#CDEFE3;--droid:#7BC74D}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:400;color:var(--ink);background:var(--cream);overflow-x:hidden;-webkit-font-smoothing:antialiased}.page{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;overflow:hidden;isolation:isolate;background:radial-gradient(60% 45% at 8% 6%,rgba(255,184,130,.85),transparent 70%),radial-gradient(55% 40% at 96% 10%,rgba(242,154,126,.55),transparent 72%),radial-gradient(70% 45% at 0 100%,rgba(172,229,208,.75),transparent 70%),radial-gradient(60% 40% at 100% 96%,rgba(255,214,160,.8),transparent 70%),linear-gradient(180deg,#FFE0C2 0,#FFEFDC 55%,#FFF3E3 100%)}.deco{position:absolute;inset:0;z-index:-1;pointer-events:none}.deco svg{position:absolute;width:100%;height:100%}.spark{position:absolute;width:14px;height:14px;color:var(--sunset);opacity:.55;animation:twinkle 4.8s ease-in-out infinite}.spark svg{width:100%;height:100%}.spark.s1{top:18%;left:9%}.spark.s2{top:11%;right:12%;width:10px;height:10px;animation-delay:1.2s}.spark.s3{top:44%;left:6%;width:9px;height:9px;animation-delay:2.1s;color:#2A8C84}.spark.s4{top:38%;right:7%;animation-delay:3s;color:#2A8C84}@keyframes twinkle{0%,100%{transform:scale(.7) rotate(0);opacity:.25}50%{transform:scale(1) rotate(20deg);opacity:.7}}.wrap{width:100%;max-width:var(--content-max-w,720px);margin:0 auto;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(12px,2.4svh,28px) 16px 8px;text-align:center;gap:clamp(10px,1.8svh,18px)}.brand{display:inline-flex;align-items:center;gap:10px;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(1.15rem,1rem+.6vw,1.45rem);letter-spacing:.01em;color:var(--ink)}.brand img{width:clamp(34px,4.5vw,42px);height:auto;border-radius:10px;box-shadow:0 4px 12px rgba(23,33,43,.18)}.scene-wrap{position:relative;display:grid;place-items:center;margin-top:clamp(4px,1svh,12px)}.halo{position:absolute;width:150%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,210,150,.75) 0,rgba(255,210,150,.25) 42%,transparent 66%);z-index:-1;animation:breathe 7s ease-in-out infinite}.rings{position:absolute;width:128%;aspect-ratio:1;z-index:-1;opacity:.5}@keyframes breathe{0%,100%{transform:scale(.96)}50%{transform:scale(1.03)}}.scene{--h:clamp(200px,calc(46svh - 50px),440px);height:var(--h);width:min(calc(var(--h) * .909),86vw);border-radius:999px 999px 30px 30px;overflow:hidden;position:relative;background:#FBA774;box-shadow:0 0 0 3px var(--ink),0 0 0 9px var(--shell),0 0 0 11px rgba(23,33,43,.22),0 26px 50px -18px rgba(120,55,30,.55);touch-action:manipulation;-webkit-tap-highlight-color:transparent;animation:rise .8s cubic-bezier(.2,.8,.25,1) both}@keyframes rise{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}.scene svg{display:block;width:100%;height:100%}.scene .L1{transform:translate(calc(var(--px,0) * 3px),calc(var(--py,0) * 1.5px))}.scene .L2{transform:translate(calc(var(--px,0) * 5px),calc(var(--py,0) * 2px))}.scene .L3{transform:translate(calc(var(--px,0) * 7px),calc(var(--py,0) * 2.5px))}.scene .L4{transform:translate(calc(var(--px,0) * 9px),calc(var(--py,0) * 3px))}.scene .L5{transform:translate(calc(var(--px,0) * 12px),calc(var(--py,0) * 4px))}.scene .L6{transform:translate(calc(var(--px,0) * 16px),calc(var(--py,0) * 5px))}.scene .L7{transform:translate(calc(var(--px,0) * 24px),calc(var(--py,0) * 7px))}.gull{animation:flap 1.1s ease-in-out infinite}.gull.g2{animation-delay:.35s}.gull.g3{animation-delay:.7s}@keyframes flap{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.45)}}.flock{animation:glide 14s ease-in-out infinite}@keyframes glide{0%,100%{transform:translateX(0)}50%{transform:translateX(22px)}}.boat{animation:sail 18s ease-in-out infinite}@keyframes sail{0%,100%{transform:translateX(0)}50%{transform:translateX(-26px)}}.bob{animation:bobble 3.2s ease-in-out infinite}@keyframes bobble{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-1.5px) rotate(-3deg)}}.shimmer rect{animation:glint 2.6s ease-in-out infinite}.shimmer rect:nth-child(2){animation-delay:.4s}.shimmer rect:nth-child(3){animation-delay:.8s}.shimmer rect:nth-child(4){animation-delay:1.2s}.shimmer rect:nth-child(5){animation-delay:1.6s}.shimmer rect:nth-child(6){animation-delay:2s}@keyframes glint{0%,100%{opacity:.35}50%{opacity:1}}.foam{animation:lap 5.5s ease-in-out infinite}.foam.f2{animation-duration:7s;animation-delay:-2s}@keyframes lap{0%,100%{transform:translateX(0)}50%{transform:translateX(-14px)}}.frond{animation:sway 6s ease-in-out infinite}@keyframes sway{0%,100%{transform:rotate(0)}50%{transform:rotate(2.5deg)}}.droid{animation:idle 3.6s ease-in-out infinite}@keyframes idle{0%,100%{transform:translateY(0)}50%{transform:translateY(-2.5px)}}.jump{transition:transform .5s cubic-bezier(.3,1.6,.5,1)}.eyes{animation:blink 5s infinite}@keyframes blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}.rarm{transform:rotate(-24deg);transition:transform .55s cubic-bezier(.3,1.5,.5,1)}.larm{transform:rotate(8deg);transition:transform .55s cubic-bezier(.3,1.5,.5,1)}.drip circle{animation:drip 1.8s ease-in infinite;opacity:0}.drip circle:nth-child(2){animation-delay:.9s}@keyframes drip{0%{transform:translateY(0);opacity:0}15%{opacity:.9}100%{transform:translateY(14px);opacity:0}}.cork{transition:transform .5s cubic-bezier(.2,.9,.3,1),opacity .4s}.note{transform:scale(0) rotate(-12deg);opacity:0;transition:transform .55s cubic-bezier(.3,1.6,.5,1),opacity .3s}.burst line{transform:scale(0);opacity:0;transition:transform .45s ease-out,opacity .45s}.scene.cheer .jump{transform:translateY(-10px)}.scene.cheer .rarm{transform:rotate(-160deg)}.scene.cheer .larm{transform:rotate(138deg)}.scene.cheer .drip{opacity:0}.scene.cheer .cork{transform:translate(4px,34px) rotate(160deg);opacity:0}.scene.cheer .note{transform:scale(1) rotate(-6deg);opacity:1;transition-delay:.18s}.scene.cheer .burst line{transform:scale(1);opacity:1;transition-delay:.22s}h1{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:clamp(1.7rem,1.1rem+3.1vw,3.35rem);line-height:1.06;letter-spacing:-.01em;max-width:17ch;margin-top:clamp(4px,1svh,12px)}h1 em{font-style:italic;color:var(--sunset);position:relative;white-space:nowrap}h1 em::after{content:"";position:absolute;left:2%;right:2%;bottom:-.04em;height:.16em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 6'%3E%3Cpath d='M0 3 Q5 0 10 3 T20 3 T30 3 T40 3' fill='none' stroke='%23B3410E' stroke-width='1.6'/%3E%3C/svg%3E") repeat-x 0 0/ .9em 100%;transform-origin:left;animation:underline .9s .5s cubic-bezier(.3,.8,.3,1) both}@keyframes underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}.lede{font-size:clamp(.95rem,.88rem+.35vw,1.12rem);line-height:1.5;color:var(--muted);max-width:40ch}.lede strong{font-weight:600;color:var(--ink)}.cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 30px 0 32px;margin-top:clamp(2px,.8svh,8px);border-radius:999px;background:var(--ink);color:#FFF6EA;font-family:"Outfit",system-ui,sans-serif;font-weight:600;font-size:clamp(1.02rem,.96rem+.3vw,1.15rem);letter-spacing:.01em;text-decoration:none;box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 14px 26px -12px rgba(23,33,43,.7);transition:transform .35s cubic-bezier(.3,1.7,.5,1),box-shadow .3s}.cta svg{width:22px;height:22px;flex:none;transition:transform .3s cubic-bezier(.3,1.7,.5,1)}.cta:hover{transform:translateY(-2px)}.cta:hover svg{transform:translateY(2px)}.cta:active{transform:scale(1.04,.9);transition-duration:.08s}.cta:focus-visible{outline:3px solid var(--sunset);outline-offset:4px}.under{font-size:clamp(.82rem,.8rem+.15vw,.92rem);color:var(--muted)}footer{width:100%;text-align:center;padding:10px 16px calc(14px+env(safe-area-inset-bottom));font-size:clamp(.78rem,.76rem+.12vw,.86rem);color:var(--muted)}footer b{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:1.08em;color:var(--ink)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}html,body{max-width:100%;overflow-x:clip}