/* ── Fonts & Reset ─────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --sky:    #7EC8F2; --sky-soft: #BDE3FA; --sky-deep: #4FA8DE;
  --mint:   #9DE3C1; --mint-soft: #D3F5E4; --mint-deep: #5FC494;
  --blush:  #F9C6D8; --blush-soft: #FDE4EE; --blush-deep: #F094B8;
  --sun:    #FDE9A9; --sun-soft: #FEF4CE; --sun-deep: #F7D262;
  --lav:    #CBB9F2; --lav-soft: #E9E1FA; --lav-deep: #A488E8;
  --peach:  #FFD8C2; --peach-soft: #FFEBDF; --peach-deep: #FFB48C;
  --cream:  #FFFDFA;
  --ink:    #3D3A50; --ink-soft: #6B6784; --ink-faint: #9B97B2;
  --radius: 1.5rem;
  --shadow-card: 0 6px 24px -6px rgba(61,58,80,.10);
  --shadow-lift: 0 16px 40px -10px rgba(61,58,80,.18);
}
html { scroll-behavior: smooth; }
body { background: var(--cream); color: var(--ink); font-family: 'Poppins', sans-serif; font-size: 15px; line-height: 1.6; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font-family: inherit; }

/* ── Typography ─────────────────────────────────────────────── */
.font-display { font-family: 'Baloo 2', cursive; }
h1,h2,h3,h4 { font-family: 'Baloo 2', cursive; line-height: 1.2; color: var(--ink); }
h1 { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 800; }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); font-weight: 700; }
h3 { font-size: 1.25rem; font-weight: 700; }
.eyebrow { font-family: 'Baloo 2',cursive; font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--sky-deep); }

/* ── Layout ─────────────────────────────────────────────────── */
.container { max-width: 1200px; margin: 0 auto; padding: 0 1.25rem; }
.section { padding: 4rem 0; }
.section-alt { background: var(--lav-soft); }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
.grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 1.25rem; }
.grid-6 { display: grid; grid-template-columns: repeat(6,1fr); gap: 1rem; }
@media(max-width:1024px){.grid-4{grid-template-columns:repeat(3,1fr)}.grid-6{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.grid-6{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.grid-3,.grid-4{grid-template-columns:1fr}}

/* ── Buttons ─────────────────────────────────────────────────── */
.btn { display:inline-flex; align-items:center; gap:.5rem; padding:.875rem 1.75rem; border-radius:999px; font-family:'Baloo 2',cursive; font-size:.95rem; font-weight:700; cursor:pointer; border:none; transition:transform .2s,box-shadow .2s; text-decoration:none; }
.btn:hover { transform:translateY(-2px); }
.btn-gradient { background:linear-gradient(135deg,var(--sun),var(--peach),var(--blush)); color:var(--ink); box-shadow:0 10px 30px -8px rgba(126,200,242,.35); }
.btn-sky { background:linear-gradient(135deg,var(--sky-deep),var(--lav-deep)); color:#fff; box-shadow:0 10px 30px -8px rgba(79,168,222,.4); }
.btn-ghost { background:rgba(255,255,255,.7); color:var(--ink); border:2px solid rgba(61,58,80,.12); }
.btn-ghost:hover { border-color:var(--sky); background:rgba(189,227,250,.3); }
.btn-sm { padding:.5rem 1.25rem; font-size:.85rem; }
.btn:disabled { opacity:.6; cursor:not-allowed; transform:none; }
.btn-full { width:100%; justify-content:center; }

/* ── Cards ───────────────────────────────────────────────────── */
.card { background:#fff; border-radius:var(--radius); box-shadow:var(--shadow-card); transition:box-shadow .3s; }
.card:hover { box-shadow:var(--shadow-lift); }

/* ── Navbar ─────────────────────────────────────────────────── */
.navbar { position:sticky; top:0; z-index:100; background:rgba(255,253,250,.88); backdrop-filter:blur(10px); border-bottom:1px solid rgba(61,58,80,.06); }
.navbar-inner { display:flex; align-items:center; height:64px; gap:1.5rem; }
.logo { font-family:'Baloo 2',cursive; font-size:1.6rem; font-weight:800; letter-spacing:-.02em; }
.logo-nu { color:var(--sky-deep); } .logo-nuz { color:var(--blush-deep); }
.nav-links { display:flex; gap:.25rem; flex:1; justify-content:center; }
.nav-links a { padding:.5rem 1rem; border-radius:999px; font-family:'Baloo 2',cursive; font-size:.875rem; font-weight:600; color:var(--ink-soft); transition:background .2s,color .2s; }
.nav-links a:hover { background:var(--sun-soft); color:var(--ink); }
.navbar-actions { display:flex; align-items:center; gap:.75rem; }
.cart-btn { position:relative; background:#fff; border-radius:999px; padding:.6rem .8rem; box-shadow:var(--shadow-card); font-size:1.1rem; transition:transform .2s; }
.cart-btn:hover { transform:translateY(-2px); }
.cart-badge { position:absolute; top:-.25rem; right:-.35rem; background:var(--blush-deep); color:#fff; font-family:'Baloo 2',cursive; font-size:.7rem; font-weight:800; border-radius:999px; min-width:1.2rem; height:1.2rem; display:flex; align-items:center; justify-content:center; padding:0 .25rem; }
.nav-toggle { display:none; background:none; border:none; font-size:1.4rem; cursor:pointer; }
.mobile-nav { display:none; flex-direction:column; gap:.25rem; padding:.75rem 1.25rem 1rem; border-top:1px solid rgba(61,58,80,.06); }
.mobile-nav a { padding:.75rem 1rem; border-radius:var(--radius); font-family:'Baloo 2',cursive; font-weight:600; }
.mobile-nav a:hover { background:var(--sun-soft); }
.mobile-nav.open { display:flex; }
@media(max-width:900px){.nav-links{display:none}.nav-toggle{display:block}}

/* ── Flash messages ─────────────────────────────────────────── */
.flash { padding:.875rem 1.25rem; text-align:center; font-size:.9rem; font-weight:600; }
.flash-success { background:var(--mint-soft); color:var(--mint-deep); }
.flash-error { background:var(--blush-soft); color:var(--blush-deep); }

/* ── Product tile ───────────────────────────────────────────── */
.product-tile { overflow:hidden; display:block; border-radius:var(--radius); background:#fff; box-shadow:var(--shadow-card); transition:box-shadow .3s,transform .3s; text-decoration:none; }
.product-tile:hover { box-shadow:var(--shadow-lift); transform:translateY(-3px); }
.product-tile__img { aspect-ratio:1; display:flex; align-items:center; justify-content:center; font-size:5rem; transition:transform .4s; }
.product-tile:hover .product-tile__img { transform:scale(1.06); }
.product-tile__body { padding:1rem; }
.product-tile__age { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-faint); }
.product-tile__name { font-family:'Baloo 2',cursive; font-weight:700; margin:.25rem 0; color:var(--ink); line-height:1.3; }
.price { display:flex; flex-wrap:wrap; align-items:baseline; gap:.5rem; }
.price__current { font-family:'Baloo 2',cursive; font-size:1.1rem; font-weight:800; color:var(--ink); }
.price__mrp { font-size:.85rem; color:var(--ink-faint); text-decoration:line-through; }
.badge-off { background:var(--mint-soft); color:var(--mint-deep); border-radius:999px; padding:.15rem .6rem; font-size:.7rem; font-weight:700; }
.badge-new { background:var(--lav-soft); color:var(--lav-deep); border-radius:999px; padding:.15rem .6rem; font-size:.7rem; font-weight:700; }
.badge-best { background:var(--sun-soft); color:var(--ink); border-radius:999px; padding:.15rem .6rem; font-size:.7rem; font-weight:700; }

/* ── Hero ───────────────────────────────────────────────────── */
.hero { background:linear-gradient(180deg,var(--sky-soft) 0%,var(--cream) 100%); padding:5rem 0 4rem; text-align:center; overflow:hidden; position:relative; }
.hero h1 span { background:linear-gradient(135deg,var(--sky-deep),var(--lav-deep),var(--blush-deep)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero-sub { color:var(--ink-soft); max-width:520px; margin:1rem auto 2rem; font-size:1.05rem; }
.hero-ctas { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; }
.floating { position:absolute; animation:float 6s ease-in-out infinite; pointer-events:none; font-size:2.5rem; opacity:.75; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }

/* ── Section headers ─────────────────────────────────────────── */
.section-header { text-align:center; margin-bottom:2.5rem; }
.section-header h2 { margin-top:.25rem; }
.section-header-row { display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:1rem; margin-bottom:2rem; }

/* ── Age card ───────────────────────────────────────────────── */
.age-card { display:flex; flex-direction:column; align-items:center; gap:.5rem; padding:1.5rem 1rem; border-radius:var(--radius); text-align:center; transition:transform .3s; text-decoration:none; }
.age-card:hover { transform:translateY(-4px); }
.age-card__emoji { font-size:2.5rem; transition:transform .3s; }
.age-card:hover .age-card__emoji { transform:scale(1.2); }
.age-card__label { font-family:'Baloo 2',cursive; font-weight:700; color:var(--ink); font-size:.9rem; }

/* ── Forms ──────────────────────────────────────────────────── */
.form-group { margin-bottom:1.25rem; }
label { display:block; font-family:'Baloo 2',cursive; font-size:.85rem; font-weight:700; margin-bottom:.4rem; color:var(--ink); }
input, select, textarea { width:100%; border:2px solid rgba(61,58,80,.1); border-radius:1rem; padding:.75rem 1rem; font-size:.95rem; color:var(--ink); background:#fff; transition:border-color .2s; }
input:focus, select:focus, textarea:focus { outline:none; border-color:var(--sky); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media(max-width:600px){ .form-grid{grid-template-columns:1fr} }

/* ── Table ──────────────────────────────────────────────────── */
.table-wrap { overflow-x:auto; border-radius:var(--radius); background:#fff; box-shadow:var(--shadow-card); }
table { width:100%; border-collapse:collapse; font-size:.875rem; }
th { padding:.875rem 1rem; text-align:left; font-family:'Baloo 2',cursive; font-weight:700; color:var(--ink-faint); border-bottom:1px solid rgba(61,58,80,.08); white-space:nowrap; }
td { padding:.75rem 1rem; border-bottom:1px solid rgba(61,58,80,.05); vertical-align:middle; }
tr:last-child td { border-bottom:none; }
tr:hover td { background:rgba(254,244,206,.3); }

/* ── Status badges ─────────────────────────────────────────── */
.status { display:inline-block; border-radius:999px; padding:.2rem .75rem; font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.status-CONFIRMED,.status-DELIVERED,.status-SUCCESS { background:var(--mint-soft); color:var(--mint-deep); }
.status-PENDING { background:var(--sun-soft); color:var(--ink); }
.status-SHIPPED { background:var(--sky-soft); color:var(--sky-deep); }
.status-FAILED,.status-CANCELLED { background:var(--blush-soft); color:var(--blush-deep); }
.status-USER_DROPPED { background:var(--peach-soft); color:var(--peach-deep); }
.status-REFUNDED,.status-PARTIALLY_REFUNDED { background:var(--lav-soft); color:var(--lav-deep); }

/* ── Footer ──────────────────────────────────────────────────── */
.footer-wave svg { display:block; width:100%; height:56px; }
.footer-body { background:var(--lav-soft); padding:2rem 0 1.5rem; }
.footer-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; margin-bottom:2rem; }
.footer-logo { font-family:'Baloo 2',cursive; font-size:1.5rem; font-weight:800; margin-bottom:.5rem; }
.footer-tagline,.footer-text { font-size:.85rem; color:var(--ink-soft); margin-bottom:.25rem; }
.footer-text-sm { font-size:.75rem; color:var(--ink-faint); }
.footer-heading { font-family:'Baloo 2',cursive; font-weight:700; margin-bottom:.75rem; color:var(--ink); }
.footer-body nav a { display:block; font-size:.875rem; color:var(--ink-soft); margin-bottom:.4rem; }
.footer-body nav a:hover { color:var(--sky-deep); }
.footer-copy { text-align:center; font-size:.8rem; color:var(--ink-faint); border-top:1px solid rgba(61,58,80,.1); padding-top:1.25rem; margin-top:.5rem; }
@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}

/* ── Admin ──────────────────────────────────────────────────── */
.admin-layout { display:flex; min-height:100vh; }
.admin-sidebar { width:220px; background:var(--ink); color:#fff; flex-shrink:0; position:fixed; inset-y:0; left:0; display:flex; flex-direction:column; z-index:200; }
.admin-sidebar__logo { padding:1.25rem 1.25rem 1rem; border-bottom:1px solid rgba(255,255,255,.1); font-family:'Baloo 2',cursive; font-size:1.3rem; font-weight:800; }
.admin-sidebar__nav { flex:1; padding:.75rem .625rem; }
.admin-sidebar__nav a,.admin-sidebar__nav button { display:flex; align-items:center; gap:.75rem; width:100%; padding:.65rem 1rem; border-radius:.875rem; font-size:.875rem; font-weight:600; color:rgba(255,255,255,.65); background:none; border:none; cursor:pointer; transition:background .15s,color .15s; margin-bottom:.25rem; text-align:left; text-decoration:none; }
.admin-sidebar__nav a:hover,.admin-sidebar__nav button:hover { background:rgba(255,255,255,.1); color:#fff; }
.admin-sidebar__footer { padding:.75rem .625rem 1rem; border-top:1px solid rgba(255,255,255,.1); }
.admin-main { margin-left:220px; flex:1; padding:2rem; background:#f7f7fb; min-height:100vh; }
.admin-page-title { font-family:'Baloo 2',cursive; font-size:2rem; font-weight:800; color:var(--ink); margin-bottom:.25rem; }
.admin-page-sub { font-size:.875rem; color:var(--ink-faint); margin-bottom:2rem; }
.kpi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-bottom:2rem; }
.kpi-card { border-radius:1.5rem; padding:1.25rem; }
.kpi-card__emoji { font-size:1.75rem; margin-bottom:.5rem; }
.kpi-card__value { font-family:'Baloo 2',cursive; font-size:1.75rem; font-weight:800; color:var(--ink); }
.kpi-card__label { font-size:.75rem; font-weight:600; color:var(--ink-soft); margin-top:.15rem; }
@media(max-width:1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.admin-sidebar{display:none}.admin-main{margin-left:0}}

/* ── Tint gradients ─────────────────────────────────────────── */
.tint-sky   { background:linear-gradient(135deg,var(--sky-soft),var(--sky)); }
.tint-mint  { background:linear-gradient(135deg,var(--mint-soft),var(--mint)); }
.tint-blush { background:linear-gradient(135deg,var(--blush-soft),var(--blush)); }
.tint-sun   { background:linear-gradient(135deg,var(--sun-soft),var(--sun)); }
.tint-lav   { background:linear-gradient(135deg,var(--lav-soft),var(--lav)); }
.tint-peach { background:linear-gradient(135deg,var(--peach-soft),var(--peach)); }

/* ── Utilities ──────────────────────────────────────────────── */
.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}
.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-4{margin-bottom:2rem}
.gap-2{gap:1rem}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}
.w-full{width:100%}.hidden{display:none}
.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--ink-faint)}.font-bold{font-weight:700}
.rounded-full{border-radius:999px}
.bg-white{background:#fff}
.p-4{padding:1.5rem}.p-6{padding:2rem}
.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}
.chip{padding:.35rem 1rem;border-radius:999px;border:2px solid rgba(61,58,80,.1);background:#fff;font-family:'Baloo 2',cursive;font-size:.8rem;font-weight:700;color:var(--ink-soft);cursor:pointer;text-decoration:none;transition:border-color .2s,background .2s}
.chip:hover,.chip.active{border-color:var(--sky-deep);background:var(--sky-soft);color:var(--sky-deep)}

/* ── Hero Slider ─────────────────────────────────────────────── */
.hero-slider { position:relative; overflow:hidden; min-height:500px; }
.hero-slide { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; padding:5rem 0 4rem; text-align:center; opacity:0; transition:opacity .6s ease; pointer-events:none; }
.hero-slide.active { opacity:1; position:relative; pointer-events:auto; }
.hero-slide-bg { position:absolute; inset:0; background-size:cover; background-position:center; opacity:.15; }
.hero-content { position:relative; z-index:1; }
.hero-sub { color:var(--ink-soft); max-width:520px; margin:1rem auto 2rem; font-size:1.05rem; }
.hero-ctas { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; }
.hero-dots { position:absolute; bottom:1.25rem; left:50%; transform:translateX(-50%); display:flex; gap:.5rem; z-index:10; }
.hero-dot { width:8px; height:8px; border-radius:999px; background:rgba(61,58,80,.2); border:none; cursor:pointer; transition:background .3s,width .3s; }
.hero-dot.active { background:var(--sky-deep); width:24px; }
.announcement-bar { padding:.6rem 1.25rem; text-align:center; font-size:.875rem; font-weight:600; display:flex; align-items:center; justify-content:center; gap:1rem; }
.ann-close { background:none; border:none; cursor:pointer; font-size:1rem; opacity:.6; }
.ann-close:hover { opacity:1; }
.social-link { display:inline-block; font-size:.85rem; color:var(--ink-soft); margin-right:1rem; }
.social-link:hover { color:var(--sky-deep); }

/* ── WhatsApp FAB ─────────────────────────────────────────── */
.whatsapp-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:999;background:#25D366;color:#fff;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:999px;box-shadow:0 8px 24px rgba(37,211,102,.35);text-decoration:none;font-family:var(--font-heading,sans-serif);font-weight:700;font-size:.875rem;transition:transform .2s,box-shadow .2s;}
.whatsapp-fab:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(37,211,102,.45);}
@media(max-width:480px){.whatsapp-fab span{display:none}.whatsapp-fab{padding:.875rem}}

/* ── Social icons ─────────────────────────────────────────── */
.social-icons{display:flex;gap:.5rem;margin:.75rem 0;}
.social-icon{width:36px;height:36px;border-radius:999px;background:rgba(61,58,80,.08);display:flex;align-items:center;justify-content:center;font-size:1.1rem;text-decoration:none;transition:background .2s,transform .2s;}
.social-icon:hover{background:rgba(61,58,80,.15);transform:translateY(-2px);}
.social-icon-btn{font-size:1.1rem;padding:.4rem;border-radius:999px;transition:background .2s;}
.social-icon-btn:hover{background:rgba(61,58,80,.08);}

/* ── Payment badges ───────────────────────────────────────── */
.payment-icons{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.75rem;}
.pay-badge{background:rgba(61,58,80,.08);border-radius:.5rem;padding:.2rem .6rem;font-size:.7rem;font-weight:700;color:var(--ink-soft);}

/* ── Instagram grid ───────────────────────────────────────── */
.instagram-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;}
.instagram-item{position:relative;aspect-ratio:1;border-radius:1rem;overflow:hidden;display:block;}
.instagram-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.instagram-item:hover img{transform:scale(1.08);}
.instagram-overlay{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;font-size:1.5rem;opacity:0;transition:all .3s;}
.instagram-item:hover .instagram-overlay{background:rgba(0,0,0,.3);opacity:1;}
@media(max-width:768px){.instagram-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.instagram-grid{grid-template-columns:repeat(3,1fr)}}

/* ── Footer bottom ────────────────────────────────────────── */
.footer-bottom{text-align:center;border-top:1px solid rgba(61,58,80,.08);padding:1.25rem 0 .5rem;margin-top:1.5rem;}
.footer-copy{font-size:.8rem;color:var(--ink-faint);}
.footer-brand{max-width:240px;}

/* ── Auth pages ───────────────────────────────────────────── */
.auth-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:2rem;}
.auth-card{background:#fff;border-radius:2rem;padding:2.5rem;width:100%;max-width:420px;box-shadow:var(--shadow-lift);}
.auth-card h1{font-size:1.75rem;margin-bottom:.25rem;}
.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;color:var(--ink-faint);font-size:.85rem;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:rgba(61,58,80,.1);}

/* ── Account page ─────────────────────────────────────────── */
.account-grid{display:grid;grid-template-columns:220px 1fr;gap:2rem;align-items:start;}
.account-nav a{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:1rem;font-family:var(--font-heading,sans-serif);font-weight:600;color:var(--ink-soft);text-decoration:none;transition:background .15s;}
.account-nav a:hover,.account-nav a.active{background:var(--sky-soft);color:var(--sky-deep);}
@media(max-width:768px){.account-grid{grid-template-columns:1fr}}

/* ── FAQ ──────────────────────────────────────────────────── */
.faq-item{border:1px solid rgba(61,58,80,.08);border-radius:1.25rem;margin-bottom:.75rem;overflow:hidden;}
.faq-question{width:100%;text-align:left;background:none;border:none;padding:1.25rem 1.5rem;font-family:var(--font-heading,sans-serif);font-size:1rem;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--ink);}
.faq-question:hover{background:rgba(61,58,80,.03);}
.faq-answer{padding:0 1.5rem;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s;}
.faq-answer.open{max-height:400px;padding:.75rem 1.5rem 1.25rem;}
.faq-icon{transition:transform .3s;font-size:1.2rem;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-category{font-family:var(--font-heading,sans-serif);font-size:1.25rem;font-weight:700;margin:2rem 0 .75rem;color:var(--ink);}

/* ── Checkout address card ────────────────────────────────── */
.address-card{border:2px solid rgba(61,58,80,.1);border-radius:1.25rem;padding:1rem 1.25rem;cursor:pointer;transition:border-color .2s;}
.address-card:hover,.address-card.selected{border-color:var(--sky-deep);background:var(--sky-soft);}
.state-select{width:100%;border:2px solid rgba(61,58,80,.1);border-radius:1rem;padding:.75rem 1rem;font-size:.95rem;}

/* ── Shipping zone badge ──────────────────────────────────── */
.shipping-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--mint-soft);color:var(--mint-deep);border-radius:999px;padding:.3rem .9rem;font-size:.8rem;font-weight:700;margin-top:.5rem;}
