/* =====================================================================
   SARVDISHAYU — FINAL STOREFRONT DESIGN SYSTEM
   Clean healthcare retail, premium blue + gold, responsive by default.
   ===================================================================== */
:root{
  --brand-blue:#12417a;
  --brand-blue-2:#1e5b9d;
  --brand-deep:#0a2749;
  --brand-gold:#f2c431;
  --brand-gold-soft:#fff4c9;
  --brand-cream:#fbf8ef;
  --brand-green:#eaf3ed;
  --ink:#1b2a3b;
  --muted:#68788c;
  --muted-2:#8795a5;
  --border:#e5eaf0;
  --surface:#ffffff;
  --surface-soft:#f7f9fb;
  --shadow-sm:0 7px 22px rgba(12,42,75,.06);
  --shadow-md:0 16px 42px rgba(12,42,75,.10);
  --shadow-lg:0 25px 70px rgba(12,42,75,.14);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:26px;
}

html{scroll-behavior:smooth;scroll-padding-top:100px}
body{background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
.container{width:min(1240px,calc(100% - 48px))}
::selection{background:rgba(242,196,49,.34);color:var(--brand-deep)}
:focus-visible{outline:3px solid rgba(242,196,49,.72);outline-offset:3px}

/* Utility and site announcement bar */
.topbar{position:relative;background:linear-gradient(90deg,#092747,#123b6e 58%,#0b2b50);padding:8px 0;color:#e7eef7;border:0;font-size:11px;letter-spacing:.15px}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:24px}
.topbar-message,.topbar-contact{display:flex;align-items:center;gap:11px}
.topbar-message{font-weight:600;color:#f6f8fb}
.topbar-message b{color:var(--brand-gold);font-weight:700;margin:0 2px}
.topbar-dot{width:7px;height:7px;border-radius:50%;background:var(--brand-gold);box-shadow:0 0 0 4px rgba(242,196,49,.13)}
.topbar-contact{color:#d0deec;font-size:10.5px}
.topbar-contact a{color:#fff;transition:color .2s}
.topbar-contact a:hover{color:var(--brand-gold)}
.topbar-separator{opacity:.35}

/* Header and logo */
.main-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(225,232,239,.9);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:0 5px 24px rgba(11,37,66,.035)}
.header-row{height:88px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:0;flex:0 0 auto;min-width:0}
.brand-logo{width:164px!important;height:64px!important;max-height:64px!important;max-width:100%;object-fit:contain;object-position:left center;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;filter:drop-shadow(0 3px 5px rgba(14,42,72,.08));display:block}
.brand-logo-fallback{width:58px!important;height:58px!important;object-fit:contain}
.brand-tag{display:block;margin-left:12px;padding-left:13px;border-left:1px solid #e4e9ef;color:#78879a;font-size:8px;line-height:1.55;letter-spacing:1.18px;font-weight:800;max-width:118px}
.brand-tag i{font-style:normal;color:#c39b22}
.nav{display:flex;align-items:center;justify-content:center;gap:clamp(15px,2vw,29px);margin-left:auto}
.nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:#53657a;font-size:14px;font-weight:750;letter-spacing:.05px;white-space:nowrap;transition:color .2s}
.nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:2px;border-radius:5px;background:var(--brand-gold);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.nav a:hover,.nav a.active{color:var(--brand-blue)}
.nav a:hover:after,.nav a.active:after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:9px;margin-left:12px}
.icon-btn{position:relative;display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;background:#fff;border:1px solid #e3e9f0;border-radius:14px;color:var(--brand-blue);box-shadow:0 3px 9px rgba(15,46,80,.035);transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}
.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-btn:hover{transform:translateY(-2px);border-color:#d8bd66;background:#fffaf0;box-shadow:0 7px 18px rgba(14,49,83,.09)}
.cart-link{background:linear-gradient(145deg,#fff,#fbfaf5)}
.count{position:absolute;top:-6px;right:-5px;min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center;border:2px solid #fff;border-radius:20px;background:var(--brand-gold);color:#263d56;font-size:10px;font-weight:900;line-height:1}
.menu-toggle{display:none}
.mobile-nav{display:none}

/* Buttons */
.btn{min-height:47px;padding:12px 22px;border-radius:12px;border:1px solid transparent;font-size:13px;font-weight:800;letter-spacing:.05px;box-shadow:none;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{color:#172d45;background:linear-gradient(135deg,#ffe37b 0%,#f2c431 45%,#e3af16 100%);border-color:#e8bd2c;box-shadow:0 8px 19px rgba(206,158,20,.20),inset 0 1px rgba(255,255,255,.72)}
.btn-primary:hover{background:linear-gradient(135deg,#ffe998,#f6d04c 48%,#e8b923);box-shadow:0 12px 24px rgba(206,158,20,.25)}
.btn-navy{color:#fff;background:linear-gradient(135deg,#1c5590,#103864);box-shadow:0 8px 18px rgba(17,61,105,.15)}
.btn-navy:hover{background:linear-gradient(135deg,#2467a9,#123d6c);box-shadow:0 11px 23px rgba(17,61,105,.20)}
.btn-outline{background:#fff;color:var(--brand-blue);border-color:#cdd8e4}
.btn-outline:hover{border-color:#b9962a;background:#fffdf6}
.btn-light{background:#fff;color:var(--brand-blue)}
.btn-small{min-height:38px;padding:8px 14px;border-radius:10px;font-size:12px}

/* Typography and reusable headings */
h1,h2,h3,h4{font-family:Manrope,'DM Sans',Arial,sans-serif;color:var(--brand-deep);letter-spacing:-.65px}
h1{font-size:clamp(36px,4.6vw,60px);line-height:1.08;font-weight:850}
h2{font-size:clamp(27px,3.1vw,39px);line-height:1.16;font-weight:820}
h3{font-size:19px;line-height:1.28;font-weight:800}
p{color:var(--muted);line-height:1.75}
.eyebrow{font-size:10px;letter-spacing:1.85px;color:#9b7916;font-weight:900}
.eyebrow:before{width:25px;height:2px;background:linear-gradient(90deg,var(--brand-gold),#d3a31f)}
.section{padding:82px 0}
.section-soft{background:linear-gradient(180deg,#f8fafb,#f5f8fa)}
.section-head{margin-bottom:34px;align-items:end}
.section-head h2{margin:8px 0 0}
.section-head p{max-width:440px;font-size:14px}

/* Homepage hero — editorial, luminous, not over-decorated */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:72px 0 68px;background:linear-gradient(112deg,#fffdf7 0%,#fbf8ec 43%,#eef4f7 100%)}
.hero:before{content:"";position:absolute;z-index:-1;width:590px;height:590px;right:-135px;top:-265px;border:1px solid rgba(255,255,255,.88);border-radius:50%;box-shadow:0 0 0 32px rgba(255,255,255,.24),0 0 0 70px rgba(255,255,255,.15),0 0 0 112px rgba(255,255,255,.10)}
.hero-grid{grid-template-columns:1.04fr .96fr;gap:62px}
.hero-copy{position:relative;z-index:2}
.hero-copy h1{max-width:610px;margin:17px 0 19px;letter-spacing:-2px}
.hero-copy h1 span{color:var(--brand-blue-2);background:linear-gradient(90deg,#15477e,#b18b20);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-copy p{max-width:510px;color:#617185;font-size:16px;line-height:1.85;margin-bottom:27px}
.hero-actions{gap:12px}
.hero-actions .btn{min-width:154px}
.hero-note{margin-top:28px;color:#728095;font-size:12px;font-weight:650}
.avatar-stack span{border-color:#fffdf7;box-shadow:0 2px 6px rgba(26,57,90,.10)}
.hero-art{isolation:isolate;perspective:1000px}
.hero-art:before{content:"";position:absolute;inset:8% 5% 0 5%;z-index:-1;border-radius:42px;background:linear-gradient(140deg,rgba(255,255,255,.82),rgba(225,235,240,.25));filter:blur(2px);transform:rotate(2deg)}
.hero-art img{position:relative;width:100%;border:1px solid rgba(255,255,255,.88);border-radius:30px;box-shadow:0 26px 65px rgba(15,48,80,.16),0 4px 12px rgba(15,48,80,.06);transform:rotateY(-4deg) rotateX(1deg);transition:transform .45s ease}
.hero-art:hover img{transform:rotateY(0) rotateX(0) translateY(-3px)}
.float-card{border:1px solid rgba(229,235,240,.85);border-radius:15px;box-shadow:0 16px 38px rgba(13,45,77,.14);backdrop-filter:blur(10px);font-size:11px}
.float-card.one{left:-32px;bottom:48px}
.float-card.two{right:-17px;top:33px}
.float-icon{background:linear-gradient(145deg,#fff9df,#f2d97b);color:var(--brand-blue)}

/* Benefit strip */
.trust-row{border-bottom:1px solid var(--border);background:#fff}
.trust-grid{padding:24px 0;gap:15px}
.trust-item{justify-content:flex-start;gap:13px;padding:0 12px}
.trust-icon{width:44px;height:44px;flex:0 0 44px;border:1px solid #e1eadf;border-radius:14px;background:linear-gradient(145deg,#f2f8f2,#e8f1ec);color:#255c4c}
.trust-item strong{font-size:12px;color:#263e58;font-weight:850}
.trust-item small{font-size:10.5px;color:#8a98a8}

/* Category cards */
.category-grid{gap:18px}
.category-card{min-height:178px;padding:25px 26px;border:1px solid rgba(218,226,233,.75);border-radius:20px;background:linear-gradient(135deg,#f0f7f1,#e8f1eb);box-shadow:0 6px 20px rgba(15,48,80,.035);transition:transform .25s,box-shadow .25s,border-color .25s}
.category-card:nth-child(2){background:linear-gradient(135deg,#fff9e7,#f8f0d6)}
.category-card:nth-child(3){background:linear-gradient(135deg,#f0f4fb,#e9eef7)}
.category-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:#d9c57d}
.category-card .cat-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.8);border-radius:17px;background:rgba(255,255,255,.68);box-shadow:0 5px 12px rgba(15,48,80,.06);font-size:28px}
.category-card h3{font-size:18px;margin:13px 0 5px}
.category-card p{font-size:12px;color:#708092}
.category-card .arrow{width:38px;height:38px;right:22px;bottom:21px;color:var(--brand-blue);border:1px solid rgba(211,221,230,.75);box-shadow:0 5px 12px rgba(15,48,80,.07);transition:transform .2s,background .2s}
.category-card:hover .arrow{transform:translate(2px,-2px);background:#fff5cf}

/* Product cards */
.product-grid{gap:19px}
.product-card{border:1px solid #e5eaf0;border-radius:19px;box-shadow:0 5px 18px rgba(13,43,73,.035);transition:transform .28s,box-shadow .28s,border-color .28s;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
.product-card:hover{transform:perspective(900px) rotateX(0) rotateY(0) translateY(-6px);border-color:#d9c779;box-shadow:0 19px 42px rgba(11,40,72,.12)}
.product-image{padding:15px;background:radial-gradient(circle at 50% 42%,#fff 0,#f7f9f8 62%,#eef3f1 100%);aspect-ratio:1/1;overflow:hidden}
.product-image:after{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.72);border-radius:14px;pointer-events:none}
.product-image img{position:relative;z-index:1;transition:transform .4s ease}
.product-card:hover .product-image img{transform:scale(1.055)}
.product-badge{z-index:2;left:14px;top:14px;padding:5px 10px;background:rgba(255,249,225,.95);border:1px solid rgba(224,194,94,.4);color:#725810;font-size:9px;letter-spacing:.35px;text-transform:uppercase}
.product-info{padding:16px 16px 17px}
.product-category{font-size:9px;letter-spacing:1.15px;color:#8b99a8}
.product-info h3{min-height:44px;font-size:14px;line-height:1.4;margin:7px 0 12px;color:#203c5a}
.product-info h3 a:hover{color:var(--brand-blue-2)}
.rating{color:#d2a321;font-size:10px;letter-spacing:1px}
.rating span{color:#8b99a8;letter-spacing:0}
.product-bottom{padding-top:10px;border-top:1px solid #edf0f3}
.price{font-size:17px;color:var(--brand-blue);font-weight:900;white-space:nowrap}
.old-price{font-size:10px;color:#9aa6b3}
.add-btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:74px;height:36px;padding:0 12px;border:1px solid #123f73;border-radius:10px;background:linear-gradient(135deg,#1c5794,#0f3765);color:#fff;font-size:12px;font-weight:800;box-shadow:0 5px 12px rgba(18,65,122,.14);transition:transform .2s,box-shadow .2s,background .2s}
.add-btn:hover{transform:translateY(-2px);background:linear-gradient(135deg,#f7d65c,#e9b922);border-color:#e7bd37;color:#233b55;box-shadow:0 8px 15px rgba(194,147,12,.2)}
.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Feature promo and story */
.promo{position:relative;border-radius:26px;padding:48px 52px;background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.12),transparent 28%),linear-gradient(120deg,#0b2d52,#174d83 60%,#0d3159);box-shadow:0 18px 40px rgba(10,40,72,.14)}
.promo:after{content:"";position:absolute;right:12%;top:-115px;width:290px;height:290px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.045),0 0 0 58px rgba(255,255,255,.03);pointer-events:none}
.promo h2{max-width:570px;color:#fff}
.promo p{color:#d0dfec}
.promo-art{position:relative;z-index:1;color:#f7d46b;text-shadow:0 8px 25px rgba(0,0,0,.18);transform:rotate(-8deg)}
.story-grid{gap:62px}
.story-image{padding:17px;border:1px solid #e3ece6;border-radius:26px;background:linear-gradient(145deg,#f0f7f1,#e7f0eb);box-shadow:var(--shadow-md)}
.story-image img{border-radius:18px}
.check-list div{font-size:13px;color:#4f6277}
.check{background:#eaf4ed;color:#26724f;border:1px solid #d5e9da}

/* Page title band and breadcrumbs */
.page-hero{position:relative;isolation:isolate;overflow:hidden;padding:43px 0 39px;background:linear-gradient(110deg,#fffaf0 0%,#f5f7f4 55%,#edf3f8 100%);border-bottom:1px solid #e7ecf0}
.page-hero:before{content:"";position:absolute;z-index:-1;right:8%;top:-180px;width:370px;height:370px;border:1px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 0 0 25px rgba(255,255,255,.3),0 0 0 55px rgba(255,255,255,.18)}
.page-hero:after{content:"";position:absolute;z-index:-1;right:19%;bottom:-75px;width:130px;height:130px;border-radius:50%;background:rgba(242,196,49,.08);filter:blur(2px)}
.page-hero .container{position:relative;z-index:1}
.page-hero h1{max-width:760px;font-size:clamp(30px,3.3vw,40px);letter-spacing:-1.2px;margin:9px 0 8px}
.page-hero p{max-width:640px;margin:0;color:#748397;font-size:13px}
.breadcrumbs{font-size:11px;color:#8a98a8;letter-spacing:.1px}
.breadcrumbs a{color:var(--brand-blue);font-weight:750}
.breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}

/* Shop listing and filters */
.shop-layout{grid-template-columns:245px minmax(0,1fr);gap:28px}
.sidebar{position:sticky;top:115px;border:1px solid var(--border);border-radius:17px;padding:23px;background:#fff;box-shadow:var(--shadow-sm)}
.sidebar h3{font-size:15px;color:#27445f}
.filter-group{border-bottom:1px solid #edf0f3}
.filter-option{font-size:12px;line-height:1.5;color:#627489;cursor:pointer}
.filter-option:hover{color:var(--brand-blue)}
.filter-option input{width:15px;height:15px;accent-color:var(--brand-blue)}
.shop-toolbar{gap:12px}
.search-field{max-width:420px;min-height:46px;border-radius:12px;background:#fff;border-color:#e1e7ed;box-shadow:0 3px 10px rgba(15,48,80,.025)}
.search-field:focus-within{border-color:#d3b454;box-shadow:0 0 0 3px rgba(242,196,49,.12)}
.search-field input{font-size:13px;color:var(--ink)}
.select{min-height:46px;border-radius:12px;border-color:#e1e7ed;color:#4f6278;font-size:12px;background:#fff}
#resultCount{font-size:11px;color:#8492a2}

/* Product detail */
.detail-grid{gap:55px;align-items:center}
.detail-image{position:relative;border:1px solid #e8edf1;border-radius:24px;background:radial-gradient(circle at 50% 38%,#fff,#f3f7f5 66%,#e9f0ed);box-shadow:var(--shadow-sm);padding:36px}
.detail-image:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.85);border-radius:17px;pointer-events:none}
.detail-image img{position:relative;z-index:1;max-height:520px}
.detail-info h1{font-size:clamp(30px,3.1vw,39px);line-height:1.18;letter-spacing:-1.1px}
.detail-price{font-size:29px;color:var(--brand-blue);font-weight:900}
.detail-desc{font-size:14px;line-height:1.85}
.detail-actions{gap:12px;align-items:center}
.qty-control{border:1px solid #e1e7ed;border-radius:11px;background:#fff;overflow:hidden}
.qty-control button{width:37px;height:42px;color:var(--brand-blue);font-weight:800}
.qty-control input{width:38px;font-weight:800;color:#28425e}
.meta-list{margin-top:23px;border-top:1px solid #e9edf1;padding-top:17px;color:#758496;font-size:11px;line-height:2}
.meta-list strong{color:#41576e}
.tabs{gap:22px;border-bottom:1px solid var(--border)}
.tab{font-size:12px;color:#79889a;padding:12px 0}
.tab.active{color:var(--brand-blue);border-color:var(--brand-gold)}
.panel-card{padding:24px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}

/* Cart, order summary and checkout */
.cart-layout,.checkout-layout{gap:26px;align-items:start}
.cart-list,.summary-card,.form-card,.account-content,.info-card{border-color:#e5eaf0;border-radius:17px;box-shadow:var(--shadow-sm)}
.cart-list{padding:18px;background:#fff}
.cart-row{grid-template-columns:88px minmax(0,1fr) 118px 94px 32px;gap:15px;padding:17px 0;border-bottom:1px solid #edf0f3}
.cart-row img{width:88px;height:88px;border-radius:14px;background:#f2f6f4;object-fit:contain}
.cart-row h3{font-size:14px;margin:0 0 5px}
.cart-row small{font-size:10px;color:#8c99a8}
.cart-row .price{font-size:14px}
.remove-btn{width:31px;height:31px;border-radius:9px;background:#fff5f2;color:#b95d4a}
.summary-card{position:sticky;top:112px;padding:23px;background:linear-gradient(180deg,#fff,#fbfcfd)}
.summary-card h3{font-size:17px;margin-bottom:17px}
.summary-line{font-size:12px;color:#758396}
.summary-line strong{color:#2b425d}
.summary-line.total{border-top:1px solid #e8edf1;margin-top:14px;padding-top:15px;font-size:14px}
.summary-line.total strong{font-size:20px;color:var(--brand-blue)}
.summary-card .btn{width:100%;margin-top:15px}
.checkout-layout{grid-template-columns:minmax(0,1.5fr) minmax(290px,.8fr)}
.form-card{padding:24px;background:#fff;margin-bottom:17px}
.form-card h3{font-size:16px;margin-bottom:19px}
.form-grid{gap:15px}
.form-field label{display:block;margin-bottom:6px;color:#3c526a;font-size:11px;font-weight:800}
.form-field input,.form-field select,.form-field textarea,.newsletter-form input{min-height:45px;border:1px solid #dfe6ed;border-radius:10px;background:#fff;color:#24384d;padding:11px 13px;font-size:13px;transition:border-color .18s,box-shadow .18s}
.form-field textarea{min-height:105px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.newsletter-form input:focus{outline:none;border-color:#c8a949;box-shadow:0 0 0 3px rgba(242,196,49,.12)}
.radio-card{border:1px solid #e2e8ef;border-radius:12px;padding:13px 14px;background:#fff}
.radio-card:has(input:checked){border-color:#d6bb62;background:#fffaf0;box-shadow:0 0 0 2px rgba(242,196,49,.10)}

/* Account, forms, help and legal content */
.auth-wrap{padding:58px 0;background:radial-gradient(circle at 50% 0%,#fff9e8,#f4f7f9 68%)}
.auth-card{width:min(100%,480px);padding:34px;border:1px solid #e4eaf0;border-radius:20px;background:#fff;box-shadow:0 20px 50px rgba(13,43,73,.09)}
.auth-card h1{font-size:29px;letter-spacing:-.8px;margin:11px 0}
.auth-card .btn{width:100%;margin-top:17px}
.auth-foot{margin:17px 0 0;text-align:center;font-size:12px}
.auth-foot a{color:var(--brand-blue);font-weight:800}
.account-layout{grid-template-columns:220px minmax(0,1fr);gap:24px}
.account-nav{align-self:start;padding:10px;border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:var(--shadow-sm)}
.account-nav a{display:flex;align-items:center;min-height:42px;padding:9px 12px;border-radius:9px;color:#627389;font-size:12px;font-weight:750}
.account-nav a:hover,.account-nav a.active{background:#fff8df;color:var(--brand-blue)}
.account-content{padding:25px;background:#fff}
.account-content h2{font-size:26px}
.stat-card{border:1px solid #e5eaf0;border-radius:13px;background:linear-gradient(145deg,#fff,#f7f9fb);padding:18px}
.stat-card strong{color:var(--brand-blue);font-size:27px}
.content-grid{gap:17px}
.info-card{padding:23px;background:#fff}
.info-card h3{font-size:16px}
.info-card p{font-size:12px}
.info-card .info-icon{background:linear-gradient(145deg,#f0f6f1,#e5efe9);border:1px solid #e0ebe3;color:#2f6a54}
.faq-item{border-bottom:1px solid #e8edf1;padding:17px 0}
.faq-item summary{color:#304a64;font-size:13px;font-weight:800;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:8px;background:#f5f7f9;color:var(--brand-blue);font-size:17px}
.faq-item[open] summary:after{content:"−";background:#fff5d6}
.faq-item p{font-size:12px;max-width:760px}
.policy-content{padding:5px 0 15px;max-width:880px}
.policy-content h2{margin:28px 0 9px;padding-top:5px;font-size:20px;color:#294761}
.policy-content p,.policy-content li{font-size:13px;line-height:1.85}
.empty-state{padding:38px 25px;border:1px dashed #d7e0e8;border-radius:17px;background:#fbfcfd;text-align:center}
.empty-state h3{font-size:18px}
.empty-state p{font-size:12px}
.empty-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border-radius:18px;background:#fff4cc;color:#8f7018;font-size:25px}

/* Newsletter and final footer */
.newsletter{position:relative;overflow:hidden;padding:45px 0;background:linear-gradient(110deg,#fff7d9,#fffaf0 48%,#f0f5f2);border-top:1px solid #f0e8c9}
.newsletter:after{content:"";position:absolute;right:7%;top:-115px;width:240px;height:240px;border:1px solid rgba(255,255,255,.8);border-radius:50%;box-shadow:0 0 0 23px rgba(255,255,255,.2),0 0 0 48px rgba(255,255,255,.12)}
.newsletter-inner{position:relative;z-index:1}
.newsletter h2{font-size:26px;margin-bottom:7px}
.newsletter p{font-size:12px}
.newsletter-form{max-width:470px;padding:5px;border:1px solid rgba(219,207,158,.75);border-radius:14px;background:rgba(255,255,255,.72);box-shadow:0 7px 17px rgba(122,97,24,.06)}
.newsletter-form input{border:0;background:transparent;box-shadow:none!important;min-width:0}
.newsletter-form .btn{min-height:43px;white-space:nowrap}
.footer{position:relative;overflow:hidden;padding:48px 0 20px;background:radial-gradient(circle at 88% 0%,rgba(242,196,49,.12),transparent 23%),linear-gradient(125deg,#071d36 0%,#0d3158 58%,#092747 100%);border-top:3px solid #e9bd31;color:#d7e1eb}
.footer:after{content:"";position:absolute;right:-145px;bottom:-220px;width:420px;height:420px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 36px rgba(255,255,255,.025),0 0 0 75px rgba(255,255,255,.018);pointer-events:none}
.footer .container{position:relative;z-index:1}
.footer-topline{display:flex;align-items:center;gap:14px;margin-bottom:30px;color:#f3d66d;font-size:9px;font-weight:900;letter-spacing:1.7px}
.footer-rule{height:1px;flex:1;background:rgba(255,255,255,.14)}
.footer-note{color:#aebdd0;font-size:9px;font-weight:650;letter-spacing:1px}
.footer-grid{grid-template-columns:1.45fr 1fr 1fr 1.25fr;gap:40px}
.footer-brand-block p{max-width:300px;margin:13px 0 17px;color:#b7c6d6;font-size:12px;line-height:1.8}
.footer .brand{display:inline-flex}
.footer .brand-logo{width:168px!important;height:67px!important;max-height:67px!important;border-radius:0!important;background:transparent!important;padding:0!important;filter:drop-shadow(0 4px 8px rgba(0,0,0,.16))}
.footer .brand-logo-fallback{width:56px!important;height:56px!important}
.footer h4{margin:4px 0 16px;color:#fff;font-size:13px;letter-spacing:.2px}
.footer-links{gap:9px}
.footer-links a{color:#bdcada;font-size:11px;transition:color .18s,transform .18s}
.footer-links a:hover{color:#f5d76c;transform:translateX(3px)}
.footer-contact-cta{display:inline-flex;align-items:center;gap:8px;color:#f4d56a;font-size:11px;font-weight:850}
.footer-contact-cta span{font-size:16px;transition:transform .2s}
.footer-contact-cta:hover span{transform:translate(3px,-3px)}
.footer-contact-list{display:grid;gap:13px;color:#bdcada;font-size:11px;line-height:1.65}
.footer-contact-list>a,.footer-contact-list>div{display:flex;align-items:flex-start;gap:10px}
.footer-contact-list a{color:#bdcada}
.footer-contact-list a:hover{color:#f5d76c}
.footer-contact-icon{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border:1px solid rgba(255,255,255,.16);border-radius:8px;color:#f4d46a;font-size:12px}
.footer-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:32px;padding-top:17px;border-top:1px solid rgba(255,255,255,.14);color:#aab9c9;font-size:10px}
.footer-legal{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.footer-legal a{color:#d8c783}
.footer-legal a:hover{color:#fff}

/* Floating WhatsApp action and toast */
.whatsapp-float{z-index:70;display:flex;align-items:center;gap:9px;padding:8px 14px 8px 9px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:linear-gradient(135deg,#22b66b,#0e9653);box-shadow:0 10px 25px rgba(13,112,66,.22);color:#fff}
.whatsapp-float span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.18);font-size:17px}
.whatsapp-float small{font-size:10px;font-weight:850;letter-spacing:.1px}
.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(13,112,66,.27)}
.toast{border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0b2b4e;box-shadow:0 15px 35px rgba(0,0,0,.22);font-weight:650}

/* Mobile navigation — full-width app-style bottom dock, 4 primary actions */
.app-bottom-nav{display:none}
@media(max-width:1080px){
  .container{width:min(100% - 42px,960px)}
  .header-row{gap:18px}
  .brand-logo{width:146px!important}
  .brand-tag{font-size:7px;letter-spacing:.85px;max-width:105px;margin-left:8px;padding-left:9px}
  .nav{gap:15px}
  .nav a{font-size:12.5px}
  .header-actions{gap:7px;margin-left:4px}
  .icon-btn{width:40px;height:40px;flex-basis:40px}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-grid{gap:26px}
}
@media(max-width:820px){
  .topbar-contact{gap:8px}
  .topbar-contact a:first-child{display:none}
  .header-row{height:76px}
  .brand-logo{width:140px!important;height:57px!important;max-height:57px!important}
  .brand-tag{max-width:100px;font-size:7px}
  .nav{display:none}
  .header-actions{margin-left:auto}
  .menu-toggle{display:grid}
  .main-header .mobile-nav{position:absolute;display:none;top:76px;left:14px;right:14px;z-index:85;max-height:min(72vh,580px);overflow:auto;padding:13px;border:1px solid #e0e7ee;border-top:0;border-radius:0 0 18px 18px;background:rgba(255,255,255,.985);box-shadow:0 22px 40px rgba(7,31,57,.18);backdrop-filter:blur(18px)}
  .main-header .mobile-nav.open{display:grid;gap:4px}
  .mobile-nav a{display:flex;align-items:center;min-height:48px;padding:10px 13px;border:1px solid transparent;border-radius:11px;color:#334e69;font-size:15px;font-weight:800;transition:background .18s,border .18s}
  .mobile-nav a:after{content:"›";margin-left:auto;color:#b28b20;font-size:22px;font-weight:500}
  .mobile-nav a.active,.mobile-nav a:hover{border-color:#eadcae;background:linear-gradient(100deg,#fff8df,#f7f2e3);color:var(--brand-blue)}
  .header-actions .account-link{display:none}
  .hero{padding:52px 0 48px}
  .hero-grid{grid-template-columns:1fr 1fr;gap:28px}
  .hero-copy h1{font-size:clamp(34px,6vw,48px)}
  .hero-copy p{font-size:14px}
  .section{padding:62px 0}
  .shop-layout{grid-template-columns:210px minmax(0,1fr);gap:18px}
  .sidebar{top:100px;padding:16px}
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-grid{gap:28px}
  .cart-layout,.checkout-layout{grid-template-columns:1fr;gap:18px}
  .summary-card{position:static}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:25px}
  .footer-grid>div:last-child{grid-column:2/4}
}
@media(max-width:640px){
  body{padding-bottom:95px}
  .container{width:calc(100% - 30px)}
  .topbar{padding:7px 0}
  .topbar-inner{justify-content:center;min-height:20px}
  .topbar-message{font-size:9px;letter-spacing:.25px}
  .topbar-contact{display:none}
  .header-row{height:70px;gap:5px}
  .brand{max-width:calc(100% - 144px)}
  .brand-logo{width:124px!important;height:52px!important;max-height:52px!important}
  .brand-tag{max-width:92px;font-size:6px;letter-spacing:.6px;line-height:1.35;margin-left:6px;padding-left:7px}
  .header-actions{gap:6px}
  .icon-btn{width:37px;height:37px;flex-basis:37px;border-radius:11px}
  .icon-btn svg{width:17px;height:17px}
  .menu-toggle{display:grid}
  .main-header .mobile-nav{top:70px;left:9px;right:9px;max-height:calc(78vh - 70px);padding:10px}
  .mobile-nav a{min-height:47px;font-size:14px}
  .hero{padding:39px 0 35px}
  .hero-grid{grid-template-columns:1fr;gap:24px}
  .hero-copy h1{max-width:520px;font-size:clamp(35px,9vw,46px);letter-spacing:-1.55px;margin:13px 0}
  .hero-copy p{font-size:13px;line-height:1.75;margin-bottom:20px}
  .hero-actions{gap:9px}
  .hero-actions .btn{min-width:0;flex:1;padding:11px 13px;font-size:11px}
  .hero-note{font-size:10px;margin-top:19px}
  .hero-art{margin:0 8px;padding-bottom:12px}
  .hero-art img{border-radius:20px;transform:none}
  .float-card{padding:8px 10px;border-radius:11px;font-size:9px}
  .float-card.one{left:-8px;bottom:19px}
  .float-card.two{right:-8px;top:11px}
  .float-icon{width:25px;height:25px;border-radius:8px;font-size:12px}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:13px 0}
  .trust-item{padding:5px 2px;gap:8px}
  .trust-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px;font-size:14px}
  .trust-item strong{font-size:9.5px}
  .trust-item small{font-size:8.5px}
  .section{padding:49px 0}
  .section-head{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:21px}
  .section-head h2{font-size:25px}
  .section-head p{font-size:11.5px}
  .category-grid{grid-template-columns:1fr;gap:10px}
  .category-card{min-height:130px;padding:17px;border-radius:15px}
  .category-card .cat-icon{width:43px;height:43px;font-size:22px;border-radius:12px}
  .category-card h3{font-size:14px;margin:8px 0 3px}
  .category-card p{font-size:10px}
  .category-card .arrow{right:15px;bottom:15px;width:31px;height:31px}
  .product-grid,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .product-card{border-radius:13px}
  .product-image{padding:8px;aspect-ratio:1/1}
  .product-image:after{inset:5px;border-radius:9px}
  .product-badge{top:8px;left:8px;padding:4px 7px;font-size:7px}
  .product-info{padding:10px}
  .product-category{font-size:7.5px;letter-spacing:.6px}
  .product-info h3{font-size:11px;min-height:35px;margin:6px 0 8px;line-height:1.35}
  .rating{font-size:8px;margin-bottom:7px}
  .price{font-size:13px}
  .old-price{font-size:8px;margin-left:2px}
  .product-bottom{gap:5px;padding-top:8px}
  .add-btn{height:31px;min-width:53px;padding:0 8px;border-radius:8px;font-size:10px}
  .promo{grid-template-columns:1fr;gap:12px;padding:27px 20px;border-radius:18px}
  .promo h2{font-size:23px}
  .promo p{font-size:11px}
  .promo-art{display:none}
  .story-grid{grid-template-columns:1fr;gap:24px}
  .story-image{padding:10px;border-radius:17px}
  .newsletter{padding:30px 0}
  .newsletter-inner{align-items:flex-start;flex-direction:column;gap:13px}
  .newsletter h2{font-size:21px}
  .newsletter p{font-size:11px}
  .newsletter-form{width:100%;max-width:none;flex-direction:column;padding:8px;border-radius:13px}
  .newsletter-form input{width:100%;min-height:42px}
  .newsletter-form .btn{width:100%}
  .page-hero{padding:25px 0 23px}
  .page-hero h1{font-size:27px;margin:7px 0}
  .page-hero p{font-size:11px}
  .breadcrumbs{font-size:9px}
  .shop-layout{grid-template-columns:1fr;gap:13px}
  .sidebar{position:static;display:block;padding:13px;border-radius:13px}
  .filter-group{padding-bottom:9px;margin-bottom:9px}
  .sidebar h3{font-size:12px;margin-bottom:7px}
  .filter-option{display:inline-flex;margin:2px 8px 2px 0;padding:5px 8px;border:1px solid #e6ebf0;border-radius:8px;background:#fff;font-size:9px}
  .filter-option input{width:12px;height:12px}
  .shop-toolbar{flex-wrap:wrap;align-items:stretch;margin-bottom:13px}
  .search-field{max-width:none;flex-basis:100%;min-height:41px;border-radius:10px}
  .select{min-height:41px;flex:1;border-radius:10px;font-size:10px}
  #resultCount{font-size:9px!important;margin-bottom:10px!important}
  .detail-grid{grid-template-columns:1fr;gap:18px}
  .detail-image{padding:15px;border-radius:17px}
  .detail-image img{max-height:320px}
  .detail-info h1{font-size:25px}
  .detail-price{font-size:23px}
  .detail-desc{font-size:12px}
  .detail-actions{flex-wrap:wrap}
  .detail-actions .btn{flex:1}
  .cart-layout,.checkout-layout{grid-template-columns:1fr;gap:13px}
  .cart-list,.summary-card{padding:13px;border-radius:14px}
  .cart-row{grid-template-columns:59px minmax(0,1fr) 27px;gap:8px;padding:12px 0}
  .cart-row img{width:59px;height:59px;border-radius:10px}
  .cart-row h3{font-size:11px}
  .cart-row small{font-size:8px}
  .cart-row .cart-price{font-size:11px}
  .cart-row .cart-qty{grid-column:2;margin-top:-4px}
  .cart-row .cart-qty .qty-control button{width:27px;height:30px}
  .cart-row .cart-qty .qty-control input{width:28px}
  .cart-row>.price{grid-column:2;font-size:11px}
  .cart-row .remove-btn{grid-column:3;grid-row:1;width:26px;height:26px}
  .summary-card h3{font-size:14px}
  .form-card,.auth-card,.account-content,.info-card{padding:16px;border-radius:14px}
  .form-card h3{font-size:14px;margin-bottom:14px}
  .form-grid{grid-template-columns:1fr;gap:11px}
  .form-field.full{grid-column:auto}
  .form-field label{font-size:10px}
  .form-field input,.form-field select,.form-field textarea{min-height:42px;font-size:12px}
  .auth-wrap{padding:30px 0}
  .auth-card{padding:21px}
  .auth-card h1{font-size:25px}
  .account-layout{grid-template-columns:1fr;gap:12px}
  .account-nav{display:flex;gap:4px;overflow:auto;padding:7px}
  .account-nav a{white-space:nowrap;min-height:36px;padding:8px 10px;font-size:10px}
  .account-content{overflow:hidden}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .stat-card{padding:12px}
  .stat-card strong{font-size:21px}
  .stat-card small{font-size:9px}
  .content-grid{grid-template-columns:1fr;gap:10px}
  .info-card .info-icon{width:38px;height:38px;border-radius:11px;font-size:17px}
  .faq-item{padding:13px 0}
  .faq-item summary{font-size:11px}
  .faq-item p{font-size:10px}
  .policy-content h2{font-size:17px}
  .policy-content p,.policy-content li{font-size:11px}
  .empty-state{padding:27px 14px}
  .footer{padding:36px 0 115px}
  .footer-topline{gap:9px;margin-bottom:22px;font-size:8px;letter-spacing:1px}
  .footer-note{font-size:7px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
  .footer-grid>div:first-child{grid-column:1/-1}
  .footer-grid>div:last-child{grid-column:1/-1}
  .footer .brand-logo{width:145px!important;height:58px!important;max-height:58px!important}
  .footer-brand-block p{max-width:100%;font-size:10px;margin:8px 0 10px}
  .footer h4{font-size:11px;margin-bottom:9px}
  .footer-links{gap:7px}
  .footer-links a,.footer-contact-list{font-size:9px;line-height:1.65}
  .footer-contact-list{gap:8px}
  .footer-contact-icon{width:21px;height:21px;flex-basis:21px;font-size:10px}
  .footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:22px;padding-top:13px;font-size:8px}
  .footer-legal{gap:12px;font-size:8px}
  .whatsapp-float{right:12px;bottom:101px;width:43px;height:43px;padding:0;justify-content:center;border-radius:50%}
  .whatsapp-float span{width:100%;height:100%;font-size:18px}
  .whatsapp-float small{display:none}
  .app-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;left:10px;right:10px;bottom:8px;z-index:90;height:72px;padding:5px 7px calc(5px + env(safe-area-inset-bottom));border:1px solid rgba(222,230,237,.95);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 13px 34px rgba(8,33,62,.18),inset 0 1px #fff;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}
  .app-bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:59px;border-radius:13px;color:#758398;transition:background .18s,color .18s}
  .app-bottom-nav a[aria-current="page"]{color:var(--brand-blue);background:linear-gradient(145deg,#fff9e4,#f8edc8);box-shadow:inset 0 1px #fff,0 4px 10px rgba(143,111,25,.10)}
  .app-nav-icon{display:grid;place-items:center;width:25px;height:25px;font-size:21px;line-height:1}
  .app-nav-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .app-bottom-nav small{font-size:10px;line-height:1.2;font-weight:850;letter-spacing:.1px}
  .app-nav-count{position:absolute;top:2px;right:calc(50% - 23px);min-width:15px;height:15px;padding:0 3px;border-radius:20px;background:var(--brand-gold);color:#213b55;border:1px solid #fff;font-size:8px;font-style:normal}
  .toast{bottom:92px;left:14px;right:14px;text-align:center;font-size:11px}
}
@media(max-width:380px){
  .brand-logo{width:112px!important}
  .brand-tag{max-width:77px;font-size:5.4px;letter-spacing:.3px}
  .header-actions{gap:4px}
  .icon-btn{width:34px;height:34px;flex-basis:34px}
  .product-info{padding:8px}
  .product-info h3{font-size:10px}
  .price{font-size:12px}
  .app-bottom-nav small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
@media print{
  .topbar,.main-header,.newsletter,.footer,.app-bottom-nav,.whatsapp-float{display:none!important}
  body{padding:0!important;background:#fff!important}
}

/* Small finishing details used by the product preview and catalogue pages */
.product-preview-note{margin:13px 0;padding:10px 12px;border:1px solid #efe4bf;border-radius:10px;background:#fffbef;color:#806a2c;font-size:10.5px;line-height:1.6}
.product-information-block{margin-top:52px}
.product-information-block .panel-card[hidden]{display:none!important}
.product-information-block .panel-card{margin-top:17px}
.checkout-empty{padding:10px 0;color:#718095;font-size:12px}
.checkout-empty a{color:var(--brand-blue);font-weight:800}
.filter-option.is-selected{color:var(--brand-blue);font-weight:800}
@media(max-width:640px){.product-information-block{margin-top:35px}.product-preview-note{font-size:9px;padding:8px 9px}}
.catalogue-preview-note{display:flex;align-items:flex-start;gap:11px;margin-top:24px;margin-bottom:-35px;padding:12px 14px;border:1px solid #eee3bf;border-radius:12px;background:#fffdf6}
.catalogue-preview-note p{margin:0;color:#7c6a3c;font-size:11px;line-height:1.6}
.catalogue-preview-note strong{color:#5d4b20}
.catalogue-note-icon{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#f7edca;color:#806414;font-size:12px;font-weight:900}
@media(max-width:640px){.catalogue-preview-note{margin-top:15px;margin-bottom:-24px;padding:9px 10px}.catalogue-preview-note p{font-size:9px}}
.catalogue-subnote{margin:-18px 0 22px;color:#8996a4;font-size:10px;line-height:1.6}
@media(max-width:640px){.catalogue-subnote{margin:-10px 0 15px;font-size:8.5px}}
