@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-ext-400-normal-C2zvOubV.woff2) format("woff2"),url(/assets/dm-mono-latin-ext-400-normal-1aZr6b2b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-ext-500-normal-BtRyHRi6.woff2) format("woff2"),url(/assets/dm-mono-latin-ext-500-normal-Dw3M13d8.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2) format("woff2"),url(/assets/dm-mono-latin-500-normal-CN8Miw6E.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--pink: #ff2d78;--amber: #ffb000;--blue: #2a44ff;--mint: #00d18f;--violet: #7a2bff;--orange: #ff5a1f;--ink: #14111f;--ink-2: #2a2638;--paper: #fff9ef;--paper-2: #fff0d9;--line: #e7dcc8;--muted: #6b6578;--gel: var(--pink);--gel-on: var(--ink);--display: "Bricolage Grotesque Variable", "Arial Black", sans-serif;--body: "DM Sans Variable", system-ui, sans-serif;--mono: "DM Mono", ui-monospace, monospace;--radius: 18px;--pop: 4px 4px 0 var(--ink);--ease: cubic-bezier(.2, .8, .2, 1)}:root[data-gel=amber]{--gel: var(--amber)}:root[data-gel=blue]{--gel: var(--blue);--gel-on: #fff}:root[data-gel=mint]{--gel: var(--mint)}:root[data-gel=violet]{--gel: var(--violet);--gel-on: #fff}.c-pink{--c: var(--pink);--on: var(--ink)}.c-amber{--c: var(--amber);--on: var(--ink)}.c-blue{--c: var(--blue);--on: #fff}.c-mint{--c: var(--mint);--on: var(--ink)}.c-violet{--c: var(--violet);--on: #fff}.c-orange{--c: var(--orange);--on: var(--ink)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.55 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--display);margin:0;line-height:1.02;letter-spacing:-.02em;font-weight:800}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}small{font-size:.82em}.gel-image{position:relative;overflow:hidden;background:#fff}.gel-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.12)}.gel-image:before{content:"";position:absolute;inset:0;z-index:1;background:var(--c, var(--gel));mix-blend-mode:multiply;pointer-events:none;transition:background .5s var(--ease)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;box-shadow:var(--pop);transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s}.btn:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}.btn:active:not(:disabled){transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}.btn:disabled{opacity:.4;box-shadow:none}.btn-gel{background:var(--gel);color:var(--gel-on)}.btn-plain{background:#fff;color:var(--ink)}.btn-ghost{background:transparent;color:#fff;border-color:#fff;box-shadow:none}.btn-ghost:hover:not(:disabled){background:#fff;color:var(--ink);box-shadow:none;transform:none}.btn-small{padding:8px 16px;font-size:15px;box-shadow:3px 3px 0 var(--ink)}.icon-btn{display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--ink);border-radius:12px;background:#fff;transition:background .15s}.icon-btn:hover:not(:disabled){background:var(--paper-2)}.icon-btn:disabled{opacity:.3}.tape{display:inline-block;padding:5px 14px;background:var(--amber);color:var(--ink);font:500 14px/1.3 var(--mono)}.field{display:grid;gap:6px;font-size:14px;font-weight:600}.field span{color:var(--muted);font-weight:400}.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:2px solid var(--line);border-radius:12px;background:#fff;font-size:16px;font-weight:400;transition:border-color .15s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink)}.alert{display:flex;gap:12px;padding:14px 16px;border:2px solid var(--ink);border-radius:14px;background:#ffe2ec;font-size:15px}.alert svg{flex:none}.alert button{padding:0;border:0;background:none;font-weight:700;text-decoration:underline}.setup{max-width:560px;margin:12vh auto;padding:0 24px}.setup h1{font-size:56px;margin-bottom:16px}.setup ol{list-style:decimal;padding-left:22px;margin-top:16px;display:grid;gap:10px}.setup code{font-family:var(--mono);background:var(--paper-2);padding:2px 6px;border-radius:6px;font-size:14px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.nav{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;gap:28px;padding:16px clamp(16px,4vw,48px);color:#fff;transition:background .25s,color .25s,padding .25s}.nav.scrolled{background:var(--paper);color:var(--ink);padding-block:10px;border-bottom:2px solid var(--ink)}.brand{display:flex;align-items:center;gap:10px;font:800 18px/1.1 var(--display);letter-spacing:-.01em;text-decoration:none;margin-right:auto;min-width:0}.brand-mark{flex:none;width:30px;height:30px;border-radius:9px;background:var(--gel);position:relative;transition:background .4s}.brand-mark:after{content:"";position:absolute;left:10px;top:7px;border-left:13px solid var(--gel-on);border-block:8px solid transparent}.nav nav{display:flex;gap:26px}.nav nav a{font-weight:600;text-decoration:none;position:relative}.nav nav a:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;background:var(--gel);transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}.nav nav a:hover:after{transform:scaleX(1)}.nav-cta{background:var(--gel);color:var(--gel-on)}.nav-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:99px;background:var(--ink);color:#fff;font-size:13px}.nav-toggle{display:none;padding:4px;border:0;background:none;color:inherit}.hero{position:relative;min-height:min(100svh,880px);display:grid;align-items:end;padding:120px clamp(16px,5vw,64px) 56px;background:var(--ink);color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;--c: var(--gel)}.hero-bg img{filter:grayscale(1) contrast(1.1) brightness(1.05)}.hero-bg:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(100deg,#14111fdb,#14111f6b 52%,#14111f0a),linear-gradient(0deg,rgb(20 17 31 / .65),transparent 40%)}.hero-grain{position:absolute;inset:0;z-index:2;opacity:.16;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:overlay}.hero-inner{position:relative;z-index:3;max-width:1000px}.tape-rot{transform:rotate(-1.5deg);margin-bottom:22px}.hero h1{font-size:clamp(50px,8.6vw,128px);line-height:.92;letter-spacing:-.04em}.hero h1 em{font-style:normal;color:var(--gel);transition:color .4s}:root[data-gel=blue] .hero h1 em{color:#8fa0ff}:root[data-gel=violet] .hero h1 em{color:#c29bff}.hero-lead{max-width:540px;margin:22px 0 28px;font-size:clamp(17px,2vw,20px)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.hero .btn-gel{box-shadow:4px 4px #fff}.hero .btn-gel:hover{box-shadow:6px 6px #fff}.gel-switch{display:flex;align-items:center;gap:10px;margin-top:30px;font:400 13px var(--mono)}.swatch{width:30px;height:30px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--c);transition:transform .2s var(--ease)}.swatch:hover{transform:scale(1.15)}.swatch.on{outline:3px solid #fff;outline-offset:2px}.hero-card{z-index:3;position:absolute;right:clamp(16px,5vw,64px);bottom:56px;width:270px;padding:10px 10px 14px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--gel);transform:rotate(2.5deg);transition:box-shadow .4s}.hero-card .gel-image{height:180px}.hero-card>div:last-child{padding:12px 6px 0}.hero-price{font-size:15px}.hero-price strong{font:800 34px/1 var(--display)}.hero-place{display:flex;align-items:center;gap:5px;margin-top:4px;font-size:14px;color:var(--muted)}.ticker{background:var(--amber);border-block:2px solid var(--ink);overflow:hidden;white-space:nowrap}.ticker>div{display:inline-block;animation:ticker 50s linear infinite;padding:11px 0}.ticker span{font:700 18px var(--display);margin-right:26px}.ticker span:after{content:"✦";margin-left:26px;color:var(--pink)}@keyframes ticker{to{transform:translate(-50%)}}.section{padding:clamp(64px,9vw,120px) clamp(16px,5vw,64px)}.section-head{max-width:640px;margin-bottom:30px}.section-head p:last-child:not(.eyebrow){margin-top:12px;font-size:19px;color:var(--muted)}.eyebrow{font:500 14px var(--mono);margin-bottom:10px}h2{font-size:clamp(40px,6.5vw,84px);letter-spacing:-.035em;line-height:.96}.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.tab{padding:9px 18px;border:2px solid var(--ink);border-radius:99px;background:#fff;font-weight:700;transition:transform .15s var(--ease),background .15s}.tab:hover{transform:translateY(-2px)}.tab[aria-selected=true]{background:var(--c);color:var(--on);box-shadow:3px 3px 0 var(--ink)}.kit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:24px}.kit-card{display:flex;flex-direction:column;border:2px solid var(--ink);border-radius:var(--radius);background:#fff;overflow:hidden;box-shadow:var(--pop);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.kit-card:hover{transform:translate(-3px,-3px) rotate(-.4deg);box-shadow:8px 8px 0 var(--c)}.kit-card.skeleton{height:420px;background:var(--paper-2);box-shadow:none;animation:pulse 1.2s infinite alternate}@keyframes pulse{to{opacity:.5}}.kit-photo{height:230px;border-bottom:2px solid var(--ink)}.kit-photo img{transition:transform .5s var(--ease)}.kit-card:hover .kit-photo img{transform:scale(1.05)}.kit-body{display:flex;flex-direction:column;flex:1;gap:12px;padding:18px}.kit-title{display:flex;justify-content:space-between;gap:12px;align-items:start}.kit-title h3{font-size:25px}.kit-price{flex:none;padding:3px 11px;background:var(--c);color:var(--on);border-radius:10px;font:800 24px var(--display)}.kit-price small{font:500 12px var(--body);margin-left:3px}.kit-desc{color:var(--muted)}.kit-body ul{flex:1;font-size:15px;display:grid;gap:2px;align-content:start}.kit-body li{position:relative;padding-left:15px}.kit-body li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--c);border-radius:2px}.kit-foot{display:flex;justify-content:space-between;align-items:center;min-height:40px}.stock{color:#007a54;font-weight:600;font-size:13px}.stock.none{color:#c9134f}.add-btn{display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--ink);border-radius:12px;background:var(--gel);color:var(--gel-on);box-shadow:2px 2px 0 var(--ink);transition:transform .15s var(--ease),box-shadow .15s}.add-btn:hover:not(:disabled){transform:translate(-1px,-1px) rotate(90deg);box-shadow:3px 3px 0 var(--ink)}.add-btn:disabled{opacity:.3;box-shadow:none}.stepper{display:inline-flex;align-items:center;flex:none;border:2px solid var(--ink);border-radius:12px;overflow:hidden;background:#fff}.stepper button{display:grid;place-items:center;width:34px;height:36px;border:0;background:var(--paper-2);font-weight:800}.stepper button:hover:not(:disabled){background:var(--gel);color:var(--gel-on)}.stepper button:disabled{opacity:.3}.stepper span{min-width:30px;text-align:center;font-weight:700}.gear{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:clamp(28px,5vw,72px);background:var(--ink);color:#fff;align-items:start}.gear-side{position:sticky;top:88px}.gear .section-head{margin-bottom:20px}.search{display:flex;align-items:center;gap:10px;padding:11px 14px;border:2px solid var(--ink);border-radius:14px;background:#fff;color:var(--ink)}.search input{flex:1;min-width:0;border:0;outline:0;background:none;font-size:16px}.search:focus-within{box-shadow:3px 3px 0 var(--gel)}.cat-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.cat{display:inline-flex;gap:7px;align-items:center;padding:6px 13px;border:2px solid #4a4558;border-radius:99px;background:none;color:#fff;font-weight:600;font-size:15px;transition:border-color .15s,background .15s}.cat span{font:400 12px var(--mono);opacity:.7}.cat:hover{border-color:var(--c)}.cat.on{background:var(--c);color:var(--on);border-color:var(--c)}.gear-photo{height:190px;border-radius:var(--radius)}.gear-group{margin-bottom:30px}.gear-group h3{font-size:22px;padding-bottom:8px;color:var(--amber)}.gear-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:10px 0;border-top:1px solid #38334a;transition:padding .15s var(--ease)}.gear-row:hover{padding-left:8px}.gear-name{display:grid}.gear-name small{color:#aea8bd}.gear-name .stock{color:var(--mint)}.gear-name .stock.none{color:#ff7aa8}.gear-price{font:700 19px var(--display);white-space:nowrap}.gear-price small{font:400 12px var(--body);color:#aea8bd}.gear .add-btn{border-color:#fff;box-shadow:none}.gear .stepper{color:var(--ink)}.empty{color:#aea8bd}.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);padding:clamp(64px,9vw,120px) clamp(16px,5vw,64px);align-items:center;background:var(--paper-2)}.about-visual{position:relative;padding:0 12% 12% 0}.about-main{aspect-ratio:4 / 5;border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--pop)}.about-inset{position:absolute;right:0;bottom:0;width:46%;aspect-ratio:4 / 3;border:2px solid var(--ink);border-radius:var(--radius);transform:rotate(3deg)}.about-tape{position:absolute;top:22px;left:-6px;transform:rotate(-3deg);background:var(--pink)}.about-copy h2{font-size:clamp(36px,5vw,64px);margin-bottom:18px}.about-copy>p:not(.eyebrow){font-size:18px;margin-bottom:22px}.steps{display:grid;gap:16px;margin-top:34px}.steps li{display:flex;gap:14px}.steps li>span{flex:none;display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--ink);border-radius:50%;background:var(--gel);color:var(--gel-on);font:800 18px var(--display)}.steps li:nth-child(2)>span{background:var(--amber);color:var(--ink)}.steps li:nth-child(3)>span{background:var(--mint);color:var(--ink)}.steps h3{font-size:20px;margin-bottom:2px}.steps p{font-size:16px;color:var(--ink-2)}.booking{padding:clamp(64px,9vw,110px) clamp(16px,5vw,64px);background:var(--gel);color:var(--gel-on);transition:background .4s}.booking-head{margin-bottom:30px}.stepbar{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-weight:700;font-size:15px}.stepbar li{display:flex;align-items:center;gap:8px;opacity:.6}.stepbar li span{display:grid;place-items:center;width:28px;height:28px;border:2px solid currentColor;border-radius:50%;font-size:13px}.stepbar .now,.stepbar .past{opacity:1}.stepbar .now span{background:var(--ink);border-color:var(--ink);color:#fff}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start;color:var(--ink)}.booking-card,.summary,.success-ticket{background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--ink)}.booking-card{padding:clamp(18px,3vw,32px);display:grid;gap:22px}.step-body{display:grid;gap:18px;min-width:0;animation:rise .35s var(--ease)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.step-body h3{font-size:30px}.sub{font-size:19px}.step-nav{display:flex;justify-content:space-between;gap:12px}.quick-results{border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:#fff}.quick-results button{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;width:100%;padding:10px 14px;border:0;background:none;text-align:left}.quick-results li+li{border-top:1px solid var(--line)}.quick-results button:hover{background:var(--paper-2)}.empty-bag{display:grid;justify-items:start;gap:12px;padding:22px;border:2px dashed var(--line);border-radius:14px}.bag{display:grid;gap:10px}.bag li{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;background:#fff;border:2px solid var(--line);border-radius:14px}.bag-main{display:grid;min-width:0}.bag-main small{color:var(--muted)}.bag-choice{display:grid;gap:3px;margin-top:8px;font-size:13px;color:var(--muted)}.bag-choice select{padding:6px 8px;border:2px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);max-width:100%}.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.cal-prompt{font:500 14px var(--mono);text-align:center}.cal-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cal-month h4{font-size:18px;text-align:center;margin-bottom:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:3px}.cal-head{text-align:center;font:400 12px var(--mono);color:var(--muted);padding:3px 0}.cal-day{height:40px;min-width:0;padding:0;border:0;border-radius:10px;background:none;font-weight:600;font-size:15px;transition:background .12s,transform .12s}.cal-day:hover:not(:disabled){background:var(--paper-2);transform:scale(1.08)}.cal-day:disabled{color:#c3bcae;font-weight:400;text-decoration:line-through}.cal-day.between{background:color-mix(in srgb,var(--gel) 22%,transparent);border-radius:0}.cal-day.start,.cal-day.end{background:var(--ink);color:#fff}.cal-day.start:hover,.cal-day.end:hover{background:var(--ink)}.time-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.place-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.place{display:grid;justify-items:start;gap:2px;padding:14px;border:2px solid var(--line);border-radius:14px;background:#fff;text-align:left;transition:transform .15s var(--ease),border-color .15s}.place:hover{transform:translateY(-2px);border-color:var(--ink)}.place.on{border-color:var(--ink);background:var(--amber);box-shadow:3px 3px 0 var(--ink)}.place small{color:var(--ink-2)}.who-row{display:flex;flex-wrap:wrap;gap:8px}.who-row button{padding:8px 18px;border:2px solid var(--line);border-radius:99px;background:#fff;font-weight:700}.who-row .on{border-color:var(--ink);background:var(--mint)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1 / -1}.check{display:flex;gap:10px;align-items:center;font-weight:600}.check input{width:20px;height:20px;accent-color:var(--ink)}.summary{position:sticky;top:88px;padding:20px;display:grid;gap:14px}.summary h3{font-size:22px}.summary-empty{color:var(--muted)}.summary ul{display:grid;gap:6px;font-size:15px}.summary li{display:flex;justify-content:space-between;gap:12px}.summary dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0;padding-top:12px;border-top:2px dashed var(--line);font-size:15px}.summary dt{color:var(--muted)}.summary dd{margin:0;text-align:right}.summary-deal{padding:8px 12px;background:var(--mint);border-radius:10px;font-weight:700;font-size:15px}.summary-total{display:flex;justify-content:space-between;align-items:baseline;font-weight:700}.summary-total strong{font:800 38px var(--display)}.summary-note{font-size:13px;color:var(--muted)}.success{display:grid;justify-items:center;color:var(--ink)}.success-ticket{width:min(620px,100%);padding:clamp(22px,4vw,38px);display:grid;gap:14px;animation:rise .4s var(--ease)}.success-ref{justify-self:start;padding:3px 12px;background:var(--amber);font:500 16px var(--mono)}.success-ticket h3{font-size:40px}.success-ticket dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:6px 0;padding-top:14px;border-top:2px dashed var(--line)}.success-ticket dt{color:var(--muted)}.success-ticket dd{margin:0}.success-actions{display:flex;flex-wrap:wrap;gap:12px}.footer{padding:56px clamp(16px,5vw,64px) 110px;background:var(--ink);color:#fff}.footer-big{font:800 clamp(44px,10vw,136px)/.95 var(--display);letter-spacing:-.04em;color:var(--gel);margin-bottom:44px}:root[data-gel=blue] .footer-big{color:#8fa0ff}:root[data-gel=violet] .footer-big{color:#c29bff}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;font-size:15px}.footer-grid h4{font-size:16px;margin-bottom:8px}.footer-grid a,.footer-grid p{display:block;color:#cfcad9;text-decoration:none}.footer-grid a:hover{color:#fff;text-decoration:underline}.cart-bar{position:fixed;left:50%;bottom:18px;z-index:30;display:flex;align-items:center;gap:14px;padding:9px 18px 9px 9px;background:var(--ink);color:#fff;border:2px solid #fff;border-radius:99px;text-decoration:none;transform:translate(-50%);box-shadow:0 10px 28px #14111f59;animation:bar-in .35s var(--ease);white-space:nowrap}@keyframes bar-in{0%{transform:translate(-50%,30px);opacity:0}}.cart-count{display:grid;place-items:center;min-width:34px;height:34px;padding:0 6px;border-radius:99px;background:var(--gel);color:var(--gel-on);font-weight:800}.cart-bar strong{display:inline-flex;align-items:center;gap:5px}.load-error{padding:80px 24px;display:grid;justify-items:start;gap:12px}.terms-page{max-width:680px;margin:0 auto;padding:48px 20px 80px}.terms-page h1{font-size:clamp(44px,8vw,72px);margin:22px 0}.terms-page h2{font-size:32px;margin:32px 0 12px}.back-link{display:inline-flex;align-items:center;gap:6px;font-weight:600}.terms-list{list-style:disc;padding-left:22px;display:grid;gap:8px}.terms-table{width:100%;border-collapse:collapse;margin-bottom:24px}.terms-table td{padding:10px 0;border-bottom:1px solid var(--line)}.terms-table td:last-child{text-align:right;font-weight:700}@media(max-width:1040px){.booking-layout{grid-template-columns:minmax(0,1fr)}.summary{position:static}.gear{grid-template-columns:minmax(0,1fr)}.gear-side{position:static}.gear-photo,.hero-card{display:none}}@media(max-width:760px){body{font-size:16px}.nav{gap:12px}.brand{font-size:15px}.nav-toggle{display:block}.nav nav{display:none;position:absolute;inset:100% 0 auto;flex-direction:column;gap:4px;padding:14px 16px;background:var(--paper);color:var(--ink);border-block:2px solid var(--ink)}.nav nav.open{display:flex}.nav nav a{padding:8px 0}.about,.cal-months{grid-template-columns:minmax(0,1fr)}.cal-month:nth-child(2){display:none}.place-row,.time-row,.form-grid{grid-template-columns:minmax(0,1fr)}.gear-row{grid-template-columns:minmax(0,1fr) auto}.gear-price{grid-row:2}.gear-row>:last-child{grid-row:1 / 3;grid-column:2}.footer-grid{grid-template-columns:1fr 1fr}}.admin{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100svh;background:#f6f3ec;font-size:15px}.side{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;padding:18px 12px;background:var(--ink);color:#d9d5e3}.side-brand{display:flex;align-items:center;gap:10px;padding:4px 10px 22px;color:#fff;font:800 19px var(--display);text-decoration:none}.side nav{display:grid;gap:3px}.side a,.side button{display:flex;align-items:center;gap:11px;width:100%;padding:10px 12px;border:0;border-radius:11px;background:none;color:inherit;font-weight:600;font-size:15px;text-decoration:none;transition:background .15s,color .15s}.side a:hover,.side button:hover{background:#2a2638;color:#fff}.side nav a.active{background:var(--gel);color:var(--gel-on)}.side-foot{margin-top:auto;display:grid;gap:3px;padding-top:14px;border-top:1px solid #38334a}.admin-main{padding:clamp(18px,3vw,36px);min-width:0;animation:rise .25s var(--ease)}.page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:22px}.page-head h1{font-size:clamp(32px,4vw,44px)}.page-head p{color:var(--muted);margin-top:5px;max-width:620px}.page-actions{display:flex;flex-wrap:wrap;gap:8px}.a-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1.5px solid #d9d0be;border-radius:10px;background:#fff;font-weight:600;font-size:14px;white-space:nowrap;transition:transform .12s var(--ease),background .15s,border-color .15s}.a-btn:hover:not(:disabled){border-color:var(--ink);transform:translateY(-1px)}.a-btn:disabled{opacity:.5}.a-btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.a-btn.danger{background:#d4144f;border-color:#d4144f;color:#fff}.a-btn.danger-text{color:#c9134f}.a-btn.wide{width:100%;padding-block:11px}.a-icon{display:grid;place-items:center;width:34px;height:34px;flex:none;border:0;border-radius:9px;background:none;color:var(--muted);transition:background .15s,color .15s}.a-icon:hover{background:#efe8da;color:var(--ink)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px}.stat{display:grid;gap:2px;padding:15px 17px;border:0;border-radius:16px;background:var(--c);color:var(--on);text-align:left;transition:transform .15s var(--ease),box-shadow .15s}button.stat:hover{transform:translateY(-2px)}.stat.picked{box-shadow:0 0 0 3px var(--ink)}.stat strong{font:800 38px/1 var(--display)}.stat span{font-weight:600;font-size:14px}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:16px;align-items:start}.card{background:#fff;border-radius:16px;padding:18px;border:1px solid #ebe3d3}.card>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card>header h2{font-size:22px;letter-spacing:-.02em}.card>header a{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;text-decoration:none}.mini-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #f0e9db}.mini-list li>div{display:grid;min-width:0}.mini-list small{color:var(--muted)}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}.pills{display:flex;flex-wrap:wrap;gap:4px;padding:4px;background:#ebe4d6;border-radius:12px}.pills button{display:inline-flex;gap:6px;padding:6px 12px;border:0;border-radius:9px;background:none;font-weight:600;font-size:14px}.pills button span{color:var(--muted);font:400 12px var(--mono)}.pills button.on{background:#fff;box-shadow:0 1px 3px #14111f24}.a-search{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-left:auto;min-width:240px;background:#fff;border:1.5px solid #e2d9c7;border-radius:10px}.a-search.grow{flex:1;margin-left:0}.a-search:focus-within{border-color:var(--ink)}.a-search input{flex:1;min-width:0;border:0;outline:0;background:none;font-size:14px}.a-select{padding:8px 10px;background:#fff;border:1.5px solid #e2d9c7;border-radius:10px;font-size:14px}.table-wrap{overflow-x:auto;background:#fff;border:1px solid #ebe3d3;border-radius:16px}.a-table{width:100%;border-collapse:collapse}.a-table th{padding:11px 14px;text-align:left;font:500 12px var(--mono);color:var(--muted);border-bottom:1px solid #ebe3d3;white-space:nowrap}.a-table td{padding:11px 14px;border-bottom:1px solid #f3ecdf;vertical-align:middle}.a-table tbody tr:last-child td{border-bottom:0}.a-table td>small{display:block;color:var(--muted)}.a-table .note{font-style:italic}.a-table tr.clickable{cursor:pointer;transition:background .12s}.a-table tr.clickable:hover{background:#fdf9f0}.a-table tr.dim td{opacity:.5}.a-table tr.dim td:nth-last-child(-n+2){opacity:1}.mono{font:500 13px var(--mono);white-space:nowrap}.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:700;background:#eee}.b-pending,.b-in_repair{background:#ffe9b8;color:#6e4a00}.b-confirmed,.b-available{background:#c6f5e4;color:#00563b}.b-completed{background:#dfe3ff;color:#1a2a9e}.b-cancelled,.b-lost{background:#ffd8e4;color:#920c3a}.b-retired{background:#e8e4dc;color:#57524a}.status-select{padding:5px 8px;border:0;border-radius:99px;font-weight:700;font-size:13px}.switch{flex:none;position:relative;width:42px;height:24px;padding:0;border:0;border-radius:99px;background:#d7cfbf;transition:background .18s}.switch span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .18s var(--ease)}.switch.on{background:#00a873}.switch.on span{transform:translate(18px)}.overlay{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end;background:#14111f73;animation:fade .18s}.overlay.center{justify-content:center;align-items:center;padding:16px;z-index:60}@keyframes fade{0%{opacity:0}}.drawer{display:flex;flex-direction:column;width:min(480px,100%);height:100%;background:#fff;animation:slide .25s var(--ease)}@keyframes slide{0%{transform:translate(40px)}}.drawer>header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #ebe3d3}.drawer>header h2{font:800 22px var(--display);letter-spacing:-.01em}.drawer-body{flex:1;overflow-y:auto;padding:20px;display:grid;gap:14px;align-content:start}.d-form{display:grid;gap:14px}.d-sub{color:var(--muted);margin-top:-6px}.d-name{font-size:26px}.d-contact{display:grid;gap:3px}.d-contact a{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.facts{display:grid;gap:4px;margin:0;padding:12px;background:#faf6ec;border-radius:12px}.facts div{display:grid;grid-template-columns:90px 1fr;gap:8px}.facts dt{color:var(--muted)}.facts dd{margin:0;text-transform:none}.d-lines li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #f3ecdf}.d-total{font-weight:700;border-bottom:0!important}.a-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.a-grid.three{grid-template-columns:90px 1fr 1fr}.row-between{display:flex;justify-content:space-between;align-items:center;gap:14px;font-weight:600}.row-between small{display:block;font-weight:400;color:var(--muted)}.hint{font-size:13px;color:var(--muted)}.parts{display:grid;gap:8px;padding:12px;background:#faf6ec;border-radius:12px}.parts h4{font-size:17px}.part{display:grid;grid-template-columns:54px minmax(0,1fr) 100px 34px;gap:6px;align-items:center}.part input,.part select{min-width:0;padding:7px;border:1.5px solid #e2d9c7;border-radius:9px;background:#fff;font-size:13px}.confirm{width:min(400px,100%);padding:20px;background:#fff;border-radius:16px;display:grid;gap:16px}.confirm>div{display:flex;justify-content:flex-end;gap:8px}.legend{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 22px;align-items:center;padding:15px 18px;margin-bottom:16px;background:var(--ink);color:#e9e6f0;border-radius:16px}.legend-code{grid-row:span 2;font:500 25px var(--mono)}.legend-code span{padding:2px 6px;border-radius:6px;background:var(--c);color:var(--on)}.legend-chips{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:#bdb7cc}.legend-chips b{font-family:var(--mono);font-weight:500;color:#fff}.ok{color:#007a54;font-weight:700}.warn{color:#b85c00;font-weight:700}.chev{display:block;color:var(--muted);transition:transform .15s}.chev.open{transform:rotate(90deg)}.a-stepper{display:inline-flex;align-items:center;border:1.5px solid #e2d9c7;border-radius:10px;overflow:hidden;background:#fff}.a-stepper button{display:grid;place-items:center;width:32px;height:32px;border:0;background:none;transition:background .12s}.a-stepper button:hover:not(:disabled){background:var(--gel);color:var(--gel-on)}.a-stepper button:disabled{opacity:.3}.a-stepper span{min-width:34px;text-align:center;font-weight:700}.unit-row td{background:#fcf9f2;padding-block:7px}.unit-row small{display:inline!important;margin-left:8px}.copy{display:inline-flex;align-items:center;gap:6px;padding:2px 6px;border:0;border-radius:6px;background:none;font:inherit}.copy:hover{background:#efe8da}.hours{display:grid;gap:6px;max-width:620px}.hour-row{display:grid;grid-template-columns:110px 50px 1fr;gap:12px;align-items:center;padding:10px 15px;background:#fff;border:1px solid #ebe3d3;border-radius:14px}.hour-row.closed{background:#f3eee3}.hour-times{display:flex;align-items:center;gap:8px}.hour-times input{padding:6px 8px;border:1.5px solid #e2d9c7;border-radius:9px;background:#fff}.closed-label{color:var(--muted)}.inline-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;margin-bottom:12px}.stack-form{display:grid;gap:10px;margin-bottom:12px}.settings{display:grid;gap:16px;max-width:760px;justify-items:stretch}.settings>.a-btn{justify-self:start;padding:11px 20px}.a-empty{display:grid;justify-items:center;gap:6px;padding:34px 16px;color:var(--muted);text-align:center}.a-empty strong{color:var(--ink)}.a-loading{display:grid;gap:10px}.a-loading span{height:56px;border-radius:14px;background:#ebe4d6;animation:pulse 1s infinite alternate}.toasts{position:fixed;right:18px;bottom:18px;z-index:70;display:grid;gap:8px}.toast{display:flex;align-items:center;gap:8px;max-width:360px;padding:11px 15px;border-radius:12px;background:var(--ink);color:#fff;font-size:14px;font-weight:600;animation:rise .2s var(--ease)}.toast.bad{background:#c9134f}.login{display:grid;grid-template-columns:1.2fr 1fr;min-height:100svh}.login-card{align-self:center;justify-self:center;width:min(380px,100%);padding:24px;display:grid;gap:13px}.login-card h1{font-size:52px}.login-card>p{color:var(--muted)}.login-card>a{font-size:14px;text-align:center}.login-error{padding:9px 12px;border-radius:10px;background:#ffe2ec;color:#920c3a!important;font-size:14px}.login-message{min-height:100svh;display:grid;place-content:center;justify-items:center;gap:12px;padding:24px;text-align:center}.login-message h1{font-size:36px}.spinner{width:34px;height:34px;border:4px solid var(--paper-2);border-top-color:var(--gel);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:860px){.admin{grid-template-columns:minmax(0,1fr);padding-bottom:66px}.side{position:fixed;inset:auto 0 0;z-index:40;height:auto;padding:6px;flex-direction:row}.side-brand,.side-foot{display:none}.side nav{display:flex;width:100%;overflow-x:auto;gap:2px}.side nav a{flex:none;flex-direction:column;gap:2px;width:auto;padding:6px 10px;font-size:11px}.login{grid-template-columns:minmax(0,1fr)}.login-photo{display:none}.a-search{margin-left:0;width:100%}.legend,.inline-form{grid-template-columns:minmax(0,1fr)}}
