/* ==========================================================================
   Timeless — storefront stylesheet
   Rebuilt one-for-one from the byraph.com design, with readable class names.
   ========================================================================== */

/* ---- Fonts -------------------------------------------------------------
   Typeface direction from cactusplantfleamarket.com: a monospaced Helvetica
   ("hv-mono") for everything, OCR-A on buttons. Both are commercial fonts.
   Drop licensed files into /assets/fonts/ (hv-mono.woff2, ocr-a.woff2) and the
   site switches to them; until then it uses Roboto Mono from Google Fonts.  */
@font-face{font-display:swap;font-family:hv-mono;src:url(/assets/fonts/hv-mono.woff2) format("woff2")}
@font-face{font-display:swap;font-family:ocr-a;src:url(/assets/fonts/ocr-a.woff2) format("woff2")}

:root{
  --theme-primary-color:#1a1a1a;--theme-secondary-color:rgb(209,93,0);--theme-accent-color:#ff7201;
  --theme-text-color:#000;--theme-background-color:#fff;--theme-link-color:#646cff;--theme-border-color:#0003;
  --theme-muted-text-color:#0009;--theme-shadow-color:#0000001a;--theme-white-color:#fff;--theme-black-color:#000;
  --theme-gray-light:#f3f3f3;--theme-gray-medium:#666;--theme-gray-dark:#151515;
  --theme-heading-font:"hv-mono","Roboto Mono";--theme-body-font:"hv-mono","Roboto Mono";--theme-button-font:"ocr-a","hv-mono","Roboto Mono";
  --site-container:100rem;--site-container-narrow:76.25rem;
  --z-dropdown:100;--z-sticky:200;--z-overlay:500;--z-modal:1000;--z-notification:2000;
  --cursor-default:url(/assets/img/cursor-32.png) 3 6,auto;
  --cursor-pointer:url(/assets/img/cursor-40.png) 4 7,pointer;
  font-family:var(--theme-body-font),ui-monospace,Menlo,monospace;background-color:var(--theme-background-color);color:var(--theme-text-color);
  color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5
}
*,:before,:after{box-sizing:border-box}
html{height:100%;font-size:14.5px}
body{cursor:var(--cursor-default);background-color:var(--theme-background-color);display:flex;flex-direction:column;font-family:var(--theme-body-font),ui-monospace,Menlo,monospace;margin:0;min-height:100vh;min-width:20rem}
a{color:var(--theme-link-color);font-weight:500;text-decoration:inherit}
img,video{max-width:100%}
button{background-color:var(--theme-primary-color);border:.0625rem solid #0000;border-radius:.5rem;color:var(--theme-background-color);cursor:var(--cursor-pointer);font-family:inherit;font-size:1em;font-weight:500;padding:.6em 1.2em;transition:border-color .25s}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;width:100%}
.site>main{flex:1 0 auto;overflow-x:hidden;padding:0;width:100%}
.site>footer{flex-shrink:0}
.section{max-width:100%;overflow-x:hidden;width:100%}
.section--carousel{padding:36px 0}
body.is-locked{overflow:hidden}

/* ---- Navbar ---------------------------------------------------------- */
.nav-wrap{width:100%}
.nav-wrap--placeholder{position:relative;visibility:hidden;z-index:50}
.nav-wrap--fixed{left:0;pointer-events:none;position:fixed;right:0;top:0;transform:translateY(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:100%;z-index:50}
.nav-wrap--fixed[data-nav-visible=true]{pointer-events:auto;transform:translateY(0)}
.nav-wrap--fixed[data-nav-hidden=true]{pointer-events:none;transform:translateY(-100%)}
.nav-wrap--fixed.no-transition{transition:none}
.navbar{background-color:var(--theme-white-color);border-bottom:.0625rem solid rgb(18 18 18/8%);padding:0;position:relative;width:100%}
.nav-inner{align-items:center;display:flex;gap:2rem;justify-content:space-between;margin:0 auto;max-width:88rem;overflow:visible;padding:1.15rem 2rem}
.nav-inner>*{overflow:visible}
.nav-logo{align-items:center;display:flex;text-decoration:none}
.logo{display:inline-flex;align-items:center;gap:.5rem;color:#000;line-height:1}
.logo__mark{display:block;height:3.375rem;width:auto}
.logo__word{font-size:1.55rem;font-weight:500;letter-spacing:-.03em;text-transform:lowercase;color:inherit}
.nav-logo{color:#000}
.nav-logo .logo__word{display:none}
.nav-links{align-items:center;display:flex;flex:1;justify-content:center}
.nav-list{align-content:flex-start;align-items:flex-start;color:var(--theme-muted-text-color);column-gap:1rem;display:flex;flex-wrap:wrap;font-size:1rem;font-weight:400;justify-content:flex-start;letter-spacing:.0375rem;line-height:1.8;list-style:none;margin:0;padding:0;row-gap:1rem}
.nav-item{flex-shrink:0;list-style:none;position:relative}
.nav-item__btn{align-items:center;background:none;border:none;color:rgba(0,0,0,.4);cursor:var(--cursor-pointer);display:flex;flex-grow:0;flex-shrink:0;font-family:inherit;font-weight:400;gap:.25rem;justify-content:space-between;letter-spacing:.025rem;line-height:1.45;min-width:fit-content;outline:none;padding:0;text-decoration:none;text-transform:uppercase;text-underline-offset:.1875rem;white-space:nowrap;width:auto;border-radius:0}
.nav-item__btn:hover{color:var(--theme-muted-text-color);text-decoration:underline;text-decoration-color:var(--theme-black-color)}
.nav-item__caret{align-items:center;display:inline-flex;flex-shrink:0;height:100%;justify-content:center;width:fit-content}
.nav-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem;overflow:visible}
.nav-actions>.icon-btn{height:2rem;min-height:2rem;min-width:2rem;width:2rem}
.nav-actions>.icon-btn:after{content:"";height:2.75rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:2.75rem}
.icon-btn{align-items:center;background:none;border:none;border-radius:0;cursor:var(--cursor-pointer);display:flex;flex-shrink:0;justify-content:center;overflow:visible;padding:0;position:relative;text-decoration:none;transition:opacity .2s;color:var(--theme-black-color)}
.icon-btn:hover{opacity:.7;color:var(--theme-black-color)}
.icon-btn svg{display:block}
.cart-count{position:absolute;top:-.35rem;right:-.45rem;min-width:1rem;height:1rem;padding:0 .25rem;border-radius:999px;background:var(--theme-black-color);color:#fff;font-size:.625rem;font-weight:700;line-height:1rem;text-align:center;display:none}
.cart-count[data-count]:not([data-count="0"]){display:block}
.nav-burger{align-items:center;background:none;border:none;border-radius:0;color:var(--theme-black-color);cursor:var(--cursor-pointer);display:none;justify-content:center;min-height:2.75rem;min-width:2.75rem;padding:.5rem;z-index:70}
.nav-burger svg{height:1.5rem;width:1.5rem}

@media (min-width:991px){
  .nav-inner{display:grid;gap:1.25rem;grid-template-columns:auto minmax(0,1fr) auto}
  .nav-inner>.nav-logo{justify-self:start}
  .nav-links{min-width:0}
  .nav-primary{align-items:center;display:flex;gap:1.875rem;justify-content:safe center;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;white-space:nowrap;width:100%}
  .nav-primary::-webkit-scrollbar{display:none}
  .nav-primary__btn,.nav-primary__link,.nav-primary__back{align-items:center;background:none;border:0;border-radius:0;cursor:var(--cursor-pointer);display:inline-flex;font-family:inherit;gap:.375rem;line-height:inherit;margin:0;padding:0;text-decoration:none;white-space:nowrap;color:var(--theme-black-color);font-size:1rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase}
  .nav-primary__back{color:var(--theme-muted-text-color);font-weight:400}
  .nav-primary__btn:hover,.nav-primary__link:hover,.nav-primary__back:hover{color:hsla(0,0%,7%,.6)}
  .nav-primary__btn[data-open=true]{color:hsla(0,0%,7%,.6)}
  .nav-primary>*{animation:navbar-shop-in .26s cubic-bezier(.22,.61,.36,1) both}
  .nav-primary>:nth-child(2){animation-delay:.03s}.nav-primary>:nth-child(3){animation-delay:.06s}.nav-primary>:nth-child(4){animation-delay:.09s}.nav-primary>:nth-child(5){animation-delay:.12s}.nav-primary>:nth-child(n+6){animation-delay:.15s}
  .nav-caret{display:inline-flex;transition:transform .32s cubic-bezier(.22,.61,.36,1)}
  .nav-caret[data-open=true]{transform:rotate(180deg)}
  .nav-subrow{background-color:var(--theme-white-color);border-bottom:1px solid transparent;left:0;max-height:0;overflow:hidden;position:absolute;right:0;top:100%;transition:max-height .34s cubic-bezier(.22,.61,.36,1),border-color .34s cubic-bezier(.22,.61,.36,1);z-index:60}
  .nav-subrow[data-open=true]{border-bottom-color:rgb(18 18 18/8%);max-height:4rem}
  .nav-subrow__inner{align-items:center;display:flex;gap:1.625rem;height:3.75rem;justify-content:center;margin:0 auto;max-width:88rem;overflow-x:auto;overflow-y:hidden;padding:0 2rem;scrollbar-width:none}
  .nav-subrow__inner::-webkit-scrollbar{display:none}
  .nav-subrow__inner>*{opacity:0;transform:translateX(-.875rem);transition:opacity .24s cubic-bezier(.22,.61,.36,1),transform .34s cubic-bezier(.22,.61,.36,1)}
  .nav-subrow[data-open=true] .nav-subrow__inner>*{opacity:1;transform:translateX(0)}
  .nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(2){transition-delay:.03s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(3){transition-delay:.06s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(4){transition-delay:.09s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(5){transition-delay:.12s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(6){transition-delay:.15s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(7){transition-delay:.18s}.nav-subrow[data-open=true] .nav-subrow__inner>:nth-child(n+8){transition-delay:.21s}
  .nav-subrow__link{color:rgba(0,0,0,.55);font-size:.875rem;font-weight:400;letter-spacing:.025rem;text-transform:uppercase;text-decoration:none;white-space:nowrap}
  .nav-subrow__link:hover{color:var(--theme-black-color);text-decoration:underline;text-underline-offset:.1875rem}
  .nav-mobile{display:none}
}
@keyframes navbar-shop-in{from{opacity:0;transform:translateX(-.5rem)}to{opacity:1;transform:translateX(0)}}

@media (max-width:990px){
  .navbar{position:relative;transform:translateZ(0);z-index:60}
  .nav-inner{gap:1rem;min-height:4.5rem;overflow:visible;padding:0 1rem;position:relative}
  .nav-burger{display:flex;order:-1}
  .nav-logo{order:0}
  .nav-actions{order:1;gap:.75rem;min-width:0}
  .logo__mark{height:3rem}.logo__word{font-size:1.35rem}
  .nav-primary,.nav-subrow{display:none!important}
  .nav-links{align-items:flex-start;background-color:var(--theme-white-color);bottom:0;display:flex;flex-direction:column;height:calc(100vh - 4.5rem);justify-content:flex-start;left:0;overflow:hidden;padding-top:0;pointer-events:none;position:fixed;right:0;top:4.5rem;transform:translateX(-100%);transition:none;z-index:60}
  .nav-links[data-mobile-open=true]{pointer-events:auto;transform:translateX(0);transition:transform .3s ease;width:50%}
  .nav-mobile{background-color:var(--theme-white-color);bottom:0;left:0;overflow-y:auto;padding:30px 0;position:absolute;right:0;top:0;transition:transform .1s ease-in;will-change:transform;width:100%}
  .nav-mobile[data-mobile-view-hidden=true]{transform:translateX(-100%)}
  .nav-list{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:0;justify-content:flex-start;margin:0;padding:0;width:100%}
  .nav-item{width:100%}
  .nav-item__btn{color:#151515;font-size:18px;justify-content:space-between;padding:11px 30px;width:100%}
  .nav-item__btn:hover{text-decoration:none}
  .nav-mobile-sub{position:absolute;inset:0;background:#fff;padding:30px 0;overflow-y:auto;transform:translateX(100%);transition:transform .25s ease}
  .nav-mobile-sub[data-open=true]{transform:translateX(0)}
  .nav-mobile-sub__back{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:0;border-radius:0;color:#151515;font-size:18px;padding:11px 30px;text-transform:uppercase;justify-content:flex-start;margin-bottom:.5rem}
  .nav-mobile-sub__link{display:block;color:#151515;font-size:16px;padding:11px 30px;text-transform:uppercase;text-decoration:none;font-weight:400;letter-spacing:.025rem}
  .nav-overlay{position:fixed;inset:4.5rem 0 0;background:rgba(0,0,0,.25);z-index:40;opacity:0;pointer-events:none;transition:opacity .3s}
  .nav-overlay[data-open=true]{opacity:1;pointer-events:auto}
}
@media (max-width:500px){.nav-links[data-mobile-open=true]{width:100%}}

/* ---- Search bar ------------------------------------------------------ */
.search-bar{position:absolute;inset:0;background:#fff;display:none;align-items:center;gap:1rem;padding:0 1rem;z-index:65}
.search-bar[data-open=true]{display:flex}
.search-bar__form{flex:1;display:flex;align-items:center;max-width:60rem;margin:0 auto;position:relative}
.search-bar__input{flex:1;height:2.75rem;border:1px solid rgba(0,0,0,.25);border-radius:.375rem;padding:0 3rem 0 .875rem;font:inherit;font-size:1rem;outline:none;background:#fff}
.search-bar__input:focus{border-color:#000}
.search-bar__input::-webkit-search-cancel-button,.search-bar__input::-webkit-search-decoration{-webkit-appearance:none;display:none}
.search-bar__submit{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);background:none;border:0;padding:.5rem;color:#000;border-radius:0}
.search-bar__close{background:none;border:0;padding:.5rem;color:#000;border-radius:0}
.search-results{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid rgb(18 18 18/8%);max-height:70vh;overflow:auto;z-index:65;display:none}
.search-results[data-open=true]{display:block}
.search-results__inner{max-width:60rem;margin:0 auto;padding:1rem}
.search-results__item{display:flex;gap:1rem;align-items:center;padding:.5rem;border-radius:.5rem;color:inherit;text-decoration:none}
.search-results__item:hover{background:var(--theme-gray-light)}
.search-results__item img{width:3.5rem;height:3.5rem;object-fit:contain;background:var(--theme-gray-light);border-radius:.5rem;mix-blend-mode:darken}
.search-results__brand{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.0375rem}
.search-results__title{font-size:.875rem;text-transform:lowercase}
.search-results__price{margin-left:auto;font-size:.875rem;font-weight:500}
.search-results__all{display:block;padding:.75rem .5rem;font-size:.8125rem;text-transform:uppercase;color:#000;letter-spacing:.03em}
.page-dim{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:45;opacity:0;pointer-events:none;transition:opacity .25s}
.page-dim[data-open=true]{opacity:1;pointer-events:auto}

/* ---- Hero ------------------------------------------------------------- */
.hero{align-items:center;display:flex;height:100vh;justify-content:center;max-height:45rem;min-height:37.5rem;overflow:hidden;position:relative;width:100%;z-index:1;background:#000}
.hero__media{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}
.hero__video,.hero__poster{height:100%;object-fit:cover;width:100%;display:block}
.hero__overlay{background:var(--theme-muted-text-color);height:100%;left:0;top:0;z-index:1;position:absolute;width:100%}
.hero__content{bottom:0;color:hsla(0,0%,100%,.75);left:50%;max-width:37.1875rem;padding:2.5rem 1rem 5.625rem;transform:translateX(-50%);z-index:2;position:absolute;width:100%;display:block;text-align:center}
.hero__title{font-size:3rem;letter-spacing:-.0125rem;line-height:1.2;margin:0;color:var(--theme-white-color);font-weight:500;display:block;text-align:center}
.hero__subtitle{color:var(--theme-white-color);font-weight:500;display:block;font-size:1.125rem;letter-spacing:.025rem;line-height:1.4;margin:.625rem 0 0;overflow-wrap:break-word;text-align:center}
.hero__subtitle p{margin:0}
.hero__actions{display:flex;gap:1.5rem;justify-content:center;margin-top:1.25rem}
.hero__btn{align-items:center;appearance:none;border:none;cursor:var(--cursor-pointer);display:flex;justify-content:center;position:relative;text-align:center;text-decoration:none;transition:all .3s ease}
.hero__btn span{display:block;white-space:nowrap;font-size:.8125rem;font-weight:700;letter-spacing:.01625rem;line-height:1;text-transform:uppercase}
.hero__btn--primary{background-color:var(--theme-white-color);border-radius:.75rem;color:var(--theme-black-color);min-width:13.4375rem;padding:.75rem 2.5rem}
.hero__btn--primary:hover{background-color:#f5f5f5}
.hero__btn--ghost{background-color:transparent;border:.0625rem solid hsla(0,0%,100%,.7);border-radius:.75rem;min-width:13.4375rem;padding:.75rem 2.5rem}
.hero__btn--ghost span{color:var(--theme-white-color)}
.hero__btn--ghost:hover{background-color:hsla(0,0%,100%,.1)}
@media (max-width:64rem){.hero{max-height:40rem;min-height:35rem}.hero__title{font-size:2.75rem}}
@media (max-width:48rem){.hero{height:100vh;max-height:35rem;min-height:30rem}.hero__content{max-width:100%;padding:1.5rem 1rem 3rem}.hero__title{font-size:2rem}.hero__subtitle{font-size:1rem}.hero__actions{gap:1rem;margin-top:1.5rem;max-width:100%;width:100%}.hero__btn{width:100%}.hero__btn--primary,.hero__btn--ghost{min-width:auto;padding:.875rem 1.5rem}}

/* ---- Product carousel ------------------------------------------------ */
.carousel{margin:0 auto;max-width:none;min-height:200px;padding:0 2.5rem 2rem;width:100%}
.carousel__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}
.carousel__title{font-weight:inherit;margin:0}
.carousel__title a,.carousel__title span{color:var(--theme-gray-dark);cursor:var(--cursor-pointer);display:inline;font-size:2.25rem;font-weight:400;letter-spacing:-.0125rem;line-height:1.2;margin:0;text-decoration:none;text-decoration-color:var(--theme-gray-dark);text-decoration-thickness:.0625rem;text-underline-offset:.1875rem;transition:text-decoration-thickness .1s ease;word-break:break-word;text-transform:lowercase}
.carousel__title a:hover{text-decoration:underline}
.carousel__nav{display:flex;gap:.5rem;min-width:5.5rem;padding-right:24px;width:fit-content;justify-content:flex-end}
.carousel__arrow{align-items:center;background:none;border:none;border-radius:0;color:var(--theme-black-color);cursor:var(--cursor-pointer);display:flex;justify-content:center;min-height:2.5rem;min-width:2.5rem;outline:none;padding:.5rem;transition:opacity .2s}
.carousel__arrow:hover:not(:disabled){opacity:.7}
.carousel__arrow:disabled{cursor:not-allowed;opacity:0;pointer-events:none;visibility:hidden}
.carousel__arrow svg{height:1.5rem;width:1.5rem;display:block}
.carousel__arrow--left svg{transform:rotate(90deg)}
.carousel__arrow--right svg{transform:rotate(-90deg)}
.carousel__track{overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;touch-action:pan-x pan-y;width:100%}
.carousel__track::-webkit-scrollbar{display:none}
.carousel__list{display:flex;flex-wrap:nowrap;gap:1rem;padding-bottom:1rem}
.carousel__list>*{scroll-snap-align:start}
@media (max-width:64rem){.carousel{padding:0 1.25rem 2rem;width:auto}.carousel__title a,.carousel__title span{font-size:1.875rem}}
@media (max-width:48rem){.carousel{padding:0 1rem 1.5rem}.carousel__head{margin-bottom:1rem}.carousel__title a,.carousel__title span{font-size:1.5rem}.carousel__arrow{min-height:2.5rem;min-width:2.5rem;padding:.375rem}.carousel__arrow svg{height:1.25rem;width:1.25rem}.carousel__list{gap:.75rem}}

/* ---- Product card ----------------------------------------------------- */
.card{display:flex;flex-direction:column;flex-shrink:0;cursor:var(--cursor-pointer);flex:0 0 auto;margin-bottom:0;padding:0;width:clamp(13rem,18vw,22rem)}
.card--grid{min-width:0;width:100%}
.card__ratio{display:flex;flex-direction:column;position:relative;flex:0 0 auto;width:100%}
.card__media{background-color:var(--theme-gray-light);border-radius:1rem;overflow:hidden;position:relative;aspect-ratio:.8;flex-shrink:0;width:100%}
.card__link{height:100%;left:0;pointer-events:auto;position:absolute;text-decoration:none;top:0;width:100%;z-index:1}
.card__img{--scale:1.03;background:transparent;display:block;height:100%;left:0;mix-blend-mode:darken;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}
.card__img img{backface-visibility:hidden;height:100%;max-width:100%;object-fit:contain;object-position:center;vertical-align:middle;width:100%;position:absolute;left:0;top:0;transform:translateZ(0) scale(1);transform-origin:center center;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .5s ease;will-change:opacity,transform}
.card__img img+img{opacity:0}
@media (hover:hover) and (pointer:fine){
  .card:hover .card__img img{transform:translateZ(0) scale(var(--scale))}
  .card:hover .card__img img+img{opacity:1}
  .card:hover .card__img:has(img+img) img:first-child{opacity:0}
}
.card__plus{display:none}
.card__quick{align-items:flex-end;background:transparent;bottom:0;display:flex;justify-content:center;left:0;opacity:0;padding:0;pointer-events:none;position:absolute;right:0;transform:translateY(.625rem);transition:opacity .3s ease,transform .3s ease;width:100%;z-index:10}
.card:hover .card__quick{opacity:1;transform:translateY(0)}
.card__quick-btn{align-items:center;appearance:none;border:0;border-radius:.75rem;color:var(--theme-gray-dark);cursor:var(--cursor-pointer);display:flex;font-size:.8125rem;font-weight:500;justify-content:center;letter-spacing:.01625rem;line-height:1;margin:0 1rem 1rem;padding:.5rem .75rem;pointer-events:none;position:relative;text-align:center;text-transform:uppercase;transition:opacity .3s ease,transform .3s ease,visibility .3s ease;visibility:hidden;width:calc(100% - 2rem);z-index:11;background:var(--theme-white-color)}
.card:hover .card__quick-btn{opacity:1;pointer-events:auto;visibility:visible}
.card__info{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding:0;flex:1;justify-content:space-between}
.card__text{color:inherit;display:flex;flex-direction:column;gap:.25rem;text-decoration:none}
.card__brand{display:block;font-size:.8125rem;font-weight:700;line-height:1.2;text-transform:uppercase;color:var(--theme-gray-dark);letter-spacing:.0375rem;margin:0;word-break:break-word}
.card__title{display:-webkit-box;font-size:.875rem;font-weight:400;line-height:1.4;min-height:2.449rem;overflow:hidden;text-overflow:ellipsis;text-transform:lowercase;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--theme-gray-dark);letter-spacing:.0375rem;margin:0;word-break:break-word}
.card__meta{align-items:center;display:flex;flex-wrap:nowrap;font-size:.875rem;gap:0;line-height:1.4;white-space:nowrap}
.card__price{color:var(--theme-text-color);font-size:.875rem;font-weight:500;letter-spacing:.025rem;line-height:1.3}
.card__sep{color:var(--theme-black-color);font-size:.875rem;font-weight:400}
.card--grid .card__sep{font-size:.75rem;opacity:.7}
.card__sizes{color:#999;flex-shrink:0;font-size:.875rem;font-weight:500;letter-spacing:.025rem;line-height:1;white-space:nowrap}
@media (max-width:48rem){
  .card{min-width:9.5rem;width:9.5rem}
  .card--grid{width:100%;min-width:0}
  .card__brand{font-size:.75rem}.card__title{font-size:.8125rem;min-height:auto}.card__price{font-size:.8125rem}
  .card__quick{display:none!important}
  .card__plus{align-items:center;background-color:transparent;border:none;border-radius:.375rem;cursor:var(--cursor-pointer);display:flex;height:auto;justify-content:center;margin:0;min-height:2.75rem;min-width:2.75rem;padding:.625rem;position:absolute;right:0;top:0;width:auto;z-index:20;pointer-events:auto}
  .card__plus svg{color:#121212;display:block;height:16px;width:16px}
}
.grid-cards .card{min-width:0;width:100%}
@media (max-width:768px){.grid-cards .card__brand{font-size:.6875rem;letter-spacing:.02em;line-height:1.25}.grid-cards .card__title{font-size:.8125rem;-webkit-line-clamp:3;line-height:1.3;min-height:0;text-transform:none}}

/* ---- Content banner --------------------------------------------------- */
.banner{background-color:var(--banner-bg,var(--theme-white-color));color:var(--theme-muted-text-color);display:block;font-size:1rem;font-weight:400;letter-spacing:.0375rem;line-height:1.8;margin:0 auto;max-width:var(--site-container);min-height:28.75rem;overflow:hidden;position:relative;width:100%;height:460px}
.banner__inner{align-items:stretch;display:flex;gap:0;height:100%;width:100%}
.banner__text{color:var(--banner-color,#121212);flex:0 0 50%;flex-direction:column;padding:3rem 2.5rem;text-align:center;align-items:center;display:flex;justify-content:center}
.banner__title{color:var(--banner-color,#121212);font-size:36px;font-weight:500;letter-spacing:-.2px;line-height:1.2;margin:0 0 24px;text-transform:none}
.banner__body{color:var(--banner-body-color,hsla(0,0%,7%,.75));font-size:16px;font-weight:500;letter-spacing:.4px;line-height:1.6;margin:0 0 2rem;max-width:31.25rem;white-space:pre-line}
.banner__actions{align-items:center;display:flex;flex-direction:column;font-size:13px;font-weight:500;gap:1rem;letter-spacing:.26px;width:100%}
.banner__btn{border:none;border-radius:12px;cursor:var(--cursor-pointer);display:inline-block;font-family:inherit;font-size:inherit;font-weight:500;letter-spacing:.03125rem;min-width:122px;padding:12px 40px;text-decoration:none;text-transform:uppercase;transition:opacity .2s ease;width:fit-content;background-color:var(--banner-btn-bg,var(--theme-black-color));color:var(--banner-btn-color,var(--theme-white-color))}
.banner__btn:hover{opacity:.9}
.banner__media{align-items:stretch;display:flex;flex:0 0 50%;overflow:hidden;min-width:0}
.banner__media img{display:block;height:100%;width:100%;object-fit:cover;object-position:center}
.banner--image-left .banner__inner{flex-direction:row}
.banner--image-right .banner__inner{flex-direction:row-reverse}
.banner--image-left .banner__text{border-start-end-radius:12px;border-end-end-radius:12px}
.banner--image-left .banner__media{border-start-start-radius:12px;border-end-start-radius:12px}
.banner--image-right .banner__text{border-start-start-radius:12px;border-end-start-radius:12px}
.banner--image-right .banner__media{border-start-end-radius:12px;border-end-end-radius:12px}
@media (max-width:48rem){
  .banner{display:block;height:auto;min-height:450px;padding:0 20px}
  .banner__inner{flex-direction:column!important}
  .banner__media{aspect-ratio:4/3;flex:0 0 auto;border-radius:12px 12px 0 0!important}
  .banner__text{flex:1;width:100%;border-radius:0 0 12px 12px!important;padding:20px}
  .banner__title{font-size:24px}
  .banner__body{font-size:14px;margin:0}
  .banner__btn{font-size:13px;margin-top:24px;padding:12px 40px;max-width:20rem;width:100%}
}

/* banner variant: white panel, black text, soft shadow behind the photo */
.banner--shadow{overflow:visible;padding:0 1.5rem}
.banner--shadow .banner__media{border-radius:12px!important;box-shadow:0 18px 40px rgba(0,0,0,.28),0 4px 12px rgba(0,0,0,.14)}
.banner--shadow .banner__text{border-radius:0!important}
@media (max-width:48rem){.banner--shadow{padding:0 20px}.banner--shadow .banner__media{aspect-ratio:4/3;max-height:24rem}}

/* ---- Footer ----------------------------------------------------------- */
.footer{background-color:var(--theme-gray-dark);border-top-left-radius:.625rem;border-top-right-radius:.625rem;color:hsla(0,0%,100%,.75);display:flex;flex-direction:column;font-size:1rem;font-weight:400;letter-spacing:.0375rem;line-height:1.8;margin-top:0;padding:2.25rem 0;width:100%}
.footer__container{margin:0 auto;max-width:var(--site-container);padding:0;width:100%}
.footer__top{padding:0 0 3.125rem}
.footer__top .footer__container{align-items:start;display:grid;gap:0;grid-template-columns:auto 1fr 1fr 1fr;min-height:4.4375rem}
.footer__brand{align-items:center;display:flex;grid-column:1;width:17.375rem}
.footer__logo{align-items:center;display:flex;text-decoration:none}
.footer__logo{color:#fff}.footer__logo .logo{color:#fff}.footer__logo .logo__mark{height:2.5rem}
.footer__logo:hover{opacity:.8}
.footer__links{display:grid;gap:0;grid-column:2/4;grid-template-columns:1fr 1fr}
.footer__list{color:hsla(0,0%,100%,.75);display:block;font-size:1rem;font-weight:400;letter-spacing:.0375rem;line-height:1.8;min-height:3.6rem;width:17.4175625rem;list-style:none;margin:0;padding:0}
.footer__list li{list-style:none;margin:0;padding:0}
.footer__link{color:var(--theme-white-color);cursor:var(--cursor-pointer);display:inline-block;font-size:1rem;font-weight:500;letter-spacing:.03125rem;line-height:1;padding-bottom:.3125rem;text-align:left;text-decoration:none;text-transform:lowercase;text-underline-offset:.1875rem;width:auto}
.footer__link:hover{opacity:.8}
.footer__newsletter{display:flex;flex-direction:column;gap:0;grid-column:4;min-height:4.4375rem;width:22rem}
.footer__newsletter-title{color:var(--theme-white-color);display:block;font-size:1.125rem;font-weight:500;letter-spacing:.03125rem;line-height:1;margin:0 0 .3125rem;max-width:22rem;text-align:left;text-transform:lowercase;width:100%}
.footer__field{align-items:center;border-bottom:1px solid #858585;column-gap:.5rem;display:flex;padding-bottom:0;width:100%;min-height:2.8125rem;position:relative}
.footer__input{appearance:none;background-color:transparent;border:none;color:var(--theme-white-color);cursor:text;display:block;flex:1;font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.5px;line-height:1;margin:0;min-width:0;outline:none;overflow:hidden;padding:.9375rem 0;text-align:left;width:auto}
.footer__input::placeholder{color:hsla(0,0%,100%,.4);font-size:16px;letter-spacing:.6px}
.footer__submit{align-items:center;background:none;border:none;border-radius:0;color:hsla(0,0%,100%,.75);cursor:var(--cursor-pointer);display:flex;flex-shrink:0;justify-content:center;min-height:2.75rem;min-width:2.75rem;padding:0 0 0 2.125rem;position:relative;transition:opacity .2s;z-index:1}
.footer__submit:hover{opacity:.8}
.footer__submit svg{height:.375rem;transform:rotate(-90deg);width:.625rem}
.footer__note{font-size:.8125rem;margin:.5rem 0 0;color:hsla(0,0%,100%,.6);min-height:1rem}
.footer__bottom{border-top:.0625rem solid hsla(0,0%,100%,.08);margin-top:0;padding:1.875rem 0 0}
.footer__bottom .footer__container{align-items:center;display:flex}
.footer__copyright{display:block;margin:.9375rem 0 0;opacity:.5;color:var(--theme-white-color);font-size:.875rem;font-weight:500;letter-spacing:.03125rem;line-height:1;text-align:left}
.footer__copyright a{color:inherit;text-decoration:none}
.footer__business{color:var(--theme-white-color);display:block;font-size:.8125rem;font-style:normal;font-weight:500;letter-spacing:.03125rem;line-height:1.5;margin-top:.625rem}
.footer__business a{color:inherit;text-decoration:none}
.footer__business a:hover{text-decoration:underline}
@media (max-width:990px){.footer__top .footer__container{display:flex;flex-direction:column;gap:2rem;padding:0 1.5rem}.footer__brand{max-width:100%;width:100%}.footer__links{grid-column:unset;width:100%}.footer__newsletter{margin-top:.5rem;max-width:100%;min-width:0;width:100%}}
@media (max-width:48rem){.footer{padding:1.5rem 0}.footer__bottom{padding:0}.footer__container{padding:0 1rem}.footer__top{padding-bottom:2rem}.footer__top .footer__container{gap:2rem;padding:0 1rem;display:flex;flex-direction:column}.footer__brand{order:1}.footer__newsletter{margin-top:0;order:2}.footer__links{display:grid;gap:1rem 2rem;grid-template-columns:1fr 1fr;order:3;width:100%}.footer__list{width:100%}.footer__link{align-items:center;display:flex;font-size:.9375rem;min-height:2.75rem;padding:.25rem 0}.footer__bottom .footer__container{align-items:flex-start;flex-direction:column;gap:.5rem;padding:0 1rem}}

/* ---- Collection page -------------------------------------------------- */
.collection{max-width:var(--site-container);margin:0 auto;padding:1.5rem 1rem 2rem;width:100%}
.collection__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.75rem;min-height:2.5rem}
.collection__title{white-space:nowrap;font-size:1.125rem;font-weight:600;letter-spacing:.0225rem;text-transform:uppercase;margin:0;color:var(--theme-black-color)}
.collection__count{font-size:.75rem;color:var(--theme-muted-text-color);margin-left:.75rem;font-weight:400;text-transform:none;letter-spacing:.03em}
.collection__tools{display:flex;align-items:center;gap:1.5rem}
.filters-btn{white-space:nowrap;background:none;border:0;border-radius:0;color:var(--theme-black-color);font-size:.8125rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;padding:.5rem 0}
.filters-btn:hover{opacity:.7}
.sort{white-space:nowrap;display:flex;align-items:center;gap:.625rem;font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase;color:var(--theme-black-color)}
.sort__select{appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23000' d='M9.354.646a.5.5 0 0 0-.708 0L5 4.293 1.354.646a.5.5 0 0 0-.708.708l4 4a.5.5 0 0 0 .708 0l4-4a.5.5 0 0 0 0-.708'/%3E%3C/svg%3E") no-repeat right .25rem center;border:0;font:inherit;font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase;color:var(--theme-black-color);padding:.5rem 1.25rem .5rem 0;cursor:var(--cursor-pointer);outline:none}
.collection__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.25rem 1.25rem}
.collection__empty{padding:4rem 0;text-align:center;color:var(--theme-muted-text-color);font-size:.9375rem}
@media (max-width:64rem){.collection__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:48rem){.collection{padding:1rem 1rem 1.5rem}.collection__head{margin-bottom:1.25rem;flex-wrap:wrap}.collection__title{flex:1 1 100%}.collection__tools{width:100%;justify-content:space-between}.collection__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem .75rem}.collection__tools{gap:1rem}}
.pagination{align-items:center;display:flex;flex-direction:column;gap:1rem;margin:2rem 0;padding:1.5rem 0}
.pagination__info{color:var(--theme-muted-text-color);font-size:.8125rem;text-align:center}
.pagination__controls{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}
.pagination__arrow{background:none;border:none;border-radius:0;color:var(--theme-text-color);cursor:var(--cursor-pointer);font-size:.8125rem;font-weight:500;min-width:70px;min-height:2.75rem;padding:.5rem .75rem;transition:all .2s}
.pagination__arrow:disabled{color:#9ca3af;cursor:not-allowed;opacity:.5}
.pagination__pages{align-items:center;display:flex;gap:.25rem}
.pagination__page{align-items:center;background:none;border:none;border-radius:0;color:#121212;cursor:var(--cursor-pointer);display:flex;font-size:.75rem;font-weight:500;height:2.75rem;justify-content:center;min-width:2.75rem;padding:0 .375rem;transition:all .2s}
.pagination__page[aria-current=page]{text-decoration:underline;text-underline-offset:.25rem}
.pagination__ellipsis{color:var(--theme-muted-text-color);font-size:.875rem;padding:0 .5rem;user-select:none}

/* ---- Drawers (cart, filters) ----------------------------------------- */
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity .3s ease}
.drawer-overlay[data-open=true]{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(27.5rem,100%);background:#fff;z-index:var(--z-modal);transform:translateX(100%);transition:transform .35s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column;box-shadow:-10px 0 30px rgba(0,0,0,.08)}
.drawer[data-open=true]{transform:translateX(0)}
.drawer__head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,0,0,.06);min-height:4.5rem}
.drawer__title{font-size:1.75rem;font-weight:500;margin:0;letter-spacing:-.01em;text-transform:lowercase}
.drawer__close{background:none;border:0;border-radius:0;padding:.5rem;color:#000;cursor:var(--cursor-pointer);display:flex}
.drawer__close:hover{opacity:.7}
.drawer__body{flex:1;overflow-y:auto;padding:1rem 1.5rem}
.drawer__foot{padding:1rem 1.5rem 1.5rem;border-top:1px solid rgba(0,0,0,.06)}
.cart-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;text-align:center;min-height:50vh}
.cart-empty p{margin:0;font-size:1.125rem;font-weight:500;letter-spacing:.02em}
.btn-block{display:flex;align-items:center;justify-content:center;width:100%;border:0;border-radius:.75rem;background:var(--theme-black-color);color:#fff;font-size:.8125rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase;padding:1rem 1.5rem;text-decoration:none;cursor:var(--cursor-pointer);transition:opacity .2s}
.btn-block:hover{opacity:.9}
.btn-block--ghost{background:#fff;color:#000;border:1px solid #000}
.cart-line{display:grid;grid-template-columns:5.5rem 1fr auto;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.06)}
.cart-line__img{width:5.5rem;aspect-ratio:.8;background:var(--theme-gray-light);border-radius:.625rem;overflow:hidden;display:flex;align-items:center;justify-content:center}
.cart-line__img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:darken}
.cart-line__brand{font-size:.75rem;font-weight:700;letter-spacing:.0375rem;text-transform:uppercase}
.cart-line__title{font-size:.875rem;text-transform:lowercase;margin:.125rem 0;line-height:1.3}
.cart-line__meta{font-size:.75rem;color:#777;text-transform:uppercase;letter-spacing:.03em}
.cart-line__qty{display:inline-flex;align-items:center;border:1px solid rgba(0,0,0,.2);border-radius:.5rem;margin-top:.625rem;height:2rem}
.cart-line__qty button{background:none;border:0;border-radius:0;color:#000;width:2rem;height:100%;padding:0;font-size:1rem;line-height:1}
.cart-line__qty span{min-width:1.5rem;text-align:center;font-size:.8125rem}
.cart-line__right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}
.cart-line__price{font-size:.875rem;font-weight:500}
.cart-line__remove{background:none;border:0;border-radius:0;color:#777;font-size:.75rem;text-decoration:underline;padding:0;text-transform:lowercase}
.cart-subtotal{display:flex;justify-content:space-between;font-size:.9375rem;font-weight:500;margin-bottom:.5rem}
.cart-note{font-size:.75rem;color:#777;margin:0 0 1rem}
.filter-group{border-bottom:1px solid rgba(0,0,0,.08)}
.filter-group__btn{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;border-radius:0;color:#000;font-size:.875rem;font-weight:500;letter-spacing:.02em;padding:1.125rem 0;text-align:left}
.filter-group__btn svg{transition:transform .2s}
.filter-group[data-open=true] .filter-group__btn svg{transform:rotate(90deg)}
.filter-group__body{display:none;padding:0 0 1rem;flex-wrap:wrap;gap:.5rem}
.filter-group[data-open=true] .filter-group__body{display:flex}
.chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(0,0,0,.25);border-radius:.5rem;padding:.5rem .75rem;font-size:.8125rem;cursor:var(--cursor-pointer);user-select:none;text-transform:uppercase;letter-spacing:.02em;background:#fff;color:#000}
.chip input{display:none}
.chip[data-checked=true]{background:#151515;color:#fff;border-color:#151515}
.price-range{display:flex;align-items:center;gap:.5rem;width:100%}
.price-range input{width:100%;border:1px solid rgba(0,0,0,.25);border-radius:.5rem;padding:.5rem .625rem;font:inherit;font-size:.875rem}
.drawer__foot--split{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.link-btn{background:none;border:0;border-radius:0;color:#000;font-size:.8125rem;text-transform:lowercase;text-decoration:underline;padding:0}
.btn-apply{background:#000;color:#fff;border:0;border-radius:.75rem;padding:.875rem 2.5rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em;font-weight:500}
.drawer__sub{font-size:.75rem;color:#777;text-align:center;margin:.125rem 0 0}
.drawer__head--center{flex-direction:column;align-items:center;gap:.125rem;position:relative}
.drawer__head--center .drawer__close{position:absolute;right:1rem;top:1.25rem}
.drawer__head--center .drawer__title{font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;font-weight:500}

/* ---- Toasts ----------------------------------------------------------- */
.toasts{bottom:1.25rem;display:flex;flex-direction:column;gap:.625rem;max-width:min(26rem,calc(100vw - 2rem));pointer-events:none;position:fixed;right:1.25rem;z-index:10000}
.toast{background:#151515;color:#fff;border-radius:.75rem;padding:.875rem 1.125rem;font-size:.8125rem;letter-spacing:.02em;box-shadow:0 10px 30px rgba(0,0,0,.2);animation:toast-in .25s ease both;pointer-events:auto;display:flex;gap:1rem;align-items:center;justify-content:space-between}
.toast a{color:#fff;text-decoration:underline;text-transform:uppercase;font-size:.75rem}
@keyframes toast-in{from{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}
@media (max-width:40rem){.toasts{bottom:max(.625rem,env(safe-area-inset-bottom));left:.625rem;max-width:none;right:.625rem}}

/* ---- Product page ----------------------------------------------------- */
.pdp{margin:2.25rem 0 0;padding:0;width:100%}
.pdp__layout{column-gap:3.125rem;flex-wrap:wrap;margin:.75rem auto;max-width:100rem;padding:0 2.5rem;row-gap:0;width:100%;color:var(--theme-muted-text-color);display:flex;font-size:1rem;font-weight:400;letter-spacing:.0375rem;line-height:1.8}
.pdp__gallery{align-self:flex-start;flex:0 0 58%;flex-direction:column;gap:1rem;position:sticky;top:1.875rem;width:58%;z-index:2;display:flex}
.pdp__main{background-color:transparent;border:.0625rem solid var(--theme-gray-light);border-radius:0;cursor:zoom-in;overflow:hidden;padding:0;position:relative;width:100%;display:block}
.pdp__main:hover .pdp__zoom{opacity:1}
.pdp__main img{border-radius:0;display:block;height:auto;max-width:100%;width:100%;aspect-ratio:1;object-fit:contain;background:#fff;mix-blend-mode:darken}
.pdp__zoom{backdrop-filter:blur(8px) saturate(1.2);background-color:hsla(0,0%,100%,.45);border:.0625rem solid hsla(0,0%,7%,.14);border-radius:50%;color:var(--theme-text-color);height:1.875rem;left:.75rem;opacity:0;position:absolute;top:.75rem;transition:opacity .1s ease;width:1.875rem;z-index:1;align-items:center;display:flex;justify-content:center}
.pdp__zoom svg{display:block;height:.75rem;width:.75rem}
.pdp__thumbs{display:flex;gap:.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;width:100%}
.pdp__thumbs::-webkit-scrollbar{display:none}
.pdp__thumb{aspect-ratio:1/1;background-color:var(--theme-gray-light);border:.0625rem solid var(--theme-gray-light);border-radius:0;cursor:var(--cursor-pointer);flex:0 0 calc(16.66667% - 0.41667rem);overflow:hidden;position:relative;scroll-snap-align:start;transition:border-color .2s ease;padding:0}
.pdp__thumb:hover{border-color:var(--theme-muted-text-color)}
.pdp__thumb[aria-current=true]{border-color:var(--theme-black-color)}
.pdp__thumb img{display:block;height:100%;object-fit:cover;width:100%;mix-blend-mode:darken}
.pdp__info{align-self:flex-start;display:flex;flex:0 0 calc(42% - 3.125rem);flex-direction:column;gap:1rem;min-height:36.6rem;position:sticky;top:0;width:calc(42% - 3.125rem);z-index:2}
.pdp__head{align-items:flex-start;flex-direction:row;justify-content:flex-start;display:flex;position:relative;width:100%}
.pdp__titles{display:flex;flex-direction:column;max-width:28.875rem;padding-right:7rem;position:relative;width:100%}
.pdp__brand{color:var(--theme-black-color);font-weight:600;letter-spacing:.0225rem;line-height:1.45;text-transform:uppercase;display:block;font-size:1.125rem;margin-bottom:0}
.pdp__brand a{color:inherit;display:inline-block;font:inherit;text-decoration:none}
.pdp__brand a:hover{text-decoration:underline}
.pdp__title{color:var(--theme-gray-dark);font-weight:400;letter-spacing:.0375rem;line-height:1.3;margin:.5rem 0 0;max-width:28.9rem;display:block;font-size:1.125rem;text-transform:none;width:100%}
.pdp__pricebox{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:.5rem;justify-content:flex-end;position:absolute;right:0;top:0;z-index:2}
.pdp__price{color:var(--theme-gray-dark);font-weight:500;letter-spacing:.03125rem;line-height:1.75rem;white-space:nowrap;font-size:1.125rem;margin:0}
.pdp__copy{align-items:center;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:var(--cursor-pointer);display:inline-flex;flex-shrink:0;height:1.75rem;justify-content:center;line-height:0;margin:0;padding:0;transition:color .15s ease,background-color .15s ease;width:1.75rem}
.pdp__copy:hover{background-color:#f3f4f6;color:#111827}
.pdp__options{display:flex;flex-direction:column}
.pdp__label{color:var(--theme-black-color);display:block;font-size:.875rem;font-weight:500;letter-spacing:.03125rem;line-height:1;margin:.3125rem 0 .5rem;opacity:.5;text-transform:uppercase}
.pdp__sizes{display:flex;flex-wrap:wrap;gap:.5rem}
.size-btn{background-color:transparent;border:.0625rem solid var(--theme-muted-text-color);border-radius:.5rem;color:var(--theme-black-color);cursor:var(--cursor-pointer);display:block;font-size:.875rem;font-weight:500;letter-spacing:.025rem;line-height:1.3;min-height:2.26rem;min-width:2.5rem;padding:.5rem .75rem;text-transform:uppercase;transition:all .1s ease}
.size-btn[aria-pressed=true],.size-btn:hover{background-color:var(--theme-gray-dark);color:var(--theme-white-color)}
.size-btn:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.pdp__actions{display:flex;flex-direction:column;gap:1rem}
.pdp__actions-group{display:flex;flex-direction:column;gap:10px;width:100%}
.btn-pdp{align-items:center;border:0;border-radius:.75rem;cursor:var(--cursor-pointer);display:flex;font-size:.8125rem;font-weight:500;justify-content:center;letter-spacing:.01625rem;line-height:1;min-width:7.625rem;padding:.75rem 2.5rem;position:relative;text-align:center;text-transform:uppercase;transition:all .3s ease;text-decoration:none}
.btn-pdp--cart{background-color:var(--theme-black-color);color:var(--theme-white-color);font-weight:600;max-width:100%;padding:15px;width:100%}
.btn-pdp--cart:hover{opacity:.9}
.pdp__row{display:flex;gap:10px}
.btn-pdp--buy{background-color:var(--theme-white-color);border:1px solid var(--theme-black-color);color:var(--theme-black-color);flex:1;font-weight:600;padding:12px}
.btn-pdp--buy:hover{background:#000;color:#fff}
.btn-pdp--sell{background-color:var(--theme-white-color);border:1px solid var(--theme-accent-color);color:var(--theme-accent-color);flex:1;font-weight:600;padding:12px}
.btn-pdp--sell:hover{background:var(--theme-accent-color);color:#fff}
.btn-pdp--inquire{background-color:var(--theme-white-color);border:1px solid var(--theme-black-color);color:var(--theme-black-color);font-weight:600;padding:12px;width:100%}
.btn-pdp--inquire:hover{background-color:var(--theme-black-color);color:var(--theme-white-color)}
.pdp__desc{margin-top:1rem;max-width:28.9rem;width:100%;color:#000;font-size:1rem;font-weight:400;letter-spacing:.0375rem;line-height:1.8}
.pdp__desc ul{margin:0 0 .75rem;padding:0;list-style:none}
.pdp__desc ul li{font-size:1rem;line-height:1.5;padding-left:1rem;position:relative}
.pdp__desc ul li:before{color:var(--theme-text-color);content:"•";font-size:1rem;font-weight:600;left:0;line-height:1.5;position:absolute}
.pdp__specs{margin-top:1.75rem;max-width:28.9rem;width:100%}
.pdp__specs dl{display:grid;gap:.5rem 1.25rem;grid-template-columns:max-content 1fr;margin:0}
.pdp__specs dt{font-size:.8125rem;letter-spacing:.03125rem;opacity:.5;text-transform:uppercase;white-space:nowrap;color:var(--theme-black-color);margin:0}
.pdp__specs dd{font-size:.875rem;letter-spacing:.025rem;color:var(--theme-black-color);margin:0}
.condition{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}
.condition__label{color:#858585;display:block;font-size:.875rem;font-weight:400;letter-spacing:.0175rem;line-height:1;margin:0;max-width:28.9rem;text-transform:uppercase;width:100%}
.condition__badge{border:1px solid;border-radius:.125rem;font-size:.6875rem;letter-spacing:.04em;margin-left:.5rem;padding:.0625rem .375rem;vertical-align:.05em;white-space:nowrap}
.condition__scale{display:flex;flex-direction:column;gap:.375rem;max-width:28.875rem;width:100%}
.condition__track{align-items:center;display:flex;padding:0 .625rem;position:relative}
.condition__dot{align-items:center;background-color:transparent;border:.125rem solid rgba(156,163,175,.3);border-radius:50%;cursor:default;display:flex;flex-shrink:0;height:1.25rem;justify-content:center;padding:0;position:relative;width:1.25rem;z-index:2;color:#fff}
.condition__dot--filled{background-color:var(--theme-accent-color);border-color:var(--theme-accent-color);opacity:.3}
.condition__dot--current{background-color:var(--theme-accent-color);border-color:var(--theme-accent-color);opacity:1}
.condition__dot--dim{opacity:.3}
.condition__dot svg{height:.75rem;width:.75rem;display:none}
.condition__dot--current svg{display:block}
.condition__line{background-color:rgba(156,163,175,.3);flex:1;height:.125rem;min-width:0}
.condition__line--filled{background-color:var(--theme-accent-color)}
.condition__labels{align-items:center;display:flex;font-size:.875rem;margin-top:.25rem;min-height:1.25rem;padding:0 .625rem;position:relative;text-transform:uppercase;width:100%}
.condition__gap{flex:1;min-width:0}
.condition__name{color:#858585;display:flex;flex:0 0 auto;font-size:.875rem;justify-content:center;line-height:1;opacity:.3;white-space:nowrap;width:1.25rem}
.condition__name--current{color:var(--theme-accent-color);font-weight:500;opacity:1}
.pdp__trust{border-top:.0625rem solid rgba(0,0,0,.09);display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding-top:1.5rem}
.trust{margin-top:1rem;display:flex;flex-direction:column;gap:.375rem}
.trust__head{align-items:center;display:flex;gap:.5rem}
.trust__label{color:var(--theme-gray-medium);font-size:.875rem;font-weight:400;letter-spacing:.05em;text-transform:uppercase}
.trust__head svg{height:25px;width:24px;flex-shrink:0}
.trust p{color:#000;font-size:.875rem;font-weight:400;line-height:1.4;margin:0}
.trust a{color:inherit;cursor:var(--cursor-pointer);text-decoration:underline}
.pdp__related{margin-top:3rem}
@media (min-width:64.0625rem){.pdp__info{align-self:stretch}.pdp__trust{margin-top:auto}}
@media (max-width:64rem){.pdp__layout{flex-direction:column;gap:2rem}.pdp__info,.pdp__gallery{flex:1 1 100%;position:static;width:100%}.pdp__titles{max-width:100%}}
@media (max-width:48rem){.pdp{margin:1rem 0 0}.pdp__related{margin-top:2rem}.pdp__layout{gap:1.5rem;padding:0 1rem}.pdp__gallery{gap:.75rem}.pdp__thumbs{display:none!important}.pdp__zoom{height:2rem;left:.5rem;opacity:1;top:.5rem;width:2rem}.pdp__zoom svg{height:1rem;width:1rem}.pdp__info{gap:1.5rem;min-height:0}.pdp__head{align-items:flex-start;gap:1rem;justify-content:space-between}.pdp__titles{flex:1;min-width:0;padding-right:0}.pdp__brand{font-size:1rem}.pdp__title{font-size:1rem}.pdp__pricebox{position:static;flex-shrink:0}.size-btn{font-size:.8125rem;min-width:3rem;padding:.625rem .875rem}.btn-pdp{font-size:.75rem;min-height:2.75rem;padding:.875rem 1.5rem}.condition__labels{font-size:.75rem;padding:0 .25rem}}
.lightbox{position:fixed;inset:0;background:rgba(255,255,255,.96);z-index:3000;display:none;align-items:center;justify-content:center;cursor:zoom-out}
.lightbox[data-open=true]{display:flex}
.lightbox img{max-width:92vw;max-height:92vh;object-fit:contain}
.lightbox__close{position:absolute;top:1rem;right:1rem;background:none;border:0;border-radius:0;color:#000;padding:.5rem}

/* ---- Press (editorial) ---------------------------------------------- */
.editorial{--editorial-ink:#131313;--editorial-muted:#7a7a7a;--editorial-line:#e7e4df;--editorial-cream:#f6f2ea;background:#fff;color:var(--editorial-ink)}
.editorial__intro{padding:2.5rem 1.5rem .5rem}
.editorial__container{margin:0 auto;max-width:var(--site-container-narrow)}
.editorial__title{font-size:clamp(2rem,5vw,2.75rem);font-weight:700;letter-spacing:-.035em;line-height:1;margin:0 0 .6rem}
.editorial__sub{color:var(--editorial-muted);font-size:.9375rem;line-height:1.55;margin:0 0 2.75rem;max-width:34rem}
.editorial__section{border-bottom:1px solid var(--editorial-line);padding:0 1.5rem 3.5rem}
.editorial__section+.editorial__section{padding-top:2.75rem}
.editorial__head{align-items:baseline;border-bottom:1px solid var(--editorial-ink);display:flex;gap:1rem;justify-content:space-between;margin:0 0 1.35rem;padding-bottom:.7rem}
.editorial__h2{font-size:clamp(1.1rem,2.2vw,1.25rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0}
.editorial__count{color:var(--editorial-muted);flex:none;font-size:.6875rem;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.editorial__grid{display:grid;gap:2.25rem 1.6rem;grid-template-columns:1fr}
@media (min-width:640px){.editorial__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:960px){.editorial__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.editorial__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.feature{color:inherit;display:flex;flex-direction:column;text-decoration:none}
.feature__pub{color:var(--editorial-muted);font-size:.8125rem;margin-bottom:.65rem}
.feature__img{aspect-ratio:16/10;background-color:var(--editorial-cream);background-position:50%;background-size:cover;border-radius:.55rem;display:block;margin-bottom:.85rem;overflow:hidden;transition:opacity .2s ease}
.feature:hover .feature__img{opacity:.88}
.feature__title{display:block;font-size:1.0625rem;font-weight:700;letter-spacing:-.012em;line-height:1.24}
.feature:hover .feature__title{text-decoration:underline;text-underline-offset:2px}
.feature__year{color:var(--editorial-muted);display:block;font-size:.6875rem;font-variant-numeric:tabular-nums;margin-top:.55rem}
.archive-card{color:inherit;text-decoration:none;display:flex;flex-direction:column}
.archive-card__img{aspect-ratio:4/5;background:var(--editorial-cream) center/cover;border-radius:1rem;margin-bottom:.9rem}
.archive-card__kicker{color:var(--editorial-muted);font-size:.625rem;font-weight:600;letter-spacing:.12em;margin-bottom:.3rem;text-transform:uppercase}
.archive-card__title{color:var(--editorial-ink);font-size:.95rem;font-weight:600;letter-spacing:-.01em;line-height:1.3}

/* ---- Auth / member gate --------------------------------------------- */
.auth{min-height:calc(100vh - 6rem);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f3f3f3;padding:2rem 1rem}
.auth__card{background:#fff;border-radius:.5rem;width:100%;max-width:22rem;padding:1.75rem 1.5rem 1.25rem;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.auth__logo{display:flex;justify-content:center;margin-bottom:1.25rem}
.auth__logo .logo{color:#000}.auth__logo .logo__mark{height:2.75rem}.auth__logo .logo__word{font-size:1.75rem}
.auth__label{display:block;font-size:.75rem;color:#444;margin-bottom:.375rem}
.auth__input{width:100%;border:1px solid #d6d6d6;border-radius:.375rem;padding:.625rem .75rem;font:inherit;font-size:.875rem;margin-bottom:.875rem;outline:none}
.auth__input:focus{border-color:#000}
.auth__btn{width:100%;background:#fff;border:1px solid #d6d6d6;border-radius:.375rem;color:#444;font-size:.875rem;padding:.625rem;cursor:var(--cursor-pointer)}
.auth__btn:hover{background:#f7f7f7}
.auth__links{display:flex;gap:1.25rem;justify-content:center;margin-top:1.25rem;font-size:.75rem}
.auth__links a{color:#5b5bd6;font-weight:400}
.auth__msg{font-size:.8125rem;color:#444;text-align:center;margin:.75rem 0 0;min-height:1rem}

/* ---- Rich text pages --------------------------------------------------- */
.rte-page{max-width:46rem;margin:0 auto;padding:3rem 1.5rem 5rem}
.rte-page h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:500;letter-spacing:-.02em;margin:0 0 1.5rem}
.rte-page h3{font-size:1.0625rem;font-weight:600;margin:1.75rem 0 .5rem}
.rte-page p{font-size:1rem;line-height:1.8;letter-spacing:.0375rem;color:#222;margin:0 0 1rem}
.rte-page a{color:#000;text-decoration:underline;text-underline-offset:.2em}
.btn-inline{display:inline-flex;background:#000;color:#fff!important;text-decoration:none!important;border-radius:.75rem;padding:.75rem 2rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em}

/* ---- Sell to us form --------------------------------------------------- */
.sell-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;max-width:32rem}
.sell-form label{display:flex;flex-direction:column;gap:.375rem;font-size:.8125rem;letter-spacing:.03em;text-transform:uppercase;color:#555}
.sell-form input,.sell-form textarea{border:1px solid rgba(0,0,0,.25);border-radius:.5rem;padding:.75rem .875rem;font:inherit;font-size:.9375rem;color:#000;outline:none;resize:vertical}
.sell-form input:focus,.sell-form textarea:focus{border-color:#000}
.sell-form__note{font-size:.8125rem;color:#666;margin:0}
.sell-form .btn-block{margin-top:.5rem}

/* ---- Header logo: twinkle reflection orbiting the star ----------------- */
.twinkle-wrap{position:relative;display:block;width:2.7rem;height:3.375rem}
.twinkle-wrap .logo__mark{position:absolute;inset:0;width:100%;height:100%;animation:logo-glint 6s ease-in-out infinite}
/* orbit pivots sit on the star's centre (≈68% across, 40% down the mark) */
.twinkle-orbit{position:absolute;left:68%;top:40%;width:0;height:0;animation:twinkle-orbit 6s linear infinite;pointer-events:none}
.twinkle-orbit--2{animation-duration:9s;animation-direction:reverse;animation-delay:-3s}
.twinkle{position:absolute;left:0;top:0;width:.9rem;height:.9rem;margin:-.45rem 0 0 -.45rem;transform:translateX(.95rem);opacity:0;animation:twinkle-blink 6s ease-in-out infinite}
.twinkle--small{width:.55rem;height:.55rem;margin:-.275rem 0 0 -.275rem;transform:translateX(.7rem);animation-duration:9s;animation-delay:-3s}
.twinkle:before,.twinkle:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,#fff 0 18%,rgba(255,255,255,0) 60%),linear-gradient(90deg,rgba(255,255,255,0) 0%,#fff 50%,rgba(255,255,255,0) 100%);background-size:100% 100%,100% 14%;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 0 2px rgba(255,255,255,.9)) drop-shadow(0 0 4px rgba(190,210,255,.7))}
.twinkle:after{transform:rotate(90deg)}
@keyframes twinkle-orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes twinkle-blink{0%,8%{opacity:0;scale:.4}14%{opacity:1;scale:1.15}20%{opacity:.85;scale:.9}30%{opacity:0;scale:.4}55%{opacity:0;scale:.4}62%{opacity:1;scale:1.05}70%{opacity:0;scale:.4}100%{opacity:0}}
/* the star itself catches a brief highlight as the glint passes */
@keyframes logo-glint{0%,10%{filter:brightness(1)}14%{filter:brightness(1.22) contrast(1.05)}20%{filter:brightness(1)}60%{filter:brightness(1)}63%{filter:brightness(1.15)}68%,100%{filter:brightness(1)}}
@media (max-width:990px){.twinkle-wrap{width:2.4rem;height:3rem}}
@media (prefers-reduced-motion:reduce){.twinkle-orbit,.twinkle,.twinkle-wrap .logo__mark{animation:none}.twinkle{opacity:0}}

/* ---- Custom cursor: the chrome T mark (hi-dpi versions for retina screens) -- */
@supports (cursor:-webkit-image-set(url(a.png) 1x,url(b.png) 2x),auto){
  :root{--cursor-default:-webkit-image-set(url(/assets/img/cursor-32.png) 1x,url(/assets/img/cursor-64.png) 2x) 3 6,auto;
        --cursor-pointer:-webkit-image-set(url(/assets/img/cursor-40.png) 1x,url(/assets/img/cursor-80.png) 2x) 4 7,pointer}
}
a,button,select,label,summary,[role=button]{cursor:var(--cursor-pointer)}
input[type=text],input[type=email],input[type=search],input[type=tel],input[type=number],textarea{cursor:text}
button:disabled,.size-btn:disabled{cursor:var(--cursor-default)}
.pdp__main{cursor:var(--cursor-pointer)}
.lightbox{cursor:var(--cursor-pointer)}

/* hero tagline shown without a headline above it */
.hero__subtitle--solo{font-size:2.25rem;letter-spacing:-.0125rem;line-height:1.2;margin:0}
@media (max-width:48rem){.hero__subtitle--solo{font-size:1.75rem}}

/* ---- Typeface pass: monospaced body, OCR-style buttons ------------------ */
.hero__btn span,.banner__btn,.btn-pdp,.btn-block,.btn-apply,.card__quick-btn,.filters-btn,.sort__select,.size-btn,.chip,.auth__btn{font-family:var(--theme-button-font),monospace;letter-spacing:0}
.logo__word{font-family:var(--theme-body-font),monospace;letter-spacing:-.02em}
.nav-primary__btn,.nav-primary__link,.nav-subrow__link,.nav-item__btn{letter-spacing:0}
.carousel__title a,.carousel__title span{letter-spacing:-.03em}
.card__title,.card__brand{letter-spacing:0}
.pdp__title,.pdp__brand{letter-spacing:0}

/* smaller secondary text to balance the wider monospace glyphs */
.card__title,.card__meta,.card__price,.card__sizes,.card__sep{font-size:.8rem}
.card__brand{font-size:.72rem}
.banner__body{font-size:14px}
.pdp__desc,.pdp__desc ul li{font-size:.9rem;line-height:1.6}
.pdp__specs dd{font-size:.8rem}.pdp__specs dt{font-size:.72rem}
.trust p{font-size:.8rem}
.condition__name,.condition__labels{font-size:.72rem}
.footer__link{font-size:.9rem}.footer__business{font-size:.72rem}.footer__copyright{font-size:.78rem}
.nav-primary__btn,.nav-primary__link{font-size:.9rem}

/* size list on cards: never overlap the next card */
.card__meta{max-width:100%;overflow:hidden}
.card__sizes{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
