/* Shared design system for the TRESORA redesign concepts. Each concept sets the variables + its own look in style.css */
@font-face{font-family:"GT Standard";src:url(../../assets/fonts/GTStandard-MRegular-d0531d.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"GT Standard";src:url(../../assets/fonts/GTStandard-MMedium-269b78.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"GT Standard";src:url(../../assets/fonts/GTStandard-MSemibold-24a03e.woff2) format("woff2");font-weight:600 700;font-display:swap}
:root{--bg:#fff;--surface:#f4f2ee;--ink:#111;--muted:#666;--line:rgba(0,0,0,.12);--accent:#111;--accent-ink:#fff;--head:"Cormorant",serif;--body:"GT Standard",system-ui,sans-serif;
  --radius:0px;--btn-radius:0px;--wrap:1320px;--gap:32px;--hh:76px;--pad:clamp(20px,4vw,56px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.65 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--head);font-weight:400;line-height:1.08;margin:0;letter-spacing:var(--head-track,0)}
p{margin:0}
button,input,select{font:inherit;color:inherit}
[hidden]{display:none!important}
.rd-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rd-skip{position:absolute;left:-9999px}.rd-skip:focus{left:12px;top:12px;z-index:100;background:var(--bg);padding:8px 12px}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex:none}
:focus-visible{outline:1px solid var(--focus,var(--ink));outline-offset:3px}

/* type + buttons: one primary, one secondary, one text link */
.rd-eyebrow{font:500 11px/1.4 var(--body);letter-spacing:.24em;text-transform:uppercase;color:var(--eyebrow,var(--muted));margin-bottom:18px}
.rd-lead{font-size:16px;line-height:1.7;color:var(--lead,var(--muted));max-width:34em}
.rd-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:0 34px;border:1px solid var(--accent);border-radius:var(--btn-radius);
  background:var(--accent);color:var(--accent-ink);font:500 11.5px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s,color .25s,border-color .25s,opacity .25s;white-space:nowrap}
.rd-btn:hover{opacity:.88}
.rd-btn:disabled{opacity:.4;cursor:not-allowed}
.rd-btn--secondary,.rd-btn--add{background:transparent;color:var(--ink);border-color:var(--btn-line,var(--ink))}
.rd-btn--secondary:hover,.rd-btn--add:hover:not(:disabled){background:var(--ink);color:var(--bg);border-color:var(--ink);opacity:1}
.rd-btn--full{width:100%}
.rd-btn.is-added{background:var(--ok,#2f6b4f);border-color:var(--ok,#2f6b4f);color:#fff}
.rd-textlink{display:inline-flex;align-items:center;min-height:44px;font:500 11.5px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--ink);
  background:linear-gradient(currentColor,currentColor) left calc(50% + 12px)/100% 1px no-repeat;padding-bottom:0;transition:background-size .3s}
.rd-textlink:hover{background-size:40% 1px}
.rd-linkbtn{background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;cursor:pointer;font:inherit}
.rd-stars{display:inline-flex;gap:2px;color:var(--star,var(--ink))}.rd-stars svg{width:13px;height:13px;fill:currentColor;stroke:none}
.rd-cta{display:flex;align-items:center;gap:14px 32px;flex-wrap:wrap;margin-top:36px}
.rd-facts{list-style:none;margin:44px 0 0;padding:20px 0 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 0;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.rd-facts li{padding:0 18px;border-left:1px solid var(--line)}.rd-facts li:first-child{padding-left:0;border-left:0}
.rd-facts a{text-decoration:none}.rd-facts a:hover{text-decoration:underline}

/* announcement + header */
.rd-announce{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;min-height:36px;padding:8px 16px;font:500 10.5px/1.3 var(--body);letter-spacing:.22em;text-transform:uppercase;background:var(--bar-bg,var(--ink));color:var(--bar-ink,var(--bg))}
.rd-dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.6}
.rd-header{position:sticky;top:0;z-index:50;background:var(--header-bg,var(--bg));color:var(--header-ink,var(--ink));border-bottom:1px solid var(--line);transition:box-shadow .3s}
.rd-header.is-scrolled{box-shadow:0 1px 0 var(--line),0 10px 30px rgba(0,0,0,.05)}
.rd-header__in{max-width:var(--wrap);margin:0 auto;min-height:var(--hh);padding:0 var(--pad);display:grid;grid-template-columns:auto 1fr minmax(200px,300px) auto;grid-template-areas:"logo nav search actions";align-items:center;gap:28px}
.rd-menu-btn{grid-area:menu}.rd-logo{grid-area:logo}.rd-nav{grid-area:nav}.rd-search{grid-area:search}.rd-actions{grid-area:actions}
.rd-logo img{height:46px;width:auto}
.rd-nav{display:flex;gap:30px;font:500 11.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.rd-nav a{text-decoration:none;padding:8px 0;background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat;transition:background-size .3s}
.rd-nav a:hover,.rd-nav a[aria-current]{background-size:100% 1px}
.rd-nav__acc{display:none}
.rd-search{position:relative;display:flex;align-items:center;gap:10px;height:40px;padding:0 2px;border-bottom:1px solid var(--line)}
.rd-search svg{width:16px;height:16px;opacity:.7}
.rd-search input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:13px;letter-spacing:.04em;height:100%}
.rd-search input::placeholder{color:var(--muted)}
.rd-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.rd-suggest{position:absolute;left:0;right:0;top:calc(100% + 10px);min-width:300px;background:var(--pop-bg,#fff);color:var(--pop-ink,#111);border:1px solid rgba(0,0,0,.08);box-shadow:0 24px 60px rgba(0,0,0,.14);padding:8px;z-index:60;max-height:70vh;overflow:auto}
.rd-suggest a{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:8px;text-decoration:none;font-size:13px}
.rd-suggest a:hover{background:rgba(0,0,0,.04)}.rd-suggest img{width:44px;height:44px;object-fit:cover}
.rd-suggest b{font-weight:500}.rd-suggest p{padding:10px;font-size:13px;color:#555}
.rd-suggest button{width:100%;margin-top:4px;padding:12px;border:0;background:rgba(0,0,0,.05);cursor:pointer;font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
.rd-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}
.rd-icon{display:inline-flex;align-items:center;gap:8px;height:42px;min-width:42px;justify-content:center;padding:0 8px;border:0;background:none;cursor:pointer;position:relative;color:inherit;text-decoration:none;font:500 11.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
.rd-icon:hover{opacity:.7}
.rd-count{position:absolute;top:4px;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--count-bg,var(--accent));color:var(--count-ink,var(--accent-ink));font:600 10px/17px var(--body);letter-spacing:0;text-align:center}
.rd-menu-btn,.rd-search-btn{display:none}

/* editorial header (centered logo, nav on its own row): used by v1 + v2 */
.rd-head-editorial .rd-header__in{grid-template-columns:1fr auto 1fr;grid-template-areas:"search logo actions" "nav nav nav";gap:0 24px;min-height:0;padding-top:16px}
.rd-head-editorial .rd-logo img{height:58px}
.rd-head-editorial .rd-search{justify-self:start;width:min(260px,100%)}
.rd-head-editorial .rd-nav{justify-content:center;gap:44px;margin-top:12px;padding:14px 0 12px;border-top:1px solid var(--line)}

/* layout */
main{display:block}
.rd-section{max-width:var(--wrap);margin:0 auto;padding:clamp(64px,8vw,120px) var(--pad)}
.rd-head{margin:0 auto clamp(36px,4vw,56px);text-align:center;max-width:720px}
.rd-head h2{font-size:clamp(32px,3.6vw,50px)}
.rd-head p:not(.rd-eyebrow){color:var(--muted);margin-top:14px}
.rd-head--row{text-align:left;display:flex;align-items:flex-end;justify-content:space-between;max-width:none;gap:20px}
.rd-viewall{text-align:center;margin-top:56px}

/* categories: editorial tiles, text below image, uniform 4:5 */
.rd-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.rd-cat{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.rd-cat__media{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--surface)}
.rd-cat__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.rd-cat:hover .rd-cat__media img{transform:scale(1.035)}
.rd-cat__text{display:flex;flex-direction:column;gap:8px;padding-top:22px}
.rd-cat__text small{font:500 10.5px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.rd-cat__text strong{font:400 clamp(26px,2.2vw,32px)/1.1 var(--head);letter-spacing:var(--head-track,0)}
.rd-cat__text em{font-style:normal;color:var(--muted);font-size:14px;min-height:3.2em}
.rd-more{align-self:flex-start;margin-top:6px;font:500 11px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;padding-bottom:6px;border-bottom:1px solid currentColor}

/* shop bar: understated text tabs */
.rd-shopbar{display:flex;justify-content:space-between;align-items:center;gap:16px 28px;flex-wrap:wrap;margin-bottom:36px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.rd-tabs{display:flex;gap:28px;flex-wrap:wrap}
.rd-tab{height:36px;padding:0;border:0;background:none;cursor:pointer;font:500 11.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid transparent}
.rd-tab span{margin-left:4px;opacity:.7;letter-spacing:0}
.rd-tab:hover{color:var(--ink)}
.rd-tab[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}
.rd-shopbar__note{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.rd-shoptools{display:flex;align-items:center;gap:24px;margin-left:auto}
.rd-sort{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.rd-sort select,.rd-card__opt select{height:40px;padding:0 30px 0 12px;border:1px solid var(--line);border-radius:var(--btn-radius);background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23888' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 12px center;-webkit-appearance:none;appearance:none;font-size:13px;cursor:pointer;color:var(--ink)}
.rd-sort select option,.rd-card__opt select option{color:#111}
.rd-check{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.rd-check input{accent-color:var(--accent);width:15px;height:15px;margin:0}

/* product cards: uniform 4:3 image, aligned title / price / button rows */
.rd-grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:56px var(--gap)}
.rd-card{display:flex;flex-direction:column;background:var(--card-bg,transparent);border:var(--card-border,0)}
.rd-card__media{position:relative;display:block;aspect-ratio:4/3;background:var(--surface);overflow:hidden}
.rd-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.rd-card:hover .rd-card__media img{transform:scale(1.03)}
.rd-badge{position:absolute;top:14px;left:14px;z-index:1;padding:7px 10px;background:var(--bg);color:var(--ink);font:500 10px/1 var(--body);letter-spacing:.2em;text-transform:uppercase}
.rd-card__body{display:flex;flex-direction:column;flex:1;padding:var(--card-pad,20px 0 0)}
.rd-card__cat{font:500 10.5px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.rd-card__title{font-size:var(--card-title,22px);line-height:1.2;min-height:2.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rd-card__title a{text-decoration:none}.rd-card__title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.rd-card__price{display:flex;align-items:baseline;gap:12px;margin-top:8px;font-size:14px;letter-spacing:.04em}
.rd-card__note{font-size:12px;color:var(--muted)}
.rd-card__buy{display:flex;gap:8px;margin-top:auto;padding-top:18px}
.rd-card__buy .rd-btn{flex:1;min-height:44px;padding:0 16px;font-size:10.5px}
.rd-card__opt select{height:44px}
.rd-empty{text-align:center;padding:48px;color:var(--muted)}

/* trust */
.rd-trust{list-style:none;margin:0;padding:28px 0;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}
.rd-trust li{display:flex;gap:14px;align-items:flex-start;padding:0 24px;border-left:1px solid var(--line)}
.rd-trust li:first-child{border-left:0;padding-left:0}
.rd-trust svg{width:22px;height:22px;color:var(--trust-icon,var(--ink));margin-top:2px}
.rd-trust strong{display:block;font:500 11px/1.4 var(--body);letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px}
.rd-trust span{display:block;font-size:13px;color:var(--muted);line-height:1.55}
.rd-section--trust{padding-block:0}

/* why */
.rd-why{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;counter-reset:w}
.rd-why li{counter-increment:w;display:flex;flex-direction:column;gap:10px;padding-top:22px;border-top:1px solid var(--line)}
.rd-why li::before{content:"0" counter(w);font:500 11px var(--body);letter-spacing:.2em;color:var(--eyebrow,var(--muted))}
.rd-why strong{font:400 24px/1.2 var(--head)}.rd-why span{color:var(--muted);font-size:14px}

/* reviews */
.rd-reviews__head{display:flex;justify-content:center;margin-bottom:44px}
.rd-score{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}
.rd-score b{font:400 48px/1 var(--head)}.rd-score .rd-stars svg{width:15px;height:15px}.rd-score>span:last-child{color:var(--muted);font-size:13px;letter-spacing:.04em}
.rd-reviews__body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,2fr);gap:48px;align-items:start}
.rd-review-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rd-review-photos img{width:100%;aspect-ratio:3/4;object-fit:cover}
.rd-reviews__list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}
.rd-review{margin:0;padding:24px 0 28px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.rd-review blockquote{margin:0;font:400 19px/1.45 var(--head)}
.rd-review figcaption{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;letter-spacing:.06em;color:var(--muted);margin-top:auto}
.rd-review figcaption strong{color:var(--ink);font-weight:500}
.rd-review figcaption span::before{content:"· ";}

/* newsletter */
.rd-news{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding:clamp(48px,6vw,72px) var(--pad);background:var(--news-bg,transparent);color:var(--news-ink,var(--ink));border-block:var(--news-border,1px solid var(--line))}
.rd-news h2{font-size:clamp(28px,3vw,40px)}.rd-news p{color:inherit;opacity:.75;margin-top:10px}
.rd-news__form{display:flex;width:100%;max-width:520px;margin-top:10px;border-bottom:1px solid var(--news-line,var(--ink))}
.rd-news__form input{flex:1;min-width:0;height:52px;padding:0 4px;border:0;background:transparent;color:inherit;outline:none;font-size:15px}
.rd-news__form input::placeholder{color:inherit;opacity:.55}
.rd-news__form .rd-btn{min-height:52px;padding:0 6px 0 20px;background:none;border:0;color:inherit}
.rd-news__consent{font-size:12px;display:flex;gap:8px;align-items:center;opacity:.8}
.rd-news__msg{font-size:13px;min-height:1.2em}
.is-error{color:var(--err,#a3261e)}.is-ok{color:var(--ok-ink,#2f6b4f)}

/* footer */
.rd-footer{background:var(--foot-bg,var(--ink));color:var(--foot-ink,var(--bg))}
.rd-footer__top{max-width:var(--wrap);margin:0 auto;padding:80px var(--pad) 56px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.rd-footer__top h3{font:500 10.5px/1 var(--body);letter-spacing:.22em;text-transform:uppercase;margin-bottom:22px;opacity:.6}
.rd-footer__top>div:not(.rd-footer__brand){display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:14px}
.rd-footer a{text-decoration:none;opacity:.88}.rd-footer a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.rd-footer__brand img{height:62px;width:auto;margin-bottom:20px}
.rd-footer__brand p{max-width:30em;opacity:.7;font-size:14px}
.rd-social{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.rd-footer__bottom{max-width:var(--wrap);margin:0 auto;padding:24px var(--pad) 32px;border-top:1px solid var(--foot-line,rgba(255,255,255,.14));display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;font-size:12px;opacity:.75}
.rd-pay{display:flex;align-items:center;gap:8px}.rd-pay svg{width:14px;height:14px}
.rd-policies{display:flex;gap:18px;flex-wrap:wrap}

/* inner pages */
.rd-crumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}
.rd-crumbs a{text-decoration:none}.rd-crumbs a:hover{color:var(--ink)}
.rd-crumbs span[aria-current]{color:var(--ink)}
.rd-pagehead{padding-bottom:24px}
.rd-pagehead h1{font-size:clamp(40px,5vw,68px);margin-bottom:18px}
.rd-shop{padding-top:24px}
.rd-pdp-top{padding-block:36px 0}
.rd-pdp{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,80px);align-items:start;padding-top:8px}
.rd-pdp__main{position:relative;aspect-ratio:4/3;background:var(--surface);overflow:hidden}
.rd-pdp__main img{width:100%;height:100%;object-fit:cover}
.rd-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:10px}
.rd-thumb{padding:0;border:1px solid transparent;background:var(--surface);cursor:pointer;aspect-ratio:1;overflow:hidden;opacity:.7;transition:opacity .2s}
.rd-thumb img{width:100%;height:100%;object-fit:cover}
.rd-thumb:hover,.rd-thumb[aria-current]{opacity:1}.rd-thumb[aria-current]{border-color:var(--ink)}
.rd-pdp__info{position:sticky;top:calc(var(--hh) + 24px)}
.rd-pdp h1{font-size:clamp(34px,3.4vw,48px);margin-bottom:16px}
.rd-pdp__price{font-size:18px;letter-spacing:.04em;padding-bottom:22px;border-bottom:1px solid var(--line)}
.rd-pdp__price small{font-size:12px;color:var(--muted);margin-left:8px}
.rd-pdp__tagline{font:italic 400 22px/1.35 var(--head);margin:24px 0}
.rd-pills{border:0;padding:0;margin:0 0 22px}
.rd-pills legend{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;padding:0}
.rd-pills legend b{color:var(--ink);font-weight:500}
.rd-pills label{display:inline-block;margin:0 8px 8px 0}
.rd-pills input{position:absolute;opacity:0;pointer-events:none}
.rd-pills span{display:inline-flex;align-items:center;min-height:42px;padding:0 20px;border:1px solid var(--line);cursor:pointer;font-size:13px}
.rd-pills input:checked+span{border-color:var(--ink)}
.rd-pills input:focus-visible+span{outline:1px solid var(--ink);outline-offset:2px}
.rd-pdp__buy{display:grid;grid-template-columns:auto 1fr;gap:10px}
.rd-qty{display:inline-flex;align-items:center;height:52px;border:1px solid var(--line)}
.rd-qty button{width:42px;height:100%;border:0;background:none;cursor:pointer;font-size:16px}
.rd-qty button:disabled{opacity:.3}
.rd-qty input,.rd-qty output{width:40px;text-align:center;border:0;background:none;font-size:14px;-moz-appearance:textfield}
.rd-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.rd-pdp__assure{list-style:none;margin:26px 0 0;padding:20px 0;border-block:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:13px;color:var(--muted)}
.rd-pdp__assure li{display:flex;align-items:center;gap:10px}.rd-pdp__assure svg{width:17px;height:17px;color:var(--ink)}
.rd-pdp__desc{margin-top:28px;font-size:14.5px;color:var(--lead,var(--muted))}
.rd-pdp__desc p{margin:0 0 14px}
.rd-pdp__desc h3{font:500 11px/1.4 var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);margin:28px 0 12px}
.rd-pdp__desc ul{list-style:none;margin:0 0 14px;padding:0}
.rd-pdp__desc li{padding:9px 0 9px 22px;border-bottom:1px solid var(--line);position:relative}
.rd-pdp__desc li::before{content:"";position:absolute;left:2px;top:19px;width:8px;height:1px;background:var(--ink)}
.rd-pdp-reviews,.rd-related{border-top:1px solid var(--line)}
.rd-pdp-reviews .rd-reviews__list{max-width:960px;margin:0 auto}
.rd-grid--related{--cols:4;gap:40px 24px}
.rd-cartpage{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start;padding-top:16px}
.rd-cartpage__cols{display:grid;grid-template-columns:1fr 140px 120px;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.rd-cartpage__cols span:last-child{text-align:right}
.rd-cartpage ul{list-style:none;margin:0;padding:0}
.rd-line{display:grid;grid-template-columns:120px 1fr 140px 120px;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.rd-line__img{display:block;aspect-ratio:4/3;background:var(--surface);overflow:hidden}.rd-line__img img{width:100%;height:100%;object-fit:cover}
.rd-line__info{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.rd-line__info a{font:400 21px/1.2 var(--head);color:var(--ink);text-decoration:none}
.rd-line .rd-qty{height:44px;justify-self:start}
.rd-line__total{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:14px}
.rd-line__total b{font-weight:500}.rd-line__total .rd-linkbtn{font-size:12px;color:var(--muted)}
.rd-cartpage__empty{padding:64px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px;color:var(--muted)}
.rd-summary{padding:32px;background:var(--surface);display:flex;flex-direction:column;gap:18px;position:sticky;top:calc(var(--hh) + 24px)}
.rd-summary h2{font-size:28px}
.rd-summary dl{margin:0;display:flex;flex-direction:column;gap:10px;font-size:14px}
.rd-summary dl div{display:flex;justify-content:space-between}.rd-summary dd{margin:0}
.rd-summary dl div:first-child{padding-bottom:12px;border-bottom:1px solid var(--line);font-size:16px}
.rd-summary__msg{font-size:13px;min-height:1em}
.rd-summary__note{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted)}.rd-summary__note svg{width:14px;height:14px}
.rd-summary .rd-textlink{align-self:center}
.rd-account-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(40px,7vw,120px);align-items:start;max-width:1080px}
.rd-account__card h1{font-size:clamp(40px,4.4vw,58px);margin-bottom:28px}
.rd-account__perks{padding:36px;border:1px solid var(--line);margin-top:40px}
.rd-account__perks h2{font-size:28px;margin-bottom:18px}
.rd-account__perks ul{list-style:none;margin:0 0 20px;padding:0}
.rd-account__perks li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.rd-modal__tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:28px}
.rd-modal__tabs button{height:48px;border:0;background:none;cursor:pointer;font:500 11.5px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid transparent;margin-bottom:-1px;color:inherit;opacity:.55}
.rd-modal__tabs button[aria-selected=true]{border-color:var(--ink);opacity:1}
.rd-auth{display:flex;flex-direction:column;gap:18px;max-width:460px}
.rd-auth label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.rd-auth input:not([type=checkbox]){height:50px;padding:0 14px;border:1px solid var(--line);border-radius:var(--btn-radius);background:var(--field-bg,transparent);font-size:15px;width:100%;letter-spacing:0;text-transform:none;color:var(--ink)}
.rd-auth input:not([type=checkbox]):focus{outline:none;border-color:var(--ink)}
.rd-auth .rd-check{flex-direction:row;align-items:center;gap:8px;font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink)}
.rd-pass{position:relative;display:block}.rd-pass .rd-linkbtn{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:12px;letter-spacing:.06em;text-transform:none}
[data-mode=signin] [data-only=signup],[data-mode=signup] [data-only=signin]{display:none}
.rd-forgot{align-self:flex-start;font-size:13px}
.rd-auth__msg{font-size:13px;min-height:1.2em}
.rd-auth__note{font-size:12px;color:var(--muted)}

/* cart drawer follows the concept */
.tc-drawer{--tc-bg:var(--drawer-bg,#fff);--tc-ink:var(--drawer-ink,#111);--tc-btn:var(--accent);--tc-btn-ink:var(--accent-ink);--tc-head:var(--head);--tc-body:var(--body);--tc-panel:var(--surface)}
.rd-drawer-cartlink{display:block;text-align:center;margin-top:14px;font:500 11px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--drawer-ink,#111);text-underline-offset:5px}

/* responsive */
@media (max-width:1100px){
  :root{--hh:64px}
  .rd-header__in,.rd-head-editorial .rd-header__in{grid-template-columns:1fr auto 1fr;grid-template-areas:"menu logo actions";gap:8px;padding-top:0;min-height:var(--hh)}
  .rd-head-editorial .rd-logo img,.rd-logo img{height:44px}
  .rd-nav,.rd-head-editorial .rd-nav{display:none}
  .rd-menu-btn{display:inline-flex;justify-self:start}
  .rd-menu-open .rd-nav{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:100%;margin:0;background:var(--header-bg,var(--bg));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px var(--pad) 20px;box-shadow:0 30px 40px rgba(0,0,0,.1)}
  .rd-menu-open .rd-nav a{padding:18px 0;border-bottom:1px solid var(--line);font-size:12px;background:none}
  .rd-nav__acc{display:block}
  .rd-search,.rd-head-editorial .rd-search{display:none;position:absolute;left:var(--pad);right:var(--pad);top:calc(100% + 8px);width:auto;height:52px;padding:0 16px;background:var(--pop-bg,#fff);color:var(--pop-ink,#111);border:1px solid rgba(0,0,0,.08);box-shadow:0 16px 40px rgba(0,0,0,.14)}
  .rd-searching .rd-search{display:flex}
  .rd-search-btn{display:inline-flex}
  .rd-hide-sm{display:none}
  .rd-grid{--cols:2}
  .rd-grid--related{--cols:2}
  .rd-trust{grid-template-columns:repeat(2,1fr);gap:24px 0}
  .rd-trust li:nth-child(3){border-left:0;padding-left:0}
  .rd-why{grid-template-columns:repeat(2,1fr)}
  .rd-reviews__body{grid-template-columns:1fr}
  .rd-review-photos{grid-template-columns:repeat(2,minmax(0,240px))}
  .rd-pdp{grid-template-columns:1fr}.rd-pdp__info{position:static}
  .rd-cartpage{grid-template-columns:1fr}.rd-summary{position:static}
  .rd-account-page{grid-template-columns:1fr}
}
@media (max-width:749px){
  :root{--hh:58px;--gap:16px;--pad:20px}
  .rd-logo img,.rd-head-editorial .rd-logo img{height:38px}
  .rd-icon{min-width:40px;padding:0 6px}
  .rd-announce{font-size:9.5px;letter-spacing:.18em}
  .rd-section{padding:64px var(--pad)}
  .rd-cats{grid-template-columns:1fr;gap:40px}
  .rd-cat__media{aspect-ratio:4/3}
  .rd-cat__text em{min-height:0}
  .rd-grid{--cols:2;gap:40px 14px}
  .rd-card__title{font-size:calc(var(--card-title,22px) * .8);min-height:2.4em}
  .rd-card__cat{font-size:9.5px;letter-spacing:.16em}
  .rd-card__buy{flex-direction:column}
  .rd-card__opt select{width:100%}
  .rd-card__buy .rd-btn{padding:0 8px;letter-spacing:.14em}
  .rd-trust{grid-template-columns:1fr 1fr;gap:22px 0;padding:24px 0}
  .rd-trust li{flex-direction:column;gap:8px;padding:0 12px}
  .rd-trust li:nth-child(odd){border-left:0;padding-left:0}
  .rd-why{grid-template-columns:1fr;gap:24px}
  .rd-reviews__list{grid-template-columns:1fr}
  .rd-review-photos{grid-template-columns:1fr 1fr}
  .rd-facts{font-size:11px}.rd-facts li{padding:0 10px}
  .rd-cta{gap:12px 24px}
  .rd-footer__top{grid-template-columns:1fr 1fr;padding:56px var(--pad) 32px}
  .rd-footer__brand{grid-column:1/-1}
  .rd-footer__bottom{flex-direction:column}
  .rd-shopbar{flex-direction:column;align-items:flex-start}
  .rd-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:22px;scrollbar-width:none}
  .rd-tab{flex:none}
  .rd-shoptools{margin-left:0;width:100%;justify-content:space-between}
  .rd-head--row{flex-wrap:wrap}
  .rd-thumbs{grid-template-columns:repeat(5,1fr);gap:6px}
  .rd-pdp__assure{grid-template-columns:1fr}
  .rd-grid--related{--cols:2}
  .rd-cartpage__cols{display:none}
  .rd-line{grid-template-columns:96px 1fr;gap:12px 16px}
  .rd-line .rd-qty{grid-column:2}
  .rd-line__total{grid-column:2;flex-direction:row;justify-content:space-between;align-items:center}
  .rd-summary{padding:24px}
  .rd-account__perks{padding:24px;margin-top:0}
}
/* inner page rhythm */
.rd-pagehead{padding-top:clamp(36px,4vw,56px)}
.rd-account-page{padding-top:clamp(40px,5vw,72px)}
.rd-facts{gap:8px 28px}.rd-facts li,.rd-facts li:first-child{padding:0;border-left:0}
.rd-section.rd-pagehead{padding-bottom:24px}
.rd-section.rd-pdp-top{padding-top:clamp(24px,3vw,36px);padding-bottom:0}
.rd-section.rd-pdp{padding-top:8px}
.rd-section.rd-shop{padding-top:24px}
.rd-section.rd-cartpage{padding-top:16px}

/* ---- product-first additions ---- */
.rd-card__inside{margin-top:8px;font-size:13px;line-height:1.5;color:var(--muted);min-height:3em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rd-card__price{margin-top:12px}
.rd-pdp__intro{font-size:15px;color:var(--lead,var(--muted));margin:-8px 0 24px}
.rd-inside{margin:30px 0 0;padding:28px 0 6px;border-top:1px solid var(--line)}
.rd-inside h2{font-size:clamp(26px,2.4vw,32px);display:inline}
.rd-inside__count{display:inline;margin-left:14px;font:500 10.5px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.rd-inside ol{list-style:none;counter-reset:i;margin:20px 0 0;padding:0}
.rd-inside li{counter-increment:i;display:grid;grid-template-columns:34px 1fr;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.rd-inside li::before{content:counter(i,decimal-leading-zero);font:500 11px/1.9 var(--body);letter-spacing:.1em;color:var(--eyebrow,var(--muted))}
.rd-inside__spec{font-size:13px;color:var(--muted);margin-top:12px}
.rd-inside__pack{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-size:12.5px;color:var(--muted)}
.rd-inside__pack svg{width:16px;height:16px;margin-top:2px}
.rd-pdp__desc{border-top:0}
.rd-pdp__info{position:static}
.rd-reviews__body--text{display:block}
.rd-reviews__body--text .rd-reviews__list{grid-template-columns:repeat(3,1fr);gap:0 40px}
.rd-hero__tag{position:absolute;left:20px;bottom:20px;padding:10px 14px;background:rgba(255,255,255,.92);color:#14161c;font:500 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase}
.rd-hero__media{display:block}
.rd-hero__mosaic{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr 1fr;gap:1px;background:var(--line);border-left:1px solid var(--line)}
.rd-tile{position:relative;display:block;overflow:hidden;min-height:0;background:var(--surface)}
.rd-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.rd-tile:hover img{transform:scale(1.03)}
.rd-tile--tall{grid-row:1/3}
.rd-tile span{position:absolute;left:16px;bottom:16px;padding:8px 12px;background:rgba(13,23,38,.82);color:#f1ece2;font:500 10px/1 var(--body);letter-spacing:.18em;text-transform:uppercase}
.rd-hero__frame figcaption a{color:inherit}
@media (max-width:1100px){.rd-reviews__body--text .rd-reviews__list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:749px){
  .rd-reviews__body--text .rd-reviews__list{grid-template-columns:1fr}
  .rd-hero__mosaic{order:-1;aspect-ratio:1;border-left:0;border-bottom:1px solid var(--line)}
  .rd-card__inside{font-size:12px}
  .rd-inside li{font-size:14px}
}
.rd-pdp__glance{margin:0 0 26px;padding:16px 18px;background:var(--surface);font-size:13.5px;line-height:1.6}
.rd-pdp__glance span{display:block;font:500 10.5px/1.6 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--eyebrow,var(--muted));margin-bottom:4px}
.rd-pdp__glance a{margin-left:6px;color:var(--ink);text-underline-offset:4px}

/* backdrop behind an open mobile menu / mobile search (tap to close); the cart drawer uses its own overlay */
.rd-backdrop{position:fixed;inset:0;z-index:45;background:rgba(20,18,16,.32);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;-webkit-tap-highlight-color:transparent}
.rd-has-backdrop .rd-backdrop{opacity:1;visibility:visible}
@media (prefers-reduced-motion:reduce){.rd-backdrop{transition:none}}
/* leave a strip of the cart overlay visible on phones so a tap outside the drawer closes it */
.rd .tc-drawer{width:min(440px,calc(100vw - 56px))}

/* language switcher EN | ES */
.rd-lang-pending body{visibility:hidden}
.rd-lang{display:inline-flex;align-items:center;gap:2px;margin:0 2px;font:500 11.5px/1 var(--body);letter-spacing:.14em}
.rd-lang span{opacity:.45}
.rd-lang button{border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;padding:8px 5px;min-height:40px;cursor:pointer;opacity:.55}
.rd-lang button[aria-pressed="true"]{opacity:1;text-decoration:underline;text-underline-offset:4px}
.rd-lang button:hover,.rd-lang button:focus-visible{opacity:1}
@media (max-width:420px){.rd-lang{margin:0}.rd-lang button{padding:8px 3px}}
