.product-page { min-height:100vh; }.product-header { height:82px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 3.4vw; border-bottom:1px solid rgba(24,24,24,.13); font-size:11px; letter-spacing:.08em; }.product-header .cart { justify-self:end; }.cart-dark { font-size:11px; }.product-main { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(350px,.8fr); align-items:start; }.product-gallery { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--paper); }.product-gallery figure { margin:0; height:calc(100vh - 82px); min-height:650px; overflow:hidden; background:#eee; }.product-gallery img { width:100%; height:100%; object-fit:cover; }.product-details { position:sticky; top:0; padding:11vh 5.3vw 8vh; min-height:calc(100vh - 82px); }.product-title { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; border-bottom:1px solid rgba(24,24,24,.3); padding-bottom:31px; }.product-title h1 { font-family:'Playfair Display',Georgia,serif; font-weight:400; font-size:clamp(40px,4vw,59px); line-height:.98; margin:27px 0 0; letter-spacing:-.04em; }.product-title span { margin-top:36px; font:11px 'DM Mono'; }.product-description { max-width:385px; color:var(--quiet); font-size:13px; line-height:1.75; margin:31px 0 44px; }.selector { border-top:1px solid rgba(24,24,24,.18); padding:18px 0 22px; }.selector-title { display:flex; justify-content:space-between; font-size:11px; letter-spacing:.04em; }.selector-title a { color:var(--quiet); text-decoration:underline; text-underline-offset:3px; }.swatches,.sizes { display:flex; gap:9px; margin-top:16px; }.swatch { border:1px solid transparent; padding:3px; background:none; width:28px; height:28px; border-radius:50%; cursor:pointer; }.swatch i { display:block; width:100%; height:100%; border-radius:50%; background:#d8cfbd; }.swatch[data-color="olive"] i { background:#4d5946; }.swatch[data-color="nuit"] i { background:#1a202d; }.swatch.active { border-color:var(--ink); }.sizes button { font:11px 'DM Mono'; width:48px; height:39px; color:var(--ink); border:1px solid rgba(24,24,24,.3); background:transparent; cursor:pointer; }.sizes button.active { color:var(--paper); background:var(--ink); border-color:var(--ink); }.add-to-cart { width:100%; margin-top:13px; padding:18px 16px; color:var(--paper); background:var(--ink); border:0; font:11px 'DM Mono'; letter-spacing:.05em; cursor:pointer; display:flex; justify-content:space-between; transition:background .25s; }.add-to-cart:hover { background:var(--moss); }.cart-confirm { min-height:22px; margin:12px 0 0; font-size:11px; color:var(--moss); }.product-notes { margin-top:32px; border-top:1px solid rgba(24,24,24,.18); padding-top:15px; color:var(--quiet); font:10px 'DM Mono'; text-transform:uppercase; }.product-notes p { margin:0 0 9px; }.size-guide { background:#e6e0d6; padding:12vh 30vw 12vh 8vw; }.size-guide p:last-child { font-family:'Playfair Display',Georgia,serif; font-size:clamp(27px,3.3vw,45px); line-height:1.15; letter-spacing:-.03em; margin-top:25px; }@media(max-width:780px){.product-header { height:66px; padding:0 22px; }.product-main { display:block; }.product-gallery { display:flex; overflow:auto; }.product-gallery figure { min-width:86vw; height:112vw; min-height:0; }.product-details { position:static; min-height:0; padding:11vh 28px 9vh; }.size-guide { padding:10vh 28px; }}
