/* Yooto v2 · Concrete Atelier — fashion-brutalist editorial. RankUP LLC.
   Tokens, base, type, header, footer, dialogs, product card, forms. Page styles are in home/shop/product/checkout/pages.css.
   Rules: 0px corners, no shadows, no two-axis line lattice. Three line weights only: --rule (2px ink) marks the edge of a surface,
   --hair (1px) marks the edge of a control and frames a product card, --sep (1px stone) separates rows of data. Everything else is whitespace.
   Archivo caps display, Spline Sans Mono for data, Bodoni Moda italic is the only serif voice. Cobalt is the single accent. */

:root{
  --paper:#FFFFFF; --low:#F5F5F5; --stone:#E2E2E2; --plate:#F5F5F5; --ink:#0E0E0E; --cobalt:#0F3DFF;
  --bg:var(--paper); --line:var(--ink); --mute:#3A3A3A; --quiet:#5C5C5C; --error:#C41414;
  --display:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Spline Sans Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;
  --serif:'Bodoni Moda',Georgia,'Times New Roman',serif;
  --rule:2px; --hair:1px; --sep:1px;
  --mar:clamp(1rem,3vw,3.5rem); --gut:20px; --max:1680px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*,*::before,*::after{box-sizing:border-box;border-radius:0}
*{margin:0}
html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font:400 var(--fs-body,15px)/1.6 var(--display);letter-spacing:.005em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.is-locked{overflow:hidden}
img{display:block;max-width:100%;height:auto}
svg{display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
button:disabled{cursor:not-allowed}
ul,ol{list-style:none;padding:0}
input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--cobalt);color:var(--paper)}
:focus-visible{outline:2px solid var(--cobalt);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:8px;top:-60px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px;font:500  12px/16px var(--mono);letter-spacing:.14em;text-transform:uppercase;transition:top .2s}
.skip:focus{top:8px}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--mar)}
[hidden]{display:none!important}

/* rail: a curated list longer than the viewport scrolls sideways instead of stacking. The rail itself adds no lines — the gap does it. */
.rail__track{display:flex;gap:var(--gap,var(--gut));overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px}
.rail__track::-webkit-scrollbar{display:none}
.rail__track>*{flex:0 0 var(--rail-w);scroll-snap-align:start}
/* every rail shows whole cards only: exactly 4 per view (3 on tablets, 2 on phones), none of the next one peeking in */
.rail__track{--rail-n:var(--n-d,4);--rail-w:calc((100% - (var(--rail-n) - 1) * var(--gap,var(--gut))) / var(--rail-n))}
@media (max-width:1180px){.rail__track{--rail-n:var(--n-t,3)}}
@media (max-width:760px){.rail__track{--rail-n:var(--n-m,2)}}
/* the same row laid out as a grid instead of a carousel (Customizer: Layout) */
.rail__track.is-grid{display:grid;grid-template-columns:repeat(var(--rail-n),minmax(0,1fr));overflow:visible;scroll-snap-type:none;cursor:auto}
.rail__track.is-grid>*{flex:none;min-width:0}
.y2-ui-counter-off .rail__count{display:none}
.rail__nav{display:flex;gap:10px}
.hp-tools{display:flex;align-items:center;justify-content:flex-end;gap:20px;flex-wrap:wrap}
.rail__nav button{display:grid;place-items:center;width:44px;height:44px;border:var(--hair) solid var(--mute);color:var(--ink);transition:background .2s,color .2s,border-color .2s}
.rail__nav button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--paper)}
.rail__nav button:disabled{color:var(--quiet);border-color:var(--quiet);cursor:not-allowed}
.rail__count{font-variant-numeric:tabular-nums}
.rail__track.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.rail__track.is-dragging *{pointer-events:none}
@media (hover:hover) and (pointer:fine){.rail__track{cursor:grab}}

/* type */
.label{display:block;font:500 12px/16px var(--mono);letter-spacing:var(--label-track,.16em);text-transform:uppercase;color:var(--mute)}
.label--quiet{color:var(--quiet)}
.display{font:800 clamp(2.75rem,5.2vw,5.5rem)/.94 var(--display);font-stretch:125%;letter-spacing:-.015em;text-transform:uppercase;text-wrap:balance}
.display--md{font-size:clamp(2.25rem,4vw,4.25rem)}
.display sup{font:500  12px/14px var(--mono);vertical-align:super;margin-left:10px;letter-spacing:.2em;display:inline}
.title{font:700 clamp(1.75rem,2.8vw,2.6rem)/1.02 var(--display);font-stretch:118%;letter-spacing:-.005em;text-transform:uppercase;text-wrap:balance}
.lead{font:400 15px/24px var(--display);letter-spacing:.005em;color:var(--mute);max-width:48ch}
.note{font:400  12px/15px var(--mono);letter-spacing:.06em;color:var(--quiet)}
.atelier{font:italic 400 clamp(1.6rem,2.9vw,2.8rem)/1.25 var(--serif);letter-spacing:-.01em;text-transform:none}
.price,.price *{font-family:var(--mono);font-weight:500;letter-spacing:0;text-decoration:none;background:none;font-variant-numeric:tabular-nums}
.price del,.price del *{color:var(--quiet);font-size:.85em;margin-right:.4em}
.price ins{text-decoration:none}
.prose>*+*{margin-top:1em}
.prose h2,.prose h3{font:700 1.5rem/1.1 var(--display);font-stretch:115%;text-transform:uppercase;margin-top:1.4em}
.prose a{text-decoration:underline;text-underline-offset:3px}
.prose ul{list-style:disc;padding-left:1.2em}
.prose--lead{font:400 14px/22px var(--display);color:var(--mute)}

/* links and buttons */
.tlink{display:inline-flex;align-items:center;gap:10px;width:fit-content;font:500  12px/16px var(--mono);letter-spacing:.14em;text-transform:uppercase;border-bottom:var(--hair) solid var(--mute);padding:8px 0 4px;transition:color .2s,border-color .2s}
.tlink:hover{color:var(--cobalt);border-color:var(--cobalt)}
.btn,.button,.single_add_to_cart_button,#place_order,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--btn-h,48px);padding:var(--btn-pad,14px 28px);border:var(--rule) solid var(--ink);background:var(--ink);color:var(--paper);font:500 12px/16px var(--mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn:hover,.button:hover,.single_add_to_cart_button:hover,#place_order:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--cobalt);border-color:var(--cobalt);color:var(--paper)}
.btn--ghost,.button.alt,.woocommerce a.button.alt{background:transparent;color:var(--ink)}
.btn--ghost:hover{border-color:var(--cobalt)}
.btn--block{width:100%}
.btn:disabled,.button:disabled,.single_add_to_cart_button:disabled,.single_add_to_cart_button.disabled,.woocommerce button.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button.disabled:hover{background:var(--stone);border-color:var(--stone);color:var(--mute)}
.icon-btn{position:relative;display:inline-grid;place-items:center;min-width:44px;min-height:44px;color:var(--ink);transition:color .2s}
.icon-btn:hover{color:var(--cobalt)}
.count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;background:var(--cobalt);color:var(--paper);font:600  12px/1 var(--mono)}
.icon-btn>.count{position:absolute;top:4px;right:0}
.count[data-n="0"]{display:none}
.badge{position:absolute;top:0;left:0;z-index:2;background:var(--cobalt);color:var(--paper);padding:4px 10px;font:600  12px/14px var(--mono);letter-spacing:.2em;text-transform:uppercase}

/* announcement + header */
.announce{display:flex;align-items:center;gap:20px;padding:0 var(--mar);min-height:34px;background:var(--ink);color:var(--paper);font:500  12px/14px var(--mono);letter-spacing:.2em;text-transform:uppercase}
.announce a{display:inline-flex;align-items:center;gap:10px;padding-block:8px;color:var(--paper)}
.announce a:hover{color:var(--paper);text-decoration:underline;text-underline-offset:3px}
.marquee{flex:1;min-width:0;overflow:hidden;height:14px;position:relative}
.marquee__track{position:absolute;left:0;top:0;display:flex;width:max-content;animation:mq var(--mq,42s) linear infinite;will-change:transform}
.marquee__group{display:flex;gap:20px;padding-right:20px;white-space:nowrap}
.marquee__group span::before{content:"◆";margin-right:18px;color:var(--cobalt)}
.announce:hover .marquee__track{animation-play-state:paused}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.site-header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:var(--header-line,2px) solid var(--ink)}
.admin-bar .site-header{top:32px}
.site-header__bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;min-height:var(--header-h,76px)}
.site-header__left{display:flex;align-items:center;gap:10px;height:100%}
.site-header__right{display:flex;align-items:center;justify-content:flex-end;gap:4px}
.site-header__menu{display:none}
.logo{display:inline-flex;align-items:center;justify-self:center}
.logo img{width:var(--logo-d,132px);height:auto}
.logo--small img{width:104px}
@media (max-width:1180px){.logo img{width:var(--logo-t,132px)}}
.currency select{appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none' stroke='%230E0E0E' stroke-width='1.5'%3E%3Cpath d='m1 1 4 4 4-4'/%3E%3C/svg%3E") right 4px center no-repeat;padding:10px 20px 10px 6px;min-height:44px;font:500  12px/16px var(--mono);letter-spacing:.14em;cursor:pointer;margin-right:8px}
.currency select option{background:var(--paper)}

/* nav + mega */
.primary ul{display:flex;gap:20px;align-items:center;height:100%}
.primary li{position:static;display:flex;align-items:center;height:var(--header-h,76px)}
.primary__link{position:relative;font:500  12px/16px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);padding:14px 0;transition:color .2s}
.primary__link::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.primary__link:hover,.primary__link[aria-current],.has-mega:hover>.primary__link,.has-mega.is-open>.primary__link{color:var(--ink)}
.primary__link:hover::after,.primary__link[aria-current]::after,.has-mega:hover>.primary__link::after,.has-mega.is-open>.primary__link::after{transform:scaleX(1)}
.primary__toggle{display:inline-grid;place-items:center;width:44px;height:44px;color:var(--quiet);margin:0 -10px 0 -12px}
.primary__toggle .icon{transition:transform .25s}
.has-mega.is-open .primary__toggle .icon{transform:rotate(180deg)}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:var(--rule) solid var(--ink);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s var(--ease),visibility .25s;max-height:calc(100dvh - 130px);overflow:auto}
.has-mega:hover>.mega,.has-mega.is-open>.mega,.has-mega:focus-within>.mega{opacity:1;visibility:visible;transform:none}
.mega .wrap{padding-block:36px 44px}
.mega__grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:var(--gut) 20px}
.mega__col{display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.mega__col .label{margin-bottom:14px;color:var(--ink)}
.mega__col a,.mega__designers a{padding:6px 0;font:400 13px/18px var(--display);transition:color .15s}
.mega__col a:hover,.mega__designers a:hover{color:var(--cobalt)}
.mega__all{margin-top:10px;font:500  12px/16px var(--mono)!important;letter-spacing:.14em;text-transform:uppercase;border-bottom:var(--hair) solid var(--mute)}
.mega__designers{display:grid;grid-template-columns:repeat(4,1fr);gap:2px 20px}
.mega__feature{position:relative;display:block;aspect-ratio:4/3;background:var(--plate);overflow:hidden}
.mega__feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:multiply}
.mega__feature>span{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:var(--ink);color:var(--paper);display:grid;gap:4px}
.mega__feature-name{font:700 15px/1.1 var(--display);font-stretch:115%;text-transform:uppercase}
.mega__feature .label{color:var(--stone)}

/* dialogs */
.panel{border:0;background:var(--paper);color:var(--ink);padding:0;max-width:100%;max-height:100dvh;overflow:auto}
.panel::backdrop{background:rgba(14,14,14,.55)}
.panel__head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 24px;min-height:64px;border-bottom:var(--rule) solid var(--ink);position:sticky;top:0;background:var(--paper);z-index:2}
.panel--side{position:fixed;inset:0 0 0 auto;margin:0;width:var(--panel-w,min(480px,100%));height:100dvh;border-left:var(--rule) solid var(--ink)}
.panel--left{inset:0 auto 0 0;border-left:0;border-right:var(--rule) solid var(--ink)}
.panel--search{position:fixed;inset:0;margin:0;width:100%;height:auto;max-height:100dvh;border-bottom:var(--rule) solid var(--ink);padding-bottom:32px}
.panel--search>*:not(.panel__head){width:min(880px,100% - 2*var(--mar));margin-inline:auto}
.panel--center{margin:auto;width:min(620px,calc(100% - 32px));border:var(--rule) solid var(--ink)}
.panel--center .prose{padding:24px}
.search{display:flex;align-items:center;gap:10px;margin-top:40px;border-bottom:var(--hair) solid var(--mute);transition:border-color .2s}
.search:focus-within{border-color:var(--cobalt);border-bottom-width:2px}
.search input{flex:1;min-width:0;border:0;background:transparent;padding:10px 0;font:700 clamp(24px,3.2vw,38px)/1.2 var(--display);font-stretch:110%;letter-spacing:-.01em;text-transform:uppercase}
.search input:focus{outline:0}
.search input::placeholder{color:var(--quiet)}
.search__results{margin-top:20px;max-height:52dvh;overflow:auto}
.search__chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.hit{display:grid;grid-template-columns:56px 1fr auto;gap:15px;align-items:center;padding:10px 0;border-bottom:var(--sep) solid var(--stone);transition:color .15s}
.hit:hover,.hit:focus-visible{background:var(--ink);color:var(--paper)}
.hit:hover .note,.hit:hover .price{color:var(--paper)}
.hit img{width:56px;aspect-ratio:3/4;object-fit:cover;background:var(--stone)}
.hit__none{padding:20px 0;color:var(--mute)}
.search__tips{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.search__tips a,.chip{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:7px 14px;border:var(--hair) solid var(--mute);background:var(--paper);font:500  12px/16px var(--mono);letter-spacing:.16em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}
.search__tips a:hover,.chip:hover{background:var(--ink);color:var(--paper)}
.search__recent{display:grid;gap:4px;margin-top:24px}
.search__recent:empty,.search__recent[hidden]{display:none}
.search__recent-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.search__recent-list{display:flex;flex-wrap:wrap;gap:10px}
.search__recent-list a{display:inline-flex;align-items:center;min-height:40px;padding:7px 14px;border:var(--hair) solid var(--mute);background:var(--paper);font:500 12px/16px var(--mono);letter-spacing:.16em;text-transform:uppercase}
.search__recent-list a:hover{background:var(--ink);color:var(--paper)}
.drawer-nav{padding:8px 24px}
.drawer-nav__link,.drawer-nav summary{display:flex;justify-content:space-between;align-items:center;min-height:56px;border-bottom:var(--sep) solid var(--stone);font:700 22px/1.1 var(--display);font-stretch:115%;text-transform:uppercase;letter-spacing:-.005em;cursor:pointer;list-style:none}
.drawer-nav summary::-webkit-details-marker{display:none}
.drawer-nav details[open]>summary .icon{transform:rotate(180deg)}
.drawer-nav__body{padding:16px 0 20px;border-bottom:var(--sep) solid var(--stone)}
.drawer-nav .mega__grid{grid-template-columns:1fr;gap:20px}
.drawer-nav .mega__designers{grid-template-columns:1fr 1fr}
.drawer-links{display:grid;padding:8px 24px}
.drawer-links a{display:flex;align-items:center;min-height:44px;font:400 12px/18px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.drawer-currency{display:flex;align-items:center;justify-content:space-between;padding:12px 24px 32px}

/* product card — a single --hair frame in --quiet does the edge; the hover inversion carries the interaction */
.grid{display:grid;gap:var(--gap,var(--gut))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid>*{min-width:0}
.card{position:relative;display:flex;flex-direction:column;border:var(--hair) solid var(--quiet);transition:border-color .2s}
.card:hover,.card:focus-within{border-color:var(--ink)}
.card__media{position:relative;display:block;flex:1 1 auto;aspect-ratio:var(--card-ratio,3/4);background:var(--plate);overflow:hidden}
.card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply;transition:opacity .5s}
.card__media .card__alt{opacity:0;mix-blend-mode:normal}
.card:hover .card__alt,.card__media:focus-visible .card__alt{opacity:1}
.card__save{position:absolute;top:8px;right:8px;z-index:3;width:44px;height:44px;display:grid;place-items:center;background:var(--paper);border:var(--hair) solid var(--mute);transition:background .2s,color .2s}
.card__save:hover{background:var(--cobalt);border-color:var(--cobalt);color:var(--paper)}
.card__save[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.card__save[aria-pressed=true] .icon{fill:currentColor}
.card__body{display:grid;gap:0;padding:0;transition:background .2s,color .2s}
.card__body>.card__name{padding:14px 12px}
.card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:var(--sep) solid var(--stone);transition:border-color .2s}
.card:hover .card__foot{border-color:#333333}
.card__go{flex:none;display:grid;place-items:center;width:44px;height:44px;border:var(--hair) solid var(--mute);transition:background .2s,color .2s,border-color .2s}
.y2-card-go-off .card__go{display:none}
.y2-card-go-off .card__foot{padding:12px}
.card:hover .card__go,.card:focus-within .card__go{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.card:hover .card__body{background:var(--ink);color:var(--paper)}
.card:hover .card__body .price{color:var(--paper)}
.card__body .label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card__name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--name-lines,2);min-height:calc(var(--name-lines,2) * 20px);overflow:hidden;font:600 15px/20px var(--display);letter-spacing:0;text-transform:none}
/* the product name stretches over the whole card, so the piece is one large target (photo, name, price); chips and the save button sit above it */
.card__name a::after{content:"";position:absolute;inset:0;z-index:1}
.card__body .price{font-size:15px;line-height:20px}

/* quick size picker: slides up over the foot of the photograph on hover or focus; always shown on touch screens */
.card__body{position:relative}
.card__quick{position:absolute;left:0;right:0;bottom:100%;z-index:2;display:flex;flex-wrap:wrap;gap:10px;padding:10px 12px;background:var(--paper);color:var(--ink);border-top:var(--hair) solid var(--ink);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
.card:hover .card__quick,.card:focus-within .card__quick{opacity:1;visibility:visible}
.card__quick a{display:grid;place-items:center;min-width:44px;height:44px;padding:0 8px;border:var(--hair) solid var(--mute);font:500 12px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}
.card__quick a:hover,.card__quick a:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.card__quick--one a{min-width:0;flex:1 1 100%;height:44px;background:var(--ink);border-color:var(--ink);color:var(--paper)}
.card__quick--one a:hover{background:var(--cobalt);border-color:var(--cobalt)}
@media (hover:none){.card__quick{opacity:1;visibility:visible}}

/* sections */
.section{padding-block:calc(clamp(56px,7vw,112px) * var(--sec-scale,1)) 0}
.section--tight{padding-top:calc(clamp(40px,5vw,72px) * var(--sec-scale,1))}
.section__head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:20px}
.section__head .title{margin-top:8px}
.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:32px}
.crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:28px;color:var(--quiet);font-size:12px}
.crumbs a{padding-block:6px}
.crumbs a:hover{color:var(--cobalt)}
.empty{display:grid;justify-items:center;gap:15px;text-align:center;padding:88px 16px}
.empty h2,.empty h1{font:700 clamp(1.8rem,3vw,2.8rem)/1 var(--display);font-stretch:120%;text-transform:uppercase}
.empty p{color:var(--mute)}
.empty--page{padding-block:clamp(72px,10vw,140px)}

/* forms */
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=search],input[type=url],textarea,select{background:transparent;border:0;border-bottom:var(--hair) solid var(--mute);padding:10px 0;min-height:44px;width:100%;transition:border-color .2s}
input[type=search]::-webkit-search-cancel-button{display:none}
/* the keyboard ring stays on every field; the underline only adds to it */
input:focus,textarea:focus{border-color:var(--cobalt)}
select:focus{border-color:var(--cobalt)}
input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;flex:none;accent-color:var(--cobalt)}
label{font:500  12px/16px var(--mono);letter-spacing:.14em;text-transform:uppercase}

/* footer — the concrete slab */
.site-footer{margin-top:0;background:var(--ink);color:var(--paper)}
.site-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:var(--gut) 20px;padding-block:56px 48px}
.site-footer .label{color:var(--paper)}
.site-footer__intro p{margin-top:16px;color:#B8B8B8;max-width:34ch;font:400 13px/21px var(--display)}
.site-footer .logo img{filter:invert(1)}
.site-footer h2{margin-bottom:16px;color:#B8B8B8}
.site-footer li{margin-bottom:4px}
.site-footer li a,.site-footer__grid p{color:#B8B8B8;transition:color .15s}
.site-footer li a{display:inline-block;padding-block:4px}
.site-footer li a:hover{color:var(--paper);text-decoration:underline;text-underline-offset:3px}
/* cobalt is only 2.9:1 on ink, so rings on dark slabs are white */
.site-footer :focus-visible,.announce :focus-visible,.cart_totals :focus-visible,#order_review :focus-visible{outline-color:var(--paper)}
.site-footer__grid .tlink{margin-top:12px;color:var(--paper);border-color:var(--paper)}
.site-footer__menu ul{display:flex;gap:20px;flex-wrap:wrap;padding-block:20px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.site-footer__menu ul a{color:#B8B8B8}
.site-footer__menu ul a:hover{color:var(--paper)}
.site-footer__legal{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding-block:20px;border-top:1px solid #333333;color:#B8B8B8}
.site-footer__legal a{text-decoration:underline;text-underline-offset:3px}
.site-footer__currency{display:inline-flex;align-items:center;gap:10px}
.site-footer__currency .currency select{margin:0;color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none' stroke='%23FFFFFF' stroke-width='1.5'%3E%3Cpath d='m1 1 4 4 4-4'/%3E%3C/svg%3E")}
.site-footer__currency .currency select option{background:var(--ink)}

.toast{position:fixed;left:50%;bottom:24px;z-index:200;transform:translate(-50%,24px);opacity:0;pointer-events:none;background:var(--cobalt);color:var(--paper);padding:14px 26px;font:600  12px/14px var(--mono);letter-spacing:.2em;text-transform:uppercase;transition:.35s var(--ease)}
.toast.is-on{transform:translate(-50%,0);opacity:1}
.toast{max-width:min(92vw,560px);text-align:center;line-height:18px}
.toast.is-error{background:var(--error)}
[aria-busy=true]{opacity:.55;pointer-events:none}

@media (max-width:1180px){
  :root{--mar:2rem}
  .primary{display:none}
  .site-header__menu{display:inline-grid}
  .site-header__account{display:none}
  .grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}
  .site-footer__grid{grid-template-columns:1fr 1fr}
  .mega__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  :root{--mar:1rem}
  .site-header__bar{min-height:64px}
  .logo img{width:var(--logo-m,104px)}
  .site-header .currency{display:none}
  .site-header .icon-btn svg{width:24px;height:24px}
  .site-header .logo{min-height:44px}
  .site-header .icon-btn>.count{top:2px;right:2px}
  .search input{font-size:20px}
  .tlink,.chip,.search__tips a,.fopt,.drawer-links a,.site-footer li a,.site-footer__menu ul a{min-height:44px;align-items:center}
  .site-footer li a,.site-footer__menu ul a{display:inline-flex}
  .grid--4,.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .announce{justify-content:center}.announce>a{display:none}
  .marquee{display:none}
  .section__head{flex-direction:column;align-items:flex-start;gap:10px}
  .site-footer__grid{grid-template-columns:1fr}
  .site-footer__legal{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}

/* mini bag (WooCommerce widget markup inside the bag dialog) */
#bag-dialog .widget_shopping_cart_content{padding:0 24px 24px}
.woocommerce-mini-cart{display:grid}
.woocommerce-mini-cart-item{position:relative;display:block;padding:18px 36px 18px 0;border-bottom:var(--sep) solid var(--stone);font-size:12px;min-height:112px}
.woocommerce-mini-cart-item img{float:left;width:64px;aspect-ratio:3/4;object-fit:cover;background:var(--stone);margin-right:16px}
.woocommerce-mini-cart-item>a:not(.remove){display:block;font:400 13px/19px var(--display)}
.woocommerce-mini-cart-item .remove{position:absolute;right:0;top:8px;display:grid;place-items:center;width:44px;height:44px;font-size:20px;color:var(--quiet)}
.woocommerce-mini-cart-item .remove:hover{color:var(--cobalt)}
.woocommerce-mini-cart-item dl.variation{font-size:12px;color:var(--quiet);text-transform:uppercase;letter-spacing:.08em}
.woocommerce-mini-cart-item dl.variation p{margin:0;display:inline}
.woocommerce-mini-cart-item .quantity{display:block;margin-top:6px;color:var(--mute)}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;padding:20px 0;border-bottom:var(--rule) solid var(--ink);font:500  12px/14px var(--mono);letter-spacing:.2em;text-transform:uppercase}
.woocommerce-mini-cart__total .amount{font:500 20px/24px var(--mono);letter-spacing:0}
.woocommerce-mini-cart__buttons{display:grid;gap:10px;margin-top:16px}
.woocommerce-mini-cart__buttons a.button{width:100%}
.woocommerce-mini-cart__buttons a.button:not(.checkout){background:transparent;color:var(--ink)}
.woocommerce-mini-cart__empty-message{padding:32px 0;color:var(--mute)}

/* Customizer choices (inc/layout.php): responsive grids, card options, header options */
.grid.grid--var{--cols:var(--n-d,4);grid-template-columns:repeat(var(--cols),minmax(0,1fr))}
@media (max-width:1180px){.grid.grid--var{--cols:var(--n-t,3)}}
@media (max-width:760px){.grid.grid--var{--cols:var(--n-m,2)}}
.y2-header-sticky-off .site-header{position:relative}
.y2-card-frame-none .card:not(:hover):not(:focus-within){border-color:transparent}
.y2-card-divider-off .card__foot{border-top:0}
.y2-card-price-off .card__foot .price{display:none}
.y2-card-heart-off .card__save{display:none}
.y2-header-marquee-off .marquee{display:none}

/* typography, corners, side panels, footer (Customizer: Typography and spacing, Header, Footer) */
.display{font-size:calc(clamp(2.75rem,5.2vw,5.5rem) * var(--h-scale,1))}
.display--md{font-size:calc(clamp(2.25rem,4vw,4.25rem) * var(--h-scale,1))}
.title{font-size:calc(clamp(1.75rem,2.8vw,2.6rem) * var(--h-scale,1))}
.y2-type-caps-off :is(.display,.title,.product__title,.cat-tile__name,.hp-dept__name,.directory__name,.empty h1,.empty h2,.drawer-nav__link,.drawer-nav summary){text-transform:none}
.y2-ui-radius-small{--r:4px}.y2-ui-radius-medium{--r:10px}
body:not(.y2-ui-radius-none) :is(.btn,.button,.card,.card__media,.cat-tile,.hp-dept,.hp-name,.panel,input[type=text],input[type=email],input[type=tel],input[type=search],input[type=number],input[type=password],textarea,select,.chip,.fgroup summary,.fgroup__panel,.toast,.place,.account-card,.directory a,.badge,.gallery__stage,.hp-image,.mega__feature,.card__go,.card__save,.rail__nav button,.hp-slider__btn){border-radius:var(--r)}
body:not(.y2-ui-radius-none) .card,body:not(.y2-ui-radius-none) .cat-tile,body:not(.y2-ui-radius-none) .hp-dept,body:not(.y2-ui-radius-none) .hp-name{overflow:hidden}
.y2-nav-side-right .panel--left{inset:0 0 0 auto;border-left:var(--rule) solid var(--ink);border-right:0}
@media (min-width:1181px){.y2-foot-cols-equal .site-footer__grid{grid-template-columns:repeat(4,1fr)}}

/* phone menu, an opened department: a clear "view all" row, then groups with a rule and their links in two columns */
.drawer-nav details[open]>summary{border-bottom-color:var(--ink)}
.drawer-nav__body{padding:12px 0 8px}
.drawer-nav__body>.mega__all:first-child{display:flex;justify-content:space-between;align-items:center;min-height:48px;margin:0 0 6px;padding:0 14px;background:var(--low);border:0;color:var(--ink)}
.drawer-nav__body>.mega__all:first-child::after{content:"\2192";font-size:16px;letter-spacing:0}
.drawer-nav .mega__grid{grid-template-columns:1fr;gap:0}
.drawer-nav .mega__col{display:grid;grid-template-columns:1fr 1fr;column-gap:15px;align-items:start;padding:0 0 10px}
.drawer-nav .mega__col>.label{grid-column:1/-1;margin:0;padding:16px 0 6px;border-top:var(--sep) solid var(--stone);color:var(--quiet)}
.drawer-nav .mega__col a{padding:9px 0;min-height:40px;font-size:14px;line-height:20px}
.drawer-nav .mega__col>a.mega__all{grid-column:1/-1;margin-top:4px;min-height:36px;padding:6px 0;border-bottom:var(--hair) solid var(--mute);width:fit-content;font-size:12px}
.drawer-nav .mega__designers{grid-template-columns:1fr 1fr;gap:0 15px}
/* phone menu, opened department, second pass: each group is a row of small chips instead of a long list */
.drawer-nav .mega__col{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;padding:0 0 20px}
.drawer-nav .mega__col>.label{flex:0 0 100%;padding:15px 0 0;border-top:var(--sep) solid var(--stone)}
.drawer-nav .mega__col:first-child>.label{border-top:0;padding-top:5px}
.drawer-nav .mega__col a,.drawer-nav .mega__designers a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:var(--hair) solid var(--mute);background:var(--paper);font:400 13px/18px var(--display);text-transform:none;letter-spacing:0}
.drawer-nav .mega__col>a.mega__all{grid-column:auto;width:auto;margin:0;min-height:38px;padding:0 14px;border:var(--hair) solid var(--ink);background:var(--ink);color:var(--paper);font:500 11px/16px var(--mono)!important;letter-spacing:.12em;text-transform:uppercase}
.drawer-nav .mega__designers{display:flex;flex-wrap:wrap;gap:10px}
.drawer-nav .mega__designers a{text-transform:uppercase;font:500 11px/16px var(--mono);letter-spacing:.1em}
/* phone menu, third pass: chips share the row equally (no ragged edge); "All ..." is a full-width arrow row */
.drawer-nav .mega__col,.drawer-nav .mega__designers{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.drawer-nav .mega__col>.label{grid-column:1/-1}
.drawer-nav .mega__col a,.drawer-nav .mega__designers a{justify-content:center;text-align:center;min-width:0;padding:0 10px}
.drawer-nav .mega__col>a.mega__all,.drawer-nav .mega__designers>a.mega__all{grid-column:1/-1;justify-content:space-between;text-align:left;padding:0 14px;border:0;border-bottom:var(--hair) solid var(--ink);background:transparent;color:var(--ink)}
.drawer-nav .mega__col>a.mega__all::after,.drawer-nav .mega__designers>a.mega__all::after{content:"→";font-family:var(--mono)}
/* phone crumbs match desktop: the 44px link box left link text at the top and the separators centred */
.crumbs a{min-height:0}

/* search panel, second design: a drop-down as tall as its content, a boxed field with an ink submit block, designers as arrow rows */
.panel--search{inset:0 0 auto 0;height:auto;padding-bottom:20px}
.panel--search .search{margin-top:20px;gap:0;border:var(--rule) solid var(--ink);padding-left:15px;transition:border-color .2s}
.panel--search .search:focus-within{border-color:var(--cobalt);border-bottom-width:var(--rule)}
.panel--search .search input{font:700 clamp(18px,2.2vw,24px)/1.2 var(--display);padding:15px 10px 15px 0}
.panel--search .search .icon-btn{flex:0 0 56px;align-self:stretch;width:56px;height:auto;background:var(--ink);color:var(--paper);transition:background .2s}
.panel--search .search .icon-btn:hover,.panel--search .search:focus-within .icon-btn{background:var(--cobalt)}
.panel--search .search__tips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin-top:20px}
.panel--search .search__tips>.label{grid-column:1/-1;padding-bottom:10px;border-bottom:var(--rule) solid var(--ink)}
.panel--search .search__tips a{justify-content:space-between;min-height:48px;padding:0;border:0;border-bottom:var(--sep) solid var(--stone);background:transparent;font:500 12px/16px var(--mono);letter-spacing:.14em}
.panel--search .search__tips a::after{content:"→";font-size:14px;transition:transform .2s}
.panel--search .search__tips a:hover{background:transparent;color:var(--cobalt)}
.panel--search .search__tips a:hover::after{transform:translateX(4px)}
.panel--search .search__recent{margin-top:20px}
@media (max-width:760px){.panel--search .search__tips{grid-template-columns:1fr}}.panel--search:has(.search__results:not([hidden])) .search__tips,.panel--search:has(.search__results:not([hidden])) .search__recent{display:none}
.panel--search .search__results{margin-top:15px;padding-right:10px}
.panel--search .hit{grid-template-columns:56px minmax(0,1fr) auto}
.panel--search .hit .price{font-size:13px;white-space:nowrap}