/* ===================================================================
   eShobuy — Classical Professional Visual Redesign (Storefront)
   ---------------------------------------------------------------
   Scope: visual style only. Layout structure, section order,
   navigation, and the existing color system (--accent, --accent-2,
   --gold, --text-main, --glass-card, --glass-border, etc.) are all
   left untouched on purpose. This file only refines: typography,
   spacing, shadows, borders, radii, and component polish, to move
   the look from "generic SaaS template" toward a classical, editorial,
   professional high-end retail feel — without tipping into loud
   luxury/gold-glitz territory.

   Loaded last, after all other patch files, so it has final say on
   the cascade. Uses !important selectively where the base rules
   already do (this codebase relies on !important throughout), to
   guarantee it actually wins.

   IMPORTANT NOTE: the base stylesheet declares font-family:'Inter'
   and 'JetBrains Mono' but never actually loads either font — so the
   entire site has been silently rendering in the browser's default
   system font. This file adds the real font imports.
   =================================================================== */

/* NOTE: the Fraunces (serif) and JetBrains Mono imports that used to live
   here were removed. store-refined.css loads Inter + Noto Sans Bengali and
   applies one type system across the whole site, so pulling two extra
   families down the wire only cost load time — nothing rendered in them. */

:root{
  --marlin-serif: 'Inter','Noto Sans Bengali',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --marlin-sans: 'Inter','Noto Sans Bengali',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --marlin-mono: 'Inter','Noto Sans Bengali',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --marlin-ease: cubic-bezier(.4,0,.2,1);
  --marlin-shadow-sm: 0 1px 2px rgba(20,30,50,.06), 0 1px 1px rgba(20,30,50,.04);
  --marlin-shadow-md: 0 4px 16px rgba(20,30,50,.07), 0 2px 6px rgba(20,30,50,.05);
  --marlin-shadow-lg: 0 16px 40px rgba(20,30,50,.12), 0 4px 12px rgba(20,30,50,.06);
  --marlin-radius: 10px;
  --marlin-radius-sm: 7px;
}

/* ---------- Base typography ---------- */
html body{font-family:var(--marlin-sans)!important;}
html body input,html body textarea,html body select,html body button{font-family:var(--marlin-sans)!important;}
html body h1,html body h2,html body h3{font-family:var(--marlin-serif)!important;letter-spacing:-.01em;}

/* Editorial headline treatment for section titles */
html body .sec-title{font-family:var(--marlin-serif)!important;font-weight:600!important;letter-spacing:-.01em;}
html body .sec-title h2,
html body .sec-title .sec-h2{font-size:24px!important;}

/* Mono accents kept, just tightened */
html body .card-brand,
html body .crumbs,
html body .d-brand,
html body .order-card .oid,
html body .brand-card{font-family:var(--marlin-mono)!important;letter-spacing:.4px;}

/* ---------- Header ---------- */
html body .header{
  background:var(--header-bg,rgba(255,255,255,.96))!important;
  border-bottom:1px solid var(--glass-border)!important;
  box-shadow:none!important;
}
html body .header-row{padding:18px 0!important;gap:32px!important;}
html body .logo{font-family:var(--marlin-serif)!important;font-weight:600!important;font-size:25px!important;letter-spacing:-.01em;}

html body .search-box{
  border-radius:var(--marlin-radius)!important;
  border:1.5px solid var(--glass-border)!important;
  box-shadow:none!important;
  transition:border-color .2s var(--marlin-ease);
}
html body .search-box:focus-within{border-color:var(--accent)!important;}

html body .nav-btn{border-radius:var(--marlin-radius-sm)!important;transition:background .2s var(--marlin-ease),color .2s var(--marlin-ease);}
html body .nav-btn:hover{background:var(--glass-card)!important;color:var(--accent)!important;}

/* ---------- Hero ---------- */
html body .hero{border-radius:var(--marlin-radius)!important;overflow:hidden;box-shadow:var(--marlin-shadow-md)!important;}
html body .hero-tag{
  font-family:var(--marlin-mono)!important;
  font-size:11px!important;letter-spacing:1px!important;
  text-transform:uppercase;border-radius:4px!important;
  padding:6px 12px!important;
}
html body .hero-text h1,html body .hero-text h2{font-family:var(--marlin-serif)!important;font-weight:600!important;letter-spacing:-.015em;line-height:1.12!important;}
html body .hero-desc{font-family:var(--marlin-sans)!important;font-weight:400!important;line-height:1.6!important;}
html body .hero-btn{
  border-radius:var(--marlin-radius-sm)!important;
  font-weight:600!important;
  letter-spacing:.2px;
  box-shadow:var(--marlin-shadow-sm)!important;
  transition:transform .2s var(--marlin-ease),box-shadow .2s var(--marlin-ease)!important;
}
html body .hero-btn:hover{transform:translateY(-2px);box-shadow:var(--marlin-shadow-md)!important;}
html body .hero-dots .d{border-radius:2px!important;}

/* ---------- Section headers ---------- */
html body .sec-head{border-bottom:1px solid var(--glass-border)!important;padding-bottom:16px!important;margin-bottom:24px!important;}

/* ---------- Product cards ---------- */
html body .card{
  background:var(--glass-card)!important;
  border:1px solid var(--glass-border)!important;
  border-radius:var(--marlin-radius)!important;
  box-shadow:var(--marlin-shadow-sm)!important;
  transition:box-shadow .25s var(--marlin-ease),transform .25s var(--marlin-ease),border-color .25s var(--marlin-ease)!important;
  overflow:hidden;
}
html body .card:hover{
  box-shadow:var(--marlin-shadow-lg)!important;
  transform:translateY(-3px);
  border-color:var(--accent)!important;
}
html body .card-body{padding:16px 16px 14px!important;}
html body .card-name{
  font-family:var(--marlin-sans)!important;
  font-weight:600!important;
  font-size:14.5px!important;
  line-height:1.4!important;
}
html body .card-foot{padding:0 16px 16px!important;border-top:1px solid var(--glass-border);padding-top:12px!important;}
html body .price-now{font-family:var(--marlin-sans)!important;font-weight:800!important;letter-spacing:-.01em;}
html body .tag{border-radius:4px!important;letter-spacing:.5px!important;}
html body .card-fav{border-radius:50%!important;box-shadow:var(--marlin-shadow-sm)!important;}
html body .card-img img{transition:transform .4s var(--marlin-ease)!important;}
html body .card:hover .card-img img{transform:scale(1.035);}

/* ---------- Buttons (product detail / cart / checkout) ---------- */
html body .d-btn{
  border-radius:var(--marlin-radius-sm)!important;
  font-weight:700!important;
  letter-spacing:.2px;
  box-shadow:none!important;
  transition:transform .18s var(--marlin-ease),box-shadow .18s var(--marlin-ease),filter .18s var(--marlin-ease)!important;
}
html body .d-btn:hover{transform:translateY(-2px);box-shadow:var(--marlin-shadow-md)!important;filter:brightness(1.03);}
html body .d-btn.buy{background:var(--accent)!important;}
html body .d-btn.cart{background:var(--accent-2)!important;}

/* ---------- Price / breadcrumbs ---------- */
html body .d-price{font-family:var(--marlin-sans)!important;letter-spacing:-.02em!important;}
html body .d-price span{font-family:var(--marlin-serif)!important;font-weight:600!important;}
html body .crumbs{font-size:11.5px!important;letter-spacing:.8px!important;}

/* ---------- Product detail description / spec tabs ---------- */
html body .tab-nav{border-bottom:1px solid var(--glass-border)!important;}
html body .tab-t{font-weight:600!important;letter-spacing:.1px;transition:color .2s var(--marlin-ease)!important;}
html body .tab-t.active{color:var(--accent)!important;}
html body .spec-tbl td.k{font-family:var(--marlin-mono)!important;font-size:12.5px!important;}

/* ---------- Footer ---------- */
html body .footer-managed-column h4{
  font-family:var(--marlin-serif)!important;
  font-weight:600!important;
  letter-spacing:0;
  margin-bottom:14px!important;
}
html body .footer-managed-columns{gap:36px!important;}

/* ---------- Forms / inputs (checkout, review, general) ---------- */
html body input[type="text"],
html body input[type="tel"],
html body input[type="email"],
html body input[type="number"],
html body textarea,
html body select{
  border-radius:var(--marlin-radius-sm)!important;
  border:1.5px solid var(--glass-border)!important;
  transition:border-color .2s var(--marlin-ease)!important;
}
html body input:focus,
html body textarea:focus,
html body select:focus{border-color:var(--accent)!important;box-shadow:none!important;}

/* ---------- Modals ---------- */
html body .qv-grid,
html body #qvContent{font-family:var(--marlin-sans)!important;}

/* ---------- Motion polish ---------- */
html body .card,html body .d-btn,html body .hero-btn,html body .nav-btn{will-change:transform;}
