:root{--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
button,a,input,textarea,summary{transition:background-color .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease,box-shadow .2s ease,transform .18s var(--ease)}
button:active:not(:disabled),.outline-button:active,.active-buy:active{transform:scale(.97)}
.garment-image{transform:scale(var(--garment-scale,1));transform-origin:center}
.language-switch{display:flex;align-items:center;gap:3px;font-size:11px;color:#939393;white-space:nowrap}
.language-switch button{border:0;background:none;padding:8px 4px;color:#8a8a8a;min-height:36px}
.language-switch button[aria-pressed=true]{color:#111;text-decoration:underline;text-underline-offset:5px}
.language-switch button:hover{color:#111}
.desktop-nav{margin-right:26px;gap:34px}
.header-actions{gap:18px}
.free-label{font-weight:400;color:var(--muted);font-size:11px}
.active-buy{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111;color:#fff;border:1px solid #111;cursor:pointer;text-align:left;text-transform:none;letter-spacing:0}
.active-buy:hover{background:#333;border-color:#333;box-shadow:0 5px 18px #0000000d}
.active-buy:disabled{opacity:.55;cursor:wait}
.product-card-link:hover .product-card-name{opacity:.6}
.product-card-status{color:#111}
.page-enter{animation:pageEnter .45s var(--ease) both}
.photo-change{animation:photoIn .3s var(--ease) both}
.reveal{opacity:0;transform:translateY(12px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal.is-revealed{opacity:1;transform:none}
.product-card:nth-child(2){transition-delay:65ms}
@keyframes pageEnter{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes photoIn{from{opacity:.45}to{opacity:1}}
.page-transition{position:fixed;inset:0;background:#fff;z-index:10000;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .18s ease}
.page-transition.is-visible{opacity:1;pointer-events:auto}
.page-transition img{width:min(76vmin,470px);height:auto;max-width:86vw;mix-blend-mode:multiply;will-change:transform}
.page-transition.is-visible img{animation:sealTurn 1.25s var(--ease) infinite alternate}
@keyframes sealTurn{from{transform:scale(.94) rotate(-13deg)}to{transform:scale(1) rotate(13deg)}}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);background:#111;color:#fff;padding:14px 20px;z-index:50;font-size:12px;text-align:center;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .3s var(--ease);max-width:90vw;width:max-content}
.toast.show{opacity:1;transform:translate(-50%,0)}
.cart-dialog[open]{animation:drawerIn .3s var(--ease)}
.cart-dialog.closing{animation:drawerOut .18s ease both}
.cart-dialog::backdrop{animation:backdropIn .25s ease}
.size-dialog[open]{animation:modalIn .24s var(--ease)}
.size-dialog.closing{opacity:0;transform:translateY(8px);transition:.17s ease}
.lightbox[open]{animation:modalIn .22s ease}
.lightbox.closing{opacity:0;transition:opacity .17s ease}
@keyframes drawerIn{from{transform:translateX(100%);opacity:.6}to{transform:none;opacity:1}}
@keyframes drawerOut{to{transform:translateX(100%);opacity:0}}
@keyframes backdropIn{from{background:#0000}to{background:#00000047}}
@keyframes modalIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
#cart-content{min-height:100%;display:flex;flex-direction:column}
.cart-items{padding:12px 0}
.cart-item{display:grid;grid-template-columns:128px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}
.cart-item-image{display:block;aspect-ratio:7/5;align-self:start;margin-top:4px}
.cart-item-info>a{font-size:14px;line-height:1.45}
.cart-item-info>p{font-size:12px;margin-top:7px;color:var(--muted)}
.quantity-control{display:inline-flex;align-items:center;border:1px solid var(--line);margin-top:14px;font-size:12px}
.quantity-control button{width:33px;height:32px;border:0;background:none;font-size:16px}
.quantity-control button:hover{background:#f3f3f3}
.quantity-control button:disabled{opacity:.3}
.quantity-control span{min-width:28px;text-align:center}
.remove-item{display:block;margin-top:13px;font-size:10px;color:var(--muted)}
.cart-bottom{margin-top:auto;padding-top:30px;padding-bottom:10px}
.cart-checkout{margin-top:22px;font-size:13px;padding:18px}
.cart-empty .outline-button{margin-top:25px}
.summary-note{margin-top:18px;font-size:11px;font-weight:400;line-height:1.7;color:var(--muted)}
.summary-total{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line);font-size:14px}
.summary-total strong{font-size:17px}
.checkout-page{max-width:1250px;margin:auto;padding:26px 6% 100px}
.checkout-title{font-size:clamp(28px,3.7vw,44px);letter-spacing:-.05em;line-height:1.25;margin:22px 0 48px}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:9%;align-items:start}
.form-section-title,.summary-heading h2{font-size:13px;margin-bottom:26px;font-weight:600}
.form-field{margin-bottom:20px}
.form-field label{display:block;font-size:12px;margin-bottom:10px}
.form-field input,.form-field textarea{display:block;width:100%;border:1px solid #ccc;background:#fff;border-radius:0;color:#111;padding:16px;font:400 14px/1.6 'Courier New',Courier,monospace;outline:none;-webkit-appearance:none}
.form-field textarea{resize:vertical;min-height:118px}
.form-field input:focus,.form-field textarea:focus{border-color:#111;box-shadow:0 0 0 1px #111}
.form-field input::placeholder,.form-field textarea::placeholder{color:#999;font-size:12px}
.form-field [aria-invalid=true]{border-color:#ab2f2f}
.field-error{font-size:11px;line-height:1.6;font-weight:400;color:#a12727;min-height:0;margin-top:6px}
.field-error:empty,.form-error:empty{display:none}
.field-hint{font-size:11px;color:var(--muted);font-weight:400;line-height:1.7;margin-top:10px}
.form-error{font-size:12px;color:#a12727;font-weight:400;margin:14px 0 20px}
.submit-order{margin-top:24px;min-height:57px}
.save-hint{margin-top:14px}
.order-summary{padding:25px 25px 28px;border:1px solid var(--line);position:sticky;top:30px}
.summary-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.summary-heading h2{margin-bottom:10px}
.summary-heading .text-button{font-size:10px}
.summary-item{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:14px;padding:22px 0;font-size:12px;border-bottom:1px solid var(--line)}
.summary-item:last-of-type{border-bottom:0}
.summary-image{width:78px;aspect-ratio:7/5;display:block}
.summary-item small{display:block;font-size:10px;color:var(--muted);font-weight:400;margin-top:6px}
.order-summary .summary-total{margin-top:8px}
.empty-page{padding:80px 6% 120px;max-width:900px;margin:auto;text-align:center}
.empty-page h1{font-size:24px;margin-bottom:35px}
.empty-page .outline-button{max-width:250px;margin:auto}
.receipt-page{max-width:670px;margin:auto;padding:45px 6% 90px}
.receipt-check{display:grid;place-items:center;width:45px;height:45px;border:1px solid #111;font-size:23px;margin-bottom:30px}
.receipt-page h1{font-size:clamp(30px,4vw,45px);letter-spacing:-.05em;line-height:1.25}
.receipt-intro{font-size:13px;line-height:1.8;font-weight:400;color:var(--muted);margin:23px 0 35px}
.receipt-number{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;font-size:12px}
.receipt-number strong{display:block;font-size:15px;margin-top:8px;overflow-wrap:anywhere}
.receipt-items{margin:12px 0 20px}
.receipt-page>.outline-button{margin-top:35px;max-width:250px}
@media(max-width:850px){.desktop-nav{gap:18px;margin-right:8px}.header-actions{gap:10px}.checkout-layout{gap:6%}.order-summary{padding:20px 17px}.summary-item{grid-template-columns:58px minmax(0,1fr) auto;gap:9px}.summary-image{width:58px}.cart-item{grid-template-columns:110px 1fr}}
@media(max-width:600px){.site-header{gap:10px}.brand{width:118px}.header-actions{gap:5px}.language-switch{gap:0;font-size:10px}.language-switch button{padding:8px 3px}.icon-button{width:38px}.cart-trigger{width:auto}.menu-trigger{width:37px}.checkout-page{padding:20px 6% 65px}.checkout-title{font-size:30px;margin:20px 0 32px}.checkout-layout{grid-template-columns:1fr;gap:35px}.order-summary{position:static;grid-row:1;padding:20px}.form-section-title{margin-bottom:22px}.form-field input,.form-field textarea{font-size:16px;padding:14px}.form-field input::placeholder,.form-field textarea::placeholder{font-size:12px}.summary-item{grid-template-columns:75px minmax(0,1fr) auto;font-size:12px}.summary-image{width:75px}.cart-dialog{padding:20px 6%}.cart-item{grid-template-columns:110px minmax(0,1fr);gap:14px}.cart-item-info>a{font-size:13px}.cart-checkout{padding:17px;font-size:12px}.page-transition img{width:80vmin}.receipt-page{padding:35px 6% 65px}.receipt-page h1{font-size:32px}.receipt-number strong{font-size:13px}.toast{font-size:11px}.summary-total{font-size:13px}.free-label{font-size:10px}}
@media(max-width:350px){.brand{width:96px}.site-header{padding-left:5%;padding-right:5%;gap:5px}.header-actions{gap:2px}.language-switch button{padding-left:2px;padding-right:2px}.cart-item{grid-template-columns:90px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
