:root{--bg: #f4fcfc;--ink: #111822;--muted: #4b6a70;--aqua: #82dade;--navy: #111822;--sky: #d6f3f4;--card: #fff;--radius: 22px;--gutter: 1.25rem;--container: 1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,sans-serif}button{font:inherit;color:inherit;cursor:pointer}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.btn{display:inline-block;background:var(--navy);color:var(--aqua);padding:.9rem 2rem;border-radius:999px;font-weight:700;text-decoration:none}.hero{text-align:center;padding:clamp(2.5rem,8vw,5rem) var(--gutter);background:var(--aqua)}.hero-logo{width:min(520px,84%)}.hero-sub{max-width:520px;margin:1.5rem auto 2rem;color:var(--navy)}.site-footer{text-align:center;padding:3rem var(--gutter);color:var(--muted);letter-spacing:.15em;font-size:.8rem}.tabbar{position:fixed;left:50%;bottom:max(.9rem,env(safe-area-inset-bottom));transform:translate(-50%);z-index:30;display:flex;gap:.25rem;max-width:min(94vw,760px);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;background:var(--navy);padding:.4rem;border-radius:999px;box-shadow:0 10px 30px #11182259}.tabbar::-webkit-scrollbar{display:none}.tabbar a{flex:0 0 auto;color:var(--aqua);text-decoration:none;font-weight:700;font-size:.85rem;padding:.55rem 1rem;border-radius:999px;white-space:nowrap;transition:background .25s,color .25s}.tabbar a.active{background:var(--aqua);color:var(--navy)}html{scroll-padding-top:16px}body{padding-bottom:5.5rem}.category{padding:3.5rem 0 1rem}.cat-head h2{font-size:clamp(2rem,5vw,3.2rem);font-weight:900;color:var(--navy);line-height:1.1}.cat-head p{color:var(--muted);margin:.4rem 0 1.5rem}.group-title{margin:1.5rem 0 .75rem;font-size:1.1rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1.25rem}.card{background:var(--card);border:none;border-radius:var(--radius);padding:.75rem .75rem 1.1rem;text-align:center;box-shadow:0 6px 20px #11182212;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem}@media(hover:hover){.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #11182224}}.card-img{width:100%;aspect-ratio:1;border-radius:calc(var(--radius) - 8px);overflow:hidden;background:var(--sky)}.card-img img{width:100%;height:100%;object-fit:cover;display:block}.card-img.empty{display:grid;place-items:center;font-size:3.5rem;font-weight:900;color:var(--navy)}.card-name{display:block;font-weight:700;font-size:1rem;line-height:1.25}.pill{background:var(--navy);color:var(--aqua);font-weight:800;font-size:.85rem;padding:.25rem .8rem;border-radius:999px}.poster{width:100%;border-radius:var(--radius);margin-bottom:1rem}.notes{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin-bottom:1.25rem}.notes li{background:var(--navy);color:var(--aqua);font-weight:700;padding:.35rem .9rem;border-radius:999px;font-size:.9rem}@media(max-width:520px){.grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.site-header{flex-direction:column;align-items:flex-start;gap:.5rem}.cat-nav{max-width:100%}}.card-desc{display:block}.card:focus-visible,.tabbar a:focus-visible,.btn:focus-visible,.row-arrow:focus-visible,.close:focus-visible{outline:3px solid var(--navy);outline-offset:3px}.card-img{display:block}.chips{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;margin-bottom:1rem}.chips li{background:#fff;border:1px solid var(--navy);border-radius:999px;padding:.5rem 1.1rem;font-weight:600}.grid-text{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.card-text{align-items:flex-start;text-align:left;padding:1.25rem;gap:.35rem}.card-text .card-desc{color:var(--muted);font-size:.9rem}.backdrop{position:fixed;inset:0;z-index:50;background:#11182299;display:flex;align-items:flex-end;justify-content:center;animation:fade .25s ease}.modal{position:relative;background:#fff;border-radius:28px 28px 0 0;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;animation:sheet .4s cubic-bezier(.2,.8,.2,1)}.modal:before{content:"";position:sticky;top:8px;display:block;width:44px;height:5px;border-radius:3px;background:#11182259;margin:8px auto -13px;z-index:3}.modal>img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.close{position:absolute;top:.75rem;right:.75rem;z-index:4;width:38px;height:38px;border-radius:50%;border:none;background:#fff;font-size:1.5rem;line-height:1;box-shadow:0 2px 8px #0003}.modal-body{padding:1.5rem 1.5rem 2.5rem}.modal-body h3{font-size:1.6rem;color:var(--navy)}.modal-price{font-weight:800;color:var(--navy);margin:.25rem 0 .75rem}.modal-price span{color:var(--muted);font-weight:500}.modal-body h4{margin:1.1rem 0 .4rem;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.rows{list-style:none}.rows li{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid #e3f1f2}@keyframes sheet{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}@media(min-width:700px){.backdrop{align-items:center}.modal{border-radius:28px;animation:pop .3s ease}.modal:before{display:none}}@keyframes pop{0%{opacity:0;transform:translateY(24px) scale(.97)}}.backdrop-close{position:absolute;inset:0;border:none;background:transparent;cursor:default}.modal{z-index:1;outline:none}.reveal{opacity:0;transform:translateY(36px) scale(.96);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.hero{overflow:hidden}.hero-inner{will-change:transform}.marquee{overflow:hidden;margin:3.5rem calc(var(--gutter) * -1) 1rem}.marquee-track{display:flex;width:max-content;animation:marquee 32s linear infinite}.marquee-track.reverse{animation-direction:reverse}.marquee span{font-size:clamp(3.5rem,11vw,8rem);font-weight:900;text-transform:uppercase;line-height:1;padding:0 1.5rem;color:var(--navy);white-space:nowrap}.marquee span.outline{color:transparent;-webkit-text-stroke:2px var(--navy)}.card-img img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}@media(hover:hover){.card:hover .card-img img{transform:scale(1.08)}}@keyframes marquee{to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}.row .reveal,.featured-row .reveal{transform:none}.grid-circle{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2.5rem 1.5rem}.card-circle{background:transparent;box-shadow:none;padding:0;gap:.6rem}@media(hover:hover){.card-circle:hover{transform:none;box-shadow:none}}.card-circle .card-img{position:relative;width:100%;border-radius:50%;background:radial-gradient(circle at 50% 35%,#fff 0%,var(--sky) 100%);box-shadow:0 0 0 7px var(--bg),0 0 0 8px var(--navy);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease}.card-circle .card-img img{transform:scale(1.22);transform-origin:50% 55%}@media(hover:hover){.card-circle:hover .card-img{transform:scale(1.07);box-shadow:0 0 0 7px var(--bg),0 0 0 8px var(--navy),0 18px 40px #82dadebf}}@media(hover:hover){.card-circle:hover .card-img img{transform:scale(1.36)}}.card-circle .card-name{font-size:1.15rem;margin-top:.9rem;letter-spacing:.02em}.card-circle .pill{background:transparent;color:var(--navy);border:1px solid var(--navy);font-weight:600;transition:background .3s,color .3s}@media(hover:hover){.card-circle:hover .pill{background:var(--navy);color:var(--aqua)}}@media(max-width:520px){.grid-circle{grid-template-columns:repeat(2,1fr);gap:1.8rem .8rem}}.featured{padding:4rem 0 2rem;background:var(--sky)}.featured-head{text-align:center;max-width:640px;margin:0 auto 2rem}.featured-head h2{font-size:clamp(2rem,5vw,3.2rem);font-weight:900;line-height:1.1}.featured-head p{color:var(--muted);margin-top:.75rem}.featured-row{display:flex;gap:1.25rem;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:.5rem max(var(--gutter),calc((100vw - var(--container)) / 2)) 1.5rem;scrollbar-width:none}.featured-row::-webkit-scrollbar{display:none}.card-featured{flex:0 0 min(300px,72vw);scroll-snap-align:center;padding:0 0 1.4rem;overflow:hidden}.card-featured .card-img{border-radius:0;aspect-ratio:4 / 5}.card-featured .card-name{font-size:1.25rem;padding:0 1rem}.card-featured .card-desc{color:var(--muted);font-size:.85rem;padding:0 1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.featured-cta{text-align:center;padding:.5rem 0 1rem}.grid-showcase{grid-template-columns:1fr;gap:2rem}.card-showcase{display:grid;grid-template-columns:minmax(0,520px) 1fr;align-items:center;text-align:left;gap:0 clamp(1.5rem,5vw,4rem);padding:0;overflow:hidden;background:var(--sky);border-radius:36px;box-shadow:none}.card-showcase:nth-child(2n){grid-template-columns:1fr minmax(0,520px)}.card-showcase .card-img{grid-column:1}.card-showcase .card-name,.card-showcase .card-desc,.card-showcase .pill{grid-column:2}.card-showcase:nth-child(2n) .card-img{grid-column:2}.card-showcase:nth-child(2n) .card-name,.card-showcase:nth-child(2n) .card-desc,.card-showcase:nth-child(2n) .pill{grid-column:1}.card-showcase .card-img{grid-row:1 / span 3;border-radius:0;aspect-ratio:auto;height:100%;min-height:0;cursor:zoom-in}.card-showcase .card-img img{height:auto;object-fit:contain}.card-showcase .card-name{font-size:clamp(1.6rem,3.4vw,2.6rem);font-weight:900;line-height:1.1;align-self:end;padding-right:1.5rem}.card-showcase .card-desc{color:var(--muted);max-width:46ch;padding-right:1.5rem}.card-showcase .pill{align-self:start;justify-self:start;font-size:1.1rem;padding:.4rem 1.2rem}.card-showcase:nth-child(2n) .card-name,.card-showcase:nth-child(2n) .card-desc{padding-left:1.5rem}.card-showcase:nth-child(2n) .pill{margin-left:1.5rem}.card-showcase .card-img img{transform-origin:50% 50%}@media(hover:hover){.card-showcase:hover .card-img img{transform:scale(1.12)}}@media(max-width:720px){.card-showcase,.card-showcase:nth-child(2n){grid-template-columns:1fr;padding-bottom:1.5rem}.card-showcase .card-img{grid-row:auto;min-height:0}.card-showcase .card-img,.card-showcase:nth-child(2n) .card-img,.card-showcase .card-name,.card-showcase .card-desc,.card-showcase .pill,.card-showcase:nth-child(2n) .card-name,.card-showcase:nth-child(2n) .card-desc,.card-showcase:nth-child(2n) .pill{grid-column:1}.card-showcase .card-name,.card-showcase .card-desc,.card-showcase:nth-child(2n) .card-name,.card-showcase:nth-child(2n) .card-desc{padding:0 1.25rem;margin-top:.5rem}.card-showcase .pill,.card-showcase:nth-child(2n) .pill{margin:.5rem 0 0 1.25rem}}.row-wrap{position:relative;margin:0 calc(var(--gutter) * -1)}.row{display:flex;gap:1rem;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x pan-y;scroll-snap-type:x proximity;padding:.75rem var(--gutter) 1.5rem;scrollbar-width:none}.row::-webkit-scrollbar{display:none}.row>.card{flex:0 0 min(210px,46vw);scroll-snap-align:start}.row>.card-circle{flex-basis:min(270px,64vw)}.row-arrow{position:absolute;top:40%;z-index:5;width:44px;height:44px;border-radius:50%;border:none;background:var(--navy);color:var(--aqua);font-size:1.6rem;line-height:1;box-shadow:0 6px 18px #1118224d;display:none}.row-arrow.left{left:.5rem}.row-arrow.right{right:.5rem}@media(hover:hover)and (min-width:900px){.row-wrap:hover .row-arrow{display:block}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}
