/*
Theme Name: Nishat Dev
Theme URI: https://nishatsharma.net
Author: Nishat Sharma
Description: Premium portfolio theme for Shopify and WordPress developers
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: nishat-dev
*/

/* =====================================================
   VARIABLES
   ===================================================== */
:root {
  --black:   #0a0a0a;
  --white:   #f0ede8;
  --accent:  #c8f04a;
  --accent2: #a8d030;
  --g1:      #111111;
  --g2:      #1a1a1a;
  --g3:      #2a2a2a;
  --muted:   #666666;
  --border:  rgba(255,255,255,0.07);
  --fd:      'Syne', sans-serif;
  --fb:      'DM Sans', sans-serif;
  --pill:    40px;
  --ease:    cubic-bezier(0.16,1,0.3,1);
}

/* =====================================================
   RESET
   ===================================================== */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box }
html { scroll-behavior:smooth; font-size:16px }
body { background:var(--black); color:var(--white); font-family:var(--fb); -webkit-font-smoothing:antialiased; overflow-x:hidden }
img { max-width:100%; height:auto; display:block }
a { color:inherit; text-decoration:none }
ul, ol { list-style:none }
button { cursor:pointer; font-family:inherit; border:none; background:none }

/* =====================================================
   TYPOGRAPHY
   ===================================================== */
h1,h2,h3,h4,h5,h6 { font-family:var(--fd); font-weight:700; line-height:1.05; letter-spacing:-.02em; color:var(--white) }
h1 { font-size:clamp(2.4rem,7vw,6rem) }
h2 { font-size:clamp(1.8rem,4vw,3.2rem) }
h3 { font-size:clamp(1.1rem,2vw,1.5rem) }
p  { line-height:1.75; color:var(--muted) }
.accent  { color:var(--accent) }
.dimmed  { color:var(--g3) }
.text-dim { color:rgba(255,255,255,0.25) }

/* =====================================================
   LAYOUT
   ===================================================== */
.wrap     { max-width:1280px; margin:0 auto; padding:0 4rem; width:100% }
.section  { padding:7rem 0 }
.section-sm { padding:4rem 0 }
.label    { display:inline-flex; align-items:center; gap:.75rem; font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--accent); font-weight:600; margin-bottom:.75rem }
.label::before { content:''; width:2rem; height:1px; background:var(--accent); flex-shrink:0 }
.flex-between { display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:1rem }

/* =====================================================
   BUTTONS
   ===================================================== */
.btn { display:inline-flex; align-items:center; gap:.5rem; padding:.85rem 2rem; border-radius:var(--pill); font-family:var(--fd); font-size:.9rem; font-weight:700; transition:all .3s; cursor:pointer; white-space:nowrap }
.btn-primary { background:var(--accent); color:var(--black) }
.btn-primary:hover { background:var(--accent2); transform:translateY(-2px); box-shadow:0 16px 48px rgba(200,240,74,.3) }
.btn-outline { border:1px solid var(--border); color:var(--white) }
.btn-outline:hover { border-color:rgba(255,255,255,.3); background:rgba(255,255,255,.05) }
.btn-dark { background:var(--black); color:var(--white) }
.btn-dark:hover { background:var(--g2); transform:translateY(-2px) }
.btn-sm { padding:.55rem 1.25rem; font-size:.82rem }
.btn-lg { padding:1rem 2.5rem; font-size:1rem }
.btn-outline-dark { border:1px solid rgba(10,10,10,.2); color:#0a0a0a; padding:.7rem 1.5rem; border-radius:var(--pill); font-size:.85rem; font-weight:700; font-family:var(--fd); white-space:nowrap; transition:all .2s; text-decoration:none; display:inline-block }
.btn-outline-dark:hover { background:#0a0a0a; color:#fff }

/* =====================================================
   NAVIGATION
   ===================================================== */
#site-nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:1.25rem 0; transition:all .3s }
#site-nav.scrolled { background:rgba(10,10,10,.94); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border-bottom:1px solid var(--border); padding:.85rem 0 }
.nav-inner { display:flex; align-items:center; justify-content:space-between; gap:1.5rem }
.site-logo { font-family:var(--fd); font-size:1.15rem; font-weight:800; letter-spacing:-.02em; color:var(--white); flex-shrink:0 }
.site-logo span { color:var(--accent) }
.site-logo img { height:40px; width:auto }
.nav-links { display:flex; align-items:center; gap:2rem; flex:1; justify-content:center }
.nav-links a { font-size:.84rem; color:var(--muted); letter-spacing:.04em; font-weight:500; transition:color .3s; position:relative }
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; right:0; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .3s }
.nav-links a:hover { color:var(--white) }
.nav-links a:hover::after { transform:scaleX(1) }
.nav-right { display:flex; align-items:center; gap:.75rem; flex-shrink:0 }
.cart-link { display:flex; align-items:center; gap:.3rem; color:var(--muted); transition:color .3s; position:relative; padding:.3rem; text-decoration:none }
.cart-link:hover { color:var(--white) }
.cart-badge { position:absolute; top:-6px; right:-8px; background:var(--accent); color:var(--black); font-size:.6rem; font-weight:700; width:17px; height:17px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--fd) }
.hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px }
.hamburger span { display:block; width:22px; height:1.5px; background:var(--white); transition:all .3s }
.hamburger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px) }
.hamburger.open span:nth-child(2) { opacity:0 }
.hamburger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px) }
.mob-right { display:none; align-items:center; gap:.75rem }
.mobile-nav { position:fixed; inset:0; background:var(--black); z-index:999; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.75rem; opacity:0; pointer-events:none; transition:opacity .3s }
.mobile-nav.open { opacity:1; pointer-events:all }
.mobile-nav a { font-family:var(--fd); font-size:1.9rem; font-weight:800; color:var(--white); transition:color .2s }
.mobile-nav a:hover { color:var(--accent) }
.mob-close { position:absolute; top:1.5rem; right:1.5rem; width:38px; height:38px; background:none; border:1px solid var(--border); border-radius:50%; color:var(--white); font-size:1rem; display:flex; align-items:center; justify-content:center; cursor:pointer }
.mob-cta { background:var(--accent) !important; color:var(--black) !important; padding:.7rem 2rem !important; border-radius:var(--pill) !important; font-size:1.1rem !important }
.mob-cart { font-size:1rem !important; color:var(--muted) !important }

/* =====================================================
   PROGRESS + CURSOR + BACK TOP + LOADER
   ===================================================== */
#progress { position:fixed; top:0; left:0; height:2px; background:var(--accent); z-index:9999; width:0; transition:width .1s linear }
#cursor { width:10px; height:10px; background:var(--accent); border-radius:50%; position:fixed; top:0; left:0; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); mix-blend-mode:difference }
#cursor-f { width:32px; height:32px; border:1px solid rgba(200,240,74,.5); border-radius:50%; position:fixed; top:0; left:0; pointer-events:none; z-index:9998; transform:translate(-50%,-50%); transition:all .25s }
#cursor.big { transform:translate(-50%,-50%) scale(2.5) }
#cursor-f.big { transform:translate(-50%,-50%) scale(1.5); opacity:0 }
#back-top { position:fixed; bottom:2rem; right:2rem; width:44px; height:44px; background:var(--accent); color:var(--black); border:none; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.1rem; cursor:pointer; opacity:0; transform:translateY(20px); transition:all .3s; z-index:500; text-decoration:none }
#back-top.show { opacity:1; transform:translateY(0) }
#back-top:hover { transform:translateY(-4px) }
#loader { position:fixed; inset:0; background:var(--black); z-index:10000; display:flex; align-items:center; justify-content:center; transition:opacity .5s ease, visibility .5s ease }
#loader.gone { opacity:0; visibility:hidden; pointer-events:none }
.loader-logo { font-family:var(--fd); font-size:2rem; font-weight:800; color:var(--white); text-align:center; margin-bottom:2rem }
.loader-logo span { color:var(--accent) }
.loader-bar-wrap { width:200px; height:2px; background:var(--g3); margin:0 auto; border-radius:2px; overflow:hidden }
.loader-bar { height:100%; background:var(--accent); width:0; animation:loadbar 1.2s ease forwards }
@keyframes loadbar { to { width:100% } }

/* =====================================================
   HERO
   ===================================================== */
#hero { min-height:100vh; min-height:100svh; display:flex; align-items:center; padding:100px 0 60px; position:relative; overflow:hidden }
.hero-bg { position:absolute; inset:0; pointer-events:none }
.hero-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px); background-size:64px 64px }
.hero-glow { position:absolute; top:20%; right:-10%; width:600px; height:600px; background:radial-gradient(circle,rgba(200,240,74,.08) 0%,transparent 70%); border-radius:50%; animation:glow 8s ease-in-out infinite }
.hero-glow2 { position:absolute; bottom:10%; left:-5%; width:400px; height:400px; background:radial-gradient(circle,rgba(74,240,200,.05) 0%,transparent 70%); border-radius:50%; animation:glow 10s ease-in-out infinite reverse }
@keyframes glow { 0%,100% { transform:translateY(0) scale(1) } 50% { transform:translateY(-30px) scale(1.05) } }
.hero-content { position:relative; z-index:1; max-width:800px; width:100% }
.hero-h1 { font-family:var(--fd); font-size:clamp(3rem,9vw,7.5rem); font-weight:800; line-height:.93; letter-spacing:-.03em; margin-bottom:1.75rem }
.hero-sub { font-size:1.1rem; color:var(--muted); max-width:520px; line-height:1.75; margin-bottom:2.5rem; font-weight:300 }
.hero-actions { display:flex; gap:1rem; align-items:center; flex-wrap:wrap }
.hero-trust { display:flex; gap:3rem; margin-top:4rem; padding-top:2.5rem; border-top:1px solid var(--border); flex-wrap:wrap }
.trust-num { font-family:var(--fd); font-size:2rem; font-weight:800; line-height:1; color:var(--white) }
.trust-lbl { font-size:.72rem; color:var(--muted); letter-spacing:.06em; text-transform:uppercase; margin-top:.3rem }
.hero-badge { position:absolute; top:28%; right:7%; background:var(--accent); color:var(--black); padding:1.25rem 1.5rem; border-radius:12px; text-align:center; animation:bob 4s ease-in-out infinite; box-shadow:0 20px 60px rgba(200,240,74,.3); z-index:2 }
@keyframes bob { 0%,100% { transform:translateY(0) rotate(-2deg) } 50% { transform:translateY(-12px) rotate(2deg) } }
.scroll-ind { position:absolute; bottom:2.5rem; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:.6rem; z-index:2 }
.scroll-line { width:1px; height:50px; background:linear-gradient(to bottom,var(--accent),transparent); animation:sline 1.5s ease-in-out infinite }
@keyframes sline { 0%{transform:scaleY(0);transform-origin:top} 50%{transform:scaleY(1);transform-origin:top} 51%{transform:scaleY(1);transform-origin:bottom} 100%{transform:scaleY(0);transform-origin:bottom} }
.float-pill { position:absolute; background:var(--g2); border:1px solid var(--border); color:var(--white); padding:.6rem 1rem; border-radius:var(--pill); font-size:.8rem; font-weight:500; display:flex; align-items:center; gap:.4rem; white-space:nowrap; z-index:3 }
.pill-1 { top:2rem; right:-2rem; animation:bob 5s ease-in-out infinite }
.pill-2 { bottom:8rem; right:-3rem; animation:bob 6s ease-in-out infinite reverse; animation-delay:1s }

/* =====================================================
   MARQUEE
   ===================================================== */
.marquee-wrap { overflow:hidden; border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:.9rem 0; background:rgba(255,255,255,.015) }
.marquee-wrap:hover .marquee-track { animation-play-state:paused }
.marquee-track { display:flex; animation:marquee 25s linear infinite; width:max-content }
.marquee-item { display:flex; align-items:center; gap:1.5rem; padding:0 2rem; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); font-weight:500; white-space:nowrap }
.marquee-item .dot { color:var(--accent); font-size:.5rem }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* =====================================================
   SERVICES
   ===================================================== */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5px; background:var(--border); border:1px solid var(--border) }
.service-card { background:var(--g1); padding:2.5rem; transition:background .3s; position:relative; overflow:hidden; display:block; text-decoration:none; color:inherit }
.service-card::after { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .4s }
.service-card:hover { background:var(--g2) }
.service-card:hover::after { transform:scaleX(1) }
.svc-icon { width:52px; height:52px; background:rgba(200,240,74,.08); border:1px solid rgba(200,240,74,.15); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.4rem; margin-bottom:1.75rem; transition:all .3s }
.service-card:hover .svc-icon { background:rgba(200,240,74,.15); transform:scale(1.1) }
.service-card h3 { font-size:1.05rem; margin-bottom:.75rem }
.service-card p { font-size:.88rem; color:var(--muted); line-height:1.65 }
.svc-price { margin-top:1.5rem; font-family:var(--fd); font-size:1rem; font-weight:700; color:var(--accent) }
.svc-arrow { position:absolute; bottom:2rem; right:2rem; width:36px; height:36px; border:1px solid var(--border); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.9rem; color:var(--muted); transition:all .3s }
.service-card:hover .svc-arrow { background:var(--accent); border-color:var(--accent); color:var(--black); transform:rotate(45deg) }
.card-shine { position:absolute; inset:0; pointer-events:none; opacity:0; transition:opacity .3s }

/* =====================================================
   STATS
   ===================================================== */
.stats-row { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--border) }
.stat-item { padding:3rem 2rem; border-right:1px solid var(--border); text-align:center; transition:background .3s }
.stat-item:last-child { border-right:none }
.stat-item:hover { background:var(--g1) }
.stat-num { font-family:var(--fd); font-size:3rem; font-weight:800; color:var(--white); line-height:1; display:block }
.stat-lbl { font-size:.72rem; color:var(--muted); letter-spacing:.08em; text-transform:uppercase; margin-top:.5rem; display:block }

/* =====================================================
   PLATFORMS
   ===================================================== */
.plats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; margin-top:3rem }
.plat-card { background:var(--g1); border:1px solid var(--border); border-radius:14px; padding:1.75rem 1.5rem; text-align:center; text-decoration:none; display:block; transition:transform .35s var(--ease),border-color .3s,box-shadow .35s }
.plat-card:hover { transform:translateY(-8px); border-color:rgba(200,240,74,.25); box-shadow:0 20px 60px rgba(0,0,0,.4) }
.plat-icon { width:56px; height:56px; border-radius:14px; display:flex; align-items:center; justify-content:center; margin:0 auto 1.1rem; transition:transform .3s }
.plat-card:hover .plat-icon { transform:scale(1.1) }
.plat-name { font-family:var(--fd); font-size:1.05rem; font-weight:700; color:var(--white); margin-bottom:.35rem }
.plat-meta { font-size:.78rem; color:var(--muted); margin-bottom:1rem }
.plat-tag { display:inline-block; background:rgba(200,240,74,.1); border:1px solid rgba(200,240,74,.2); color:var(--accent); padding:.3rem .9rem; border-radius:var(--pill); font-size:.7rem; font-weight:700; letter-spacing:.04em }

/* =====================================================
   ABOUT
   ===================================================== */
.about-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:6rem; align-items:center }
.about-img-wrap { position:relative }
.about-img { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:2px; display:block }
.about-placeholder { width:100%; aspect-ratio:4/5; background:var(--g2); border-radius:2px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; color:var(--muted); font-size:.85rem; text-align:center; padding:2rem; border:2px dashed var(--border) }
.about-badge { position:absolute; bottom:-2rem; right:-2rem; background:var(--accent); color:var(--black); padding:1.25rem 1.75rem; border-radius:2px }
.about-badge .big { font-family:var(--fd); font-size:2.2rem; font-weight:800; line-height:1 }
.about-badge .small { font-size:.78rem; font-weight:600; letter-spacing:.05em; margin-top:.25rem; opacity:.7 }
.about-text p { margin-bottom:1.25rem; font-size:1rem; line-height:1.8 }
.skills-wrap { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.5rem }
.skill { background:rgba(255,255,255,.04); border:1px solid var(--border); color:var(--muted); padding:.35rem .9rem; border-radius:var(--pill); font-size:.8rem; font-weight:500; transition:all .3s; cursor:default }
.skill:hover { background:rgba(200,240,74,.08); border-color:rgba(200,240,74,.2); color:var(--accent) }

/* =====================================================
   PROCESS
   ===================================================== */
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:4rem; position:relative }
.process-grid::before { content:''; position:absolute; top:2rem; left:12.5%; right:12.5%; height:1px; background:var(--border); z-index:0 }
.process-step { padding:0 1.5rem; text-align:center; position:relative; z-index:1 }
.step-num { width:4rem; height:4rem; background:var(--g2); border:1px solid var(--border); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--fd); font-size:1.1rem; font-weight:700; color:var(--accent); margin:0 auto 1.5rem; transition:all .3s }
.process-step:hover .step-num { background:var(--accent); color:var(--black); border-color:var(--accent) }
.process-step h4 { font-size:1rem; margin-bottom:.75rem }
.process-step p { font-size:.85rem; color:var(--muted); line-height:1.6 }

/* =====================================================
   HOME PRODUCTS (light bg)
   ===================================================== */
.home-prods { background:#f5f4f0 }
.home-prods .label { color:#888 }
.home-prods .label::before { background:#888 }
.home-prods h2 { color:#0a0a0a }
.home-prods h2 .text-dim { color:#bbb }
.hp-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem }
.hp-card { background:#fff; border:1px solid #e8e8e4; border-radius:10px; overflow:hidden; transition:transform .35s var(--ease),box-shadow .35s,border-color .3s }
.hp-card:hover { transform:translateY(-6px); box-shadow:0 16px 48px rgba(0,0,0,.12); border-color:#c8f04a }
.hp-img { display:block; position:relative; overflow:hidden }
.hp-img img { width:100%; height:210px; object-fit:cover; display:block; transition:transform .4s }
.hp-card:hover .hp-img img { transform:scale(1.05) }
.hp-sale { position:absolute; top:.75rem; left:.75rem; background:#e24b4a; color:#fff; font-size:.65rem; font-weight:700; padding:3px 10px; border-radius:var(--pill); letter-spacing:.05em }
.hp-body { padding:1.1rem }
.hp-body h4 { font-size:.9rem; font-weight:600; margin-bottom:.4rem; line-height:1.35 }
.hp-body h4 a { color:#0a0a0a; transition:color .2s }
.hp-body h4 a:hover { color:#0a8a5c }
.hp-price { font-family:var(--fd); font-weight:700; color:#0a8a5c; font-size:1rem; margin-bottom:.9rem }
.hp-price del { color:#bbb; font-weight:400; font-size:.82rem; margin-right:3px }
.hp-price ins { text-decoration:none }
.hp-btn { display:block; text-align:center; background:#0a0a0a; color:#fff; padding:.7rem; border-radius:6px; font-size:.82rem; font-weight:700; font-family:var(--fd); text-decoration:none; transition:background .2s; letter-spacing:.03em }
.hp-btn:hover { background:#c8f04a; color:#0a0a0a }

/* =====================================================
   TRUST / TESTIMONIALS / BLOG
   ===================================================== */
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem }
.trust-card { background:var(--g1); border:1px solid var(--border); border-radius:2px; padding:2rem; text-align:center; transition:all .3s }
.trust-card:hover { transform:translateY(-4px); border-color:rgba(200,240,74,.15) }
.trust-icon { font-size:2rem; margin-bottom:1rem; display:block }
.trust-card h4 { font-size:.95rem; margin-bottom:.5rem }
.trust-card p { font-size:.82rem; color:var(--muted); line-height:1.6 }
.testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
.testi-card { background:var(--g1); border:1px solid var(--border); border-radius:2px; padding:2rem; transition:all .3s }
.testi-card:hover { transform:translateY(-4px); border-color:rgba(200,240,74,.15) }
.stars { color:var(--accent); font-size:.85rem; letter-spacing:.1em; margin-bottom:1rem }
.testi-text { font-size:.93rem; color:#ccc; line-height:1.75; font-style:italic; margin-bottom:1.5rem }
.testi-author { display:flex; align-items:center; gap:.9rem }
.testi-av { width:40px; height:40px; background:rgba(200,240,74,.12); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.85rem; font-weight:700; color:var(--accent); flex-shrink:0 }
.testi-name { font-size:.9rem; font-weight:600; color:var(--white) }
.testi-role { font-size:.75rem; color:var(--muted) }
.blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
.post-card { background:var(--g1); border:1px solid var(--border); border-radius:2px; overflow:hidden; transition:all .3s }
.post-card:hover { transform:translateY(-4px); border-color:rgba(200,240,74,.15) }
.post-card img { width:100%; height:200px; object-fit:cover; display:block }
.post-img-ph { height:200px; background:var(--g2); display:flex; align-items:center; justify-content:center; color:var(--muted); font-size:.8rem }
.post-body { padding:1.5rem }
.post-meta { display:flex; gap:1rem; margin-bottom:.75rem; font-size:.75rem; color:var(--muted) }
.post-cat { color:var(--accent); font-weight:600; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase }
.post-card h3 { font-size:1rem; margin-bottom:.75rem; line-height:1.35 }
.post-card h3 a { color:var(--white); transition:color .3s }
.post-card h3 a:hover { color:var(--accent) }
.post-card p { font-size:.86rem; color:var(--muted); line-height:1.6 }
.read-more { display:inline-flex; align-items:center; gap:.4rem; margin-top:1rem; font-size:.82rem; font-weight:600; color:var(--accent); transition:gap .3s }
.read-more:hover { gap:.7rem }

/* =====================================================
   CTA
   ===================================================== */
.cta-section { background:var(--accent); padding:7rem 0; text-align:center; position:relative; overflow:hidden }
.cta-section::before { content:''; position:absolute; top:-50%; left:50%; transform:translateX(-50%); width:600px; height:600px; background:rgba(0,0,0,.06); border-radius:50% }
.cta-section * { position:relative; z-index:1 }
.cta-section h2 { color:#0a0a0a; font-size:clamp(1.8rem,5vw,4rem); margin-bottom:1.25rem }
.cta-section p { color:rgba(0,0,0,.55); font-size:1.05rem; font-weight:300 }
.cta-btns { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; margin-top:2rem }

/* =====================================================
   FOOTER
   ===================================================== */
#site-footer { background:var(--black); border-top:1px solid var(--border); padding:4rem 0 2rem }
.footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:4rem; margin-bottom:4rem }
.footer-brand p { font-size:.88rem; color:var(--muted); line-height:1.7; margin:1rem 0 1.5rem; max-width:280px }
.social-links { display:flex; gap:.75rem }
.social-link { width:36px; height:36px; background:var(--g2); border:1px solid var(--border); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.85rem; color:var(--muted); transition:all .3s }
.social-link:hover { background:var(--accent); border-color:var(--accent); color:var(--black); transform:rotate(10deg) scale(1.1) }
.footer-col h5 { font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--white); margin-bottom:1.25rem; font-weight:600 }
.footer-col ul { display:flex; flex-direction:column; gap:.7rem }
.footer-col ul li a { font-size:.86rem; color:var(--muted); transition:color .3s }
.footer-col ul li a:hover { color:var(--accent) }
.footer-bottom { padding-top:2rem; border-top:1px solid var(--border); display:flex; justify-content:space-between; align-items:center }
.footer-bottom p { font-size:.8rem; color:rgba(255,255,255,.25) }

/* =====================================================
   WOO — LIGHT THEME
   ===================================================== */
/* =====================================================
   WOO PAGE HERO HEADER
   ===================================================== */
.woo-page-hero {
    background: var(--black);
    padding: 8rem 0 3.5rem;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}
.woo-page-hero-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.woo-page-hero h1 {
    font-size: clamp(2rem,5vw,3.5rem);
    color: var(--white);
    margin: .5rem 0 1rem;
    line-height: 1.05;
}
.woo-page-hero p {
    color: var(--muted);
    font-size: 1rem;
    max-width: 520px;
    line-height: 1.7;
}
.woo-product-hero { padding-bottom: 2.5rem; }

/* WooCommerce breadcrumb */
.nd-breadcrumb {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .8rem;
    color: rgba(255,255,255,.4);
    flex-wrap: wrap;
}
.nd-breadcrumb a { color: rgba(255,255,255,.4); transition: color .2s; }
.nd-breadcrumb a:hover { color: var(--accent); }
.nd-breadcrumb span { color: rgba(255,255,255,.25); }

/* =====================================================
   WOO WRAPPER + CENTERING
   ===================================================== */
body.woocommerce, body.woocommerce-page,
body.woocommerce-cart, body.woocommerce-checkout,
body.single-product, body.woocommerce-account { background: #f5f4f0 !important; }

.nd-woo-wrapper {
    background: #f5f4f0;
    min-height: 50vh;
    width: 100%;
}
.nd-woo-wrapper .wrap {
    padding-top: 3rem;
    padding-bottom: 5rem;
    margin-left: auto !important;
    margin-right: auto !important;
}
body.single-product .nd-woo-wrapper { background: #fff; }

/* =====================================================
   WOO SHOP — PRODUCT GRID
   ===================================================== */
.woocommerce .woocommerce-notices-wrapper,
.woocommerce-page .woocommerce-notices-wrapper { margin-bottom: 1.5rem; }

.woocommerce-shop-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem;
}
.woocommerce .woocommerce-result-count { color: #888 !important; font-size: .85rem !important; }
.woocommerce .woocommerce-ordering select {
    background: #fff !important; border: 1px solid #e0e0d8 !important;
    color: #0a0a0a !important; border-radius: 6px !important;
    padding: .5rem 1rem !important; font-size: .85rem !important;
}
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(3,1fr) !important;
    gap: 1.5rem !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
}
.woocommerce ul.products li.product {
    background: #fff !important;
    border: 1px solid #e8e8e4 !important;
    border-radius: 12px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    float: none !important;
    width: auto !important;
    list-style: none !important;
    transition: transform .3s ease, box-shadow .35s, border-color .25s !important;
    position: relative !important;
}
.woocommerce ul.products li.product:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.12) !important;
    border-color: #c8f04a !important;
}
.woocommerce ul.products li.product a.woocommerce-loop-product__link { display: block; }
.woocommerce ul.products li.product a img {
    width: 100% !important; height: 220px !important;
    object-fit: cover !important; margin: 0 !important;
    border-radius: 0 !important; display: block !important;
    transition: transform .4s ease !important;
}
.woocommerce ul.products li.product:hover a img { transform: scale(1.04) !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--fd) !important; font-size: 1rem !important;
    font-weight: 700 !important; color: #0a0a0a !important;
    padding: 1.1rem 1.25rem .3rem !important; line-height: 1.3 !important;
}
.woocommerce ul.products li.product .price {
    color: #0a0a0a !important; font-family: var(--fd) !important;
    font-size: 1.05rem !important; font-weight: 700 !important;
    padding: .2rem 1.25rem .75rem !important; display: block !important;
}
.woocommerce ul.products li.product .price ins { color: #0a8a5c !important; text-decoration: none !important; font-weight: 800 !important; }
.woocommerce ul.products li.product .price del { color: #bbb !important; font-size: .82rem !important; font-weight: 400 !important; margin-right: 4px !important; }

/* Shop Add to Cart button */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
    background: #0a0a0a !important; color: #fff !important;
    border: none !important; border-radius: 0 0 12px 12px !important;
    font-family: var(--fd) !important; font-weight: 700 !important;
    font-size: .82rem !important; padding: .9rem 1.25rem !important;
    width: 100% !important; text-align: center !important;
    display: block !important; margin: 0 !important;
    letter-spacing: .05em !important; text-transform: uppercase !important;
    transition: background .2s, color .2s !important;
}
.woocommerce ul.products li.product .button:hover { background: #c8f04a !important; color: #0a0a0a !important; }
.woocommerce span.onsale {
    background: #e24b4a !important; color: #fff !important;
    border-radius: 40px !important; font-size: .68rem !important;
    font-weight: 700 !important; padding: 3px 10px !important;
    min-width: auto !important; top: .75rem !important;
    left: .75rem !important; right: auto !important; line-height: 1.5 !important;
}

/* =====================================================
   SINGLE PRODUCT PAGE
   ===================================================== */

/* Summary column */
.woocommerce div.product .summary { color: #1a1a1a !important; }

/* Gallery */
.woocommerce div.product .woocommerce-product-gallery {
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #e8e8e4 !important;
    background: #fff !important;
}
.woocommerce div.product .woocommerce-product-gallery__image img {
    border-radius: 0 !important;
}

/* Product title */
.woocommerce div.product .product_title {
    font-family: var(--fd) !important; font-size: 2.2rem !important;
    font-weight: 800 !important; color: #0a0a0a !important;
    letter-spacing: -.025em !important; line-height: 1.1 !important;
    margin-bottom: .75rem !important;
}

/* Rating stars */
.woocommerce div.product .woocommerce-product-rating { margin-bottom: 1rem !important; }
.woocommerce .star-rating { color: #f5a623 !important; }

/* Price */
.woocommerce div.product p.price, .woocommerce div.product span.price {
    font-family: var(--fd) !important; font-size: 2rem !important;
    font-weight: 800 !important; color: #0a0a0a !important;
    margin: 1rem 0 !important; display: block !important;
}
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins { color: #0a8a5c !important; text-decoration: none !important; }
.woocommerce div.product p.price del { color: #e24b4a !important; font-size: 1.2rem !important; margin-right: 6px !important; opacity: 1 !important; }

/* Short description */
.woocommerce div.product .woocommerce-product-details__short-description {
    color: #555 !important; font-size: .97rem !important; line-height: 1.8 !important;
    padding: 1.25rem 0 !important; border-top: 1px solid #e8e8e4 !important;
    border-bottom: 1px solid #e8e8e4 !important; margin: 1rem 0 1.5rem !important;
}
.woocommerce div.product .woocommerce-product-details__short-description * { color: #555 !important; }
.woocommerce div.product .woocommerce-product-details__short-description ul { list-style: disc; padding-left: 1.25rem; }
.woocommerce div.product .woocommerce-product-details__short-description li { margin-bottom: .4rem; }

/* Trust badges */
.woo-trust {
    display: flex; gap: .65rem; flex-wrap: wrap;
    padding: 1rem 1.25rem; background: #f9f9f7;
    border-radius: 10px; border: 1px solid #e8e8e4; margin: 1.25rem 0;
}
.woo-trust-item {
    font-size: .8rem; color: #444; font-weight: 500;
    display: flex; align-items: center; gap: .3rem;
}

/* Add to cart area */
.woocommerce div.product form.cart {
    display: flex; align-items: center; gap: 1rem;
    flex-wrap: wrap; margin: 1.5rem 0 !important;
}
.woocommerce .quantity input.qty {
    background: #fff !important; border: 1px solid #e0e0d8 !important;
    color: #0a0a0a !important; border-radius: 8px !important;
    font-size: 1rem !important; font-weight: 600 !important;
    width: 70px !important; padding: .8rem !important;
    text-align: center !important;
}

/* Add to cart button */
.woocommerce div.product .single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    background: #c8f04a !important; color: #0a0a0a !important;
    border: none !important; border-radius: 40px !important;
    font-family: var(--fd) !important; font-weight: 800 !important;
    font-size: 1rem !important; padding: 1rem 2.5rem !important;
    cursor: pointer !important; transition: all .2s !important;
    letter-spacing: .02em !important;
}
.woocommerce div.product .single_add_to_cart_button:hover {
    background: #a8d030 !important;
    box-shadow: 0 12px 40px rgba(200,240,74,.4) !important;
    transform: translateY(-2px) !important;
}

/* Product meta */
.woocommerce div.product .product_meta {
    font-size: .82rem !important; color: #888 !important;
    padding-top: 1.25rem !important; border-top: 1px solid #e8e8e4 !important;
    margin-top: 1rem !important;
}
.woocommerce div.product .product_meta a { color: #666 !important; }
.woocommerce div.product .product_meta a:hover { color: #0a0a0a !important; }

/* Tabs */
.woocommerce div.product .woocommerce-tabs {
    grid-column: 1 / -1 !important;
    margin-top: 3rem !important;
    border-top: 1px solid #e8e8e4 !important;
    padding-top: 3rem !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
    list-style: none !important; display: flex !important;
    gap: 0 !important; padding: 0 !important; margin: 0 0 2.5rem !important;
    border-bottom: 2px solid #e8e8e4 !important; background: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: none !important; border: none !important;
    border-bottom: 3px solid transparent !important; border-radius: 0 !important;
    margin: 0 !important; padding: 0 !important; list-style: none !important;
    position: relative !important; bottom: -2px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: #888 !important; font-family: var(--fd) !important;
    font-weight: 600 !important; font-size: .9rem !important;
    padding: .85rem 1.75rem !important; display: block !important;
    background: none !important; transition: color .2s !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a { color: #0a0a0a !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom-color: #c8f04a !important; background: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #0a0a0a !important; background: none !important;
}
.woocommerce div.product .woocommerce-tabs .panel {
    background: none !important; border: none !important;
    color: #444 !important; padding: 0 !important;
    line-height: 1.85 !important; max-width: 800px !important;
}
.woocommerce div.product .woocommerce-tabs .panel h2 { color: #0a0a0a !important; font-size: 1.3rem !important; margin-bottom: 1rem !important; }
.woocommerce div.product .woocommerce-tabs .panel h3 { color: #0a0a0a !important; font-size: 1.1rem !important; margin: 1.5rem 0 .75rem !important; }
.woocommerce div.product .woocommerce-tabs .panel p { color: #555 !important; margin-bottom: 1rem !important; }
.woocommerce div.product .woocommerce-tabs .panel ul { list-style: disc; padding-left: 1.25rem; color: #555; }
.woocommerce div.product .woocommerce-tabs .panel li { margin-bottom: .5rem; color: #555; }
.woocommerce div.product .woocommerce-tabs .panel table { width: 100%; border-collapse: collapse; }
.woocommerce div.product .woocommerce-tabs .panel table th,
.woocommerce div.product .woocommerce-tabs .panel table td { padding: .75rem 1rem; border-bottom: 1px solid #e8e8e4; color: #444; font-size: .9rem; }
.woocommerce div.product .woocommerce-tabs .panel table th { color: #888; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }

/* Related / Up-sells */

.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2 {
    font-size: 1.6rem !important; color: #0a0a0a !important;
    font-family: var(--fd) !important; margin-bottom: 2rem !important;
    font-weight: 800 !important;
}

/* Remove Woo clearfix issue */
.woocommerce ul.products::before,
.woocommerce ul.products::after {
	content: none;
	display: none;
}

/* Proper layout */
.woocommerce ul.products {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.woocommerce ul.products li.product {
	float: none !important;
}
/* =====================================================
   CART
   ===================================================== */
.woocommerce table.shop_table {
    background: #fff !important; border: 1px solid #e8e8e4 !important;
    border-radius: 12px !important; border-collapse: separate !important;
    overflow: hidden !important; color: #1a1a1a !important; width: 100% !important;
}
.woocommerce table.shop_table th {
    color: #888 !important; font-size: .72rem !important;
    letter-spacing: .1em !important; text-transform: uppercase !important;
    border: none !important; border-bottom: 1px solid #e8e8e4 !important;
    padding: 1rem 1.5rem !important; background: #f9f9f7 !important; font-weight: 600 !important;
}
.woocommerce table.shop_table td {
    border: none !important; border-bottom: 1px solid #f0efeb !important;
    color: #1a1a1a !important; padding: 1.25rem 1.5rem !important;
    vertical-align: middle !important; background: #fff !important;
}
.woocommerce table.shop_table td a { color: #1a1a1a !important; font-weight: 500 !important; }
.woocommerce table.shop_table td a:hover { color: #0a8a5c !important; }
.woocommerce table.shop_table .product-subtotal .amount { color: #0a8a5c !important; font-weight: 700 !important; font-family: var(--fd) !important; }
.woocommerce table.shop_table .order-total td { background: #f9f9f7 !important; }
.woocommerce table.shop_table .order-total .amount { color: #0a0a0a !important; font-size: 1.3rem !important; font-weight: 800 !important; font-family: var(--fd) !important; }
.woocommerce .cart_totals { background: #fff !important; border: 1px solid #e8e8e4 !important; border-radius: 12px !important; padding: 2rem !important; }
.woocommerce .cart_totals h2 { color: #0a0a0a !important; font-family: var(--fd) !important; font-size: 1.2rem !important; margin-bottom: 1.5rem !important; }
.woocommerce .cart_totals table { background: none !important; border: none !important; }
.woocommerce .cart_totals table th, .woocommerce .cart_totals table td { border: none !important; border-bottom: 1px solid #f0efeb !important; color: #555 !important; background: none !important; padding: .75rem 0 !important; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: #c8f04a !important; color: #0a0a0a !important;
    border: none !important; border-radius: 40px !important;
    font-family: var(--fd) !important; font-weight: 800 !important;
    font-size: 1rem !important; padding: 1rem 2rem !important;
    text-align: center !important; display: block !important;
    transition: all .2s !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background: #a8d030 !important; box-shadow: 0 12px 36px rgba(200,240,74,.35) !important; }
.woocommerce .coupon input.input-text { background: #fff !important; border: 1px solid #e0e0d8 !important; color: #1a1a1a !important; border-radius: 8px !important; padding: .75rem 1rem !important; }
.woocommerce .coupon .button { background: #0a0a0a !important; color: #fff !important; border: none !important; border-radius: 8px !important; font-weight: 600 !important; padding: .75rem 1.25rem !important; }
.nd-container {
	margin: auto;
}
/* =====================================================
   CHECKOUT
   ===================================================== */
.woocommerce-checkout h3 { color: #0a0a0a !important; font-family: var(--fd) !important; font-size: 1.15rem !important; margin-bottom: 1.5rem !important; }
.woocommerce form .form-row { margin-bottom: 1rem !important; }
.woocommerce form .form-row label { color: #555 !important; font-size: .78rem !important; font-weight: 600 !important; letter-spacing: .06em !important; text-transform: uppercase !important; margin-bottom: .4rem !important; display: block !important; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    background: #fff !important; border: 1px solid #e0e0d8 !important;
    border-radius: 8px !important; color: #0a0a0a !important;
    padding: .85rem 1rem !important; font-size: .93rem !important;
    width: 100% !important; outline: none !important; transition: border-color .2s, box-shadow .2s !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus { border-color: #c8f04a !important; box-shadow: 0 0 0 3px rgba(200,240,74,.15) !important; }
.woocommerce #order_review { background: #fff !important; border: 1px solid #e8e8e4 !important; border-radius: 12px !important; padding: 2rem !important; }
.woocommerce #order_review h3 { color: #0a0a0a !important; }
.woocommerce #order_review table { color: #1a1a1a !important; }
.woocommerce #payment { background: #fff !important; border: 1px solid #e8e8e4 !important; border-radius: 12px !important; overflow: hidden !important; }
.woocommerce #payment ul.payment_methods { border-bottom: 1px solid #e8e8e4 !important; padding: 1.5rem !important; background: none !important; }
.woocommerce #payment ul.payment_methods li { color: #1a1a1a !important; }
.woocommerce #payment ul.payment_methods li label { color: #1a1a1a !important; }
.woocommerce #payment div.payment_box { background: #f5f4f0 !important; color: #555 !important; }
.woocommerce #payment div.payment_box::before { border-bottom-color: #f5f4f0 !important; }
.woocommerce #place_order {
    background: #c8f04a !important; color: #0a0a0a !important;
    border: none !important; border-radius: 40px !important;
    font-family: var(--fd) !important; font-weight: 800 !important;
    font-size: 1.1rem !important; padding: 1.15rem 2rem !important;
    width: 100% !important; cursor: pointer !important;
    transition: all .2s !important; margin-top: 1.5rem !important;
    display: block !important;
}
.woocommerce #place_order:hover { background: #a8d030 !important; box-shadow: 0 12px 40px rgba(200,240,74,.35) !important; transform: translateY(-2px) !important; }

/* =====================================================
   WOO NOTICES
   ===================================================== */
.woocommerce-message { background: #f0fdf4 !important; border-top: 4px solid #c8f04a !important; color: #1a5c35 !important; border-radius: 0 0 8px 8px !important; padding: 1rem 1.5rem !important; }
.woocommerce-message a { color: #0a8a5c !important; font-weight: 600 !important; }
.woocommerce-info { background: #eff6ff !important; border-top-color: #3b82f6 !important; color: #1e3a8a !important; border-radius: 0 0 8px 8px !important; }
.woocommerce-error { background: #fef2f2 !important; border-top-color: #e24b4a !important; color: #7f1d1d !important; list-style: none !important; border-radius: 0 0 8px 8px !important; padding: 1rem 1.5rem !important; }
.woocommerce .woocommerce-breadcrumb { color: rgba(255,255,255,.5) !important; font-size: .82rem !important; margin-bottom: 0 !important; }
.woocommerce .woocommerce-breadcrumb a { color: rgba(255,255,255,.5) !important; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--accent) !important; }

/* =====================================================
   RESPONSIVE — WOO
   ===================================================== */
@media (max-width: 900px) {
    .woocommerce div.product { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    .woocommerce div.product .woocommerce-product-gallery { position: static !important; }
    .woocommerce ul.products { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 600px) {
    .woocommerce div.product .product_title { font-size: 1.6rem !important; }
    .woocommerce div.product p.price, .woocommerce div.product span.price { font-size: 1.4rem !important; }
    .woocommerce ul.products { grid-template-columns: repeat(2,1fr) !important; gap: .75rem !important; }
    .woocommerce table.shop_table td { padding: 1rem !important; }
    .woo-page-hero { padding: 7rem 0 2.5rem; }
    .woo-page-hero h1 { font-size: 1.8rem; }
}
@media (max-width: 440px) {
    .woocommerce ul.products { grid-template-columns: 1fr !important; }
}

/* =====================================================
   SCROLL ANIMATIONS
   ===================================================== */
.fade-up, .fade-card { opacity:0; transform:translateY(35px); transition:opacity .7s ease, transform .7s var(--ease) }
.fade-up.on, .fade-card.on { opacity:1; transform:translateY(0) }
.word-up { opacity:0; transform:translateY(60px); animation:wordup .8s var(--ease) both }
@keyframes wordup { to { opacity:1; transform:translateY(0) } }
.slide-left { opacity:0; transform:translateX(-40px); animation:slideleft .7s var(--ease) both }
@keyframes slideleft { to { opacity:1; transform:translateX(0) } }
.fade-in-up { opacity:0; transform:translateY(30px); animation:fadeinup .7s var(--ease) both }
@keyframes fadeinup { to { opacity:1; transform:translateY(0) } }
.float-in { opacity:0; transform:translateY(20px) scale(.85); animation:floatin .6s cubic-bezier(.34,1.56,.64,1) both }
@keyframes floatin { to { opacity:1; transform:translateY(0) scale(1) } }
@keyframes blinkcaret { from,to{border-color:transparent} 50%{border-color:var(--accent)} }

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width:1024px) {
    .wrap { padding:0 2.5rem }
    .services-grid { grid-template-columns:repeat(2,1fr) }
    .trust-grid { grid-template-columns:repeat(2,1fr) }
    .footer-grid { grid-template-columns:1fr 1fr; gap:2.5rem }
    .about-grid { gap:4rem }
    .hp-grid { grid-template-columns:repeat(2,1fr) }
    .plats-grid { grid-template-columns:repeat(2,1fr) }
    .process-grid { grid-template-columns:repeat(2,1fr); gap:2.5rem }
    .process-grid::before { display:none }
    .stats-row { grid-template-columns:repeat(2,1fr) }
    .stat-item:nth-child(2) { border-right:none }
    .woocommerce ul.products { grid-template-columns:repeat(2,1fr) !important }
}
@media (max-width:768px) {
    .wrap { padding:0 1.25rem }
    .nav-links, .nav-right { display:none !important }
    .hamburger { display:flex }
    .mob-right { display:flex }
    #hero { padding:85px 0 50px !important; min-height:100svh }
    .hero-grid { display:none }
    .hero-badge, .float-pill, .scroll-ind { display:none }
    .hero-h1 { font-size:clamp(2.6rem,12vw,4rem) !important }
    .hero-actions { flex-direction:column; align-items:stretch }
    .hero-actions .btn { justify-content:center; width:100% }
    .hero-trust { gap:1.5rem; margin-top:2.5rem; padding-top:2rem }
    .trust-num { font-size:1.5rem }
    .section { padding:3.5rem 0 !important }
    .services-grid { grid-template-columns:1fr !important; gap:1px }
    .service-card { padding:1.75rem }
    .stat-item { padding:2rem 1rem }
    .stat-num { font-size:2rem }
    .about-grid { grid-template-columns:1fr; gap:2.5rem }
    .about-badge { bottom:-1rem; right:1rem }
    .about-badge .big { font-size:1.6rem }
    .process-grid { grid-template-columns:1fr; gap:2rem }
    .trust-grid { grid-template-columns:repeat(2,1fr); gap:1rem }
    .trust-card { padding:1.25rem }
    .testi-grid { grid-template-columns:1fr }
    .blog-grid { grid-template-columns:1fr }
    .footer-grid { grid-template-columns:1fr; gap:2rem }
    .footer-bottom { flex-direction:column; gap:.5rem; text-align:center }
    .hp-grid { grid-template-columns:repeat(2,1fr); gap:.9rem }
    .hp-img img { height:150px }
    .hp-body { padding:.9rem }
    .plats-grid { grid-template-columns:repeat(2,1fr); gap:.9rem }
    .plat-card { padding:1.25rem 1rem }
    .flex-between { flex-direction:column; align-items:flex-start }
    .cta-section { padding:4rem 0 }
    .cta-section h2 { font-size:1.8rem }
    .cta-btns { flex-direction:column; align-items:center }
    .cta-btns .btn { width:100%; max-width:320px; justify-content:center }
    .stats-row { grid-template-columns:repeat(2,1fr) }
    .stat-item { border-right:1px solid var(--border) }
    .stat-item:nth-child(2n) { border-right:none }
    .woocommerce ul.products { grid-template-columns:repeat(2,1fr) !important; gap:.9rem !important }
    .woocommerce div.product .product_title { font-size:1.5rem !important }
}
@media (max-width:440px) {
    .wrap { padding:0 1rem }
    .hero-h1 { font-size:2.3rem !important }
    .trust-grid { grid-template-columns:1fr 1fr; gap:.75rem }
    .hp-grid { grid-template-columns:repeat(2,1fr); gap:.75rem }
    .plats-grid { grid-template-columns:1fr 1fr; gap:.75rem }
    .plat-card { padding:1rem .85rem }
    .woocommerce ul.products { grid-template-columns:1fr !important }
}


