:root{
  --glass-surface:rgba(255,255,255,.62);--glass-thick:rgba(247,245,242,.88);
  --glass-edge:rgba(255,255,255,.92);--glass-shadow:0 10px 32px rgba(60,45,38,.1),inset 0 1px 0 rgba(255,255,255,.98);
  --glass-radius:28px;--ui-ease:cubic-bezier(.22,.68,0,1.02);
}
body{font-optical-sizing:auto}.header{
  position:sticky;top:16px;z-index:20;height:80px;width:calc(100% - 64px);max-width:1600px;
  margin-top:16px;margin-bottom:20px;padding:0 26px;border:1px solid var(--glass-edge);border-radius:var(--glass-radius);
  background:var(--glass-surface);backdrop-filter:blur(22px) saturate(155%);-webkit-backdrop-filter:blur(22px) saturate(155%);
  box-shadow:var(--glass-shadow);isolation:isolate;
}
.header .brand-mark{width:49px}.header .brand-type{font-size:31px}.header .brand-type small{font-size:7px;letter-spacing:4px}
.header .desktop-nav{gap:26px;padding-left:0}.header .desktop-nav a,.header .desktop-nav button{font-weight:550;color:var(--ink);letter-spacing:.01em}
.header .desktop-nav .active{color:var(--red)}.header-actions{gap:7px}.header .icon-button:hover{background:rgba(255,255,255,.94)}
.button{box-shadow:inset 0 1px 0 #ffffff42,0 7px 18px #9d122512;transition:background .2s,color .2s,box-shadow .2s;touch-action:manipulation}
.button:hover{transform:none;box-shadow:inset 0 1px 0 #ffffff42,0 9px 22px #9d12251c}
.button:active,.icon-button:active,.round-button:active{filter:brightness(.95)}
.icon-button,.round-button,.size-option,.gallery-option,.finder-option{touch-action:manipulation}
.hero .text-link,.button-outline,.button-light{
  background:var(--glass-surface);backdrop-filter:blur(12px) saturate(145%);-webkit-backdrop-filter:blur(12px) saturate(145%);
  border:1px solid var(--glass-edge);border-radius:999px;box-shadow:var(--glass-shadow);
}
.hero .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;text-decoration:none;font-size:14px;color:var(--ink);font-weight:550;max-width:none}
.hero .text-link:hover,.button-outline:hover{background:rgba(255,255,255,.95);color:var(--red)}
.button-light{color:var(--ink);background:rgba(255,255,255,.8);font-size:14px}
.button-light:hover{background:white;color:var(--red)}
.category{border:1px solid #fff;box-shadow:inset 0 1px 0 #fff,0 5px 15px #3c2d2605;border-radius:18px}
.category .round-button{background:rgba(255,255,255,.95);border-color:#dbd4cd}
.category[aria-current=true]{border-color:#c9b0b3}.category[aria-current=true] .round-button{color:var(--red)}
.product-stage{border:1px solid #fff;border-radius:24px}.product-gallery{min-width:0}
.gallery-controls{
  padding:12px;margin-top:14px;gap:12px;border:1px solid var(--glass-edge);border-radius:24px;
  background:var(--glass-surface);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);box-shadow:var(--glass-shadow);
}
.gallery-option{background:transparent;border-radius:15px;border:1px solid transparent;transition:border-color .2s}
.gallery-option[aria-pressed=true]{border-color:var(--red);background:#ffffffee}
.gallery-option .product-art,.gallery-option>img{border-radius:13px 13px 0 0}.gallery-option>span{background:transparent;color:var(--ink);font-weight:550;font-size:12px;min-height:38px;display:grid;place-items:center;line-height:1.5;padding:6px}
.product-stage{position:relative}.gallery-layer{position:absolute;inset:0;transform-origin:50% 50%;pointer-events:none}
.gallery-layer>.product-art,.gallery-layer>img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover}
.gallery-layer .product-art::before{width:90%;left:5%}
.product-size-picker .size-options{
  position:relative;isolation:isolate;gap:4px;padding:6px;border:1px solid var(--glass-edge);border-radius:28px;
  background:#eeeae5bf;box-shadow:inset 0 1px 0 #fff,0 5px 18px #3c2d2608;
}
.product-size-picker .size-option{border-radius:21px;font-size:14px;min-height:48px;position:relative}
.size-options[data-fluid] .size-option{background:transparent;border-color:transparent;z-index:1}
.size-options[data-fluid] .size-option[aria-pressed=true]{color:var(--red);font-weight:650}
.size-highlight{position:absolute;left:0;top:0;background:#fff;border:1px solid #c8717e55;border-radius:21px;box-shadow:0 4px 12px #9d122514;pointer-events:none;z-index:0}
.product-intro h1{letter-spacing:-.035em}.product-tagline{letter-spacing:-.015em}.product-description{letter-spacing:0}
.product-attributes>span{background:#f7f5f2;border-color:#e1dad4;font-weight:550;font-size:12px;padding:9px 13px}
.product-page-ctas .button{font-size:14px;min-height:52px}
dialog{
  border:1px solid var(--glass-edge);border-radius:32px;padding:28px;background:var(--glass-thick);
  box-shadow:0 24px 80px #2c211c33,inset 0 1px 0 #fff;backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%);
  transform-origin:50% 50%;max-width:620px;
}
dialog::backdrop{background:#221b172b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.modal-header{align-items:center;gap:14px}.modal-header h2{font-size:27px;line-height:1.2;letter-spacing:-.03em;font-weight:700}
.modal-header .icon-button{background:#eeeae5;width:44px;height:44px}.modal-header .icon-button:hover{background:#e6e0d9}
#modal-content p,#modal-content ul{color:#5a514b}.muted-note{color:#635a54!important}
.sheet-grip{display:none}
.drawer{inset:16px 16px 16px auto;width:min(455px,calc(100% - 32px));height:calc(100vh - 32px);height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);max-width:455px;border-radius:32px;margin:0}
.search-field,.copy-selection{border:1px solid #ded7d0;border-radius:20px;background:#ffffffed;min-height:52px;color:var(--ink)}
.search-result{padding:14px;gap:16px;margin-top:10px;background:#fff;border:1px solid #e2dcd6;border-radius:22px}
.search-result .product-art{border-radius:12px}.search-result strong{font-weight:700}.search-result small{color:#635a54}
.finder-option{background:#fff;border-radius:18px;padding:18px}.finder-option[aria-pressed=true]{background:#fff;border-color:var(--red);box-shadow:0 4px 14px #9d122512}
.mobile-links a:hover,.mobile-links a:focus-visible{color:var(--red)}
.toast{background:rgba(40,33,29,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff2b;box-shadow:0 8px 30px #2c211c29;border-radius:24px;pointer-events:none}
.skip-link{z-index:99}.skip-link:not(:focus-visible){top:-80px}html{scroll-padding-top:118px}
.breadcrumbs a{min-height:30px;display:inline-flex;align-items:center}
@media(min-width:1025px){
  .hero{margin-top:-116px;padding-top:116px}
  .product-stage{height:500px}.product-hero{padding-bottom:50px}.product-tagline{font-size:26px}.product-description{font-size:16px}
}
@media(max-width:1024px){
  .header{height:80px;gap:12px;padding:0 20px}.header .brand-mark{width:40px}.header .brand-type{font-size:28px}
  .header-actions{gap:3px}.header .icon-button{width:44px;height:44px}.gallery-option>span{min-height:44px}
}
@media(max-width:600px){
  .header{top:10px;height:72px;width:calc(100% - 24px);margin-top:10px;margin-bottom:12px;padding:0 12px;border-radius:24px;gap:6px}
  .header .brand-mark{width:28px}.header .brand-type{font-size:23px}.header .brand-type small{font-size:5px;letter-spacing:2.8px}.header .brand{gap:5px}.header-actions{gap:0}
  .hero-ctas{gap:12px}.hero .text-link{font-size:14px;min-height:48px;padding:12px 22px}.hero .button{min-height:48px}
  .gallery-controls{padding:8px;gap:7px;border-radius:22px}.gallery-option{border-radius:12px}.gallery-option>span{font-size:11px;padding:6px 2px}
  .product-stage{border-radius:22px}.product-size-picker .size-options{border-radius:24px;padding:5px}.product-size-picker .size-option{border-radius:19px}.size-highlight{border-radius:19px}
  dialog,.drawer{position:fixed;inset:auto 10px calc(10px + env(safe-area-inset-bottom,0px));margin:0;width:calc(100% - 20px);height:auto;max-width:none;max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px - env(safe-area-inset-bottom,0px));padding:0 22px 24px;border-radius:30px}
  .sheet-grip{height:44px;display:grid;place-items:center;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.sheet-grip>span{width:40px;height:5px;border-radius:9px;background:#a49c94}
  dialog[data-dragging] .sheet-grip{cursor:grabbing}.modal-header{margin-bottom:18px}.modal-header h2{font-size:26px}
  .field-label{font-size:14px;line-height:1.6;margin-top:14px}.search-field{font-size:16px;padding:14px 16px}
  .search-result{padding:12px;gap:12px}.search-result .product-art{width:72px;height:74px}.search-result strong{font-size:16px}.search-result small{font-size:13px;line-height:1.5}
  .toast{font-size:13px;border-radius:20px}.product-page-ctas .button{font-size:14px}.breadcrumbs{font-size:12px}html{scroll-padding-top:106px}
}
@media(max-width:359px){
  .header{padding:0 9px}.header .brand-mark{width:24px}.header .brand-type{font-size:20px}.header .brand-type small{font-size:5px;letter-spacing:2.3px}
  .hero .text-link{width:100%}.gallery-option>span{font-size:10px}.gallery-controls{gap:5px;padding:6px}
  dialog,.drawer{padding-inline:16px}.modal-header h2{font-size:24px}
}
@media(max-height:500px) and (max-width:1024px){
  .header{height:64px;top:8px;margin-top:8px;margin-bottom:10px}
  dialog{max-height:calc(100dvh - 24px);padding:18px;margin:auto}.drawer{inset:10px 10px 10px auto;height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);margin:0}
  .sheet-grip{height:32px}.modal-header{margin-bottom:12px}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .header,.gallery-controls,.hero .text-link,.button-outline{background:#f7f5f2}dialog{background:#f7f5f2}.button-light{background:white}
}
@media(prefers-reduced-transparency:reduce){
  .header,.gallery-controls,.hero .text-link,.button-outline,dialog{background:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}
  .button-light{background:white;backdrop-filter:none;-webkit-backdrop-filter:none}.toast{background:#28211d;backdrop-filter:none;-webkit-backdrop-filter:none}
  dialog::backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(prefers-contrast:more){
  .header,.gallery-controls,.hero .text-link,.button-outline,dialog{background:var(--paper);border-color:#746e69;backdrop-filter:none;-webkit-backdrop-filter:none}
  .button-light{background:white;color:#24211f}.size-highlight{border-color:var(--red)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.button,.icon-button,.round-button,.gallery-option,.size-option{transition:none;scale:1!important}
}

/* Contact light stays behind text, and responds to the point of contact. */
.liquid-surface{
  --liquid-x:50%;--liquid-y:50%;--liquid-angle:110deg;--liquid-presence:0;--liquid-pressure:0;
  --liquid-tx:0px;--liquid-ty:0px;isolation:isolate;translate:var(--liquid-tx) var(--liquid-ty);
}
.liquid-surface[data-liquid-position=relative]{position:relative}
.liquid-surface::before,.liquid-surface::after{
  content:'';position:absolute;inset:1px;border-radius:inherit;pointer-events:none;z-index:-1;
  opacity:var(--liquid-presence);
}
.liquid-surface::before{
  background:
    radial-gradient(ellipse calc(115px + 40px * var(--liquid-pressure)) calc(60px + 20px * var(--liquid-pressure)) at var(--liquid-x) var(--liquid-y),#fff9 0%,#fff4 35%,#fff0 76%),
    linear-gradient(var(--liquid-angle),#fff0 15%,#ffffff30 48%,#ffffff06 68%,#fff0 86%);
}
.liquid-surface::after{
  background:radial-gradient(ellipse calc(110px + 38px * var(--liquid-pressure)) calc(63px + 18px * var(--liquid-pressure)) at var(--liquid-x) var(--liquid-y),#fff0 28%,#fff2 45%,#fff9 54%,#bea99522 57%,#fff0 70%);
  mask-image:radial-gradient(ellipse 170px 110px at var(--liquid-x) var(--liquid-y),#000 25%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 170px 110px at var(--liquid-x) var(--liquid-y),#000 25%,transparent 80%);
  backdrop-filter:blur(1.2px) saturate(120%) brightness(1.035);-webkit-backdrop-filter:blur(1.2px) saturate(120%) brightness(1.035);
}
.header.liquid-surface,.gallery-controls.liquid-surface{user-select:none;-webkit-user-select:none}
.header.liquid-surface,.gallery-controls.liquid-surface,.liquid-surface.button-outline,.liquid-surface.button-light,.hero .liquid-surface.text-link{touch-action:pan-y pinch-zoom}
.liquid-surface[data-liquid-active=true]::before,.liquid-surface[data-liquid-active=true]::after{will-change:opacity}
.liquid-surface:focus-visible::before{opacity:.5}
.toast.liquid-surface::before,.toast.liquid-surface::after{opacity:calc(var(--liquid-presence) * .25)}
@media(hover:none),(pointer:coarse){
  .liquid-surface::after{backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce),(prefers-reduced-transparency:reduce),(prefers-contrast:more){
  .liquid-surface{translate:none}.liquid-surface::before,.liquid-surface::after{display:none}
  .liquid-surface[data-liquid-pressed=true]{outline:1px solid var(--red);outline-offset:1px}
}
