:root{--color-primary:#3a342c;--color-on-primary:#fff;--color-secondary:#5f5343;--color-accent:#4a5a9e;--color-accent-strong:#3e4c86;--color-accent-deep:#33406f;--color-accent-light:#dde3f5;--color-accent-wash:#f2f5fc;--color-accent2:#9b4145;--color-accent2-strong:#8f3438;--color-accent2-light:#eac5c1;--color-accent2-wash:#f8e9e6;--color-background:#fbede6;--color-surface:#f3dcd1;--color-surface-hover:#eed0bf;--color-foreground:#2c2721;--color-muted:#c9ae9d;--color-muted-foreground:#6b5f50;--color-border:#e3cba9;--color-border-strong:#c7a16b;--color-destructive:#b4483c;--color-success:#5c8a63;--color-success-strong:#3f6b48;--color-success-wash:#f0f6f1;--color-ring:#4a5a9e;--font-display:"Rubik", sans-serif;--font-body:"Nunito Sans", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-hero:clamp(2.5rem, 6vw, 4.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--max-width:1200px;--border-radius-sm:6px;--border-radius-md:10px;--border-radius-lg:16px;--border-radius-full:9999px;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--shadow-sm:0 1px 2px #6b3b390f;--shadow-md:0 4px 12px #6b3b3914;--shadow-lg:0 8px 24px #6b3b391a;--shadow-xl:0 16px 48px #6b3b391f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{font-family:var(--font-body);font-size:var(--font-size-base);color:var(--color-foreground);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none}ul,ol{list-style:none}:where(a,button,input,[tabindex]):focus-visible{outline:2px solid var(--color-ring);outline-offset:2px;border-radius:var(--border-radius-sm)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--space-2);left:var(--space-2);z-index:100;background-color:var(--color-primary);color:var(--color-on-primary);font-family:var(--font-display);font-size:var(--font-size-sm);padding:var(--space-3) var(--space-6);border-radius:var(--border-radius-sm);transition:transform var(--transition-fast);font-weight:600;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.container{width:100%;max-width:var(--max-width);padding:0 var(--space-6);margin:0 auto}.section{padding:var(--space-20) 0}.section-header{max-width:640px;margin:0 auto var(--space-12);text-align:center}.section-title{font-family:var(--font-display);font-size:var(--font-size-3xl);color:var(--color-primary);letter-spacing:-.02em;text-wrap:balance;margin-bottom:var(--space-4);font-weight:700;line-height:1.2}.section-subtitle{font-size:var(--font-size-lg);color:var(--color-muted-foreground);text-wrap:pretty;max-width:560px;margin-inline:auto;line-height:1.6}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:600;font-size:var(--font-size-sm);letter-spacing:.04em;text-transform:uppercase;padding:var(--space-3) var(--space-8);border-radius:var(--border-radius-sm);min-height:44px;transition:background-color var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);white-space:nowrap;display:inline-flex}.btn-lg{font-size:var(--font-size-base);padding:var(--space-4) var(--space-10);min-height:52px}.btn:disabled,.btn.is-disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background-color:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-foreground);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{color:var(--color-primary);border:1.5px solid var(--color-border-strong);background-color:#0000}.btn-secondary:hover:not(:disabled){background-color:var(--color-surface);border-color:var(--color-primary)}.btn-accent{background-color:var(--color-accent-strong);color:var(--color-on-primary)}.btn-accent:hover:not(:disabled){background-color:var(--color-accent-deep);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-accent:active:not(:disabled){transform:translateY(0)}.announcement-bar{background-color:var(--color-primary);color:var(--color-on-primary);text-align:center;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);letter-spacing:.02em;font-weight:500}.announcement-bar span{color:var(--color-accent2-light);font-weight:700}.navbar-bar{z-index:50;background-color:color-mix(in srgb, var(--color-background) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);position:sticky;top:0}.navbar{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-4) var(--space-6);max-width:var(--max-width);margin:0 auto;display:flex}.navbar-logo{min-height:44px;font-family:var(--font-display);font-size:var(--font-size-xl);letter-spacing:-.03em;color:var(--color-primary);align-items:center;font-weight:800;display:inline-flex}.navbar-links{gap:var(--space-8);align-items:center;display:flex}.navbar-links a,.navbar-links button{font-family:var(--font-display);font-size:var(--font-size-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-secondary);transition:color var(--transition-fast);white-space:nowrap;font-weight:600;position:relative}.navbar-links a:hover,.navbar-links button:hover{color:var(--color-primary)}.navbar-links .is-highlight{color:var(--color-primary);font-weight:700}.navbar-links a:after,.navbar-links button:after{content:"";background-color:var(--color-primary);transform-origin:0;width:100%;height:1.5px;transition:transform var(--transition-base);position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.navbar-links a:hover:after,.navbar-links a:focus-visible:after,.navbar-links button:hover:after,.navbar-links button:focus-visible:after{transform:scaleX(1)}.navbar-links .is-active{color:var(--color-primary)}.navbar-links .is-active:after{background-color:var(--color-accent);height:2px;transform:scaleX(1)}.mobile-nav .is-active{color:var(--color-accent)}.navbar-actions{align-items:center;gap:var(--space-2);display:flex}.navbar-socials{gap:var(--space-2);align-items:center;display:flex}.navbar-socials a{color:var(--color-secondary);transition:color var(--transition-fast);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.navbar-socials a:hover{color:var(--color-primary)}.navbar-toggle{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);color:var(--color-primary);border:1.5px solid var(--color-border-strong);border-radius:var(--border-radius-sm);font-family:var(--font-display);font-size:var(--font-size-sm);letter-spacing:.02em;font-weight:700;display:none}.navbar-toggle:hover{background-color:var(--color-surface-hover)}.mobile-nav{gap:var(--space-1);padding:var(--space-4) var(--space-6) var(--space-6);border-top:1px solid var(--color-border);background-color:var(--color-background);flex-direction:column;display:none}.mobile-nav[hidden]{display:none}.mobile-nav a,.mobile-nav button{width:100%;min-height:44px;font-family:var(--font-display);font-size:var(--font-size-base);color:var(--color-primary);padding:var(--space-2) 0;text-align:left;justify-content:flex-start;align-items:center;font-weight:600;display:flex}.mobile-nav .mobile-nav-cta{justify-content:center;gap:var(--space-2);color:var(--color-on-primary);padding:var(--space-3) var(--space-6);margin-top:var(--space-3)}.hero{padding:var(--space-20) 0 var(--space-16);text-align:center}.hero-status{margin-bottom:var(--space-8)}.hero-badge{align-items:center;gap:var(--space-2);background-color:var(--color-accent2-wash);border:1px solid var(--color-accent2-light);border-radius:var(--border-radius-full);padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent2);font-weight:700;display:inline-flex}.hero-title{font-family:var(--font-display);font-size:var(--font-size-hero);letter-spacing:-.04em;color:var(--color-primary);text-wrap:balance;margin-bottom:var(--space-6);font-weight:800;line-height:1.05}.hero-title .accent{color:var(--color-accent2)}.hero-subtitle{font-size:var(--font-size-lg);color:var(--color-muted-foreground);max-width:520px;margin:0 auto var(--space-10);text-wrap:pretty;line-height:1.7}.hero-cta-group{gap:var(--space-4);flex-wrap:wrap;justify-content:center;display:flex}.trust-strip{border-block:1px solid var(--color-border);background-color:var(--color-surface);padding:var(--space-8) 0}.trust-strip-list{gap:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.trust-strip-list li{gap:var(--space-3);align-items:flex-start;display:flex}.trust-strip-list svg{color:var(--color-accent2);flex-shrink:0;margin-top:2px}.trust-strip-title{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-primary);margin-bottom:var(--space-1);font-weight:700}.trust-strip-detail{font-size:var(--font-size-sm);color:var(--color-muted-foreground);line-height:1.6}.product-grid{gap:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.product-card{border-radius:var(--border-radius-md);border:1px solid var(--color-border);background-color:var(--color-background);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);flex-direction:column;display:flex;position:relative;overflow:hidden}.product-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.product-card-image{aspect-ratio:4/3;background-color:var(--color-surface);padding:var(--space-6);border-bottom:1px solid var(--color-border);place-items:center;display:grid}.keychain-plate{filter:drop-shadow(0 6px 16px #6b3b3929);width:auto;max-width:100%;height:100%}.product-card-body{padding:var(--space-6);flex-direction:column;flex:1;display:flex}.product-card-name{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:var(--space-2);font-weight:700;line-height:1.3}.product-card-tagline{font-size:var(--font-size-sm);color:var(--color-muted-foreground);margin-bottom:var(--space-4);line-height:1.5}.product-card-price{font-family:var(--font-display);font-size:var(--font-size-xl);color:var(--color-primary);margin-top:auto;font-weight:800}.product-card-price .currency{font-size:var(--font-size-sm);color:var(--color-muted-foreground);margin-right:2px;font-weight:600}.price-unit{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-muted-foreground);font-weight:500}.product-card-tiers{gap:var(--space-3);grid-template-columns:1fr 1fr;margin-top:auto;display:grid}.product-card-tier{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--border-radius-sm)}.product-card-tier:first-child{background-color:var(--color-success-wash);border-color:color-mix(in srgb, var(--color-success) 35%, var(--color-border))}.product-card-tier dt{font-size:var(--font-size-xs);color:var(--color-muted-foreground);font-weight:700}.product-card-tier:first-child dt{color:var(--color-success-strong)}.product-card-tier .product-card-price{margin-top:0}.tier-toggle{gap:var(--space-3);margin-top:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.tier-btn{align-items:flex-start;gap:var(--space-1);min-height:44px;padding:var(--space-3) var(--space-4);text-align:left;border:1.5px solid var(--color-border-strong);border-radius:var(--border-radius-md);background-color:var(--color-background);transition:border-color var(--transition-fast), background-color var(--transition-fast);flex-direction:column;display:flex}.tier-btn:hover{background-color:var(--color-surface-hover)}.tier-name{align-items:center;gap:var(--space-2);font-family:var(--font-display);color:var(--color-primary);font-weight:700;display:inline-flex}.tier-surcharge{font-size:var(--font-size-sm);color:var(--color-muted-foreground)}.tier-btn:first-child.active{border-color:var(--color-success-strong);background-color:var(--color-success-wash)}.tier-btn:first-child.active .tier-name{color:var(--color-success-strong)}.tier-btn:last-child.active{border-color:var(--color-accent-strong);background-color:var(--color-accent-wash)}.tier-btn:last-child.active .tier-name{color:var(--color-accent-strong)}.tier-note{margin:var(--space-3) 0 var(--space-5)}.product-card-action{width:100%;margin-top:var(--space-4)}.configurator{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-10)}.configurator-preview{place-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);margin-bottom:var(--space-8);background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);display:grid}.configurator-preview .keychain-plate{height:clamp(200px,34vw,300px)}.configurator-preview-dims{font-size:var(--font-size-xs);letter-spacing:.06em;color:var(--color-muted-foreground);text-align:center}.configurator-preview-caption{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-muted-foreground);text-align:center;font-weight:600}.preview-gallery{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));width:100%;display:grid}.preview-gallery img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--border-radius-md);background-color:var(--color-surface);width:100%}.configurator-steps{gap:var(--space-2);margin-bottom:var(--space-8);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.step{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-muted-foreground);padding:var(--space-2);transition:color var(--transition-fast);font-weight:600;display:flex}.step:disabled{cursor:default}.step.active{color:var(--color-primary)}.step.completed{color:var(--color-success-strong)}.step-circle{width:28px;height:28px;font-size:var(--font-size-xs);border:1.5px solid var(--color-border-strong);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.step.active .step-circle{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.step.completed .step-circle{background-color:var(--color-success-strong);color:var(--color-on-primary);border-color:var(--color-success-strong)}.step-label{display:none}.step-connector{background-color:var(--color-border-strong);width:32px;height:1.5px}.step-connector.completed{background-color:var(--color-success-strong)}.configurator-content{margin-top:var(--space-4)}.step-content{gap:var(--space-4);flex-direction:column;display:flex}.step-note{font-size:var(--font-size-xs);color:var(--color-accent);font-weight:600;line-height:1.6}.options-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.colors-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.option-card{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--border-radius-md);text-align:center;background-color:var(--color-background);min-height:54px;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);flex-direction:column;display:flex;position:relative}.colors-grid .option-card{min-height:80px;padding:var(--space-3) var(--space-2)}.option-card:hover{border-color:var(--color-border-strong);background-color:var(--color-surface-hover)}.option-card:active{transform:scale(.98)}.option-card.selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.option-name{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-primary);font-weight:600;line-height:1.3}.option-price{font-size:var(--font-size-xs);color:var(--color-muted-foreground)}.option-check{top:var(--space-2);right:var(--space-2);color:var(--color-primary);animation:check-pop .14s var(--ease-out-expo) both;display:flex;position:absolute}@keyframes check-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.color-swatch{width:36px;height:36px;margin-bottom:var(--space-1);border:2px solid var(--color-border);border-radius:50%;display:block}.color-swatch.is-placeholder{border-style:dashed;border-color:var(--color-border-strong);background-color:#0000}.option-card.is-unavailable{background-color:var(--color-surface);opacity:.6;cursor:not-allowed;border-style:dashed}.option-card.is-unavailable:hover{border-color:var(--color-border);background-color:var(--color-surface)}.option-card.is-unavailable:active{transform:none}.spec-pending{font-size:var(--font-size-sm);color:var(--color-muted-foreground);margin-top:var(--space-3);line-height:1.6}.form-field{flex-direction:column;display:flex}.form-label{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-primary);margin-bottom:var(--space-1);font-weight:700;display:block}.form-optional{font-weight:500;font-size:var(--font-size-xs);color:var(--color-muted-foreground)}.form-help{font-size:var(--font-size-sm);color:var(--color-muted-foreground);margin-bottom:var(--space-2);max-width:62ch;line-height:1.6}.form-input{width:100%;max-width:560px;min-height:44px;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--font-size-base);color:var(--color-foreground);background-color:var(--color-background);border:1.5px solid var(--color-border-strong);border-radius:var(--border-radius-sm);transition:border-color var(--transition-fast)}.form-input:hover{border-color:var(--color-secondary)}.form-input:focus-visible{outline:2px solid var(--color-ring);outline-offset:1px;border-color:var(--color-primary)}.form-radio-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.form-chip{min-height:44px;padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-secondary);background-color:var(--color-background);border:1.5px solid var(--color-border-strong);border-radius:var(--border-radius-full);transition:border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);font-weight:600}.form-chip:hover{border-color:var(--color-secondary)}.form-chip.selected{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.stock-chips{margin-top:var(--space-3)}.chip-dot{border:1px solid var(--color-border-strong);width:10px;height:10px;margin-right:var(--space-2);vertical-align:-1px;border-radius:50%;display:inline-block}.step-nav{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.step-nav-progress{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-muted-foreground);text-align:center;flex:1;min-width:140px;font-weight:600}.configurator-summary{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--space-6);margin-top:var(--space-8)}.configurator-summary h3{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);font-weight:700}.summary-details{margin-top:var(--space-4)}.summary-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);display:flex}.summary-row:last-child{border-bottom:none}.summary-row .label{color:var(--color-muted-foreground);flex-shrink:0}.summary-row .value{color:var(--color-primary);text-align:right;font-weight:600}.summary-row .value.is-empty{color:var(--color-muted-foreground);font-style:italic;font-weight:400}.summary-total{padding-top:var(--space-4);margin-top:var(--space-2);border-top:2px solid var(--color-primary);justify-content:space-between;align-items:baseline;display:flex}.summary-total .label{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);font-weight:700}.summary-total .value{font-family:var(--font-display);font-size:var(--font-size-2xl);color:var(--color-primary);font-weight:800}.summary-disclaimer{font-size:var(--font-size-xs);color:var(--color-muted-foreground);margin-top:var(--space-4);line-height:1.6}.configurator-contact{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--space-6);margin-top:var(--space-6)}.checkout-form{margin-top:var(--space-6)}.form-grid{gap:var(--space-6);flex-direction:column;display:flex}@media (width>=640px){.checkout-form .form-grid:not(.fulfillment-details){gap:var(--space-6);flex-direction:row}.checkout-form .form-grid:not(.fulfillment-details) .form-field{flex:1 1 0;min-width:0}}.contact-method-toggle{gap:var(--space-2);margin-top:var(--space-2);display:flex}.contact-method-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--font-size-sm);border:1.5px solid var(--color-border-strong);border-radius:var(--border-radius-sm);background-color:var(--color-background);color:var(--color-secondary);transition:border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);min-height:44px;font-weight:600;display:inline-flex}.contact-method-btn:hover{border-color:var(--color-primary);background-color:var(--color-surface-hover)}.contact-method-btn.active{border-color:var(--color-accent-strong);background-color:var(--color-accent-wash);color:var(--color-accent-strong)}.fulfillment-field{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.fulfillment-details{margin-top:var(--space-4);padding:var(--space-4);background-color:var(--color-surface);border-radius:var(--border-radius-sm);border:1px solid var(--color-border)}.eco-note{align-items:center;gap:var(--space-2);color:var(--color-success-strong);font-size:var(--font-size-sm);margin-bottom:var(--space-3);display:flex}.checkout-terms{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-6);cursor:pointer;display:flex}.checkout-terms input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-accent-strong);cursor:pointer;flex-shrink:0;margin-top:2px}.checkout-terms label{font-size:var(--font-size-sm);color:var(--color-secondary);cursor:pointer;line-height:1.5}.checkout-terms a{color:var(--color-accent);text-underline-offset:2px;font-weight:700;text-decoration:underline}.checkout-btn-wrap{align-items:center;gap:var(--space-3);margin-top:var(--space-8);flex-direction:column;display:flex}.checkout-note{font-size:var(--font-size-xs);color:var(--color-muted-foreground);text-align:center;max-width:400px;line-height:1.5}.checkout-note a{color:var(--color-accent);font-weight:600;text-decoration:underline}.checkout-error{color:var(--color-destructive);font-size:var(--font-size-sm);text-align:center;margin-top:var(--space-4);justify-content:center;align-items:center;gap:var(--space-2);font-weight:600;display:flex}.how-section{background-color:var(--color-surface)}.how-steps{gap:var(--space-8) var(--space-12);grid-template-columns:repeat(2,1fr);max-width:900px;margin:0 auto;display:grid}.how-step{gap:var(--space-4);align-items:flex-start;display:flex}.how-step-num{background-color:var(--color-primary);width:32px;height:32px;color:var(--color-on-primary);font-family:var(--font-display);font-size:var(--font-size-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.how-step-title{font-family:var(--font-display);font-size:var(--font-size-base);color:var(--color-primary);margin-bottom:var(--space-1);font-weight:700}.how-step-body{font-size:var(--font-size-sm);color:var(--color-muted-foreground);max-width:60ch;line-height:1.7}.how-facts{max-width:900px;margin:var(--space-16) auto 0;padding-top:var(--space-8);border-top:1px solid var(--color-border-strong)}.how-facts-title{font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted-foreground);margin-bottom:var(--space-6);font-weight:700}.how-facts-list{gap:var(--space-6) var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.how-facts-list dt{font-family:var(--font-display);font-size:var(--font-size-sm);color:var(--color-primary);margin-bottom:var(--space-1);font-weight:700}.how-facts-list dd{font-size:var(--font-size-sm);color:var(--color-muted-foreground);line-height:1.6}.about-grid{gap:var(--space-16);grid-template-columns:1fr 1fr;align-items:center;display:grid}.about-content p{color:var(--color-muted-foreground);margin-bottom:var(--space-4);max-width:62ch;line-height:1.8}.text-link{color:var(--color-accent);text-underline-offset:2px;font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px}.text-link:hover{color:var(--color-accent-deep)}.about-facts{gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border-strong);flex-direction:column;display:flex}.about-facts>div{align-items:baseline;gap:var(--space-3);display:flex}.about-facts dt{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);letter-spacing:-.02em;flex-shrink:0;font-weight:800}.about-facts dd{font-size:var(--font-size-sm);color:var(--color-muted-foreground)}.sustainability-card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-10)}.sustainability-badge{align-items:center;gap:var(--space-2);background-color:var(--color-success-wash);color:var(--color-success-strong);border-radius:var(--border-radius-full);padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--space-6);font-weight:700;display:inline-flex}.sustainability-title{font-family:var(--font-display);font-size:var(--font-size-2xl);color:var(--color-primary);margin-bottom:var(--space-4);text-wrap:balance;font-weight:700;line-height:1.3}.sustainability-text{color:var(--color-muted-foreground);margin-bottom:var(--space-4);line-height:1.8}.learn-cta{padding:var(--space-8);border-radius:var(--border-radius-lg);background-color:var(--color-surface);border:1px solid var(--color-border)}.learn-cta h2{font-family:var(--font-display);font-size:var(--font-size-2xl);color:var(--color-primary);letter-spacing:-.02em;margin-bottom:var(--space-3);font-weight:700}.learn-cta p{color:var(--color-muted-foreground);max-width:65ch;margin-bottom:var(--space-6);line-height:1.7}.learn-cta-actions{gap:var(--space-4);flex-wrap:wrap;display:flex}.footer{border-top:1px solid var(--color-border);padding:var(--space-12) 0 var(--space-8)}.footer-grid{gap:var(--space-10);margin-bottom:var(--space-10);grid-template-columns:2fr 1fr 1fr 1fr;display:grid}.footer-brand{max-width:280px}.footer-logo{font-family:var(--font-display);font-size:var(--font-size-xl);letter-spacing:-.03em;color:var(--color-primary);margin-bottom:var(--space-3);font-weight:800}.footer-desc{font-size:var(--font-size-sm);color:var(--color-muted-foreground);line-height:1.7}.footer-col-title{font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-4);font-weight:700}.footer-col a,.footer-col button,.footer-col .footer-link-disabled{min-height:44px;font-size:var(--font-size-sm);color:var(--color-muted-foreground);transition:color var(--transition-fast);text-align:left;align-items:center;display:flex}.footer-col .footer-link-disabled{opacity:.5;cursor:not-allowed}.footer-col a:hover,.footer-col button:hover{color:var(--color-primary)}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-8);border-top:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-muted-foreground);flex-wrap:wrap;display:flex}.footer-payment-methods{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.payment-badge{font-family:var(--font-display);font-size:var(--font-size-xs);color:var(--color-muted-foreground);background-color:var(--color-surface);padding:var(--space-1) var(--space-3);border-radius:var(--border-radius-sm);border:1px solid var(--color-border);font-weight:600}.page{padding:var(--space-16) 0 var(--space-20)}.page-narrow .container{max-width:760px}.page-header{max-width:760px;margin-bottom:var(--space-10)}.page-title{font-family:var(--font-display);font-size:var(--font-size-4xl);letter-spacing:-.03em;color:var(--color-primary);text-wrap:balance;margin:var(--space-4) 0;font-weight:800;line-height:1.1}.page-intro{font-size:var(--font-size-lg);color:var(--color-muted-foreground);text-wrap:pretty;line-height:1.7}.page-meta{font-size:var(--font-size-sm);color:var(--color-muted);margin-top:var(--space-4)}.page-callout{padding:var(--space-6);border-radius:var(--border-radius-md);background-color:var(--color-surface);border:1px solid var(--color-border);margin-top:var(--space-10)}.page-callout h2{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:var(--space-3);font-weight:700}.page-callout p{color:var(--color-muted-foreground);max-width:68ch;line-height:1.7}.page-callout p+p{margin-top:var(--space-3)}.callout-list{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.callout-list li{padding-left:var(--space-6);color:var(--color-muted-foreground);max-width:68ch;line-height:1.7;position:relative}.callout-list li:before{content:"";background-color:var(--color-accent2);border-radius:50%;width:6px;height:6px;position:absolute;top:.65em;left:0}.legal section+section{margin-top:var(--space-8)}.legal h2{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:var(--space-3);font-weight:700}.legal p{color:var(--color-secondary);max-width:68ch;line-height:1.8}.result-page{text-align:center;padding:var(--space-24) 0}.result-icon{margin-bottom:var(--space-6);justify-content:center;display:flex}.result-icon.is-success{color:var(--color-success-strong)}.result-icon.is-cancel{color:var(--color-muted-foreground)}.result-title{font-family:var(--font-display);font-size:var(--font-size-3xl);color:var(--color-primary);margin-bottom:var(--space-4);font-weight:800}.result-body{font-size:var(--font-size-lg);color:var(--color-muted-foreground);max-width:480px;margin:0 auto var(--space-3);line-height:1.7}.result-subtext{font-size:var(--font-size-sm);color:var(--color-muted-foreground);margin-bottom:var(--space-8)}.result-ref{font-family:var(--font-display);font-size:var(--font-size-xs);color:var(--color-muted-foreground);margin-top:var(--space-6);letter-spacing:.04em}@media (width>=768px){.step-label{display:inline}}@media (width<=1024px){.navbar-links{gap:var(--space-5,1.25rem)}.product-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:var(--space-10);grid-template-columns:1fr}.footer-grid{gap:var(--space-8);grid-template-columns:1fr 1fr}}@media (width<=768px){html{scroll-padding-top:72px}.section{padding:var(--space-12) 0}.hero{padding:var(--space-12) 0 var(--space-10)}.section-header{margin-bottom:var(--space-8)}.section-title{font-size:var(--font-size-2xl)}.navbar-links,.navbar-socials{display:none}.navbar-toggle,.mobile-nav{display:flex}.product-grid{gap:var(--space-6);grid-template-columns:1fr}.configurator{padding:var(--space-6)}.options-grid,.colors-grid{grid-template-columns:repeat(2,1fr)}.how-steps,.how-facts-list,.trust-strip-list{grid-template-columns:1fr}.page{padding:var(--space-10) 0 var(--space-16)}.page-title{font-size:var(--font-size-3xl)}.learn-cta{padding:var(--space-6)}.configurator-preview{padding:var(--space-6) var(--space-4)}.learn-cta-actions .btn{width:100%}.step-nav{flex-direction:column-reverse;align-items:stretch}.step-nav .btn{width:100%}.step-nav-progress{order:-1}.how-facts{margin-top:var(--space-10)}.footer-grid{gap:var(--space-6);grid-template-columns:1fr}.footer-bottom{text-align:center;flex-direction:column}.hero-cta-group{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;animation:none!important}.btn:hover:not(:disabled),.product-card:hover{transform:none}}.pg-root{background:radial-gradient(circle at 50% 45%, var(--color-accent2-wash), transparent 55%), radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--color-accent-light) 70%, transparent), transparent 30%), radial-gradient(circle at 92% 88%, color-mix(in srgb, var(--color-accent2-light) 60%, transparent), transparent 32%), radial-gradient(circle at 95% 8%, color-mix(in srgb, var(--color-border) 60%, transparent), transparent 22%), radial-gradient(circle, color-mix(in srgb, var(--color-border-strong) 30%, transparent) 1.5px, transparent 2px) 0 0 / 3.2vmin 3.2vmin, var(--color-background);height:100dvh;color:var(--color-foreground);-webkit-user-select:none;user-select:none;grid-template-rows:auto minmax(0,1fr) auto;gap:2vmin;padding:2.5vmin 3vmin;display:grid;position:relative;overflow:hidden}.pg-root:before{content:"";border:2px dashed color-mix(in srgb, var(--color-border-strong) 55%, transparent);border-radius:var(--border-radius-lg);pointer-events:none;position:absolute;inset:1vmin}.pg-top{justify-content:space-between;align-items:center;display:flex;position:relative}.pg-title{font-family:var(--font-display);color:var(--color-accent2);font-size:clamp(1.2rem,3.6vmin,2.8rem);font-weight:700;line-height:1.1}.pg-title span{color:var(--color-foreground);font-weight:500}.pg-title .pg-title-deco{color:var(--color-border-strong);margin:0 .35em;animation:8s linear infinite pg-spin;display:inline-block}@keyframes pg-spin{to{transform:rotate(360deg)}}.pg-tools{gap:1.5vmin;display:flex}.pg-icon-btn{aspect-ratio:1;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-full);background:var(--color-surface);width:clamp(2.75rem,6vmin,4rem);color:var(--color-foreground);transition:background var(--transition-fast);place-items:center;display:grid}.pg-abort-btn{border:1.5px solid var(--color-destructive);border-radius:var(--border-radius-full);background:color-mix(in srgb, var(--color-destructive) 10%, var(--color-background));min-height:2.75rem;color:var(--color-destructive);font-family:var(--font-display);transition:background var(--transition-fast), color var(--transition-fast);align-items:center;gap:.5em;padding:0 1.1em;font-weight:700;display:inline-flex}.pg-abort-btn:hover{background:var(--color-destructive);color:var(--color-on-primary)}.pg-abort-btn svg{width:1.2em;height:1.2em}.pg-abort-btn:focus-visible{outline:3px solid var(--color-ring);outline-offset:2px}.pg-icon-btn:hover{background:var(--color-surface-hover)}.pg-icon-btn svg{width:50%;height:50%}.pg-icon-btn:focus-visible,.pg-btn:focus-visible,.pg-save input:focus-visible{outline:3px solid var(--color-ring);outline-offset:2px}.pg-stage{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:3vmin;min-height:0;display:grid;position:relative}.pg-panel{background:color-mix(in srgb, var(--color-surface) 85%, transparent);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);outline:1.5px dashed color-mix(in srgb, var(--color-border-strong) 60%, transparent);outline-offset:-1vmin;padding:3vmin}.pg-board{align-self:stretch;position:relative;overflow:hidden}.pg-board h2:before{content:"🏆 "}.pg-stats{position:relative}.pg-stats:before,.pg-board:after{content:"🌸";font-size:3.5vmin;position:absolute;top:1.5vmin;right:2vmin;rotate:12deg}.pg-board:after{content:"🎀";top:auto;bottom:1.5vmin;rotate:-12deg}.pg-board h2{font-family:var(--font-display);color:var(--color-accent2);margin-bottom:1.5vmin;font-size:clamp(.88rem,2.72vmin,1.92rem)}.pg-board ol{gap:.6vmin;list-style:none;display:grid}.pg-board li{border-radius:var(--border-radius-sm);grid-template-columns:2.2em minmax(0,1fr) auto;align-items:center;padding:0 1vmin;font-size:clamp(.68rem,2vmin,1.44rem);line-height:1.5;display:grid}.pg-board li:first-child{background:color-mix(in srgb, var(--color-border-strong) 25%, transparent);font-weight:700}.pg-rank{font-family:var(--font-display);color:var(--color-muted-foreground)}.pg-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pg-score{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:700}.pg-empty{color:var(--color-muted-foreground);font-size:clamp(.72rem,2.08vmin,1.44rem)}.pg-play{flex-direction:column;align-items:center;gap:2.5vmin;display:flex;position:relative}.pg-ring{--tone:var(--color-accent);aspect-ratio:1;align-content:center;place-items:center;width:min(38vmin,100%);display:grid;position:relative}.pg-ring--brass{--tone:var(--color-border-strong)}.pg-ring--rose{--tone:var(--color-accent2)}.pg-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.pg-ring circle{fill:none;stroke-width:7px}.pg-ring-track{stroke:color-mix(in srgb, var(--color-border) 60%, transparent)}.pg-ring-fill{stroke:var(--tone);stroke-linecap:round;transition:stroke var(--transition-base)}.pg-ring-num{font-family:var(--font-display);color:var(--tone);font-variant-numeric:tabular-nums;transition:color var(--transition-base);font-size:12vmin;font-weight:700;line-height:1}.pg-ring-label{text-transform:uppercase;letter-spacing:.15em;color:var(--color-muted-foreground);font-size:clamp(.64rem,1.76vmin,1.2rem)}.pg-ring--pulse{animation:.5s ease-in-out infinite alternate pg-pulse}@keyframes pg-pulse{to{transform:scale(1.05)}}.pg-key{width:30vmin;height:15vmin;position:relative}.pg-housing{background:var(--color-primary);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);height:32%;position:absolute;inset:auto 6% 0}.pg-cap{z-index:1;background:var(--color-accent2-light);border:1px solid var(--color-accent2);box-shadow:inset 0 -1.6vmin 0 color-mix(in srgb, var(--color-accent2) 35%, transparent), 0 1.2vmin 0 var(--color-accent2-strong);border-radius:1.8vmin;place-items:center;transition:transform 40ms ease-out,box-shadow 40ms ease-out;display:grid;position:absolute;inset:0 0 18%}.pg-cap.is-down{box-shadow:inset 0 -.8vmin 0 color-mix(in srgb, var(--color-accent2) 35%, transparent), 0 0 0 var(--color-accent2-strong);transform:translateY(1.2vmin)}.pg-cap-top{background:radial-gradient(ellipse at 50% 40%, var(--color-accent2-wash), var(--color-accent2-light) 75%);width:86%;height:72%;font-family:var(--font-display);letter-spacing:.12em;color:var(--color-accent2-strong);border-radius:1.2vmin;place-items:center;margin-bottom:1.2vmin;font-size:2.72vmin;font-weight:700;display:grid}.pg-prompt{font-family:var(--font-display);text-align:center;color:var(--color-accent);font-size:clamp(1.12rem,4vmin,3.04rem);font-weight:700;line-height:1.15}.pg-prompt kbd{border:2px solid var(--color-accent);border-radius:var(--border-radius-sm);background:var(--color-accent-wash);padding:0 .35em;font-family:inherit}.pg-stats{text-align:center;gap:2.5vmin;display:grid}.pg-stat{display:grid}.pg-stat-num{font-family:var(--font-display);color:var(--color-accent2);font-variant-numeric:tabular-nums;font-size:14.4vmin;font-weight:700;line-height:1}.pg-stat-num--sm{color:var(--color-accent);font-size:7.2vmin}.pg-stat-label{text-transform:uppercase;letter-spacing:.15em;color:var(--color-muted-foreground);font-size:clamp(.68rem,1.92vmin,1.28rem)}.pg-meter-bar{background:var(--color-background);border:1px solid var(--color-border-strong);border-radius:var(--border-radius-full);height:3.5vmin;margin:5vmin 0 4vmin;position:relative}.pg-meter-fill{border-radius:inherit;background:linear-gradient(90deg, var(--color-accent), var(--color-accent2));transform-origin:0;height:100%;transition:transform 80ms linear}.pg-marker{background:var(--color-border-strong);justify-items:center;width:3px;display:grid;position:absolute;top:-1vmin;bottom:-1vmin;translate:-50%}.pg-marker b,.pg-marker small{white-space:nowrap;font-family:var(--font-display);color:var(--color-muted-foreground);position:absolute}.pg-marker b{font-size:clamp(.72rem,2.24vmin,1.6rem);bottom:100%}.pg-marker small{font-size:clamp(.56rem,1.44vmin,.96rem);top:100%}.pg-marker.is-lit{background:var(--color-accent2)}.pg-marker.is-lit b{color:var(--color-accent2);animation:pg-pop .4s var(--ease-out-expo)}@keyframes pg-pop{0%{transform:scale(1.6)}}.pg-meter-note{color:var(--color-muted-foreground);font-size:clamp(.64rem,1.76vmin,1.2rem)}.pg-tip{text-align:center;max-width:70rem;min-height:2lh;color:var(--color-muted-foreground);margin-inline:auto;font-size:clamp(.68rem,1.84vmin,1.28rem);line-height:1.35;animation:.8s pg-fade;position:relative}@keyframes pg-fade{0%{opacity:0}}.pg-shake{animation:.12s linear infinite pg-shake}@keyframes pg-shake{25%{transform:translate(2px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(1px,2px)}}.pg-burst{pointer-events:none;z-index:2;position:absolute;top:40%;left:50%}.pg-burst i{background:var(--color-border-strong);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);width:1.4vmin;height:1.4vmin;animation:pg-spark .9s var(--ease-out-expo) forwards;position:absolute}.pg-burst i:nth-child(2n){background:var(--color-accent2)}.pg-burst--big{top:30%}.pg-burst--big i{width:2.4vmin;height:2.4vmin;animation-duration:1.4s;animation-iteration-count:3}.pg-burst--big+.pg-burst--big i{animation-delay:.45s;rotate:18deg}@keyframes pg-spark{0%{transform:rotate(var(--a)) translateY(0) scale(.4);opacity:1}to{transform:rotate(var(--a)) translateY(-16vmin) scale(1);opacity:0}}.pg-floaters{pointer-events:none;position:absolute;inset:0;overflow:hidden}.pg-floater{bottom:-10vmin;left:var(--x);font-size:calc(3.6vmin * var(--s));opacity:.45;animation:pg-float var(--dur) linear infinite;animation-delay:var(--delay);position:absolute}.pg-floater-sway{animation:3.5s ease-in-out infinite alternate pg-sway;display:block}@keyframes pg-sway{0%{transform:translateX(calc(var(--sway) * -1))}to{transform:translateX(var(--sway))}}.pg-twinkle{color:var(--color-border-strong);animation:2.4s ease-in-out infinite pg-twinkle;animation-delay:calc(var(--i) * -.37s);font-size:2.4vmin;position:absolute}.pg-twinkle:nth-child(3n){color:var(--color-accent2-light)}@keyframes pg-twinkle{0%,to{opacity:.2;transform:scale(.6)}50%{opacity:.9;transform:scale(1.15)}}.pg-floater-key{border:1px solid var(--color-border-strong);background:var(--color-surface);width:1.4em;height:1.4em;box-shadow:inset 0 -.6vmin 0 var(--color-border);border-radius:1vmin;display:block}.pg-floater:nth-child(3n+1) .pg-floater-key{background:var(--color-accent-light)}.pg-floater:nth-child(3n+2) .pg-floater-key{background:var(--color-accent2-light)}@keyframes pg-float{to{transform:translateY(-120vh)rotate(200deg)}}.pg-overlay{z-index:10;background:color-mix(in srgb, var(--color-foreground) 30%, transparent);place-items:center;padding:3vmin;display:grid;position:absolute;inset:0}.pg-result{text-align:center;background:var(--color-background);border-color:var(--color-border-strong);width:min(90vmin,100%);max-height:100%;box-shadow:var(--shadow-xl);gap:2.2vmin;display:grid;position:relative;overflow:auto}.pg-result--bounce{animation:pg-lift .9s var(--ease-out-expo) .3s 2}@keyframes pg-lift{30%{translate:0 -2vmin}60%{translate:0}}.pg-result-prize{font-family:var(--font-display);color:var(--color-accent2);font-size:10.4vmin;font-weight:700;line-height:1}.pg-result-msg{font-size:clamp(.8rem,2.4vmin,1.6rem)}.pg-result-stats{color:var(--color-muted-foreground);justify-content:center;gap:5vmin;font-size:clamp(.72rem,2.08vmin,1.44rem);display:flex}.pg-result-stats b{font-family:var(--font-display);color:var(--color-foreground);font-variant-numeric:tabular-nums;font-size:2em;display:block}.pg-save{justify-content:center;gap:1.5vmin;display:flex}.pg-save input{min-width:0;font:inherit;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-md);background:var(--color-on-primary);color:var(--color-foreground);-webkit-user-select:text;user-select:text;flex:0 22em;padding:.5em .8em;font-size:clamp(.8rem,2.08vmin,1.44rem)}.pg-saved{color:var(--color-success-strong);font-size:clamp(.8rem,2.24vmin,1.52rem);font-weight:700}.pg-btn{font-family:var(--font-display);border:1px solid var(--color-border-strong);border-radius:var(--border-radius-md);background:var(--color-surface);color:var(--color-foreground);transition:background var(--transition-fast), opacity var(--transition-fast);padding:.5em 1.2em;font-size:clamp(.8rem,2.08vmin,1.44rem);font-weight:600}.pg-btn:hover:not(:disabled){background:var(--color-surface-hover)}.pg-btn:disabled{opacity:.45;cursor:not-allowed}.pg-btn--primary{background:var(--color-accent);border-color:var(--color-accent-strong);color:var(--color-on-primary)}.pg-btn--primary:hover:not(:disabled){background:var(--color-accent-strong)}.pg-btn--danger{background:var(--color-destructive);border-color:var(--color-destructive);color:var(--color-on-primary)}.pg-btn--danger:hover:not(:disabled){background:var(--color-accent2-strong)}.pg-result-foot{justify-content:space-between;align-items:center;gap:3vmin;display:flex}.pg-qr{color:var(--color-muted-foreground);align-items:center;gap:1.5vmin;font-size:clamp(.68rem,1.76vmin,1.2rem);display:flex}.pg-qr span{border-radius:var(--border-radius-sm);background:var(--color-on-primary);width:14vmin;color:var(--color-foreground);padding:.5vmin}.pg-qr svg{width:100%;height:auto}.pg-confetti{pointer-events:none;z-index:11;position:absolute;inset:0;overflow:hidden}.pg-confetti i{top:-3vmin;left:var(--x);background:var(--c);width:1.4vmin;height:2.2vmin;animation:pg-confetti 2.6s ease-in var(--delay) forwards;border-radius:2px;position:absolute}@keyframes pg-confetti{to{transform:translate(var(--drift), 110vh) rotate(var(--spin))}}.pg-dialog{background:var(--color-background);min-width:min(28rem,90vw);color:var(--color-foreground);text-align:center;margin:auto;font-size:clamp(.8rem,2.24vmin,1.44rem)}.pg-dialog::backdrop{background:color-mix(in srgb, var(--color-foreground) 40%, transparent)}.pg-dialog-actions{justify-content:center;gap:2vmin;margin-top:2vmin;display:flex}.pg-mode-btn{height:clamp(2.75rem,6vmin,4rem);font-family:var(--font-display);border:1px solid var(--color-border-strong);border-radius:var(--border-radius-full);background:var(--color-surface);color:var(--color-foreground);align-items:center;gap:.5em;padding:0 1.1em;font-size:clamp(.8rem,2.08vmin,1.44rem);font-weight:600;display:inline-flex}.pg-mode-btn svg{width:1.2em;height:1.2em}.pg-mode-btn:hover:not(:disabled){background:var(--color-surface-hover)}.pg-mode-btn:disabled{opacity:.45;cursor:not-allowed}.pg-mode-btn:focus-visible{outline:3px solid var(--color-ring);outline-offset:2px}.pg-meter--record .pg-meter-bar{margin-top:8vmin}.pg-marker--record{background:var(--color-accent);top:-4.5vmin}.pg-marker--record b{color:var(--color-accent)}.pg-marker--record.is-lit{background:var(--color-accent2)}.pg-stage--versus{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1fr)}.pg-player{text-align:center;justify-items:center;gap:1.2vmin;display:grid}.pg-player h2{font-family:var(--font-display);color:var(--color-accent);font-size:clamp(1rem,3.4vmin,2.4rem)}.pg-player--2 h2{color:var(--color-accent2)}.pg-player .pg-stat-num{font-size:13vmin}.pg-player .pg-key{width:24vmin;height:12vmin;margin-top:1vmin}.pg-player .pg-cap-top{font-size:2.2vmin}.pg-player .pg-meter{width:100%}.pg-player .pg-meter-bar{margin:4vmin 0 3vmin}.pg-player .pg-meter--record .pg-meter-bar{margin-top:7vmin}.pg-record-banner{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-on-primary);background:linear-gradient(90deg, var(--color-accent), var(--color-accent2));border-radius:var(--border-radius-full);box-shadow:0 0 0 3px var(--color-border-strong);justify-self:center;padding:.3em 1.2em;font-size:clamp(1.1rem,4vmin,3rem);font-weight:700;animation:.9s ease-in-out infinite alternate pg-banner}@keyframes pg-banner{to{transform:scale(1.05)rotate(-1deg)}}.pg-result-prize--vs{font-size:8vmin}.pg-vs-grid{grid-template-columns:1fr 1fr;gap:2vmin;display:grid}.pg-vs-col{border:1px solid var(--color-border);border-radius:var(--border-radius-md);color:var(--color-muted-foreground);gap:.3vmin;padding:1.5vmin;font-size:clamp(.8rem,2.1vmin,1.4rem);display:grid}.pg-vs-col.is-winner{border-color:var(--color-border-strong);background:color-mix(in srgb, var(--color-border-strong) 15%, transparent)}.pg-vs-col b{font-family:var(--font-display);color:var(--color-foreground);font-size:7vmin;line-height:1}.pg-vs-name{font-family:var(--font-display);color:var(--color-foreground);font-weight:700}.pg-vs-prize{color:var(--color-accent2);font-weight:700}.pg-vs-col input{width:100%;min-width:0;font:inherit;text-align:center;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-md);background:var(--color-on-primary);color:var(--color-foreground);-webkit-user-select:text;user-select:text;margin-top:.8vmin;padding:.4em .7em}.pg-vs-col input:focus-visible{outline:3px solid var(--color-ring);outline-offset:2px}.pg-vs-col .pg-saved{font-size:inherit;margin-top:.8vmin}.pg-graph{gap:.5vmin;display:grid}.pg-graph figcaption{text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted-foreground);font-size:clamp(.7rem,1.8vmin,1.2rem)}.pg-graph svg{width:100%;max-height:16vmin;overflow:visible}.pg-graph-axis{stroke:var(--color-border);stroke-width:1px}.pg-graph-tick,.pg-graph-label{font-family:var(--font-body);fill:var(--color-muted-foreground);font-size:7px}.pg-graph-label{fill:var(--color-foreground);font-weight:700}.pg-graph-line{fill:none;stroke:var(--tone);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.pg-graph-dot{fill:var(--tone);stroke:var(--color-background);stroke-width:1px}.pg-result-actions{gap:1.5vmin;display:flex}.pg-btn svg{vertical-align:-.15em;width:1.1em;height:1.1em;display:inline-block}.pg-photo{z-index:30;background:radial-gradient(circle, color-mix(in srgb, var(--color-border-strong) 35%, transparent) 1.5px, transparent 2px) 0 0 / 3.2vmin 3.2vmin, var(--color-accent2-wash);place-items:center;padding:3vmin;display:grid;position:absolute;inset:0}.pg-photo-frame{text-align:center;border:2vmin solid var(--color-accent2-light);outline:3px dashed var(--color-border-strong);outline-offset:-3.5vmin;background:var(--color-background);width:100%;height:100%;box-shadow:inset 0 0 0 .6vmin var(--color-border-strong), var(--shadow-xl);border-radius:4vmin;place-content:center;justify-items:center;gap:2vmin;display:grid;position:relative}.pg-photo-corner{font-size:9vmin;position:absolute}.pg-photo-corner--0{top:2vmin;left:3vmin;rotate:-12deg}.pg-photo-corner--1{top:2vmin;right:3vmin;rotate:10deg}.pg-photo-corner--2{bottom:2vmin;left:3vmin;rotate:8deg}.pg-photo-corner--3{bottom:2vmin;right:3vmin;rotate:-10deg}.pg-photo-brand{font-family:var(--font-display);color:var(--color-accent2);font-size:5vmin;font-weight:700}.pg-photo-name{font-family:var(--font-display);color:var(--color-accent);font-size:6vmin;font-weight:600}.pg-photo-big{font-family:var(--font-display);color:var(--color-accent2);font-variant-numeric:tabular-nums;font-size:26vmin;font-weight:700;line-height:.95}.pg-photo-big small{color:var(--color-muted-foreground);font-size:.35em}.pg-photo-sub{font-size:4vmin;font-weight:700}.pg-photo-vs{grid-template-columns:1fr auto 1fr;align-items:end;gap:4vmin;display:grid}.pg-photo-vs>div:last-of-type{grid-column:3}.pg-photo-vs>small{font-family:var(--font-display);color:var(--color-muted-foreground);grid-area:1/2;padding-bottom:6vmin;font-size:6vmin;font-weight:700}.pg-photo-vs .pg-photo-big{font-size:20vmin}.pg-photo-vs>div:not(.is-winner) .pg-photo-big{color:var(--color-accent)}.pg-photo-foot{color:var(--color-muted-foreground);font-size:2.6vmin}.pg-photo-hint{color:var(--color-muted-foreground);font-size:1.8vmin;position:absolute;bottom:4.5vmin;left:0;right:0}.pg-attract{z-index:20;background:radial-gradient(circle at 50% 45%, var(--color-accent2-wash), transparent 55%), radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--color-accent-light) 70%, transparent), transparent 30%), radial-gradient(circle at 92% 88%, color-mix(in srgb, var(--color-accent2-light) 60%, transparent), transparent 32%), radial-gradient(circle at 95% 8%, color-mix(in srgb, var(--color-border) 60%, transparent), transparent 22%), radial-gradient(circle, color-mix(in srgb, var(--color-border-strong) 30%, transparent) 1.5px, transparent 2px) 0 0 / 3.2vmin 3.2vmin, var(--color-background);cursor:pointer;grid-template-rows:1fr auto;place-items:center;padding:6vmin;display:grid;position:absolute;inset:0;overflow:hidden}.pg-attract:before{content:"";border:2px dashed color-mix(in srgb, var(--color-border-strong) 55%, transparent);border-radius:var(--border-radius-lg);pointer-events:none;position:absolute;inset:1vmin}.pg-attract-slide,.pg-attract-cta,.pg-attract-title{position:relative}.pg-attract{grid-template-rows:auto 1fr auto}.pg-attract-title{place-self:start;margin:-3.5vmin 0 0 -3vmin}.pg-attract-slide{text-align:center;animation:pg-slide-in .7s var(--ease-out-expo);justify-items:center;gap:4vmin;display:grid}@keyframes pg-slide-in{0%{opacity:0;transform:translateY(4vmin)}}.pg-attract h2{font-family:var(--font-display);color:var(--color-accent2);font-size:8vmin;line-height:1.1}.pg-attract-text{color:var(--color-muted-foreground);font-size:3.6vmin}.pg-attract-board{gap:1.2vmin;min-width:60vmin;font-size:4.4vmin;list-style:none;display:grid}.pg-attract-board li{text-align:left;border-radius:var(--border-radius-md);background:color-mix(in srgb, var(--color-surface) 80%, transparent);grid-template-columns:2.2em 1fr auto;padding:.2em .6em;display:grid}.pg-attract-board li:first-child{background:color-mix(in srgb, var(--color-border-strong) 30%, transparent)}.pg-attract-board span{color:var(--color-muted-foreground)}.pg-attract-board b{font-family:var(--font-display)}.pg-attract-tiers{gap:3vmin;list-style:none;display:flex}.pg-attract-tiers li{border:1px solid var(--color-border-strong);border-radius:var(--border-radius-lg);background:var(--color-surface);color:var(--color-muted-foreground);gap:1vmin;padding:3vmin 4vmin;font-size:3vmin;display:grid}.pg-attract-tiers b{font-family:var(--font-display);color:var(--color-accent2);font-size:7vmin}.pg-attract-cta{font-family:var(--font-display);color:var(--color-accent);font-size:5vmin;font-weight:700;animation:.9s ease-in-out infinite alternate pg-pulse}.pg-attract-cta kbd{border:2px solid var(--color-accent);border-radius:var(--border-radius-sm);background:var(--color-accent-wash);padding:0 .35em;font-family:inherit}.pg-cap--demo{animation:.32s ease-in-out infinite pg-demo-press}@keyframes pg-demo-press{50%{box-shadow:inset 0 -.8vmin 0 color-mix(in srgb, var(--color-accent2) 35%, transparent), 0 0 0 var(--color-accent2-strong);transform:translateY(1.2vmin)}}.pg-settings{text-align:left;width:min(44rem,94vw);max-height:92vh;font-size:var(--font-size-base)}.pg-settings form{gap:var(--space-4);display:grid}.pg-settings h2{font-family:var(--font-display);font-size:var(--font-size-2xl);color:var(--color-accent2)}.pg-settings fieldset{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--border-radius-md);display:grid}.pg-settings legend{padding:0 var(--space-2);font-weight:700}.pg-field,.pg-prize-row label{gap:var(--space-1);font-size:var(--font-size-sm);font-weight:600;display:grid}.pg-prize-row{align-items:end;gap:var(--space-2) var(--space-3);padding-bottom:var(--space-3);border-bottom:1px dashed var(--color-border);grid-template-columns:1fr 1fr 1fr;display:grid}.pg-prize-row:last-child{border-bottom:0;padding-bottom:0}.pg-prize-msg{grid-column:1/-1}.pg-hint{padding-bottom:var(--space-2);font-size:var(--font-size-sm);color:var(--color-muted-foreground)}.pg-settings input,.pg-settings textarea{width:100%;padding:var(--space-2) var(--space-3);font:inherit;font-weight:400;font-size:var(--font-size-base);border:1px solid var(--color-border-strong);border-radius:var(--border-radius-sm);background:var(--color-on-primary);color:var(--color-foreground);-webkit-user-select:text;user-select:text}.pg-settings input:disabled{background:var(--color-surface);color:var(--color-muted-foreground)}.pg-settings input:focus-visible,.pg-settings textarea:focus-visible{outline:3px solid var(--color-ring);outline-offset:1px}.pg-settings textarea{resize:vertical}.pg-manual{margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px dashed var(--color-border-strong)}.pg-manual-row{align-items:end;gap:var(--space-3);grid-template-columns:2fr 1fr auto;display:grid}.pg-manual .pg-hint{padding-bottom:0}.pg-settings .pg-dialog-actions{flex-wrap:wrap;justify-content:flex-end}.pg-settings .pg-dialog-actions .pg-btn:first-child{margin-right:auto}@media (prefers-reduced-motion:reduce){.pg-shake,.pg-ring--pulse,.pg-result--bounce,.pg-title .pg-title-deco,.pg-record-banner,.pg-attract-slide,.pg-attract-cta,.pg-cap--demo,.pg-marker.is-lit b{animation:none}.pg-floaters,.pg-confetti{display:none}.pg-burst i{animation-name:pg-fade-out}.pg-cap{transition:none}}@keyframes pg-fade-out{0%{transform:rotate(var(--a)) translateY(-6vmin)}to{transform:rotate(var(--a)) translateY(-6vmin);opacity:0}}
