/* ── RESET & ROOT ─────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden;max-width:100vw;}
:root{
  --o:#E8670A;
  --o2:#FF7A1A;
  --g:#1B4D3E;
  --gold:#C9A84C;
  --dk:#0C0C0C;
  --dk2:#141414;
  --dk3:#1C1C1C;
  --wh:#FFFFFF;
  --gr:rgba(255,255,255,0.52);
  --border:rgba(255,255,255,0.07);
}
body{font-family:'Inter',sans-serif;background:var(--dk);color:var(--wh);overflow-x:hidden;max-width:100vw;}

/* ── CURSOR ───────────────────────────────────── */
#cur{position:fixed;width:10px;height:10px;background:var(--o);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .25s,height .25s;mix-blend-mode:screen}
#curR{position:fixed;width:36px;height:36px;border:1px solid rgba(232,103,10,.5);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:left .12s ease,top .12s ease,width .3s,height .3s}
body:has(a:hover) #cur,body:has(button:hover) #cur{width:18px;height:18px}
body:has(a:hover) #curR,body:has(button:hover) #curR{width:52px;height:52px;border-color:var(--o)}

/* ── NAV ──────────────────────────────────────── */
#nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 6%;height:72px;
  transition:background .4s,border-color .4s;
  border-bottom:1px solid transparent;
}
#nav.solid{background:rgba(12,12,12,.97);backdrop-filter:blur(16px);border-color:var(--border)}
#nav.nav-hidden{transform:translateY(-100%);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav-logo img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--o);transition:transform .4s ease}
.nav-logo:hover img{transform:rotate(10deg)}
.nav-logo-text{display:flex;flex-direction:column;line-height:1.2}
.nav-logo-text .n1{font-family:'Oswald',sans-serif;font-weight:700;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--o)}
.nav-logo-text .n2{font-family:'Oswald',sans-serif;font-weight:300;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.5)}
.nav-links{display:flex;gap:36px;list-style:none}
.nav-links li {position: relative;}
.nav-links a{
  color:rgba(255,255,255,.55);text-decoration:none;
  font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;
  transition:color .2s;position:relative;padding-bottom:2px;
  display:flex; align-items:center; gap:4px;
}
.nav-links > li > a::after{
  content:'';position:absolute;bottom:0;left:0;width:0;height:1px;
  background:var(--o);transition:width .3s;
}
.nav-links a:hover{color:var(--wh)}
.nav-links > li > a:hover::after{width:100%}
.nav-ctas{display:flex;gap:16px;align-items:center;}
.nav-call{display:flex;align-items:center;gap:8px;color:var(--wh);text-decoration:none;font-size:12px;font-weight:500;transition:color .2s;}
.nav-call:hover{color:var(--o);}
.nav-quote{
  font-family:'Oswald',sans-serif;font-weight:600;font-size:11px;
  letter-spacing:2px;text-transform:uppercase;
  color:var(--dk);background:var(--o);
  padding:11px 24px;text-decoration:none;
  transition:background .2s,transform .2s;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
}
.nav-quote:hover{background:var(--o2);transform:translateY(-1px)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px}
.hamburger span{display:block;width:22px;height:1.5px;background:white;transition:.3s}

/* Dropdown styling */
.sub-menu {
  display:none; position:absolute; top:100%; left:0; min-width:200px;
  background:var(--dk3); border:1px solid var(--border); padding:10px 0;
  list-style:none; box-shadow:0 10px 30px rgba(0,0,0,0.5); z-index:210;
}
.has-dropdown:hover .sub-menu { display:block; animation:fadeIn 0.2s ease; }
.sub-menu li a { padding:10px 20px; font-size:11px; letter-spacing:1px; color:rgba(255,255,255,.6); }
.sub-menu li a:hover { color:var(--o); background:rgba(255,255,255,.05); }
.sub-menu .sub-menu { top:0; left:100%; margin-left:1px; }

/* ── MOBILE MENU ──────────────────────────────── */
#mob{
  display:none;position:fixed;inset:0;
  background:rgba(12,12,12,.99);z-index:190;
  flex-direction:column;align-items:center;justify-content:center;gap:24px;
}
#mob.on{display:flex}
.mobile-nav-links { list-style:none; text-align:center; padding:0; margin:0 0 32px 0; }
.mobile-nav-links a { display:block; padding:12px; font-family:'Oswald',sans-serif;font-weight:700;font-size:40px;letter-spacing:3px;text-transform:uppercase;color:white;text-decoration:none;transition:color .2s }
.mobile-nav-links a:hover{color:var(--o)}
.mobile-menu-ctas { display:flex; flex-direction:column; gap:16px; width:100%; max-width:280px; }
#mobClose{position:absolute;top:22px;right:22px;font-size:24px;background:none;border:none;color:white;}

/* ── HERO ─────────────────────────────────────── */
#hero{
  height:100vh;min-height:660px;position:relative;
  display:flex;align-items:center;overflow:hidden;
  background:var(--dk);
}
.hero-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  filter:brightness(.22) saturate(.5);
  transform:scale(1.08);
  animation:heroPan 18s ease-in-out infinite alternate;
}
.hero-bar{
  position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(to bottom,transparent 0%,var(--o) 30%,var(--o2) 70%,transparent 100%);
}
.hero-grain{
  position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");
  opacity:.7;
}
.hero-fade{position:absolute;bottom:0;left:0;right:0;height:200px;background:linear-gradient(to top,var(--dk),transparent)}
.hero-inner{position:relative;z-index:2;padding:0 9%;max-width:820px;}
.hero-city{
  font-family:'Oswald',sans-serif;font-weight:400;font-size:11px;
  letter-spacing:5px;text-transform:uppercase;color:var(--o);
  display:flex;align-items:center;gap:10px;margin-bottom:22px;
  opacity:0;animation:fadeUp .6s ease .1s forwards;
}
.hero-city::before{content:'';display:inline-block;width:32px;height:1px;background:var(--o)}
.hero-h1{
  font-family:'Oswald',sans-serif;font-weight:700;
  font-size:clamp(54px,8.5vw,104px);
  line-height:.9;text-transform:uppercase;letter-spacing:-2px;
  margin-bottom:28px;
}
.hero-h1 .l1{display:block;opacity:0;transform:translateY(40px);animation:revealUp .75s cubic-bezier(.22,1,.36,1) .2s forwards}
.hero-h1 .l2{display:block;opacity:0;transform:translateY(40px);animation:revealUp .75s cubic-bezier(.22,1,.36,1) .38s forwards}
.hero-h1 .l3{display:block;opacity:0;transform:translateY(40px);animation:revealUp .75s cubic-bezier(.22,1,.36,1) .55s forwards;color:var(--o);font-style:italic}
.hero-rule{width:48px;height:2px;background:var(--o);margin-bottom:20px;opacity:0;animation:fadeUp .5s ease .8s forwards}
.hero-sub{
  font-size:16px;line-height:1.85;color:var(--gr);
  font-weight:300;max-width:440px;margin-bottom:40px;
  opacity:0;animation:fadeUp .6s ease .9s forwards;
}
.hero-ctas{
  display:flex;gap:14px;flex-wrap:wrap;
  opacity:0;animation:fadeUp .6s ease 1.05s forwards;
}
.btn{
  font-family:'Oswald',sans-serif;font-weight:600;
  font-size:12px;letter-spacing:2px;text-transform:uppercase;
  padding:15px 32px;text-decoration:none;display:inline-block;text-align:center;
  transition:transform .2s,background .2s,border-color .2s,color .2s; border:none; cursor:pointer;
}
.btn:hover{transform:translateY(-2px)}
.btn-solid{color:var(--dk);background:var(--o);clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%)}
.btn-solid:hover{background:var(--o2)}
.btn-outline{color:var(--wh);background:transparent;border:1px solid rgba(255,255,255,.25)}
.btn-outline:hover{border-color:var(--o);color:var(--o)}
.hero-scroll{
  position:absolute;bottom:36px;left:9%;
  display:flex;align-items:center;gap:10px;
  font-size:10px;letter-spacing:3px;text-transform:uppercase;
  color:rgba(255,255,255,.3);
  opacity:0;animation:fadeUp .5s ease 1.4s forwards;
}
.hero-scroll-line{width:40px;height:1px;background:rgba(255,255,255,.2);position:relative;overflow:hidden}
.hero-scroll-line::after{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:var(--o);animation:scrollPulse 2s ease-in-out infinite;
}

/* ── TRUST STRIP ──────────────────────────────── */
#trust{
  background:var(--o);padding:0;
  display:grid;grid-template-columns:repeat(4,1fr);
}
.trust-cell{
  padding:32px 28px;border-right:1px solid rgba(0,0,0,.15);
  text-align:center;
}
.trust-cell:last-child{border-right:none}
.trust-n{
  display: block;
  font-family:'Oswald',sans-serif;font-weight:700;
  font-size:42px;line-height:1;color:var(--dk);
}
.trust-l{
  display: block;
  font-size:10px;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(0,0,0,.65);margin-top:4px;
}

/* ── SHARED SECTION ───────────────────────────── */
.sec{padding:96px 8%}
.eyebrow{
  font-family:'Oswald',sans-serif;font-weight:400;font-size:10px;
  letter-spacing:5px;text-transform:uppercase;color:var(--o);
  display:flex;align-items:center;gap:10px;margin-bottom:14px;
}
.eyebrow::before{content:'';width:24px;height:1px;background:var(--o)}
.sec-title{
  font-family:'Oswald',sans-serif;font-weight:700;
  font-size:clamp(34px,4vw,54px);line-height:.95;
  text-transform:uppercase;letter-spacing:-1px;margin-bottom:18px;
}
.sec-title em{color:var(--o);font-style:italic}
.sec-body{font-size:15px;line-height:1.85;color:var(--gr);font-weight:300;max-width:540px}

/* ── SERVICES ─────────────────────────────────── */
#services{background:var(--dk2)}
.svc-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:52px;gap:20px;flex-wrap:wrap}
.svc-tabs{display:flex;gap:2px;flex-wrap:wrap;margin-bottom:2px;}
.svc-tab{
  font-family:'Oswald',sans-serif;font-weight:500;font-size:11px;
  letter-spacing:2px;text-transform:uppercase;
  padding:12px 20px;background:rgba(255,255,255,.04);border:none;
  color:rgba(255,255,255,.45);transition:all .25s;
  border-bottom:2px solid transparent;
}
.svc-tab:hover{color:var(--wh);background:rgba(255,255,255,.07)}
.svc-tab.active{color:var(--o);border-bottom-color:var(--o);background:rgba(232,103,10,.06)}
.svc-panels{position:relative;min-height:320px}
.svc-panel{
  display:none;
  grid-template-columns:1fr 1fr;gap:0;
  background:var(--dk3);
}
.svc-panel.active{display:grid}
.svc-panel-text{padding:48px 44px;display:flex;flex-direction:column;justify-content:center}
.svc-panel-tag{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--o);margin-bottom:12px}
.svc-panel-name{
  font-family:'Oswald',sans-serif;font-weight:700;font-size:32px;
  text-transform:uppercase;letter-spacing:-0.5px;margin-bottom:16px;
}
.svc-panel-desc{font-size:14px;line-height:1.85;color:var(--gr);font-weight:300;margin-bottom:28px}
.svc-panel-img{overflow:hidden;min-height:300px;position:relative;}
.svc-panel-img img{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:brightness(.85) saturate(.85);
  transition:transform .6s ease,filter .4s;
}
.svc-panel:hover .svc-panel-img img{transform:scale(1.04);filter:brightness(.95) saturate(1)}
.svc-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--o);transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
.svc-panel.active .svc-bar{transform:scaleX(1)}

/* ── FEATURED PROJECT ─────────────────────────── */
#featured{background:var(--dk);overflow:hidden}
.feat-wrap{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:520px;
}
.feat-img-col{position:relative;overflow:hidden}
.feat-slide{
  position:absolute;inset:0;opacity:0;transition:opacity .8s ease; visibility: hidden;
}
.feat-slide.on{opacity:1; visibility: visible;}
.feat-slide img{width:100%;height:100%;object-fit:cover;filter:brightness(.8) saturate(.85)}
.feat-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to right,rgba(12,12,12,.5) 0%,transparent 60%);
}
.feat-text-col{
  background:var(--dk2);padding:64px 56px;
  display:flex;flex-direction:column;justify-content:center;
}
.feat-text-wrap { position: relative; min-height: 250px; }
.feat-text-item { position: absolute; top:0; left:0; width:100%; opacity:0; visibility:hidden; transition:opacity .5s; }
.feat-text-item.on { opacity:1; visibility:visible; position:relative; }
.feat-counter{
  font-family:'Oswald',sans-serif;font-weight:300;font-size:11px;
  letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.3);
  margin-bottom:32px;
}
.feat-counter span{color:var(--o)}
.feat-category{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--o);margin-bottom:10px}
.feat-name{
  font-family:'Oswald',sans-serif;font-weight:700;font-size:36px;
  text-transform:uppercase;letter-spacing:-0.5px;line-height:1;
  margin-bottom:16px;
}
.feat-desc{font-size:14px;line-height:1.85;color:var(--gr);font-weight:300;margin-bottom:32px}
.feat-tag{
  display:inline-block;
  font-family:'Oswald',sans-serif;font-size:10px;letter-spacing:3px;
  text-transform:uppercase;padding:8px 16px;
  border:1px solid rgba(232,103,10,.4);color:var(--o);
  margin-bottom:32px; margin-right:8px;
}
.feat-nav{display:flex;gap:10px; margin-top:32px;}
.feat-dot{
  width:28px;height:2px;background:rgba(255,255,255,.2);
  border:none;padding:0;transition:background .3s,width .3s;
}
.feat-dot.on{background:var(--o);width:44px}

/* ── PROCESS ──────────────────────────────────── */
#process{background:var(--g);position:relative;overflow:hidden}
#process::before{
  content:'SMW';
  position:absolute;font-family:'Oswald',sans-serif;font-weight:700;
  font-size:32vw;color:rgba(255,255,255,.025);
  top:50%;left:50%;transform:translate(-50%,-50%);
  pointer-events:none;letter-spacing:-15px;white-space:nowrap;
}
.process-steps{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:2px;margin-top:64px;position:relative;z-index:1;
}
.proc-step{
  background:rgba(255,255,255,.05);padding:40px 28px 36px;
  border-top:2px solid rgba(255,255,255,.1);
  transition:background .3s,border-color .3s;
  position:relative;overflow:hidden;
}
.proc-step::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--o);transform:scaleX(0);transform-origin:left;
  transition:transform .4s ease;
}
.proc-step:hover{background:rgba(255,255,255,.08);border-color:var(--o)}
.proc-step:hover::after{transform:scaleX(1)}
.proc-n{
  font-family:'Oswald',sans-serif;font-weight:700;
  font-size:52px;line-height:1;color:rgba(255,255,255,.08);
  margin-bottom:16px;
}
.proc-title{
  font-family:'Oswald',sans-serif;font-weight:600;
  font-size:17px;text-transform:uppercase;letter-spacing:1px;
  margin-bottom:10px;
}
.proc-body{font-size:13px;line-height:1.75;color:rgba(255,255,255,.55)}

/* ── RECENT WORK ──────────────────────────────── */
#work{background:var(--dk2)}
.work-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:20px;flex-wrap:wrap}
.work-link{
  font-family:'Oswald',sans-serif;font-size:11px;font-weight:500;
  letter-spacing:2px;text-transform:uppercase;color:var(--o);
  text-decoration:none;display:flex;align-items:center;gap:8px;
  transition:gap .2s;
}
.work-link:hover{gap:14px}
.work-grid{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-auto-rows:260px;
  gap:6px;
}
.w-item{overflow:hidden;position:relative;display:block;}
.w-item img{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:saturate(.75) brightness(.85);
  transition:transform .65s ease,filter .4s;
}
.w-item:hover img{transform:scale(1.06);filter:saturate(1) brightness(1)}
.w-label{
  position:absolute;bottom:0;left:0;right:0;
  padding:24px 16px 14px;
  background:linear-gradient(to top,rgba(12,12,12,.9) 0%,transparent);
  font-family:'Oswald',sans-serif;font-size:12px;
  letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.7);
  transform:translateY(4px);opacity:0;
  transition:opacity .3s,transform .3s;
}
.w-item:hover .w-label{opacity:1;transform:translateY(0)}
.w-label span { color: var(--wh); font-size:16px; display:block; margin-top:4px; text-transform:none; letter-spacing:0; }
.work-grid .w-item:nth-child(1){grid-column:span 5}
.work-grid .w-item:nth-child(2){grid-column:span 4}
.work-grid .w-item:nth-child(3){grid-column:span 3}
.work-grid .w-item:nth-child(4){grid-column:span 3}
.work-grid .w-item:nth-child(5){grid-column:span 5}
.work-grid .w-item:nth-child(6){grid-column:span 4}

/* ── TESTIMONIALS ─────────────────────────────── */
#testimonials{background:var(--dk);border-top:1px solid var(--border)}
.testi-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:2px;
  margin-top:52px;
}
.testi-card{
  background:var(--dk2);padding:36px 32px;
  border-top:2px solid var(--border);
  transition:border-color .3s,background .3s;
}
.testi-card:hover{border-color:var(--o);background:var(--dk3)}
.stars{color:var(--o);font-size:14px;margin-bottom:16px;letter-spacing:2px}
.testi-quote{
  font-size:14px;line-height:1.85;color:rgba(255,255,255,.7);
  font-weight:300;margin-bottom:22px;font-style:italic;
}
.testi-author{
  font-family:'Oswald',sans-serif;font-size:12px;
  letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.35);
  display:flex; align-items:center; gap:12px;
}
.testi-author img { width:40px; height:40px; border-radius:50%; object-fit:cover; }
.testi-author strong{color:var(--wh);font-weight:600; display:block;}

/* ── WHY CHOOSE US ────────────────────────────── */
#why-choose { background:var(--dk); }
.why-choose-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:48px; }
.why-card { background:var(--dk2); padding:40px 32px; border:1px solid var(--border); transition:all .3s; text-align:center; position:relative; overflow:hidden; }
.why-card:hover { transform:translateY(-5px); border-color:var(--o); background:var(--dk3); }
.why-card-icon { width:64px; height:64px; margin:0 auto 24px; color:var(--o); display:flex; align-items:center; justify-content:center; background:rgba(232,103,10,0.1); border-radius:50%; }
.why-card-icon svg { width:32px; height:32px; }
.why-card-title { font-family:'Oswald',sans-serif; font-size:20px; text-transform:uppercase; margin-bottom:16px; }
.why-card-desc { font-size:14px; color:var(--gr); line-height:1.6; margin-bottom:24px; }
.why-card-stat { font-family:'Oswald',sans-serif; font-size:32px; font-weight:700; color:var(--wh); }

/* ── FAQ ──────────────────────────────────────── */
#faq { background:var(--dk2); border-top:1px solid var(--border); }
.faq-search-wrap { margin-bottom:48px; max-width:600px; position:relative; }
.faq-search-wrap input { width:100%; background:var(--dk3); border:1px solid var(--border); padding:16px 24px; color:var(--wh); font-family:'Inter',sans-serif; font-size:16px; border-radius:4px; outline:none; transition:border-color .3s; }
.faq-search-wrap input:focus { border-color:var(--o); }
.faq-search-icon { position:absolute; right:24px; top:50%; transform:translateY(-50%); color:var(--gr); }
.faq-list { max-width:800px; }
.faq-item { border-bottom:1px solid var(--border); }
.faq-question { display:flex; justify-content:space-between; align-items:center; padding:24px 0; cursor:pointer; font-family:'Oswald',sans-serif; font-size:18px; font-weight:500; transition:color .3s; }
.faq-question:hover { color:var(--o); }
.faq-icon { width:20px; height:20px; position:relative; }
.faq-icon::before, .faq-icon::after { content:''; position:absolute; background:currentColor; top:50%; left:50%; transform:translate(-50%,-50%); transition:transform .3s; }
.faq-icon::before { width:12px; height:2px; }
.faq-icon::after { width:2px; height:12px; }
.faq-item.active .faq-question { color:var(--o); }
.faq-item.active .faq-icon::after { transform:translate(-50%,-50%) rotate(90deg); opacity:0; }
.faq-answer { max-height:0; overflow:hidden; transition:max-height .5s ease, padding .5s ease; opacity:0; }
.faq-item.active .faq-answer { max-height:1000px; padding-bottom:24px; opacity:1; }
.faq-answer p { font-size:15px; line-height:1.8; color:var(--gr); }

/* ── NEWSLETTER ───────────────────────────────── */
#newsletter { background:var(--o); padding:80px 8%; text-align:center; }
#newsletter .eyebrow { justify-content:center; color:rgba(0,0,0,.6); }
#newsletter .eyebrow::before { background:rgba(0,0,0,.4); }
#newsletter .sec-title { color:var(--dk); }
#newsletter .sec-body { color:rgba(0,0,0,.75); margin:0 auto 32px; }
.newsletter-form { max-width:500px; margin:0 auto; display:flex; gap:8px; }
.newsletter-form input { flex:1; padding:16px 24px; border:none; background:rgba(255,255,255,.2); color:var(--dk); font-family:'Inter',sans-serif; outline:none; }
.newsletter-form input::placeholder { color:rgba(0,0,0,.5); }
.newsletter-form button { background:var(--dk); color:var(--wh); border:none; padding:0 32px; font-family:'Oswald',sans-serif; text-transform:uppercase; font-weight:600; letter-spacing:1px; transition:background .3s; }
.newsletter-form button:hover { background:#222; }

/* ── ENQUIRY ──────────────────────────────────── */
#enquiry{
  background:var(--dk2);border-top:1px solid var(--border);
  display:grid;grid-template-columns:1fr 1fr;
  gap:0;
}
.enq-left{
  padding:80px 8%;background:var(--o);
  display:flex;flex-direction:column;justify-content:center;
}
.enq-left .sec-title{color:var(--dk)}
.enq-left .sec-body{color:rgba(0,0,0,.65);max-width:none}
.enq-left .eyebrow{color:rgba(0,0,0,.6)}
.enq-left .eyebrow::before{background:rgba(0,0,0,.4)}
.enq-detail{
  display:flex;align-items:center;gap:12px;
  margin-top:28px;
  font-size:13px;color:rgba(0,0,0,.7);
}
.enq-detail strong{color:var(--dk);font-size:14px}
.enq-right{padding:80px 8%;display:flex;flex-direction:column;justify-content:center}
.f-group{margin-bottom:16px; position:relative;}
.f-group label{
  display:block;font-size:10px;letter-spacing:3px;
  text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:7px;
}
.f-group input,
.f-group textarea,
.f-group select{
  width:100%;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:white;padding:13px 15px;
  font-family:'Inter',sans-serif;font-size:14px;outline:none;
  transition:border-color .3s,background .3s;
}
.f-group select { -webkit-appearance:none; appearance:none; }
.f-group select option { background:var(--dk); }
.f-group input:focus,
.f-group textarea:focus,
.f-group select:focus{border-color:var(--o);background:rgba(232,103,10,.04)}
.f-group textarea{height:100px;resize:vertical}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.f-group input[type="file"] { padding:9px 15px; font-size:13px; }
.btn-submit{
  width:100%;font-family:'Oswald',sans-serif;font-weight:600;
  font-size:13px;letter-spacing:2px;text-transform:uppercase;
  color:var(--dk);background:var(--o);border:none;
  padding:17px;transition:background .2s;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  margin-top:4px; display:flex; align-items:center; justify-content:center; gap:10px;
}
.btn-submit:hover{background:var(--o2)}
.form-message { padding:16px; margin-top:24px; font-size:14px; display:none; border-left:4px solid transparent; }
.form-message.success { display:block; background:rgba(46,204,113,0.1); border-color:#2ecc71; color:#2ecc71; }
.form-message.error { display:block; background:rgba(231,76,60,0.1); border-color:#e74c3c; color:#e74c3c; }
.form-spinner { width:16px; height:16px; border:2px solid var(--dk); border-top-color:transparent; border-radius:50%; animation:spin 1s linear infinite; display:none; }
.loading .form-spinner { display:block; }
@keyframes spin { to { transform:rotate(360deg); } }

/* ── FOOTER ───────────────────────────────────── */
footer{
  background:#070707;padding:52px 8% 24px;
  border-top:1px solid var(--border);
}
.footer-main{
  display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;
  gap:48px;margin-bottom:44px;
}
.f-brand-row{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.f-brand-row img{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid var(--o)}
.f-brand-name{font-family:'Oswald',sans-serif;font-weight:700;font-size:15px;letter-spacing:1.5px;text-transform:uppercase;line-height:1.2}
.f-brand-name span{color:var(--o)}
.f-brand p{font-size:13px;color:rgba(255,255,255,.35);line-height:1.8;max-width:260px}
.socials{display:flex;gap:8px;margin-top:18px}
.soc-btn{
  width:36px;height:36px;border:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.35);text-decoration:none;
  transition:border-color .2s,color .2s,background .2s;
}
.soc-btn:hover{border-color:var(--o);color:var(--o);background:rgba(232,103,10,.07)}
.f-col h5{
  font-family:'Oswald',sans-serif;font-size:10px;letter-spacing:3px;
  text-transform:uppercase;color:var(--o);margin-bottom:16px;
}
.f-col ul{list-style:none}
.f-col ul li{margin-bottom:8px}
.f-col ul li a{color:rgba(255,255,255,.35);text-decoration:none;font-size:13px;transition:color .2s}
.f-col ul li a:hover{color:var(--o)}
.f-widget { margin-bottom: 32px; }
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:20px;border-top:1px solid rgba(255,255,255,.05);
  font-size:11px;color:rgba(255,255,255,.18);flex-wrap:wrap;gap:8px;
}

/* ── PAGE & ARCHIVE ───────────────────────────── */
.page-hero { padding: 180px 8% 80px; background:var(--dk2); border-bottom:1px solid var(--border); text-align:center; }
.page-hero-title { font-family:'Oswald',sans-serif; font-size:clamp(40px,5vw,72px); text-transform:uppercase; line-height:1; margin-bottom:24px; }
.page-hero-desc { font-size:16px; color:var(--gr); max-width:600px; margin:0 auto; }
.page-content { padding: 80px 8%; max-width:1000px; margin:0 auto; }
.page-content p { font-size:16px; line-height:1.8; color:var(--gr); margin-bottom:24px; }
.page-content h2, .page-content h3 { font-family:'Oswald',sans-serif; text-transform:uppercase; margin:40px 0 24px; }
.page-content ul, .page-content ol { margin:0 0 24px 24px; color:var(--gr); line-height:1.8; }
.page-content li { margin-bottom:12px; }

/* ── BREADCRUMBS ──────────────────────────────── */
.smw-breadcrumbs { font-size:11px; text-transform:uppercase; letter-spacing:2px; color:rgba(255,255,255,.3); margin-bottom:32px; display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px; }
.smw-breadcrumbs a { color:var(--o); text-decoration:none; transition:color .3s; }
.smw-breadcrumbs a:hover { color:var(--o2); }
.smw-breadcrumbs .separator { color:rgba(255,255,255,.2); }

/* ── BLOG ─────────────────────────────────────── */
.blog-layout { display:grid; grid-template-columns:1fr 340px; gap:64px; padding:80px 8%; }
.blog-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:32px; }
.blog-card { background:var(--dk2); border:1px solid var(--border); transition:transform .3s, border-color .3s; display:flex; flex-direction:column; height:100%; }
.blog-card:hover { transform:translateY(-5px); border-color:var(--o); }
.blog-card-img { width:100%; height:240px; object-fit:cover; display:block; }
.blog-card-content { padding:32px; flex:1; display:flex; flex-direction:column; }
.blog-card-meta { font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--o); margin-bottom:12px; }
.blog-card-meta span { color:rgba(255,255,255,.3); }
.blog-card-title { font-family:'Oswald',sans-serif; font-size:24px; line-height:1.2; margin-bottom:16px; }
.blog-card-title a { color:var(--wh); text-decoration:none; transition:color .3s; }
.blog-card-title a:hover { color:var(--o); }
.blog-card-excerpt { font-size:14px; color:var(--gr); line-height:1.7; margin-bottom:24px; flex:1; }
.blog-card-readmore { font-family:'Oswald',sans-serif; font-size:12px; text-transform:uppercase; letter-spacing:2px; color:var(--wh); text-decoration:none; display:inline-flex; align-items:center; gap:8px; transition:color .3s; margin-top:auto; }
.blog-card-readmore:hover { color:var(--o); gap:12px; }

/* ── SIDEBAR ──────────────────────────────────── */
.smw-sidebar { display:flex; flex-direction:column; gap:40px; }
.smw-widget { background:var(--dk2); padding:32px; border:1px solid var(--border); }
.smw-widget-title { font-family:'Oswald',sans-serif; font-size:18px; text-transform:uppercase; margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid var(--border); }
.smw-widget ul { list-style:none; }
.smw-widget ul li { margin-bottom:12px; padding-bottom:12px; border-bottom:1px dashed rgba(255,255,255,.05); }
.smw-widget ul li:last-child { margin-bottom:0; padding-bottom:0; border-bottom:none; }
.smw-widget ul li a { color:var(--gr); text-decoration:none; transition:color .3s; display:block; }
.smw-widget ul li a:hover { color:var(--o); }
.smw-widget.widget_search form { display:flex; }
.smw-widget.widget_search input { flex:1; background:var(--dk); border:1px solid var(--border); padding:12px 16px; color:var(--wh); outline:none; }
.smw-widget.widget_search button { background:var(--o); border:none; padding:0 16px; color:var(--dk); font-family:'Oswald',sans-serif; text-transform:uppercase; font-weight:600; cursor:pointer; }

/* ── SINGLE POST ──────────────────────────────── */
.single-post-content { padding:80px 8%; max-width:900px; margin:0 auto; }
.single-featured-img { width:100%; height:auto; max-height:600px; object-fit:cover; margin-bottom:48px; }
.post-meta { display:flex; align-items:center; gap:24px; margin-bottom:48px; padding-bottom:24px; border-bottom:1px solid var(--border); flex-wrap:wrap; }
.post-meta-author { display:flex; align-items:center; gap:12px; font-family:'Oswald',sans-serif; text-transform:uppercase; letter-spacing:1px; font-size:12px; }
.post-meta-author img { width:32px; height:32px; border-radius:50%; }
.post-meta-item { font-size:12px; color:var(--gr); text-transform:uppercase; letter-spacing:1px; display:flex; align-items:center; gap:8px; }
.post-meta-item svg { color:var(--o); }
.post-tags { margin:48px 0; display:flex; gap:8px; flex-wrap:wrap; }
.post-tags a { padding:6px 12px; background:var(--dk2); border:1px solid var(--border); font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--wh); text-decoration:none; transition:all .3s; }
.post-tags a:hover { border-color:var(--o); color:var(--o); }
.author-bio { background:var(--dk2); padding:40px; border-left:4px solid var(--o); display:flex; gap:24px; margin:64px 0; align-items:flex-start; }
.author-bio-avatar img { width:80px; height:80px; border-radius:50%; }
.author-bio-name { font-family:'Oswald',sans-serif; font-size:20px; text-transform:uppercase; margin-bottom:12px; }
.author-bio-desc { font-size:14px; color:var(--gr); line-height:1.6; }
.related-posts { margin-top:80px; padding-top:80px; border-top:1px solid var(--border); }
.related-posts-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:32px; }

/* ── SOCIAL SHARING ───────────────────────────── */
.smw-share-buttons { display:flex; gap:12px; align-items:center; margin:32px 0; }
.smw-share-label { font-family:'Oswald',sans-serif; font-size:12px; text-transform:uppercase; letter-spacing:1px; color:var(--wh); margin-right:8px; }
.smw-share-btn { width:36px; height:36px; display:flex; align-items:center; justify-content:center; background:var(--dk2); border:1px solid var(--border); color:var(--wh); text-decoration:none; transition:all .3s; border-radius:50%; }
.smw-share-btn:hover { background:var(--o); border-color:var(--o); color:var(--dk); transform:translateY(-2px); }

/* ── PAGINATION ───────────────────────────────── */
.smw-pagination { display:flex; justify-content:center; gap:8px; margin-top:64px; }
.smw-pagination .page-numbers { display:flex; align-items:center; justify-content:center; min-width:40px; height:40px; padding:0 12px; background:var(--dk2); border:1px solid var(--border); color:var(--wh); text-decoration:none; font-family:'Oswald',sans-serif; font-size:14px; transition:all .3s; }
.smw-pagination .page-numbers:hover { border-color:var(--o); color:var(--o); }
.smw-pagination .page-numbers.current { background:var(--o); border-color:var(--o); color:var(--dk); }

/* ── COMMENTS ─────────────────────────────────── */
#comments { margin-top:80px; }
.comments-title { font-family:'Oswald',sans-serif; font-size:24px; text-transform:uppercase; margin-bottom:40px; }
.comment-list { list-style:none; padding:0; }
.comment { margin-bottom:32px; }
.comment-body { background:var(--dk2); padding:32px; border:1px solid var(--border); display:flex; gap:24px; }
.comment-avatar img { width:48px; height:48px; border-radius:50%; }
.comment-meta { margin-bottom:12px; }
.comment-author { font-family:'Oswald',sans-serif; font-size:16px; text-transform:uppercase; color:var(--wh); }
.comment-date { font-size:11px; color:var(--gr); text-transform:uppercase; letter-spacing:1px; margin-left:12px; }
.comment-content { font-size:14px; color:rgba(255,255,255,.8); line-height:1.6; margin-bottom:16px; }
.comment-reply-link { font-family:'Oswald',sans-serif; font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--o); text-decoration:none; }
.comment-reply-link:hover { text-decoration:underline; }
.children { list-style:none; margin:24px 0 0 48px; }
.comment-respond { margin-top:64px; background:var(--dk2); padding:40px; border-top:2px solid var(--o); }
.comment-reply-title { font-family:'Oswald',sans-serif; font-size:20px; text-transform:uppercase; margin-bottom:24px; }
.comment-form .f-group { margin-bottom:20px; }

/* ── 404 PAGE ─────────────────────────────────── */
.error-404 { text-align:center; padding:120px 8%; min-height:80vh; display:flex; flex-direction:column; justify-content:center; align-items:center; }
.error-code { font-family:'Oswald',sans-serif; font-size:clamp(100px, 15vw, 200px); line-height:1; color:var(--o); font-weight:700; margin-bottom:24px; text-shadow:0 10px 30px rgba(232,103,10,0.2); }
.error-404 .sec-title { margin-bottom:24px; }
.error-404 .sec-body { margin:0 auto 40px; }
.error-search { max-width:500px; margin:0 auto 48px; width:100%; display:flex; }
.error-search input { flex:1; background:var(--dk2); border:1px solid var(--border); padding:16px 24px; color:var(--wh); outline:none; font-family:'Inter',sans-serif; }
.error-search input:focus { border-color:var(--o); }
.error-search button { background:var(--o); color:var(--dk); border:none; padding:0 24px; font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase; cursor:pointer; }
.error-links { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

/* ── FLOATING ELEMENTS ────────────────────────── */
.smw-floating-whatsapp { position:fixed; bottom:24px; right:24px; width:60px; height:60px; background:#25D366; color:white; border-radius:50%; display:flex; align-items:center; justify-content:center; z-index:100; box-shadow:0 4px 15px rgba(37,211,102,0.4); transition:transform .3s; animation:pulse 2s infinite; }
.smw-floating-whatsapp:hover { transform:scale(1.1); animation:none; color:white; }
.smw-floating-call { position:fixed; bottom:100px; right:24px; width:50px; height:50px; background:var(--o); color:var(--dk); border-radius:50%; display:flex; align-items:center; justify-content:center; z-index:100; box-shadow:0 4px 15px rgba(232,103,10,0.4); transition:transform .3s; }
.smw-floating-call:hover { transform:scale(1.1); color:var(--dk); }
.smw-back-to-top { position:fixed; bottom:24px; left:24px; width:44px; height:44px; background:var(--dk3); border:1px solid var(--border); color:var(--wh); border-radius:50%; display:flex; align-items:center; justify-content:center; z-index:100; cursor:pointer; transition:all .3s; opacity:0; visibility:hidden; transform:translateY(20px); }
.smw-back-to-top.visible { opacity:1; visibility:visible; transform:translateY(0); }
.smw-back-to-top:hover { background:var(--o); border-color:var(--o); color:var(--dk); }

/* ── PRELOADER ────────────────────────────────── */
.smw-preloader { position:fixed; inset:0; background:var(--dk); z-index:99999; display:flex; align-items:center; justify-content:center; transition:opacity .5s ease, visibility .5s ease; }
.smw-preloader.loaded { opacity:0; visibility:hidden; }
.smw-preloader-inner { text-align:center; }
.smw-preloader-logo { margin-bottom:32px; animation:pulse 2s infinite; }
.smw-preloader-logo img { max-width:150px; }
.smw-preloader-text { font-family:'Oswald',sans-serif; font-size:24px; font-weight:700; color:var(--wh); text-transform:uppercase; letter-spacing:2px; }
.smw-preloader-bar { width:200px; height:2px; background:rgba(255,255,255,.1); margin:0 auto; overflow:hidden; position:relative; }
.smw-preloader-progress { position:absolute; top:0; left:-100%; width:100%; height:100%; background:var(--o); animation:loading 1.5s ease-in-out infinite; }
@keyframes loading { 0% { left:-100%; } 50% { left:0; } 100% { left:100%; } }

/* ── COOKIE NOTICE ────────────────────────────── */
.smw-cookie-notice { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); background:var(--dk2); border:1px solid var(--border); padding:24px 32px; z-index:9000; width:90%; max-width:600px; box-shadow:0 10px 40px rgba(0,0,0,0.5); border-radius:8px; }
.smw-cookie-inner p { font-size:13px; color:var(--gr); line-height:1.6; margin-bottom:20px; }
.smw-cookie-buttons { display:flex; gap:12px; }
.smw-cookie-buttons .btn { padding:10px 24px; font-size:11px; }

/* ── WOOCOMMERCE ──────────────────────────────── */
.woocommerce .sec { padding-top:60px; }
.woocommerce-products-header { margin-bottom:48px; text-align:center; }
.woocommerce-products-header__title { font-family:'Oswald',sans-serif; font-size:48px; text-transform:uppercase; }
.woocommerce ul.products li.product { background:var(--dk2); border:1px solid var(--border); padding:16px; transition:border-color .3s; text-align:center; }
.woocommerce ul.products li.product:hover { border-color:var(--o); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family:'Oswald',sans-serif; font-size:18px; color:var(--wh); padding:16px 0 8px; }
.woocommerce ul.products li.product .price { color:var(--o); font-weight:600; margin-bottom:16px; }
.woocommerce ul.products li.product .button { background:var(--o); color:var(--dk); font-family:'Oswald',sans-serif; text-transform:uppercase; font-size:12px; padding:10px 20px; border-radius:0; clip-path:polygon(6px 0%,100% 0%,calc(100% - 6px) 100%,0% 100%); }
.woocommerce ul.products li.product .button:hover { background:var(--o2); }
.woocommerce div.product .product_title { font-family:'Oswald',sans-serif; font-size:36px; text-transform:uppercase; margin-bottom:16px; }
.woocommerce div.product p.price { color:var(--o); font-size:24px; font-weight:600; }
.woocommerce div.product form.cart .button { background:var(--o); color:var(--dk); border-radius:0; }
.woocommerce-tabs ul.tabs li { background:var(--dk2) !important; border:1px solid var(--border) !important; }
.woocommerce-tabs ul.tabs li.active { border-top-color:var(--o) !important; background:var(--dk) !important; }
.woocommerce-tabs ul.tabs li a { color:var(--wh) !important; font-family:'Oswald',sans-serif; text-transform:uppercase; }

/* ── UTILITIES ────────────────────────────────── */
.text-center { text-align:center; }
.text-orange { color:var(--o); }
.mt-0 { margin-top:0 !important; }
.mb-0 { margin-bottom:0 !important; }
.pt-0 { padding-top:0 !important; }
.pb-0 { padding-bottom:0 !important; }
.w-100 { width:100%; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: var(--o); border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; clip-path: none; color: var(--dk); display: block; font-size: 14px; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
