/* ═══════════════════════════════════════════════════
   Prime Stores — Professional Nursewear & Medical
   style.css — Production quality
═══════════════════════════════════════════════════ */

/* ── Reset & base ─────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --red:#E8192C;--red-dark:#C0131F;--red-light:#FFF0F1;
  --dark:#0F172A;--text:#1E293B;--text-2:#475569;--muted:#94A3B8;
  --border:#E2E8F0;--bg:#F8FAFC;--white:#FFFFFF;
  --shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
  --shadow-md:0 4px 16px rgba(0,0,0,.10);
  --shadow-lg:0 10px 40px rgba(0,0,0,.14);
  --r:10px;--r-sm:6px;--r-lg:16px;--r-xl:24px;
}
html{font-size:15px;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
input,select,textarea,button{font-family:inherit}

/* ── Layout ───────────────────────────────────────── */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
@media(max-width:640px){.container{padding:0 16px}}

/* ── Buttons ──────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 26px;border-radius:var(--r-sm);
  font-size:14px;font-weight:600;cursor:pointer;
  border:2px solid transparent;transition:all .18s;
  white-space:nowrap;line-height:1.2;
}
.btn-red{background:var(--red);color:#fff;border-color:var(--red)}
.btn-red:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(232,25,44,.3)}
.btn-outline-white{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn-outline-white:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-outline{background:transparent;color:var(--text);border-color:var(--border)}
.btn-outline:hover{border-color:var(--red);color:var(--red);background:var(--red-light)}
.btn-outline-red{background:transparent;color:var(--red);border-color:var(--red)}
.btn-outline-red:hover{background:var(--red);color:#fff}
.btn-lg{padding:15px 32px;font-size:15px}
.btn-sm{padding:8px 16px;font-size:13px}
.btn-block{width:100%;justify-content:center}

/* ═══════════════════════════════════════════════════
   HEADER
═══════════════════════════════════════════════════ */
.site-header{
  background:var(--white);border-bottom:1px solid var(--border);
  position:sticky;top:0;z-index:300;
  box-shadow:0 1px 3px rgba(0,0,0,.08);height:70px;
}
.hdr{display:flex;align-items:center;gap:20px;height:70px}
.logo{
  font-size:26px;font-weight:800;color:var(--red);
  letter-spacing:-.8px;flex-shrink:0;
  display:flex;align-items:center;gap:0;
}
.logo span{color:var(--dark)}

/* Desktop nav links */
.hdr-nav{display:flex;align-items:center;gap:0;margin-left:32px}
.hdr-nav a{
  padding:8px 16px;font-size:14px;font-weight:500;
  color:var(--text-2);border-radius:var(--r-sm);
  transition:color .15s,background .15s;
}
.hdr-nav a:hover,.hdr-nav a.active{color:var(--red);background:var(--red-light)}

.hdr-right{display:flex;align-items:center;gap:16px;margin-left:auto;flex-shrink:0}
.hdr-phone{font-size:13px;font-weight:600;color:var(--text-2)}
.hdr-phone:hover{color:var(--red)}
.cart-link{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:var(--r-sm);
  background:var(--bg);border:1px solid var(--border);
  color:var(--text);transition:all .15s;
}
.cart-link:hover{background:var(--red-light);border-color:var(--red);color:var(--red)}
.cart-count{
  position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;
  background:var(--red);color:#fff;border-radius:99px;
  font-size:10px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  padding:0 4px;border:2px solid var(--white);
}
@media(max-width:900px){.hdr-nav{display:none}}
@media(max-width:600px){.hdr-phone{display:none}.logo{font-size:22px}}

/* ═══════════════════════════════════════════════════
   SUBCATEGORY NAV
═══════════════════════════════════════════════════ */
.subcat-nav{
  background:var(--white);border-bottom:1px solid var(--border);
  overflow-x:auto;scrollbar-width:none;
}
.subcat-nav::-webkit-scrollbar{display:none}
.subcat-inner{display:flex;min-width:max-content;padding:0 8px}
.subcat-btn{
  padding:13px 18px;font-size:13px;font-weight:500;
  color:var(--muted);border:none;background:none;cursor:pointer;
  border-bottom:2px solid transparent;white-space:nowrap;
  transition:all .15s;display:block;
}
.subcat-btn:hover{color:var(--red)}
.subcat-btn.active{color:var(--red);border-bottom-color:var(--red);font-weight:600}

/* ═══════════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════════ */
.hero{
  position:relative;min-height:580px;
  background-size:cover;background-position:center;
  display:flex;align-items:center;color:#fff;
  overflow:hidden;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(15,23,42,.78) 0%,rgba(15,23,42,.42) 100%);
  z-index:1;
}
.hero-inner{
  position:relative;z-index:2;
  display:flex;flex-direction:column;justify-content:center;
  padding:80px 0;width:100%;max-width:680px;
}
.hero h1{
  font-size:clamp(30px,5vw,54px);font-weight:800;
  line-height:1.1;letter-spacing:-.5px;margin-bottom:18px;
  text-shadow:0 2px 8px rgba(0,0,0,.3);
}
.hero p{
  font-size:17px;color:rgba(255,255,255,.88);
  line-height:1.65;margin-bottom:32px;max-width:520px;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}
.hero-trust{
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  font-size:13px;color:rgba(255,255,255,.8);
}
.hero-trust-item{display:flex;align-items:center;gap:6px;font-weight:500}
.hero-trust-item svg{width:16px;height:16px;color:rgba(255,255,255,.9)}
@media(max-width:600px){
  .hero{min-height:480px}
  .hero h1{font-size:28px}
  .hero p{font-size:15px}
  .hero-actions .btn{padding:12px 20px;font-size:13px}
}

/* ═══════════════════════════════════════════════════
   TRUST BAR
═══════════════════════════════════════════════════ */
.trust-bar{
  display:grid;grid-template-columns:repeat(4,1fr);
  background:var(--white);border-top:3px solid var(--red);
  box-shadow:var(--shadow-md);position:relative;z-index:2;
}
.trust-item{
  display:flex;flex-direction:column;align-items:center;
  text-align:center;padding:24px 16px;
  border-right:1px solid var(--border);
}
.trust-item:last-child{border-right:none}
.trust-icon{font-size:28px;margin-bottom:10px;line-height:1}
.trust-title{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:4px;line-height:1.2}
.trust-desc{font-size:12px;color:var(--text-2);line-height:1.4}
@media(max-width:768px){
  .trust-bar{grid-template-columns:1fr 1fr}
  .trust-item:nth-child(2){border-right:none}
  .trust-item:nth-child(1),.trust-item:nth-child(2){border-bottom:1px solid var(--border)}
}
@media(max-width:400px){.trust-bar{grid-template-columns:1fr}.trust-item{border-right:none;border-bottom:1px solid var(--border)}}

/* ═══════════════════════════════════════════════════
   SECTIONS
═══════════════════════════════════════════════════ */
section{padding:64px 0}
.section-eyebrow{
  font-size:12px;font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;color:var(--red);margin-bottom:10px;
}
.section-title{font-size:clamp(22px,3vw,32px);font-weight:700;color:var(--dark);line-height:1.2;margin-bottom:12px}
.section-sub{font-size:16px;color:var(--text-2);max-width:560px;margin:0 auto 40px;line-height:1.6}
.section-header-center{text-align:center;margin-bottom:40px}
.section-header-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px}
.view-all{font-size:13px;color:var(--red);font-weight:600}
.view-all:hover{text-decoration:underline}

/* ═══════════════════════════════════════════════════
   CATEGORY CARDS
═══════════════════════════════════════════════════ */
.category-section{background:var(--bg);padding:64px 0}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:768px){.cat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.cat-grid{grid-template-columns:1fr 1fr}}
.cat-card{
  position:relative;height:220px;border-radius:var(--r-lg);
  overflow:hidden;background-size:cover;background-position:center;
  display:flex;align-items:flex-end;cursor:pointer;
  transition:transform .22s,box-shadow .22s;
  box-shadow:var(--shadow);text-decoration:none;
}
.cat-card:hover{transform:scale(1.03);box-shadow:var(--shadow-lg)}
.cat-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(15,23,42,.82) 0%,rgba(15,23,42,.15) 55%);
  transition:background .22s;
}
.cat-card:hover::before{background:linear-gradient(to top,rgba(15,23,42,.75) 0%,rgba(15,23,42,.25) 55%)}
.cat-card-body{position:relative;z-index:1;padding:18px 20px;width:100%}
.cat-card-name{font-size:16px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:3px}
.cat-card-count{font-size:12px;color:rgba(255,255,255,.7)}
@media(max-width:480px){.cat-card{height:160px}.cat-card-name{font-size:14px}}

/* ═══════════════════════════════════════════════════
   PRODUCT GRID
═══════════════════════════════════════════════════ */
.products-section{background:var(--white);border-top:1px solid var(--border)}
.products-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:12px;padding-bottom:20px;
  border-bottom:1px solid var(--border);margin-bottom:24px;
}
.products-count{font-size:14px;color:var(--muted)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.product-grid{grid-template-columns:repeat(2,1fr);gap:12px}}
@media(max-width:340px){.product-grid{grid-template-columns:1fr}}

/* ── Product card ───────────────────────────────── */
.product-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:var(--r);overflow:hidden;display:flex;
  flex-direction:column;transition:box-shadow .2s,transform .2s;
  cursor:pointer;
}
.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.card-img-wrap{
  position:relative;overflow:hidden;background:var(--bg);
  height:260px;flex-shrink:0;
}
.card-img-wrap img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .35s ease;display:block;
}
.product-card:hover .card-img-wrap img{transform:scale(1.06)}
.card-placeholder{
  width:100%;height:100%;display:flex;align-items:center;
  justify-content:center;font-size:60px;color:var(--border);
  background:var(--bg);
}
.card-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:5px}
.card-badge-featured{position:absolute;top:10px;right:10px}
.badge{
  display:inline-block;padding:4px 9px;border-radius:99px;
  font-size:10px;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;line-height:1.3;
}
.badge-out{background:#fee2e2;color:#dc2626}
.badge-low{background:#fef9c3;color:#854d0e}
.badge-in{background:#dcfce7;color:#166534}
.badge-featured{background:var(--red);color:#fff}
.card-body{padding:14px 16px 10px;flex:1;display:flex;flex-direction:column;gap:5px}
.card-subcat{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}
.card-name{font-size:13px;font-weight:600;line-height:1.35;color:var(--text);flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-price-row{display:flex;align-items:baseline;gap:8px;margin-top:4px}
.card-price{font-size:17px;font-weight:700;color:var(--red)}
.card-compare{font-size:12px;color:var(--muted);text-decoration:line-through}
.card-footer{padding:10px 16px 16px;display:flex;flex-direction:column;gap:8px}
.add-btn{
  width:100%;height:42px;background:var(--red);color:#fff;
  border:none;border-radius:var(--r-sm);font-size:13px;
  font-weight:600;cursor:pointer;transition:background .15s;
}
.add-btn:hover:not(:disabled){background:var(--red-dark)}
.add-btn:disabled{background:var(--border);color:var(--muted);cursor:not-allowed}
.add-btn.added{background:#059669}
.stock-status{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:4px}
.stock-dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}
.stock-dot.in{background:#22c55e}
.stock-dot.low{background:#f59e0b}
.stock-dot.out{background:#ef4444}
@media(max-width:480px){
  .card-img-wrap{height:180px}
  .card-body{padding:10px 12px 8px}
  .card-footer{padding:8px 12px 12px}
  .card-price{font-size:15px}
}

/* ═══════════════════════════════════════════════════
   ABOUT SECTION
═══════════════════════════════════════════════════ */
.about-section{background:var(--bg);border-top:1px solid var(--border)}
.about-grid{display:grid;grid-template-columns:55% 1fr;gap:60px;align-items:center}
@media(max-width:768px){.about-grid{grid-template-columns:1fr}.about-img-wrap{order:-1}}
.about-text .section-title{margin-bottom:8px}
.about-sub{font-size:14px;font-weight:600;color:var(--red);margin-bottom:20px;text-transform:uppercase;letter-spacing:.05em}
.about-text p{font-size:15px;color:var(--text-2);line-height:1.75;margin-bottom:14px}
.about-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.about-img-wrap{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);height:420px}
.about-img-wrap img{width:100%;height:100%;object-fit:cover}
@media(max-width:768px){.about-img-wrap{height:260px}}

/* ═══════════════════════════════════════════════════
   PAGINATION
═══════════════════════════════════════════════════ */
.pagination{display:flex;gap:8px;justify-content:center;padding:36px 0}
.page-btn{
  min-width:38px;height:38px;border:1px solid var(--border);
  border-radius:var(--r-sm);background:var(--white);color:var(--text-2);
  font-size:14px;font-weight:500;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  padding:0 12px;transition:all .15s;
}
.page-btn.active,.page-btn:hover{background:var(--red);color:#fff;border-color:var(--red)}

/* ═══════════════════════════════════════════════════
   PRODUCT DETAIL
═══════════════════════════════════════════════════ */
.product-detail{padding:36px 0 64px}
.breadcrumb{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:13px;color:var(--muted);margin-bottom:28px;
}
.breadcrumb a:hover{color:var(--red)}
.breadcrumb .bc-sep{color:var(--border)}
.product-layout{display:grid;grid-template-columns:45% 1fr;gap:48px;align-items:start}
@media(max-width:768px){.product-layout{grid-template-columns:1fr}}
.gallery-main{border-radius:var(--r-lg);overflow:hidden;background:#fff;border:1px solid var(--border);aspect-ratio:4/3;cursor:zoom-in}
.gallery-main img{width:100%;height:100%;object-fit:contain}
.gallery-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.gallery-thumb{
  width:70px;height:70px;border-radius:var(--r-sm);overflow:hidden;
  cursor:pointer;border:2px solid transparent;transition:border-color .15s;flex-shrink:0;
}
.gallery-thumb.active,.gallery-thumb:hover{border-color:var(--red)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}
.prod-subcat{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px}
.prod-title{font-size:clamp(20px,3vw,28px);font-weight:700;color:var(--dark);line-height:1.2;margin-bottom:14px}
.prod-price-wrap{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.prod-price{font-size:30px;font-weight:800;color:var(--red)}
.prod-compare{font-size:17px;color:var(--muted);text-decoration:line-through}
.prod-stock{margin-bottom:20px}
.prod-desc{font-size:14px;line-height:1.75;color:var(--text-2);margin:20px 0;white-space:pre-line}
.qty-row{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.qty-wrap{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--r-sm);overflow:hidden;width:fit-content}
.qty-btn{width:44px;height:48px;border:none;background:var(--bg);color:var(--text);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.qty-btn:hover{background:var(--border)}
.qty-num{width:56px;height:48px;border-left:1px solid var(--border);border-right:1px solid var(--border);text-align:center;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center}
.atc-btn-main{flex:1;height:52px;background:var(--red);color:#fff;border:none;border-radius:var(--r-sm);font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}
.atc-btn-main:hover:not(:disabled){background:var(--red-dark)}
.atc-btn-main:disabled{background:var(--border);color:var(--muted);cursor:not-allowed}
.prod-meta{font-size:13px;color:var(--muted);margin-top:16px;padding-top:16px;border-top:1px solid var(--border);line-height:1.7}
.prod-meta a{color:var(--red)}
.related-section{padding:40px 0;border-top:1px solid var(--border);margin-top:40px}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:768px){.related-grid{grid-template-columns:repeat(2,1fr)}}

/* ═══════════════════════════════════════════════════
   CART
═══════════════════════════════════════════════════ */
.page-wrap{padding:36px 0 64px;min-height:50vh}
.page-title{font-size:26px;font-weight:700;color:var(--dark);margin-bottom:28px}
.cart-layout{display:grid;grid-template-columns:1fr 380px;gap:28px;align-items:start}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}}
.cart-table{width:100%;border-collapse:collapse;background:var(--white);border-radius:var(--r);border:1px solid var(--border);overflow:hidden}
.cart-table th{background:var(--bg);padding:12px 16px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:left;border-bottom:1px solid var(--border)}
.cart-table td{padding:16px;border-bottom:1px solid var(--border);vertical-align:middle}
.cart-table tbody tr:last-child td{border-bottom:none}
.cart-img{width:64px;height:64px;border-radius:var(--r-sm);object-fit:cover;background:var(--bg)}
.cart-name{font-size:14px;font-weight:600;margin-bottom:3px;color:var(--text)}
.cart-variant{font-size:12px;color:var(--muted)}
.cart-each{font-size:12px;color:var(--muted);margin-top:2px}
.qty-ctrl{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;width:fit-content}
.qty-ctrl-btn{width:32px;height:32px;border:none;background:var(--bg);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qty-ctrl-btn:hover{background:var(--border)}
.qty-ctrl-n{width:36px;height:32px;text-align:center;font-size:13px;font-weight:600;border-left:1px solid var(--border);border-right:1px solid var(--border);display:flex;align-items:center;justify-content:center}
.remove-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:20px;line-height:1;padding:4px;border-radius:4px;transition:color .15s}
.remove-btn:hover{color:#ef4444}
.order-summary{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px;position:sticky;top:90px}
.summary-title{font-size:16px;font-weight:700;color:var(--dark);margin-bottom:18px}
.summary-row{display:flex;justify-content:space-between;font-size:14px;color:var(--text-2);padding:9px 0;border-bottom:1px solid var(--border)}
.summary-row:last-of-type{border-bottom:none}
.summary-total{display:flex;justify-content:space-between;font-size:18px;font-weight:700;color:var(--dark);margin-top:12px;padding-top:14px;border-top:2px solid var(--border)}
.paxi-note{font-size:12px;color:var(--muted);line-height:1.5;margin-top:10px}
.paxi-note a{color:var(--red)}
.checkout-btn{width:100%;height:50px;background:var(--red);color:#fff;border:none;border-radius:var(--r-sm);font-size:14px;font-weight:700;cursor:pointer;margin-top:16px;transition:background .15s}
.checkout-btn:hover{background:var(--red-dark)}
.cart-cont{display:block;text-align:center;font-size:13px;color:var(--muted);margin-top:12px}
.cart-cont:hover{color:var(--red)}
.cart-empty{text-align:center;padding:72px 20px}
.cart-empty-icon{font-size:72px;margin-bottom:20px}
.cart-empty h2{font-size:22px;font-weight:700;margin-bottom:10px}
.cart-empty p{color:var(--muted);margin-bottom:28px}

/* ═══════════════════════════════════════════════════
   CHECKOUT
═══════════════════════════════════════════════════ */
.checkout-layout{display:grid;grid-template-columns:1fr 400px;gap:32px;align-items:start}
@media(max-width:900px){.checkout-layout{grid-template-columns:1fr}}
.form-block-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:20px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.form-row{grid-template-columns:1fr}}
.form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.form-label{font-size:13px;font-weight:600;color:var(--text)}
.form-input,.form-select,.form-textarea{
  height:46px;border:1.5px solid var(--border);border-radius:var(--r-sm);
  padding:0 14px;font-size:14px;background:var(--white);color:var(--text);
  outline:none;transition:border-color .15s,box-shadow .15s;width:100%;
}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-light)}
.form-textarea{height:88px;padding:12px 14px;resize:vertical}
.field-err{font-size:12px;color:#ef4444;display:none}
.field-err.show{display:block}
.place-btn{width:100%;height:52px;background:var(--red);color:#fff;border:none;border-radius:var(--r-sm);font-size:15px;font-weight:700;cursor:pointer;margin-top:8px;transition:background .15s}
.place-btn:hover:not(:disabled){background:var(--red-dark)}
.place-btn:disabled{background:var(--border);color:var(--muted);cursor:not-allowed}
.secure-note{font-size:12px;color:var(--muted);text-align:center;margin-top:8px}

/* ═══════════════════════════════════════════════════
   ORDER CONFIRM
═══════════════════════════════════════════════════ */
.confirm-wrap{max-width:600px;margin:60px auto;padding:0 20px;text-align:center}
.confirm-icon{font-size:76px;margin-bottom:20px}
.confirm-title{font-size:32px;font-weight:800;color:var(--dark);margin-bottom:10px}
.confirm-sub{font-size:16px;color:var(--muted);margin-bottom:36px;line-height:1.6}
.confirm-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:28px;text-align:left;margin-bottom:20px;box-shadow:var(--shadow)}
.confirm-ref{font-size:26px;font-weight:700;color:var(--red);margin-bottom:4px}
.confirm-date{font-size:13px;color:var(--muted);margin-bottom:24px}
.confirm-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);font-size:14px;color:var(--text-2)}
.confirm-row:last-child{border:none;font-weight:700;font-size:16px;color:var(--dark)}
.confirm-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--r-sm);padding:18px 20px;font-size:14px;text-align:left;margin-bottom:28px;line-height:1.7}
.confirm-paxi{background:#f0fdf4;border:1px solid #a7f3d0;border-radius:var(--r-sm);padding:18px 20px;font-size:14px;text-align:left;margin-bottom:28px;line-height:1.7}
.confirm-paxi a{color:var(--red);font-weight:600}

/* ═══════════════════════════════════════════════════
   INFO PAGES
═══════════════════════════════════════════════════ */
.info-page{padding:40px 0 72px}
.info-page h1{font-size:30px;font-weight:700;color:var(--dark);margin-bottom:8px}
.info-intro{font-size:16px;color:var(--muted);margin-bottom:40px;line-height:1.6}
.info-section{margin-bottom:36px;padding-bottom:36px;border-bottom:1px solid var(--border)}
.info-section:last-child{border-bottom:none}
.info-section h2{font-size:17px;font-weight:700;color:var(--dark);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.info-section p,.info-section li{font-size:15px;line-height:1.75;color:var(--text-2);margin-bottom:8px}
.info-section ol,.info-section ul{padding-left:22px}
.info-section li{margin-bottom:6px}
.info-section strong{color:var(--text);font-weight:600}
.info-section a{color:var(--red)}
.info-section a:hover{text-decoration:underline}
.dt-table{width:100%;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;margin:12px 0}
.dt-row{display:flex;justify-content:space-between;padding:12px 16px;font-size:14px;color:var(--text-2);border-bottom:1px solid var(--border)}
.dt-row:last-child{border-bottom:none}
.dt-row:nth-child(even){background:var(--bg)}
.dt-row strong{color:var(--text)}
.instore-card{background:var(--red-light);border:1px solid #fca5a5;border-radius:var(--r-sm);padding:18px 20px;font-size:14px;line-height:1.7;color:var(--text-2)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media(max-width:768px){.contact-grid{grid-template-columns:1fr}}
.contact-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px;margin-bottom:16px;box-shadow:var(--shadow)}
.contact-card h3{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px}
.contact-card p{font-size:15px;line-height:1.7;color:var(--text-2)}
.contact-card a{color:var(--red)}
.map-embed{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}
.faq-section{margin-top:48px}
.faq-title{font-size:20px;font-weight:700;color:var(--dark);margin-bottom:20px}
.faq-item{padding:16px 0;border-bottom:1px solid var(--border)}
.faq-item:last-child{border-bottom:none}
.faq-q{font-size:15px;font-weight:600;color:var(--text);margin-bottom:6px}
.faq-a{font-size:14px;color:var(--text-2);line-height:1.65}
.faq-a a{color:var(--red)}

/* ═══════════════════════════════════════════════════
   TOAST
═══════════════════════════════════════════════════ */
.toast{
  position:fixed;bottom:28px;right:28px;
  background:var(--dark);color:#fff;padding:14px 20px;
  border-radius:var(--r-sm);font-size:14px;font-weight:500;
  z-index:1000;transform:translateY(12px);opacity:0;
  transition:all .22s;pointer-events:none;max-width:320px;
  box-shadow:var(--shadow-lg);
}
.toast.show{transform:none;opacity:1}
.toast.success{background:#059669}
.toast.error{background:#dc2626}

/* ═══════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════ */
.site-footer{background:#0F172A;color:#94A3B8;padding:60px 0 0}
.footer-grid{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;
  gap:36px;padding-bottom:48px;
}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}
.footer-logo{font-size:24px;font-weight:800;color:var(--red);letter-spacing:-.5px;display:block;margin-bottom:12px}
.footer-logo span{color:#fff}
.footer-tagline{font-size:13px;color:#94A3B8;line-height:1.6;margin-bottom:16px}
.footer-col h4{
  font-size:12px;font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;color:#fff;margin-bottom:16px;
}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:14px;color:#94A3B8;transition:color .15s}
.footer-links a:hover{color:#fff}
.footer-contact-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-contact-list li{font-size:13px;line-height:1.55;color:#94A3B8}
.footer-contact-list a{color:#94A3B8;transition:color .15s}
.footer-contact-list a:hover{color:#fff}
.footer-paxi-btn{
  display:inline-block;margin-top:14px;padding:9px 16px;
  background:var(--red);color:#fff;border-radius:var(--r-sm);
  font-size:13px;font-weight:600;transition:background .15s;
}
.footer-paxi-btn:hover{background:var(--red-dark)}
.footer-bottom{
  background:#1E293B;padding:18px 0;
  font-size:12px;color:#64748B;text-align:center;
}
.footer-bottom a{color:#64748B;margin:0 8px;transition:color .15s}
.footer-bottom a:hover{color:#94A3B8}

/* ── Size selector (Section 1) ───────────────────── */
.size-selector{margin:16px 0 20px}
.size-label{font-size:13px;font-weight:600;color:var(--text-2);margin-bottom:10px}
.size-btns{display:flex;flex-wrap:wrap;gap:8px}
.size-btn{
  min-width:52px;height:44px;padding:0 14px;
  border:1.5px solid var(--border);border-radius:var(--r-sm);
  background:var(--white);color:var(--text);
  font-size:13px;font-weight:600;cursor:pointer;
  transition:all .15s;font-family:inherit;display:inline-flex;
  align-items:center;justify-content:center;
}
.size-btn:hover:not(:disabled):not(.selected){border-color:var(--red);color:var(--red)}
.size-btn.selected{background:var(--red);color:#fff;border-color:var(--red)}
.size-btn.oos,.size-btn:disabled{
  color:var(--muted);border-color:var(--border);background:var(--bg);
  cursor:not-allowed;text-decoration:line-through;opacity:.55;
}
/* Wholesale prompt */
.wholesale-prompt{
  background:var(--bg);border:1px solid var(--border);
  border-radius:var(--r);padding:14px 18px;margin-top:20px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.wholesale-prompt-text{font-size:13px;color:var(--text-2);line-height:1.5}
.wholesale-prompt-link{
  font-size:13px;font-weight:600;color:var(--red);
  white-space:nowrap;flex-shrink:0;
}
/* Variant note on product card */
.card-variant-note{font-size:11px;color:var(--muted);margin-top:2px}

/* ── Section 2 — Lightbox ───────────────────────── */
.lightbox{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.92);z-index:2000;
  align-items:center;justify-content:center;
}
.lightbox.open{display:flex}
.lightbox img{
  max-width:90vw;max-height:90vh;
  object-fit:contain;border-radius:4px;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
}
.lightbox-close{
  position:absolute;top:16px;right:20px;
  background:none;border:none;color:#fff;
  font-size:36px;cursor:pointer;line-height:1;
  opacity:.8;transition:opacity .15s;
}
.lightbox-close:hover{opacity:1}

/* ── Section 2 — Product detail extra ──────────── */
.prod-detail-extra{margin-top:40px;border-top:1px solid var(--border);padding-top:32px;display:flex;flex-direction:column;gap:28px}
.prod-extra-section{}
.prod-extra-title{font-size:15px;font-weight:700;color:var(--dark);margin-bottom:12px}
.prod-features-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.prod-features-list li{font-size:14px;color:var(--text-2);display:flex;align-items:baseline;gap:10px}
.feat-check{color:var(--red);font-weight:700;flex-shrink:0}
/* Specs panel */
.specs-panel{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.specs-toggle{
  list-style:none;padding:14px 18px;font-size:14px;font-weight:600;
  cursor:pointer;background:var(--bg);color:var(--text);
  display:flex;align-items:center;justify-content:space-between;
  user-select:none;
}
.specs-toggle::after{content:'▾';font-size:12px;color:var(--muted);transition:transform .2s}
details[open] .specs-toggle::after{transform:rotate(-180deg)}
.specs-table{width:100%;border-collapse:collapse}
.specs-table tr{border-top:1px solid var(--border)}
.specs-table th{
  width:38%;padding:11px 18px;font-size:13px;font-weight:600;
  text-align:left;color:var(--text-2);background:var(--bg);
}
.specs-table td{padding:11px 18px;font-size:13px;color:var(--text)}

/* ═══════════════════════════════════════════════════════
   Section 3 — Navigation Dropdown + Mobile Hamburger
   ═══════════════════════════════════════════════════════ */

/* ── Desktop dropdown ──────────────────────────────── */
.nav-dropdown { position:relative; display:flex; align-items:center; }
.nav-dropdown-trigger {
  display:flex; align-items:center; gap:4px; cursor:pointer;
}
.nav-dropdown-arrow {
  flex-shrink:0; transition:transform .15s ease;
  color:var(--text-2);
}
.nav-dropdown:hover .nav-dropdown-arrow { transform:rotate(180deg); }
.nav-dropdown-menu {
  position:absolute; top:calc(100% + 8px); left:-12px;
  background:#fff; border:1px solid var(--border);
  border-radius:8px; box-shadow:0 8px 24px rgba(0,0,0,.12);
  min-width:210px; padding:8px 0;
  opacity:0; visibility:hidden;
  transform:translateY(-4px); transition:all 150ms ease;
  z-index:200;
}
.nav-dropdown:hover .nav-dropdown-menu {
  opacity:1; visibility:visible; transform:translateY(0);
}
.nav-dropdown-menu a {
  display:block; padding:10px 16px;
  font-size:14px; color:var(--text);
  transition:background 100ms;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-menu a.active { background:var(--bg); color:var(--red); }
.nav-dropdown-divider {
  height:1px; background:var(--border); margin:6px 0;
}

/* ── hdr-nav active state ─────────────────────────── */
.hdr-nav a.active { color:var(--red); }
.nav-dropdown-trigger.active { color:var(--red); }

/* ── Hamburger button (mobile only) ─────────────────── */
.hamburger-btn {
  display:none;
  flex-direction:column; justify-content:center;
  align-items:center; gap:5px;
  width:40px; height:40px;
  background:none; border:none;
  cursor:pointer; padding:4px; border-radius:var(--r);
  flex-shrink:0;
}
.hamburger-btn span {
  display:block; width:22px; height:2px;
  background:var(--text); border-radius:2px;
  transition:all .2s ease;
}

/* ── Mobile nav overlay ──────────────────────────────── */
.mob-nav-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.55); z-index:1000;
  opacity:0; transition:opacity .25s ease;
}
.mob-nav-overlay.open {
  display:flex; opacity:1;
}
.mob-nav-panel {
  position:fixed; top:0; left:0; bottom:0;
  width:min(320px, 88vw);
  background:#fff; display:flex; flex-direction:column;
  box-shadow:4px 0 32px rgba(0,0,0,.18);
  transform:translateX(-100%); transition:transform .25s ease;
}
.mob-nav-overlay.open .mob-nav-panel { transform:translateX(0); }

.mob-nav-head {
  display:flex; align-items:center;
  justify-content:space-between;
  padding:16px 20px; border-bottom:1px solid var(--border);
  flex-shrink:0;
}
.mob-nav-close {
  background:none; border:none; font-size:22px;
  color:var(--text-2); cursor:pointer;
  width:36px; height:36px; display:flex;
  align-items:center; justify-content:center;
  border-radius:50%; transition:background .15s;
}
.mob-nav-close:hover { background:var(--bg); }

.mob-nav-links {
  flex:1; overflow-y:auto; padding:12px 0;
}
.mob-nav-link {
  display:block; padding:13px 20px;
  font-size:15px; font-weight:500; color:var(--text);
  border-bottom:1px solid var(--border);
  transition:color .15s;
}
.mob-nav-link:hover,
.mob-nav-link.active { color:var(--red); }
.mob-nav-link:last-child { border-bottom:none; }

/* Products accordion */
.mob-nav-accordion { border-bottom:1px solid var(--border); }
.mob-acc-btn {
  display:flex; align-items:center; justify-content:space-between;
  width:100%; padding:13px 20px;
  background:none; border:none; cursor:pointer;
  font-size:15px; font-weight:500; color:var(--text);
  font-family:inherit;
}
.mob-acc-btn:hover { color:var(--red); }
.mob-acc-chevron { transition:transform .2s ease; flex-shrink:0; }
.mob-acc-btn[aria-expanded="true"] .mob-acc-chevron { transform:rotate(180deg); }
.mob-acc-items {
  max-height:0; overflow:hidden;
  transition:max-height .25s ease;
  background:var(--bg);
}
.mob-acc-items.open { max-height:600px; }
.mob-acc-link {
  display:block; padding:11px 20px 11px 32px;
  font-size:14px; color:var(--text-2);
  border-top:1px solid var(--border);
  transition:color .15s;
}
.mob-acc-link:hover,
.mob-acc-link.active { color:var(--red); }

/* Mobile nav footer (phone + hours) */
.mob-nav-footer {
  padding:16px 20px; border-top:1px solid var(--border);
  flex-shrink:0; background:var(--bg);
}
.mob-nav-phone {
  display:block; font-size:16px; font-weight:700;
  color:var(--dark); margin-bottom:6px;
}
.mob-nav-hours {
  font-size:11px; color:var(--muted); line-height:1.6; margin:0;
}

/* ── Responsive: hide desktop nav, show hamburger on mobile ── */
@media(max-width:768px) {
  .hdr-nav { display:none; }
  .hamburger-btn { display:flex; }
  .hdr-phone { display:none; }
}
@media(min-width:769px) {
  .mob-nav-overlay { display:none !important; }
  .hamburger-btn { display:none; }
}

/* ── subcat-nav tweak: use container wrapper for scroll ─── */
.subcat-nav .container { overflow:hidden; }
.subcat-inner {
  display:flex; gap:8px; overflow-x:auto;
  padding:0 4px 4px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.subcat-inner::-webkit-scrollbar { display:none; }

/* ═══════════════════════════════════════════════════════
   Section 4 — New Pages CSS
   ═══════════════════════════════════════════════════════ */

/* ── Form feedback ──────────────────────────────────── */
.form-error-msg {
  background:#fee2e2;border-left:4px solid #dc2626;
  padding:12px 16px;border-radius:var(--r-sm);
  margin-bottom:20px;font-size:14px;color:#7f1d1d;
}
.form-success-box {
  background:#f0fdf4;border:1px solid #86efac;
  border-radius:var(--r);padding:32px;text-align:center;
  margin-bottom:32px;
}
.form-success-icon {
  width:52px;height:52px;background:#22c55e;color:#fff;
  border-radius:50%;font-size:24px;line-height:52px;
  margin:0 auto 16px;font-weight:700;
}
.form-success-box h3 { font-size:20px;font-weight:700;color:#15803d;margin-bottom:8px; }
.form-success-box p  { color:#166534;font-size:14px; }
.req { color:var(--red); }

/* ── Benefit strip (wholesale, custom) ──────────────── */
.benefit-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;margin:28px 0 36px;
}
.benefit-card {
  background:var(--bg);border:1px solid var(--border);
  border-radius:var(--r);padding:20px 16px;text-align:center;
}
.benefit-icon { font-size:28px;margin-bottom:10px; }
.benefit-card h4 { font-size:14px;font-weight:700;color:var(--dark);margin-bottom:6px; }
.benefit-card p  { font-size:13px;color:var(--text-2);line-height:1.5;margin:0; }

/* ── Enquiry layout (form + sidebar) ───────────────── */
.enquiry-layout {
  display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start;
}
.enquiry-form-wrap {}
.enquiry-sidebar {}
.enquiry-sidebar .contact-block {
  background:var(--bg);border:1px solid var(--border);
  border-radius:var(--r);padding:18px;margin-bottom:16px;
}
.enquiry-sidebar .contact-block h4 { font-size:14px;font-weight:700;margin-bottom:8px; }
.enquiry-sidebar .contact-block p  { font-size:14px;color:var(--text-2);margin:0; }

/* ── Custom steps ────────────────────────────────────── */
.steps-row {
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px;
}
.step-item {
  display:flex;flex-direction:column;align-items:center;
  text-align:center;gap:10px;padding:16px;
  background:var(--bg);border:1px solid var(--border);border-radius:var(--r);
}
.step-num {
  width:36px;height:36px;background:var(--red);color:#fff;
  border-radius:50%;font-size:16px;font-weight:700;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.step-item strong { font-size:13px;font-weight:700;color:var(--dark); }
.step-item p { font-size:12px;color:var(--text-2);margin:4px 0 0;line-height:1.4; }

/* ── Workwear grid ───────────────────────────────────── */
.workwear-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px;
}
.workwear-card {
  background:#fff;border:1px solid var(--border);border-radius:var(--r);
  transition:box-shadow .15s,transform .15s;
}
.workwear-card:hover {
  box-shadow:0 6px 24px rgba(0,0,0,.09);transform:translateY(-2px);
}
.workwear-card-body { padding:24px; }
.workwear-icon { font-size:32px;margin-bottom:12px; }
.workwear-card h3 { font-size:16px;font-weight:700;color:var(--dark);margin-bottom:8px; }
.workwear-card p  { font-size:13px;color:var(--text-2);line-height:1.55;margin:0; }

/* ── In-store notice ────────────────────────────────── */
.instore-notice {
  display:flex;gap:20px;align-items:flex-start;
  background:#fffbeb;border:2px solid #fbbf24;
  border-radius:var(--r);padding:24px;margin:28px 0;
}
.instore-notice-icon { font-size:36px;flex-shrink:0; }
.instore-notice h3 { font-size:18px;font-weight:700;color:#92400e;margin-bottom:8px; }
.instore-notice p  { font-size:14px;color:#78350f;margin:0;line-height:1.5; }

/* ── Info sections, tick list, CTA banner ───────────── */
.info-section { padding-top:8px; }
.two-col-grid {
  display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:16px;
}
.tick-list {
  list-style:none;display:flex;flex-direction:column;gap:8px;
}
.tick-list li {
  font-size:14px;color:var(--text-2);padding-left:22px;position:relative;
}
.tick-list li::before {
  content:'✓';color:var(--red);font-weight:700;
  position:absolute;left:0;
}
.info-cta-banner {
  background:var(--dark);border-radius:var(--r);padding:32px;
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;margin-bottom:40px;
}
.info-cta-banner h3 { font-size:20px;font-weight:700;color:#fff;margin-bottom:6px; }
.info-cta-banner p  { font-size:14px;color:rgba(255,255,255,.75);margin:0; }
.info-cta-btns { display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0; }

/* ── Responsive for Section 4 pages ────────────────── */
@media(max-width:900px) {
  .enquiry-layout { grid-template-columns:1fr; }
  .enquiry-sidebar { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
  .benefit-strip   { grid-template-columns:repeat(2,1fr); }
  .steps-row        { grid-template-columns:repeat(2,1fr); }
  .workwear-grid    { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:600px) {
  .benefit-strip   { grid-template-columns:1fr 1fr; }
  .workwear-grid   { grid-template-columns:1fr; }
  .two-col-grid    { grid-template-columns:1fr; }
  .steps-row       { grid-template-columns:1fr; }
  .enquiry-sidebar { grid-template-columns:1fr; }
  .info-cta-banner { flex-direction:column; }
  .info-cta-btns   { width:100%; }
  .info-cta-btns .btn { flex:1;justify-content:center; }
}

/* ═══════════════════════════════════════════════════════
   Section 5 — CSS Polish
   ═══════════════════════════════════════════════════════ */

/* ── Page hero (info pages: wholesale, custom, workwear, schoolwear) ── */
.page-hero {
  background:linear-gradient(135deg, var(--dark) 0%, #1e3a5f 100%);
  padding:52px 0 58px;
}
.page-breadcrumb {
  font-size:13px;color:rgba(255,255,255,.5);
  margin-bottom:14px;display:flex;align-items:center;gap:6px;
}
.page-breadcrumb a {
  color:rgba(255,255,255,.65);text-decoration:none;transition:color .15s;
}
.page-breadcrumb a:hover { color:#fff; }
.page-breadcrumb::after { content:''; }
.page-hero-title {
  color:#fff;
  font-size:clamp(26px,4vw,40px);font-weight:800;
  line-height:1.15;margin-bottom:14px;
}
.page-hero-sub {
  color:rgba(255,255,255,.8);font-size:clamp(14px,1.6vw,16px);
  line-height:1.7;margin:0;max-width:640px;
}
@media(max-width:600px) {
  .page-hero { padding:36px 0 40px; }
  .page-hero-title { font-size:24px; }
}

/* ── Product layout 45/55 (gallery / details) ───────── */
/* (already updated inline above on line 329) */

/* ── Mobile touch targets ───────────────────────────── */
@media(max-width:768px) {
  /* All buttons — min 44px tap height */
  .btn { min-height:44px; }
  .btn-sm { min-height:38px; }

  /* Mobile nav links — 48px tap height */
  .mob-nav-link { padding:14px 20px; min-height:48px; display:flex; align-items:center; }
  .mob-acc-btn  { min-height:48px; }
  .mob-acc-link { padding:13px 20px 13px 32px; min-height:44px; display:flex; align-items:center; }

  /* Subcat pills — adequate tap height */
  .subcat-btn { padding:12px 16px; min-height:44px; display:flex; align-items:center; }

  /* Size selector buttons */
  .size-btn { min-width:56px; height:48px; }

  /* Add-to-cart block full width on mobile */
  .atc-row { flex-direction:column; }
  .atc-btn-main { height:54px; width:100%; }

  /* Form inputs already 46px — bump to 48px on mobile */
  .form-input, .form-select { height:48px; }
}

/* ── Product detail: image / info layout ────────────── */
/* Gallery side gets a sticky position on desktop */
@media(min-width:769px) {
  .prod-gallery-wrap { position:sticky; top:90px; }
}

/* ── Info page h1 when no page-hero (contact, delivery) ── */
.info-page h1 { font-size:clamp(24px,3vw,32px); font-weight:800; color:var(--dark); margin-bottom:8px; }
.info-page .page-intro { font-size:15px; color:var(--text-2); margin-bottom:28px; max-width:640px; }

/* ── Section title consistency ──────────────────────── */
.section-title { font-size:clamp(18px,2.5vw,24px); font-weight:700; color:var(--dark); margin-bottom:16px; }

/* ── Card hover lift — consistent across all card types ── */
.prod-card:hover { transform:translateY(-3px); }
@media(prefers-reduced-motion:reduce) {
  .prod-card:hover, .workwear-card:hover, .btn-red:hover { transform:none; }
}

/* ── Footer ─────────────────────────────────────────── */
/* Quick Links already updated in Section 3/4 */
@media(max-width:600px) {
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > div:first-child { grid-column:1/-1; }
}
