.qp-panel{position:relative}.qp-head{text-align:center;gap:10px;padding-bottom:32px;display:grid}.qp-head h2{color:var(--ink);font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.75rem,1.35rem + 1.8vw,2.75rem);font-weight:600;line-height:1.15}.qp-head p{max-width:52ch;color:var(--muted);font-size:var(--t-body);margin-inline:auto;line-height:1.5}.qp-grid{gap:20px;display:grid;position:relative}.qp-form{gap:16px;min-width:0;display:grid}.qp-step{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;min-width:0;padding:20px 16px 22px}.qp-legend{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:12px;margin:0 0 16px;padding:0;font-size:1.125rem;font-weight:600;display:flex}.qp-num{background:var(--sun-tint);width:28px;height:28px;color:var(--leaf-2);font-family:var(--font-body);border-radius:50%;flex:none;place-items:center;font-size:.8125rem;font-weight:800;display:grid}.qp-jobs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.qp-job{border:1.5px solid var(--line);border-radius:var(--r-md);min-height:172px;color:var(--ink);text-align:center;cursor:pointer;transition:border-color var(--fast) var(--ease), background-color var(--fast) var(--ease), transform var(--fast) var(--ease);background:#fff;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;padding:16px 10px 14px;display:flex;position:relative}.qp-job input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.qp-job:active{transform:scale(.97)}.qp-job:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.qp-job-art{place-items:center;width:84px;height:72px;margin-bottom:6px;display:grid}.qp-job-art svg{width:100%;height:100%}.qp-job-label{font-size:.9375rem;font-weight:700;line-height:1.25}.qp-job-rate{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:500;line-height:1.3}.qp-job-check{background:var(--sun);color:#fff;opacity:0;width:22px;height:22px;transition:opacity var(--fast) var(--ease), transform .4s var(--spring);border-radius:50%;place-items:center;display:grid;position:absolute;top:8px;right:8px;transform:scale(.5)}.qp-job-check svg{width:13px;height:13px}.qp-job:has(input:checked){border-color:var(--sun);background:var(--sun-tint)}.qp-job:has(input:checked) .qp-job-check{opacity:1;transform:none}@media (hover:hover) and (pointer:fine){.qp-job:hover{border-color:var(--line-strong)}}.qp-chips{flex-wrap:wrap;gap:8px;display:flex}.qp-chip{border:1.5px solid var(--line);border-radius:var(--r-sm);min-height:52px;color:var(--ink);text-align:left;transition:border-color var(--fast) var(--ease), background-color var(--fast) var(--ease), transform var(--fast) var(--ease);background:#fff;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 16px;display:flex}.qp-chip span{font-size:.9375rem;font-weight:700}.qp-chip small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:500}.qp-chip:active{transform:scale(.97)}.qp-chip[aria-pressed=true]{border-color:var(--sun);background:var(--sun-tint)}@media (hover:hover) and (pointer:fine){.qp-chip:hover{border-color:var(--line-strong)}.qp-chip[aria-pressed=true]:hover{border-color:var(--sun)}}.qp-custom{animation:rise .36s var(--ease);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.qp-field{flex-direction:column;gap:8px;min-width:0;display:flex}.qp-stepbox{border:1.5px solid var(--line);border-radius:var(--r-sm);min-height:56px;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);background:#fff;align-items:center;gap:2px;padding:0 6px;display:flex}.qp-stepbox:focus-within{border-color:var(--sun);box-shadow:0 0 0 3px #2563eb33}.qp-stepbox button{border-radius:var(--r-xs);background:var(--chalk);width:44px;height:44px;color:var(--ink);transition:transform var(--fast) var(--ease);border:0;flex:none;place-items:center;padding:0;display:grid}.qp-stepbox button:active{transform:scale(.9)}.qp-stepbox svg{width:20px;height:20px}.qp-stepbox input{font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;outline:none;flex:1;width:100%;min-width:0;height:52px;padding:0;font-size:1.125rem;font-weight:700}.qp-unit{color:var(--muted);font-size:var(--t-xs);flex:none;margin-right:2px;font-weight:700}.qp-units,.qp-seg{border:1.5px solid var(--line);border-radius:var(--r-pill);background:#fff;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:inline-grid}.qp-units{grid-column:1/-1;justify-self:start}.qp-units button,.qp-seg button{min-height:44px;color:var(--ink-2);font-size:var(--t-sm);white-space:nowrap;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease);background:0 0;border:0;border-radius:9px;padding:0 18px;font-weight:600}.qp-units button[aria-pressed=true],.qp-seg button[aria-pressed=true]{background:var(--sun);color:#fff}.qp-hint{color:var(--muted);font-size:var(--t-sm);grid-column:1/-1}.qp-hint.is-error{color:var(--error)}.qp-block{gap:10px;min-width:0;display:grid}.qp-step .qp-block+.qp-row2{margin-top:20px}.qp-row2{gap:20px;display:grid}.qp-result{border:1px solid var(--line);border-top:4px solid var(--sun);border-radius:var(--r-lg);color:var(--ink);background:#fff;flex-direction:column;gap:18px;padding:22px 18px 18px;display:flex;position:relative}.qp-result-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.qp-kicker{color:var(--muted);font-size:var(--t-sm);font-weight:600}.qp-material{background:var(--chalk);font-size:var(--t-xs);border-radius:8px;padding:4px 12px;font-weight:700}.qp-total{transition:opacity var(--mid) var(--ease);flex-direction:column;gap:6px;display:flex}.qp-total.is-pricing .qp-price{opacity:.6}.qp-price{color:var(--ink);font-family:var(--font-display);letter-spacing:-.03em;transition:opacity var(--fast) var(--ease), font-size var(--mid) var(--ease);font-size:clamp(2.5rem,1.6rem + 3.4vw,3.5rem);font-weight:700;line-height:1}.qp-total[data-size=long] .qp-price{font-size:clamp(2.125rem,1.4rem + 2.6vw,2.875rem)}.qp-total[data-size=xlong] .qp-price{font-size:clamp(1.75rem,1.2rem + 2.2vw,2.375rem)}.qp-sub{color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums;font-weight:500}.qp-scale{border-radius:var(--r-md);background-color:var(--chalk);background-image:linear-gradient(#0b1a2c0d 1px,#0000 1px),linear-gradient(90deg,#0b1a2c0d 1px,#0000 1px);background-size:20px 20px;justify-content:center;align-items:flex-end;gap:18px;height:172px;padding:16px 16px 14px;display:flex;overflow:hidden}.qp-scale.is-empty{opacity:.5}.qp-person{fill:#9db0c8;flex:none}.qp-rect{border:1.5px solid var(--sun);color:var(--leaf-2);transition:width .5s var(--spring), height .5s var(--spring);background:#2563eb29;border-radius:6px;flex:none;place-items:center;font-size:.75rem;font-weight:800;display:grid}.qp-breakdown{gap:8px;margin:0;display:grid}.qp-line{border-radius:var(--r-sm);background:var(--chalk);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px;padding:12px 14px 16px;display:grid;position:relative;overflow:hidden}.qp-line dt{font-size:var(--t-sm);flex-direction:column;font-weight:700;display:flex}.qp-line dt small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:500}.qp-line dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.0625rem;font-weight:700}.qp-line:after{content:"";background:var(--sun);height:3px;transform:scaleX(calc(var(--p,100%) / 100%));transform-origin:0;transition:transform .7s var(--spring);position:absolute;bottom:0;left:0;right:0}.qp-line.is-design:after{background:#7cb0ff}.qp-result .btn-block{margin-top:2px}.qp-note{color:var(--muted);font-size:var(--t-sm);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 6px;display:flex}.qp-note a{min-height:44px;color:var(--leaf-2);text-underline-offset:.25em;align-items:center;font-weight:700;display:inline-flex}.qp-error{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;gap:16px;padding:24px;display:grid;position:relative}.qp-error-actions{flex-wrap:wrap;gap:10px;display:flex}.qp-pill{right:12px;bottom:calc(var(--dock-h) + var(--safe-b) + 28px);z-index:calc(var(--z-bar) - 1);border-radius:var(--r-md);background:var(--leaf-deep);color:var(--chalk);box-shadow:var(--float);opacity:0;pointer-events:none;transition:opacity var(--mid) var(--ease), transform .5s var(--spring);justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 22px;display:flex;position:fixed;left:12px;transform:translateY(24px)scale(.96)}.qp-pill[data-show=true]{opacity:1;pointer-events:auto;transform:none}.qp-pill-text{flex-direction:column;line-height:1.15;display:flex}.qp-pill-text small{color:#9db4d1;font-size:.75rem;font-weight:600}.qp-pill-text b{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.375rem;font-weight:700}@media (width>=720px){.qp-head{padding-bottom:40px}.qp-step{padding:28px 28px 30px}.qp-jobs{grid-template-columns:repeat(4,minmax(0,1fr))}.qp-job{min-height:190px}.qp-row2{grid-template-columns:auto 1fr;align-items:start;gap:32px}.qp-result{padding:28px}}@media (width>=1024px){.qp-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;gap:24px}.qp-jobs{gap:12px}.qp-result{padding:28px;position:sticky;top:116px}.qp-pill{display:none}}@media (width>=1024px) and (width<=1199px){.qp-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}.qp-job{min-height:170px}}@media (width>=1200px){.qp-scale{height:188px}}@media (prefers-reduced-motion:reduce){.qp-pill{transition:none}}.home-quote.band{padding-block:clamp(40px,2rem + 3vw,72px)}@media (width<=719px){.qp-head{padding-bottom:24px}.qp-form{gap:12px}.qp-step{padding:18px 14px}.qp-legend{margin-bottom:14px}.qp-job{min-height:156px;padding:14px 6px 12px}.qp-job-art{width:72px;height:60px}.qp-step[aria-labelledby=qp-l2] .qp-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.qp-step[aria-labelledby=qp-l2] .qp-chip{min-height:64px;padding:10px 14px}.qp-step[aria-labelledby=qp-l2] .qp-chip:last-child{border-style:dashed}.qp-block .qp-chips{flex-flow:column;gap:8px}.qp-block .qp-chip{width:100%;min-height:60px;padding:10px 52px 10px 14px;position:relative}.qp-block .qp-chip:after{content:"";border:2px solid var(--line-strong);width:22px;height:22px;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);background:#fff;border-radius:50%;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.qp-block .qp-chip[aria-pressed=true]:after{border-color:var(--sun);box-shadow:inset 0 0 0 4px #fff, inset 0 0 0 12px var(--sun)}.qp-row2{gap:0}.qp-row2>.qp-block:first-child{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;grid-auto-flow:column;align-items:center;padding-bottom:16px}.qp-row2>.qp-block:first-child .qp-stepbox{width:176px}.qp-row2>.qp-block:last-child{padding-top:16px}.qp-seg{width:100%;display:grid}.qp-seg button{padding:0 8px}.qp-step .qp-block+.qp-row2{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.qp-custom{margin-top:14px}.qp-result{padding:20px 16px 16px}}.hero{position:relative;overflow-x:clip}.hero-inner{text-align:center;flex-direction:column;align-items:center;padding-block:12px 32px;display:flex;position:relative}.hero-title{z-index:3;font-family:var(--font-hero);flex-direction:column;align-items:center;font-size:clamp(2.75rem,.5rem + 10.4vw,8.5rem);font-weight:400;line-height:1;display:flex;position:relative}.hero-line{white-space:nowrap;display:block}.hero-line.is-accent{color:var(--orange-text)}.hero-lede{z-index:3;max-width:30ch;color:var(--text-2);margin-top:28px;font-size:1rem;line-height:1.55;position:relative}.hero .btn-tactile{width:min(300px,100%);min-height:60px;color:var(--ink);transition:transform var(--mid) var(--spring), background-color var(--fast) var(--ease);background:#fff;border-radius:18px;justify-content:center;align-items:center;padding:0 28px;font-size:1.0625rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn-tactile:after{content:"";background:var(--sun);clip-path:polygon(0 0,100% 0,100% 100%);width:38px;height:38px;position:absolute;top:0;right:0}.btn-tactile:active{transform:scale(.98)}@media (hover:hover) and (pointer:fine){.btn-tactile:hover{background:var(--chalk-3)}}.v-toggle{vertical-align:.12em;width:.62em;height:.36em;animation:rise .7s var(--spring) .9s both;background:linear-gradient(#2fbf6a,#14894a);border-radius:999px;margin-left:.14em;display:inline-block;position:relative;box-shadow:inset 0 .02em .03em #ffffff80,inset 0 -.03em .05em #0000002e,0 0 0 .045em #fff,0 .1em .16em -.08em #0e1b1447}.v-toggle span{width:.28em;height:.28em;animation:toggle-slide 1.2s var(--spring) 1.4s both;background:linear-gradient(#fff,#e5ebe6);border-radius:50%;margin-top:-.14em;position:absolute;top:50%;right:.04em;box-shadow:0 .03em .05em #0e1b144d}@keyframes toggle-slide{0%{transform:translate(-.22em)}}.hero-objects{z-index:2;width:100%;max-width:340px;height:212px;margin-top:16px;position:relative}.hero-fan{position:absolute;inset:0 12%}.vcard{aspect-ratio:3/4;color:#fff;transform-origin:50% 100%;width:38%;transform:translateY(var(--up)) rotate(var(--r));animation:eject 1s var(--spring) var(--delay) both;border-radius:16px;place-items:center;display:grid;position:absolute;bottom:0;overflow:hidden;box-shadow:inset 0 1.5px #ffffff80,inset 0 -8px 14px #0000001a,0 8px 14px -10px #0e1b144d}.vcard:before{content:"";pointer-events:none;background:linear-gradient(135deg,#fff6 0%,#fff0 45%);position:absolute;inset:0}.vcard svg{width:100%;height:100%;position:absolute;inset:0}.v1{--r:-16deg;--up:-6px;--delay:.5s;background:linear-gradient(160deg,#ffa25c,#ff5a0a);left:3%}.v2{--r:-5deg;--up:-16px;--delay:.6s;background:linear-gradient(160deg,#fff,#e4e8e2);left:21%}.v3{--r:5deg;--up:-20px;--delay:.7s;background:linear-gradient(160deg,#3a403b,#131614);left:40%}.v4{--r:16deg;--up:-8px;--delay:.8s;background:linear-gradient(160deg,#6db1ff,#2b66e6);left:58%}@keyframes eject{0%{opacity:0;transform:translateY(60px)rotate(0)}}.hero-tray-back,.hero-tray{box-sizing:border-box;pointer-events:none;border:7px solid #23272a;position:absolute;bottom:0;left:-7%;right:-7%}.hero-cards{z-index:2;clip-path:inset(-300px -80px 7px);position:absolute;inset:0}.hero-tray-back{z-index:1;background:linear-gradient(#f7f8f6 0%,#dde0dc 100%);border-radius:26px;height:100px;box-shadow:inset 0 8px 12px -8px #00000038,0 8px 14px -12px #0e1b144d}.hero-tray{z-index:6;background:0 0;border-top:0;border-radius:0 0 26px 26px;height:50px}.hero-cursor{z-index:7;filter:drop-shadow(0 3px 3px #0e1b1438);animation:rise .7s var(--spring) 1.2s both;display:none;position:absolute;top:30px;left:44%}.hero-cursor svg{fill:#fff;width:36px;height:36px;stroke:var(--ink);stroke-width:1.6px}.hero-tiles{pointer-events:none;position:absolute;inset:0}.tile{color:#fff;width:54px;height:54px;transform:rotate(var(--tilt,0deg));animation:pop-in .7s var(--spring) var(--delay,.9s) both, float 6s ease-in-out calc(var(--delay,.9s) + .7s) infinite;border-radius:17px;place-items:center;display:grid;position:absolute;box-shadow:inset 0 1.5px #ffffff73,inset 0 -5px 10px #00000029,0 8px 14px -10px #0e1b1452}.tile svg{width:78%;height:78%}.tile-dark{--tilt:8deg;--delay:.9s;z-index:1;background:linear-gradient(160deg,#3a403b,#111412);top:0;right:2%}.tile-glass{--tilt:8deg;--delay:1s;z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(160deg,#ffffffbf,#ffffff4d);display:none;top:38%;left:30%}.tile-blue{--tilt:-8deg;--delay:1.1s;z-index:3;background:linear-gradient(160deg,#6db1ff,#2b66e6);top:12px;left:2%}@keyframes float{50%{translate:0 -6px}}@keyframes pop-in{0%{opacity:0;transform:scale(.5)rotate(0)}to{opacity:1;transform:scale(1) rotate(var(--tilt,0deg))}}.fl{display:none}@media (width>=1024px){.hero-inner{padding-block:112px 128px}.hero-title{font-size:clamp(4rem,1.6rem + 4.8vw,6.75rem)}.hero-lede{margin-top:8px;font-size:1rem}.hero-objects{z-index:2;pointer-events:none;max-width:none;height:auto;margin:0;position:absolute;inset:0}.hero-fan{z-index:4;width:300px;height:230px;inset:auto auto 170px 8.5%}.hero-tiles{width:220px;height:220px;inset:auto 6% 140px auto}.tile{border-radius:24px;width:80px;height:80px}.hero-cursor{display:block}.tile-glass{display:grid}.tile-dark{--tilt:-8deg;top:20%;left:0;right:auto}.tile-blue{--tilt:-10deg;top:56%;left:6%}.fl{filter:drop-shadow(0 8px 10px #0e1b1429);transform:rotate(var(--tilt,0deg));animation:pop-in .7s var(--spring) var(--delay,.9s) both, float 7s ease-in-out calc(var(--delay,.9s) + .7s) infinite;display:block;position:absolute}.fl-swatch{--tilt:-8deg;--delay:.7s;z-index:1;width:150px;top:70px;left:22%}.fl-shirt{--tilt:10deg;--delay:.85s;z-index:1;width:118px;top:34%;right:20%}.fl-sticker{--tilt:-14deg;--delay:1s;z-index:1;width:88px;top:56%;right:27%}.fl svg{width:100%;height:auto;display:block}}.title-poster{font-family:var(--font-hero);text-wrap:balance;font-size:clamp(2.25rem,1.2rem + 4.2vw,4rem);font-weight:400;line-height:1.04}.title-poster .accent{color:var(--orange-text)}.on-dark .title-poster .accent{color:var(--sun)}.home-services,.home-featured,.home-visit{padding-bottom:var(--section)}.services-panel{--cell:#b4d2ff14;padding:0;position:relative;overflow:hidden}.home-services.band{padding-block:clamp(40px,2rem + 3vw,72px)}.services-head{gap:12px;padding:0 0 20px;display:grid;position:relative}.services-head p{max-width:34ch;color:var(--muted);font-size:var(--t-lg);line-height:1.4}.services{gap:12px;list-style:none;display:grid;position:relative}.service-item{min-width:0;display:flex}.service{border-radius:var(--r-lg);background:var(--cell);color:var(--text);transition:transform var(--mid) var(--ease), background-color var(--mid) var(--ease);flex:1;text-decoration:none;display:flex;position:relative;overflow:hidden}.service-copy{z-index:1;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex;position:relative}.service-label{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.625rem,1.3rem + 1.4vw,2.25rem);font-weight:400;line-height:1.1}.service-blurb{max-width:38ch;color:var(--text-2);font-size:var(--t-sm);line-height:1.5}.service-hint{color:var(--muted);font-size:var(--t-xs);font-variant-numeric:tabular-nums;font-weight:600}.service-skeleton{border-radius:8px;width:120px;height:16px}.service-go{z-index:2;border:1.5px solid var(--text);width:44px;height:44px;color:var(--text);transition:background-color var(--mid) var(--ease), color var(--mid) var(--ease), transform var(--mid) var(--spring);border-radius:50%;flex:none;place-items:center;display:grid}.service-go svg{width:20px;height:20px}.service:active{transform:scale(.985)}.service-photo,.service-thumb{background:#b4d2ff14;display:block;position:relative;overflow:hidden}.service-photo img,.service-thumb img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease);animation:18s ease-in-out infinite alternate photo-drift;display:block}@keyframes photo-drift{0%{scale:1}to{scale:1.07}}.can-reveal .service-item .service-photo img,.can-reveal .service-item .service-thumb img{transform:scale(1.22)}.can-reveal .service-item.is-in .service-photo img,.can-reveal .service-item.is-in .service-thumb img{transition:transform 1.5s var(--ease) .15s;transform:scale(1)}.service-item:nth-child(2) .service-photo img{animation-delay:-6s}.service-item:nth-child(3) .service-photo img{animation-delay:-12s}.service.is-feature{flex-direction:column;padding:28px 28px 0}.service.is-feature .service-go{position:absolute;top:24px;right:24px}.service.is-feature .service-copy{padding-right:56px}.service.is-feature .service-photo{aspect-ratio:4/3;border-radius:20px 20px 0 0;margin:24px -28px 0}.service.is-compact{align-items:center;gap:18px;padding:20px}.service-rail{flex-direction:column;flex:none;align-items:center;gap:8px;display:flex}.service-icon{background:var(--sun);color:#fff;width:44px;height:44px;transition:transform .5s var(--spring);border-radius:50%;place-items:center;display:grid}.service-icon svg{width:22px;height:22px}.service.is-compact .service-label{font-size:1.5rem}.service.is-compact .service-copy{flex:1}.service.is-compact .service-thumb{border-radius:16px;flex:none;width:88px;height:88px}@media (hover:hover) and (pointer:fine){.service:hover{background:#b4d2ff21;transform:translateY(-4px)}.service:hover .service-go{background:var(--text);color:var(--leaf-deep);transform:rotate(45deg)}.service:hover .service-photo img,.service:hover .service-thumb img{transform:scale(1.06)}.service.is-compact:hover .service-icon{transform:scale(1.1)rotate(-8deg)}}@media (width>=720px){.services-head{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:center;padding:0 0 28px}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-item.is-feature:first-child{grid-row:span 2}.service-item.is-feature:first-child .service.is-feature .service-photo{aspect-ratio:auto;flex:1;min-height:280px}.service.is-feature{padding:32px 32px 0}.service.is-feature .service-photo{aspect-ratio:16/7;margin:24px -32px 0}.service.is-compact{padding:24px 28px}}@media (width>=1024px){.service.is-compact .service-thumb{width:112px;height:112px}}.home-quick{padding-top:var(--section);gap:12px;display:grid}.quick{border-radius:var(--r-lg);background:var(--cell);min-height:96px;color:var(--text);transition:transform var(--fast) var(--ease), background-color var(--fast) var(--ease);align-items:center;gap:18px;padding:18px 22px;text-decoration:none;display:flex}.quick:active{transform:scale(.98)}.quick>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.quick b{font-size:1.125rem;font-weight:700}.quick small{color:var(--muted);font-size:var(--t-sm);line-height:1.35}.quick-icon{background:var(--sun);width:56px;height:56px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.quick-icon.is-wa{background:var(--whatsapp);color:#fff}.quick-icon svg{width:26px;height:26px}@media (hover:hover) and (pointer:fine){.quick:hover{background:var(--chalk-3)}}@media (width>=720px){.home-quick{gap:var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr))}}.band{padding-block:var(--section)}.band-light{background:var(--paper);color:var(--ink)}.hero.on-dark{margin-top:calc(-1 * var(--topbar-h));padding-bottom:48px;padding-top:var(--topbar-h)}.hero{padding-bottom:32px}.band-light+.home-featured{padding-top:var(--section)}.on-dark .accent,.on-dark .hero-line.is-accent,.on-dark .title-poster .accent{color:#60a5fa}.home-how .title-poster{max-width:12ch;margin-bottom:40px}.steps{gap:16px;list-style:none;display:grid}.step{border-radius:var(--r-lg);background:#f3f4ee12;flex-direction:column;gap:20px;padding:10px 10px 26px;display:flex;position:relative}.step-art{aspect-ratio:4/3;border-radius:var(--r-md);background:var(--sun-tint);place-items:center;display:grid;overflow:hidden}.step:nth-child(2) .step-art{background:var(--leaf-tint)}.step:nth-child(3) .step-art{background:#ffe7f0}.step-art svg{width:76%;height:auto;animation:6s ease-in-out infinite float}.step:nth-child(2) .step-art svg{animation-delay:-2s}.step:nth-child(3) .step-art svg{animation-delay:-4s}.step-num{background:var(--ink);width:44px;height:44px;color:var(--chalk);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.125rem;font-weight:800;display:grid;position:absolute;top:22px;left:22px}.step-text{flex-direction:column;gap:8px;padding-inline:12px;display:flex}.step-text strong{font-size:1.25rem;font-weight:700;line-height:1.25}.step-text span{max-width:44ch;color:var(--muted)}@media (width>=900px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.step:not(:last-child):after{content:"";transform-origin:0;border-top:3px dashed #f3f4ee73;width:32px;position:absolute;top:96px;right:-32px}.can-reveal .step:not(:last-child):after{transition:transform .7s var(--ease) .5s;transform:scaleX(0)}.can-reveal .step.is-in:not(:last-child):after{transform:scaleX(1)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--chalk:#eef3f9;--chalk-2:#e1e9f3;--chalk-3:#d0dcea;--paper:#fff;--ink:#07111f;--ink-2:#34425a;--leaf:#0b1a2c;--leaf-2:#1d4ed8;--leaf-deep:#0b1a2c;--leaf-tint:#dbe6f5;--sun:#2563eb;--sun-press:#1d4ed8;--sun-tint:#dbe6fd;--hibiscus:#d8342a;--hibiscus-tint:#ffd9d3;--dot-1:#1177bf;--dot-2:#2ea54a;--dot-3:#f38432;--dot-4:#c42a5c;--bg:var(--chalk);--bg-2:var(--chalk-2);--surface:var(--paper);--cell:var(--chalk-2);--text:var(--ink);--text-2:var(--ink-2);--muted:#56637a;--faint:#8e8e97;--line:#d3ddea;--line-strong:#9a9aa3;--link:var(--leaf-2);--primary:var(--sun);--primary-press:var(--sun-press);--on-primary:#fff;--accent:var(--leaf);--focus:var(--leaf-2);--success:#14703f;--success-bg:#d8f0e1;--error:#b42318;--error-bg:#ffe4e0;--warn:#7a4b00;--warn-bg:#fff0c2;--whatsapp:#128c4a;--placeholder:#dbe4f0;--scrim:#07101e99;--font-display:"Montserrat", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--display-weight:800;--font-hero:"Anton", "Arial Narrow", "Impact", sans-serif;--orange-text:#1d4ed8;--display-leading:1.08;--display-tracking:-.025em;--t-hero:clamp(2.125rem, 1.15rem + 4.4vw, 4.75rem);--t-title:clamp(1.75rem, 1.3rem + 2.2vw, 3.25rem);--t-heading:clamp(1.375rem, 1.2rem + .9vw, 1.75rem);--t-lg:1.1875rem;--t-body:1.0625rem;--t-sm:.9375rem;--t-xs:.8125rem;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:128px;--gutter:24px;--max:1280px;--grid-gap:16px;--section:clamp(72px, 3.5rem + 7vw, 168px);--topbar-h:96px;--dock-h:76px;--safe-b:env(safe-area-inset-bottom,0px);--r-xs:8px;--r-sm:10px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-pill:12px;--lift:0 1px 0 #0e1b1408, 0 8px 18px -10px #0e1b142e;--float:0 1px 2px #0a0a0b14, 0 10px 22px -12px #0a0a0b52;--ease:cubic-bezier(.23, 1, .32, 1);--ease-in:cubic-bezier(.55, .06, .68, .19);--spring:linear(0, .0029, .0115 1.8%, .0457 3.7%, .1721 7.5%, .3335 11.2%, .5164 15.2%, .6837 19.3%, .8186 23.7%, .9143 28.2%, .9752 33%, 1.0106 38.3%, 1.0271 44.2%, 1.0298 50.3%, 1.0235 57.7%, 1.0141 65.9%, 1.0065 74.4%, 1.0018 84%, 1);--fast:.16s;--mid:.28s;--slow:.56s;--z-header:30;--z-bar:40;--z-toast:60;--z-scrim:80;--z-sheet:90;--z-skip:100}@media (width>=640px){:root{--gutter:40px;--grid-gap:20px}}@media (width>=1024px){:root{--gutter:56px;--grid-gap:24px;--topbar-h:124px}}.on-light{--text:var(--ink);--text-2:var(--ink-2);--muted:#56637a;--line:#d3ddea;--line-strong:#9a9aa3;--link:#1d4ed8;--focus:#1d4ed8;--cell:var(--chalk-2);--surface:var(--paper);color:var(--text)}.on-dark{--bg:var(--leaf-deep);--text:var(--chalk);--text-2:#d6e2f2;--muted:#9db4d1;--line:#c8dcff29;--line-strong:#c8dcff52;--link:#60a5fa;--focus:#60a5fa;--cell:#b4d2ff12;--surface:#b4d2ff12;background:var(--leaf-deep);color:var(--text)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-h) + 24px);scrollbar-gutter:stable;background:var(--bg);text-underline-position:from-font;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;scroll-padding-bottom:168px}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-body);font-size:var(--t-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.55;overflow-x:clip}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0}img,svg,video{max-width:100%;display:block}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed}a{color:var(--link);text-underline-offset:.2em;touch-action:manipulation}p,li{text-wrap:pretty}::selection{background:var(--sun);color:var(--ink)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}#main:focus{outline:none}.display,.title,.heading{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);text-wrap:balance}.display{font-size:var(--t-hero);line-height:var(--display-leading)}.title{font-size:var(--t-title);line-height:1.1}.heading{font-size:var(--t-heading);line-height:1.2}.lede{max-width:40ch;color:var(--muted);font-size:var(--t-lg);line-height:1.45}.on-dark .lede{color:var(--muted)}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.container{width:100%;max-width:calc(var(--max) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section) 0}.skip-link{z-index:var(--z-skip);border-radius:var(--r-pill);background:var(--ink);color:var(--chalk);transition:transform var(--fast) var(--ease);padding:12px 20px;font-weight:700;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:none}::view-transition-old(root){animation-duration:.26s;animation-timing-function:var(--ease)}::view-transition-new(root){animation-duration:.26s;animation-timing-function:var(--ease)}::view-transition-old(root){animation-name:vt-out}::view-transition-new(root){animation-name:vt-in}@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(18px)}}::view-transition-group(dock-blob){animation-duration:.52s;animation-timing-function:var(--spring)}::view-transition-group(product-image){animation-duration:.52s;animation-timing-function:var(--spring)}::view-transition-old(dock-blob){mix-blend-mode:normal;animation:none}::view-transition-new(dock-blob){mix-blend-mode:normal;animation:none}::view-transition-group(dock){animation-duration:0s}.can-reveal [data-reveal]{opacity:0;transition:opacity .64s var(--ease) var(--d,0s), transform .76s var(--ease) var(--d,0s);transform:translateY(28px)}.can-reveal [data-reveal=pop]{transition:opacity .48s var(--ease) var(--d,0s), transform .8s var(--spring) var(--d,0s);transform:translateY(32px)scale(.96)}.can-reveal [data-reveal=fade]{transform:none}.can-reveal [data-reveal].is-in{opacity:1;transform:none}.words .w{animation:word-in .78s var(--ease) both;animation-delay:calc(var(--i) * 70ms + 60ms);display:inline-block}@keyframes word-in{0%{opacity:0;transform:translateY(.5em)}}.cropped{position:relative}.cropped:after{content:"";pointer-events:none;background:linear-gradient(var(--ink), var(--ink)) 0 16px / 12px 1.5px no-repeat, linear-gradient(var(--ink), var(--ink)) 16px 0 / 1.5px 12px no-repeat, linear-gradient(var(--ink), var(--ink)) right 0 top 16px / 12px 1.5px no-repeat, linear-gradient(var(--ink), var(--ink)) right 16px top 0 / 1.5px 12px no-repeat, linear-gradient(var(--ink), var(--ink)) left 0 bottom 16px / 12px 1.5px no-repeat, linear-gradient(var(--ink), var(--ink)) left 16px bottom 0 / 1.5px 12px no-repeat, linear-gradient(var(--ink), var(--ink)) right 0 bottom 16px / 12px 1.5px no-repeat, linear-gradient(var(--ink), var(--ink)) right 16px bottom 0 / 1.5px 12px no-repeat;animation:marks-in .9s var(--spring) .2s both;position:absolute;inset:-16px}.on-dark .cropped:after{background-image:linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk)), linear-gradient(var(--chalk), var(--chalk))}@keyframes marks-in{0%{opacity:0;inset:-44px}30%{opacity:1}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(22px)}}@keyframes fade-in{0%{opacity:0}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes wiggle{0%,to{transform:none}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes dot-bounce{0%,80%,to{opacity:.45;transform:scale(.55)}40%{opacity:1;transform:scale(1)}}@keyframes shimmer{to{background-position:-200% 0}}.burst{pointer-events:none;position:absolute;inset:0}.burst i{background:var(--sun);width:8px;height:8px;animation:burst .7s var(--ease) forwards;border-radius:50%;margin:-4px 0 0 -4px;position:absolute;top:50%;left:50%}.burst i:nth-child(4n+1){background:var(--leaf-2)}.burst i:nth-child(4n+2){background:var(--hibiscus)}.burst i:nth-child(4n+3){background:var(--paper);box-shadow:0 0 0 1.5px var(--ink)}@keyframes burst{0%{opacity:1;transform:translate(0)scale(.6)}to{opacity:0;transform:translate(var(--x), var(--y)) scale(1.1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.ticker-track{animation:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.btn{border-radius:var(--r-pill);background:var(--cell);min-height:56px;color:var(--text);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:transform var(--fast) var(--ease), background-color var(--fast) var(--ease), box-shadow var(--mid) var(--ease);border:0;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:1.0625rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;position:relative}.btn svg{flex:none;width:20px;height:20px}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-secondary{background:var(--cell)}.btn-dark{background:var(--ink);color:var(--chalk)}.btn-ghost{background:0 0;padding-inline:16px}.btn-outline-dark{color:var(--ink);background:#0e1b1414}.btn-light{background:var(--chalk);color:var(--ink)}.btn-outline-light{color:var(--chalk);background:#f3f4ee24}.btn-lg{min-height:64px;padding:0 34px;font-size:1.125rem}.btn-block{width:100%}.btn .wa,.wa{color:var(--whatsapp)}.on-dark .wa{color:#5ee29a}@media (hover:hover) and (pointer:fine){.btn-primary:hover:not(:disabled){background:var(--primary-press)}.btn-secondary:hover:not(:disabled){background:var(--chalk-3)}.btn-ghost:hover:not(:disabled){background:var(--cell)}.btn-dark:hover:not(:disabled){background:var(--leaf)}.btn-outline-light:hover:not(:disabled){background:#f3f4ee1f}.btn-outline-dark:hover:not(:disabled){background:#0e1b1414}}.btn .loader{height:12px}.icon-btn{width:48px;height:48px;color:var(--text);transition:background-color var(--fast) var(--ease), transform var(--fast) var(--ease);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;text-decoration:none;display:grid}.icon-btn:active{transform:scale(.92)}.icon-btn svg{width:24px;height:24px}.icon-btn.is-framed{background:var(--cell)}@media (hover:hover) and (pointer:fine){.icon-btn:hover{background:var(--chalk-3)}}.text-link{min-height:44px;color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--sun);text-decoration-color:var(--sun);text-underline-offset:.28em;transition:text-decoration-thickness var(--fast) var(--ease);align-items:center;font-weight:700;text-decoration-thickness:3px;display:inline-flex}.text-link:hover{text-decoration-thickness:.4em}.chip-row{margin-inline:calc(var(--gutter) * -1);padding:4px var(--gutter);scroll-snap-type:x proximity;scrollbar-width:none;gap:8px;list-style:none;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{border-radius:var(--r-pill);background:var(--cell);min-height:48px;color:var(--text);font-size:var(--t-sm);white-space:nowrap;scroll-snap-align:start;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease), transform var(--fast) var(--ease);border:0;flex:none;align-items:center;gap:8px;padding:0 20px;font-weight:700;text-decoration:none;display:inline-flex}.chip:active{transform:scale(.96)}.chip[aria-pressed=true],.chip.is-active{background:var(--ink);color:var(--chalk)}.chip-count{border-radius:var(--r-pill);background:var(--sun);min-width:24px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;padding:2px 7px;font-size:.75rem}@media (hover:hover) and (pointer:fine){.chip:hover:not([aria-pressed=true]):not(.is-active){background:var(--chalk-3)}}.field{flex-direction:column;gap:8px;display:flex}.field-label{color:var(--text);font-size:var(--t-sm);font-weight:700}.field-optional{color:var(--muted);font-weight:500}.field-hint{color:var(--muted);font-size:var(--t-sm);line-height:1.45}.field-error{color:var(--error);font-size:var(--t-sm);align-items:flex-start;gap:6px;font-weight:600;line-height:1.4;display:flex}.field-error svg{flex:none;width:18px;height:18px;margin-top:1px}.input,.select,.textarea{border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--paper);width:100%;min-height:58px;color:var(--ink);transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);padding:0 18px;font-size:1rem}.textarea{resize:vertical;min-height:128px;padding:16px 18px;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%230e1b14' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 18px center;background-repeat:no-repeat;padding-right:48px}.input::placeholder,.textarea::placeholder{color:var(--faint)}.input:focus,.select:focus,.textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 4px #ff6b1a73}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--error);background:var(--error-bg)}.form-grid{gap:20px;display:grid}@media (width>=640px){.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.form-alert{border-radius:var(--r-md);background:var(--error-bg);color:var(--error);font-size:var(--t-sm);align-items:flex-start;gap:12px;padding:16px 18px;font-weight:600;line-height:1.45;display:flex}.form-alert.is-warn{background:var(--warn-bg);color:var(--warn)}.form-alert svg{flex:none;width:22px;height:22px}.choice{border-radius:var(--r-md);background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--line);cursor:pointer;transition:background-color var(--fast) var(--ease), border-color var(--fast) var(--ease), transform var(--fast) var(--ease);border:2px solid #0000;align-items:center;gap:16px;padding:18px 20px;display:flex;position:relative}.choice:active{transform:scale(.985)}.choice:has(input:checked){border-color:var(--ink);background:var(--sun-tint);box-shadow:none}.choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.choice input{width:24px;height:24px;accent-color:var(--ink);flex:none;margin:0}.choice input:focus-visible{outline:none}.choice-body{flex-direction:column;gap:4px;min-width:0;display:flex}.choice-title{font-weight:700}.choice-note{color:var(--muted);font-size:var(--t-sm);line-height:1.45}.choice:has(input:checked) .choice-note{color:var(--text-2)}.choice-icon{border-radius:var(--r-sm);background:var(--chalk-2);width:48px;height:48px;color:var(--ink);flex:none;place-items:center;margin-left:auto;display:grid}.choice-icon svg{width:24px;height:24px}.choice-grid{gap:12px;display:grid}@media (width>=640px){.choice-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.switch{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex}.switch input{appearance:none;border-radius:var(--r-pill);background:var(--chalk-3);cursor:pointer;width:60px;height:36px;transition:background-color var(--fast) var(--ease);flex:none;margin:0;position:relative}.switch input:after{content:"";background:var(--paper);width:28px;height:28px;transition:transform var(--mid) var(--spring);border-radius:50%;position:absolute;top:4px;left:4px;box-shadow:0 2px 6px #0e1b144d}.switch input:checked{background:var(--leaf)}.switch input:checked:after{transform:translate(24px)}.card,.panel{border-radius:var(--r-lg);background:var(--paper);padding:24px}.skeleton{border-radius:var(--r-sm);background:linear-gradient(100deg, var(--chalk-2) 30%, var(--chalk-3) 50%, var(--chalk-2) 70%) 0 0 / 200% 100%;animation:1.4s linear infinite shimmer}.photo{object-fit:cover;width:100%;height:100%}.photo-missing{background:repeating-linear-gradient(135deg, transparent 0 10px, #0e1b140d 10px 11px), var(--placeholder);width:100%;height:100%;color:var(--faint);place-items:center;display:grid;position:relative}.photo-missing svg{width:40px;height:40px}.photo-missing-note{color:var(--muted);text-align:center;font-size:.75rem;font-weight:600;line-height:1.25;position:absolute;bottom:8px;left:8px;right:8px}.price{font-family:var(--font-body);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;font-weight:800}.price-unit{color:var(--muted);font-size:var(--t-xs);font-weight:500}.price-big{font-size:clamp(1.75rem,1.3rem + 2vw,2.5rem);line-height:1}.stepper{border-radius:var(--r-pill);background:var(--cell);align-items:center;gap:4px;padding:4px;display:inline-flex}.stepper button{background:var(--paper);width:48px;height:48px;color:var(--ink);transition:transform var(--fast) var(--ease), opacity var(--fast) var(--ease);border:0;border-radius:50%;place-items:center;padding:0;display:grid}.stepper button:disabled{opacity:.35}.stepper button:active:not(:disabled){transform:scale(.88)}.stepper svg{width:20px;height:20px}.stepper-value{width:56px;height:48px;font-family:var(--font-body);font-variant-numeric:tabular-nums;text-align:center;appearance:textfield;background:0 0;border:0;padding:0;font-size:1.25rem;font-weight:800}.stepper-value:focus{background:var(--paper);border-radius:var(--r-sm);outline:none}.stepper-value::-webkit-inner-spin-button{appearance:none;margin:0}.stepper-value::-webkit-outer-spin-button{appearance:none;margin:0}.stepper-sm button{width:44px;height:44px}.stepper-sm .stepper-value{width:48px;height:44px;font-size:1.125rem}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=720px){.product-grid{gap:var(--grid-gap);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1100px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.product-cell{min-width:0;display:flex}.product-card{border-radius:var(--r-lg);background:var(--cell);transition:transform var(--mid) var(--ease), background-color var(--mid) var(--ease);flex-direction:column;flex:1;padding:8px 8px 14px;display:flex;position:relative}.product-card-media{aspect-ratio:1;position:relative}.product-card-photo{border-radius:var(--r-md);background:var(--paper);position:absolute;inset:0;overflow:hidden}.product-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease)}.product-card-flag{border-radius:var(--r-pill);background:var(--ink);color:var(--chalk);padding:6px 12px;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:10px}.product-card.is-sold-out .product-card-flag{background:var(--hibiscus);color:#fff}.product-card-body{flex-direction:column;flex:1;gap:12px;padding:14px 8px 0;display:flex}.product-card-name{min-height:2.5em;color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.0625rem;font-weight:650;line-height:1.25;text-decoration:none;display:-webkit-box;overflow:hidden}.product-card-name:after{content:"";border-radius:var(--r-lg);position:absolute;inset:0}.product-card-price{flex-direction:column;gap:2px;min-width:0;margin-top:auto;display:flex}.product-card-price .price{font-size:1.3125rem;line-height:1}.product-card-add{z-index:2;border-radius:var(--r-pill);background:var(--sun);min-width:52px;height:52px;color:var(--ink);transition:transform var(--mid) var(--spring), background-color var(--fast) var(--ease);border:0;flex:none;justify-content:center;align-items:center;gap:4px;padding:0;font-size:1rem;font-weight:800;text-decoration:none;display:inline-flex;position:absolute;bottom:10px;right:10px}.product-card-add svg{width:22px;height:22px}.product-card-add:active{transform:scale(.88)}.product-card-add.is-in{background:var(--leaf);color:var(--chalk);box-shadow:none;animation:pop .42s var(--ease);padding-inline:16px}.product-card-skeleton{pointer-events:none}.skeleton-media{aspect-ratio:1;border-radius:var(--r-md)}.skeleton-line{height:16px}@media (hover:hover) and (pointer:fine){.product-card:hover{background:var(--chalk-3);transform:translateY(-4px)}.product-card:hover .product-card-photo img{transform:scale(1.05)}}.status-panel{border-radius:var(--r-lg);background:var(--cell);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:56px 24px;display:flex}.status-panel-icon{background:var(--sun);width:72px;height:72px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.status-panel-icon.is-error{background:var(--hibiscus-tint);color:var(--error)}.status-panel-icon svg{width:32px;height:32px}.status-panel-title{font-family:var(--font-display);font-size:var(--t-heading);font-weight:var(--display-weight);text-wrap:balance;line-height:1.05}.status-panel-note{max-width:38ch;color:var(--muted)}.status-panel-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.loader{align-items:center;gap:7px;display:inline-flex}.loader span{width:12px;height:12px;animation:dot-bounce 1.1s var(--ease) infinite;border-radius:50%}.loader span:first-child{background:var(--dot-1)}.loader span:nth-child(2){background:var(--dot-2);animation-delay:.12s}.loader span:nth-child(3){background:var(--dot-3);animation-delay:.24s}.loader span:nth-child(4){background:var(--dot-4);animation-delay:.36s}.btn .loader span{background:currentColor;width:8px;height:8px}.page-loader{place-items:center;min-height:60dvh;display:grid}.progress{grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;display:grid}.progress-step{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex;position:relative}.progress-step+.progress-step:before{content:"";background:repeating-linear-gradient(90deg, var(--line-strong) 0 6px, transparent 6px 12px);border-radius:4px;height:4px;position:absolute;top:21px;left:-50%;right:50%}.progress-step.is-done+.progress-step:before,.progress-step.is-done+.progress-step.is-current:before{background:var(--seg,var(--dot-1))}.progress-dot{z-index:1;background:var(--bg);width:46px;height:46px;box-shadow:inset 0 0 0 3px var(--line-strong);color:#fff;border-radius:50%;place-items:center;display:grid;position:relative}.progress-dot svg{width:22px;height:22px}.progress-step.is-done .progress-dot,.progress-step.is-current .progress-dot{background:var(--dot);box-shadow:none;animation:pop .56s var(--spring) both;animation-delay:calc(var(--i,0) * .11s)}.progress-step.is-current .progress-dot:after{content:"";border:3px solid var(--dot);opacity:.35;animation:dot-bounce 1.6s var(--ease) infinite;border-radius:50%;position:absolute;inset:-7px}.progress-label{color:var(--muted);font-size:var(--t-xs);font-weight:700}.progress-step.is-done .progress-label,.progress-step.is-current .progress-label{color:var(--text)}.progress-halted{border-radius:var(--r-md);background:var(--warn-bg);color:var(--warn);align-items:center;gap:12px;padding:16px 18px;font-weight:600;display:flex}.progress-halted svg{flex:none;width:24px;height:24px}.action-bar{bottom:calc(12px + var(--safe-b));z-index:var(--z-bar);background:var(--leaf-deep);color:var(--chalk);box-shadow:var(--float);animation:rise .52s var(--ease) both;--focus:var(--sun);border-radius:32px;margin:24px 12px 12px;padding:10px 10px 10px 24px;position:sticky}.action-bar-inner{max-width:var(--max);justify-content:space-between;align-items:center;gap:14px;margin-inline:auto;display:flex}@media (width>=800px){.action-bar--narrow{width:min(760px,100% - 24px);margin-inline:auto}}.action-bar-figure{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.action-bar .price-big{color:var(--chalk);font-size:clamp(1.375rem,.6rem + 3.4vw,2rem)}.action-bar-note{color:#a9c4b3;font-size:var(--t-xs);font-variant-numeric:tabular-nums;font-weight:500;line-height:1.3}.action-bar .btn{flex:none}.action-bar .btn-lg{min-height:60px;padding-inline:clamp(18px,5vw,32px)}.action-bar .btn:disabled,.action-bar .btn[aria-disabled=true]{color:#a9c4b3;box-shadow:none;opacity:1;background:#f3f4ee24}.action-bar .btn-secondary{color:var(--chalk);background:#f3f4ee24}@media (width<=379px){.action-bar .btn-lg svg{display:none}}@media (width>=1024px){.app--bar-phone .action-bar--phone{display:none}}.scrim{z-index:var(--z-scrim);background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in var(--mid) var(--ease);border:0;position:fixed;inset:0}.sheet{z-index:var(--z-sheet);border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--paper);max-height:90dvh;color:var(--ink);box-shadow:var(--float);animation:sheet-up .52s var(--spring);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.sheet-grab{cursor:grab;touch-action:none;flex:none;place-items:center;height:28px;display:grid}.sheet-grab:before{content:"";background:var(--line-strong);border-radius:5px;width:48px;height:5px}.sheet-head{justify-content:space-between;align-items:center;gap:12px;padding:0 14px 8px 24px;display:flex}.sheet-title{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);line-height:1.1}.sheet-body{overscroll-behavior:contain;flex:1;padding:12px 24px 28px;overflow-y:auto}.sheet-foot{padding:14px 24px calc(14px + var(--safe-b));border-top:1px solid var(--line)}.sheet-full{background:var(--bg);max-height:none;animation:fade-in var(--mid) var(--ease);border-radius:0;top:0}.sheet-full .sheet-grab{display:none}@media (width>=640px){.sheet:not(.sheet-full){border-radius:var(--r-xl);width:min(560px,100vw - 48px);max-height:min(780px,86dvh);animation:pop-sheet .42s var(--spring);inset:50% auto auto 50%;transform:translate(-50%,-50%)}.sheet:not(.sheet-full) .sheet-grab{cursor:default;height:16px}.sheet:not(.sheet-full) .sheet-grab:before{display:none}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes pop-sheet{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}}.toast-region{right:12px;bottom:calc(var(--dock-h) + var(--safe-b) + 32px);z-index:var(--z-toast);pointer-events:none;justify-content:center;display:flex;position:fixed;left:12px}.app--bar .toast-region{bottom:calc(112px + var(--safe-b))}.app--bare .toast-region{bottom:calc(20px + var(--safe-b))}@media (width>=1024px){.toast-region,.app--bar .toast-region{bottom:28px}}.toast{border-radius:var(--r-pill);background:var(--ink);width:min(100%,480px);min-height:64px;color:var(--chalk);box-shadow:var(--float);pointer-events:auto;animation:toast-in .52s var(--spring);align-items:center;gap:12px;padding:8px 8px 8px 20px;display:flex}.toast svg{width:24px;height:24px;color:var(--sun);flex:none}.toast-text{font-size:var(--t-sm);flex:1;font-weight:600;line-height:1.3}.toast-action{border-radius:var(--r-pill);background:var(--sun);min-height:48px;color:var(--ink);font-size:var(--t-sm);white-space:nowrap;border:0;align-items:center;padding:0 20px;font-weight:800;text-decoration:none;display:inline-flex}@keyframes toast-in{0%{opacity:0;transform:translateY(24px)scale(.92)}}.page-intro{flex-direction:column;gap:16px;padding-block:32px 24px;display:flex}.page-intro p{max-width:48ch;color:var(--muted);font-size:var(--t-lg);line-height:1.45}@media (width>=1024px){.page-intro{padding-block:72px 40px}}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:32px;display:flex}@media (width>=1024px){.section-head{margin-bottom:48px}}.facts{font-size:var(--t-sm);flex-direction:column;gap:16px;line-height:1.5;list-style:none;display:flex}.facts li{align-items:flex-start;gap:14px;display:flex}.facts svg{width:24px;height:24px;color:var(--leaf-2);flex:none}.stock-note{font-size:var(--t-sm);align-items:center;gap:6px;font-weight:700;display:inline-flex}.stock-note svg{width:16px;height:16px}.stock-note.is-in{color:var(--success)}.stock-note.is-low{color:var(--warn)}.stock-note.is-out{color:var(--error)}.confirm-mark{background:var(--sun);width:72px;height:72px;color:var(--ink);animation:pop .7s var(--spring) both;border-radius:50%;place-items:center;display:grid}.confirm-mark svg{width:34px;height:34px}.badge-pill{border-radius:var(--r-pill);background:var(--cell);min-height:36px;color:var(--text);font-size:var(--t-xs);align-self:flex-start;align-items:center;gap:8px;padding:0 16px 0 12px;font-weight:700;display:inline-flex}.cmyk{gap:3px;display:inline-flex}.cmyk i{border-radius:50%;width:9px;height:9px}.cmyk i:first-child{background:var(--dot-1)}.cmyk i:nth-child(2){background:var(--dot-2)}.cmyk i:nth-child(3){background:var(--dot-3)}.cmyk i:nth-child(4){background:var(--dot-4)}.app{flex-direction:column;min-height:100dvh;display:flex}.app-main{flex:1}.brand{min-height:48px;transition:transform var(--fast) var(--ease);flex:none;align-items:center;display:inline-flex}.brand:active{transform:scale(.95)}.brand img{width:auto;height:40px}.topbar{z-index:var(--z-header);-webkit-backdrop-filter:blur(18px)saturate(1.6);backdrop-filter:blur(18px)saturate(1.6);background:#ffffffe6;border-radius:22px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;height:64px;margin:12px 12px 8px;padding:0 8px 0 20px;display:grid;position:sticky;top:12px;box-shadow:0 10px 30px -16px #0e1b1447,inset 0 0 0 1px #ffffff8c}.topbar.is-inner{grid-template-columns:48px minmax(0,1fr) auto;padding-left:8px}.topbar .brand img{height:36px}.topbar-title{font-family:var(--font-display);font-size:1.125rem;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.topbar-actions{align-items:center;gap:2px;display:flex}@media (width>=1024px){.topbar{display:none}}.dock{bottom:calc(12px + var(--safe-b));z-index:var(--z-bar);height:var(--dock-h);background:var(--leaf-deep);box-shadow:var(--float);view-transition-name:dock;border-radius:32px;grid-template-columns:repeat(5,minmax(0,1fr));margin:24px 12px 12px;padding:6px;display:grid;position:sticky}.dock-blob{background:var(--sun);width:calc(20% - 2.4px);transform:translateX(calc(var(--i,0) * 100%));view-transition-name:dock-blob;border-radius:26px;position:absolute;top:6px;bottom:6px;left:6px}.dock a{z-index:1;color:#a9c4b3;transition:color var(--mid) var(--ease);--focus:var(--sun);border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.75rem;font-weight:700;text-decoration:none;display:flex;position:relative}.dock a[aria-current=page]{color:#fff}.dock a:active svg{transform:scale(.86)}.dock svg{width:24px;height:24px;transition:transform var(--mid) var(--spring)}.dock a[aria-current=page] svg{animation:pop .52s var(--ease)}.dock-icon{display:block;position:relative}.count-badge{border-radius:var(--r-pill);background:var(--hibiscus);color:#fff;font-variant-numeric:tabular-nums;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.75rem;font-weight:800;line-height:1;display:grid}.dock .count-badge{box-shadow:0 0 0 3px var(--leaf-deep);position:absolute;top:-8px;right:-16px}.dock a[aria-current=page] .count-badge{box-shadow:0 0 0 3px var(--sun)}.count-badge.is-bumped{animation:pop .52s var(--ease)}@media (width>=1024px){.dock{display:none}}.site-header{display:none}@media (width>=1024px){.site-header{z-index:var(--z-header);margin:16px clamp(16px,3.7vw,56px) 12px;display:block;position:sticky;top:16px}.site-header-bar{-webkit-backdrop-filter:blur(18px)saturate(1.6);backdrop-filter:blur(18px)saturate(1.6);background:#ffffffe6;border-radius:24px;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;height:80px;padding:0 16px 0 32px;display:grid;box-shadow:0 10px 30px -16px #0e1b1447,inset 0 0 0 1px #ffffff8c}.site-header .brand{justify-self:start}.site-header .brand img{height:46px}.site-nav{gap:4px;display:flex}.site-nav a{min-height:48px;color:var(--text-2);transition:color var(--fast) var(--ease);align-items:center;padding:0 18px;font-size:1rem;font-weight:500;text-decoration:none;display:flex}.site-nav a:hover{color:var(--text)}.site-nav a.active{color:var(--text);box-shadow:inset 0 -3px 0 var(--primary);font-weight:700}.site-header-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.site-header-actions .btn{background:var(--ink);color:#fff;gap:8px;min-height:48px;margin-left:8px;padding-inline:18px;font-size:.9375rem}.site-header-actions .btn:hover{background:var(--primary)}.site-header-actions .count-badge{color:var(--ink);background:#fff;margin-right:-6px}}@media (width>=1024px) and (width<=1199px){.site-header-bar{gap:12px;padding-left:24px}.site-nav a{padding:0 11px}}.search{position:relative}.search-field{border-radius:var(--r-pill);background:var(--cell);min-height:56px;color:var(--muted);transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);align-items:center;gap:10px;padding:0 6px 0 20px;display:flex}.search-field:focus-within{background:var(--paper);box-shadow:inset 0 0 0 2px var(--ink), 0 0 0 4px #ff6b1a73}.search-field svg{flex:none;width:22px;height:22px}.search-field input{min-width:0;height:54px;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:1.0625rem}.search-field input::-webkit-search-cancel-button{display:none}.search-field input::placeholder{color:var(--faint)}.search-results{flex-direction:column;gap:2px;list-style:none;display:flex}.search-popover{z-index:var(--z-header);border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--lift);animation:toast-in .36s var(--spring);padding:8px;position:absolute;top:calc(100% + 12px);left:0;right:0}.search-hit{border-radius:var(--r-md);min-height:68px;color:var(--text);transition:background-color var(--fast) var(--ease);align-items:center;gap:14px;padding:8px 12px 8px 8px;text-decoration:none;display:flex}.search-hit:hover{background:var(--cell)}.search-hit img{border-radius:var(--r-sm);object-fit:cover;background:var(--placeholder);flex:none;width:52px;height:52px}.search-hit-text{flex-direction:column;flex:1;min-width:0;display:flex}.search-hit-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.search-hit-meta{color:var(--muted);font-size:var(--t-xs)}.search-all{border-radius:var(--r-md);width:100%;min-height:60px;color:var(--text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 16px;font-weight:700;display:flex}.search-all:hover{background:var(--cell)}.search-sheet-head{align-items:center;gap:6px;padding:12px 16px 12px 8px;display:flex}.search-sheet-head .search{flex:1}.search-sheet-body{flex:1;padding:8px 20px 40px;overflow-y:auto}.search-suggest-title{color:var(--muted);font-size:var(--t-sm);padding:24px 0 12px;font-weight:700}.search-quick{flex-wrap:wrap;gap:10px;display:flex}@media (width>=1024px){.sheet.sheet-full{border-radius:var(--r-xl);background:var(--paper);width:min(720px,100vw - 48px);max-height:min(640px,100dvh - 144px);box-shadow:var(--float);animation:search-in .42s var(--spring);inset:104px auto auto 50%;transform:translate(-50%)}}@keyframes search-in{0%{opacity:0;transform:translate(-50%)translateY(-14px)scale(.98)}}.site-footer{margin-top:0;padding-block:72px 40px}.site-footer-tagline{border-bottom:1px solid #f3f4ee29;padding-bottom:56px}.site-footer-tagline p{max-width:14ch;font-family:var(--font-display);font-size:clamp(2.25rem,1rem + 5.4vw,4.75rem);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);line-height:1.05}.site-footer-grid{gap:48px;padding-block:56px;display:grid}.site-footer-brand img{width:auto;height:64px;margin-bottom:20px}.site-footer-brand p{max-width:34ch;color:var(--muted)}.site-footer-links{gap:40px;display:grid}.site-footer h2{color:var(--muted);font-family:var(--font-body);font-size:var(--t-sm);margin-bottom:16px;font-weight:700}.site-footer nav,.site-footer-contact{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.site-footer a{min-width:44px;min-height:44px;color:var(--chalk);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.site-footer a:hover{color:var(--sun)}.site-footer-contact p{color:var(--text-2);margin-bottom:8px}.site-footer-legal{color:var(--muted);font-size:var(--t-xs);border-top:1px solid #f3f4ee29;padding-top:32px}@media (width>=640px){.site-footer-links{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.site-footer-grid{grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:96px}}.visit{border-radius:var(--r-xl);background:var(--sun);color:#fff;display:grid;overflow:hidden}.visit-media{aspect-ratio:16/10;background:#eef1ea;display:block;overflow:hidden}.visit-media svg{width:100%;height:100%}.map-pin{transform-box:fill-box;transform-origin:50% 100%;animation:pin-bounce 2.4s var(--ease) infinite}.map-pulse{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite pin-pulse}@keyframes pin-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@keyframes pin-pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}.visit-body{flex-direction:column;gap:24px;padding:32px 24px 28px;display:flex}.visit-address{font-size:var(--t-lg);font-weight:600;line-height:1.35}.visit-hours{border-top:2px solid var(--ink);flex-direction:column;gap:0;display:flex}.visit-hours div{font-size:var(--t-sm);border-bottom:1px solid #0e1b1440;justify-content:space-between;gap:16px;padding:12px 0;display:flex}.visit-hours dt{font-weight:700}.visit-hours dd{font-variant-numeric:tabular-nums}.visit-actions{flex-direction:column;gap:10px;display:flex}.visit .btn-secondary{--text:var(--ink)}@media (width>=720px){.visit-actions{flex-flow:wrap}}@media (width>=900px){.visit{grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}.visit-media{aspect-ratio:auto;min-height:460px}.visit-body{padding:56px 48px}}.demo-note{padding:10px var(--gutter);background:var(--ink);color:var(--chalk);font-size:var(--t-xs);text-align:center;font-weight:600;line-height:1.35}.route-progress{z-index:200;background:var(--sun);transform-origin:0;width:100%;height:4px;animation:route-progress 1.6s var(--ease) forwards;position:fixed;top:0;left:0}@keyframes route-progress{0%{transform:scaleX(.05)}to{transform:scaleX(.85)}}.visit .title-poster .accent{color:inherit}
