/* ==========================================================================
   Liro theme — dynamic app UI styling (dashboard, catalog, checkout, forms)
   Marketing page sections are styled via theme.json + block editor; this
   file covers everything the block editor can't reach: the reseller
   dashboard, product cards, cart/checkout modals, and application forms.
   ========================================================================== */

:root{
  --brand:#7A2118;
  --brand-dark:#4E140D;
  --brand-light:#F4E4DE;
  --accent:#C79A56;
  --accent-dark:#A87B3D;
  --sale:#C0392B;
  --ok:#1E7A46;
  --bg:#F7F4F1;
  --surface:#FFFFFF;
  --ink:#241512;
  --muted:#8A7A74;
  --line:#E9E0DA;
  --radius:14px;
  --radius-sm:9px;
  --shadow:0 2px 10px rgba(78,20,13,0.07);
  --shadow-lg:0 16px 36px rgba(78,20,13,0.15);
}
.mono{font-variant-numeric:tabular-nums;}

/* ===== Buttons (used outside the block editor's own button styles) ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 20px;border-radius:6px;font-size:13px;font-weight:600;letter-spacing:.02em;border:1.5px solid var(--ink);transition:transform .15s ease, background .2s, box-shadow .2s;background:transparent;color:var(--ink);white-space:nowrap;cursor:pointer;text-decoration:none;}
.btn:hover{transform:translateY(-1px);}
.btn-solid{background:var(--brand);color:#fff;border-color:var(--brand);}
.btn-solid:hover{background:var(--brand-dark);box-shadow:var(--shadow-lg);color:#fff;}
.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent);}
.btn-accent:hover{background:var(--accent-dark);color:#fff;}
.btn-outline{border-color:var(--line);color:var(--ink);}
.btn-ghost{border-color:transparent;}
.btn-sm{padding:8px 14px;font-size:12px;}
.btn-block{width:100%;}
.btn[disabled]{opacity:.4;cursor:not-allowed;transform:none;}

/* ===== Search bar with live suggestions ===== */
.search-wrap{position:relative;}
.search-bar{display:flex;align-items:center;gap:10px;background:var(--surface);border:1.5px solid var(--line);border-radius:100px;padding:13px 20px;box-shadow:var(--shadow);transition:border-color .15s, box-shadow .15s;}
.search-bar:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-light);}
.search-ico{font-size:15px;opacity:.55;flex-shrink:0;}
.search-bar input{flex:1;min-width:0;border:none;outline:none;background:none;font-size:13.5px;font-family:'Jost',sans-serif;color:var(--ink);}
.search-clear{background:var(--bg);border:none;width:22px;height:22px;border-radius:50%;font-size:10.5px;color:var(--muted);flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.search-suggest{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:70;overflow:hidden;display:none;max-height:340px;overflow-y:auto;}
.search-suggest.show{display:block;}
.search-suggest-item{display:flex;align-items:center;gap:11px;padding:10px 14px;cursor:pointer;transition:background .15s;border-bottom:1px solid var(--line);}
.search-suggest-item:last-child{border-bottom:none;}
.search-suggest-item:hover{background:var(--bg);}
.search-suggest-item .ssi-ico{width:32px;height:32px;border-radius:9px;background:var(--brand-light);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;}
.search-suggest-item .ssi-name{font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;}
.search-suggest-item .ssi-meta{font-size:10.5px;color:var(--muted);}
.search-suggest-empty{padding:18px 14px;text-align:center;font-size:12px;color:var(--muted);}

/* ===== Category grid ===== */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
@media(min-width:600px){.cat-grid{grid-template-columns:repeat(6,1fr);}}
.cat-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 10px;transition:box-shadow .2s, transform .2s, border-color .2s;text-align:center;text-decoration:none;color:inherit;display:block;}
.cat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--accent);}
.cat-card .icon{width:40px;height:40px;border-radius:12px;background:var(--brand-light);display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-size:18px;}
.cat-card h4{margin:0 0 3px;font-size:12.5px;color:var(--ink);font-weight:600;}
.cat-card span{font-size:10px;color:var(--muted);}
.liro-empty-note{color:var(--muted);font-size:13px;padding:20px;text-align:center;border:1px dashed var(--line);border-radius:10px;}

/* ===== Product grid & card ===== */
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media(min-width:420px){.prod-grid{gap:14px;}}
@media(min-width:640px){.prod-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1000px){.prod-grid{grid-template-columns:repeat(4,1fr);}}
.prod-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:box-shadow .2s, transform .2s, border-color .2s;position:relative;display:flex;flex-direction:column;}
.prod-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:#e2d3cc;}
.prod-thumb{aspect-ratio:1/1;background:linear-gradient(150deg,#FBEDE7,#F3E0D8);display:flex;align-items:center;justify-content:center;font-size:clamp(28px,7vw,38px);position:relative;text-decoration:none;color:inherit;}
.prod-badge{position:absolute;top:8px;left:8px;font-size:9.5px;font-weight:700;padding:4px 8px;border-radius:5px;letter-spacing:.03em;z-index:2;color:#fff;}
.badge-new{background:var(--ok);}
.badge-hot{background:var(--sale);}
.badge-best{background:var(--accent);}
.lock-note{position:absolute;bottom:0;left:0;right:0;background:rgba(78,20,13,.92);color:#f4e4de;font-size:9.5px;padding:7px 8px;text-align:center;letter-spacing:.02em;font-weight:500;}
.prod-body{padding:11px 12px 13px;display:flex;flex-direction:column;flex:1;}
.prod-body .cat-tag{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;}
.prod-body h4{margin:3px 0 5px;font-size:12.5px;color:var(--ink);font-weight:600;line-height:1.3;}
.prod-body h4 a{color:inherit;text-decoration:none;}
.price-row{display:flex;align-items:baseline;gap:7px;margin-top:auto;flex-wrap:wrap;}
.price-locked{font-size:11px;color:#c9b8b1;font-weight:500;}
.price-visible{font-size:16px;font-weight:700;color:var(--sale);}
.price-old{font-size:11px;color:var(--muted);font-weight:400;}
.add-cart-btn{width:100%;margin-top:9px;padding:9px;font-size:11.5px;border-radius:7px;}

/* ===== Product detail page/modal ===== */
.pd-grid{display:grid;grid-template-columns:1fr;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;}
@media(min-width:560px){.pd-grid{grid-template-columns:1fr 1.15fr;gap:26px;padding:28px;}}
@media(min-width:900px){.pd-grid{grid-template-columns:400px 1fr;gap:40px;}}
.pd-image{aspect-ratio:1/1;background:linear-gradient(150deg,#FBEDE7,#F3E0D8);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:70px;}
.pd-cat{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;}
.pd-title{font-size:18px;font-weight:700;color:var(--ink);margin:5px 0 8px;}
@media(min-width:900px){.pd-title{font-size:22px;}}
.pd-price-row{display:flex;align-items:baseline;gap:9px;margin-bottom:4px;}
.pd-price{font-size:23px;font-weight:700;color:var(--sale);}
.pd-cost-note{font-size:11px;color:var(--muted);margin-bottom:14px;}
.pd-option{margin-bottom:16px;}
.pd-option-label{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--ink);margin-bottom:9px;}
.pd-option-label .sel{color:var(--brand);font-weight:500;}
.color-swatches{display:flex;gap:9px;flex-wrap:wrap;}
.color-swatch{width:30px;height:30px;border-radius:50%;cursor:pointer;border:2px solid transparent;box-shadow:0 0 0 1px var(--line);transition:transform .12s;}
.color-swatch:hover{transform:scale(1.08);}
.color-swatch.selected{border-color:var(--brand);box-shadow:0 0 0 2px #fff, 0 0 0 3px var(--brand);}
.size-pills{display:flex;gap:8px;flex-wrap:wrap;}
.size-pill{padding:8px 15px;border:1.5px solid var(--line);border-radius:7px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s;background:var(--surface);}
.size-pill:hover{border-color:var(--accent);}
.size-pill.selected{background:var(--brand);border-color:var(--brand);color:#fff;}
.pd-qty-row{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.qty-box-lg{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:8px;}
.qty-box-lg button{background:none;border:none;width:34px;height:38px;font-size:16px;color:var(--brand-dark);font-weight:700;cursor:pointer;}
.qty-box-lg input{width:38px;border:none;background:none;text-align:center;font-size:13.5px;font-weight:600;}
.pd-stock{font-size:11.5px;color:var(--ok);font-weight:600;}

/* ===== Cart drawer ===== */
.overlay{position:fixed;inset:0;background:rgba(36,21,18,.5);z-index:90;display:none;}
.overlay.active{display:block;}
.drawer{position:fixed;top:0;right:-100%;width:400px;max-width:100vw;height:100vh;height:100dvh;background:var(--surface);z-index:95;transition:right .3s ease;display:flex;flex-direction:column;}
.drawer.active{right:0;}
.drawer-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;}
.drawer-head h3{margin:0;font-size:14.5px;color:var(--brand-dark);font-weight:700;}
.close-x{background:var(--bg);border:none;width:28px;height:28px;border-radius:50%;font-size:15px;color:var(--ink);line-height:1;cursor:pointer;}
.drawer-body{flex:1;overflow-y:auto;padding:12px 18px;}
.cart-item{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid var(--line);}
.cart-item .thumb{width:44px;height:44px;background:var(--brand-light);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.cart-item .info h5{margin:0 0 3px;font-size:12.5px;font-weight:600;}
.cart-item .info .variant{font-size:10.5px;color:var(--muted);margin-bottom:2px;}
.cart-item .info .meta{font-size:11px;color:var(--muted);font-weight:500;}
.drawer-foot{padding:15px 18px;border-top:1px solid var(--line);padding-bottom:calc(15px + env(safe-area-inset-bottom));}
.drawer-foot .totline{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:11px;font-weight:600;}
.empty-cart{text-align:center;padding:46px 16px;color:var(--muted);font-size:12.5px;}

/* ===== Modals ===== */
.modal-overlay{position:fixed;inset:0;background:rgba(36,21,18,.55);z-index:120;display:none;align-items:flex-start;justify-content:center;overflow-y:auto;padding:14px;}
@media(min-width:768px){.modal-overlay{padding:36px 20px;align-items:center;}}
.modal-overlay.active{display:flex;}
.modal{background:var(--surface);border-radius:16px;max-width:480px;width:100%;overflow:hidden;}
.modal.wide{max-width:640px;}
@media(min-width:900px){.modal.wide{max-width:880px;}}
.modal-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;}
.modal-head h3{margin:0;font-size:14.5px;color:var(--brand-dark);font-weight:700;}
.modal-body{padding:18px;}
@media(min-width:768px){.modal-body{padding:22px;}}

.receipt{font-size:12.5px;background:var(--bg);border-radius:14px;border:1px solid var(--line);}
.receipt-in{padding:20px;}
.receipt-title{text-align:center;margin-bottom:16px;}
.receipt-title .name{font-weight:700;font-size:15px;color:var(--brand-dark);}
.receipt-title .sub{font-size:10px;color:var(--muted);letter-spacing:.05em;margin-top:2px;font-weight:500;}
.receipt-row{display:flex;justify-content:space-between;padding:6px 0;color:#43514c;font-weight:500;}
.receipt-row.deduct{color:var(--sale);}
.receipt-divider{border:none;border-top:1px dashed var(--line);margin:10px 0;}
.receipt-total{display:flex;justify-content:space-between;font-weight:700;font-size:14.5px;color:var(--brand-dark);padding:8px 0;}
.receipt-profit{display:flex;justify-content:space-between;background:var(--brand-light);color:var(--brand-dark);font-weight:700;padding:12px 14px;border-radius:10px;margin-top:10px;font-size:14px;}

.status-icon{width:54px;height:54px;border-radius:50%;background:var(--brand-light);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:22px;}

.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(180%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:9px;font-size:12.5px;z-index:200;transition:transform .3s ease;display:flex;align-items:center;gap:9px;max-width:90vw;font-weight:500;}
.toast.show{transform:translateX(-50%) translateY(0);}
.toast .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0;}

/* ===== Forms (signup, order details) ===== */
.field-group{margin-bottom:15px;}
label{display:block;font-size:11.5px;font-weight:600;color:var(--ink);margin-bottom:6px;}
input[type=text],input[type=email],input[type=tel],input[type=password],select,textarea{width:100%;padding:10.5px 12px;border:1.5px solid var(--line);border-radius:8px;font-size:13.5px;background:var(--surface);color:var(--ink);font-family:'Jost',sans-serif;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);}
textarea{resize:vertical;min-height:64px;}
.helper{font-size:10.5px;color:var(--muted);margin-top:5px;}
.mt24{margin-top:24px;}
.mt8{margin-top:8px;}

.auth-shell{min-height:100vh;padding:28px 14px 56px;background:linear-gradient(180deg,var(--brand-light) 0%, var(--bg) 200px);}
@media(min-width:768px){.auth-shell{padding:52px 24px 76px;}}
.form-card{max-width:600px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px 16px;}
@media(min-width:768px){.form-card{padding:38px;}}
.form-card.wide{max-width:800px;}
.form-card .back{font-size:12.5px;color:var(--brand-dark);opacity:.7;display:inline-flex;gap:6px;align-items:center;margin-bottom:16px;font-weight:600;text-decoration:none;}
.form-card h2{margin:0 0 6px;color:var(--brand-dark);font-size:21px;}
.form-card p.sub{color:var(--muted);font-size:13px;margin:0 0 22px;}
.badge-b2b{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:100px;font-size:11.5px;font-weight:700;}

/* ===== Dashboard shell ===== */
.dash-shell{display:flex;flex-direction:column;min-height:100vh;}
@media(min-width:900px){.dash-shell{display:grid;grid-template-columns:220px 1fr;}}
.dash-side{background:var(--ink);color:#d8c6c0;padding:14px 14px;}
@media(min-width:900px){.dash-side{padding:22px 16px;position:sticky;top:0;height:100vh;}}
.dash-side .brand{display:flex;align-items:center;gap:9px;color:#fff;font-size:16px;font-weight:700;text-decoration:none;}
.dash-side .mark{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;}
.dash-nav{list-style:none;padding:0;margin:24px 0 0;display:none;flex-direction:column;gap:2px;}
@media(min-width:900px){.dash-nav{display:flex;}}
.dash-nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:7px;font-size:13px;color:#c2ada5;transition:background .15s,color .15s;font-weight:500;text-decoration:none;}
.dash-nav a:hover{background:rgba(255,255,255,.06);color:#fff;}
.dash-nav a.active{background:var(--accent);color:#fff;font-weight:700;}
@media(max-width:899px){
  .dash-side.mobile-nav-open .dash-nav{display:flex;position:fixed;top:0;left:0;bottom:0;width:240px;background:var(--ink);padding:70px 16px 16px;z-index:80;box-shadow:var(--shadow-lg);}
}
.mobile-tabbar{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--line);display:flex;z-index:60;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 16px rgba(0,0,0,.06);}
@media(min-width:900px){.mobile-tabbar{display:none;}}
.mobile-tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px 7px;font-size:9.5px;font-weight:600;color:var(--muted);text-decoration:none;}
.mobile-tabbar a.active{color:var(--brand);}
.mobile-tabbar .ico{font-size:16px;}
.dash-main{padding:18px 14px 86px;background:var(--bg);flex:1;}
@media(min-width:900px){.dash-main{padding:30px 34px 56px;}}
.dash-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px;}
.dash-topbar h1{margin:0;font-size:20px;color:var(--brand-dark);}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;padding:5px 11px;border-radius:100px;font-weight:700;}
.pill-approved{background:#dff3e6;color:#1E7A46;}
.pill-pending{background:#fdf0dc;color:#B5730B;}
.pill-cancelled{background:#fde2de;color:#C4341F;}
.pill-delivered{background:#dff3e6;color:#1E7A46;}
.pill-shipped{background:#dde8f7;color:#2255A4;}
.profit-pos{color:#1E7A46;font-weight:700;}

.dash-header{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;margin:-18px -14px 18px;padding:10px 14px;position:sticky;top:0;z-index:40;background:rgba(247,244,241,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
@media(min-width:900px){.dash-header{margin:-30px -34px 22px;padding:16px 34px;}}
.dash-header .hamburger{margin-right:auto;background:none;border:none;display:flex;flex-direction:column;gap:4px;padding:6px;}
@media(min-width:900px){.dash-header .hamburger{display:none;}}
.hamburger span{width:19px;height:2px;background:var(--ink);border-radius:2px;}
.place-order-btn{display:inline-flex;align-items:center;gap:7px;background:var(--accent);color:#fff;border:none;padding:11px 18px;border-radius:8px;font-size:13px;font-weight:700;letter-spacing:.02em;box-shadow:0 4px 14px rgba(199,154,86,.4);cursor:pointer;white-space:nowrap;}
.place-order-btn:hover{background:var(--accent-dark);}
.dash-header-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.user-chip{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line);border-radius:100px;padding:5px 13px 5px 5px;}
.user-av{width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;flex-shrink:0;}
.user-txt{display:none;flex-direction:column;line-height:1.25;}
.user-txt strong{font-size:12px;color:var(--ink);}
.user-txt span{font-size:10px;color:var(--muted);}
@media(min-width:640px){.user-txt{display:flex;}}
.id-chip{background:var(--brand-light);color:var(--brand-dark);font-size:11.5px;font-weight:700;padding:8px 14px;border-radius:100px;white-space:nowrap;}
.dash-action-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 24px;}

.kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:22px;}
@media(min-width:420px){.kpi-grid{gap:10px;}}
@media(min-width:700px){.kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;}}
.kpi-grid-4{grid-template-columns:1fr 1fr;}
@media(min-width:700px){.kpi-grid-4{grid-template-columns:repeat(4,1fr);}}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px;}
@media(min-width:420px){.kpi{padding:16px;}}
.kpi .lbl{font-size:10.5px;color:var(--muted);font-weight:600;margin-bottom:8px;}
.kpi .val{font-size:17px;font-weight:700;color:var(--brand-dark);}
@media(min-width:420px){.kpi .val{font-size:20px;}}
.kpi-icon{width:32px;height:32px;border-radius:9px;background:var(--brand-light);color:var(--brand-dark);display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:8px;}

.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin-bottom:18px;overflow:hidden;}
.panel-head{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;border-bottom:1px solid var(--line);}
.panel-head h3{margin:0;font-size:14px;color:var(--brand-dark);}
.see-all{font-size:12.5px;font-weight:700;color:var(--brand);}
.table-scroll{overflow-x:auto;}
table{width:100%;border-collapse:collapse;font-size:12.5px;}
th{text-align:left;padding:11px 17px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);font-weight:700;}
td{padding:12px 17px;border-bottom:1px solid var(--line);color:var(--ink);}
tr:last-child td{border-bottom:none;}
td.num,th.num{text-align:right;}

.home-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px;}
@media(min-width:1050px){.home-grid{grid-template-columns:1.5fr 1fr;}}
.home-col-main,.home-col-side{display:flex;flex-direction:column;gap:16px;min-width:0;}
.summary-list{padding:6px 17px 14px;}
.summary-row{display:flex;justify-content:space-between;padding:9px 0;font-size:12.5px;border-bottom:1px solid var(--line);color:#5c4740;}
.summary-row:last-child{border-bottom:none;}
.summary-row b{color:var(--brand-dark);}
.quicklink-list{padding:6px 8px 10px;}
.quicklink-row{display:flex;align-items:center;gap:10px;padding:11px 9px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--ink);transition:background .15s;text-decoration:none;}
.quicklink-row:hover{background:var(--bg);}
.quicklink-row .chev{margin-left:auto;color:var(--muted);}

/* ===== Print / PDF export (invoice only) ===== */
@media print{
  body *{visibility:hidden;}
  .liro-invoice, .liro-invoice *{visibility:visible;}
  .liro-invoice{position:absolute;top:0;left:0;width:100%;}
}

/* ==========================================================================
   Marketing site chrome — header, footer, homepage sections. Ported
   directly from the approved HTML prototype so the live site matches it
   exactly, rather than relying on generic block-editor styling.
   ========================================================================== */

.wrap{max-width:1200px;margin:0 auto;padding:0 18px;}
@media(min-width:768px){.wrap{padding:0 32px;}}
section{padding:38px 0;}
@media(min-width:768px){section{padding:58px 0;}}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px;flex-wrap:wrap;gap:10px;}
.section-head h2{font-size:clamp(22px,4vw,30px);color:var(--brand-dark);margin:0;font-weight:700;}
.section-head p{color:var(--muted);font-size:13.5px;max-width:380px;margin:0;}
.see-all{font-size:12.5px;font-weight:700;color:var(--brand);flex-shrink:0;}

/* ===== Header ===== */
header.site{position:sticky;top:0;z-index:50;background:rgba(250,250,248,0.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.topbar{background:var(--brand-dark);color:#cfe6df;font-size:12px;text-align:center;padding:7px 12px;font-weight:500;}
.topbar b{color:#fff;}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;max-width:1200px;margin:0 auto;gap:12px;}
@media(min-width:768px){.nav-row{padding:16px 32px;}}
.brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:19px;color:var(--brand-dark);text-decoration:none;}
.brand .mark{width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;font-style:italic;flex-shrink:0;}
.nav-links{display:none;gap:26px;align-items:center;}
.nav-links a{font-size:14px;font-weight:600;color:var(--ink);opacity:.68;transition:opacity .2s;text-decoration:none;}
.nav-links a:hover{opacity:1;}
@media(min-width:900px){.nav-links{display:flex;}}
.nav-cta{display:flex;gap:8px;align-items:center;flex-shrink:0;}
.nav-cta .btn-ghost{display:none;}
@media(min-width:480px){.nav-cta .btn-ghost{display:inline-flex;}}
.hamburger{display:flex;flex-direction:column;gap:4px;background:none;border:none;padding:6px;flex-shrink:0;cursor:pointer;}
.hamburger span{width:20px;height:2px;background:var(--ink);border-radius:2px;}
@media(min-width:900px){.hamburger{display:none;}}
.mobile-menu{display:none;flex-direction:column;gap:2px;padding:8px 20px 16px;border-top:1px solid var(--line);background:var(--surface);}
.mobile-menu.open{display:flex;}
.mobile-menu a{padding:11px 4px;font-size:14.5px;font-weight:600;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);}

/* ===== Marquee trust strip ===== */
.marquee{background:var(--brand-dark);color:#f1ddd5;overflow:hidden;white-space:nowrap;padding:8px 0;}
.marquee-track{display:inline-flex;gap:40px;animation:scroll-left 26s linear infinite;font-size:12px;font-weight:500;letter-spacing:.03em;}
.marquee-track span{display:inline-flex;align-items:center;gap:8px;}
.marquee-track span::before{content:"✦";color:var(--accent);}
@keyframes scroll-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ===== Minimal hero ===== */
.hero-mini{padding:30px 0 26px;}
@media(min-width:768px){.hero-mini{padding:52px 0 40px;}}
.hero-mini-inner{text-align:center;max-width:640px;margin:0 auto;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;padding:6px 13px;border-radius:100px;margin-bottom:16px;letter-spacing:.02em;background:var(--brand-light);color:var(--brand-dark);}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);}
.hero-mini h1{font-size:clamp(26px,6vw,42px);line-height:1.12;font-weight:700;margin:0 0 22px;color:var(--brand-dark);}
.hero-mini h1 .hl{color:var(--sale);}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}

/* ===== Steps ===== */
.steps{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
@media(min-width:700px){.steps{grid-template-columns:repeat(4,1fr);}}
.step-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;}
.step-num{font-size:24px;font-weight:700;color:var(--brand-light);margin-bottom:6px;}
.step-card h4{margin:0 0 4px;font-size:13.5px;color:var(--brand-dark);}
.step-card span{font-size:11.5px;color:var(--muted);}

/* ===== Testimonials ===== */
.testi-row{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none;}
.testi-row::-webkit-scrollbar{display:none;}
.testi-card{flex:0 0 260px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;}
.testi-card .stars{color:var(--accent-dark);font-size:12px;margin-bottom:8px;}
.testi-card p{font-size:12.5px;color:#4a3a35;line-height:1.6;margin:0 0 12px;}
.testi-who{display:flex;align-items:center;gap:9px;}
.testi-who .av{width:30px;height:30px;border-radius:50%;background:var(--brand-light);color:var(--brand-dark);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;}
.testi-who strong{display:block;font-size:12px;}
.testi-who span{font-size:10.5px;color:var(--muted);}

/* ===== Newsletter ===== */
.newsletter{background:var(--brand-light);border-radius:16px;padding:28px 22px;text-align:center;}
@media(min-width:768px){.newsletter{padding:38px;}}
.newsletter h3{margin:0 0 8px;color:var(--brand-dark);font-size:19px;}
.newsletter p{font-size:12.5px;color:#7a5a50;margin:0 0 18px;}
.newsletter-form{display:flex;gap:8px;max-width:380px;margin:0 auto;flex-wrap:wrap;justify-content:center;}
.newsletter-form input{flex:1;min-width:180px;padding:11px 14px;border-radius:7px;border:1.5px solid var(--line);font-size:13px;font-family:'Jost',sans-serif;}

/* ===== Footer ===== */
footer.site{background:var(--ink);color:#c7b3ac;padding:40px 0 22px;margin-top:16px;}
.foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-bottom:30px;}
@media(min-width:700px){.foot-grid{grid-template-columns:2fr 1fr 1fr 1fr;}}
.foot-grid h5{color:#fff;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;font-weight:600;}
.foot-grid ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:12.5px;}
.foot-grid a{color:#c7b3ac;text-decoration:none;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:16px;font-size:11.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:#8f7a72;}

/* ===== Signup / auth forms — field grid, fieldsets, file upload ===== */
.field-row{display:grid;grid-template-columns:1fr;gap:13px;}
@media(min-width:600px){.field-row{grid-template-columns:1fr 1fr;}}
.fieldset-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--brand);margin:24px 0 13px;padding-bottom:7px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;}
.fieldset-title:first-of-type{margin-top:0;}
.file-drop{border:1.5px dashed var(--line);border-radius:8px;padding:16px;text-align:center;font-size:11.5px;color:var(--muted);cursor:pointer;transition:border-color .15s,background .15s;display:block;}
.file-drop:hover{border-color:var(--brand);background:var(--brand-light);}
.file-drop strong{color:var(--brand-dark);display:block;font-size:12.5px;margin-bottom:3px;font-weight:700;}
.check-row{display:flex;gap:9px;align-items:flex-start;font-size:11.5px;color:var(--muted);margin:18px 0;}
.check-row input{margin-top:2px;width:auto;}
label .req{color:var(--sale);}
.badge-b2b{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:100px;font-size:11.5px;font-weight:700;}
