/* ══════════════════════════════════════════════════════════════
   ANGEL BABY VINTAGE — Customize Design › Advanced › CSS
   Paste this whole file in. Seasonal colour shifts live in the
   four body[data-season] rules below; everything else follows.
   ══════════════════════════════════════════════════════════════ */

:root{--ground:#fbe9ec;--veil:251,233,236;--powder:#f6dde2;--powder-2:#efcbd3;--cream:#ffffff;--card:#ffffff;--gold:#dcb45f;--gold-ink:#b8913c;--rose:#f4779f;--rose-deep:#d1547f;--rose-fill:#f78fb0;--rose-fill-deep:#e26e97;--ink:#4a3238;--feature-script:#ffe9d9;--stripe:.35;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost','Helvetica Neue',sans-serif;--script:'Pinyon Script',cursive}

/* Four editions. Each is a complete palette, not a tint of the others.
   Cream cards + gold keylines + script accents are the constant. */
body[data-season="spring"]{--ground:#f2dc8e;--veil:242,220,142;--powder:#ecd48c;--powder-2:#ddc169;--cream:#fffdf2;--card:#fffef9;--gold:#cba85a;--gold-ink:#9c7d2c;--rose:#5f93b8;--rose-deep:#3f6c8f;--ink:#453a30;--feature-script:#f7edcb}
body[data-season="summer"]{--ground:#fbe9ec;--veil:251,233,236;--stripe:.66}
body[data-season="autumn"]{--ground:#f2e4d0;--veil:242,228,208;--powder:#e8d3b8;--powder-2:#dcc09c;--cream:#fdf7ec;--card:#fffdf6;--gold:#bd8f38;--gold-ink:#946c22;--rose:#bb6d47;--rose-deep:#8e4a2e;--ink:#43302a;--feature-script:#fbe6cf}
body[data-season="winter"]{--ground:#c4dcf2;--veil:196,220,242;--powder:#b8d3ec;--powder-2:#9cc0e0;--cream:#f9fbfd;--card:#fdfeff;--gold:#a9bccb;--gold-ink:#6d859a;--rose:#8a72b5;--rose-deep:#5d4a8c;--ink:#2f3a44;--feature-script:#ece7f7}

*{box-sizing:border-box}
body{margin:0;background-color:var(--ground);background-image:repeating-linear-gradient(90deg,rgba(255,255,255,var(--stripe,.35)) 0,rgba(255,255,255,var(--stripe,.35)) 26px,rgba(255,255,255,0) 26px,rgba(255,255,255,0) 52px),radial-gradient(ellipse at 50% 0%,rgba(255,255,255,.65),transparent 60%);font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{text-decoration:none;color:var(--rose-deep)}
a:hover{color:var(--rose)}

/* ── Ribbon + masthead ── */
.ribbon:empty{display:none}
.ribbon{background:linear-gradient(90deg,#bf4270,#a8305c,#bf4270);color:#fff;text-align:center;padding:9px 20px;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase}
.masthead{background:var(--cream);border-bottom:1.5px solid var(--gold);padding:20px 40px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;position:sticky;top:0;z-index:20}
.masthead-nav{display:flex;gap:28px;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.masthead-nav a{border-bottom:1px solid transparent;padding-bottom:3px}
.masthead-nav a:hover{border-bottom-color:var(--gold-ink)}
.masthead-logo img{height:52px;display:block;margin:0 auto}
.masthead-tools{display:flex;justify-content:flex-end;align-items:center;gap:22px;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.bag{color:var(--ink);display:flex;align-items:center;gap:8px;white-space:nowrap}
.bag-mark{width:30px;height:30px;border-radius:50% 50% 50% 50%/42% 42% 58% 58%;background:linear-gradient(160deg,var(--powder),var(--powder-2));border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--rose-deep)}

/* ── Shared pieces ── */
.band{max-width:1240px;margin:64px auto 0;padding:0 40px}
.center{text-align:center;margin-top:34px}
.empty{font-family:var(--serif);font-size:20px;color:var(--rose-deep);grid-column:1/-1;text-align:center;padding:40px 0}
.eyebrow{font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-ink)}
.script-lg{font-family:var(--script);font-size:34px;color:var(--rose);line-height:1.15}
.script-xl{font-family:var(--script);font-size:52px;color:var(--rose);line-height:1.1}
.script-xxl{font-family:var(--script);font-size:64px;color:var(--rose);line-height:1.05;white-space:nowrap}
.cartouche{background:var(--cream);border:1.5px solid var(--gold);border-radius:18px;box-shadow:0 0 0 5px var(--cream),0 0 0 6.5px var(--gold),0 14px 34px rgba(74,50,56,.16)}
.rule-head{display:flex;align-items:center;gap:14px;color:var(--rose-deep);margin-bottom:34px}
.rule{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,var(--gold))}
.rule-head .rule:last-child,.drop-banner-inner .rule:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.rule-mark{color:var(--rose);font-size:16px}
.rule-label{font-size:12.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:500;white-space:nowrap}
.pill{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:999px;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;padding:14px 32px;border:1px solid transparent;cursor:pointer;font-family:var(--sans)}
.pill-xl{font-family:var(--script);font-size:34px;line-height:1;letter-spacing:.01em;text-transform:none;padding:18px 56px;min-height:76px}
.pill-solid{background:linear-gradient(160deg,var(--rose-fill),var(--rose-fill-deep));color:var(--ink);border-color:rgba(255,255,255,.55);box-shadow:0 6px 18px rgba(74,50,56,.22)}
.pill-solid:hover{color:var(--ink);box-shadow:0 10px 24px rgba(74,50,56,.32)}

.pill-solid.pill-xl{background:linear-gradient(160deg,#e0669a,#c44a79);color:#fff;border-color:rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -3px 8px rgba(74,50,56,.14),0 0 0 4px var(--card),0 0 0 5.5px var(--gold),0 8px 20px rgba(74,50,56,.2);transition:transform .16s ease,box-shadow .16s ease}
.pill-solid.pill-xl:hover{color:#fff;transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -3px 8px rgba(74,50,56,.14),0 0 0 4px var(--card),0 0 0 5.5px var(--gold-ink),0 12px 26px rgba(74,50,56,.28)}
.pill-solid.pill-xl:active{transform:translateY(1px);box-shadow:inset 0 2px 6px rgba(74,50,56,.28),0 0 0 4px var(--card),0 0 0 5.5px var(--gold),0 4px 12px rgba(74,50,56,.2)}
.pill-cta{background:linear-gradient(160deg,#e0669a,#c44a79);color:#fff;border-color:rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -3px 8px rgba(74,50,56,.14),0 0 0 4px var(--card),0 0 0 5.5px var(--gold),0 8px 20px rgba(74,50,56,.2);transition:transform .16s ease,box-shadow .16s ease}
.pill-cta:hover{color:#fff;transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -3px 8px rgba(74,50,56,.14),0 0 0 4px var(--card),0 0 0 5.5px var(--gold-ink),0 12px 26px rgba(74,50,56,.28)}
.pill-cta:active{transform:translateY(1px);box-shadow:inset 0 2px 6px rgba(74,50,56,.28),0 0 0 4px var(--card),0 0 0 5.5px var(--gold),0 4px 12px rgba(74,50,56,.2)}
.pill-quiet{background:var(--card);color:var(--rose-deep);border-color:var(--gold)}
.pill-quiet:hover{background:var(--cream);border-color:var(--gold-ink)}
.pill-ghost{background:linear-gradient(160deg,var(--rose-fill),var(--rose-fill-deep));color:var(--ink);border-color:rgba(255,255,255,.55);box-shadow:0 6px 18px rgba(74,50,56,.22)}
.pill-ghost:hover{color:var(--ink);box-shadow:0 10px 24px rgba(74,50,56,.32)}

/* ── Hero ── */
.hero{position:relative;height:620px;overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--veil),.15),rgba(var(--veil),.62))}
.hero-inner{position:relative;height:100%;display:flex;align-items:center;justify-content:center;padding:40px}
.hero-card{background:var(--cream);border-radius:18px 18px 60% 60%/18px 18px 12% 12%;padding:44px 64px 52px;text-align:center;max-width:560px}
.lede{margin:16px 0 26px;font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.55;color:var(--rose-deep)}

/* ── Drop banner ── */
.drop-block{max-width:620px;margin:0 auto;text-align:center}
.drop-banner{padding:26px 44px 30px}
.drop-banner-inner{display:flex;align-items:center;justify-content:center;gap:18px}
.drop-note{margin:22px 0 0;font-family:var(--serif);font-size:20px;line-height:1.55;text-wrap:pretty}

/* ── Product tiles ── */
.grid-4,.grid-3up{background:var(--card);border:1.5px solid var(--gold);padding:clamp(18px,2.6vw,32px);border-radius:16px}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(152px,1fr));gap:clamp(10px,1.8vw,22px)}
.grid-3up{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(14px,2.2vw,28px)}
@media (min-width:900px){.grid-3up{grid-template-columns:repeat(3,1fr)}}
.tile{display:block;background:none;border:0;border-radius:0;padding:0;box-shadow:none;text-align:center}
.tile-photo{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--powder)}
.tile-photo img{transition:opacity .25s ease}
.tile:hover .tile-photo img{opacity:.85}
.tile-photo img{width:100%;height:100%;object-fit:cover;display:block}
.tile-flag{position:absolute;top:0;left:0;background:var(--cream);border:0;border-radius:0;padding:6px 12px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--rose-deep)}
.tile-flag-sale{left:auto;right:0;background:var(--rose-fill);color:var(--ink)}
.tile.sold .tile-photo img{opacity:.72}
.tile.sold .tile-flag{background:var(--rose-fill);color:var(--ink)}
.tile-name{font-family:var(--serif);font-size:18px;font-weight:500;line-height:1.35;margin-top:16px;text-wrap:pretty;color:var(--ink)}
.tile-price{font-family:var(--sans);font-size:13px;letter-spacing:.12em;color:#b83a68;margin-top:7px}
.tile-price.is-sold{color:#7a6a6e;text-decoration:line-through}
.tile-status{font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin-top:6px}

/* ── Three ways in ── */
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:34px}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:34px}
.shop .drop-block{margin-bottom:34px}
.shop .drop-banner{margin:0 auto}
a.drop-banner{display:block;transition:transform .16s ease,box-shadow .16s ease}
a.drop-banner:hover{transform:translateY(-2px);box-shadow:0 0 0 5px var(--cream),0 0 0 6.5px var(--gold-ink),0 12px 30px rgba(74,50,56,.2)}
.way{display:block;background:var(--card);border:1px solid var(--gold);border-radius:16px;padding:26px 24px;text-align:center;box-shadow:0 4px 14px rgba(74,50,56,.1);transition:transform .16s ease,box-shadow .16s ease}
.way:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(74,50,56,.16)}
.way-mark{display:block;font-size:16px;color:var(--rose)}
.way-name{display:block;font-family:var(--serif);font-size:25px;font-weight:600;color:var(--ink);margin-top:10px;line-height:1.2}
.way-detail{display:block;font-size:13px;line-height:1.5;color:var(--rose-deep);margin-top:8px}

/* ── Featured piece ── */
.feature{background:var(--card);border:1.5px solid var(--gold);border-radius:20px;box-shadow:0 0 0 5px var(--cream),0 0 0 6.5px var(--gold),0 14px 34px rgba(74,50,56,.14);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));overflow:hidden}
.feature-photo{width:100%;height:100%;min-height:300px;object-fit:contain;background:var(--card);display:block;aspect-ratio:1/1;max-height:520px}
.feature-body{padding:clamp(28px,4vw,56px);color:var(--ink);display:flex;flex-direction:column;justify-content:center}
.feature-name{margin:12px 0 0;font-family:var(--serif);font-weight:500;font-size:30px;line-height:1.25;letter-spacing:.02em;color:var(--ink)}
.feature-copy{margin:16px 0 0;font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.55;color:var(--ink)}
.feature-buy{display:flex;align-items:center;gap:20px;margin-top:26px;flex-wrap:wrap}
.feature-price{font-family:var(--serif);font-size:30px;color:var(--gold-ink)}

/* ── About + trust ── */
.about{padding:clamp(28px,4vw,56px);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(28px,4vw,52px);align-items:center}
.about-head{margin:6px 0 0;font-family:var(--serif);font-weight:500;font-size:36px;letter-spacing:.05em}
.about-copy{margin:18px 0 0;font-family:var(--serif);font-size:20px;line-height:1.6;text-wrap:pretty}
.about-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.about-photos img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;border:1px solid var(--gold)}
.about-photos img:last-child{margin-top:26px}
.trust{border-top:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);padding:clamp(26px,3.4vw,34px) 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(22px,3.4vw,34px);text-align:center}
.trust-head{font-family:var(--serif);font-size:23px;font-weight:600}
.trust p{margin:7px 0 0;font-size:13px;line-height:1.55;color:var(--rose-deep)}

/* ── Shop page ── */
.shop-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(24px,3vw,40px);align-items:start}
.filters{position:sticky;top:120px;display:flex;flex-direction:column;gap:0;background:var(--card);border:1.5px solid var(--gold);border-radius:16px;padding:clamp(16px,2vw,22px)}
.filters-head{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:9px}
.filter{font-family:var(--serif);font-size:17px;line-height:1.25;padding:4px 11px;border-radius:999px;border:1px solid transparent}
.filter:hover{background:var(--card);border-color:var(--gold)}
.filter.is-on{background:var(--cream);border-color:var(--gold);color:var(--ink)}
.pagination{margin:40px 0 0;text-align:center;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.pagination a,.pagination span{display:inline-block;padding:8px 13px}
.pagination .current{color:var(--gold-ink)}

/* ── Product page ── */
.crumbs{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose-deep);margin-bottom:26px}
.pdp{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(24px,3.5vw,44px);align-items:start}
.pdp-photo{width:100%;border-radius:14px;border:1px solid var(--gold);display:block;background:var(--powder)}
.pdp-photo.is-sold{opacity:.72}
.pdp-photo-flag{position:absolute;top:16px;left:16px;background:var(--rose-deep);color:var(--cream);border:1px solid var(--cream);border-radius:999px;padding:7px 18px;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase}
.pdp-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}
.pdp-thumb{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--gold);cursor:pointer}
.pdp-thumb:hover{border-color:var(--rose)}
.pdp-body{padding:44px}
.pdp-name{margin:0;font-family:var(--serif);font-weight:500;font-size:33px;line-height:1.2;letter-spacing:.02em}
.pdp-price{font-family:var(--serif);font-size:27px;color:var(--gold-ink);margin-top:12px;display:flex;align-items:center;gap:14px}
.pdp-sale{font-family:var(--sans);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream);background:var(--rose-deep);border-radius:999px;padding:5px 12px}
.pdp-form{margin-top:26px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.pdp-label{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-ink)}
.pdp-form select,#option{font-family:var(--serif);font-size:18px;padding:11px 14px;border:1px solid var(--gold);border-radius:10px;background:var(--card);color:var(--ink);min-width:220px}
.cart-form input[type=text],.cart-form input[type=number]{font-family:var(--serif);font-size:17px;width:58px;text-align:center;padding:9px 6px;border:1px solid var(--gold);border-radius:10px;background:var(--card);color:var(--ink)}
.pdp-add{width:auto}
.pdp-chip{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose-deep);border:1px solid var(--gold);border-radius:999px;padding:5px 12px}
.pdp-ships{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--rose-deep)}
.pdp-sold{margin-top:26px;background:var(--card);border:1px solid var(--gold);border-radius:14px;padding:22px 24px;text-align:center}
.pdp-sold-script{font-family:var(--script);font-size:30px;color:var(--rose);line-height:1.1}
.pdp-sold p{margin:6px 0 18px;font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--ink)}
.pdp-status{margin-top:26px;font-family:var(--serif);font-style:italic;font-size:20px;color:var(--rose-deep);border:1px solid var(--gold);border-radius:12px;padding:16px 20px;background:var(--card)}
.pdp-meta{margin-top:26px;padding-top:22px;border-top:1px solid var(--gold);display:grid;gap:10px;font-size:13px;line-height:1.55;color:var(--rose-deep)}
.pdp-meta strong{color:var(--ink);font-weight:500}
.pdp-add{box-sizing:border-box;min-height:48px}
.pdp-desc{margin-top:30px;font-family:var(--serif);font-size:19px;line-height:1.6}
.pdp-desc p{margin:0 0 14px}
.pdp-note{margin-top:26px;padding-top:20px;border-top:1px solid var(--gold);font-size:13px;line-height:1.55;color:var(--rose-deep)}
.pdp-instant{margin-top:12px;max-width:320px}
.pdp-nav{display:flex;justify-content:space-between;gap:20px;margin-top:22px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase}

/* ── Cart page (ours — server-side, no JS dependency) ── */
.cart-empty{text-align:center;padding:30px 0 10px}
.cart-empty-script,.contact-script{font-family:var(--script);font-size:40px;color:var(--rose);line-height:1.1}
.cart-empty p{margin:10px auto 24px;font-family:var(--serif);font-size:19px;color:var(--ink);max-width:420px;line-height:1.55}
.cart-form{margin:0}
.cart-th-item{width:auto}
.cart-td-price{color:var(--rose-deep);white-space:nowrap}
.cart-panel{background:var(--card);border:1.5px solid var(--gold);border-radius:16px;padding:clamp(14px,2.2vw,26px)}
.cart-qty{display:none}
.cart-remove{background:none;border:0;padding:6px 2px;cursor:pointer;font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#7a6a6e;border-bottom:1px solid var(--gold)}
.cart-remove:hover{color:var(--ink)}
.cart-table{width:100%;border-collapse:collapse;font-family:var(--serif);font-size:18px}
.cart-table th{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);font-weight:500;text-align:left;padding:0 10px 12px;border-bottom:1.5px solid var(--gold)}
.cart-table td{padding:16px 10px;border-bottom:1px solid var(--gold);vertical-align:middle}
.cart-td-photo img{width:72px;aspect-ratio:4/5;object-fit:cover;border-radius:8px;border:1px solid var(--gold);display:block}
.cart-td-name a{color:var(--ink);font-weight:600;line-height:1.35}
.cart-td-name a:hover{color:var(--rose-deep)}
.cart-th-total,.cart-td-total{text-align:right}
.cart-td-total{color:var(--gold-ink)}
.cart-td-qty input{font-family:var(--serif);font-size:17px;width:58px;text-align:center;padding:9px 6px;border:1px solid var(--gold);border-radius:10px;background:var(--card);color:var(--ink)}
.cart-hint{display:block;width:fit-content;margin:16px auto 0;background:var(--card);border:1.5px solid var(--gold);border-radius:999px;padding:11px 26px;font-family:var(--serif);font-size:16px;line-height:1.5;color:var(--ink);text-align:center}
.cart-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px;padding-top:22px;border-top:1.5px solid var(--gold)}
.cart-subtotal{font-family:var(--serif);font-size:22px;color:var(--ink)}
.cart-subtotal span{font-size:26px;color:var(--gold-ink);margin-left:10px}
.cart-actions{gap:22px;display:flex;gap:12px;flex-wrap:wrap}
.cart-update{-webkit-appearance:none;appearance:none}
.cart-note{margin:26px 0 0;font-family:var(--serif);font-style:italic;font-size:15px;color:var(--rose-deep);text-align:center}

/* ── Contact + maintenance (ours) ── */
.contact-card,.maintenance-card{max-width:620px;margin:0 auto;padding:clamp(28px,4vw,48px)}
.contact-lede{margin:0 0 22px;font-family:var(--serif);font-size:19px;line-height:1.55;color:var(--ink)}
.form-errors{background:var(--card);border:1px solid var(--rose-deep);border-radius:12px;padding:14px 18px;margin-bottom:18px;font-size:14px;line-height:1.6;color:var(--rose-deep)}
.contact-form{display:flex;flex-direction:column;gap:6px}
.contact-form label{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-ink);margin-top:12px}
.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{font-family:var(--serif);font-size:17px;padding:11px 14px;border:1px solid var(--gold);border-radius:10px;background:var(--card);color:var(--ink);width:100%}
.contact-form textarea{min-height:150px;resize:vertical}
.contact-form input[type=submit]{margin-top:20px;align-self:flex-start}
.contact-sent,.maintenance-card{text-align:center}
.contact-sent p,.maintenance-card p{margin:10px auto 24px;font-family:var(--serif);font-size:19px;color:var(--ink);max-width:420px;line-height:1.6}

/* ── Safety net: if any old-markup page slips through, element rules keep
   it legible. Harmless alongside the real pages above. ── */
.page-cart main,.page-contact main,.page-maintenance main{max-width:900px;margin:0 auto;padding:clamp(28px,5vw,56px) clamp(16px,4vw,40px)}
.page-cart h1,.page-cart h2,.page-contact h1,.page-contact h2,.page-maintenance h1,.page-maintenance h2{font-family:var(--serif);font-weight:500;letter-spacing:.04em;color:var(--ink);margin:0 0 20px}
.page-cart p,.page-contact p,.page-maintenance p{font-family:var(--serif);font-size:18px;line-height:1.6;color:var(--ink)}
.page-cart a,.page-contact a{color:var(--rose-deep)}
.page-cart table{width:100%;border-collapse:collapse;font-family:var(--serif);font-size:18px}
.page-cart th,.page-cart td{padding:14px 10px;border-bottom:1px solid var(--gold);text-align:left;vertical-align:middle}
.page-cart th{font-family:var(--sans);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink)}
.cart-table img{border-radius:10px;border:1px solid var(--gold);display:block}
.page-cart input[type=text],.page-cart input[type=number],.page-contact input[type=text],.page-contact input[type=email],.page-contact textarea{font-family:var(--serif);font-size:17px;padding:11px 14px;border:1px solid var(--gold);border-radius:10px;background:var(--card);color:var(--ink);box-sizing:border-box}
.page-cart input[type=text],.page-cart input[type=number]{width:64px;text-align:center;padding:9px 8px}
.page-cart textarea,.page-contact textarea{width:100%;min-height:150px}
.page-cart input[type=submit],.page-cart button,.page-contact input[type=submit],.page-contact button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;border-radius:999px;font-family:var(--sans);font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;padding:14px 32px;background:linear-gradient(160deg,#e0669a,#c44a79);color:#fff;border:1px solid rgba(255,255,255,.7);cursor:pointer}
.page-cart input[type=submit]:hover,.page-cart button:hover,.page-contact input[type=submit]:hover{color:#fff;box-shadow:0 8px 20px rgba(74,50,56,.26)}
.page-cart .cart-remove,.page-cart .cart-remove:hover{background:none;border:0;border-bottom:1px solid var(--gold);border-radius:0;min-height:0;padding:6px 2px;color:#7a6a6e;box-shadow:none;font-size:11px;letter-spacing:.18em}
.page-cart .cart-remove:hover{color:var(--ink)}

/* ── Custom pages (Shipping, About, FAQ — anything she writes in the admin).
   Big Cartel drops raw HTML from the page editor into , so
   this is all element-level: whatever she types comes out on-brand without
   her touching code. ── */
.page-custom main,body.custom main{max-width:760px;margin:0 auto;padding:clamp(28px,5vw,56px) clamp(16px,4vw,40px)}
.page-custom h1,body.custom h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4vw,38px);letter-spacing:.04em;color:var(--ink);margin:0 0 8px}
.page-custom h2,body.custom h2{font-family:var(--serif);font-weight:500;font-size:clamp(22px,3vw,27px);letter-spacing:.03em;color:var(--ink);margin:34px 0 10px;padding-top:20px;border-top:1px solid var(--gold)}
.page-custom h3,body.custom h3{font-family:var(--sans);font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-ink);margin:26px 0 8px;font-weight:500}
.page-custom p,.page-custom li,body.custom p,body.custom li{font-family:var(--serif);font-size:19px;line-height:1.65;color:var(--ink);text-wrap:pretty}
.page-custom p,body.custom p{margin:0 0 16px}
.page-custom ul,.page-custom ol,body.custom ul,body.custom ol{margin:0 0 18px;padding-left:22px}
.page-custom li,body.custom li{margin-bottom:8px}
.page-custom a,body.custom a{color:var(--rose-deep);border-bottom:1px solid var(--gold)}
.page-custom a:hover,body.custom a:hover{color:var(--rose)}
.page-custom img,body.custom img{border-radius:12px;border:1px solid var(--gold);margin:8px 0 20px}
.page-custom blockquote,body.custom blockquote{margin:22px 0;padding:18px 24px;background:var(--cream);border:1px solid var(--gold);border-radius:14px;font-style:italic}
.page-custom hr,body.custom hr{border:0;border-top:1px solid var(--gold);margin:30px 0}
.page-custom table,body.custom table{width:100%;border-collapse:collapse;font-family:var(--serif);font-size:17px;margin:0 0 20px}
.page-custom th,.page-custom td,body.custom th,body.custom td{padding:12px 10px;border-bottom:1px solid var(--gold);text-align:left}
.page-custom th,body.custom th{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);font-weight:500}

/* ── Footer ── */
.footer{background:var(--cream);border-top:1.5px solid var(--gold);margin-top:76px;padding:56px 40px 40px}
.footer-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(24px,3vw,48px);align-items:start}
.footer-logo{height:46px;display:block}
.footer-blurb{margin:18px 0 0;font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.55;color:var(--rose-deep);max-width:340px}
.footer-head{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-ink)}
.footer-links{display:flex;flex-direction:column;gap:10px;margin-top:14px;font-size:14px}
.footer-base{max-width:1240px;margin:40px auto 0;padding-top:22px;border-top:1px solid var(--gold);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--serif);font-style:italic;font-size:14px;color:var(--rose-deep)}

/* ── Responsive ── */
@media (max-width:1000px){
.masthead{grid-template-columns:1fr;justify-items:center;gap:14px;padding:16px 20px;position:static}
.masthead-logo{order:-1}
.masthead-nav,.masthead-tools{justify-content:center;flex-wrap:wrap}
.masthead-tools{flex-wrap:nowrap}
.band{margin-top:48px;padding:0 20px}
.hero{height:480px}
.hero-card{padding:32px 28px 38px}
.script-xl{font-size:40px}.script-xxl{font-size:46px}
.shop-layout{grid-template-columns:1fr}
.feature-body,.about,.pdp-body{padding:32px}
.about-photos img:last-child{margin-top:0}
.trust{grid-template-columns:1fr;gap:24px}
.filters{position:static;flex-direction:row;flex-wrap:wrap;margin-bottom:24px}
.cart-table thead{display:none}
.cart-table tr{display:grid;grid-template-columns:72px 1fr;gap:0 14px;padding:16px 0;border-bottom:1px solid var(--gold)}
.cart-table td{border:0;padding:0}
.cart-td-photo{grid-row:1/5}
.cart-td-name{font-size:17px}
.cart-td-price{font-size:16px;margin-top:4px}
.cart-td-qty{margin-top:8px}
.cart-td-total{text-align:left;margin-top:6px;font-size:17px}
.cart-foot{flex-direction:column;align-items:stretch}
.cart-actions{gap:22px;flex-direction:column}
.cart-actions .pill{width:100%}
.footer-grid{grid-template-columns:1fr;gap:32px}
.drop-banner{padding:20px 20px 24px}
.drop-banner-inner .rule{display:none}
}
@media (max-width:560px){.ribbon:empty{display:none}
.ribbon{font-size:10px;letter-spacing:.16em}}
