:root{--violet:#7a50ff;--violet2:#6a58ee;--blue:#4f99ea;--cyan:#43c9dc;--ink:#111827;--muted:#667085;--line:#e4e7ec;--soft:#f8f9fb;--green:#16a34a;--danger:#dc2626;--radius:18px;--shadow:0 14px 40px rgba(38,45,74,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.45}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1440px,calc(100% - 44px));margin-inline:auto}.site-header{background:#fff;position:relative;z-index:30}.header-main{height:92px;display:grid;grid-template-columns:280px minmax(380px,1fr) 310px;gap:28px;align-items:center}.brand{width:225px;display:block}.brand img{width:100%;height:70px;object-fit:contain;object-position:left center}.searchbar{height:54px;border:1px solid #d9dde5;border-radius:17px;display:flex;align-items:center;overflow:hidden;background:#fff}.searchbar input{border:0;outline:0;flex:1;height:100%;padding:0 18px;color:var(--ink);background:transparent}.searchbar button{width:58px;height:100%;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.header-actions{display:flex;justify-content:flex-end;gap:34px}.header-actions>a{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:13px;min-width:55px}.cart-link b{position:absolute;right:7px;top:-8px;background:#315dff;color:#fff;border:2px solid #fff;border-radius:100px;min-width:21px;height:21px;line-height:17px;text-align:center;font-size:11px}.nav-wrap{border-top:1px solid #edf0f4;border-bottom:1px solid #e5e8ed}.main-nav{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-weight:650}.main-nav a{white-space:nowrap;padding:18px 4px}.main-nav a.active,.main-nav a:hover{color:var(--violet)}.main-nav .accent{color:var(--violet)}.main-nav .cyan{color:#2868f8}.mobile-menu{display:none;border:0;background:transparent}.flash{margin-top:14px;padding:12px 16px;border-radius:12px;font-weight:650}.flash-success{background:#ecfdf3;color:#166534}.flash-error{background:#fff1f2;color:#9f1239}.flash-info{background:#eef6ff;color:#174ea6}.hero{margin-top:22px;background:linear-gradient(110deg,#faf9ff 0%,#f5f6ff 50%,#eaf8ff 100%);border-radius:18px;min-height:485px;display:grid;grid-template-columns:45% 55%;overflow:hidden}.hero-copy{padding:56px 0 48px 62px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero h1{font-size:49px;line-height:1.1;letter-spacing:-1.8px;margin:0 0 20px;max-width:620px}.hero p{font-size:18px;line-height:1.65;color:#4b5563;margin:0 0 26px}.hero-actions{display:flex;align-items:center;gap:26px}.btn-primary,.btn-secondary,.btn-outline{border:0;border-radius:13px;padding:15px 24px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{color:#fff;background:linear-gradient(90deg,var(--violet),var(--cyan));box-shadow:0 10px 24px rgba(112,87,244,.18)}.btn-secondary{background:transparent;color:#3959e9;padding-inline:0}.btn-outline{background:#fff;border:1px solid #cfd6ff;color:#4e5aec}.hero-visual{display:flex;align-items:center;justify-content:flex-end;min-width:0}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:23px}.category-card{border:1px solid #dfe3e8;border-radius:16px;padding:12px 12px 16px;background:#fff;transition:.2s}.category-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.category-card img{width:100%;aspect-ratio:1.25/1;object-fit:cover;border-radius:13px}.category-card footer{display:flex;justify-content:space-between;align-items:center;padding:9px 6px 0;font-weight:800;font-size:16px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:26px 4px 12px}.section-title h2{font-size:22px;margin:0;letter-spacing:-.4px}.section-title a{color:#315dff;font-weight:750}.product-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.product-card{border:1px solid #e1e5eb;border-radius:13px;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-width:0}.product-image{display:block;background:#fff;aspect-ratio:1.04/1;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-info{padding:9px 10px 10px;display:flex;flex-direction:column;gap:6px;flex:1}.product-name{font-size:12px;line-height:1.3;min-height:31px}.price-row{display:flex;align-items:center;gap:7px}.price-row strong{color:#315dff;font-size:15px}.price-row del{font-size:11px;color:#98a2b3}.add-btn{width:100%;height:32px;border:1px solid #8893ff;border-radius:8px;background:#fff;color:#4e57ea;font-size:10px;font-weight:800;display:flex;justify-content:center;align-items:center;gap:4px;cursor:pointer;margin-top:auto}.add-btn:hover{background:#f6f5ff}.add-btn:disabled{opacity:.5;cursor:not-allowed}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.benefit{min-height:103px;border:1px solid #e2e6eb;border-radius:15px;display:flex;align-items:center;gap:18px;padding:20px 23px}.benefit>svg{color:var(--violet);flex:0 0 auto}.benefit:nth-child(3)>svg{color:#3672ff}.benefit strong{display:block;font-size:16px;line-height:1.15}.benefit span{display:block;color:#475467;font-size:12px;margin-top:5px}.budget-strip{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:7px;background:linear-gradient(90deg,#f6f3ff,#effbff);border-radius:16px;padding:12px;margin-top:25px}.budget-copy{padding:16px 18px;display:flex;flex-direction:column;justify-content:center}.budget-copy h2{margin:0 0 14px;font-size:23px;line-height:1.1;background:linear-gradient(90deg,var(--violet),var(--cyan));-webkit-background-clip:text;color:transparent}.budget-copy p{margin:0 0 18px;max-width:280px}.budget-strip .product-card{border:0;background:#fff}.budget-strip .product-card .product-image{aspect-ratio:1.2/1}.site-footer{margin:14px 20px 0;border:1px solid #e1e5ea;border-radius:16px 16px 0 0;background:#fff}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr 1.1fr;gap:46px;padding:25px 10px 18px}.footer-logo{width:150px;height:52px;object-fit:contain;object-position:left}.footer-grid h4{margin:0 0 12px;font-size:14px}.footer-grid p{font-size:12px;color:#475467;max-width:250px}.footer-grid a{display:block;font-size:12px;margin:7px 0;color:#344054}.footer-grid>div:last-child p{display:flex;align-items:center;gap:9px;margin:8px 0}.social{font-size:20px;margin-top:16px}.copyright{text-align:center;border-top:1px solid #eef0f4;padding:12px;font-size:11px;color:#667085}.mobile-bottom{display:none}.breadcrumbs{padding-top:20px;display:flex;gap:8px;align-items:center;color:#667085;font-size:13px}.breadcrumbs b{color:var(--ink)}.page-hero{padding:42px 0 28px}.page-hero h1{font-size:42px;line-height:1.1;margin:0 0 12px}.page-hero p{font-size:17px;color:#667085;max-width:700px}.shop-layout{display:grid;grid-template-columns:230px 1fr;gap:28px;padding-bottom:50px}.filters{border:1px solid var(--line);border-radius:16px;padding:18px;height:max-content}.filters h3{margin:0 0 14px}.filters a{display:block;padding:8px 4px;color:#475467}.filters a:hover{color:var(--violet)}.filters label{display:block;margin:12px 0 5px;font-weight:700}.filters input,.filters select{width:100%;border:1px solid #d8dde6;border-radius:10px;padding:10px}.shop-products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.shop-products .product-card .product-name{font-size:14px;min-height:37px}.shop-products .add-btn{height:38px;font-size:12px}.shop-products .price-row strong{font-size:18px}.shop-products .product-info{padding:12px}.empty-state{padding:60px 30px;border:1px dashed #ccd3dd;border-radius:18px;text-align:center;color:#667085}.product-page{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:30px 0 50px}.product-gallery{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.product-gallery img{width:100%;aspect-ratio:1.05/1;object-fit:cover}.product-detail h1{font-size:40px;line-height:1.1;margin:10px 0}.product-detail .category-label{color:var(--violet);font-weight:800}.product-detail .big-price{font-size:30px;color:#315dff;font-weight:900;margin:15px 0}.product-detail .big-price del{font-size:16px;color:#98a2b3;margin-left:10px;font-weight:500}.stock{display:inline-flex;align-items:center;gap:6px;background:#ecfdf3;color:#166534;padding:7px 10px;border-radius:9px;font-weight:750}.product-detail .lead{font-size:16px;color:#475467}.purchase-box{border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:20px}.purchase-row{display:flex;gap:12px}.qty{width:80px;border:1px solid #ccd2dc;border-radius:11px;padding:12px}.purchase-row .btn-primary{flex:1}.trust-list{display:grid;gap:9px;margin-top:18px}.trust-list div{display:flex;gap:10px;align-items:center;color:#475467}.trust-list svg{color:var(--violet)}.cart-layout{display:grid;grid-template-columns:1.6fr .8fr;gap:28px;padding:30px 0 55px}.cart-list{display:grid;gap:12px}.cart-item{border:1px solid var(--line);border-radius:15px;padding:12px;display:grid;grid-template-columns:100px 1fr 100px 90px;align-items:center;gap:16px}.cart-item img{width:100px;height:95px;object-fit:cover;border-radius:12px}.cart-item h3{margin:0 0 5px}.cart-item small{color:#667085}.cart-item input{width:70px;padding:8px;border:1px solid #d5dae3;border-radius:9px}.link-danger{color:var(--danger);border:0;background:none;padding:0;cursor:pointer}.summary{border:1px solid var(--line);border-radius:17px;padding:22px;height:max-content;position:sticky;top:20px}.summary h2{margin-top:0}.sum-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #edf0f4}.sum-total{font-size:20px;font-weight:900;border-bottom:0;padding-top:16px}.summary .btn-primary{width:100%;margin-top:14px}.checkout-grid,.account-grid,.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;padding:25px 0 55px}.panel{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff}.panel h2,.panel h3{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field.full{grid-column:1/-1}.field label{display:block;font-weight:750;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #d6dce5;border-radius:11px;padding:12px 13px;outline:0}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8a7cf6;box-shadow:0 0 0 3px rgba(122,80,255,.08)}.field textarea{min-height:120px;resize:vertical}.auth-wrap{max-width:520px;margin:45px auto 70px}.auth-wrap .panel{padding:30px}.auth-wrap .brand-mini{width:190px;margin-bottom:20px}.auth-wrap .btn-primary{width:100%;margin-top:8px}.auth-meta{text-align:center;color:#667085;margin-top:15px}.auth-meta a{color:#4b56e9;font-weight:800}.account-menu{display:grid;gap:8px;height:max-content}.account-menu a{padding:12px 14px;border-radius:10px;background:#f8f9fb;font-weight:700}.account-menu a:hover{background:#f1efff;color:var(--violet)}.orders-table{width:100%;border-collapse:collapse}.orders-table th,.orders-table td{text-align:left;padding:11px 9px;border-bottom:1px solid #eef0f3;font-size:13px}.badge{display:inline-block;border-radius:999px;padding:5px 9px;background:#f1f3f6;font-size:11px;font-weight:800}.badge-new,.badge-confirmed{background:#eef6ff;color:#1d4ed8}.badge-delivered,.badge-paid{background:#ecfdf3;color:#166534}.badge-cancelled,.badge-returned{background:#fff1f2;color:#9f1239}.legal{max-width:900px;padding:35px 0 70px}.legal h1{font-size:40px}.legal h2{margin-top:30px}.point-hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;padding:40px 0}.point-art{background:linear-gradient(135deg,#f4f1ff,#eafcff);border-radius:24px;min-height:340px;display:grid;place-items:center;color:var(--violet)}.point-art svg{width:120px;height:120px}.point-list{display:grid;gap:13px;margin-top:20px}.point-list div{display:flex;gap:12px;align-items:flex-start}.admin-layout{min-height:100vh;background:#f7f8fb;display:grid;grid-template-columns:240px 1fr}.admin-side{background:#111827;color:#fff;padding:24px 18px}.admin-brand{display:block;background:#fff;border-radius:12px;padding:8px 12px;margin-bottom:28px}.admin-brand img{width:160px;height:48px;object-fit:contain}.admin-side nav{display:grid;gap:7px}.admin-side nav a{padding:11px 12px;border-radius:9px;color:#d9dce5}.admin-side nav a:hover{background:#1f2937;color:#fff}.admin-main{padding:25px 30px;min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.admin-top h1{margin:0;font-size:28px}.admin-top span{color:#667085}.link-btn{border:0;background:#fff;border:1px solid #dbe0e7;border-radius:10px;padding:9px 12px;display:inline-flex;gap:7px;align-items:center;cursor:pointer}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.stat-card span{color:#667085;font-size:13px}.stat-card strong{display:block;font-size:28px;margin-top:5px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;margin-top:18px;overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid #edf0f4;text-align:left;font-size:13px;vertical-align:middle}.admin-table img{width:52px;height:52px;border-radius:8px;object-fit:cover}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-btn{border:1px solid #d9dfea;background:#fff;border-radius:8px;padding:7px 9px;font-size:12px;cursor:pointer}.mini-btn.primary{background:#6256e8;color:#fff;border-color:#6256e8}.mini-btn.danger{color:#b42318}.admin-form{max-width:980px}.admin-form .form-grid{grid-template-columns:repeat(2,1fr)}.admin-form .checks{display:flex;gap:18px;flex-wrap:wrap;padding:10px 0}.admin-form .checks label{display:flex;align-items:center;gap:7px}.admin-form img.preview{width:180px;height:160px;object-fit:cover;border:1px solid var(--line);border-radius:12px}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:50;background:#25d366;color:#fff;border-radius:999px;padding:13px 16px;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.15)}
@media(max-width:1200px){.header-main{grid-template-columns:220px 1fr 260px}.brand{width:190px}.header-actions{gap:18px}.main-nav{overflow:auto;justify-content:flex-start}.product-grid{grid-template-columns:repeat(4,1fr)}.shop-products{grid-template-columns:repeat(3,1fr)}.budget-strip{grid-template-columns:1.5fr repeat(4,1fr)}.footer-grid{gap:25px}}
@media(max-width:900px){body{padding-bottom:62px}.container{width:min(calc(100% - 26px),1000px)}.header-main{height:72px;grid-template-columns:160px 1fr 40px;gap:12px}.brand{width:150px}.brand img{height:54px}.searchbar{height:44px}.header-actions{display:none}.mobile-menu{display:block}.nav-wrap{border-top:0}.main-nav{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;box-shadow:0 18px 30px rgba(0,0,0,.08);padding:12px 18px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:9px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:38px 30px 15px}.hero h1{font-size:38px}.hero-visual{height:310px}.category-grid{grid-template-columns:repeat(3,1fr)}.product-grid{grid-template-columns:repeat(4,1fr)}.benefits{grid-template-columns:repeat(2,1fr)}.budget-strip{grid-template-columns:1fr 1fr 1fr}.budget-copy{grid-row:span 2}.footer-grid{grid-template-columns:repeat(2,1fr)}.shop-layout{grid-template-columns:1fr}.filters{display:none}.shop-products{grid-template-columns:repeat(3,1fr)}.product-page,.checkout-grid,.account-grid,.contact-grid,.point-hero{grid-template-columns:1fr}.cart-layout{grid-template-columns:1fr}.summary{position:static}.admin-layout{grid-template-columns:1fr}.admin-side{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;height:62px;background:#fff;border-top:1px solid #e3e7ee;z-index:40}.mobile-bottom a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:19px}.mobile-bottom span{font-size:10px;margin-top:2px}.whatsapp-float{bottom:76px}}
@media(max-width:640px){.container{width:calc(100% - 22px)}.header-main{grid-template-columns:130px 1fr 34px}.brand{width:125px}.searchbar input{padding:0 10px;font-size:12px}.searchbar button{width:40px}.hero{margin-top:10px;border-radius:14px}.hero-copy{padding:28px 22px 8px}.hero h1{font-size:32px;letter-spacing:-1px}.hero p{font-size:15px}.hero-actions{gap:14px;flex-wrap:wrap}.btn-primary{padding:13px 16px}.hero-visual{height:245px}.category-grid{display:flex;overflow:auto;gap:12px;padding-bottom:5px}.category-card{min-width:175px}.section-title h2{font-size:19px}.product-grid,.shop-products{grid-template-columns:repeat(2,1fr)}.product-card .product-name{font-size:12px}.benefits{grid-template-columns:1fr;gap:10px}.budget-strip{grid-template-columns:1fr 1fr;padding:8px}.budget-copy{grid-column:1/-1;grid-row:auto}.footer-grid{grid-template-columns:1fr 1fr;gap:22px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.site-footer{margin-inline:8px}.page-hero{padding:28px 0 16px}.page-hero h1{font-size:32px}.product-page{gap:22px}.product-detail h1{font-size:30px}.cart-item{grid-template-columns:80px 1fr;gap:10px}.cart-item img{width:80px;height:80px}.cart-item>div:nth-child(3),.cart-item>div:nth-child(4){grid-column:2}.form-grid,.admin-form .form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.stats-grid{grid-template-columns:1fr}.admin-main{padding:18px 12px}.admin-top{align-items:flex-start;gap:10px}.orders-table{min-width:650px}.panel{padding:16px}}

/* ========================================================================== */
/* GEEBIZ 2026 — modern local-commerce refresh                                */
/* ========================================================================== */
:root{
  --violet:#7553ff;
  --violet-deep:#5c3ef0;
  --blue:#5c8ff0;
  --cyan:#43c8da;
  --ink:#111425;
  --muted:#667085;
  --line:#e8eaf2;
  --surface:#fff;
  --surface-soft:#f7f8fc;
  --shadow-sm:0 8px 24px rgba(31,35,67,.07);
  --shadow-md:0 18px 50px rgba(48,43,98,.12);
  --shadow-brand:0 14px 30px rgba(117,83,255,.22);
  --radius:18px;
  --radius-lg:28px;
}

html{scroll-behavior:smooth;background:#f7f8fc}
body{
  background:
    radial-gradient(circle at 8% 0%,rgba(117,83,255,.08),transparent 25rem),
    radial-gradient(circle at 92% 4%,rgba(67,200,218,.08),transparent 26rem),
    linear-gradient(#fff 0 30rem,#fafbfe 56rem,#fff 100%);
  color:var(--ink);
  font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-feature-settings:"kern" 1,"liga" 1;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::selection{background:rgba(117,83,255,.18);color:var(--ink)}
a,button,input,select,textarea{font:inherit}
a{transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
button{transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(117,83,255,.24);outline-offset:3px}

.announcement{background:#111425;color:#fff;font-size:12px;font-weight:700;letter-spacing:.01em}
.announcement .container{min-height:35px;display:flex;align-items:center;justify-content:center;gap:24px}
.announcement span,.announcement a{display:inline-flex;align-items:center;gap:6px}
.announcement a{color:#8ce5ef}
.announcement a:hover{color:#fff}

.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(232,234,242,.88);box-shadow:0 8px 28px rgba(38,41,71,.035)}
.header-main{height:80px}
.brand{width:188px}
.brand img{height:auto;max-height:57px;object-fit:contain}
.searchbar{height:48px;border:1px solid #dedfea;background:#f9f9fc;border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.searchbar:focus-within{background:#fff;border-color:#bdb3ff;box-shadow:0 0 0 4px rgba(117,83,255,.08),var(--shadow-sm)}
.searchbar input{font-size:14px;color:var(--ink)}
.searchbar button{border-radius:12px;margin:4px;background:linear-gradient(135deg,#7652ff,#5a86ee);color:#fff;width:40px;height:40px}
.searchbar button:hover{box-shadow:var(--shadow-brand);transform:translateY(-1px)}
.header-actions a{border-radius:12px;padding:8px 10px;color:#2e3346}
.header-actions a:hover{background:#f4f2ff;color:var(--violet)}
.cart-link b{background:linear-gradient(135deg,var(--violet),var(--cyan));box-shadow:0 5px 14px rgba(117,83,255,.28)}
.nav-wrap{border-top:1px solid rgba(232,234,242,.75)}
.main-nav{min-height:47px}
.main-nav a{position:relative;padding:14px 7px 12px;font-size:13px;font-weight:720}
.main-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:6px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--violet),var(--cyan));transition:left .2s ease,right .2s ease}
.main-nav a:hover::after,.main-nav a.active::after{left:8px;right:8px}
.main-nav a.cyan{color:#159bb0}

.hero{margin-top:22px;border-radius:32px;min-height:500px;overflow:hidden;border:1px solid rgba(117,83,255,.10);background:
  radial-gradient(circle at 18% 28%,rgba(117,83,255,.13),transparent 20rem),
  linear-gradient(135deg,#faf8ff 0%,#f4f7ff 49%,#effcff 100%);box-shadow:0 28px 80px rgba(47,46,92,.10)}
.hero::before{content:"";position:absolute;inset:auto auto -90px -70px;width:240px;height:240px;border-radius:50%;background:rgba(117,83,255,.08);filter:blur(2px)}
.hero-copy{padding:56px 26px 48px 54px;position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(117,83,255,.14);border-radius:999px;background:rgba(255,255,255,.72);color:#6046d9;font-size:12px;font-weight:800;letter-spacing:.02em;box-shadow:0 5px 20px rgba(84,69,158,.06)}
.hero h1{font-size:clamp(42px,5vw,66px);line-height:1.02;letter-spacing:-2.6px;margin:18px 0 18px;max-width:650px}
.hero h1 span{background:linear-gradient(90deg,#6e50fb,#4c91ed,#3fc9d9);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{font-size:18px;line-height:1.65;color:#51586c;max-width:610px;margin:0 0 28px}
.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hero-proof{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;color:#596074;font-size:12px;font-weight:700}
.hero-proof span{display:flex;align-items:center;gap:7px}
.hero-visual{position:relative;align-self:stretch}
.hero-visual::before{content:"";position:absolute;inset:10% 10% 10% 4%;background:radial-gradient(circle,rgba(74,190,224,.18),transparent 63%);filter:blur(20px)}
.hero-visual img{position:relative;z-index:1;filter:saturate(.96) contrast(1.02);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.hero:hover .hero-visual img{transform:scale(1.018) translateY(-2px)}

.btn-primary,.btn-secondary,.btn-outline,.add-btn,.mini-btn,.link-btn{border-radius:13px;font-weight:780;letter-spacing:-.01em}
.btn-primary{background:linear-gradient(100deg,#7652ff 0%,#6384ef 54%,#3fc9da 100%);border:0;color:#fff;box-shadow:0 10px 26px rgba(100,88,236,.22);display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(100,88,236,.30);filter:saturate(1.04)}
.btn-primary:active{transform:translateY(0)}
.btn-primary:disabled,.add-btn:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}
.btn-secondary{background:rgba(255,255,255,.78);border:1px solid #ded9ff;color:#5843cf;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 22px rgba(66,61,115,.06)}
.btn-secondary:hover,.btn-outline:hover{background:#f7f5ff;border-color:#c9c0ff;transform:translateY(-1px)}
.btn-outline{background:#fff;border:1px solid #dddfea;color:#34394b}
.btn-wide{width:100%;min-height:52px;margin-top:8px}

.category-grid{margin-top:24px;gap:14px}
.category-card{border-color:#e6e7ef;border-radius:20px;background:rgba(255,255,255,.9);box-shadow:0 8px 24px rgba(44,47,72,.04);overflow:hidden}
.category-card:hover{transform:translateY(-5px);border-color:#d9d2ff;box-shadow:var(--shadow-md)}
.category-card img{transition:transform .35s ease}
.category-card:hover img{transform:scale(1.04)}
.category-card footer{padding:13px 15px;font-weight:780}

.section-title{margin-top:52px;margin-bottom:18px;align-items:end}
.section-title h2{font-size:27px;letter-spacing:-.7px;margin:2px 0 0}
.section-title a{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:#5e4ad5}
.section-kicker{display:block;color:#7a8193;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}
.product-grid,.shop-products{gap:15px}
.product-card{border:1px solid #e8eaf1;border-radius:19px;background:#fff;box-shadow:0 8px 22px rgba(40,44,74,.035);overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.product-card:hover{transform:translateY(-5px);border-color:#dcd6ff;box-shadow:0 18px 40px rgba(53,49,102,.11)}
.product-image{background:linear-gradient(160deg,#fbfbfd,#f5f6fa)}
.product-card .product-image img{transition:transform .35s ease}
.product-card:hover .product-image img{transform:scale(1.045)}
.product-info{padding:13px}
.product-name{line-height:1.4;font-weight:720;color:#2b3041}
.price-row strong{color:#5245d4;font-size:16px}
.add-btn{border:1px solid #d9d4ff;color:#5e49da;background:#fff;min-height:36px}
.add-btn:hover{background:linear-gradient(110deg,#7553ff,#5e85ef);color:#fff;border-color:transparent;box-shadow:0 9px 20px rgba(94,73,218,.20)}

.benefits{margin-top:40px;gap:13px}
.benefit{border:1px solid #e8eaf1;border-radius:18px;background:rgba(255,255,255,.92);padding:18px;box-shadow:0 8px 22px rgba(38,43,72,.035)}
.benefit>svg{color:#6d59ed;background:#f2efff;padding:8px;width:44px;height:44px;border-radius:13px}
.benefit strong{font-size:14px}
.benefit span{line-height:1.5}

.local-banner{margin-top:24px;margin-bottom:24px;min-height:220px;padding:34px 38px;border:1px solid rgba(117,83,255,.13);border-radius:28px;background:linear-gradient(125deg,#f6f2ff 0,#f6f8ff 52%,#eefcff 100%);display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;overflow:hidden;position:relative}
.local-banner h2{font-size:32px;letter-spacing:-1px;margin:11px 0 9px}
.local-banner p{max-width:720px;color:#5d6477;line-height:1.6}
.local-orb{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#7553ff,#4c93eb,#43c8da);box-shadow:0 24px 60px rgba(81,111,223,.28);position:relative}
.local-orb::before,.local-orb::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.35);border-radius:50%}
.local-orb::before{inset:16px}.local-orb::after{inset:32px}
.budget-strip{border-radius:24px;background:linear-gradient(125deg,#f8f5ff,#f4fbff);border:1px solid #e7e8f2;box-shadow:var(--shadow-sm)}
.budget-copy h2{letter-spacing:-.7px}

.page-hero{padding-top:42px;padding-bottom:18px}
.page-hero h1{font-size:clamp(34px,5vw,50px);letter-spacing:-1.6px;line-height:1.08;margin:10px 0 10px}
.page-hero p{font-size:16px;line-height:1.65;max-width:720px}
.breadcrumbs{padding-top:22px;color:#7a8192;font-size:12px}
.panel,.summary,.filters{border-color:#e6e8ef;border-radius:21px;box-shadow:0 12px 36px rgba(39,43,74,.055);background:rgba(255,255,255,.96)}
.field label{font-size:13px;color:#353a4d}
.field input,.field select,.field textarea{border-color:#dfe2e9;border-radius:13px;background:#fbfbfd;min-height:46px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.field input:focus,.field textarea:focus,.field select:focus{background:#fff;border-color:#aa9dff;box-shadow:0 0 0 4px rgba(117,83,255,.08)}
.optional{font-size:11px;color:#969bad;font-weight:600}
.check-row{display:flex!important;align-items:flex-start;gap:10px;font-weight:600!important;color:#5f6577!important;line-height:1.45}
.check-row input{width:18px!important;min-height:auto!important;margin-top:2px;accent-color:var(--violet)}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}

.checkout-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr);align-items:start;gap:24px}
.checkout-panel{padding:28px}
.checkout-panel h2{font-size:19px;margin:0 0 15px;letter-spacing:-.3px}
.checkout-step{margin-top:28px;padding-top:26px;border-top:1px solid #eceef3}
.fulfillment-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fulfillment-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #e1e3eb;border-radius:17px;padding:16px;background:#fff;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.fulfillment-card>input{position:absolute;opacity:0;pointer-events:none}
.fulfillment-card:hover{border-color:#cfc8ff;transform:translateY(-1px)}
.fulfillment-card.selected{border-color:#9c8dff;box-shadow:0 0 0 3px rgba(117,83,255,.07),0 10px 28px rgba(79,65,155,.08);background:#fdfcff}
.fulfillment-card.disabled{opacity:.5;cursor:not-allowed;transform:none}
.fulfillment-icon{width:44px;height:44px;border-radius:13px;background:#f2efff;color:#6d54eb;display:grid;place-items:center}
.fulfillment-card strong,.fulfillment-card small{display:block}.fulfillment-card small{margin-top:3px;color:#7c8292;font-size:12px}
.choice-dot{width:19px;height:19px;border:2px solid #c9cdd8;border-radius:50%;position:relative}
.selected .choice-dot{border-color:#7652ff}.selected .choice-dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#7652ff}
.fulfillment-panel{margin-top:14px}.fulfillment-panel[hidden]{display:none!important}
.notice-local{display:flex;gap:11px;align-items:flex-start;border:1px solid #d8f0f4;background:#f1fcfd;border-radius:15px;padding:13px 14px;color:#316575;margin-bottom:14px}
.notice-local svg{flex:0 0 auto;color:#20a9bd}.notice-local strong,.notice-local span{display:block}.notice-local span{font-size:12px;margin-top:3px;color:#5e7f88}
.point-picker-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px}.point-picker-head h3{margin:0}.point-picker-head p{margin:4px 0 0;color:#747b8d;font-size:13px}.point-picker-head a{font-size:12px;font-weight:800;color:#6650dd}
.order-summary{top:138px}.summary-label{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:#858b9a;font-weight:850}.order-summary h2{margin:5px 0 18px}.summary-note{display:flex;gap:9px;align-items:flex-start;margin-top:14px;padding:12px;border-radius:13px;background:#f7f5ff;color:#5d557c;font-size:12px;line-height:1.4}.summary-note svg{flex:0 0 auto;color:#6c56e9}

.point-cards{display:grid;gap:11px}.point-card{display:flex;gap:13px;border:1px solid #e5e7ee;background:#fff;border-radius:17px;padding:15px;box-shadow:0 8px 20px rgba(43,46,73,.035)}
.point-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f1efff;color:#6c54eb;flex:0 0 auto}
.point-card-body{display:flex;flex-direction:column;gap:5px;min-width:0}.point-card-body>strong{font-size:15px;color:#252a3a}.point-card-body>span:not(.point-type){display:flex;align-items:center;gap:6px;color:#717789;font-size:12px;line-height:1.4}
.point-type{align-self:flex-start;padding:4px 8px;border-radius:999px;background:#eefaff;color:#168da2;font-size:10px!important;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.point-card.selectable{display:grid;grid-template-columns:auto 1fr;align-items:center;cursor:pointer;position:relative}.point-card.selectable>input{position:absolute;opacity:0}.point-card.selectable:has(input:checked){border-color:#a597ff;box-shadow:0 0 0 3px rgba(117,83,255,.07)}
.point-radio{width:22px;height:22px;border:2px solid #ccd0dc;border-radius:50%;display:grid;place-items:center;color:transparent}.point-card.selectable:has(input:checked) .point-radio{background:#7652ff;border-color:#7652ff;color:#fff}

.modern-point-hero{margin-top:26px;padding:42px;border:1px solid rgba(117,83,255,.12);border-radius:30px;background:linear-gradient(135deg,#f7f3ff,#f3f7ff 54%,#effcff);box-shadow:var(--shadow-md)}
.modern-point-hero h1{font-size:clamp(38px,5vw,58px);letter-spacing:-2px;line-height:1.05;margin:15px 0}.modern-point-hero p{font-size:16px;line-height:1.65;color:#5f6678;max-width:650px}
.modern-art{min-height:300px;display:flex;flex-direction:column!important;align-items:center;justify-content:center!important;gap:2px;background:radial-gradient(circle at center,rgba(255,255,255,.9),rgba(240,249,255,.72));position:relative;overflow:hidden}
.modern-art strong{font-size:48px;line-height:1;color:#5142c6;margin-top:18px}.modern-art>span{font-size:12px;color:#767c8c;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.pin-pulse{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#7553ff,#43c8da);box-shadow:0 0 0 18px rgba(117,83,255,.06),0 0 0 36px rgba(67,200,218,.04);animation:pinPulse 3s ease-in-out infinite}
@keyframes pinPulse{50%{transform:translateY(-5px);box-shadow:0 0 0 24px rgba(117,83,255,.045),0 0 0 48px rgba(67,200,218,.025)}}
.points-section{padding:20px 0 60px}.points-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:20px;align-items:start}.map-status{font-size:11px;color:#7b8292;border:1px solid #e5e7ed;border-radius:999px;padding:7px 10px;background:#fff}.map-shell{border:1px solid #e3e5ed;border-radius:21px;background:#fff;overflow:hidden;box-shadow:0 14px 38px rgba(42,45,76,.08)}.point-map{height:440px;background:linear-gradient(135deg,#f0f4f6,#eaf2f5)}.sticky-map{position:sticky;top:140px}.map-caption{font-size:11px;line-height:1.45;color:#818797;padding:9px 12px;margin:0;border-top:1px solid #eceef2}.checkout-map{margin-top:14px}.checkout-map .point-map{height:310px}.admin-map-shell{margin-top:18px}.admin-map-shell .point-map{height:360px}.map-unavailable{height:100%;min-height:220px;display:grid;place-items:center;text-align:center;padding:24px;color:#6c7386;background:#f6f8fa}.leaflet-container{font-family:inherit}.leaflet-control-zoom a{color:#42485a!important}.leaflet-popup-content-wrapper{border-radius:15px;box-shadow:0 14px 36px rgba(34,38,66,.16)}.map-popup strong,.map-popup span{display:block}.map-popup strong{font-size:14px;color:#202535}.map-popup span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#6f55e4;font-weight:850;margin-top:3px}.map-popup p{font-size:11px;line-height:1.5;color:#707688;margin:7px 0 0}

.contact-aside{background:linear-gradient(145deg,#f9f7ff,#f2fbfd)}.contact-aside>p{display:flex;align-items:center;gap:9px;color:#5f6679}.contact-aside svg{color:#6752e4}.contact-aside .btn-outline{margin-top:10px}
.success-state{max-width:720px;margin:60px auto 80px!important;padding:46px;border:1px solid #e5e7ef;border-radius:28px;background:#fff;box-shadow:var(--shadow-md)}.success-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:linear-gradient(145deg,#7553ff,#43c8da);color:#fff;box-shadow:0 14px 28px rgba(92,95,223,.22)}.success-state h1{font-size:42px;letter-spacing:-1.4px;margin:12px 0}.success-state p{color:#656c7d;line-height:1.65}.success-state .hero-actions{justify-content:center;margin-top:24px}.empty-state.compact{padding:26px;margin:0}

.admin-layout{background:#f6f7fb}.admin-side{background:linear-gradient(180deg,#151827,#1c2032);padding-top:28px}.admin-brand{border-radius:15px;box-shadow:0 12px 30px rgba(0,0,0,.16)}.admin-side nav a{border-radius:11px}.admin-side nav a:hover{background:rgba(255,255,255,.08)}.admin-main{padding:28px 34px}.admin-top h1{letter-spacing:-.7px}.stats-grid{grid-template-columns:repeat(5,1fr)}.stat-card,.admin-card{border-radius:18px;border-color:#e5e7ee;box-shadow:0 10px 30px rgba(40,44,72,.04)}.admin-intro{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-intro p{color:#6c7385;max-width:760px}.mini-btn.primary{background:linear-gradient(100deg,#7553ff,#5f87ef);border:0;box-shadow:0 8px 20px rgba(90,76,219,.18)}

.flash{border-radius:14px;box-shadow:0 12px 28px rgba(36,40,68,.08);animation:flashIn .3s ease both}.flash-out{opacity:0;transform:translateY(-5px);transition:opacity .3s ease,transform .3s ease}@keyframes flashIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.reveal{opacity:0;transform:translateY(15px);transition:opacity .55s ease var(--reveal-delay,0ms),transform .55s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;transform:none}

.site-footer{border-radius:28px 28px 0 0;background:#121522;color:#d7dae5;margin-top:60px;border:0}.site-footer a{color:#b9becc}.site-footer a:hover{color:#fff}.site-footer h4{color:#fff}.site-footer p{color:#aeb4c3}.footer-logo{filter:none;opacity:1}.footer-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.12);padding:8px 10px;border-radius:999px;font-size:11px;color:#cbd0dc}.copyright{border-top-color:rgba(255,255,255,.08);color:#858c9e}

@media(max-width:1100px){
  .hero{grid-template-columns:1.02fr .98fr}.hero-copy{padding-left:38px}.hero h1{font-size:48px}
  .stats-grid{grid-template-columns:repeat(3,1fr)}
  .points-layout{grid-template-columns:.9fr 1.1fr}
}
@media(max-width:900px){
  .announcement .container{justify-content:space-between}.announcement .container span:nth-child(2){display:none}
  .site-header{top:0}.header-main{height:72px}.main-nav{top:72px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 30px 18px}.hero-visual{height:330px}.hero-proof{margin-bottom:8px}
  .local-banner{grid-template-columns:1fr}.local-orb{display:none}
  .checkout-grid,.points-layout{grid-template-columns:1fr}.order-summary,.sticky-map{position:static}.point-map{height:380px}.modern-point-hero{padding:30px}.modern-art{min-height:240px}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .announcement{font-size:10px}.announcement .container{min-height:32px}.announcement a{margin-left:auto}.announcement .container>span:first-child{white-space:nowrap}
  .header-main{grid-template-columns:118px 1fr 34px}.brand{width:112px}.brand img{max-height:44px}.searchbar{height:42px;border-radius:13px}.searchbar button{width:34px;height:34px;border-radius:10px}.searchbar input{font-size:11px;padding-left:10px}
  .hero{margin-top:12px;border-radius:22px}.hero-copy{padding:29px 22px 8px}.hero h1{font-size:38px;letter-spacing:-1.7px}.hero p{font-size:15px;line-height:1.55}.hero-visual{height:255px}.eyebrow{font-size:10px}.hero-proof{gap:10px;font-size:10px}
  .btn-primary,.btn-secondary,.btn-outline{padding:12px 14px;font-size:13px}.category-grid{margin-top:14px}.category-card{border-radius:17px}.section-title{margin-top:38px;align-items:center}.section-title h2{font-size:22px}.section-title a{font-size:12px}
  .local-banner{padding:24px;border-radius:21px}.local-banner h2{font-size:25px}.budget-strip{border-radius:20px}
  .page-hero{padding-top:28px}.page-hero h1{font-size:34px}.checkout-panel{padding:17px}.fulfillment-options{grid-template-columns:1fr}.checkout-step{margin-top:22px;padding-top:20px}.point-picker-head{align-items:flex-start;flex-direction:column}.point-card{padding:13px}.checkout-map .point-map{height:260px}
  .modern-point-hero{padding:24px 20px;border-radius:22px}.modern-point-hero h1{font-size:36px;letter-spacing:-1.4px}.modern-art{min-height:205px}.point-map{height:320px}.map-status{display:none}
  .success-state{padding:30px 20px;margin:35px auto 55px!important}.success-state h1{font-size:33px}
  .admin-main{padding:18px 12px}.admin-intro{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:1fr 1fr}.admin-map-shell .point-map{height:280px}
  .site-footer{border-radius:22px 22px 0 0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important;transition:none!important}.hero-visual img,.pin-pulse{transition:none!important;animation:none!important}.btn-primary:hover,.product-card:hover,.category-card:hover{transform:none}
}


/* === Geebiz QA pass: carousel, readable prices, reliable map markers === */
.section-actions{display:flex;align-items:center;gap:14px}
.carousel-controls{display:flex;gap:7px}
.carousel-btn{width:38px;height:38px;border:1px solid #dddfea;border-radius:12px;background:#fff;color:#4f566c;display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 16px rgba(35,39,68,.04)}
.carousel-btn:hover:not(:disabled){border-color:#c8c0ff;color:#5c46da;transform:translateY(-1px);box-shadow:0 9px 22px rgba(70,62,129,.08)}
.carousel-btn:disabled{opacity:.35;cursor:not-allowed}
.carousel-btn:first-child svg{transform:rotate(180deg)}
.product-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(205px,19.5vw,245px);gap:15px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scroll-padding-inline:2px;padding:2px 2px 15px;scrollbar-width:thin;scrollbar-color:#c8c4da transparent}
.product-carousel>.product-card{scroll-snap-align:start;min-width:0}
.product-carousel::-webkit-scrollbar{height:6px}.product-carousel::-webkit-scrollbar-thumb{background:#cbc7db;border-radius:99px}.product-carousel::-webkit-scrollbar-track{background:transparent}

.product-image{position:relative}
.discount-badge{position:absolute;z-index:2;left:10px;top:10px;padding:5px 8px;border-radius:999px;background:#191d2d;color:#fff;font-size:10px;font-weight:900;letter-spacing:.02em;box-shadow:0 6px 18px rgba(17,20,37,.18)}
.price-row{min-height:29px;flex-wrap:wrap;row-gap:2px}
.price-row strong{font-size:17px!important;color:#4d3fc9!important;letter-spacing:-.2px}
.compare-price{display:inline-flex;align-items:center;gap:5px;color:#555d70;font-size:12px;font-weight:700;white-space:nowrap}
.compare-price>span{display:inline-block;padding:2px 5px;border-radius:5px;background:#f1f2f6;color:#656d7f;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.price-row .compare-price del,.compare-price del{color:#50586b!important;font-size:12px!important;font-weight:700;text-decoration-color:#858b99;text-decoration-thickness:1.5px;opacity:1!important}
.big-price{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.big-price .product-compare{font-size:14px}.big-price .product-compare del{font-size:15px!important}
.admin-compare-price{color:#545b6e;font-weight:750;text-decoration:line-through;text-decoration-color:#8a90a0}

.point-card{cursor:default;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.point-card[data-point-card]{cursor:pointer}
.point-card[data-point-card]:hover,.point-card.map-highlight{border-color:#b6abff;box-shadow:0 0 0 3px rgba(117,83,255,.07),0 12px 28px rgba(46,48,81,.07);transform:translateY(-1px)}
.geebiz-map-pin-shell{background:transparent!important;border:0!important}
.geebiz-map-pin{width:34px;height:34px;border-radius:50% 50% 50% 10%;transform:rotate(-45deg);display:grid;place-items:center;border:3px solid #fff;box-shadow:0 7px 20px rgba(27,31,55,.24)}
.geebiz-map-pin.store{background:linear-gradient(145deg,#7452ff,#5e82ee)}
.geebiz-map-pin.relay{background:linear-gradient(145deg,#3bbbd1,#57d5dc)}
.geebiz-map-pin>span{width:9px;height:9px;border-radius:50%;background:#fff;display:block}
.map-unavailable{display:flex!important;flex-direction:column;gap:7px}.map-unavailable strong{color:#303649;font-size:15px}.map-unavailable span{max-width:430px;font-size:12px;line-height:1.5}
.map-tiles-warning::after{content:"Les marqueurs restent actifs; certaines tuiles OpenStreetMap n’ont pas chargé.";position:absolute;left:12px;right:12px;bottom:12px;z-index:500;background:rgba(17,20,37,.88);color:#fff;padding:8px 10px;border-radius:10px;font-size:10px;pointer-events:none}

@media(max-width:900px){
  .product-carousel{grid-auto-columns:minmax(205px,34vw)}
}
@media(max-width:640px){
  .section-actions>a{display:none}.carousel-controls{gap:5px}.carousel-btn{width:35px;height:35px}
  .product-carousel{grid-auto-columns:minmax(190px,72vw);gap:12px;padding-bottom:10px;scrollbar-width:none}.product-carousel::-webkit-scrollbar{display:none}
  .compare-price{font-size:11px}.price-row .compare-price del{font-size:11px!important}
}

/* === Geebiz V3: light footer, visible pricing, mobile filters, bilingual UI === */
.site-footer{
  background:linear-gradient(180deg,#fbfcff 0%,#f3f7fb 100%)!important;
  color:#1f2937!important;
  border:1px solid #e2e7ef!important;
  border-bottom:0!important;
  box-shadow:0 -10px 34px rgba(35,42,68,.045);
}
.site-footer h4{color:#111827!important;font-weight:850!important;letter-spacing:-.01em}
.site-footer p{color:#475467!important}
.site-footer a{color:#344054!important}
.site-footer a:hover{color:#6248df!important}
.footer-pill{border:1px solid #dfe4ec!important;background:#fff!important;color:#344054!important;font-weight:750}
.copyright{border-top-color:#e1e6ee!important;color:#667085!important;background:rgba(255,255,255,.48)}

.discount-badge{
  background:#fff1f2!important;color:#b42318!important;border:1px solid #fecdd3!important;
  font-size:12px!important;font-weight:850!important;padding:6px 9px!important;
  box-shadow:0 6px 16px rgba(180,35,24,.08)!important
}
.compare-price{color:#4b5563!important;font-size:12px!important;font-weight:650!important;opacity:1!important}
.compare-price>span{background:#f2f4f7!important;color:#475467!important;font-size:10px!important;font-weight:750!important;padding:2px 6px!important}
.price-row .compare-price del,.compare-price del,.admin-compare-price{
  color:#667085!important;font-size:12px!important;font-weight:500!important;opacity:1!important;
  text-decoration-line:line-through!important;text-decoration-thickness:1px!important;text-decoration-color:#98a2b3!important
}
.big-price .product-compare del{font-size:15px!important;font-weight:500!important}

.add-btn{
  min-height:42px!important;height:auto!important;padding:9px 10px!important;
  font-size:13px!important;font-weight:850!important;line-height:1.15!important;border-radius:10px!important
}
.shop-products .add-btn{min-height:44px!important;font-size:14px!important}
.product-card .product-name{font-size:13px!important;line-height:1.38!important;color:#1f2937!important;font-weight:650}

.lang-switch{display:inline-flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid #e0e4ec;border-radius:999px;background:#fff;font-size:11px;font-weight:800;white-space:nowrap;color:#667085}
.lang-switch a{padding:4px 7px;border-radius:999px;color:#667085!important}
.lang-switch a.active{background:#f1efff;color:#5c46da!important}
.header-actions{gap:22px;align-items:center}
.header-actions .lang-switch{align-self:center}
.mobile-lang{display:none}

.auth-panel{max-width:560px;margin-inline:auto}
.auth-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:3px}
.forgot-link{font-size:13px;font-weight:800;color:#5d4ad7;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.forgot-link:hover{color:#3f34a9}
.field input[readonly]{background:#f7f8fb;color:#475467;border-color:#e3e6ec}

html[dir="rtl"] body{font-family:Tahoma,"Segoe UI",Arial,sans-serif}
html[dir="rtl"] .searchbar input,html[dir="rtl"] .field input,html[dir="rtl"] .field textarea,html[dir="rtl"] .field select{text-align:right}
html[dir="rtl"] .carousel-btn:first-child svg{transform:none}
html[dir="rtl"] .carousel-btn.next svg{transform:rotate(180deg)}
html[dir="rtl"] .breadcrumbs span{transform:rotate(180deg)}
html[dir="rtl"] .footer-grid>div:last-child p{justify-content:flex-start}

@media(max-width:900px){
  .filters{display:block!important;width:100%;margin-bottom:16px}
  .shop-layout{grid-template-columns:1fr!important}
  .filters form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;align-items:end}
  .filters h3{margin-bottom:8px}
  .filters>a{display:inline-flex!important;margin:0 8px 7px 0;padding:7px 10px!important;background:#f7f8fb;border:1px solid #e4e7ec;border-radius:999px;font-size:12px}
  .filters label{margin:0 0 5px}
  .filters .btn-primary{margin-top:0!important;height:43px}
  .header-actions .lang-switch{display:none}
  .mobile-lang{display:block;padding:8px 9px 4px}
  .mobile-lang .lang-switch{width:max-content}
}
@media(max-width:640px){
  .filters{padding:14px!important;border-radius:15px!important}
  .filters form{grid-template-columns:1fr 1fr}
  .filters form label:nth-of-type(3),.filters form select{grid-column:1/-1}
  .filters .btn-primary{grid-column:1/-1;width:100%}
  .add-btn{font-size:13px!important;min-height:42px!important;padding-inline:7px!important}
  .shop-products .add-btn{font-size:13px!important}
  .product-card .product-name{font-size:13px!important}
  .discount-badge{font-size:11px!important;left:7px!important;top:7px!important}
  .price-row{align-items:flex-start!important;gap:5px!important}
  .compare-price{width:100%;font-size:11px!important}
  .auth-actions{align-items:stretch;flex-direction:column}
  .auth-actions .btn-primary{width:100%}
  .forgot-link{text-align:center;padding:5px}
}
.header-actions{gap:12px!important}
.header-actions>a{min-width:48px;font-size:12px}
@media(max-width:640px){
  .filters form>div:nth-child(3){grid-column:1/-1}
  .filters form>button{grid-column:1/-1}
}

/* === Geebiz V4: bilingual database, RTL prices, comfortable buttons, 4-image gallery === */
.btn-primary,.btn-secondary,.btn-outline,.mini-btn,.add-btn,.link-btn{
  min-inline-size:max-content;
  padding-inline:20px!important;
}
.btn-secondary,.btn-outline{
  min-height:44px;
  background:#fff;
}
.hero-actions .btn-secondary{border:1px solid #dfe3f7;box-shadow:0 6px 18px rgba(56,65,110,.05)}
.add-btn{padding-inline:14px!important}
.mini-btn{padding:9px 14px!important}

/* Keep amounts visually ordered inside Arabic/RTL pages (1 000 د.م, never 000 1). */
.money-value,.price-row strong,.compare-price del,.sum-row>strong,.cart-item>strong,.cart-item small,
.orders-table td:nth-child(4),.admin-compare-price,[data-shipping-amount],[data-total-amount]{
  direction:ltr;
  unicode-bidi:isolate;
  display:inline-block;
  white-space:nowrap;
}
.compare-price{gap:0!important}
.compare-price>span{display:none!important}

.product-gallery{overflow:visible!important;border:0!important;background:transparent!important}
.product-gallery-main{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}
.product-gallery-main img{width:100%;aspect-ratio:1.05/1;object-fit:cover}
.product-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.product-thumb{border:1px solid #e1e5eb;background:#fff;padding:4px;border-radius:12px;cursor:pointer;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.product-thumb img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}
.product-thumb.active{border-color:#7a66f3;box-shadow:0 0 0 3px rgba(122,102,243,.10)}
.product-thumb:hover{transform:translateY(-1px);border-color:#b8adf8}

.admin-language-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}
.admin-language-grid>section{border:1px solid #e4e7ec;border-radius:16px;padding:16px;background:#fbfcfe}
.admin-language-grid h3{margin:0 0 13px}
.admin-product-meta{margin-bottom:22px}
.product-images-admin{border-top:1px solid #e7eaf0;padding-top:20px;margin-top:6px}
.admin-section-heading h3{margin:0 0 4px}.admin-section-heading p{margin:0 0 14px;color:#667085;font-size:13px}
.product-image-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.product-image-slot{border:1px solid #e1e5eb;border-radius:14px;padding:10px;background:#fff;min-width:0}
.product-image-slot img,.image-slot-empty{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;background:#f7f8fb;margin-bottom:9px}
.image-slot-empty{display:grid;place-items:center;color:#98a2b3;font-size:12px;border:1px dashed #d6dbe5}
.slot-title{font-weight:800;font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.slot-title span{font-size:10px;padding:3px 7px;border-radius:999px;background:#eeecff;color:#5d48d5}
.product-image-slot input{width:100%;font-size:12px}.product-image-slot small{display:block;color:#667085;margin-top:6px;font-size:10px}

html[dir="rtl"] .product-detail,html[dir="rtl"] .product-info,html[dir="rtl"] .point-card-body{text-align:right}
html[dir="rtl"] .discount-badge{left:auto!important;right:10px!important}
html[dir="rtl"] .product-thumbs{direction:rtl}

@media(max-width:900px){
  .admin-language-grid{grid-template-columns:1fr}
  .product-image-slots{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .btn-primary,.btn-secondary,.btn-outline{padding-inline:18px!important}
  .hero-actions{gap:10px;flex-wrap:wrap}
  .hero-actions .btn-primary,.hero-actions .btn-secondary,.hero-actions .btn-outline{min-height:44px}
  .product-thumbs{gap:7px}
  .product-image-slots{grid-template-columns:1fr 1fr;gap:10px}
}


/* === Geebiz V5: promos, account rights, order tracking === */
.promo-box{margin:14px 0 18px;padding:13px;border:1px dashed #cfc9ff;border-radius:14px;background:#fbfaff}.promo-form label{display:block;font-size:12px;font-weight:800;margin-bottom:7px;color:#4e5568}.promo-form>div{display:flex;gap:8px}.promo-form input{min-width:0;flex:1;height:44px;border:1px solid #dfe2eb;border-radius:11px;padding:0 12px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.promo-form .btn-outline{min-height:44px;white-space:nowrap}.promo-applied{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.promo-applied strong{color:#5f48d8}.promo-saving{color:#24835d}.promo-saving strong{color:#24835d}.account-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.account-section-head p{margin:5px 0 0;color:#6b7280}.account-delete-details{margin-top:28px}.account-delete-details>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;border:1px solid #fecdd3;border-radius:12px;background:#fff8f8;color:#9f1239;padding:11px 14px;font-weight:800;user-select:none}.account-delete-details>summary::-webkit-details-marker{display:none}.account-delete-details[open]>summary{margin-bottom:12px}.account-delete-details .danger-zone{margin-top:0}.danger-zone{margin-top:34px;padding:22px;border:1px solid #fecdd3;border-radius:18px;background:#fff8f8}.danger-zone h3{margin-top:0;color:#9f1239}.danger-zone p{color:#6b5260;line-height:1.6}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;border:0;border-radius:12px;padding:11px 18px;background:#be123c;color:#fff;font-weight:800;cursor:pointer}.btn-danger:hover{background:#9f1239}.cancel-order-form{margin-top:18px}.order-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.order-actions form{margin:0}.order-status-pill{display:inline-flex;align-items:center;padding:9px 13px;border-radius:999px;font-weight:850}.tracking-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:20px;align-items:start}.tracking-timeline{display:flex;flex-direction:column;gap:4px}.tracking-event{display:grid;grid-template-columns:44px 1fr;gap:12px;position:relative;padding:8px 0 17px}.tracking-event:not(:last-child)::after{content:"";position:absolute;left:21px;top:49px;bottom:-2px;width:2px;background:#e6e5f3}.tracking-dot{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f4f1ff;border:1px solid #ddd6fe;font-size:19px;z-index:1}.tracking-event>div{display:flex;flex-direction:column;gap:3px;padding-top:3px}.tracking-event strong{color:#24283b}.tracking-event small{color:#7b8191}.tracking-coords{display:none!important}.tracking-map-section{margin-top:20px}.order-tracking-map{height:430px}.tracking-map-empty{margin-top:20px;text-align:center;padding:34px}.tracking-map-empty p{color:#6b7280}.tracking-map-dot{width:38px;height:38px;border-radius:50% 50% 50% 9px;transform:rotate(-45deg);display:grid;place-items:center;background:#6f52ff;border:3px solid #fff;box-shadow:0 8px 22px rgba(63,49,136,.3)}.tracking-map-dot>span{transform:rotate(45deg);font-size:16px}.tracking-map-dot:not(.current){width:26px;height:26px;background:#66cddd}.tracking-map-dot:not(.current)>span{font-size:20px;color:#fff;line-height:1}.destination-map-pin{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #53c9d9;box-shadow:0 7px 18px rgba(31,105,115,.2);font-size:18px}.admin-tracking-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:18px;align-items:start}.admin-timeline{max-height:650px;overflow:auto;padding-right:4px}.badge-new,.badge-confirmed,.badge-preparing,.badge-out_for_delivery,.badge-ready_for_pickup,.badge-delivered,.badge-cancelled,.badge-returned{white-space:nowrap}.badge-new{background:#eef2ff;color:#4338ca}.badge-confirmed{background:#ecfdf5;color:#047857}.badge-preparing{background:#fff7ed;color:#c2410c}.badge-out_for_delivery{background:#ecfeff;color:#0e7490}.badge-ready_for_pickup{background:#f0fdf4;color:#15803d}.badge-delivered{background:#f0fdf4;color:#166534}.badge-cancelled{background:#fff1f2;color:#be123c}.badge-returned{background:#f8fafc;color:#475569}
@media(max-width:900px){.tracking-grid,.admin-tracking-grid{grid-template-columns:1fr}.order-tracking-map{height:350px}}
@media(max-width:560px){.promo-form>div{flex-direction:column}.promo-form .btn-outline{width:100%}.promo-applied{align-items:flex-start}.tracking-event{grid-template-columns:40px 1fr}.tracking-dot{width:40px;height:40px}.tracking-event:not(:last-child)::after{left:19px}.order-tracking-map{height:300px}.order-actions{min-width:160px}}

/* === Geebiz V5.2: navigation hierarchy, combined filters, mobile foreground === */
html,body{max-width:100%;overflow-x:clip}
.site-header{
  z-index:6000!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 14px 38px rgba(34,39,72,.12)!important;
  border-bottom:1px solid #e7e9f1!important;
}
.header-main{height:88px!important;grid-template-columns:220px minmax(320px,1fr) auto!important;gap:20px!important}
.header-actions{gap:10px!important;align-items:center}
.header-actions>a{
  min-width:86px!important;
  min-height:58px;
  padding:9px 13px!important;
  border:1px solid #e6e8f0;
  border-radius:15px!important;
  background:#fff;
  box-shadow:0 8px 22px rgba(37,42,72,.07);
  font-size:14px!important;
  font-weight:850;
  justify-content:center;
}
.header-actions>a:hover{border-color:#d4cdfd;background:#fbfaff;box-shadow:0 12px 28px rgba(78,66,155,.11);transform:translateY(-1px)}
.header-actions>a span{font-size:14px;font-weight:850;line-height:1.1}
.header-actions .lang-switch{margin-inline-start:2px;padding:7px 8px;box-shadow:0 7px 18px rgba(37,42,72,.05)}
.favorite-link,.mobile-favorite{position:relative}
.favorite-count,.mobile-favorite>b,.mobile-cart-link>b{position:absolute;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:linear-gradient(135deg,var(--violet),var(--cyan));color:#fff;font-size:10px;font-weight:900;border:2px solid #fff;box-shadow:0 5px 12px rgba(92,62,240,.22)}
.favorite-count{top:3px;right:4px}
.favorites-active{color:#6550e9!important}
.heart-filled-svg{display:block;overflow:visible}
.mobile-favorite{display:none}

.nav-wrap{padding:10px 0 11px;background:linear-gradient(180deg,#fbfcff,#f8f9fd);border-top:1px solid #eef0f5!important;border-bottom:1px solid #e6e8ef!important}
.main-nav{min-height:48px!important;justify-content:flex-start!important;gap:12px!important;overflow:visible!important;font-weight:800!important}
.main-nav .nav-card{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:11px 18px!important;
  border:1px solid #e4e7ef;
  border-radius:14px;
  background:#fff;
  box-shadow:0 7px 18px rgba(37,42,72,.065);
  color:#30364a;
  font-size:15.5px!important;
  font-weight:850!important;
  line-height:1.1;
  white-space:nowrap;
  cursor:pointer;
}
.main-nav .nav-card::after{display:none!important}
.main-nav .nav-card:hover,.main-nav .nav-card.active,.nav-categories[open]>.nav-card{border-color:#cfc6ff;background:linear-gradient(135deg,#fbf9ff,#f4fbff);color:#5d49d5;box-shadow:0 11px 26px rgba(78,65,153,.105);transform:translateY(-1px)}
.main-nav .nav-card.cyan{color:#168fa3}.main-nav .nav-card.accent{color:#654dde}
.nav-categories{position:relative;flex:0 0 auto}
.nav-categories>summary{list-style:none;user-select:none}
.nav-categories>summary::-webkit-details-marker{display:none}
.nav-categories>summary svg{transition:transform .2s ease;transform:rotate(90deg)}
.nav-categories[open]>summary svg{transform:rotate(-90deg)}
.category-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  z-index:6200;
  width:min(330px,80vw);
  padding:10px;
  border:1px solid #e1e4ec;
  border-radius:17px;
  background:rgba(255,255,255,.98);
  box-shadow:0 22px 50px rgba(34,39,72,.16);
  display:grid;
  gap:5px;
}
html[dir="rtl"] .category-dropdown{left:auto;right:0}
.category-dropdown a{padding:11px 12px!important;border-radius:11px;color:#3f465a;font-size:14px!important;font-weight:750!important}
.category-dropdown a::after{display:none!important}.category-dropdown a:hover{background:#f5f3ff;color:#6049da;transform:none!important}

.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.filter-heading h3{margin:2px 0 0!important;font-size:22px}.filter-heading>svg{color:#6c53e8}
.combined-filters{display:grid!important;grid-template-columns:1fr!important;gap:15px!important;align-items:end}
.combined-filters>div{min-width:0}.combined-filters label{margin:0 0 6px!important;font-size:13px}.combined-filters input,.combined-filters select{min-height:44px;background:#fff}
.combined-filters .filter-submit{width:100%;min-height:46px;margin-top:6px!important}
.cart-summary-simple .sum-total{margin-bottom:14px}.cart-next-note{font-size:12px;color:#667085;line-height:1.55;margin:13px 0 0}.cart-summary-simple .btn-wide{margin-top:8px}

/* Arabic amounts: currency first, digits remain LTR and grouped correctly. */
html[dir="rtl"] .money-value,html[dir="rtl"] .price-row strong,html[dir="rtl"] .compare-price del,html[dir="rtl"] .sum-row>strong,html[dir="rtl"] .cart-item>strong,html[dir="rtl"] .cart-item small,html[dir="rtl"] .orders-table td:nth-child(4),html[dir="rtl"] [data-shipping-amount],html[dir="rtl"] [data-total-amount]{direction:ltr!important;unicode-bidi:isolate!important;text-align:left}
html[dir="rtl"],html[dir="rtl"] body{max-width:100vw!important;overflow-x:clip!important}
html[dir="rtl"] body>*,html[dir="rtl"] main,html[dir="rtl"] .site-header,html[dir="rtl"] .nav-wrap{max-width:100vw}

/* Keep app chrome above Leaflet maps and controls. */
.leaflet-container{z-index:1}.map-shell,.point-map{position:relative;z-index:1}
.mobile-bottom{isolation:isolate}

@keyframes geebizNavSelect{0%{transform:translateY(0) scale(.96)}55%{transform:translateY(-5px) scale(1.035)}100%{transform:translateY(-3px) scale(1)}}

@media(max-width:1100px){
  .header-main{grid-template-columns:185px minmax(260px,1fr) auto!important;gap:14px!important}.brand{width:170px!important}
  .header-actions>a{min-width:72px!important;padding-inline:9px!important}.header-actions>a span{font-size:12px}.main-nav{gap:9px!important}.main-nav .nav-card{padding-inline:13px!important;font-size:14px!important}
}

@media(max-width:900px){
  body{padding-bottom:86px!important}
  .site-header{top:0!important;z-index:6000!important}
  .header-main{height:72px!important;grid-template-columns:118px minmax(0,1fr) 44px!important;gap:10px!important}
  .brand{width:112px!important}.brand img{max-height:46px!important}
  .header-actions{display:none!important}.mobile-menu{display:none!important}
  .mobile-favorite{display:grid;width:42px;height:42px;place-items:center;border:1px solid #e0e3ec;border-radius:14px;background:#fff;color:#444c63;box-shadow:0 8px 20px rgba(38,43,74,.08)}
  .mobile-favorite.favorites-active{border-color:#d5cdfd;background:linear-gradient(135deg,#fbf9ff,#f2fcff)}
  .mobile-favorite>b{top:-6px;right:-5px}
  .nav-wrap{padding:8px 0!important;overflow:visible!important}
  .main-nav{display:flex!important;position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;flex-direction:row!important;align-items:center!important;padding:0!important;background:transparent!important;box-shadow:none!important;overflow-x:auto!important;overflow-y:visible!important;overscroll-behavior-x:contain;scrollbar-width:none}
  .main-nav::-webkit-scrollbar{display:none}
  .main-nav .nav-card{min-height:40px;padding:9px 13px!important;font-size:13px!important;border-radius:12px;box-shadow:0 5px 14px rgba(38,43,74,.055)}
  .nav-categories{position:static}
  .nav-categories .category-dropdown{position:fixed;top:126px;left:12px!important;right:12px!important;width:auto;max-height:min(56vh,420px);overflow-y:auto;grid-template-columns:1fr 1fr;z-index:9000}
  .mobile-lang{display:block!important;flex:0 0 auto;padding:0!important}.mobile-lang .lang-switch{height:40px}

  .filters{display:block!important}.shop-layout{grid-template-columns:1fr!important}.combined-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 14px!important}.combined-filters .filter-category,.combined-filters .filter-sort,.combined-filters .filter-submit{grid-column:1/-1}.combined-filters .filter-submit{margin-top:7px!important}

  .mobile-bottom{
    position:fixed!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;
    left:10px!important;right:10px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    width:auto!important;height:72px!important;padding:6px!important;
    border:1px solid rgba(222,225,236,.95)!important;border-radius:22px!important;
    background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    box-shadow:0 18px 42px rgba(29,34,68,.20)!important;z-index:12000!important;
  }
  .mobile-bottom a{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#737b8f;border-radius:16px;font-size:20px!important;font-weight:800;min-width:0}
  .mobile-bottom a span{font-size:12px!important;font-weight:850;line-height:1.05;margin-top:1px!important;white-space:nowrap}
  .mobile-bottom a svg{width:23px;height:23px}
  .mobile-bottom a.active{color:#634ee2;background:linear-gradient(135deg,#f0edff,#ecfbfd);animation:geebizNavSelect .34s ease both}
  .mobile-bottom a.active::before{content:"";position:absolute;top:3px;left:32%;right:32%;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--violet),var(--cyan))}
  .mobile-cart-link>b{top:2px;right:18%;min-width:18px;height:18px;font-size:9px}

  .point-map,.leaflet-container,.leaflet-control-container,.leaflet-pane{z-index:auto}
}

@media(max-width:640px){
  .searchbar{min-width:0}.searchbar input{min-width:0}
  .category-grid{
    display:flex!important;flex-wrap:nowrap!important;gap:12px!important;
    overflow-x:auto!important;overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;overscroll-behavior-y:none!important;
    scroll-snap-type:x mandatory;touch-action:pan-x;
    -webkit-overflow-scrolling:touch;padding:4px 2px 8px!important;scrollbar-width:none
  }
  .category-grid::-webkit-scrollbar{display:none}.category-grid .category-card{flex:0 0 min(72vw,220px);min-width:0!important;scroll-snap-align:start}
  .combined-filters{grid-template-columns:1fr 1fr!important}.combined-filters .filter-category,.combined-filters .filter-sort,.combined-filters .filter-submit{grid-column:1/-1!important}
  .filter-heading h3{font-size:20px}.filters{padding:15px!important}
  .nav-categories .category-dropdown{top:124px;grid-template-columns:1fr}
  .mobile-bottom{left:8px!important;right:8px!important;height:70px!important;border-radius:20px!important}
  .mobile-bottom a span{font-size:11.5px!important}
}

@media(prefers-reduced-motion:reduce){.mobile-bottom a.active{animation:none!important}.nav-categories>summary svg{transition:none!important}}
/* Compatibility fallbacks for browsers that do not support overflow: clip. */
html,body{overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
@media(max-width:640px){.category-grid{touch-action:pan-x pinch-zoom}}


/* === Geebiz V5.2.1: Arabic-first locale + compact mobile language toggle === */
.mobile-language-toggle{display:none}
@media(max-width:900px){
  .header-main{grid-template-columns:118px minmax(0,1fr) 52px!important}
  .mobile-language-toggle{
    display:inline-flex;width:50px;height:42px;align-items:center;justify-content:center;gap:4px;
    border:1px solid #dcdff0;border-radius:14px;background:linear-gradient(135deg,#faf7ff,#eefcff);
    color:#5f4bd8;box-shadow:0 8px 20px rgba(47,44,90,.09);font-weight:900;line-height:1;
    position:relative;overflow:hidden;isolation:isolate;direction:ltr
  }
  .mobile-language-toggle::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--violet),var(--cyan));z-index:-1}
  .mobile-language-toggle svg{width:17px;height:17px;flex:0 0 auto}
  .mobile-language-toggle span{font-size:11px;font-weight:950;letter-spacing:.02em;line-height:1}
  .mobile-language-toggle:active{transform:scale(.96)}
  .mobile-lang{display:none!important}
  .mobile-favorite{display:none!important}
}
@media(max-width:640px){
  .header-main{grid-template-columns:112px minmax(0,1fr) 50px!important}
  .mobile-language-toggle{width:48px;height:40px;border-radius:13px}
}
@media(prefers-reduced-motion:reduce){.mobile-language-toggle:active{transform:none}}

/* === Geebiz V5.3: tracking, admin operations and mobile hardening === */
.pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:22px 0 4px}.pagination a{min-width:40px;height:40px;display:grid;place-items:center;border:1px solid #dde1ea;border-radius:11px;background:#fff;font-weight:800;color:#4b5563}.pagination a.active{background:linear-gradient(100deg,var(--violet),var(--cyan));border-color:transparent;color:#fff}
.tracking-search-card{width:min(620px,100%);margin-inline:auto}.tracking-search-card .field input{text-transform:uppercase;letter-spacing:.04em;font-weight:800}.tracking-privacy-note{margin:14px 0 0;color:#667085;font-size:13px;line-height:1.6}.public-pickup{margin:18px 0;padding:15px;border-radius:14px;background:#f8fafc;border:1px solid #e8ebf1;display:flex;flex-direction:column;gap:5px}.public-pickup h3{margin:0 0 4px;font-size:14px}.public-pickup span{color:#667085;font-size:13px}
.admin-nav-badge{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-inline-start:6px;padding:0 6px;border-radius:999px;background:#fff;color:#5f4bd8;font-size:11px}.admin-table-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.admin-toolbar,.admin-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.admin-toolbar{justify-content:space-between;margin:0 0 14px}.admin-toolbar form,.admin-filters{display:flex;flex-wrap:wrap;gap:9px}.admin-toolbar input,.admin-filters input,.admin-filters select{min-height:40px;border:1px solid #d9dde7;border-radius:10px;padding:8px 11px;background:#fff}.admin-filters input{min-width:min(320px,100%)}.admin-filter-card{margin-bottom:14px}.admin-order-link{font-weight:850;color:#5e4bd7}.admin-order-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;margin-bottom:18px}.order-admin-dl{display:grid;grid-template-columns:150px 1fr;gap:10px 16px;margin:0}.order-admin-dl dt{font-weight:800;color:#687083}.order-admin-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}.admin-status-form{display:grid;gap:10px;margin-top:18px}.admin-status-form select{width:100%;min-height:43px;border:1px solid #d9dde7;border-radius:10px;padding:8px 10px}.admin-help{font-size:12px;color:#73798a;line-height:1.55}.order-admin-totals{width:min(420px,100%);margin:20px 0 0 auto}.order-admin-totals>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #edf0f4}.order-admin-totals .total{font-size:18px;font-weight:900}.admin-category-preview{width:180px;max-height:130px;object-fit:cover;border-radius:12px;border:1px solid #e1e5eb;margin:8px 0 12px}.stock-admin{font-weight:850}.stock-admin.stock-low{color:#b45309}.stock-admin.stock-out{color:#b91c1c}.admin-card textarea{min-height:150px}.legal p{white-space:normal;line-height:1.8}
input,select,textarea{max-width:100%}textarea{resize:vertical}
html[dir="rtl"] .order-admin-dl{direction:rtl}html[dir="rtl"] .admin-toolbar,html[dir="rtl"] .admin-filters{direction:rtl}html[dir="rtl"] .tracking-event:not(:last-child)::after{left:auto;right:21px}

@media(max-width:900px){
  .admin-order-grid{grid-template-columns:1fr}.admin-toolbar{align-items:stretch}.admin-toolbar form,.admin-filters{width:100%}.admin-toolbar input,.admin-filters input,.admin-filters select,.admin-filters button{flex:1 1 180px}
}
@media(max-width:640px){
  input,select,textarea{font-size:16px!important}
  .container{max-width:100%}.page-hero h1{overflow-wrap:anywhere}
  .checkout-grid,.cart-layout,.tracking-grid,.account-grid,.contact-grid,.product-page,.points-layout,.admin-order-grid{grid-template-columns:minmax(0,1fr)!important}
  .checkout-panel,.summary,.panel,.admin-card{min-width:0}
  .cart-item{grid-template-columns:72px minmax(0,1fr)!important;align-items:start}.cart-item img{width:72px;height:72px}.cart-item>div:nth-child(3),.cart-item>strong{grid-column:2}.cart-item>strong{justify-self:start}.cart-item input{width:76px}
  .product-card{min-width:0}.product-name{overflow-wrap:anywhere}.price-row{flex-wrap:wrap}.price-row strong,.price-row del{white-space:nowrap}.add-btn{min-height:38px}
  .purchase-row{flex-wrap:wrap}.purchase-row .qty{width:82px}.purchase-row .btn-primary{min-width:0}
  .fulfillment-card{min-width:0}.fulfillment-card span{min-width:0}.fulfillment-card strong,.fulfillment-card small{overflow-wrap:anywhere}
  .promo-form>div{flex-wrap:wrap}.promo-form .btn-outline{width:100%}
  .order-admin-dl{grid-template-columns:1fr;gap:3px}.order-admin-dl dt{margin-top:9px}.admin-main{max-width:100vw;overflow-x:hidden}.admin-card{padding:14px}.admin-table{min-width:720px}.admin-table-wrap{margin-inline:0}
  .admin-toolbar form,.admin-filters{display:grid;grid-template-columns:1fr}.admin-toolbar input,.admin-filters input,.admin-filters select,.admin-filters button{width:100%;min-width:0}
  .tracking-search-card{padding:18px}.tracking-search-hero p{font-size:15px}.tracking-event{grid-template-columns:40px minmax(0,1fr)}.tracking-dot{width:40px;height:40px}.tracking-event:not(:last-child)::after{left:19px;top:45px}html[dir="rtl"] .tracking-event:not(:last-child)::after{left:auto;right:19px}
  .site-footer{overflow:hidden}.footer-grid{grid-template-columns:1fr!important}.footer-grid>div{grid-column:auto!important}
}
.server-error-state{margin:60px 0}
.not-found-state{margin:50px 0}

/* === Geebiz V5.3.1: mobile viewport + natural two-axis touch scrolling === */
/*
 * Android/RTL hardening:
 * - never let a wide horizontal rail move the document viewport;
 * - keep horizontal rails horizontally scrollable without stealing vertical page scroll;
 * - use physical mobile gutters instead of calc-width + auto margins on RTL browsers.
 */
html,body{
  inline-size:100%;
  max-inline-size:100%;
  min-inline-size:0;
  overflow-x:hidden!important;
}
body{position:relative}
main,.site-header,.nav-wrap,.site-footer{max-inline-size:100%;min-inline-size:0}

@media(max-width:900px){
  .container{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin-inline:13px!important;
  }
  .header-main{
    width:auto!important;
    min-width:0!important;
    grid-template-columns:minmax(82px,118px) minmax(0,1fr) 52px!important;
  }
  .header-main>*{min-width:0!important;max-width:100%}
  .brand{max-width:100%!important;min-width:0!important}
  .searchbar{width:100%!important;min-width:0!important;max-width:100%!important}
  .searchbar input{width:0;min-width:0!important;max-width:100%!important}

  /* The nav itself owns its horizontal overflow; the page never does. */
  .nav-wrap{width:100%!important;overflow:hidden!important}
  .main-nav{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin-inline:0!important;
    padding-inline:13px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain!important;
    overscroll-behavior-y:auto!important;
    touch-action:manipulation!important;
  }
  .main-nav>*{flex:0 0 auto}

  /* Horizontal merchandising rails must not lock vertical document scrolling. */
  .category-grid,.product-carousel{
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain!important;
    overscroll-behavior-y:auto!important;
    touch-action:manipulation!important;
  }
  .category-grid{scroll-snap-type:x proximity!important}
  .product-carousel{scroll-snap-type:x proximity!important}

  .hero,.hero-copy,.hero-visual,.category-grid,.selection-section,.product-grid,.budget-strip,.benefits{
    min-width:0!important;
    max-width:100%!important;
  }
  .hero-copy{overflow-wrap:anywhere}
  .hero-actions{max-width:100%}
  .hero-actions>*{max-width:100%}
}

@media(max-width:640px){
  .container{margin-inline:11px!important}
  .header-main{
    grid-template-columns:minmax(78px,112px) minmax(0,1fr) 48px!important;
    gap:8px!important;
  }
  .brand{width:108px!important}
  .nav-wrap{padding-block:8px!important}
  .main-nav{padding-inline:11px!important}
  .category-grid{
    margin-inline:0!important;
    padding-inline:0!important;
    touch-action:manipulation!important;
    overscroll-behavior-y:auto!important;
  }
  .category-grid .category-card{flex-basis:min(72vw,220px)}
  .product-carousel{touch-action:manipulation!important;overscroll-behavior-y:auto!important}
  .hero{width:100%!important}
  .hero-copy{padding-inline:20px!important}
  .hero h1{max-width:100%;font-size:clamp(31px,10vw,38px)!important}
  .hero p{max-width:100%}
}

/* Keep this fallback last: some embedded/older Android WebViews handle hidden more reliably than clip. */
@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}


/* V5.3.2 — ajout au panier sans rechargement ni déplacement de la page */
.cart-toast{position:fixed;left:50%;bottom:28px;z-index:120;max-width:min(92vw,460px);padding:12px 18px;border-radius:14px;background:#172033;color:#fff;font-weight:800;font-size:13px;line-height:1.35;box-shadow:0 16px 40px rgba(20,25,45,.24);opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:opacity .2s ease,transform .2s ease}.cart-toast.is-visible{opacity:1;transform:translate(-50%,0)}.cart-toast.is-error{background:#991b1b}.add-btn.is-loading,.purchase-row .btn-primary.is-loading{opacity:.72;cursor:wait}.add-btn.is-added,.purchase-row .btn-primary.is-added{box-shadow:0 0 0 4px rgba(22,163,74,.12),0 10px 24px rgba(112,87,244,.18)}
@media(max-width:640px){.cart-toast{bottom:92px;font-size:12px;padding:11px 15px}}

/* v5.3.3 — validations AJAX sans rechargement */
.form-feedback{margin:0 0 16px;padding:11px 13px;border-radius:11px;font-size:13px;font-weight:700;line-height:1.45}
.form-feedback[hidden]{display:none!important}.form-feedback.is-error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}.form-feedback.is-success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.form-feedback.compact{margin-top:8px;margin-bottom:0;padding:8px 10px;font-size:12px}
.field.has-error input,.field.has-error textarea,.field.has-error select,input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"]{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.08)}
.field-error-message{display:block;margin-top:6px;color:#b91c1c;font-size:12px;font-weight:700;line-height:1.35}.check-row.has-error{outline:1px solid #fecaca;border-radius:10px;padding:8px}.point-card.has-error,.point-cards.has-error{outline:2px solid #fecaca;outline-offset:3px}
form[data-submitting="1"]{cursor:progress}form[data-submitting="1"] button{cursor:wait}.promo-form[hidden],form[data-promo-remove][hidden]{display:none!important}
@media(max-width:640px){.form-feedback{font-size:12px;padding:10px 11px}.field-error-message{font-size:11px}}
button.favorites-active svg{fill:currentColor}

/* Geebiz V5.4.14 — variantes produit */
.from-price{font-size:10px;color:#667085;font-weight:700;white-space:nowrap}.variant-picker{border:0;padding:0;margin:0 0 16px}.variant-picker legend{font-weight:800;margin-bottom:9px}.variant-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.variant-choice{position:relative;border:1px solid #dfe3ea;border-radius:12px;padding:10px 12px;cursor:pointer;background:#fff;display:flex;align-items:flex-start;gap:8px;transition:.18s}.variant-choice:hover,.variant-choice.is-selected{border-color:#7766f4;box-shadow:0 0 0 3px rgba(122,80,255,.08)}.variant-choice input{margin-top:3px;accent-color:#6f52ff}.variant-choice span{display:grid;gap:3px;min-width:0}.variant-choice strong{font-size:13px;line-height:1.3}.variant-choice small{font-size:11px;color:#667085}.variant-choice.is-out small{color:#b42318}.cart-variant-label,.order-variant-label{font-size:12px;color:#635b9d;font-weight:700;margin:2px 0}.summary-variant{display:block;color:#667085;font-size:11px;margin-top:2px;font-weight:600}.variant-admin-section{margin:24px 0 8px;border-top:1px solid #e7e9ef;padding-top:22px}.variant-admin-section .admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.variant-admin-section .admin-section-heading h3{margin:0 0 4px}.variant-admin-section .admin-section-heading p{margin:0;color:#667085;max-width:680px}.variant-option-names{display:grid;grid-template-columns:repeat(3,1fr 1fr);gap:10px;margin:16px 0}.variant-admin-list{display:grid;gap:12px}.variant-admin-row{border:1px solid #dfe3ea;border-radius:14px;padding:14px;background:#fbfcfe}.variant-row-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}.variant-row-head>strong{margin-right:auto}.variant-row-head label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700}.variant-values-grid{display:grid;grid-template-columns:repeat(3,1fr 1fr);gap:9px}.variant-meta-grid{display:grid;grid-template-columns:1.25fr repeat(4,.8fr) 1.3fr;gap:9px;margin-top:10px}.variant-image-field img{width:54px;height:54px;object-fit:cover;border-radius:8px;margin-bottom:5px}.variant-help{color:#667085;font-size:12px;margin-bottom:0}
@media(max-width:1000px){.variant-option-names,.variant-values-grid{grid-template-columns:repeat(2,1fr)}.variant-meta-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.variant-choice-grid{grid-template-columns:1fr}.variant-admin-section .admin-section-heading{display:grid}.variant-option-names,.variant-values-grid,.variant-meta-grid{grid-template-columns:1fr}.variant-row-head>strong{width:100%;margin-right:0}}

/* V5.4.15 — suivi hybride + synchronisation temps réel */
.bo-live-sync{position:fixed;right:16px;bottom:16px;z-index:3000;display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid #dfe3ef;box-shadow:0 8px 24px rgba(35,40,74,.12);font-size:11px;color:#596174;backdrop-filter:blur(8px)}
[dir="rtl"] .bo-live-sync{right:auto;left:16px}.bo-live-sync span{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}.bo-live-sync.just-updated{border-color:#7dd3fc}.bo-live-sync.is-offline span{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.12)}
.tracking-v5415{padding-bottom:28px}.tracking-live-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 18px;padding:16px 18px;border:1px solid #e1e4ee;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(45,48,78,.06)}.tracking-live-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;font-size:24px;background:#f5f3ff}.tracking-live-card>div:nth-child(2){display:flex;flex-direction:column;gap:2px}.tracking-live-card>div:nth-child(2)>span{font-size:11px;color:#8a90a1;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.tracking-live-card strong{font-size:16px;color:#25293b}.tracking-live-card small{color:#72798c}.tracking-live-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:11px;color:#6b7280}.tracking-refresh-dot{color:#15803d;font-weight:800}.tracking-live-card.mode-live{border-color:#bbf7d0;background:linear-gradient(135deg,#fff,#f0fdf4)}.tracking-live-card.mode-last_known{border-color:#fde68a;background:linear-gradient(135deg,#fff,#fffbeb)}.tracking-live-card.mode-anchor{border-color:#bfdbfe;background:linear-gradient(135deg,#fff,#eff6ff)}.tracking-live-card.mode-delivered{border-color:#bbf7d0}.tracking-route-timeline .route-kind-driver .tracking-dot{background:#ecfeff;border-color:#a5f3fc}.tracking-route-timeline .route-kind-point .tracking-dot,.tracking-route-timeline .route-kind-central .tracking-dot{background:#eef2ff;border-color:#c7d2fe}.tracking-route-timeline .route-kind-destination .tracking-dot{background:#f0fdf4;border-color:#bbf7d0}.tracking-info-card{display:flex;flex-direction:column;gap:4px}.tracking-info-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #eef0f5}.tracking-info-row span{color:#747b8d;font-size:12px}.tracking-info-row strong{text-align:end;color:#2e3348;font-size:13px}.tracking-map-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tracking-map-legend span{padding:6px 9px;border:1px solid #e4e6ef;border-radius:999px;background:#fff;font-size:11px;color:#596174}.tracking-map-dot.kind-driver{background:#10b981}.tracking-map-dot.kind-point{background:#6f52ff}.tracking-map-dot.kind-central{background:#334155}.tracking-map-dot.kind-event{background:#66cddd}.central-location-settings{margin:18px 0;padding:16px;border:1px solid #dddff0;border-radius:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.central-location-settings legend{padding:0 8px;font-weight:850}.central-location-settings label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800}.central-location-settings input{min-height:43px;border:1px solid #dfe2eb;border-radius:11px;padding:0 11px}.central-location-settings small{grid-column:1/-1;color:#737a8d;line-height:1.5}
@media(max-width:700px){.tracking-live-card{grid-template-columns:auto 1fr}.tracking-live-meta{grid-column:1/-1;align-items:flex-start;flex-direction:row}.tracking-info-row{flex-direction:column;gap:4px}.central-location-settings{grid-template-columns:1fr}.tracking-map-section .order-tracking-map{height:360px}.bo-live-sync{bottom:78px}}
.central-location-actions{grid-column:1/-1}.central-location-actions .btn-outline{min-height:40px}

/* V5.4.15.1 — les coordonnées GPS restent internes. */
.central-location-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.central-location-actions strong{font-size:12px;color:#557062}
/* V5.4.15.2 — une section en cours de saisie peut différer la mise à jour de ce bloc uniquement. */
.bo-live-sync.has-pending span{background:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.12)}

/* V5.4.17.8 — prix mobile juste avant le choix de variante. */
.mobile-variant-price{display:none}
@media(max-width:640px){
  .product-detail.has-variants>.big-price{display:none}
  .product-detail.has-variants .mobile-variant-price{display:flex;align-items:baseline;gap:10px;margin:0 0 10px;font-size:30px;line-height:1.1;color:#315dff;font-weight:900}
  .product-detail.has-variants .mobile-variant-price .compare-price{font-size:16px;color:#98a2b3;font-weight:500}
  .product-detail.has-variants .variant-picker legend{margin-top:0}
}

/* V5.4.18 — description longue repliable + avis clients vérifiés. */
.product-long-description{margin:14px 0 4px;color:#344054}.product-description-content{position:relative;line-height:1.65}.product-long-description.is-collapsed .product-description-content{max-height:5.1em;overflow:hidden}.product-long-description.is-collapsed .product-description-content:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.6em;background:linear-gradient(180deg,rgba(255,255,255,0),#fff)}.product-description-toggle{border:0;background:transparent;color:#4e57ea;font-weight:800;padding:7px 0 0;cursor:pointer}.product-description-toggle:hover{text-decoration:underline}
.product-reviews{margin:2px 0 38px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}.product-reviews-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.product-reviews-head h2{margin:3px 0 0;font-size:24px}.section-kicker{display:block;color:var(--violet);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.reviews-summary{text-align:right;display:grid;gap:2px}.reviews-summary strong{font-size:22px;color:#f59e0b}.reviews-summary span{color:var(--muted);font-size:13px}.review-list{display:grid;gap:12px;margin-top:18px}.review-card{border:1px solid #e6e9ef;border-radius:15px;padding:16px;background:#fff}.review-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.review-card-top>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.verified-purchase{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#ecfdf3;color:#166534;font-size:11px;font-weight:850}.review-date{color:#98a2b3;font-size:12px}.review-stars,.review-stars-admin{color:#f59e0b;letter-spacing:1px;font-weight:900}.review-card p{margin:9px 0 0;color:#344054;line-height:1.6}.reviews-empty,.review-login-note,.review-user-state{padding:13px 14px;border-radius:12px;background:#f8f9fb;color:#667085;margin:12px 0}.review-login-note a{color:#4e57ea;font-weight:800}.review-user-state.pending{background:#fff8db;color:#7a5b00}.review-user-state.approved{background:#ecfdf3;color:#166534}.review-form{max-width:720px;margin:14px 0 20px;padding:18px}.review-form-head strong{display:block;font-size:18px}.review-form-head small{display:block;color:#16804b;font-weight:750;margin-top:4px}.review-rating{border:0;padding:0;margin:16px 0 12px}.review-rating legend{font-weight:800;margin-bottom:7px}.review-stars-input{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:3px}.review-stars-input input{position:absolute;opacity:0;pointer-events:none}.review-stars-input label{font-size:30px;line-height:1;color:#d0d5dd;cursor:pointer;transition:.15s}.review-stars-input input:checked~label,.review-stars-input label:hover,.review-stars-input label:hover~label{color:#f59e0b}.review-form textarea{width:100%;resize:vertical;border:1px solid #d8dde6;border-radius:12px;padding:12px;background:#fff}.review-form .btn-primary{margin-top:12px}.review-moderation-note{display:block;color:#667085;margin-top:8px}.order-item-review-row>span{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.order-review-link{font-size:12px;color:#4e57ea;font-weight:800}
@media(max-width:720px){.product-reviews{padding:17px 14px;border-radius:16px;margin-bottom:28px}.product-reviews-head{align-items:flex-end}.product-reviews-head h2{font-size:21px}.reviews-summary strong{font-size:19px}.review-card{padding:14px}.review-card-top{gap:8px}.review-form{padding:15px}.review-stars-input label{font-size:34px}.product-long-description.is-collapsed .product-description-content{max-height:4.9em}}

/* V5.4.18.1 — avis persistants dans Mes commandes + badge note Boutique. */
.product-rating-badge{position:absolute;z-index:3;right:10px;top:10px;display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(245,158,11,.28);box-shadow:0 6px 18px rgba(17,20,37,.12);color:#9a6700;font-size:11px;font-weight:900;line-height:1;backdrop-filter:blur(5px)}
.product-rating-badge b{font-size:11px;color:#7c5200}
.order-review-request-row>td{padding:0 9px 18px!important;background:#fbfbfd}
.order-review-request{border:1px solid #e7e9ef;border-radius:14px;background:#fff;padding:14px}
.order-review-request-title{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}.order-review-request-title strong{font-size:14px}.order-review-request-title small{color:#667085}
.order-review-products{display:grid;gap:10px}.order-review-product{border:1px solid #e5e8ef;border-radius:13px;padding:13px;background:#fff}.order-review-product-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px}.order-review-product-head>strong{font-size:13px}
.order-review-persistent{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border-radius:10px;font-size:12px}.order-review-persistent.pending{background:#fff8db;color:#7a5b00}.order-review-persistent.approved{background:#ecfdf3;color:#166534}.order-review-persistent.rejected{background:#fff1f2;color:#9f1239;margin-bottom:10px}
.account-review-form{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:12px;align-items:end}.account-review-form .review-rating{margin:0}.account-review-form .review-rating legend{font-size:12px}.account-review-form .review-stars-input label{font-size:27px}.account-review-form .field{margin:0}.account-review-form .field label{font-size:12px}.account-review-form textarea{min-height:68px!important;max-height:140px;resize:vertical}.account-review-actions{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.account-review-actions .mini-btn{background:#6256e8;color:#fff;border-color:#6256e8;white-space:nowrap}.account-review-actions small{font-size:10px;color:#667085}
@media(max-width:760px){.product-rating-badge{right:7px;top:7px;padding:5px 7px;font-size:10px}.product-rating-badge b{font-size:10px}.account-review-form{grid-template-columns:1fr;align-items:stretch}.account-review-actions .mini-btn{width:100%;min-height:38px}.order-review-request{padding:11px}.order-review-request-row>td{padding-bottom:12px!important}}


/* === Geebiz V5.4.18.2: rating RTL + filtres mobiles repliables === */
.filter-toggle{width:100%;border:0;background:transparent;padding:0;color:inherit;text-align:inherit;font:inherit;cursor:default}
.filter-toggle-icons{display:inline-flex;align-items:center;gap:7px;color:#6c53e8;flex:0 0 auto}
.filter-toggle-chevron{display:none;transition:transform .18s ease}
html[dir="rtl"] .product-rating-badge{right:auto!important;left:10px!important}
@media(max-width:640px){
  html[dir="rtl"] .product-rating-badge{right:auto!important;left:7px!important}
  .filters[data-mobile-filters]{padding:15px!important}
  .filters[data-mobile-filters] .filter-toggle{cursor:pointer;margin:0}
  .filters[data-mobile-filters] .filter-toggle-chevron{display:inline-flex}
  .filters[data-mobile-filters] .combined-filters{display:none!important;margin-top:15px}
  .filters[data-mobile-filters].is-open .combined-filters{display:grid!important}
  .filters[data-mobile-filters].is-open .filter-toggle-chevron{transform:rotate(90deg)}
}
@media(min-width:641px){
  .filters[data-mobile-filters] .combined-filters{display:grid!important}
}

/* V5.4.18.7 — lisibilité mobile, footer compact 2x2 et menu Catégories iOS. */
@media(max-width:640px){
  /* Les icônes restent identiques; seul le texte devient plus lisible. */
  .benefit{padding:18px 17px;gap:16px;min-height:112px}
  .benefit strong{font-size:17px!important;line-height:1.25!important}
  .benefit span{font-size:14px!important;line-height:1.5!important;margin-top:6px!important}

  /* Intro pleine largeur puis 4 rubriques organisées 2 par 2. */
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 18px!important;padding:24px 15px 18px!important}
  .footer-grid>div{grid-column:auto!important;min-width:0}
  .footer-grid>div:first-child{grid-column:1/-1!important}
  .footer-grid h4{font-size:16px!important;line-height:1.2!important;margin-bottom:10px!important}
  .footer-grid a{font-size:13px!important;line-height:1.35!important;margin:8px 0!important;overflow-wrap:anywhere}
  .footer-grid p{font-size:13px!important;line-height:1.45!important;overflow-wrap:anywhere}
  .footer-grid>div:last-child p{align-items:flex-start!important;gap:7px!important}
  .footer-grid>div:last-child p svg{flex:0 0 auto;margin-top:1px}

  /* La réserve de la barre mobile appartient au footer, pas au body : plus de bande blanche après le copyright. */
  body{padding-bottom:0!important}
  .site-footer{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;margin-bottom:0!important}
  .copyright{padding:12px 10px!important;font-size:11.5px!important}

  /* Dropdown porté directement sous body par JS : évite le clipping de Safari/iPhone. */
  .category-dropdown.category-dropdown-mobile-portal{
    position:fixed!important;
    left:11px!important;right:11px!important;width:auto!important;
    max-height:min(56vh,420px)!important;overflow-y:auto!important;overflow-x:hidden!important;
    display:grid!important;grid-template-columns:1fr!important;gap:5px!important;
    padding:10px!important;border-radius:17px!important;z-index:20000!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .category-dropdown.category-dropdown-mobile-portal a{
    display:block!important;visibility:visible!important;opacity:1!important;
    color:#3f465a!important;background:#fff!important;
    font-size:15px!important;line-height:1.35!important;padding:12px!important;
  }
  html[dir="rtl"] .category-dropdown.category-dropdown-mobile-portal a{text-align:right!important;direction:rtl!important}
}

@media(min-width:641px) and (max-width:900px){
  .category-dropdown.category-dropdown-mobile-portal{
    position:fixed!important;left:13px!important;right:13px!important;width:auto!important;
    max-height:min(56vh,420px)!important;overflow-y:auto!important;display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;z-index:20000!important;
    -webkit-overflow-scrolling:touch!important;
  }
}

/* V5.4.18.8 — footer mobile final + alignement vertical des cartes produits. */
.footer-contact-link{display:inline!important;margin:0!important;color:inherit!important;text-decoration:none}
.footer-contact-link:hover{text-decoration:underline}

/* Le prix et l'action forment le bas stable de chaque carte, même avec des titres de longueurs différentes. */
.product-card .product-info>.price-row{margin-top:auto!important}
.product-card .product-info>.add-btn,
.product-card .product-info>form{margin-top:0!important}
.product-card .product-info>form{width:100%;padding:0}
.product-card .product-info>form .add-btn{margin-top:0!important}

@media(max-width:640px){
  /* Pas de bande blanche après le copyright : la réserve de la navigation est absorbée dans le fond du copyright. */
  .site-footer{padding-bottom:0!important;margin-bottom:0!important}
  .copyright{
    margin-bottom:0!important;
    padding:12px 10px calc(84px + env(safe-area-inset-bottom))!important;
    background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(246,247,255,.96))!important;
  }
}
/* V5.4.18.11 — accueil mobile : barre toujours fixe, aucune réserve sous le footer.
   Ce bloc annule toutes les anciennes compensations de hauteur uniquement sur l’accueil. */
@media(max-width:900px){
  body.page-home{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  body.page-home main{margin-bottom:0!important;padding-bottom:0!important}
  body.page-home .site-footer{padding-bottom:0!important;margin-bottom:0!important}
  body.page-home .copyright{padding:12px 10px!important;margin:0!important}
  body.page-home .mobile-bottom,
  body.page-home .mobile-bottom.is-footer-docked,
  body.page-home .mobile-bottom.is-footer-clear{
    position:fixed!important;
    display:grid!important;
    left:10px!important;
    right:10px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    margin:0!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }
}

/* V5.4.18.12 — header : recherche un peu plus large, espace logo/recherche réduit sur tout le site. */
@media(min-width:1101px){
  .header-main{
    grid-template-columns:250px minmax(420px,1fr) 310px!important;
    gap:18px!important;
  }
}
@media(min-width:901px) and (max-width:1100px){
  .header-main{
    grid-template-columns:178px minmax(280px,1fr) auto!important;
    gap:10px!important;
  }
  .brand{width:170px!important}
}
@media(max-width:900px){
  .header-main{
    column-gap:6px!important;
  }
}
@media(max-width:640px){
  .header-main{
    grid-template-columns:108px minmax(0,1fr) 48px!important;
    gap:5px!important;
    margin-inline:7px!important;
  }
  .brand{width:108px!important}
  .searchbar{width:100%!important}
}

/* V5.4.18.13 — mobile header: rapproche la recherche du logo sans redimensionner le logo. */
@media(max-width:640px){
  .header-main .searchbar{
    margin-inline-start:-10px!important;
    width:calc(100% + 10px)!important;
  }
}

/* V5.4.18.14 — mobile header: vrai espacement, sans marge négative ni marge interne du header. */
@media(max-width:640px){
  .header-main{
    margin-inline:0!important;
    grid-template-columns:108px minmax(0,1fr) 48px!important;
    gap:4px!important;
  }
  .brand{
    width:108px!important;
    margin:0!important;
  }
  .header-main .searchbar{
    margin-inline:0!important;
    width:100%!important;
  }
}

/* V5.4.18.15 — mobile header: aligne visuellement le logo vers la recherche sans changer sa taille. */
@media(max-width:640px){
  html[dir="ltr"] .header-main .brand img{
    object-position:right center!important;
  }
  html[dir="rtl"] .header-main .brand img{
    object-position:left center!important;
  }
}


/* V5.4.19.1 — rappel cookies 30 jours + marqueurs publics Geebiz mauves. */
.cookie-notice[hidden]{display:none!important}
.cookie-notice{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:22000;width:min(760px,calc(100% - 28px));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 15px;border:1px solid rgba(111,82,255,.22);border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 18px 50px rgba(34,30,74,.20);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.cookie-notice-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#f1edff,#edfaff);font-size:21px}
.cookie-notice-copy{min-width:0}.cookie-notice-copy strong{display:block;color:#27243c;font-size:13px;margin-bottom:2px}.cookie-notice-copy p{margin:0;color:#686f80;font-size:11.5px;line-height:1.45}.cookie-notice-copy a{display:inline-block;margin-top:3px;color:#684fe3;font-size:11px;font-weight:850;text-decoration:underline;text-underline-offset:2px}
.cookie-notice-btn{border:0;border-radius:12px;background:linear-gradient(100deg,#7452ff,#6550dd);color:#fff;font-size:12px;font-weight:900;padding:10px 15px;white-space:nowrap;cursor:pointer;box-shadow:0 8px 20px rgba(103,78,226,.22)}
.cookie-notice-btn:hover{filter:brightness(.97)}

.geebiz-map-label-shell{background:transparent!important;border:0!important;overflow:visible!important}
.geebiz-map-place{width:168px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;pointer-events:auto}
.geebiz-map-place-label{position:relative;display:block;max-width:158px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 11px;border:2px solid #fff;border-radius:12px;background:linear-gradient(135deg,#7653ff,#6548dc);color:#fff;font-size:11.5px;font-weight:900;line-height:1.1;text-align:center;box-shadow:0 8px 22px rgba(74,51,165,.28)}
.geebiz-map-place-label::after{content:"";position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid #6548dc}
.geebiz-map-place-tip{width:9px;height:9px;margin-top:7px;border-radius:50%;background:#6f52ff;border:2px solid #fff;box-shadow:0 4px 10px rgba(67,47,145,.35)}
.leaflet-marker-icon.geebiz-map-label-shell:hover .geebiz-map-place-label{background:linear-gradient(135deg,#6845f1,#5537c7);transform:translateY(-1px)}
.map-popup-phone{display:inline-flex!important;margin-top:8px!important;color:#674de0!important;font-size:11px!important;font-weight:850!important;text-decoration:none!important}
.map-popup-phone:hover{text-decoration:underline!important}

@media(max-width:640px){
  .cookie-notice{bottom:calc(84px + env(safe-area-inset-bottom));grid-template-columns:auto 1fr;gap:9px 11px;padding:12px;border-radius:16px}
  .cookie-notice-icon{width:36px;height:36px;font-size:19px}.cookie-notice-copy p{font-size:10.8px}.cookie-notice-btn{grid-column:1/-1;width:100%;padding:9px 12px}
  .geebiz-map-place{width:142px}.geebiz-map-place-label{max-width:136px;padding:6px 9px;font-size:10.5px}
}
