/* Di Argento theme styles. Base copied from design/prototype/index.html; WordPress-specific rules at the end. */
/* Layout: a quiet silver-white gallery. Product photos sit on the same pale ground as the page, so the jewelry is the only thing with weight. Every section of the store is its own page with its own address. */
:root{
  --bg:#f6f7f8;--surface:#ffffff;--tile:#eef0f2;--ink:#1d2329;--muted:#5d6670;--line:#dcdfe3;
  --accent:#3b4b66;--accent-ink:#ffffff;--sale:#8a3b3b;--ok:#2f6b4f;
  --display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --body:"Figtree","Helvetica Neue",Arial,sans-serif;
  --mono:"DM Mono",ui-monospace,Menlo,monospace;
  --r:4px;
  --gut:max(16px, env(safe-area-inset-left, 0px));
  --gutr:max(16px, env(safe-area-inset-right, 0px));
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#121518;--surface:#1a1e22;--tile:#e9ebee;--ink:#e8eaed;--muted:#a3abb4;--line:#2c3237;--accent:#b9c6dc;--accent-ink:#121518;--sale:#e0a3a3;--ok:#8fd0b0;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#121518;--surface:#1a1e22;--tile:#e9ebee;--ink:#e8eaed;--muted:#a3abb4;--line:#2c3237;--accent:#b9c6dc;--accent-ink:#121518;--sale:#e0a3a3;--ok:#8fd0b0;color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:400 15px/1.55 var(--body)}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding-left:var(--gut);padding-right:var(--gutr)}
h1,h2,h3{font-family:var(--display);font-weight:400;text-wrap:balance;margin:0;letter-spacing:-.01em}
.eyebrow{font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.price{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--r);background:var(--accent);color:var(--accent-ink);padding:14px 22px;font-weight:600;font-size:15px;text-decoration:none}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.block{width:100%}
.link{background:none;border:0;padding:0;border-bottom:1px solid currentColor;font-size:14px;text-decoration:none}
.fine{font-size:12px;color:var(--muted)}

/* header */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
.proto-note{background:var(--tile);color:#1d2329;font-size:12px;text-align:center;padding-block:6px}
.promo{background:var(--ink);color:var(--bg);font-size:12.5px;text-align:center;padding-block:7px}
.promo .wrap{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:64px}
.logo{font-family:var(--display);font-size:26px;letter-spacing:.02em;text-decoration:none;justify-self:center;white-space:nowrap}
.logo small{display:block;font:500 9px/1 var(--body);letter-spacing:.32em;text-align:center;color:var(--muted);margin-top:2px}
.icons{justify-self:end;display:flex;gap:6px}
.icon-btn{background:none;border:0;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;position:relative;text-decoration:none}
.icon-btn:hover{background:var(--tile);color:#1d2329}
.icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}
.badge{position:absolute;top:4px;right:2px;min-width:17px;height:17px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font:600 10px/17px var(--body);text-align:center;padding:0 4px}
.menu-btn{display:none}
.mainnav{display:flex;justify-content:center;gap:4px;font-size:14px;position:relative}
.mainnav>div>a{display:block;padding:10px 12px 12px;text-decoration:none;border-bottom:2px solid transparent}
.mainnav>div:hover>a,.mainnav>div>a[aria-current="page"]{border-color:var(--ink)}
.mainnav .sale{color:var(--sale)}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.06);display:none}
.mainnav>div:hover .mega,.mainnav>div:focus-within .mega{display:block}
.mega .in{max-width:1180px;margin:0 auto;padding:22px var(--gutr) 26px var(--gut);display:grid;grid-template-columns:1fr 1fr 220px;gap:24px}
.mega h4{margin:0 0 10px;font:600 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.mega ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mega a{text-decoration:none}
.mega a:hover{text-decoration:underline}
.mega .ph{background:var(--tile);aspect-ratio:1;border-radius:var(--r);overflow:hidden}
.mega .ph img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.mainnav{display:none}.menu-btn{display:grid}.logo{font-size:22px}}

.drawer-nav{position:fixed;inset:0;z-index:30;display:flex}
.drawer-nav .panel{background:var(--surface);width:min(88vw,380px);height:100%;padding:calc(16px + env(safe-area-inset-top,0px)) 20px 24px max(20px,env(safe-area-inset-left,0px));overflow:auto}
.drawer-nav details{border-bottom:1px solid var(--line);padding-block:4px}
.drawer-nav summary{list-style:none;display:flex;justify-content:space-between;align-items:center;font-family:var(--display);font-size:21px;padding:10px 0;cursor:pointer}
.drawer-nav summary::after{content:"+";font-family:var(--body);font-size:18px;color:var(--muted)}
.drawer-nav details[open] summary::after{content:"–"}
.drawer-nav details a{display:block;padding:8px 0 8px 12px;text-decoration:none;color:var(--muted)}
.drawer-nav .plain{display:block;font-family:var(--display);font-size:21px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none}
.drawer-nav .small{display:block;padding:8px 0;text-decoration:none;color:var(--muted);font-size:14px}
.scrim{flex:1;background:rgba(10,14,18,.45)}

/* home */
.hero{display:grid;grid-template-columns:1.05fr 1fr;background:var(--surface);border-bottom:1px solid var(--line)}
.hero .copy{padding:clamp(28px,6vw,80px) var(--gutr) clamp(28px,6vw,80px) max(var(--gut),calc((100vw - 1180px)/2 + 16px));display:flex;flex-direction:column;justify-content:center;gap:18px}
.hero h1{font-size:clamp(36px,5.4vw,64px);line-height:1.04}
.hero h1 em{font-style:italic}
.hero p{color:var(--muted);max-width:44ch;margin:0;font-size:16px}
.ctas{display:flex;gap:10px;flex-wrap:wrap}
.hero .shot{background:var(--tile);display:grid;grid-template-columns:1fr 1fr;gap:2px}
.hero .shot img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:1}
@media (max-width:820px){.hero{grid-template-columns:1fr}.hero .copy{padding:28px var(--gutr) 28px var(--gut)}.hero .shot{order:-1;grid-template-columns:repeat(4,1fr)}}
.hallmark{display:inline-flex;align-items:center;gap:10px;font:500 12px/1 var(--mono);color:var(--muted)}
.hallmark b{border:1.5px solid currentColor;border-radius:40%/50%;padding:5px 8px;font-weight:500;color:var(--ink)}
.trust{border-bottom:1px solid var(--line)}
.trust ul{list-style:none;margin:0 auto;padding-block:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.trust li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.35}
.trust li b{display:block;font-weight:600}
.trust li span{color:var(--muted)}
.trust svg{flex:none;width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:1.5;margin-top:1px}
@media (max-width:820px){.trust ul{grid-template-columns:1fr 1fr}}
section.block{padding-block:clamp(36px,6vw,64px)}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.sec-head h2{font-size:clamp(26px,3.4vw,38px)}
.cats{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.cat{text-decoration:none;display:flex;flex-direction:column;gap:8px}
.cat .ph{background:var(--tile);aspect-ratio:1;border-radius:var(--r);overflow:hidden}
.cat .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.cat:hover .ph img{transform:scale(1.04)}
.cat span{font-family:var(--display);font-size:17px}
@media (max-width:900px){.cats{grid-template-columns:repeat(4,1fr)}}
@media (max-width:520px){.cats{grid-template-columns:repeat(3,1fr)}}
.gifts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gift{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:20px;text-decoration:none;display:flex;flex-direction:column;gap:6px;min-height:120px;justify-content:space-between}
.gift b{font-family:var(--display);font-weight:400;font-size:22px}
.gift span{color:var(--muted);font-size:13px}
.gift:hover{border-color:var(--ink)}
@media (max-width:820px){.gifts{grid-template-columns:1fr 1fr}}
.story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,64px);align-items:center}
.story p{color:var(--muted);max-width:52ch}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.facts div{border-top:1px solid var(--line);padding-top:10px}
.facts b{display:block;font-family:var(--display);font-size:28px;font-weight:400}
.facts span{font-size:12.5px;color:var(--muted)}
.story .ph{background:var(--tile);aspect-ratio:4/5;border-radius:var(--r);overflow:hidden}
.story .ph img{width:100%;height:100%;object-fit:cover}
@media (max-width:820px){.story{grid-template-columns:1fr}}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.review{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;font-size:14px}
.review b{display:block;margin-top:10px;font-weight:600;font-size:13px}
@media (max-width:820px){.reviews{grid-template-columns:1fr}}

/* product grid */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 16px}
@media (max-width:900px){.grid{grid-template-columns:repeat(2,1fr);gap:22px 10px}}
.card{display:flex;flex-direction:column;gap:8px;text-decoration:none;min-width:0}
.card .ph{position:relative;background:var(--tile);aspect-ratio:1;border-radius:var(--r);overflow:hidden}
.card .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s}
.card .ph img.alt{opacity:0}
.card:hover .ph img.alt{opacity:1}
.card .tag{position:absolute;left:8px;top:8px;background:#fff;color:#8a3b3b;font:600 11px/1 var(--body);padding:5px 7px;border-radius:2px}
.card .nm{font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card .pr{display:flex;gap:8px;align-items:baseline;font-size:14px}
.card .pr s{color:var(--muted);font-size:12.5px}
.card .pr .now.sale{color:var(--sale)}
.quick{position:absolute;right:8px;bottom:8px;width:38px;height:38px;border-radius:50%;border:0;background:#fff;display:grid;place-items:center;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.quick svg{width:18px;height:18px;stroke:#1d2329;fill:none;stroke-width:1.6}

/* category page */
.crumbs{font-size:12.5px;color:var(--muted);padding-block:18px 6px}
.crumbs a{color:inherit}
.cat-head{display:grid;grid-template-columns:1fr minmax(0,46ch);gap:12px 40px;align-items:end;margin-bottom:18px}
.cat-head h1{font-size:clamp(30px,4vw,46px)}
.cat-head p{margin:0;color:var(--muted);font-size:14.5px}
@media (max-width:820px){.cat-head{grid-template-columns:1fr}}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}
.chip{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 14px;font-size:13.5px;text-decoration:none}
.chip[aria-current="page"],.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.filters{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;border-block:1px solid var(--line);padding-block:12px;margin-bottom:18px;font-size:13.5px}
.filters .grp{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.filters .grp>span{color:var(--muted);margin-right:2px}
.filters .chip{padding:6px 11px;font-size:13px}
.filters .right{margin-left:auto;display:flex;gap:12px;align-items:center;color:var(--muted)}
.filters select{width:auto;padding:7px 10px;font-size:13.5px}
@media (max-width:820px){.filters{gap:8px}.filters .grp{flex-wrap:nowrap;overflow-x:auto;width:100%;scrollbar-width:none;padding-bottom:2px}.filters .grp>*{flex:none}.filters .right{margin-left:0;width:100%;justify-content:space-between}.promo .wrap{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;justify-content:flex-start;scrollbar-width:none}}
.more{display:grid;justify-items:center;gap:8px;padding-block:28px 8px}
.seo-text{border-top:1px solid var(--line);margin-top:40px;padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,64px)}
.seo-text h2{font-size:24px;margin-bottom:10px}
.seo-text p{color:var(--muted);font-size:14.5px;margin:0 0 10px}
@media (max-width:820px){.seo-text{grid-template-columns:1fr}}
.faq details{border-bottom:1px solid var(--line);padding-block:12px}
.faq summary{cursor:pointer;font-weight:600;font-size:14.5px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";font-weight:400;flex:none}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--muted);font-size:14px;margin:10px 0 0}
.empty{padding:40px 0;text-align:center;color:var(--muted)}

/* product page */
.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(20px,4vw,56px);padding-block:8px 48px}
.gallery{display:grid;gap:8px}
.gallery .main{background:var(--tile);aspect-ratio:1;border-radius:var(--r);overflow:hidden}
.gallery .main img{width:100%;height:100%;object-fit:cover}
.thumbs{display:flex;gap:8px}
.thumbs button{width:72px;aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r);padding:0;overflow:hidden;background:var(--tile)}
.thumbs button[aria-pressed="true"]{border-color:var(--ink)}
.thumbs img{width:100%;height:100%;object-fit:cover}
.buy{display:flex;flex-direction:column;gap:16px;min-width:0}
.buy h1{font-size:clamp(28px,3.2vw,40px);line-height:1.12}
.buy .pr{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.buy .pr .now{font-size:24px}
.buy .pr s{color:var(--muted)}
.rate{font-size:13.5px;color:var(--muted)}
.rate b{color:var(--ink);font-weight:600}
.specs{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:14px;margin:0;border-top:1px solid var(--line);padding-top:14px}
.specs dt{color:var(--muted)}
.specs dd{margin:0}
.stock{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ok)}
.stock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.gift-opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;background:var(--surface);font-size:14px}
.gift-opt input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--accent)}
.perks{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13.5px;color:var(--muted)}
.perks li::before{content:"— ";color:var(--accent)}
.sticky-buy{display:none}
@media (max-width:820px){
  .pdp{grid-template-columns:1fr}
  .sticky-buy{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:8;gap:12px;align-items:center;background:var(--surface);border-top:1px solid var(--line);padding:10px var(--gutr) calc(10px + env(safe-area-inset-bottom,0px)) var(--gut)}
  .sticky-buy .price{font-size:17px;white-space:nowrap}
  .sticky-buy .btn{flex:1}
  .pdp .add-main{display:none}
}

/* content pages */
.info-page{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(20px,5vw,64px);padding-block:8px 64px}
.side{position:sticky;top:96px;align-self:start;display:grid;gap:4px;font-size:14px}
.side h4{margin:0 0 8px;font:600 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.side a{text-decoration:none;padding:6px 0;color:var(--muted)}
.side a[aria-current="page"]{color:var(--ink);font-weight:600}
.prose{max-width:68ch}
.prose h1{font-size:clamp(30px,4vw,44px);margin-bottom:14px}
.prose h2{font-size:24px;margin:32px 0 10px}
.prose p,.prose li{font-size:15.5px}
.prose p{margin:0 0 12px}
.prose .lead{font-size:17px;color:var(--muted)}
.prose ul,.prose ol{padding-left:20px;margin:0 0 14px}
.prose table{border-collapse:collapse;width:100%;font-size:14px;margin:8px 0 16px}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left}
.prose th{color:var(--muted);font-weight:500}
.prose td{font-family:var(--mono);font-variant-numeric:tabular-nums}
.note{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;font-size:14px;margin:16px 0}
.steps{counter-reset:s;list-style:none;padding:0!important;display:grid;gap:12px}
.steps li{counter-increment:s;display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}
.steps li::before{content:counter(s);width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font:600 13px/1 var(--body)}
.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.article-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;display:flex;flex-direction:column}
.article-card .ph{background:var(--tile);aspect-ratio:4/3}
.article-card .ph img{width:100%;height:100%;object-fit:cover}
.article-card div.t{padding:16px;display:grid;gap:6px}
.article-card b{font-family:var(--display);font-weight:400;font-size:20px;line-height:1.2}
@media (max-width:820px){.info-page{grid-template-columns:1fr}.side{position:static;display:flex;flex-wrap:wrap;gap:6px 14px}.side h4{width:100%}.articles{grid-template-columns:1fr}}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.contact-grid div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.contact-grid b{display:block;font-size:12px;color:var(--muted);font-weight:500;margin-bottom:4px}
@media (max-width:620px){.contact-grid{grid-template-columns:1fr}}

/* signup, footer */
.signup{background:var(--surface);border-block:1px solid var(--line)}
.signup .wrap{display:flex;gap:16px 32px;align-items:center;justify-content:space-between;padding-block:20px;flex-wrap:wrap}
.signup h2{font-size:22px}
.signup p{color:var(--muted);margin:2px 0 0;font-size:14px}
.signup form{flex:1;max-width:460px;min-width:260px}
.field-row{display:flex;gap:8px}
.field-row input{flex:1;min-width:0}
input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:13px 14px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}
footer{padding-block:40px 60px;font-size:13.5px;color:var(--muted)}
footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:24px}
footer h4{font:600 12px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0 0 12px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
footer a{text-decoration:none}
footer a:hover{text-decoration:underline}
footer .legal{border-top:1px solid var(--line);margin-top:28px;padding-top:16px;font-size:12px}
@media (max-width:900px){footer .cols{grid-template-columns:1fr 1fr}}

/* cart, checkout */
.cart-drawer{position:fixed;inset:0;z-index:40;display:flex;justify-content:flex-end}
.cart-drawer .panel{background:var(--surface);width:min(100vw,420px);height:100%;display:flex;flex-direction:column}
.cart-drawer header{display:flex;justify-content:space-between;align-items:center;padding:calc(16px + env(safe-area-inset-top,0px)) var(--gutr) 16px 20px;border-bottom:1px solid var(--line)}
.cart-drawer h2{font-size:24px}
.lines{flex:1;overflow:auto;padding:8px 20px}
.line{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding-block:12px;border-bottom:1px solid var(--line);font-size:14px}
.line img{width:72px;height:72px;object-fit:cover;background:var(--tile);border-radius:var(--r)}
.qty{display:inline-flex;border:1px solid var(--line);border-radius:var(--r);margin-top:6px}
.qty button{background:none;border:0;width:30px;height:30px}
.qty span{width:28px;text-align:center;line-height:30px;font-family:var(--mono)}
.rm{background:none;border:0;padding:0;color:var(--muted);font-size:12.5px;text-decoration:underline;align-self:start}
.cart-drawer footer{padding:16px var(--gutr) calc(16px + env(safe-area-inset-bottom,0px)) 20px;border-top:1px solid var(--line);display:grid;gap:10px;color:var(--ink)}
.ship-bar{font-size:13px;color:var(--muted)}
.ship-bar .track{height:4px;background:var(--line);border-radius:2px;margin-top:6px;overflow:hidden}
.ship-bar .track i{display:block;height:100%;background:var(--accent)}
.sum{display:flex;justify-content:space-between;font-size:14px}
.sum.total{font-size:17px;font-weight:600}
.co{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(20px,4vw,56px);padding-block:8px 60px}
.co form{display:grid;gap:14px}
.co h2{font-size:24px;margin-top:8px}
.co .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.co label{display:grid;gap:6px;font-size:13px;color:var(--muted)}
.pay{display:grid;gap:8px}
.pay label{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r);padding:14px;background:var(--surface);color:var(--ink);font-size:14px}
.pay label:has(input:checked){border-color:var(--ink)}
.pay input{width:18px;height:18px;flex:none;margin-top:1px;accent-color:var(--accent)}
.pay small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.summary{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;gap:12px;align-self:start;position:sticky;top:120px}
.summary .line{grid-template-columns:56px 1fr auto;border:0;padding:0}
.summary .line img{width:56px;height:56px}
.coupon{display:flex;gap:8px}
.coupon input{min-width:0}
.ok-msg{color:var(--ok);font-size:13px}
@media (max-width:820px){.co{grid-template-columns:1fr}.summary{position:static;order:-1}.co .two{grid-template-columns:1fr}}
.done{text-align:center;padding-block:60px;display:grid;gap:14px;justify-items:center}
.done h1{font-size:clamp(30px,4vw,44px)}

/* popup, search */
.pop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(10,14,18,.5);padding:16px}
.pop .box{background:var(--surface);width:min(100%,760px);display:grid;grid-template-columns:1fr 1.1fr;border-radius:var(--r);overflow:hidden;position:relative;max-height:calc(100vh - 32px)}
.pop .ph{background:var(--tile)}
.pop .ph img{width:100%;height:100%;object-fit:cover;display:block}
.pop .in{padding:clamp(22px,4vw,40px);display:grid;gap:14px;align-content:center}
.pop .big{font-family:var(--display);font-size:clamp(52px,8vw,84px);line-height:.9}
.pop h2{font-size:clamp(22px,3vw,28px)}
.pop p{margin:0;color:var(--muted)}
.pop .x{position:absolute;right:8px;top:8px;background:var(--surface);border:0;width:36px;height:36px;border-radius:50%;font-size:20px;line-height:1}
.code{font:500 20px/1 var(--mono);letter-spacing:.08em;border:1.5px dashed var(--accent);padding:14px;text-align:center;border-radius:var(--r)}
@media (max-width:640px){.pop{align-items:end;padding:0}.pop .box{grid-template-columns:1fr;border-radius:12px 12px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}.pop .ph{height:150px}}
.searchbar{position:fixed;inset:0 0 auto;z-index:45;background:var(--surface);border-bottom:1px solid var(--line);padding:calc(14px + env(safe-area-inset-top,0px)) var(--gutr) 14px var(--gut);display:flex;gap:10px;box-shadow:0 12px 24px rgba(0,0,0,.08)}
.toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:var(--r);font-size:14px;z-index:60}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------- WordPress additions ---------- */
[hidden]{display:none!important}
body{margin:0}
img{max-width:100%;height:auto}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.card .ph img{height:100%}
.cart-drawer .panel{overflow:hidden}
.cart-body{flex:1;display:flex;flex-direction:column;min-height:0}
.line img{height:72px}
.gallery .main img{height:100%}
.thumbs img{height:100%}
.mega .ph{display:block}
.mega .ph img{height:100%}
.cat .ph img,.story .ph img,.hero .shot img{height:100%}
.filters .woocommerce-ordering{margin:0}
.prose a{color:var(--accent)}
.wc-page{padding-block:8px 64px}
.wc-title{font-size:clamp(28px,3.4vw,40px);margin-bottom:18px}
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r);padding:12px 16px;margin:0 0 16px;font-size:14px}
.woocommerce-error{border-left-color:var(--sale)}
.nav-links{display:flex;gap:8px;margin-top:24px}
.rate-hint{background:var(--surface);border:1px dashed var(--line);border-radius:var(--r);padding:10px 12px;margin:0 0 12px}
.wc-page .note .btn{color:var(--accent-ink)}
.wc-page .payment_box select{width:auto;padding:8px 10px}

/* ---------- WooCommerce screens (cart, checkout, order received, account); WooCommerce's own CSS is off ---------- */
.wc-page .co{padding-block:0 40px}
.co-main{min-width:0}
.co-h{font-size:24px;margin:8px 0 14px}
.co-side .co-h{font-size:22px}
.woocommerce-billing-fields h3,.woocommerce-additional-fields h3,.woocommerce-shipping-fields{display:none}
.woocommerce-billing-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.form-row{display:grid;gap:6px;margin:0 0 12px}
.form-row-wide,.notes,#order_comments_field{grid-column:1/-1}
.form-row label{font-size:13px;color:var(--muted)}
.form-row .optional{font-size:11.5px}
abbr.required{color:var(--sale);text-decoration:none;border:0}
.woocommerce-input-wrapper{display:block}
#billing_country_field{display:none!important}
.co .form-row label{display:block}
.form-row .required{color:var(--sale)}
.co-side .product-name .product-quantity{display:block;margin:-6px 0 0 62px;font-size:12.5px}
.form-row.woocommerce-invalid input{border-color:var(--sale)}
textarea{min-height:76px;resize:vertical}
@media (max-width:620px){.woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}}
/* payment */
#payment .payment_methods{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}
#payment .wc_payment_method{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:14px}
#payment .wc_payment_method:has(input:checked){border-color:var(--ink)}
#payment .wc_payment_method>input{width:18px;height:18px;margin:0 10px 0 0;vertical-align:-3px;accent-color:var(--accent)}
#payment .wc_payment_method>label{font-weight:600;font-size:14.5px;cursor:pointer}
#payment .payment_box{margin:10px 0 0 28px;font-size:13.5px;color:var(--muted)}
#payment .payment_box p{margin:0 0 8px}
#payment .payment_box select{width:auto;min-width:220px}
#payment .payment_box .form-row{margin:6px 0}
#payment .place-order{display:grid;gap:12px;margin-top:6px}
#place_order{width:100%;border:0;border-radius:var(--r);background:var(--accent);color:var(--accent-ink);padding:16px 22px;font:600 16px/1 var(--body);cursor:pointer}
.woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--muted)}
.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p{margin:0 0 8px}
.woocommerce-form__label-for-checkbox{display:flex!important;gap:8px;align-items:flex-start;font-size:13.5px;color:var(--ink)}
.woocommerce-form__label-for-checkbox input{width:18px;height:18px;flex:none;accent-color:var(--accent)}
.woocommerce-terms-and-conditions{max-height:220px;overflow:auto;border:1px solid var(--line);padding:12px;margin-bottom:10px;background:var(--surface)}
/* order summary */
.co-side .shop_table{width:100%;border-collapse:collapse;font-size:14px}
.co-side .shop_table thead{display:none}
.co-side .shop_table td,.co-side .shop_table th{padding:10px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-weight:400}
.co-side .shop_table td:last-child{text-align:right;font-family:var(--mono);white-space:nowrap}
.co-side .shop_table tfoot th{color:var(--muted)}
.co-side .order-total th,.co-side .order-total td{font-size:17px;font-weight:600;color:var(--ink);border-bottom:0}
.co-item{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:start}
.co-item img{width:52px;height:52px;object-fit:cover;border-radius:var(--r);background:var(--tile)}
.product-quantity{font-weight:400;color:var(--muted)}
.co-side .variation{margin:4px 0 0 62px;font-size:12px;color:var(--muted)}
.co-side .variation dt,.co-side .variation dd{display:inline;margin:0}
.co-side .variation p{display:inline;margin:0}
#shipping_method{list-style:none;margin:0;padding:0;text-align:right}
#shipping_method input{display:none}
.co-side .perks{margin-top:14px}
.woocommerce-form-coupon-toggle .woocommerce-info{border-left-color:var(--line);margin-bottom:12px}
.checkout_coupon{display:flex;gap:8px;margin:0 0 16px;max-width:460px}
.checkout_coupon p{margin:0}.checkout_coupon .form-row-first{flex:1}
.checkout_coupon .clear{display:none}
.checkout_coupon button{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:12px 16px;font-weight:600}
.blockUI.blockOverlay{background:var(--bg)!important;opacity:.6!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
/* order received */
.woocommerce-order{display:grid;gap:18px}
.woocommerce-thankyou-order-received{font-family:var(--display);font-size:clamp(22px,3vw,30px);margin:0}
.woocommerce-order-overview{list-style:none;margin:0;padding:16px 18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);font-size:13px;color:var(--muted)}
.woocommerce-order-overview strong{display:block;color:var(--ink);font-size:15px;font-family:var(--mono);font-weight:400}
.woocommerce-order-details h2,.woocommerce-customer-details h2{font-size:22px;margin:8px 0 10px}
.woocommerce-table--order-details{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border:1px solid var(--line)}
.woocommerce-table--order-details th,.woocommerce-table--order-details td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:left}
.woocommerce-table--order-details td:last-child,.woocommerce-table--order-details tfoot td{text-align:right;font-family:var(--mono)}
.woocommerce-customer-details address{font-style:normal;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px;line-height:1.6}
.wc-bacs-bank-details,.woocommerce-order>p{margin:0}
/* cart page (used without JavaScript; the drawer covers the usual flow) */
.woocommerce-cart-form .shop_table{width:100%;border-collapse:collapse;background:var(--surface);font-size:14px}
.woocommerce-cart-form th,.woocommerce-cart-form td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
.woocommerce-cart-form .product-thumbnail img{width:64px;height:64px;object-fit:cover}
.woocommerce-cart-form .product-remove a{text-decoration:none;font-size:20px;color:var(--muted)}
.woocommerce-cart-form .quantity input{width:70px}
.cart-collaterals{margin-top:20px;display:flex;justify-content:flex-end}
.cart_totals{width:min(100%,420px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px}
.cart_totals table{width:100%;font-size:14px}.cart_totals th{text-align:left;color:var(--muted);font-weight:400}.cart_totals td{text-align:right}
.wc-proceed-to-checkout .checkout-button,.wc-page .button{display:inline-flex;justify-content:center;background:var(--accent);color:var(--accent-ink);border:0;border-radius:var(--r);padding:14px 22px;font-weight:600;text-decoration:none;cursor:pointer}
.wc-proceed-to-checkout .checkout-button{width:100%;margin-top:12px}
.wc-empty-cart-message,.cart-empty{padding:30px 0;text-align:center;color:var(--muted)}
.return-to-shop{text-align:center}
@media (max-width:820px){.woocommerce-cart-form .product-thumbnail{display:none}}
/* Bigger touch targets for small text links on phones */
@media (max-width:820px){.sec-head .link,.rate a,.more .link,.story .link{display:inline-block;padding-block:8px}}
/* Logged-in staff see the WordPress admin bar above the sticky header */
.admin-bar header.top{top:32px}
@media (max-width:782px){.admin-bar header.top{top:0}}
/* Category tiles: one swipeable row on phones instead of a grid that leaves a tile alone */
@media (max-width:520px){
  .cats{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1 * var(--gutr));padding-right:var(--gutr)}
  .cats .cat{flex:0 0 38%;scroll-snap-align:start}
}
.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.drawer-head .logo{justify-self:auto}
.admin-bar .drawer-nav .panel{padding-top:calc(16px + 46px)}
#payment .wc_payment_method>label{display:inline}
.searchbar input{flex:1;min-width:0}
.searchbar .icon-btn{flex:none;align-self:center}
/* Tablets: three products per row */
@media (min-width:600px) and (max-width:900px){.grid{grid-template-columns:repeat(3,1fr)}}
/* Cart page on phones: one card per product instead of a wide table */
@media (max-width:640px){
  .woocommerce-cart-form .shop_table thead{display:none}
  .woocommerce-cart-form .shop_table,.woocommerce-cart-form .shop_table tbody,.woocommerce-cart-form .shop_table tr,.woocommerce-cart-form .shop_table td{display:block;width:100%}
  .woocommerce-cart-form .shop_table tr.cart_item{position:relative;border-bottom:1px solid var(--line);padding:10px 0}
  .woocommerce-cart-form .shop_table td{border:0;padding:4px 12px;display:flex;justify-content:space-between;gap:12px}
  .woocommerce-cart-form .shop_table td[data-title]::before{content:attr(data-title);color:var(--muted);font-size:13px}
  .woocommerce-cart-form .product-remove{position:absolute;right:0;top:6px;width:auto!important}
  .woocommerce-cart-form .actions{display:grid!important;gap:8px}
  .woocommerce-cart-form .coupon{display:flex;gap:8px}
}
.shipping-calculator-button,.showcoupon,.payment_box a{display:inline-block;padding-block:6px}

/* ---------- Shop filters: dropdown row on desktop, one button + bottom sheet on phones ---------- */
.filterbar{display:flex;align-items:center;gap:8px;border-block:1px solid var(--line);padding-block:10px;margin-bottom:14px;position:relative;z-index:6}
.filterbar .sort{margin-left:auto}
.filterbar .sort select{width:auto;padding:9px 34px 9px 12px;font-size:13.5px;border-radius:999px}
.filter-toggle{display:none;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 14px;font-size:14px;font-weight:500}
.filter-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.fcount{background:var(--accent);color:var(--accent-ink);border-radius:9px;min-width:18px;height:18px;font-size:11px;line-height:18px;text-align:center;padding:0 5px}
.dd{position:relative}
.dd summary{list-style:none;cursor:pointer;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 30px 9px 14px;font-size:13.5px;position:relative;white-space:nowrap}
.dd summary::-webkit-details-marker{display:none}
.dd summary::after{content:"";position:absolute;right:13px;top:50%;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-70%) rotate(45deg)}
.dd[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.dd.on summary{border-color:var(--ink)}
.dd summary b{font-weight:600}
.dd-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 12px 28px rgba(0,0,0,.12);padding:12px;display:flex;flex-wrap:wrap;gap:8px}
.chip .swatch,.active-filters .swatch{margin-right:6px}
.swatch{display:inline-block;width:14px;height:14px;border-radius:50%;vertical-align:-2px;border:1px solid rgba(0,0,0,.15)}
.swatch-srebrna{background:linear-gradient(135deg,#f6f7f9,#aeb4bd)}
.swatch-zlatna{background:linear-gradient(135deg,#f3e2a8,#b98f2e)}
.swatch-roze{background:linear-gradient(135deg,#f6d6c8,#c48470)}
.swatch-dvobojna{background:linear-gradient(90deg,#d9dde2 50%,#d4b058 50%)}
.active-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:-4px 0 16px}
.active-filters .chip{padding:6px 12px;font-size:13px;text-decoration:none}
.active-filters .chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.active-filters .chip span[aria-hidden]{margin-left:6px;opacity:.7}
.filter-sheet{position:fixed;inset:0;z-index:45;display:flex;flex-direction:column;justify-content:flex-end}
.filter-sheet .scrim{position:absolute;inset:0}
.filter-sheet .sheet{position:relative;background:var(--surface);border-radius:14px 14px 0 0;max-height:85vh;display:flex;flex-direction:column}
.filter-sheet header{display:flex;justify-content:space-between;align-items:center;padding:14px var(--gutr) 8px var(--gut)}
.filter-sheet h2{font-size:24px}
.sheet-body{overflow:auto;padding:0 var(--gutr) 8px var(--gut)}
.sheet-body fieldset{border:0;margin:0;padding:12px 0;border-top:1px solid var(--line)}
.sheet-body legend{font:600 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;padding:0}
.sheet-body .opts{display:flex;flex-wrap:wrap;gap:8px}
.sheet-body .chip{padding:10px 14px;font-size:14px}
.filter-sheet footer{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px var(--gutr) calc(12px + env(safe-area-inset-bottom,0px)) var(--gut);border-top:1px solid var(--line)}
.filter-sheet footer .btn{flex:1}
@media (max-width:820px){
  .filter-toggle{display:inline-flex}
  .filterbar .dd{display:none}
  .filterbar{border-bottom:0;padding-bottom:4px}
}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.signup form{position:relative}
.signup-msg{margin:8px 0 0}
.signup-msg.ok{color:var(--ok);font-size:13.5px}
