*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4}body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,pre{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}ul[class],ol[class]{margin:0;padding:0;list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;color:inherit;margin:0}button,[type=button],[type=submit]{cursor:pointer;background:0 0}table{border-collapse:collapse}[hidden]{display:none!important}@media (max-width:720px){input,select,textarea{font-size:16px}}:root{--brand:#1d4ed8;--brand-strong:#1739a8;--brand-wash:#1d4ed812;--brand-line:#1d4ed847;--teal:#0e7490;--teal-strong:#0b5a70;--plum:#6d28d9;--plum-strong:#58179e;--marker:#d8ff3d;--marker-soft:#d8ff3d8c;--amber:#d97706;--amber-strong:#b45309;--void:#fff;--bg:#f7f8fb;--surface-1:#fff;--surface-2:#eef1f6;--surface-3:#e3e8f0;--paper:var(--void);--paper-pure:var(--surface-1);--bone:var(--bg);--bone-dark:var(--surface-2);--ink:#0b0f19;--ink-90:#0b0f19e6;--ink-72:#0b0f19c7;--ink-56:#0b0f19ad;--ink-40:#0b0f1999;--ink-24:#0b0f1942;--ink-12:#0b0f1921;--ink-08:#0b0f1917;--ink-06:#0b0f1912;--ink-03:#0b0f190a;--slate:#454c5a;--mist:#667085;--lime:var(--brand);--lime-dim:var(--brand-strong);--cyan:var(--teal);--cyan-dim:var(--teal-strong);--violet:var(--plum);--violet-dim:var(--plum-strong);--pink:#dc2626;--indigo:var(--violet);--indigo-dark:var(--violet-dim);--clay:var(--pink);--clay-soft:#dc262647;--lime-dark:var(--lime-dim);--fg1:var(--ink);--fg2:var(--slate);--fg3:var(--mist);--fg-on-dark:#fff;--bg1:var(--void);--bg2:var(--bg);--bg3:var(--surface-2);--bg-dark:var(--ink);--border:var(--ink-12);--border-strong:var(--ink-24);--border-gradient:linear-gradient(180deg, #0b0f1924 0%, #0b0f190d 50%, #0b0f1917 100%);--accent:var(--brand);--link:var(--teal);--focus-ring:var(--brand);--danger:var(--pink);--success:#047857;--glow-lime:0 0 0 1px #1d4ed838, 0 10px 26px -12px #1d4ed873;--glow-cyan:0 0 0 1px #0e749038, 0 10px 26px -12px #0e749073;--glow-violet:0 0 0 1px #6d28d938, 0 10px 26px -12px #6d28d973;--aurora:radial-gradient(58% 46% at 12% 0%, #1d4ed81a 0%, transparent 62%), radial-gradient(48% 46% at 88% 8%, #6d28d917 0%, transparent 62%), radial-gradient(70% 58% at 50% 100%, #0e749012 0%, transparent 62%);--font-display:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--fs-display-xl:clamp(64px, 10vw, 144px);--fs-display-lg:clamp(48px, 7vw, 96px);--fs-display-md:clamp(36px, 4.5vw, 64px);--fs-h1:56px;--fs-h2:40px;--fs-h3:28px;--fs-h4:22px;--fs-lead:19px;--fs-body:16px;--fs-small:14px;--fs-xs:12px;--fs-eyebrow:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--sp-11:192px;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--r-none:0px;--shadow-none:0 0 0 transparent;--shadow-card:0 1px 2px #0b0f190a, 0 12px 28px -16px #0b0f192e;--shadow-pop:0 2px 4px #0b0f190d, 0 28px 56px -24px #0b0f193d;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--dur-fast:.12s;--dur-base:.22s;--dur-slow:.38s;--container:1280px;--gutter:24px;--header-h:64px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{background:var(--void);color:var(--fg1);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;line-height:1.55}.display-xl,.display-lg,.display-md{font-family:var(--font-display);letter-spacing:-.045em;color:var(--fg1);font-weight:700;line-height:.94}.display-xl{font-size:var(--fs-display-xl)}.display-lg{font-size:var(--fs-display-lg)}.display-md{font-size:var(--fs-display-md)}.display-xl em,.display-lg em,.display-md em{color:var(--ink);font-style:normal}h1,.h1{font-family:var(--font-sans);font-size:var(--fs-h1);letter-spacing:-.035em;font-weight:700;line-height:1.05}h2,.h2{font-family:var(--font-sans);font-size:var(--fs-h2);letter-spacing:-.03em;font-weight:700;line-height:1.08}h3,.h3{font-family:var(--font-sans);font-size:var(--fs-h3);letter-spacing:-.02em;font-weight:600;line-height:1.2}h4,.h4{font-family:var(--font-sans);font-size:var(--fs-h4);letter-spacing:-.01em;font-weight:600;line-height:1.3}p,.body{font-family:var(--font-sans);font-size:var(--fs-body);color:var(--fg1);line-height:1.55}.lead{font-family:var(--font-sans);font-size:var(--fs-lead);color:var(--fg2);line-height:1.5}.small{font-size:var(--fs-small);color:var(--fg2)}.xs{font-size:var(--fs-xs);color:var(--fg3)}.mono,code,kbd,samp{font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:.02em}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:.18em;text-transform:uppercase;color:var(--fg2)}.wordmark{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;font-weight:600}a{color:var(--ink);transition:color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);border-bottom:1px solid #0000;text-decoration:none}a:hover{color:var(--teal);border-bottom-color:var(--teal)}a.plain{color:var(--teal)}a.plain:hover{color:var(--teal-strong)}hr{background:var(--border);height:1px;margin:var(--sp-7) 0;border:0}::selection{background:var(--marker);color:var(--ink)}.bg-aurora{background-color:var(--void);background-image:var(--aurora)}.bg-grid{background-color:var(--void);background-image:linear-gradient(90deg,#0b0f190d 1px,#0000 1px),linear-gradient(#0b0f190d 1px,#0000 1px);background-size:64px 64px}.glass{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.hl{color:var(--ink);background-image:linear-gradient(180deg, transparent 58%, var(--marker) 58%, var(--marker) 94%, transparent 94%);padding:0 .06em}.hl-c,.glow-lime{color:var(--brand)}.glow-cyan{color:var(--teal)}.glow-violet{color:var(--plum)}@keyframes aurora-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(1%,-.6%)scale(1.03)}to{transform:translate(0,0)scale(1)}}.aurora-pulse{animation:aurora-drift 18s var(--ease-out) infinite}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--void);color:var(--ink);margin:0}.container{max-width:1280px;padding:0 var(--sp-5);z-index:2;margin:0 auto;position:relative}.container.narrow{max-width:720px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header{z-index:50;border-bottom:1px solid var(--ink-08);height:var(--header-h);background:#ffffffeb;align-items:center;display:flex;position:sticky;top:0}.app-header .container{justify-content:space-between;align-items:center;gap:var(--sp-5);width:100%;display:flex}.nav{gap:var(--sp-6);display:flex}.nav-link{color:var(--ink-72);cursor:pointer;font-size:13px;font-family:var(--font-sans);transition:color var(--dur-base) var(--ease-out);background:0 0;border:0;padding:4px 0;position:relative}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-link.active:after{content:"";background:var(--brand);border-radius:2px;height:2px;position:absolute;bottom:-2px;left:0;right:0}.eyebrow-row{align-items:center;gap:var(--sp-3);color:var(--fg3);display:flex}.eyebrow-row .num{font-family:var(--font-mono);letter-spacing:.14em;color:var(--lime);white-space:nowrap;font-size:11px}.eyebrow-row .rule{background:linear-gradient(90deg, var(--ink-12), transparent);flex:1;height:1px}.eyebrow-row .label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-56);white-space:nowrap;font-size:11px}.btn{font-family:var(--font-sans);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;transition:all var(--dur-base) var(--ease-out);border:1px solid #0000;align-items:center;gap:10px;padding:12px 20px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--lime);color:var(--void);font-weight:600;box-shadow:0 0 0 1px #1d4ed866,0 8px 24px -8px #1d4ed880}.btn-primary:hover{background:var(--lime);color:var(--void);transform:translateY(-1px);box-shadow:0 0 0 1px #1d4ed899,0 12px 32px -8px #1d4ed8b3}.btn-accent{background:var(--cyan);color:var(--void);font-weight:600;box-shadow:0 0 0 1px #0e749066,0 8px 24px -8px #0e749080}.btn-accent:hover{transform:translateY(-1px);box-shadow:0 0 0 1px #0e749099,0 12px 32px -8px #0e7490b3}.btn-ghost{border-color:var(--ink-24);color:var(--ink);background:#0b0f1905}.btn-ghost:hover{border-color:var(--ink-40);color:var(--ink);background:#0b0f190f}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:14px 24px;font-size:15px}.hero{text-align:center;padding:112px 0 96px;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;will-change:transform;animation:aurora-drift 24s var(--ease-out) infinite;background:radial-gradient(44% 40% at 50% 34%,#1d4ed81a 0%,#0000 70%),radial-gradient(34% 34% at 20% 24%,#6d28d917 0%,#0000 70%),radial-gradient(34% 34% at 84% 24%,#d8ff3d1c 0%,#0000 70%),radial-gradient(48% 38% at 50% 94%,#0e74900f 0%,#0000 70%);position:absolute;inset:-10%}.hero-hex{z-index:1;pointer-events:none;-webkit-mask-composite:source-in;background-image:url(/assets/honeycomb.svg);background-size:55.426px 96px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0000 34% 66%,#000 100%),linear-gradient(#000 0% 52%,#0000 88%);mask-image:linear-gradient(90deg,#000 0%,#0000 34% 66%,#000 100%),linear-gradient(#000 0% 52%,#0000 88%);-webkit-mask-composite:source-in;mask-composite:intersect}.hero .container{z-index:3;position:relative}.hero-stage{position:relative}.hero-copy{z-index:2;max-width:780px;margin:0 auto;position:relative}.hero-badge{border-radius:var(--r-pill);background:var(--surface-1);border:1px solid var(--ink-12);box-shadow:var(--shadow-card);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-56);align-items:center;gap:10px;padding:7px 16px;font-size:11px;display:inline-flex}.hero-badge .num{color:var(--brand)}.hero h1.display{font-family:var(--font-display);letter-spacing:-.045em;margin:28px 0 0;font-size:clamp(34px,5.2vw,68px);font-weight:700;line-height:1.02}.hero h1 em{color:var(--ink);font-style:normal}.hero h1 .hl{color:var(--ink);background-image:linear-gradient(180deg, transparent 60%, var(--marker) 60%, var(--marker) 93%, transparent 93%);padding:0 .05em}.hero h1 .hl-c{color:var(--brand)}.hero-lead{color:var(--ink-72);max-width:54ch;margin:24px auto 0;font-size:18px;line-height:1.6}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;display:flex}.hero-orbit{z-index:1;pointer-events:none;position:absolute;inset:-8% 0}.hero-tile{left:var(--x);top:var(--y);width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);pointer-events:auto;animation:tile-float 9s var(--ease-out) var(--delay) infinite;border-bottom:0;position:absolute}.hero-tile:hover{border-bottom:0}.hero-tile .face{background:var(--surface-1);border:1px solid var(--ink-08);width:100%;height:100%;font-weight:700;font-size:calc(var(--size) * .34);letter-spacing:-.04em;color:var(--tint);transform:rotate(var(--rot));transition:transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) var(--ease-out);border-radius:26%;justify-content:center;align-items:center;display:flex;box-shadow:0 14px 30px -14px #0b0f194d,0 2px 6px #0b0f190d}.hero-tile:hover .face{transform:rotate(0)scale(1.09);box-shadow:0 22px 44px -16px #0b0f1957,0 2px 6px #0b0f190f}@keyframes tile-float{0%,to{transform:translate(0,0)}50%{transform:translateY(-12px)}}.readout{background:var(--ink-08);border-top:1px solid var(--ink-12);border-bottom:1px solid var(--ink-12);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:80px;display:grid}.readout .cell{background:var(--void);flex-direction:column;gap:6px;padding:24px;display:flex;position:relative}.readout .cell .k{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-56);font-size:10px}.readout .cell .v{font-family:var(--font-sans);letter-spacing:-.03em;color:var(--ink);font-size:32px;font-weight:700}.readout .cell .v .unit{color:var(--lime);margin-left:4px;font-size:18px;font-weight:500}.project-grid{gap:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:980px){.project-grid{grid-template-columns:repeat(2,1fr)}}.tag{font-family:var(--font-mono);letter-spacing:.04em;border:1px solid var(--ink-24);color:var(--ink-72);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;display:inline-flex}.tag:hover{color:var(--ink);border-color:var(--ink-40)}.tag.active{background:var(--ink);color:var(--void);border-color:#0000}.tag.bone{color:var(--ink);background:#0b0f190f;border-color:#0000}.tag.lime{background:var(--lime);color:var(--void);border-color:#0000;font-weight:600}.tag.clay{background:var(--pink);color:var(--void);border-color:#0000;font-weight:600}.tag.cyan{background:var(--cyan);color:var(--void);border-color:#0000;font-weight:600}.stack-chip{font-family:var(--font-mono);border:1px solid var(--ink-12);color:var(--ink-72);background:#0b0f190a;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 6px;font-size:11px;display:inline-flex}.stack-chip img{opacity:.75;width:14px;height:14px}section{padding:112px 0;position:relative}section.tight{padding:64px 0}.section-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);margin:16px 0 0;font-size:clamp(40px,5.5vw,72px);font-weight:700;line-height:1.04}.section-title em{font-style:normal}.section-title .hl-c{color:var(--brand)}.section-title .hl{color:var(--ink);background-image:linear-gradient(180deg, transparent 60%, var(--marker) 60%, var(--marker) 93%, transparent 93%);padding:0 .05em}.services-section{background:var(--bg);border-top:1px solid var(--ink-08);border-bottom:1px solid var(--ink-08);position:relative;overflow:hidden}.services-section:before{content:"";z-index:0;background:radial-gradient(50% 50% at 80% 30%,#6d28d912 0%,#0000 60%),radial-gradient(50% 50% at 10% 80%,#0e74900f 0%,#0000 60%);position:absolute;inset:-20% -10%}.services-section .container{z-index:2;position:relative}.process{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:56px;display:grid}.process .step{border:1px solid var(--ink-12);border-radius:var(--r-lg);transition:border-color var(--dur-base), transform var(--dur-base);background:linear-gradient(#0b0f190a,#0b0f1903);flex-direction:column;gap:14px;padding:28px 24px 36px;display:flex;position:relative}.process .step:hover{border-color:var(--cyan);transform:translateY(-2px)}.process .step .n{font-family:var(--font-mono);letter-spacing:.14em;color:var(--lime);align-items:center;gap:8px;font-size:11px;display:inline-flex}.process .step .n:before{content:"";background:var(--brand);border-radius:999px;width:6px;height:6px}.process .step .h{font-family:var(--font-sans);color:var(--ink);letter-spacing:-.02em;font-size:22px;font-weight:700}.process .step .d{color:var(--ink-56);font-size:14px;line-height:1.5}.process.six{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px}.process .step .out{border-top:1px solid var(--ink-08);font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-72);align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-size:11.5px;display:inline-flex}.process .step .out svg{color:var(--brand);flex-shrink:0}.detail-hero{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-areas:"media side""main side";gap:40px 64px;padding-top:32px;display:grid}.detail-media{grid-area:media;min-width:0}.detail-side{grid-area:side;min-width:0}.detail-main{flex-direction:column;grid-area:main;gap:56px;min-width:0;display:flex}.detail-hero .gallery{background:var(--surface-2);border:1px solid var(--ink-12);border-radius:var(--r-xl);aspect-ratio:4/3;position:relative;overflow:hidden}.detail-hero .gallery .mock-art{font-family:var(--font-sans);color:var(--ink);letter-spacing:-.05em;justify-content:center;align-items:center;font-size:96px;font-weight:700;display:flex;position:absolute;inset:0}.detail-hero .gallery .grid-overlay{pointer-events:none;background-image:linear-gradient(90deg,#0b0f190a 1px,#0000 1px),linear-gradient(#0b0f190a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.gallery .backdrop{object-fit:cover;filter:blur(28px)saturate(1.25);opacity:0;width:100%;height:100%;transition:opacity var(--dur-base);position:absolute;inset:0;transform:scale(1.15)}.gallery[data-fit=float] .backdrop{opacity:.6}.gallery .stage-open{cursor:zoom-in;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:absolute;inset:0}.gallery .stage-open:focus-visible{outline:2px solid var(--brand);outline-offset:-4px;border-radius:var(--r-xl)}.gallery [data-gallery-main]{display:block}.gallery[data-fit=fill] [data-gallery-main]{object-fit:cover;width:100%;height:100%}.gallery[data-fit=float] .stage-open{padding:clamp(16px,4.5%,32px)}.gallery[data-fit=float] [data-gallery-main]{background:var(--surface-1);border-radius:14px;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 1px 2px #0b0f1914,0 22px 44px -14px #0b0f1961}.gallery .stage-nav{z-index:2;cursor:pointer;width:40px;height:40px;color:var(--ink);border:1px solid var(--ink-12);opacity:0;transition:opacity var(--dur-fast), background var(--dur-fast);background:#ffffffeb;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;translate:0 -50%;box-shadow:0 6px 16px -6px #0b0f194d}.gallery .stage-nav.prev{left:14px}.gallery .stage-nav.next{right:14px}.gallery .stage-nav:hover{background:var(--surface-1)}.gallery:hover .stage-nav,.gallery:focus-within .stage-nav{opacity:1}@media (hover:none){.gallery .stage-nav{opacity:1}}.gallery .stage-count{z-index:2;pointer-events:none;font-family:var(--font-mono);letter-spacing:.06em;color:#fff;-webkit-backdrop-filter:blur(6px);background:#0b0f1999;border-radius:999px;align-items:center;gap:8px;padding:5px 10px;font-size:11.5px;display:inline-flex;position:absolute;bottom:14px;right:14px}.thumbs{scrollbar-width:thin;gap:8px;margin-top:12px;padding-bottom:4px;display:flex;position:relative;overflow-x:auto}.thumbs .thumb{cursor:pointer;background:var(--surface-2);border:1px solid var(--ink-12);width:84px;height:63px;transition:border-color var(--dur-fast), opacity var(--dur-fast);opacity:.72;border-radius:8px;flex:none;padding:0;overflow:hidden}.thumbs .thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumbs .thumb:hover{opacity:1}.thumbs .thumb.active{opacity:1;outline:2px solid var(--brand);outline-offset:-2px}.lightbox{color:#fff;background:#080a10f0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.lightbox::backdrop{background:#080a1099}.lightbox-stage{justify-content:center;align-items:center;width:100%;height:100%;padding:68px clamp(16px,7vw,96px);display:flex}.lightbox-stage img{border-radius:10px;width:auto;max-width:100%;height:auto;max-height:100%;display:block;box-shadow:0 30px 80px -20px #0009}.lightbox-bar{justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:absolute;top:0;left:0;right:0}.lightbox-count{font-family:var(--font-mono);letter-spacing:.08em;color:#ffffffb8;font-size:12px}.lightbox-btn{cursor:pointer;color:#fff;width:44px;height:44px;transition:background var(--dur-fast);background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;display:flex}.lightbox-btn:hover{background:#ffffff2e}.lightbox-nav{position:absolute;top:50%;translate:0 -50%}.lightbox-nav.prev{left:16px}.lightbox-nav.next{right:16px}html.lightbox-open{overflow:hidden}.detail-side h1{font-family:var(--font-display);letter-spacing:-.045em;margin:12px 0 16px;font-size:64px;font-weight:700;line-height:1}.detail-side h1 em{font-style:normal}.detail-side .lead{color:var(--ink-72);margin:0 0 24px;font-size:18px;line-height:1.5}.detail-side .price-row{align-items:baseline;gap:12px;display:flex}.detail-side .price-row .price{font-family:var(--font-mono);color:var(--lime);font-size:40px;font-weight:700}.detail-side .price-row .lic{font-family:var(--font-mono);color:var(--ink-56);letter-spacing:.04em;font-size:13px}.detail-side .tags-row{flex-wrap:wrap;gap:6px;margin:24px 0;display:flex}.included{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);grid-template-columns:repeat(2,1fr);gap:1px;display:grid;overflow:hidden}.included .item{background:var(--bg);transition:background var(--dur-fast);align-items:flex-start;gap:14px;padding:22px 24px;display:flex}.included .item:hover{background:var(--surface-1)}.included .item svg{color:var(--lime);flex-shrink:0;margin-top:1px}.included .item .t{color:var(--ink);font-size:14px;font-weight:600}.included .item .d{color:var(--ink-56);margin-top:4px;font-size:13px;line-height:1.5}.detail-proof{flex-wrap:wrap;align-items:center;gap:8px 18px;margin:-8px 0 24px;display:flex}.detail-proof .rating-inline{border-bottom:0;margin-top:0}.detail-proof .rating-inline .n{font-size:12.5px}.detail-proof .rating-inline .n strong{color:var(--ink)}.detail-proof .sold{font-family:var(--font-mono);color:var(--ink-56);letter-spacing:.04em;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.buy-box .price-row .was{font-family:var(--font-mono);color:var(--ink-40);font-size:20px}.buy-box .price-row .save{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--success);background:#04785714;border:1px solid #04785747;border-radius:999px;align-self:center;padding:3px 9px;font-size:11px;font-weight:600}.buy-box>.lic{margin-top:-10px}.buy-box .customise{border:1px dashed var(--ink-24);border-radius:var(--r-md);color:var(--ink);transition:border-color var(--dur-fast), background var(--dur-fast);align-items:center;gap:12px;padding:14px 16px;display:flex}.buy-box .customise:hover{border-color:var(--brand);background:var(--brand-wash);color:var(--ink)}.buy-box .customise>svg:first-child{color:var(--brand);flex-shrink:0}.buy-box .customise>svg:last-child{color:var(--ink-40);flex-shrink:0;margin-left:auto}.buy-box .customise .t{font-size:14px;font-weight:600;display:block}.buy-box .customise .d{color:var(--ink-56);margin-top:2px;font-size:12.5px;display:block}.detail-nav{top:var(--header-h);z-index:5;scrollbar-width:none;-webkit-backdrop-filter:blur(8px);background:#fffffff0;gap:6px;margin:-12px 0 -32px;padding:12px 0;display:flex;position:sticky;overflow-x:auto}.detail-nav::-webkit-scrollbar{display:none}.detail-nav a{white-space:nowrap;color:var(--ink-72);border:1px solid var(--ink-12);border-radius:999px;flex-shrink:0;padding:7px 14px;font-size:13px;font-weight:500}.detail-nav a:hover{color:var(--brand);border-color:var(--brand-line);background:var(--brand-wash)}.detail-block{scroll-margin-top:calc(var(--header-h) + 72px)}#reviews,#faq{scroll-margin-top:var(--header-h)}.detail-block>h2{letter-spacing:-.025em;margin:0 0 20px;font-size:28px}.detail-main .tags-row{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}#specs .tags-row{margin:0 0 16px}.stat-band.detail-facts{grid-template-columns:repeat(var(--cols,4), minmax(0, 1fr))}.stat-band.detail-facts .cell{background:var(--surface-1);padding:22px 20px}.stat-band.detail-facts .cell .v{overflow-wrap:anywhere;font-size:30px}.stat-band.detail-facts .cell .v .unit{color:var(--amber);font-size:20px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.feature-grid .feature{border:1px solid var(--ink-12);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-card);align-items:flex-start;gap:14px;padding:20px 22px;display:flex}.feature-grid .feature .ico{border-radius:var(--r-md);background:var(--brand-wash);border:1px solid var(--brand-line);width:32px;height:32px;color:var(--brand);flex-shrink:0;justify-content:center;align-items:center;display:flex}.feature-grid .feature .t{color:var(--ink);font-size:15px;font-weight:600}.feature-grid .feature .d{color:var(--ink-56);margin-top:4px;font-size:13.5px;line-height:1.55}.spec-list.spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.spec-list.spec-grid .spec{background:var(--surface-1)}.spec-list.spec-grid .spec:last-child:nth-child(odd){grid-column:1/-1}.detail-lists{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.list-card{border:1px solid var(--ink-12);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-card);padding:24px}.list-card h3{letter-spacing:-.015em;margin:0 0 14px;font-size:18px}.list-card ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.list-card li{color:var(--ink-72);align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.5;display:flex}.list-card li svg{color:var(--brand);flex-shrink:0;margin-top:3px}.process.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.process.compact .step{gap:10px;padding:22px 20px 24px}.process.compact .step .h{font-size:18px}.assurance{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:16px;display:grid;overflow:hidden}.assurance .cell{background:var(--bg);flex-direction:column;gap:10px;padding:20px;display:flex}.assurance .cell .ico{color:var(--brand)}.assurance .cell .t{color:var(--ink);font-size:14.5px;font-weight:600}.assurance .cell .d{color:var(--ink-56);margin-top:4px;font-size:13px;line-height:1.5}.company-record{align-items:start}.company-record .section-head{margin-bottom:0}.company-record .actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.company-record .spec-list .spec{align-items:flex-start}.company-record .spec-list .spec .k{flex-shrink:0;padding-top:2px}.company-record .spec-list .spec .v{overflow-wrap:anywhere}.quote-form{border:1px solid var(--ink-12);border-radius:var(--r-xl);background:linear-gradient(#0b0f1905,#0b0f1901);grid-template-columns:1fr 1fr;gap:16px;padding:32px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field.full{grid-column:1/-1}.field label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-56);font-size:10px}.field input,.field textarea,.field select{font-family:var(--font-sans);border:1px solid var(--ink-12);border-radius:var(--r-md);color:var(--ink);transition:border-color var(--dur-fast), box-shadow var(--dur-fast), background var(--dur-fast);background:#0b0f1908;outline:none;padding:12px 14px;font-size:15px}.field input::placeholder,.field textarea::placeholder{color:var(--ink-40)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--cyan);background:#0b0f190d;box-shadow:0 0 0 3px #0e749033}.field textarea{resize:vertical;min-height:120px}.app-footer{background:var(--void);color:var(--ink);padding:120px 0 48px;position:relative;overflow:hidden}.app-footer:before{content:"";z-index:0;background:radial-gradient(60% 80% at 50% 100%,#1d4ed80f 0%,#0000 70%),radial-gradient(40% 50% at 10% 30%,#0e74900d 0%,#0000 70%);position:absolute;inset:0}.app-footer .container{flex-direction:column;gap:64px;display:flex}.app-footer .big-mark{font-family:var(--font-display);letter-spacing:-.06em;color:var(--ink);background:linear-gradient(180deg, var(--ink) 0%, var(--ink-24) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(80px,16vw,220px);font-weight:700;line-height:.85}.app-footer .big-mark .dot{color:var(--lime);-webkit-text-fill-color:var(--lime)}.app-footer .big-mark.has-image{background:0 0;line-height:0}.app-footer .big-mark.has-image img{object-fit:contain;object-position:left center;width:auto;max-width:100%;height:clamp(26px,4.8vw,72px);display:block}.app-footer .cols{border-top:1px solid var(--ink-12);grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-top:48px;display:grid}.app-footer .col h3{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-40);margin:0 0 16px;font-size:11px;font-weight:500}.app-footer .col a{color:var(--ink-72);border-bottom:0;padding:4px 0;font-size:14px;display:block}.app-footer .col a:hover{color:var(--cyan);border-bottom:0}.app-footer .col p{color:var(--ink-72);max-width:38ch;margin:0;font-size:14px;line-height:1.55}.app-footer .bottom{border-top:1px solid var(--ink-12);font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;justify-content:space-between;align-items:center;padding-top:24px;font-size:11px;display:flex}.app-footer .legal-links{gap:18px;display:flex}.app-footer .legal-links a{color:var(--ink-40);text-decoration:none}.app-footer .legal-links a:hover{color:var(--ink)}.app-footer .legal-line{color:var(--ink-40);text-wrap:pretty;max-width:130ch;margin:-48px 0 0;font-size:12px;line-height:1.6}.featured-head{justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px;display:flex}.featured-head .right{gap:12px;display:flex}.crumbs{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;padding-top:16px;font-size:11px;display:flex}.crumbs button{cursor:pointer;color:var(--ink-40);font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;padding:0}.crumbs button:hover{color:var(--cyan)}.success{border:1px solid var(--lime);border-radius:var(--r-xl);text-align:center;background:linear-gradient(135deg,#1d4ed826,#0e74901a);padding:40px;box-shadow:0 0 64px -16px #1d4ed866}.success h3{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:0 0 8px;font-size:40px;font-weight:700}.success p{color:var(--ink-72);margin:0}.success p .mono{color:var(--cyan);font-family:var(--font-mono)}@media (max-width:1279px){.hero-tile.is-inner{display:none}}@media (max-width:1023px){.hero-orbit{display:none}.hero-hex{opacity:.6;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0000 24% 76%,#000 100%),linear-gradient(#000 0% 46%,#0000 84%);mask-image:linear-gradient(90deg,#000 0%,#0000 24% 76%,#000 100%),linear-gradient(#000 0% 46%,#0000 84%)}}@media (max-width:1100px){.detail-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"media""side""main"}.app-footer .cols{grid-template-columns:1fr 1fr;gap:40px}}@media (max-width:980px){.process,.process.six,.readout{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.hero{padding:56px 0 64px}.hero h1.display{margin-top:22px;font-size:clamp(32px,8.4vw,52px)}.hero-lead{margin-top:20px;font-size:16.5px}.hero-cta{margin-top:28px}.hero-badge{letter-spacing:.1em;gap:8px;padding:6px 13px;font-size:10px}.readout{margin-top:56px}.detail-side h1{font-size:clamp(34px,8vw,52px)}.featured-head{flex-direction:column;align-items:flex-start;gap:20px}.app-footer{padding:72px 0 40px}.app-footer .container{gap:40px}.app-footer .legal-line{margin-top:-24px}}@media (max-width:720px){.container{padding:0 18px}.lightbox-stage{padding:64px 12px 80px}.lightbox-nav{top:auto;bottom:16px;translate:none}.feature-grid,.spec-list.spec-grid,.process.compact,.assurance{grid-template-columns:minmax(0,1fr)}.stat-band.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-band.detail-facts .cell:last-child:nth-child(odd){grid-column:1/-1}.detail-main{gap:44px}.project-grid,.process,.process.six,.included{grid-template-columns:1fr}.quote-form{grid-template-columns:1fr;padding:24px 20px}.app-footer .cols{grid-template-columns:1fr;gap:32px}.app-footer .bottom{flex-direction:column;align-items:flex-start;gap:10px}.success{padding:28px 20px}.success h3{font-size:28px}.hero-cta .btn{justify-content:center;width:100%}}@media (max-width:480px){.readout{grid-template-columns:1fr}.readout .cell{padding:18px}}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:var(--r-sm)}.skip-link{z-index:999;background:var(--lime);color:var(--void);border-radius:0 0 var(--r-md) 0;padding:12px 20px;font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{scroll-behavior:smooth}.js [data-reveal]{opacity:0;transition:opacity .62s var(--ease-out), transform .62s var(--ease-out);transform:translateY(18px)}.js [data-reveal].revealed{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js [data-reveal]{opacity:1;transform:none}}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.gap-5{gap:var(--sp-5)}.wrap{flex-wrap:wrap}.center{text-align:center}.mx-auto{margin-left:auto;margin-right:auto}.measure{max-width:62ch}.muted{color:var(--ink-56)}.section-head{max-width:780px;margin-bottom:56px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.section-head.center .eyebrow-row{justify-content:center}.section-head.center .eyebrow-row .rule{max-width:80px}.section-head .lead{color:var(--ink-56);font-size:var(--fs-lead);margin:20px 0 0}.btn-whatsapp{color:#04270f;background:#25d366;font-weight:600;box-shadow:0 0 0 1px #25d36666,0 8px 24px -8px #25d36680}.btn-whatsapp:hover{color:#04270f;transform:translateY(-1px);box-shadow:0 0 0 1px #25d366b3,0 12px 32px -8px #25d366b3}.btn-block{justify-content:center;width:100%}.btn svg{flex-shrink:0}.nav-toggle{border:1px solid var(--ink-12);border-radius:var(--r-md);color:var(--ink);cursor:pointer;width:40px;height:40px;transition:border-color var(--dur-fast) var(--ease-out);background:#0b0f1908;justify-content:center;align-items:center;display:none}.nav-toggle:hover{border-color:var(--ink-40)}.header-actions{gap:var(--sp-4);align-items:center;display:flex}.header-user{color:var(--ink-56);border-bottom:0;align-items:center;gap:8px;font-size:13px;display:inline-flex}.header-user:hover{color:var(--ink);border-bottom:0}.brand{border-bottom:0;align-items:center;gap:10px;display:inline-flex}.brand:hover{border-bottom:0}.brand .logo-mark{transition:transform var(--dur-base) var(--ease-spring);flex-shrink:0}.brand:hover .logo-mark{transform:rotate(-4deg)scale(1.04)}.brand .mark{font-family:var(--font-sans);letter-spacing:-.03em;color:var(--ink);font-size:19px;font-weight:700}.brand .dot{color:var(--brand)}.brand:hover .mark{color:var(--ink)}.brand .brand-logo{object-fit:contain;object-position:left center;width:auto;max-width:200px;height:32px;display:block}.mobile-nav{inset:var(--header-h) 0 0 0;z-index:45;background:var(--void);padding:var(--sp-6) var(--sp-5);gap:var(--sp-2);flex-direction:column;display:none;position:fixed;overflow-y:auto}.mobile-nav.open{display:flex}.mobile-nav a{letter-spacing:-.02em;color:var(--ink-72);border-bottom:1px solid var(--ink-08);padding:14px 0;font-size:22px;font-weight:600}.mobile-nav a:hover,.mobile-nav a.active{color:var(--lime);border-bottom-color:var(--ink-08)}.mobile-nav .mobile-cta{margin-top:var(--sp-5);gap:var(--sp-3);flex-direction:column;display:flex}.mobile-nav .mobile-cta a{border-bottom:0;padding:12px 20px;font-size:15px}.announce{border-bottom:1px solid var(--ink-08);font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-72);text-align:center;background:linear-gradient(90deg,#1d4ed81f,#0e74901f);padding:9px 0;font-size:12px}.announce a{color:var(--lime);border-bottom:1px solid #1d4ed866}.announce a:hover{color:var(--lime);border-bottom-color:var(--lime)}.marquee{border-top:1px solid var(--ink-08);border-bottom:1px solid var(--ink-08);background:var(--bg);padding:22px 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.marquee-track{gap:56px;width:max-content;animation:38s linear infinite marquee-scroll;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-item{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);white-space:nowrap;align-items:center;gap:10px;font-size:13px;display:inline-flex}.marquee-item:before{content:"";background:var(--brand);border-radius:999px;flex-shrink:0;width:5px;height:5px}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.service-grid{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border:1px solid var(--ink-12);border-radius:var(--r-lg);transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);background:linear-gradient(#0b0f190a,#0b0f1902);flex-direction:column;gap:16px;padding:32px 28px 28px;display:flex;position:relative;overflow:hidden}.service-card:after{content:"";pointer-events:none;opacity:0;transition:opacity var(--dur-base) var(--ease-out);background:radial-gradient(60% 40% at 50% 0,#0e74901f,#0000 70%);position:absolute;inset:0}.service-card:hover{border-color:#0e749059;transform:translateY(-4px);box-shadow:0 28px 60px -24px #0b0f1921,0 0 0 1px #0e74901f}.service-card:hover:after{opacity:1}.service-icon{border-radius:var(--r-md);border:1px solid var(--ink-12);width:48px;height:48px;color:var(--lime);background:linear-gradient(135deg,#1d4ed82e,#0e749024);flex-shrink:0;justify-content:center;align-items:center;display:flex}.service-card h3{letter-spacing:-.02em;margin:0;font-size:21px}.service-card .tagline{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);font-size:11px}.service-card p{color:var(--ink-56);margin:0;font-size:14px;line-height:1.6}.service-card ul{flex-direction:column;gap:9px;margin:4px 0 0;padding:0;list-style:none;display:flex}.service-card ul li{color:var(--ink-72);align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;display:flex}.service-card ul li:before{content:"";background:#1d4ed824;border:1px solid #1d4ed873;border-radius:999px;flex-shrink:0;width:14px;height:14px;margin-top:3px}.service-card .foot{border-top:1px solid var(--ink-08);justify-content:space-between;align-items:baseline;gap:12px;margin-top:auto;padding-top:20px;display:flex}.service-card .foot .price{font-family:var(--font-mono);color:var(--lime);font-size:20px;font-weight:600}.service-card .foot .note{color:var(--ink-40);font-size:12px;font-family:var(--font-mono)}.value-grid{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.value-grid .cell{background:var(--bg);transition:background var(--dur-base) var(--ease-out);flex-direction:column;gap:12px;padding:34px 30px;display:flex}.value-grid .cell:hover{background:var(--surface-1)}.value-grid .cell .ico{color:var(--cyan)}.value-grid .cell h3{letter-spacing:-.015em;margin:0;font-size:18px;font-weight:600}.value-grid .cell p{color:var(--ink-56);margin:0;font-size:14px;line-height:1.6}.value-grid.cols-4{grid-template-columns:repeat(4,1fr)}.value-grid.cols-4 .cell{padding:30px 26px}.filter-bar{justify-content:space-between;align-items:center;gap:var(--sp-5);border-bottom:1px solid var(--ink-08);flex-wrap:wrap;margin-bottom:40px;padding-bottom:24px;display:flex}.filter-group{flex-wrap:wrap;gap:8px;display:flex}.filter-bar .count{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;font-size:12px}.search-field{align-items:center;min-width:260px;display:flex;position:relative}.search-field svg{color:var(--ink-40);pointer-events:none;position:absolute;left:14px}.search-field input{width:100%;font-family:var(--font-sans);border:1px solid var(--ink-12);border-radius:var(--r-pill);color:var(--ink);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);background:#0b0f1908;outline:none;padding:11px 14px 11px 42px;font-size:14px}.search-field input::placeholder{color:var(--ink-40)}.search-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #0e74902e}.empty-state{border:1px dashed var(--ink-24);border-radius:var(--r-xl);text-align:center;background:#0b0f1904;flex-direction:column;grid-column:1/-1;align-items:center;gap:14px;padding:72px 32px;display:flex}.empty-state .ico{color:var(--ink-24)}.empty-state h3{margin:0;font-size:22px}.empty-state p{color:var(--ink-56);max-width:44ch;margin:0}.prose{color:var(--ink-72);max-width:68ch;font-size:16px;line-height:1.75}.prose p{color:inherit;margin:0 0 18px}.prose p:last-child{margin-bottom:0}.prose h2{color:var(--ink);margin:40px 0 14px;font-size:28px}.prose h3{color:var(--ink);margin:32px 0 12px;font-size:21px}.prose ul,.prose ol{margin:0 0 18px;padding-left:22px}.prose li{margin-bottom:8px}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--cyan);border-bottom-color:#0e749059}.spec-list{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);flex-direction:column;gap:1px;display:flex;overflow:hidden}.spec-list .spec{background:var(--bg);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.spec-list .spec .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);font-size:11px}.spec-list .spec .v{color:var(--ink);text-align:right;font-size:14px;font-weight:500}.buy-box{border:1px solid var(--ink-12);border-radius:var(--r-xl);top:calc(var(--header-h) + 24px);box-shadow:var(--shadow-card);background:linear-gradient(#0b0f190d,#0b0f1903);flex-direction:column;gap:18px;padding:28px;display:flex;position:sticky}.buy-box .price-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.buy-box .price{font-family:var(--font-mono);color:var(--lime);letter-spacing:-.02em;font-size:38px;font-weight:700}.buy-box .lic{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;font-size:12px}.buy-box .actions{flex-direction:column;gap:10px;display:flex}.buy-box .reassure{border-top:1px solid var(--ink-08);flex-direction:column;gap:8px;padding-top:16px;display:flex}.buy-box .reassure .item{color:var(--ink-56);align-items:center;gap:10px;font-size:13px;display:flex}.buy-box .reassure .item svg{color:var(--lime);flex-shrink:0}.quote-form .field.full>.btn,.quote-form .field.full>button.btn{align-self:flex-start}.contact-methods{gap:var(--sp-4);grid-template-columns:repeat(4,1fr);display:grid}.contact-method{border:1px solid var(--ink-12);border-radius:var(--r-lg);transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);border-bottom:1px solid var(--ink-12);background:linear-gradient(#0b0f190a,#0b0f1902);flex-direction:column;gap:10px;padding:26px 24px;display:flex}.contact-method:hover{border-color:var(--cyan);color:inherit;transform:translateY(-3px)}.contact-method .ico{border-radius:var(--r-md);width:40px;height:40px;color:var(--cyan);background:#0e74901a;border:1px solid #0e749047;justify-content:center;align-items:center;display:flex}.contact-method .t{color:var(--ink);font-size:16px;font-weight:600}.contact-method .d{color:var(--ink-56);font-size:13px;line-height:1.5}.contact-method .v{font-family:var(--font-mono);color:var(--lime);word-break:break-all;margin-top:2px;font-size:12.5px}.contact-method.whatsapp .ico{color:#25d366;background:#25d3661f;border-color:#25d36659}.contact-method.whatsapp:hover{border-color:#25d366}.calendly-embed{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-xl);box-shadow:var(--shadow-card);overflow:hidden}.calendly-embed .calendly-inline-widget{width:100%}.calendly-embed iframe{display:block}.review-grid{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.review-card{border:1px solid var(--ink-12);border-radius:var(--r-lg);transition:border-color var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);background:linear-gradient(#0b0f190a,#0b0f1902);flex-direction:column;gap:18px;padding:28px 26px;display:flex;position:relative}.review-card:hover{border-color:#1d4ed84d;transform:translateY(-2px)}.review-card .stars{color:var(--amber);gap:3px;display:flex}.review-card blockquote{color:var(--ink-90);font-size:15.5px;line-height:1.65;font-family:var(--font-sans);letter-spacing:0;margin:0;font-weight:400}.review-card .who{border-top:1px solid var(--ink-08);align-items:center;gap:12px;margin-top:auto;padding-top:18px;display:flex}.review-card .avatar{background:linear-gradient(135deg, var(--cyan), var(--violet));width:40px;height:40px;font-family:var(--font-mono);color:var(--void);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;overflow:hidden}.review-card .avatar img{object-fit:cover;width:100%;height:100%}.review-card .who .n{color:var(--ink);font-size:14px;font-weight:600}.review-card .who .r{color:var(--ink-56);font-size:12.5px}.review-card .review-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-card .review-title{color:var(--ink);letter-spacing:-.01em;margin:-6px 0;font-size:16px;font-weight:650}.verified-pill{white-space:nowrap;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--lime);background:#1d4ed814;border:1px solid #1d4ed859;border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:10px;display:inline-flex}.rating-inline{color:var(--amber);align-items:center;gap:2px;margin-top:8px;display:inline-flex}.rating-inline .n{font-family:var(--font-mono);color:var(--ink-56);letter-spacing:.04em;margin-left:6px;font-size:11.5px}.rating-field{border:0;margin:0;padding:0}.rating-field legend{color:var(--ink-72);margin-bottom:10px;font-size:13px;font-weight:600}.star-input{flex-direction:row-reverse;justify-content:flex-end;gap:4px;display:inline-flex}.star-input input{opacity:0;width:1px;height:1px;position:absolute}.star-input label{color:var(--ink-24);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);padding:2px;line-height:0}.star-input label:hover,.star-input label:hover~label,.star-input input:checked~label{color:var(--amber)}.star-input input:focus-visible+label{outline:2px solid var(--cyan);outline-offset:2px;border-radius:4px}.review-prompt{border-radius:var(--r-lg);background:linear-gradient(#1d4ed80f,#1d4ed803);border:1px solid #1d4ed847;padding:26px 28px}.review-prompt-head{color:var(--lime);align-items:flex-start;gap:14px;display:flex}.review-prompt-head h2{letter-spacing:-.02em;color:var(--ink);margin:0 0 4px;font-size:20px}.review-prompt-head p{color:var(--ink-56);max-width:60ch;margin:0;font-size:14px}.review-prompt-list{flex-direction:column;gap:10px;margin:20px 0 0;padding:0;list-style:none;display:flex}.review-prompt-list li{border:1px solid var(--ink-12);border-radius:var(--r-md);background:#0b0f1905;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.review-prompt-list .name{color:var(--ink);font-size:15px;font-weight:600}.review-prompt-list .ref{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;margin-top:3px;font-size:11.5px;display:block}.status-pending{color:var(--ink-72);border-color:var(--ink-24);background:#0b0f190a}.status-approved{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-rejected{color:var(--ink-40);border-color:var(--ink-12);background:#0b0f1905}.legal-body{color:var(--ink-72);font-size:15.5px;line-height:1.75}.legal-body h2{letter-spacing:-.02em;color:var(--ink);border-top:1px solid var(--ink-08);margin:44px 0 12px;padding-top:20px;font-size:21px}.legal-body h2:first-child{border-top:0;margin-top:0;padding-top:0}.legal-body p{margin:0 0 14px}.legal-body strong{color:var(--ink);font-weight:600}.legal-body a{color:var(--cyan)}.legal-body ul{margin:0 0 14px;padding-left:20px}.legal-body li{margin-bottom:6px}.legal-body .legal-address{font-family:var(--font-mono);color:var(--ink-56);border-left:2px solid var(--ink-12);margin-bottom:18px;padding-left:14px;font-size:13px;line-height:1.7}.legal-table-wrap{margin:0 0 20px;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;min-width:560px;font-size:14px}.legal-table th,.legal-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--ink-08);padding:12px 16px 12px 0}.legal-table th{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40);border-bottom-color:var(--ink-12);font-size:10.5px;font-weight:500}.legal-table td:first-child{color:var(--ink);width:22%;font-weight:500}.legal-foot{border-top:1px solid var(--ink-08);flex-wrap:wrap;gap:10px;margin-top:44px;padding-top:24px;display:flex}.social-auth{margin-top:24px}.social-divider{color:var(--ink-40);align-items:center;gap:14px;font-size:12.5px;display:flex}.social-divider:before,.social-divider:after{content:"";background:var(--ink-08);flex:1;height:1px}.social-buttons{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:16px;display:grid}.social-btn{justify-content:center;gap:10px}.social-btn:hover{border-color:var(--ink-24)}.signin-methods{border-top:1px solid var(--ink-08);margin-top:48px;padding-top:28px}.signin-methods h3{color:var(--ink);margin:0 0 4px;font-size:15px}.signin-methods .is-linked{color:var(--lime);cursor:default;border-color:#1d4ed859}.faq-list{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);flex-direction:column;gap:1px;display:flex;overflow:hidden}.faq-item{background:var(--bg)}.faq-item summary{cursor:pointer;color:var(--ink);letter-spacing:-.01em;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;font-size:17px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{background:var(--surface-1);color:var(--lime)}.faq-item summary .chev{color:var(--ink-40);transition:transform var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);flex-shrink:0}.faq-item[open] summary{color:var(--lime)}.faq-item[open] summary .chev{color:var(--lime);transform:rotate(45deg)}.faq-item .answer{color:var(--ink-56);max-width:76ch;padding:0 28px 26px;font-size:15px;line-height:1.7}.cta-band{border:1px solid var(--ink-12);border-radius:var(--r-xl);background:var(--bg);text-align:center;padding:72px 56px;position:relative;overflow:hidden}.cta-band:before{content:"";z-index:0;will-change:transform;animation:aurora-drift 26s var(--ease-out) infinite;background:radial-gradient(50% 50% at 20% 20%,#1d4ed829 0%,#0000 60%),radial-gradient(50% 50% at 80% 70%,#0e74902e 0%,#0000 60%),radial-gradient(40% 40% at 50% 100%,#6d28d929 0%,#0000 60%);position:absolute;inset:-30%}.cta-band>*{z-index:2;position:relative}.cta-band h2{font-family:var(--font-display);letter-spacing:-.04em;margin:14px 0 0;font-size:clamp(34px,4.6vw,60px);font-weight:700;line-height:1.05}.cta-band h2 .hl{color:var(--ink);background-image:linear-gradient(180deg, transparent 60%, var(--marker) 60%, var(--marker) 93%, transparent 93%);padding:0 .05em}.cta-band p{max-width:56ch;color:var(--ink-72);font-size:var(--fs-lead);margin:20px auto 0}.cta-band .actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px;display:flex}.cta-band .fine{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;margin-top:22px;font-size:12px}.wa-float{z-index:60;color:#04270f;width:56px;height:56px;transition:transform var(--dur-base) var(--ease-spring);background:#25d366;border-bottom:0;border-radius:999px;justify-content:center;align-items:center;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 30px -8px #25d36699}.wa-float:hover{color:#04270f;border-bottom:0;transform:scale(1.08)}.wa-float:before{content:"";border-radius:inherit;animation:wa-ping 2.4s var(--ease-out) infinite;border:2px solid #25d36699;position:absolute;inset:0}@keyframes wa-ping{0%{opacity:.8;transform:scale(1)}70%{opacity:0;transform:scale(1.5)}to{opacity:0;transform:scale(1.5)}}.flash-wrap{z-index:20;position:relative}.flash{border-radius:var(--r-md);border:1px solid;align-items:center;gap:12px;margin:20px 0;padding:14px 18px;font-size:14px;display:flex}.flash svg{flex-shrink:0}.field-error{color:var(--pink);font-size:12.5px;font-family:var(--font-mono);letter-spacing:.02em}.field input.has-error,.field textarea.has-error,.field select.has-error{border-color:var(--pink)}.auth-wrap{min-height:calc(100vh - var(--header-h));padding:72px var(--sp-5);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-wrap:before{content:"";z-index:0;background:var(--aurora);opacity:.9;position:absolute;inset:-20%}.auth-card{z-index:2;border:1px solid var(--ink-12);border-radius:var(--r-xl);width:100%;max-width:440px;box-shadow:var(--shadow-pop);background:linear-gradient(#0b0f190d,#0b0f1903);padding:40px 36px;position:relative}.auth-card h1{letter-spacing:-.03em;margin:12px 0 6px;font-size:30px}.auth-card .sub{color:var(--ink-56);margin:0 0 28px;font-size:14.5px}.auth-card .form-stack{flex-direction:column;gap:16px;display:flex}.auth-card .alt{border-top:1px solid var(--ink-08);color:var(--ink-56);text-align:center;margin:24px 0 0;padding-top:20px;font-size:14px}.auth-card .alt a{color:var(--cyan)}.pagination-wrap{justify-content:center;margin-top:56px;display:flex}.pagination-wrap nav{align-items:center;gap:6px;display:flex}.pagination-wrap svg{width:16px;height:16px}.pagination-wrap a,.pagination-wrap span{border:1px solid var(--ink-12);border-radius:var(--r-md);min-width:38px;height:38px;font-family:var(--font-mono);color:var(--ink-72);background:#0b0f1905;justify-content:center;align-items:center;padding:0 12px;font-size:13px;display:inline-flex}.pagination-wrap a:hover{border-color:var(--cyan);color:var(--cyan)}.pagination-wrap [aria-current=page] span,.pagination-wrap span[aria-current=page]{background:var(--lime);color:var(--void);border-color:#0000;font-weight:700}.order-list{flex-direction:column;gap:12px;display:flex}.order-row{border:1px solid var(--ink-12);border-radius:var(--r-lg);background:linear-gradient(#0b0f1909,#0b0f1902);grid-template-columns:1fr auto auto auto;align-items:center;gap:20px;padding:18px 22px;display:grid}.order-row .name{color:var(--ink);font-size:15.5px;font-weight:600}.order-row .ref{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;margin-top:3px;font-size:11.5px}.order-row .amt{font-family:var(--font-mono);color:var(--lime);font-size:15px;font-weight:600}.status-pill{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;padding:5px 11px;font-size:10.5px}.status-requested{color:var(--ink-72);border-color:var(--ink-24);background:#0b0f190a}.status-link_sent{color:var(--cyan);background:#0e749014;border-color:#0e749066}.status-paid{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-refunded,.status-cancelled{color:var(--pink);background:#dc262614;border-color:#dc262666}.status-new{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-read{color:var(--ink-72);border-color:var(--ink-24);background:#0b0f190a}.status-replied{color:var(--cyan);background:#0e749014;border-color:#0e749066}.status-won{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-lost{color:var(--ink-40);border-color:var(--ink-12);background:#0b0f1905}.status-contacted{color:var(--cyan);background:#0e749014;border-color:#0e749066}.status-confirmed{color:var(--violet);background:#6d28d91a;border-color:#6d28d973}.status-completed{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-draft{color:var(--ink-40);border-color:var(--ink-12);background:#0b0f1905}.status-sent{color:var(--cyan);background:#0e749014;border-color:#0e749066}.status-overdue{color:var(--pink);background:#dc262614;border-color:#dc262666}.status-active{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-suspended{color:var(--amber);background:#d9770617;border-color:#d977066b}.status-revoked,.status-expired{color:var(--pink);background:#dc262614;border-color:#dc262666}.status-processing{color:var(--cyan);background:#0e749014;border-color:#0e749066}.status-partially_refunded{color:var(--amber);background:#d9770617;border-color:#d977066b}.status-failed{color:var(--pink);background:#dc262614;border-color:#dc262666}.status-abandoned{color:var(--ink-40);border-color:var(--ink-12);background:#0b0f1905}.pay-unpaid{color:var(--amber);background:#d9770617;border-color:#d977066b}.pay-partial{color:var(--cyan);background:#0e749014;border-color:#0e749066}.pay-paid{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.pay-refunded{color:var(--pink);background:#dc262614;border-color:#dc262666}.page-head{border-bottom:1px solid var(--ink-08);padding:72px 0 48px;position:relative;overflow:hidden}.page-head:before{content:"";z-index:0;background:radial-gradient(50% 60% at 30% 0,#0e749017 0%,#0000 65%),radial-gradient(40% 50% at 75% 10%,#6d28d917 0%,#0000 65%);position:absolute;inset:-50% -10% 0}.page-head .container{z-index:2;position:relative}.page-head h1{font-family:var(--font-display);letter-spacing:-.045em;margin:16px 0 0;font-size:clamp(38px,6vw,76px);font-weight:700;line-height:1.02}.page-head h1 .hl{color:var(--ink);background-image:linear-gradient(180deg, transparent 60%, var(--marker) 60%, var(--marker) 93%, transparent 93%);padding:0 .05em}.page-head h1 .hl-c{color:var(--brand)}.page-head .lead{max-width:62ch;color:var(--ink-56);font-size:var(--fs-lead);margin:20px 0 0}.split{grid-template-columns:1fr 1fr;align-items:center;gap:72px;display:grid}.split .visual{aspect-ratio:4/3;border-radius:var(--r-xl);border:1px solid var(--ink-12);background:var(--surface-2);position:relative;overflow:hidden}.split .visual img{object-fit:cover;width:100%;height:100%}.split .visual .grid-overlay{pointer-events:none;background-image:linear-gradient(90deg,#0b0f190d 1px,#0000 1px),linear-gradient(#0b0f190d 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.split .visual .initials{letter-spacing:-.05em;color:var(--ink-24);justify-content:center;align-items:center;font-size:88px;font-weight:700;display:flex;position:absolute;inset:0}.stat-band{background:var(--ink-08);border:1px solid var(--ink-12);border-radius:var(--r-lg);grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.stat-band .cell{background:var(--bg);flex-direction:column;gap:6px;padding:30px 26px;display:flex}.stat-band .cell .v{letter-spacing:-.035em;color:var(--ink);font-size:38px;font-weight:700;font-family:var(--font-display);line-height:1}.stat-band .cell .v .unit{color:var(--lime);margin-left:3px;font-size:22px}.stat-band .cell .k{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-40);margin-top:4px;font-size:10.5px}@media (max-width:1100px){.service-grid,.review-grid,.value-grid,.value-grid.cols-4,.contact-methods{grid-template-columns:repeat(2,1fr)}.split{gap:48px}}@media (max-width:900px){:root{--header-h:60px}.nav{display:none}.nav-toggle{display:flex}.header-actions .btn,.header-actions .header-user{display:none}section{padding:72px 0}section.tight{padding:48px 0}.split{grid-template-columns:1fr;gap:36px}.stat-band{grid-template-columns:repeat(2,1fr)}.cta-band{padding:52px 28px}.buy-box{position:static}.page-head{padding:48px 0 36px}.section-head{margin-bottom:40px}}@media (max-width:720px){.service-grid,.review-grid,.value-grid,.value-grid.cols-4,.contact-methods{grid-template-columns:1fr}.marquee-track{gap:32px}.faq-item summary{padding:18px 20px;font-size:15.5px}.faq-item .answer{padding:0 20px 20px;font-size:14.5px}.order-row{grid-template-columns:1fr;gap:12px}.order-row .actions{justify-self:start}.auth-card{padding:32px 24px}.cta-band{padding:44px 22px}.wa-float{width:52px;height:52px;bottom:16px;right:16px}.search-field{min-width:100%}.filter-bar{gap:var(--sp-4)}}.service-card,.review-card,.contact-method,.order-row,.admin-stat,.admin-panel,.buy-box,.auth-card,.quote-form{background:var(--surface-1);box-shadow:var(--shadow-card)}.service-card:hover{border-color:var(--ink-24);box-shadow:0 2px 4px #0b0f190d,0 24px 48px -20px #0b0f1947}.review-card:hover{border-color:var(--brand-line)}.field input,.field textarea,.field select,.search-field input{background:var(--surface-1);border-color:var(--ink-24)}.field input:focus,.field textarea:focus,.field select:focus,.search-field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash);background:var(--surface-1)}.btn-ghost{background:var(--surface-1);border-color:var(--ink-24);color:var(--ink)}.btn-ghost:hover{background:var(--bg);border-color:var(--ink-40);color:var(--ink)}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 1px 2px #0b0f1914,0 8px 20px -10px #1d4ed88c}.btn-primary:hover{background:var(--brand-strong);color:#fff;box-shadow:0 2px 4px #0b0f191a,0 14px 28px -10px #1d4ed88c}.btn-accent{background:var(--teal);color:#fff}.btn-accent:hover{background:var(--teal-strong);color:#fff}.tag.active,.tag.lime,.tag.cyan,.tag.clay,.skip-link{color:#fff}.verified-pill{color:var(--brand)}.flash-success{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.flash-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.flash-info{color:#0b5a70;background:#ecfeff;border-color:#a5f3fc}.marquee,.services-section,.app-footer{content-visibility:auto;contain-intrinsic-size:auto 600px}.lead a,.prose a,.legal-body a,.faq-item .answer a,.auth-card .alt a,.cta-band p a,.review-prompt-head p a{color:var(--teal);border-bottom-color:currentColor}.lead a:hover,.prose a:hover,.legal-body a:hover,.faq-item .answer a:hover,.auth-card .alt a:hover,.cta-band p a:hover,.review-prompt-head p a:hover{color:var(--teal-strong)}.avatar{--avatar-size:40px;width:var(--avatar-size);height:var(--avatar-size);flex:0 0 var(--avatar-size);background:var(--surface-2);border:1px solid var(--ink-12);vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar .ini{font-family:var(--font-mono);font-weight:700;font-size:calc(var(--avatar-size) * .36);letter-spacing:.02em;color:var(--ink-56);-webkit-user-select:none;user-select:none;line-height:1}.avatar.is-empty{background:var(--brand-wash);border-color:var(--brand-line)}.avatar.is-empty .ini{color:var(--brand)}.dash-head{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.dash-head-text{flex:1;min-width:260px}.dash-head-text h1{margin:0}.dash-head-text .lead{margin-top:8px}.dash-avatar{border-bottom:0;display:inline-flex}.dash-avatar:hover .avatar{border-color:var(--brand-line)}.dash-head-actions{flex-wrap:wrap;gap:10px;display:flex}.account-summary-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.account-summary-head h3{color:var(--ink);margin:0;font-size:15px}.account-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px 24px;margin:16px 0 0;display:grid}.account-summary div{flex-direction:column;gap:4px;display:flex}.account-summary dt{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-40);font-size:10px}.account-summary dd{color:var(--ink);word-break:break-word;margin:0;font-size:14.5px}.account-card{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);margin-bottom:20px;padding:26px 28px}.account-card>h2{letter-spacing:-.02em;margin:0;font-size:19px}.account-card>h2+p{margin:6px 0 0}.account-card .form-stack{flex-direction:column;gap:18px;margin-top:22px;display:flex}.account-card-head{border-bottom:1px solid var(--ink-08);align-items:center;gap:16px;padding-bottom:20px;display:flex}.account-card-head h2{letter-spacing:-.02em;margin:0;font-size:19px}.account-card-head p{margin:4px 0 0}.photo-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.photo-preview{background:var(--brand-wash);border:1px solid var(--brand-line);border-radius:999px;flex:0 0 76px;justify-content:center;align-items:center;width:76px;height:76px;display:inline-flex;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:100%;display:block}.photo-preview .ini{font-family:var(--font-mono);color:var(--brand);font-size:26px;font-weight:700;line-height:1}.photo-preview:not(.is-empty) .ini{display:none}.photo-controls{flex-direction:column;flex:1;gap:8px;min-width:220px;display:flex}.photo-controls input[type=file]{color:var(--ink-56);max-width:100%;font-size:13px}.field .photo-remove,.photo-remove{color:var(--ink-56);cursor:pointer;letter-spacing:0;text-transform:none;align-items:center;gap:8px;font-family:inherit;font-size:13px;display:inline-flex}.photo-remove input{width:15px;height:15px;accent-color:var(--pink);cursor:pointer}.status-admin{color:var(--violet);background:#6d28d91a;border-color:#6d28d973}.status-manager{color:var(--lime);background:#1d4ed81a;border-color:#1d4ed873}.status-employee{color:var(--cyan);background:#0e749014;border-color:#0e749066}@media (max-width:620px){.dash-head{gap:14px}.account-card{padding:22px 18px}}.invoice-paper{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);padding:34px;overflow-x:auto}@media (max-width:640px){.invoice-paper{padding:20px}}.license-list{gap:14px;display:grid}.license-card{border:1px solid var(--ink-12);border-radius:var(--r-lg);background:linear-gradient(#0b0f1909,#0b0f1902);padding:20px 22px}.license-card .head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.license-card .name{color:var(--ink);font-size:16px;font-weight:600}.license-card .ref{font-family:var(--font-mono);color:var(--ink-40);letter-spacing:.06em;margin-top:3px;font-size:11.5px}.license-card .key-row{background:var(--surface-2);border:1px solid var(--ink-08);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.license-card .key-row code{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink);word-break:break-all;background:0 0;flex:1;padding:0;font-size:15px}.license-meta{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:16px 0 12px;display:grid}.license-meta dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);margin-bottom:3px;font-size:10px}.license-meta dd{color:var(--ink);word-break:break-word;margin:0;font-size:13.5px}@media (max-width:640px){.license-card .head{flex-direction:column}}.buy-note{color:var(--ink-56);text-align:center;margin:2px 0 0;font-size:12.5px;line-height:1.55}.buy-note code{font-size:12px}.pay-card{background:var(--surface-1);border:1px solid var(--ink-08);border-radius:var(--r-xl);gap:18px;margin-top:18px;padding:28px;display:grid}.pay-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.pay-head h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(24px,3vw,32px)}.pay-head .ref{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-40);margin:4px 0 0;font-size:12px}.pay-head .amt{font-family:var(--font-mono);color:var(--lime);white-space:nowrap;font-size:22px;font-weight:600}.pay-lines{border-top:1px solid var(--ink-08);gap:8px;margin:0;padding:14px 0 0;list-style:none;display:grid}.pay-lines li{color:var(--ink-72);justify-content:space-between;gap:16px;font-size:14px;display:flex}.pay-lines .mono{font-family:var(--font-mono);color:var(--ink)}.pay-status{color:var(--ink-72);align-items:flex-start;gap:10px;margin:0;font-size:14.5px;line-height:1.6;display:flex}.pay-status svg{color:var(--amber);flex-shrink:0;margin-top:2px}.pay-status.is-paid svg{color:var(--success)}.pay-details{background:var(--surface-2);border-radius:var(--r-md);color:var(--ink-72);margin:0;padding:12px 14px;font-size:13.5px;line-height:1.65}.pay-links{padding-top:4px}.success.is-waiting{border-color:var(--cyan);box-shadow:none}.success.is-failed{border-color:var(--pink);box-shadow:none;background:#dc26260d}@media (max-width:560px){.pay-card{padding:20px}.pay-head{flex-direction:column;gap:8px}}.cart-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:12px 0 0;font-size:clamp(30px,4vw,44px)}.cart-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:32px;margin-top:28px;display:grid}.cart-items{gap:12px;margin:0;padding:0;list-style:none;display:grid}.cart-item{background:var(--surface-1);border:1px solid var(--ink-08);border-radius:var(--r-lg);box-shadow:var(--shadow-card);grid-template-columns:88px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:14px 16px 14px 14px;display:grid}.cart-item .thumb{aspect-ratio:4/3;border-radius:var(--r-md);background:var(--surface-2);border-bottom:0;width:88px;display:block;overflow:hidden}.cart-item .thumb img{object-fit:cover;width:100%;height:100%;display:block}.cart-item .thumb .grad{width:100%;height:100%;font-family:var(--font-display);color:var(--ink-40);justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.cart-item .info{gap:4px;min-width:0;display:grid}.cart-item .name{color:var(--ink);border-bottom:0;font-size:16px;font-weight:600}.cart-item .name:hover{color:var(--brand)}.cart-item .meta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-40);font-size:11.5px}.cart-item .price{font-family:var(--font-mono);white-space:nowrap;justify-items:end;gap:2px;display:grid}.cart-item .price s{color:var(--ink-40);font-size:12.5px}.cart-item .price .now{color:var(--ink);font-size:16px;font-weight:600}.cart-remove{border:1px solid var(--ink-12);border-radius:var(--r-md);width:34px;height:34px;color:var(--ink-56);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.cart-remove:hover{color:var(--pink);border-color:var(--pink);background:#dc26260f}.cart-continue{color:var(--ink-56);border-bottom:0;align-items:center;gap:8px;margin-top:18px;font-size:14px;display:inline-flex}.cart-continue:hover{color:var(--ink)}.cart-summary{box-shadow:var(--shadow-card);margin-top:0;position:sticky;top:96px}.cart-summary h2{letter-spacing:-.01em;margin:0;font-size:18px}.cart-summary .reassure{border-top:1px solid var(--ink-08);flex-direction:column;gap:8px;padding-top:16px;display:flex}.cart-summary .reassure .item{color:var(--ink-56);align-items:center;gap:10px;font-size:13px;display:flex}.cart-summary .reassure .item svg{color:var(--lime);flex-shrink:0}.promo-form{gap:8px;display:flex}.promo-form input{min-width:0;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink-24);border-radius:var(--r-md);background:var(--surface-1);color:var(--ink);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);outline:none;flex:1;padding:11px 14px;font-size:14px}.promo-form input::placeholder{text-transform:none;letter-spacing:0;font-family:var(--font-sans);color:var(--ink-40)}.promo-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.promo-form input[aria-invalid=true]{border-color:var(--pink)}.promo-applied{border-radius:var(--r-md);color:var(--success);background:#04785714;border:1px solid #04785759;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.promo-applied>span{color:var(--ink);flex:1}.promo-applied.is-idle{background:var(--surface-2);border-color:var(--ink-12);color:var(--ink-56)}.promo-note{color:var(--ink-56);margin:-8px 0 0;font-size:13px;line-height:1.5}.promo-note.is-error{color:var(--pink)}.link-button{cursor:pointer;font:inherit;color:var(--ink-56);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.link-button:hover{color:var(--ink)}.cart-totals{border-top:1px solid var(--ink-08);border-bottom:1px solid var(--ink-08);gap:10px;margin:0;padding:16px 0;display:grid}.cart-totals>div{color:var(--ink-72);justify-content:space-between;gap:16px;font-size:14px;display:flex}.cart-totals dt{margin:0}.cart-totals dd{font-family:var(--font-mono);color:var(--ink);margin:0}.cart-totals .is-saving dd,.cart-totals .is-saving dt{color:var(--success)}.cart-totals .grand{border-top:1px dashed var(--ink-12);color:var(--ink);padding-top:10px;font-size:16px;font-weight:600}.cart-totals .grand dd{color:var(--lime);font-size:20px}.header-cart{border-radius:var(--r-md);width:38px;height:38px;color:var(--ink-72);border-bottom:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.header-cart:hover{color:var(--ink);background:var(--brand-wash)}.header-cart .count{background:var(--brand);color:#fff;min-width:18px;height:18px;font-family:var(--font-mono);text-align:center;border-radius:9px;padding:0 5px;font-size:10.5px;font-weight:600;line-height:18px;position:absolute;top:2px;right:0}.promo-hint{color:var(--success);align-items:center;gap:8px;margin:-6px 0 0;font-size:13px;display:flex}.promo-hint strong{font-family:var(--font-mono);letter-spacing:.04em}.campaign{color:#fff;background:linear-gradient(90deg,#1d4ed8,#0e7490);font-size:13.5px}.campaign .container{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding-top:10px;padding-bottom:10px;display:flex}.campaign .msg{font-weight:600}.campaign .code{border-radius:var(--r-sm);color:#fff;font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;background:#ffffff1f;border:1px dashed #ffffffa6;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;display:inline-flex}.campaign .code:hover{background:#ffffff38}.campaign .ends{font-family:var(--font-mono);letter-spacing:.06em;color:#fffc;font-size:11.5px}.campaign .go{color:#fff;white-space:nowrap;border-bottom:1px solid #ffffff8c;align-items:center;gap:4px;font-weight:600;display:inline-flex}.campaign .go:hover{color:#fff;border-bottom-color:#fff}@media (max-width:960px){.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}}@media (max-width:560px){.cart-item{grid-template-columns:64px minmax(0,1fr) auto;gap:12px}.cart-item .thumb{width:64px}.cart-item .price{grid-column:2;justify-items:start}.cart-item>form{grid-area:1/3}.campaign .container{gap:6px 12px}}.buy-form.is-block{flex-direction:column;gap:10px;display:flex}.pack-choice{border:0;gap:10px;min-width:0;margin:0 0 4px;padding:0;display:grid}.pack-legend{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-56);margin-bottom:2px;padding:0;font-size:11px;font-weight:600}.pack{border:1px solid var(--ink-12);border-radius:var(--r-md);background:var(--surface-1);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast), box-shadow var(--dur-fast);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px 16px;display:grid}.pack:hover{border-color:var(--ink-24)}.pack input{width:16px;height:16px;accent-color:var(--brand);cursor:pointer;margin:3px 0 0}.pack:has(input:checked){border-color:var(--brand);background:var(--brand-wash);box-shadow:inset 0 0 0 1px var(--brand)}.pack:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}.pack-main{gap:3px;min-width:0;display:grid}.pack-name{color:var(--ink);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:14.5px;font-weight:600;display:flex}.pack-desc{color:var(--ink-56);font-size:12.5px;line-height:1.45}.pack-price{font-family:var(--font-mono);white-space:nowrap;justify-items:end;gap:1px;display:grid}.pack-price b{color:var(--ink);font-size:16px;font-weight:700}.pack-price s{color:var(--ink-40);font-size:12px}.pack-tag,.bundle-tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--success);white-space:nowrap;background:#04785714;border:1px solid #04785747;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.pack-why{border:1px dashed var(--ink-12);border-radius:var(--r-md);background:var(--bg);gap:10px;padding:12px 14px;display:grid}.pack-saving{color:var(--ink-72);gap:9px;margin:0;font-size:13px;line-height:1.5;display:flex}.pack-saving svg{color:var(--success);flex-shrink:0;margin-top:3px}.pack-saving strong{color:var(--success)}.pack-saving.is-plain svg{color:var(--brand)}.pack-includes{gap:5px;margin:0;padding:0;list-style:none;display:grid}.pack-includes li{color:var(--ink-56);align-items:flex-start;gap:8px;font-size:12.5px;display:flex}.pack-includes svg{color:var(--brand);flex-shrink:0;margin-top:2px}.btn-total{font-family:var(--font-mono);font-weight:600}.cart-install{border-radius:var(--r-md);color:var(--ink-72);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 14px;padding:10px 12px;font-size:13.5px;display:flex}.cart-install>svg{flex-shrink:0}.cart-install .what{flex:1;gap:2px;min-width:200px;display:grid}.cart-install .what strong{color:var(--ink);font-weight:600}.cart-install .what .why{color:var(--ink-56);font-size:12.5px}.cart-install .cost{font-family:var(--font-mono);white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.cart-install .cost s{color:var(--ink-40);font-size:12px}.cart-install .cost b{color:var(--ink);font-size:14.5px;font-weight:600}.cart-install.is-added{background:#0478570f;border:1px solid #04785738}.cart-install.is-added>svg{color:var(--success)}.cart-install.is-offer{border:1px dashed var(--ink-24);background:var(--bg)}.cart-install.is-offer>svg{color:var(--brand)}.cart-savings{border-radius:var(--r-md);color:var(--ink-72);background:#0478570f;border:1px solid #04785738;align-items:flex-start;gap:9px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5;display:flex}.cart-savings svg{color:var(--success);flex-shrink:0;margin-top:3px}.cart-savings strong{color:var(--success)}.account-head{background:var(--bg);border-bottom:1px solid var(--ink-12);padding-top:36px}.account-id{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.account-avatar{border-bottom:0;border-radius:999px;display:inline-flex}.account-avatar .avatar{box-shadow:0 0 0 4px var(--surface-1), 0 8px 20px -10px #0b0f1966}.account-avatar:hover .avatar{border-color:var(--brand-line)}.account-who{flex:1;min-width:220px}.account-who h1{letter-spacing:-.03em;margin:0;font-size:clamp(26px,3.2vw,34px);line-height:1.15}.account-who p{color:var(--ink-56);margin:6px 0 0;font-size:14.5px}.account-who .sep{margin:0 6px}.account-who .handle{font-family:var(--font-mono);font-size:13px}.account-stats{gap:28px;margin:0;display:flex}.account-stats div{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.account-stats dt{color:var(--ink-56);font-size:13px}.account-stats dd{letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:28px;font-weight:700;line-height:1.1}.account-tabs{scrollbar-width:none;gap:2px;margin-top:28px;display:flex;position:relative;overflow-x:auto}.account-tabs::-webkit-scrollbar{display:none}.account-tab{white-space:nowrap;color:var(--ink-72);border-radius:var(--r-md) var(--r-md) 0 0;border:1px solid #0000;border-bottom:0;align-items:center;gap:8px;padding:12px 16px;font-size:14.5px;display:inline-flex}.account-tab:hover{color:var(--ink);background:#0b0f190a}.account-tab.is-active{color:var(--ink);background:var(--void);border-color:var(--ink-12);box-shadow:0 1px 0 var(--void);font-weight:600}.account-tab:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.tab-badge{min-width:20px;height:20px;font-family:var(--font-mono);background:var(--ink-08);color:var(--ink-72);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.tab-badge.is-alert{background:var(--brand);color:#fff}.account-body{padding:36px 0 96px}.account-narrow{max-width:720px}.account-body .order-row .actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.account-body .order-row.history-row{grid-template-columns:1fr auto auto}.account-body .order-row.review-todo{grid-template-columns:1fr auto}.tab-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.tab-head h2{letter-spacing:-.02em;margin:0;font-size:clamp(22px,2.4vw,28px)}.tab-head p{color:var(--ink-56);max-width:62ch;margin:6px 0 0;font-size:15px}.tab-section{padding:0}.tab-section+.tab-section{margin-top:40px}.tab-section-title{letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 14px;font-size:16px;display:flex}.tab-section-title .count{font-family:var(--font-mono);background:var(--ink-08);color:var(--ink-72);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.dash-empty p{color:var(--ink-56);margin:0 0 12px;font-size:14.5px;line-height:1.55}.dash-empty.is-boxed{border:1px dashed var(--ink-24);border-radius:var(--r-lg);background:var(--bg);padding:22px}.dash-empty.is-boxed p:last-child{margin-bottom:0}.dash-empty.is-boxed p+.btn{margin-top:0}.dash-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dash-stat{color:inherit;background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);flex-direction:column;gap:6px;padding:18px 20px;display:flex}.dash-stat:hover{color:inherit;border-color:var(--brand-line);transform:translateY(-1px)}.dash-stat .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-56);align-items:center;gap:8px;font-size:10.5px;display:flex}.dash-stat .v{letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1.1}.dash-stat .d{color:var(--ink-56);font-size:13px}.dash-stat.is-alert{border-color:var(--brand-line);background:linear-gradient(180deg, var(--brand-wash), var(--surface-1))}.dash-stat.is-alert .v{color:var(--brand)}.dash-columns{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;margin-top:24px;display:grid}.dash-main,.dash-side{flex-direction:column;gap:24px;min-width:0;display:flex}.dash-panel{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:22px 24px}.dash-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.dash-panel h2{letter-spacing:-.01em;margin:0;font-size:17px}.dash-more{color:var(--teal);border-bottom:0;align-items:center;gap:4px;font-size:13.5px;display:inline-flex}.dash-more:hover{color:var(--teal-strong)}.all-clear{border-radius:var(--r-md);color:var(--success);background:#04785712;align-items:center;gap:10px;margin:0;padding:14px 16px;font-size:14.5px;display:flex}.todo-list,.mini-list,.session-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.todo-list li,.mini-list li,.session-list li{border-top:1px solid var(--ink-08)}.todo-list li:first-child,.mini-list li:first-child,.session-list li:first-child{border-top:0;padding-top:2px}.todo-list li:last-child,.mini-list li:last-child,.session-list li:last-child{padding-bottom:0}.todo-list li{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 0;display:grid}.todo-list .actions{flex-wrap:wrap;grid-column:4;justify-content:flex-end;align-items:center;gap:8px;display:flex}.todo-ico{border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.todo-ico.is-pay{background:var(--brand-wash);color:var(--brand)}.todo-ico.is-star{color:var(--amber);background:#d977061a}.todo-text,.mini-text,.session-text{flex-direction:column;gap:3px;min-width:0;display:flex}.todo-text .name,.mini-text .name,.session-text .name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.todo-text .ref,.mini-text .ref,.session-text .ref{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-56);font-size:11.5px}.mini-list li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 0;display:grid}.session-list li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.session-date{border:1px solid var(--ink-12);background:var(--bg);border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:54px;line-height:1;display:flex}.session-date .m{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-56);font-size:10px}.session-date .d{color:var(--ink);margin-top:4px;font-size:20px;font-weight:700}.session-date .d.tbc{font-size:13px}.session-date.is-set{border-color:var(--brand-line);background:var(--brand-wash)}.session-date.is-set .m{color:var(--brand)}.dash-side-cta{justify-content:center;width:100%;margin-top:14px}.dash-help h2{margin:0 0 6px}.dash-help p{color:var(--ink-56);margin:0 0 14px;font-size:14px;line-height:1.55}.item-thumb{aspect-ratio:4/3;border:1px solid var(--ink-08);border-radius:var(--r-md);background:var(--surface-2);flex-shrink:0;width:96px;display:block;overflow:hidden}.item-thumb.sm{width:64px}.item-thumb:hover{border-color:var(--brand-line)}.item-thumb img{object-fit:cover;width:100%;height:100%;display:block}.item-thumb .grad{width:100%;height:100%;color:var(--ink-56);justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.purchases-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:28px;display:grid}.purchase-search{display:flex}.purchase-search input{min-width:0;font-family:var(--font-sans);color:var(--ink);background:var(--surface-1);border:1px solid var(--ink-24);border-radius:var(--r-md) 0 0 var(--r-md);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);border-right:0;outline:none;flex:1;padding:13px 16px;font-size:15px}.purchase-search input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.purchase-search .btn{border-radius:0 var(--r-md) var(--r-md) 0;padding:0 22px}.purchase-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 14px;display:flex}.purchase-toolbar a{color:var(--teal);border-bottom-color:currentColor}.sort-group{border:1px solid var(--ink-24);border-radius:var(--r-md);background:var(--surface-1);display:inline-flex;overflow:hidden}.purchase-toolbar .sort-btn{color:var(--ink-72);border-bottom:0;border-left:1px solid var(--ink-12);padding:8px 14px;font-size:13.5px;font-weight:600}.purchase-toolbar .sort-btn:first-child{border-left:0}.purchase-toolbar .sort-btn:hover{background:var(--bg);color:var(--ink)}.purchase-toolbar .sort-btn.is-active{background:var(--ink);color:#fff}.purchase-list{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);margin:0;padding:0;list-style:none}.purchase-row{border-top:1px solid var(--ink-08);grid-template-columns:120px minmax(0,1fr) auto;align-items:start;gap:20px;padding:20px;display:grid}.purchase-row:first-child{border-top:0}.purchase-row .item-thumb{width:120px}.purchase-info h3{letter-spacing:-.01em;margin:0;font-size:17px;line-height:1.3}.purchase-info h3 a{color:var(--ink);border-bottom:0}.purchase-info h3 a:hover{color:var(--brand)}.purchase-meta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-56);flex-wrap:wrap;gap:4px 12px;margin:6px 0 0;font-size:11.5px;display:flex}.purchase-meta .licence-type{font-family:var(--font-sans);letter-spacing:0;color:var(--teal);font-size:13px;font-weight:600}.purchase-info>.status-pill{margin-top:10px;display:inline-block}.purchase-key{background:var(--bg);border:1px solid var(--ink-08);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:6px 6px 6px 12px;display:flex}.purchase-key .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-56);font-size:10px}.purchase-key code{min-width:0;font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink);word-break:break-all;background:0 0;flex:1;padding:0;font-size:13.5px}.purchase-sub{color:var(--ink-56);flex-wrap:wrap;align-items:center;gap:4px 6px;margin:8px 0 0;font-size:13px;display:flex}.purchase-sub strong{color:var(--ink);font-weight:600}.purchase-install{color:var(--ink-56);align-items:flex-start;gap:7px;margin:8px 0 0;font-size:13px;line-height:1.5;display:flex}.purchase-install svg{color:var(--brand);flex-shrink:0;margin-top:2px}.purchase-install strong{color:var(--ink);font-weight:600}.purchase-install.is-done svg{color:var(--success)}.purchase-actions>form>.btn{justify-content:center;width:100%}.purchase-actions{flex-direction:column;align-items:stretch;gap:10px;width:190px;display:flex}.purchase-actions>.btn{justify-content:center}.purchase-actions>.small{text-align:center}.dl-menu{position:relative}.dl-menu>summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;width:100%;list-style:none}.dl-menu>summary::-webkit-details-marker{display:none}.dl-menu-list{z-index:30;background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-md);flex-direction:column;min-width:270px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 44px -14px #0b0f1952}.dl-menu-list a{color:var(--ink);border-bottom:0;border-radius:6px;padding:10px 12px;font-size:14px}.dl-menu-list a:hover,.dl-menu-list a:focus-visible{background:var(--brand-wash);color:var(--brand);outline:none}.purchases-side{flex-direction:column;gap:14px;display:flex;position:sticky;top:96px}.side-note{background:var(--bg);border:1px solid var(--ink-12);border-radius:var(--r-lg);padding:18px 20px}.side-note h3{letter-spacing:-.01em;margin:0 0 6px;font-size:15px}.side-note p{color:var(--ink-72);margin:0;font-size:13.5px;line-height:1.6}.side-note a{color:var(--teal);border-bottom-color:currentColor}.side-note code{font-size:12.5px}.side-note.is-dark{background:var(--ink);border-color:var(--ink)}.side-note.is-dark h3{color:#fff}.side-note.is-dark p{color:#fffc}.rate-box{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-md);flex-direction:column;align-items:center;gap:4px;padding:8px 12px;display:flex}.rate-stars{gap:2px;line-height:0;display:inline-flex}.rate-stars a,.rate-stars span{color:var(--ink-24);border-bottom:0;padding:1px;line-height:0;display:inline-flex}.rate-stars .on,.rate-stars:not(.is-static):hover a,.rate-stars:not(.is-static):focus-within a{color:var(--amber)}.rate-stars:not(.is-static) a:hover~a,.rate-stars:not(.is-static) a:focus~a{color:var(--ink-24)}.rate-stars a:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-radius:3px}.rate-note{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-56);white-space:nowrap;font-size:11px}.booking-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.booking-card{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:20px;padding:20px 22px;display:grid}.booking-card .session-date{width:58px;height:62px}.booking-card .session-date .d{font-size:24px}.booking-card .session-date .d.tbc{font-size:13px}.booking-info h4{letter-spacing:-.01em;margin:0;font-size:17px}.booking-info .ref{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-56);margin:4px 0 0;font-size:11.5px}.booking-meta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 20px;margin:14px 0 0;display:grid}.booking-meta dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-56);margin-bottom:4px;font-size:10px}.booking-meta dd{color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.booking-actions{flex-direction:column;align-items:stretch;gap:8px;min-width:150px;display:flex}.booking-actions>.btn{justify-content:center}.booking-actions>.small{text-align:center;max-width:170px}.my-reviews{gap:14px;margin:0;padding:0;list-style:none;display:grid}.my-review{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:18px 22px}.my-review-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.my-review-top .status-pill{margin-left:auto}.my-review-reason{color:var(--ink);font-size:14px;font-weight:600}.my-review-subject{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-56);margin:6px 0 0;font-size:11.5px}.my-review-title{color:var(--ink);margin:12px 0 0;font-weight:600}.my-review-quote{color:var(--ink-72);white-space:pre-line;margin:8px 0 0;font-size:14.5px;line-height:1.6}.review-page{padding:56px 0 96px}.review-sheet{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-xl);box-shadow:var(--shadow-card)}.review-dialog{border-radius:var(--r-xl);background:var(--surface-1);width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border:0;padding:0;overflow:auto;box-shadow:0 30px 80px -20px #0b0f1980}.review-dialog::backdrop{background:#0b0f198c}.review-dialog[open]{animation:review-in var(--dur-base) var(--ease-out)}@keyframes review-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.review-dialog[open]{animation:none}}.review-sheet-head{border-bottom:1px solid var(--ink-08);justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.review-sheet-head h1,.review-sheet-head h2{letter-spacing:-.02em;margin:0;font-size:22px}.review-close{border-radius:var(--r-md);width:36px;height:36px;color:var(--ink-56);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.review-close:hover{background:var(--surface-2);color:var(--ink)}.review-sheet-body{flex-direction:column;gap:18px;padding:20px 24px;display:flex}.review-sheet-body .flash{margin:0}.review-item{color:var(--ink-72);margin:0;font-size:15px}.review-item strong{color:var(--ink)}.review-hint{border-radius:var(--r-md);color:#713f12;background:#fef9c3;border:1px solid #fde68a;margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.review-sheet-body .field label,.review-stars legend{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink);font-size:14px;font-weight:600}.review-stars{border:0;flex-wrap:wrap;align-items:center;gap:14px;margin:0;padding:0;display:flex}.review-stars legend{float:left;padding:0}.review-stars .star-input label{padding:1px}.review-comment-label{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.review-count{font-family:var(--font-mono);color:var(--ink-56);font-size:12px;font-weight:600}.review-count.is-low{color:var(--pink)}.review-sheet-body textarea{resize:vertical;min-height:140px}.review-byline{color:var(--ink-56);margin:-6px 0 0;font-size:13px}.review-byline a{color:var(--teal);border-bottom-color:currentColor}.review-sheet-foot{border-top:1px solid var(--ink-08);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 24px 20px;display:flex}.review-sheet-foot p{min-width:220px;color:var(--ink-56);flex:1;margin:0;font-size:13px;line-height:1.5}.review-sheet-foot p strong{color:var(--ink)}.review-sheet-actions{gap:10px;margin-left:auto;display:flex}.review-card .review-rating{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-card .review-reason{color:var(--ink-72);font-size:12.5px;font-weight:600}@media (max-width:1100px){.dash-columns,.purchases-layout{grid-template-columns:1fr}.purchases-side{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid;position:static}.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.account-head{padding-top:24px}.account-id{gap:14px}.account-stats{order:3;gap:24px;width:100%}.account-stats div{align-items:flex-start}.account-stats dd{font-size:22px}.account-admin{order:4}.account-tabs{margin-top:18px}.account-tab{padding:10px 12px;font-size:14px}.account-body{padding:24px 0 64px}.dash-panel{padding:18px 16px}.todo-list li{grid-template-columns:auto minmax(0,1fr);gap:10px 12px}.todo-list li>.status-pill{grid-column:2;justify-self:start}.todo-list .actions{grid-column:1/-1;justify-content:flex-start}.purchase-row{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:16px}.purchase-row .item-thumb{width:72px}.purchase-actions{flex-flow:wrap;grid-column:1/-1;align-items:center;width:auto}.dl-menu-list{left:0;right:auto}.purchase-search .btn{padding:0 14px}.purchase-key .k{flex:1;order:1}.purchase-key .btn{order:2}.purchase-key code{letter-spacing:.04em;flex-basis:100%;order:3;padding:0 0 4px;font-size:12.5px}.booking-card{grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px}.booking-actions{flex-flow:wrap;grid-column:1/-1;align-items:center;min-width:0}.account-body .order-row .actions{justify-content:flex-start}.account-body .order-row.history-row,.account-body .order-row.review-todo{grid-template-columns:1fr}.account-body .order-row.history-row>.status-pill{justify-self:start}.review-page{padding:24px 0 64px}.review-sheet-head,.review-sheet-body,.review-sheet-foot{padding-left:18px;padding-right:18px}}@media (max-width:480px){.dash-stats{gap:10px}.dash-stat{padding:14px}.dash-stat .v{font-size:24px}.dash-stat .d{display:none}.purchase-search input{font-size:16px}}.product-card{--tint:var(--brand);background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-xl);height:100%;box-shadow:var(--shadow-card);transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:relative}.product-card:hover{border-color:var(--ink-24);box-shadow:var(--shadow-pop);transform:translateY(-4px)}.pc-media{aspect-ratio:4/3;border-radius:calc(var(--r-xl) - 6px);background:var(--surface-2);isolation:isolate;margin:8px 8px 0;position:relative;overflow:hidden}.pc-media .cover{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out), filter var(--dur-slow) var(--ease-out);position:absolute;inset:0}.pc-media[data-fit=float]{justify-content:center;align-items:center;padding:16px;display:flex}.pc-media .backdrop{object-fit:cover;filter:blur(20px)saturate(1.25);opacity:.6;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.2)}.pc-media[data-fit=float] .cover{z-index:1;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:100%;position:relative;inset:auto;box-shadow:0 14px 28px -12px #0b0f1966}.pc-art{transition:transform var(--dur-slow) var(--ease-out), filter var(--dur-slow) var(--ease-out);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pc-art:before{content:"";background-image:linear-gradient(90deg,#0b0f190d 1px,#0000 1px),linear-gradient(#0b0f190d 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70%,#000 30%,#0000 100%);mask-image:radial-gradient(70% 70%,#000 30%,#0000 100%)}.pc-app{background:var(--surface-1);width:76px;height:76px;color:var(--tint);letter-spacing:-.04em;transition:transform var(--dur-slow) var(--ease-spring);border-radius:22px;justify-content:center;align-items:center;font-size:27px;font-weight:700;display:flex;position:relative;box-shadow:0 20px 36px -18px #0b0f1961,0 0 0 1px #0b0f190f}.product-card:hover .pc-app{transform:translateY(-4px)rotate(-4deg)}.pc-media:after{content:"";z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;transition:opacity var(--dur-base) var(--ease-out);background:#0b0f194d;position:absolute;inset:0}.pc-flags{z-index:3;flex-wrap:wrap;gap:6px;max-width:calc(100% - 84px);display:flex;position:absolute;top:12px;left:12px}.pc-flag,.pc-deal{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-pill);align-items:center;gap:5px;padding:6px 9px;font-size:10.5px;font-weight:600;line-height:1;display:inline-flex}.pc-flag{color:var(--ink);background:#fffffff0;box-shadow:0 1px 2px #0b0f191a}.pc-flag.is-featured{background:var(--ink);color:#fff}.pc-flag.is-featured svg{color:var(--marker)}.pc-deal{z-index:3;background:var(--marker);color:var(--ink);letter-spacing:.04em;font-weight:700;position:absolute;top:12px;right:12px}.pc-body{flex-direction:column;flex:1;gap:9px;padding:16px 18px 18px;display:flex}.pc-chips{flex-wrap:wrap;gap:6px;display:flex}.pc-chip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink-12);color:var(--ink-56);border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:10.5px;line-height:1.4;display:inline-flex}.pc-chip.is-category{color:var(--tint);border-color:color-mix(in srgb, var(--tint) 28%, transparent);background:color-mix(in srgb, var(--tint) 7%, white)}.pc-title{font-family:var(--font-sans);letter-spacing:-.015em;justify-content:space-between;align-items:flex-start;gap:10px;margin:2px 0 0;font-size:16.5px;font-weight:650;line-height:1.35;display:flex}.pc-link{color:var(--ink);-webkit-line-clamp:2;line-clamp:2;border-bottom:0;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pc-link:hover{color:var(--ink);border-bottom:0}.pc-link:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.pc-link:focus-visible{outline:none}.product-card:has(.pc-link:focus-visible){outline:2px solid var(--brand);outline-offset:3px}.pc-kicker{color:var(--ink-56);font-weight:500}.pc-arrow{border-radius:var(--r-pill);border:1px solid var(--ink-12);width:28px;height:28px;color:var(--ink-40);transition:all var(--dur-base) var(--ease-out);flex:none;justify-content:center;align-items:center;margin-top:-3px;display:flex}.product-card:hover .pc-arrow{background:var(--ink);border-color:var(--ink);color:#fff;transform:rotate(45deg)}.pc-sub{color:var(--ink-56);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.pc-foot{border-top:1px solid var(--ink-08);justify-content:space-between;align-items:baseline;gap:12px;margin-top:auto;padding-top:14px;display:flex}.pc-price{white-space:nowrap;align-items:baseline;gap:7px;display:inline-flex}.pc-price b{letter-spacing:-.02em;color:var(--ink);font-size:19px;font-weight:700}.pc-price s{color:var(--ink-40);font-size:13px}.pc-result{font-family:var(--font-mono);color:var(--success);font-size:12px;font-weight:600}.pc-meta{white-space:nowrap;font-family:var(--font-mono);color:var(--ink-56);align-items:center;gap:8px;font-size:11.5px;display:inline-flex}.pc-meta>span+span:before{content:"·";color:var(--ink-24);margin-right:8px}.pc-rating{color:var(--ink-72);align-items:center;gap:4px;display:inline-flex}.pc-rating svg{color:var(--amber)}.pc-quick{z-index:4;aspect-ratio:4/3;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;top:8px;left:8px;right:8px;transform:translateY(8px)}.pc-quick form{margin:0}.pc-quick .btn{border-radius:var(--r-pill);justify-content:center;min-width:164px}.pc-quick .btn-ghost{background:#fffffff5;border-color:#0000}.pc-quick .btn-ghost:hover{background:#fff}.product-card:hover .pc-quick,.product-card:focus-within .pc-quick{opacity:1;transform:none}.product-card:hover .pc-quick>*,.product-card:focus-within .pc-quick>*{pointer-events:auto}.product-card:not(.is-case):hover .pc-media:after,.product-card:not(.is-case):focus-within .pc-media:after{opacity:1}.product-card:not(.is-case):hover .pc-media .cover,.product-card:not(.is-case):hover .pc-art{transform:scale(1.04)}.product-card.is-case:hover .pc-media .cover{transform:scale(1.03)}@media (hover:none){.pc-quick{display:none}.product-card:not(.is-case):focus-within .pc-media:after{opacity:0}}.cat-rail{z-index:3;text-align:left;grid-template-columns:repeat(auto-fit,minmax(188px,1fr));gap:12px;margin-top:72px;display:grid;position:relative}.cat-rail+.readout{margin-top:48px}.cat-tile{--tint:var(--brand);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--ink-12);border-radius:var(--r-xl);box-shadow:var(--shadow-card);color:var(--ink);transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);background:#ffffffe0;flex-direction:column;gap:6px;padding:18px 18px 16px;display:flex}.cat-tile:hover{color:var(--ink);border-color:color-mix(in srgb, var(--tint) 45%, transparent);box-shadow:0 2px 4px #0b0f190d, 0 24px 40px -24px color-mix(in srgb, var(--tint) 60%, transparent);transform:translateY(-3px)}.cat-ico{width:42px;height:42px;color:var(--tint);background:color-mix(in srgb, var(--tint) 10%, white);border:1px solid color-mix(in srgb, var(--tint) 20%, transparent);transition:transform var(--dur-base) var(--ease-spring);border-radius:12px;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.cat-tile:hover .cat-ico{transform:rotate(-6deg)scale(1.06)}.cat-name{letter-spacing:-.01em;font-size:15.5px;font-weight:650}.cat-tag{color:var(--ink-56);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.cat-count{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--tint);align-items:center;gap:6px;margin-top:auto;padding-top:10px;font-size:11px;display:inline-flex}.cat-count svg{transition:transform var(--dur-base) var(--ease-out)}.cat-tile:hover .cat-count svg{transform:translate(3px)}.hero-tile .face{overflow:hidden}.hero-tile .face img{object-fit:cover;width:100%;height:100%;display:block}.spotlight-section{padding-bottom:48px}.spotlight{flex-direction:column;gap:32px;display:flex}.spot-card{--tint:var(--brand);top:calc(var(--header-h) + 24px + var(--i,0) * 16px);background:var(--surface-1);border:1px solid var(--ink-12);border-radius:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;padding:24px;display:grid;position:sticky;box-shadow:0 1px 2px #0b0f190a,0 -16px 40px -28px #0b0f1938,0 32px 64px -36px #0b0f1947}.spot-copy{flex-direction:column;min-width:0;padding:16px 0 8px 16px;display:flex}.spot-eyebrow{border-radius:var(--r-pill);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tint);background:color-mix(in srgb, var(--tint) 8%, white);border:1px solid color-mix(in srgb, var(--tint) 22%, transparent);align-self:flex-start;align-items:center;gap:7px;padding:6px 12px;font-size:11px;display:inline-flex}.spot-eyebrow:hover{color:var(--tint);border-color:color-mix(in srgb, var(--tint) 45%, transparent)}.spot-title{letter-spacing:-.035em;margin:20px 0 0;font-size:clamp(26px,2.7vw,38px);font-weight:700;line-height:1.08}.spot-desc{max-width:52ch;color:var(--ink-72);margin:14px 0 0;font-size:15.5px;line-height:1.6}.spot-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-56);margin-top:24px;font-size:10.5px}.spot-copy .spot-included{flex-wrap:wrap;gap:8px;margin:10px 0 28px;padding:0;list-style:none;display:flex}.spot-included li{border-radius:var(--r-pill);color:var(--ink-72);background:var(--bg);border:1px solid var(--ink-08);align-items:center;gap:6px;padding:6px 12px 6px 10px;font-size:13px;font-weight:500;display:inline-flex}.spot-included svg{color:var(--tint)}.spot-foot{border-top:1px solid var(--ink-08);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:20px;display:flex}.spot-mark{align-items:center;gap:12px;min-width:0;display:flex}.spot-mark .app{letter-spacing:-.03em;width:44px;height:44px;color:var(--tint);border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex;box-shadow:inset 0 0 0 1px #0b0f190f}.spot-mark .who{flex-direction:column;min-width:0;line-height:1.3;display:flex}.spot-mark b{font-size:15px}.spot-mark small{font-family:var(--font-mono);color:var(--ink-56);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.spot-price{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.spot-price b{letter-spacing:-.03em;font-size:28px;font-weight:700}.spot-price s{color:var(--ink-40);font-size:15px}.spot-price .deal{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--r-pill);background:var(--marker);color:var(--ink);align-self:center;padding:4px 8px;font-size:11px;font-weight:700}.spot-cta{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.spot-media{background:var(--surface-2);border-bottom:0;border-radius:20px;min-height:380px;display:block;position:relative;overflow:hidden}.spot-media:hover{border-bottom:0}.spot-media .cover{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out);position:absolute;inset:0}.spot-card:hover .spot-media .cover{transform:scale(1.03)}.spot-media[data-fit=float]{justify-content:center;align-items:center;padding:28px;display:flex}.spot-media .backdrop{object-fit:cover;filter:blur(28px)saturate(1.3);opacity:.7;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.2)}.spot-media[data-fit=float] .cover{z-index:1;border-radius:14px;width:auto;max-width:100%;height:auto;max-height:440px;position:relative;inset:auto;box-shadow:0 24px 48px -20px #0b0f1973}.spot-art{justify-content:center;align-items:center;padding:40px;display:flex;position:absolute;inset:0}.spot-art:before{content:"";background-image:linear-gradient(90deg,#0b0f190d 1px,#0000 1px),linear-gradient(#0b0f190d 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(65% 65%,#000 20%,#0000 100%);mask-image:radial-gradient(65% 65%,#000 20%,#0000 100%)}.spot-art .window{aspect-ratio:16/11;width:min(78%,440px);transition:transform .7s var(--ease-out);background:#ffffffeb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:relative;transform:rotate(-2deg);box-shadow:0 32px 64px -30px #0b0f1980,0 0 0 1px #0b0f190f}.spot-card:hover .spot-art .window{transform:rotate(0)translateY(-6px)}.spot-art .bar{gap:6px;display:flex;position:absolute;top:12px;left:14px}.spot-art .bar i{background:var(--ink-12);border-radius:50%;width:9px;height:9px}.spot-art .app{letter-spacing:-.04em;color:#fff;background:var(--tint);width:84px;height:84px;box-shadow:0 18px 32px -14px var(--tint);border-radius:24px;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.spot-art .lines{flex-direction:column;align-items:center;gap:8px;width:46%;display:flex}.spot-art .lines i{background:var(--ink-08);border-radius:4px;width:100%;height:8px}.spot-art .lines i:nth-child(2){width:78%}.spot-art .lines i:nth-child(3){width:52%}@media (max-height:780px){.spot-card{position:relative;top:auto}}@media (max-width:980px){.spot-card{border-radius:22px;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px;position:relative;top:auto}.spot-copy{padding:16px 12px 12px}.spot-media{aspect-ratio:16/10;border-radius:14px;order:-1;min-height:0}.spot-art{padding:24px}}.shelf-section{padding-top:64px}.shelf-tabs{display:none}.js .shelf-tabs{scrollbar-width:none;gap:8px;margin-bottom:28px;padding:2px 2px 6px;display:flex;overflow-x:auto}.js .shelf-tabs::-webkit-scrollbar{display:none}.shelf-tabs [role=tab]{border-radius:var(--r-pill);border:1px solid var(--ink-12);background:var(--surface-1);font-family:var(--font-sans);color:var(--ink-72);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex:none;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:500;display:inline-flex}.shelf-tabs [role=tab] svg{color:var(--tint,var(--ink-56))}.shelf-tabs [role=tab] .n{font-family:var(--font-mono);color:var(--ink-56);border-radius:var(--r-pill);background:var(--bg);padding:1px 7px;font-size:11px}.shelf-tabs [role=tab]:hover{border-color:var(--ink-40);color:var(--ink)}.shelf-tabs [role=tab][aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}.shelf-tabs [role=tab][aria-selected=true] svg{color:#fff}.shelf-tabs [role=tab][aria-selected=true] .n{color:#ffffffd9;background:#ffffff29}.shelf-tabs [role=tab]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.shelf-heading{margin:48px 0 18px;font-size:24px}.shelf-panel:first-of-type .shelf-heading{margin-top:0}.js .shelf-heading{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.js .shelf-panel:not(.is-active){display:none}.js .shelf-panel.is-active{animation:shelf-in var(--dur-slow) var(--ease-out)}@keyframes shelf-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.shelf-more{color:var(--brand);border-bottom:0;align-items:center;gap:8px;margin-top:28px;font-size:14.5px;font-weight:600;display:inline-flex}.shelf-more:hover{color:var(--brand-strong);border-bottom:0}.shelf-more svg{transition:transform var(--dur-base) var(--ease-out)}.shelf-more:hover svg{transform:translate(3px)}.process.three{grid-template-columns:repeat(3,minmax(0,1fr))}.custom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:64px;display:grid}.custom-copy .lead{max-width:48ch;margin-top:20px}.custom-cta{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.custom-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.custom-row{background:var(--surface-1);border:1px solid var(--ink-12);border-radius:var(--r-lg);box-shadow:var(--shadow-card);color:var(--ink);transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:14px 18px 14px 14px;display:grid}.custom-row:hover{color:var(--ink);border-color:var(--brand-line);transform:translate(4px)}.custom-row .service-icon{width:44px;height:44px}.custom-row .what{flex-direction:column;gap:2px;min-width:0;display:flex}.custom-row .what b{letter-spacing:-.01em;font-size:15px;font-weight:600}.custom-row .what small{color:var(--ink-56);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.custom-row .from{font-family:var(--font-mono);white-space:nowrap;font-size:14px;font-weight:600}.custom-row .from small{color:var(--ink-56);margin-right:3px;font-size:11px;font-weight:400}.custom-row .go{color:var(--ink-40);transition:color var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);display:flex}.custom-row:hover .go{color:var(--brand);transform:translate(2px)}.catalog-head{padding-bottom:40px}.catalog-title-ico{vertical-align:-4px;width:58px;height:58px;color:var(--tint);background:color-mix(in srgb, var(--tint) 10%, white);border:1px solid color-mix(in srgb, var(--tint) 22%, transparent);border-radius:16px;justify-content:center;align-items:center;margin-right:18px;display:inline-flex}.catalog-search{background:var(--surface-1);border:1px solid var(--ink-24);border-radius:var(--r-pill);max-width:640px;box-shadow:var(--shadow-card);color:var(--ink-40);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);align-items:center;gap:10px;margin-top:28px;padding:6px 6px 6px 18px;display:flex}.catalog-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-wash)}.catalog-search svg{flex:none}.catalog-search input{min-width:0;font-family:var(--font-sans);color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:9px 0;font-size:15px}.catalog-search .btn{border-radius:var(--r-pill)}.catalog{grid-template-columns:236px minmax(0,1fr);align-items:start;gap:40px;display:grid}.catalog-nav{top:calc(var(--header-h) + 24px);flex-direction:column;gap:2px;display:flex;position:sticky}.catalog-nav-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-56);margin-bottom:8px;padding:0 12px;font-size:10.5px}.catalog-nav-label:not(:first-child){margin-top:24px}.catalog-link{color:var(--ink-72);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);border-bottom:0;border-radius:10px;align-items:center;gap:10px;padding:8px 12px 8px 8px;font-size:14px;display:flex}.catalog-link .ico{width:30px;height:30px;color:var(--tint,var(--ink-56));background:color-mix(in srgb, var(--tint,var(--ink)) 8%, white);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.catalog-link .n{font-family:var(--font-mono);color:var(--ink-56);margin-left:auto;font-size:11.5px}.catalog-link:hover{background:var(--bg);color:var(--ink);border-bottom:0}.catalog-link.active{background:var(--ink);color:#fff}.catalog-link.active .ico{color:#fff;background:#ffffff24}.catalog-link.active .n{color:#ffffffbf}.catalog-nav-note{color:var(--ink-56);background:var(--bg);border:1px solid var(--ink-08);border-radius:var(--r-lg);flex-direction:column;gap:4px;margin-top:28px;padding:16px;font-size:13px;line-height:1.5;display:flex}.catalog-nav-note b{color:var(--ink);font-size:13.5px}.catalog-nav-note a{color:var(--brand);border-bottom:0;align-items:center;gap:6px;margin-top:6px;font-weight:600;display:inline-flex}.catalog-bar{border-bottom:1px solid var(--ink-08);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;display:flex}.catalog-count{color:var(--ink-56);flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:14px;display:flex}.catalog-count b{color:var(--ink)}.catalog-clear{border-radius:var(--r-pill);color:var(--ink-72);background:var(--bg);border:1px solid var(--ink-12);align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;display:inline-flex}.catalog-clear:hover{color:var(--ink);border-color:var(--ink-40)}.catalog-sort{align-items:center;gap:10px;display:flex}.catalog-sort label{color:var(--ink-56);font-size:13px}.catalog-sort select{border:1px solid var(--ink-24);background:var(--surface-1);font-family:var(--font-sans);color:var(--ink);cursor:pointer;border-radius:10px;padding:8px 12px;font-size:14px}.catalog-sort select:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.js [data-autosubmit-fallback]{display:none}.catalog .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog .empty-state{grid-column:1/-1}.nav{align-items:center}.nav-menu{align-items:center;gap:2px;display:flex;position:relative}.nav-caret{width:22px;height:22px;color:var(--ink-56);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.nav-caret svg{transition:transform var(--dur-base) var(--ease-out)}.nav-caret:hover,.nav-menu:hover .nav-caret{color:var(--ink)}.nav-caret:hover{background:var(--bg)}.nav-caret:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.nav-menu.is-open .nav-caret svg{transform:rotate(180deg)}.nav-panel{z-index:60;background:var(--surface-1);border:1px solid var(--ink-12);width:min(640px,100vw - 48px);box-shadow:var(--shadow-pop);opacity:0;visibility:hidden;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out), visibility 0s linear .18s;border-radius:18px;padding:10px;position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%,6px)}.nav-panel:before{content:"";height:18px;position:absolute;top:-18px;left:0;right:0}.nav-menu.is-open .nav-panel,.nav-menu:not(.is-dismissed):hover .nav-panel{opacity:1;visibility:visible;transition-delay:0s;transform:translate(-50%)}.nav-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid}.nav-cat{--tint:var(--brand);color:var(--ink);transition:background var(--dur-fast) var(--ease-out);border-bottom:0;border-radius:12px;align-items:flex-start;gap:12px;padding:12px;display:flex}.nav-cat:hover{background:var(--bg);color:var(--ink);border-bottom:0}.nav-cat .ico{width:38px;height:38px;color:var(--tint);background:color-mix(in srgb, var(--tint) 10%, white);border:1px solid color-mix(in srgb, var(--tint) 18%, transparent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.nav-cat .txt{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-cat b{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.nav-cat .n{font-family:var(--font-mono);color:var(--ink-56);font-size:10.5px;font-weight:500}.nav-cat small{color:var(--ink-56);font-size:12.5px;line-height:1.4}.nav-panel-foot{border-top:1px solid var(--ink-08);justify-content:space-between;align-items:center;margin-top:6px;padding:12px 14px 6px;font-size:13.5px;display:flex}.nav-panel-foot a{color:var(--brand);border-bottom:0;align-items:center;gap:6px;font-weight:600;display:inline-flex}.nav-panel-foot a:hover{color:var(--brand-strong);border-bottom:0}.nav-panel-foot a.muted{color:var(--ink-56);font-weight:500}.nav-panel-foot a.muted:hover{color:var(--ink)}.mobile-nav .mobile-sub{border-bottom:1px solid var(--ink-08);flex-wrap:wrap;gap:6px;padding:12px 0 14px;display:flex}.mobile-nav .mobile-sub a{border:1px solid var(--ink-12);border-radius:var(--r-pill);letter-spacing:0;color:var(--ink-72);padding:7px 12px;font-size:14px;font-weight:500}@media (max-width:1180px){.catalog .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.process.three{grid-template-columns:minmax(0,1fr)}.custom-grid{grid-template-columns:minmax(0,1fr);gap:40px}}@media (max-width:900px){.cat-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:44px}.cat-rail+.readout{margin-top:40px}.cat-tile{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 12px;padding:12px;display:grid}.cat-tile:last-child:nth-child(odd){grid-column:1/-1}.cat-ico{grid-row:span 2;width:38px;height:38px;margin:0}.cat-name{font-size:14.5px;line-height:1.25}.cat-tag{display:none}.cat-count{margin-top:0;padding-top:0;font-size:10.5px}.catalog{grid-template-columns:minmax(0,1fr);gap:20px}.catalog-nav{scrollbar-width:none;flex-direction:row;gap:8px;padding-bottom:4px;position:static;overflow-x:auto}.catalog-nav::-webkit-scrollbar{display:none}.catalog-nav-label,.catalog-nav-note{display:none}.catalog-link{border:1px solid var(--ink-12);border-radius:var(--r-pill);background:var(--surface-1);flex:none;padding:5px 12px 5px 5px}.catalog-link .ico{border-radius:var(--r-pill);width:26px;height:26px}.catalog-link.active{border-color:var(--ink)}}@media (max-width:640px){.catalog .project-grid{grid-template-columns:minmax(0,1fr)}.catalog-title-ico{width:46px;height:46px;margin-right:12px}.catalog-search{padding-left:14px}.custom-row{grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.custom-row .go{display:none}.spot-foot{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.product-card:hover,.cat-tile:hover,.custom-row:hover{transform:none}.js .shelf-panel.is-active{animation:none}}
