/* ==========================================================
   MEKANIKS ISRAEL — shared stylesheet
   Palette approximates a dark-header / white-body / orange-CTA
   layout in the style of mekaniks.co.uk. Note: exact hex values
   could not be extracted from the live site (tools only return
   rendered text, not source CSS) — these are a close professional
   approximation. Swap the variables below for exact brand values
   any time.
   ========================================================== */
:root{
  --ink:#132a63;        /* navy-deep — header/footer/hero panels */
  --ink-soft:#1e3a8a;   /* navy — hover states, secondary dark bg */
  --white:#ffffff;
  --paper:#f4f6fb;
  --paper-dim:#e9edf7;
  --accent:#5cb946;     /* green — CTAs, links, icons (was orange) */
  --accent-dark:#4a9c37;
  --steel:#4a5568;
  --line:#dfe3ee;
  --line-dark:#2a468f;  /* navy divider lines on dark panels */
  --wa-green:#25D366;
  --font:'Rubik',sans-serif;
  --font-num:'Oswald',sans-serif;
}
html{overflow-x:hidden;width:100%;}
body{max-width:100%;overflow-x:hidden;position:relative;}
.wrap,section,header,footer,.hero,.page-hero{max-width:100%;}
img,iframe{max-width:100%;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
svg{width:20px;height:20px;flex-shrink:0;}
body{
  margin:0;background:var(--white);color:var(--ink);
  font-family:var(--font);line-height:1.55;-webkit-font-smoothing:antialiased;
}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{margin:0;font-weight:800;letter-spacing:-.01em;}
p{margin:0;}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.eyebrow{
  font-family:var(--font-num);text-transform:uppercase;letter-spacing:.14em;
  font-size:12px;font-weight:600;color:var(--accent);display:inline-flex;align-items:center;gap:8px;
}
.eyebrow::before{content:"";width:16px;height:2px;background:var(--accent);display:inline-block;}
[dir="rtl"] .eyebrow{direction:ltr;}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 22px;border-radius:6px;font-weight:600;font-size:14.5px;cursor:pointer;border:none;
  transition:transform .15s ease, box-shadow .15s ease;font-family:var(--font);
}
.btn:hover{transform:translateY(-1px);}
.btn-accent{background:var(--accent);color:#fff;box-shadow:0 3px 0 var(--accent-dark);}
.btn-accent:active{transform:translateY(1px);box-shadow:0 2px 0 var(--accent-dark);}
.btn-ghost{background:transparent;border:1.5px solid var(--white);color:var(--white);}
.btn-ghost-dark{background:transparent;border:1.5px solid var(--ink);color:var(--ink);}
.btn-dark{background:var(--ink);color:#fff;}
.btn-wa{background:#25D366;color:#fff;box-shadow:0 3px 0 #1aa64d;}

/* ===== Topbar ===== */
.topbar{background:var(--ink);color:#c7cad1;font-size:12.5px;}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:7px 24px;flex-wrap:wrap;gap:6px;}
.topbar a{opacity:.9;}
.topbar a:hover{opacity:1;color:var(--accent);}
.topbar .tb-right{display:flex;gap:18px;align-items:center;}

/* ===== Header / nav ===== */
header.site-header{position:sticky;top:0;z-index:60;background:var(--white);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:1180px;margin:0 auto;gap:20px;}
.logo{font-weight:800;font-size:21px;display:flex;align-items:center;gap:9px;flex:none;}
.logo-img{height:34px;width:auto;display:block;}
.logo .mark{width:32px;height:32px;border-radius:7px;background:var(--ink);display:flex;align-items:center;justify-content:center;}
.logo .mark svg{width:18px;height:18px;}
.nav-links{display:flex;gap:2px;align-items:center;flex:1;justify-content:center;}
.nav-links > li{position:relative;}
.nav-links a.top-link{font-size:14px;font-weight:500;color:var(--ink);padding:10px 12px;display:inline-flex;align-items:center;gap:5px;border-radius:6px;}
.nav-links a.top-link:hover{background:var(--paper);color:var(--accent);}
.nav-links .caret{width:9px;height:9px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);margin-top:-3px;opacity:.6;}
.dropdown{
  position:absolute;top:100%;inset-inline-start:0;background:#fff;border:1px solid var(--line);
  border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.12);min-width:270px;padding:10px;
  display:none;z-index:70;max-height:400px;overflow-y:auto;
}
.nav-links > li:hover .dropdown{display:block;}
.dropdown a{display:block;padding:9px 12px;font-size:13.5px;border-radius:6px;color:var(--ink-soft);}
.dropdown a:hover{background:var(--paper);color:var(--accent);}
.nav-right{display:flex;align-items:center;gap:12px;flex:none;}
.lang-toggle{
  font-family:var(--font-num);border:1.5px solid var(--ink);background:transparent;color:var(--ink);
  border-radius:20px;padding:5px;font-size:11.5px;font-weight:600;cursor:pointer;display:flex;
}
.lang-toggle span{padding:3px 9px;border-radius:14px;}
.lang-toggle span.active{background:var(--ink);color:#fff;}
.nav .btn{padding:9px 16px;font-size:13px;}
.burger{display:none;background:none;border:none;cursor:pointer;padding:6px;}
.burger span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;}

/* ===== Breadcrumb ===== */
.breadcrumb{background:var(--paper);border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;color:var(--steel);}
.breadcrumb a{color:var(--steel);}
.breadcrumb a:hover{color:var(--accent);}
.breadcrumb .sep{margin:0 8px;opacity:.5;}

/* ===== Hero (home) ===== */
.hero{background:var(--ink);color:#fff;padding:60px 0 46px;width:100%;box-sizing:border-box;transform:translateZ(0);}

/* Punchy landing-style hero */
.hero-punchy{padding:100px 0 70px;display:flex;align-items:center;width:100%;box-sizing:border-box;transform:translateZ(0);}
.hero-punchy-inner{max-width:760px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;}
.hero-giant{
  font-family:var(--font-num);font-weight:700;text-transform:uppercase;
  font-size:clamp(52px,13vw,120px);line-height:.92;letter-spacing:-.01em;
  margin:14px 0 10px;color:#fff;
}
.hero-tagline{font-size:clamp(17px,2.4vw,22px);color:#d7dbe6;margin-bottom:30px;max-width:520px;}
.hero-ctas-center{justify-content:center;}
.btn-lg{padding:16px 30px;font-size:16px;border-radius:10px;}
.hero-stats-center{justify-content:center;margin-top:34px;gap:34px;}
.hero-stats-center .stat{text-align:center;}
.quote-card-standalone{max-width:560px;margin:0 auto;}
.hero-badge-ic{display:inline-flex;color:var(--wa-green);}
@media(max-width:640px){
  .hero-punchy{padding:56px 0 40px;}
  .hero-ctas-center{flex-direction:column;width:100%;}
  .hero-ctas-center .btn{width:100%;}
  .hero-stats-center{gap:20px;}
}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;}
.hero h1{font-size:clamp(32px,4.2vw,50px);line-height:1.1;margin:16px 0 16px;}
.hero h1 em{font-style:normal;color:var(--accent);}
.hero .sub{font-size:16.5px;color:#c7cad1;max-width:480px;margin-bottom:24px;}
.hero-ctas{display:flex;gap:12px;margin-bottom:28px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:26px;flex-wrap:wrap;}
.stat b{font-family:var(--font-num);font-size:22px;display:block;color:#fff;}
.stat span{font-size:12px;color:#9aa0ab;}
.route-card{background:var(--ink-soft);border:1px solid var(--line-dark);border-radius:16px;padding:22px;}
.route-card svg{width:100%;height:auto;}
.route-line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-dasharray:600;stroke-dashoffset:600;animation:draw 2.2s ease forwards .3s;}
@keyframes draw{to{stroke-dashoffset:0;}}
.route-dot{fill:#fff;opacity:0;animation:pop .4s ease forwards;}
@keyframes pop{to{opacity:1;}}
.route-label{fill:#fff;font-family:'Rubik',sans-serif;font-size:11px;font-weight:500;opacity:.8;}
@media (prefers-reduced-motion: reduce){.route-line{animation:none;stroke-dashoffset:0;}.route-dot{animation:none;opacity:1;}.reveal{opacity:1 !important;transform:none !important;transition:none !important;}}

/* Scroll-reveal animation system */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal.is-visible{opacity:1;transform:translateY(0);}
.reveal-stagger > *{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
.reveal-stagger.is-visible > *{opacity:1;transform:translateY(0);}
.reveal-stagger.is-visible > *:nth-child(1){transition-delay:.03s;}
.reveal-stagger.is-visible > *:nth-child(2){transition-delay:.09s;}
.reveal-stagger.is-visible > *:nth-child(3){transition-delay:.15s;}
.reveal-stagger.is-visible > *:nth-child(4){transition-delay:.21s;}
.reveal-stagger.is-visible > *:nth-child(5){transition-delay:.27s;}
.reveal-stagger.is-visible > *:nth-child(6){transition-delay:.33s;}
.reveal-stagger.is-visible > *:nth-child(n+7){transition-delay:.38s;}

/* Hover motion */
.step-photo, .testimonial-card, .trust-badge, .related-card, .brand-chip, .svc{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .15s ease;}
.step-photo:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(19,42,99,.1);}
.testimonial-card:hover, .trust-badge:hover{transform:translateY(-3px);box-shadow:0 14px 26px rgba(19,42,99,.08);}
.step-photo{overflow:hidden;}
.step-photo img{transition:transform .5s ease;}
.step-photo:hover img{transform:scale(1.05);}
.btn{transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;}
.btn:hover{filter:brightness(1.04);}
.hero-ctas .btn, .hero-stats .stat{animation:fadeUp .7s ease both;}
.hero-stats .stat:nth-child(2){animation-delay:.08s;}
.hero-stats .stat:nth-child(3){animation-delay:.16s;}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
@media (prefers-reduced-motion: reduce){.hero-ctas .btn, .hero-stats .stat{animation:none;}.step-photo:hover img{transform:none;}}

/* ===== Inner page hero ===== */
.page-hero{background:var(--ink);color:#fff;padding:46px 0;width:100%;box-sizing:border-box;transform:translateZ(0);}
.page-hero h1{font-size:clamp(28px,3.6vw,42px);margin-top:12px;}
.page-hero p{color:#c7cad1;max-width:640px;margin-top:12px;font-size:16px;}

/* ===== Sections ===== */
section{padding:70px 0;}
.section-head{max-width:620px;margin-bottom:40px;}
.section-head h2{font-size:clamp(24px,2.8vw,34px);margin-top:12px;}
.section-head p{margin-top:10px;color:var(--steel);font-size:15.5px;}
.bg-paper{background:var(--paper);}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 20px;}
.step .num{font-family:var(--font-num);font-size:12.5px;font-weight:600;color:var(--accent);direction:ltr;display:inline-block;margin-bottom:12px;}
.step h3{font-size:17.5px;margin-bottom:7px;}
.step p{color:var(--steel);font-size:14px;}

/* Services grid */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.svc{background:#fff;padding:20px 18px;min-height:112px;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;transition:background .15s;}
.svc:hover{background:var(--paper);}
.svc h3{font-size:14px;font-weight:600;line-height:1.3;}
.svc .ic{width:24px;height:24px;color:var(--accent);}

/* Circular icon badges (services, related cards, brand pages) */
.ic-badge{
  width:38px;height:38px;border-radius:10px;flex:none;
  display:flex;align-items:center;justify-content:center;
  background:rgba(92,185,70,.12);color:var(--accent-dark);
}
.ic-badge svg{width:19px;height:19px;}
.ic-badge-dark{background:rgba(92,185,70,.16);color:#8fd977;}

/* Trust badge row */
.trust-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.trust-badge{
  border:1px solid var(--line);border-radius:12px;padding:20px 16px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff;
}
.trust-badge .tb-ic{display:flex;gap:2px;color:#f5b301;}
.trust-badge .tb-ic svg{width:16px;height:16px;color:var(--accent);}
.trust-badge b{font-size:14px;color:var(--ink);}
.trust-badge span:not(.tb-ic){font-size:12px;color:var(--steel);}

/* Photo steps */
.steps-photo{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.step-photo{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.step-photo img{width:100%;height:170px;object-fit:cover;}
.step-photo-body{padding:20px;}
.step-photo-body h3{font-size:17px;margin:8px 0 6px;}
.step-photo-body p{font-size:13.5px;color:var(--steel);}

/* Testimonials */
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.testimonial-card{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff;}
.t-stars{display:flex;gap:2px;color:#f5b301;margin-bottom:12px;}
.t-stars svg{width:15px;height:15px;}
.t-quote{font-size:14.5px;color:var(--ink-soft);line-height:1.65;min-height:80px;}
.t-person{display:flex;align-items:center;gap:11px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);}
.t-avatar{
  width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex:none;
}
.t-person b{font-size:13.5px;display:block;}
.t-person span{font-size:12px;color:var(--steel);}

/* feature bullets (service pages) */
.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin-top:22px;}
.feature-list li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--ink-soft);}
.feature-list .chk{width:19px;height:19px;flex:none;color:var(--accent);margin-top:2px;}

/* Coverage */
.coverage{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;}
.city-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;}
.city-pill{border:1.5px solid var(--ink);border-radius:30px;padding:7px 15px;font-size:13.5px;font-weight:500;display:flex;align-items:center;gap:6px;}
.city-pill svg{width:12px;height:12px;color:var(--accent);}
.map-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:20px;}

/* Why us */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.why-card .n{font-family:var(--font-num);font-size:30px;color:var(--accent);direction:ltr;text-align:start;}
.why-card h3{font-size:16px;margin:8px 0 6px;}
.why-card p{font-size:13.5px;color:var(--steel);}

/* Related cards (service/brand pages) */
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.related-card{border:1px solid var(--line);border-radius:12px;padding:20px;transition:border-color .15s, transform .15s;}
.related-card:hover{border-color:var(--accent);transform:translateY(-2px);}
.related-card .ic{width:22px;height:22px;color:var(--accent);margin-bottom:10px;}
.related-card h4{font-size:14.5px;}

/* Brand grid on home */
.brand-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.brand-chip{
  border:1.5px solid var(--line);border-radius:10px;padding:20px 12px;
  font-size:14px;font-weight:700;color:var(--ink);background:#fff;text-align:center;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:96px;
  transition:border-color .15s, transform .15s, box-shadow .15s;
}
.brand-chip .brand-logo{width:34px;height:34px;object-fit:contain;}
.brand-chip:hover{border-color:var(--accent);color:var(--accent-dark);transform:translateY(-2px);box-shadow:0 10px 22px rgba(19,42,99,.08);}
@media(max-width:900px){.brand-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.brand-strip{grid-template-columns:repeat(2,1fr);}}

/* Quote band */
.quote-band{background:var(--paper-dim);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.quote-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:flex-start;}
form.quote-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;display:grid;grid-template-columns:1fr 1fr;gap:13px;}
form.quote-form .full{grid-column:1/-1;}
.field label{font-size:12px;font-weight:600;color:var(--steel);display:block;margin-bottom:5px;}
.field input,.field select,.field textarea{
  width:100%;border:1.5px solid var(--line);border-radius:8px;padding:12px 11px;
  font-family:var(--font);font-size:16px;background:var(--paper);color:var(--ink);
}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
form.quote-form .btn{grid-column:1/-1;margin-top:4px;width:100%;}
.contact-list{margin-top:24px;display:flex;flex-direction:column;gap:15px;}
.contact-item{display:flex;gap:13px;align-items:flex-start;}
.contact-item .ic{width:36px;height:36px;border-radius:8px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;}
.contact-item .ic svg{width:17px;height:17px;}
.contact-item b{display:block;font-size:14px;}
.contact-item span{font-size:13px;color:var(--steel);}

/* Trust strip */
.trust-strip{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.trust-item{display:flex;align-items:center;gap:9px;font-size:13.5px;font-weight:600;color:var(--ink-soft);}
.trust-item svg{width:20px;height:20px;color:var(--accent);}

/* ===== Footer ===== */
footer.site-footer{background:var(--ink);color:#98a0ab;padding-top:50px;}
.foot-cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr;gap:28px;padding-bottom:36px;border-bottom:1px solid var(--line-dark);}
.foot-brand .logo{color:#fff;}
.foot-logo-img{height:22px;width:auto;display:block;}
.foot-brand p{font-size:13px;margin-top:14px;color:#8a919c;line-height:1.7;}
.foot-brand .placeholder{color:var(--accent);font-weight:600;}
.foot-social{display:flex;gap:10px;margin-top:16px;}
.foot-social a{width:32px;height:32px;border:1px solid var(--line-dark);border-radius:8px;display:flex;align-items:center;justify-content:center;}
.foot-social a:hover{border-color:var(--accent);color:var(--accent);}
.foot-col h5{color:#fff;font-size:13px;font-weight:700;margin-bottom:14px;letter-spacing:.03em;}
.foot-col ul{display:flex;flex-direction:column;gap:9px;}
.foot-col a{font-size:13px;color:#98a0ab;}
.foot-col a:hover{color:var(--accent);}
.foot-pay{padding:26px 0;border-bottom:1px solid var(--line-dark);display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.foot-pay h5{color:#fff;font-size:12.5px;font-weight:700;margin:0;}
.pay-chip{border:1px solid var(--line-dark);border-radius:6px;padding:6px 12px;font-size:12.5px;font-weight:600;color:#c7cad1;}
.foot-bottom{padding:20px 0 26px;font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.placeholder{color:var(--accent);font-weight:600;}

/* Photo gallery (service/job/brand pages) */
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.gallery-item{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#fff;}
.gallery-item img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .5s ease;}
.gallery-item:hover img{transform:scale(1.04);}
.gallery-item figcaption{padding:12px 16px;font-size:13px;color:var(--steel);}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:14px;max-width:820px;}
.faq-item{border:1px solid var(--line);border-radius:12px;padding:20px 22px;background:#fff;}
.faq-item h3{font-size:15.5px;margin-bottom:8px;color:var(--ink);}
.faq-item p{font-size:14px;color:var(--steel);line-height:1.7;}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr;}}

/* Signs / Why blocks */
.signs-block{max-width:760px;}
.signs-block p{margin-top:14px;font-size:16px;color:var(--ink-soft);line-height:1.85;}
.why-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;}
.why-block-img{border-radius:16px;overflow:hidden;}
.why-block-img img{width:100%;height:280px;object-fit:cover;display:block;}
.why-block p{margin-top:12px;font-size:16px;color:var(--ink-soft);line-height:1.85;}
@media(max-width:900px){.why-block{grid-template-columns:1fr;}.why-block-img img{height:220px;}}
body{padding-bottom:56px;}
.contact-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:90;
  display:flex;height:56px;box-shadow:0 -4px 18px rgba(0,0,0,.12);
}
.contact-bar a{
  flex:1;display:flex;align-items:center;justify-content:center;gap:9px;
  color:#fff;font-weight:700;font-size:15px;font-family:var(--font-num);letter-spacing:.02em;
}
.contact-bar a svg{width:20px;height:20px;}
.cb-wa-full{background:var(--wa-green);}
.cb-wa-full:hover{background:#1fb959;}
@media(max-width:480px){.cb-wa-full span{font-size:13.5px;}}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr;}
  .steps{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .coverage{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .quote-grid{grid-template-columns:1fr;}
  form.quote-form{grid-template-columns:1fr;}
  .nav-links{display:none;}
  .burger{display:block;}
  .foot-cols{grid-template-columns:1fr 1fr;}
  .related-grid{grid-template-columns:1fr;}
  .feature-list{grid-template-columns:1fr;}
  .topbar .wrap{justify-content:center;text-align:center;}
  .trust-badges{grid-template-columns:repeat(2,1fr);}
  .steps-photo{grid-template-columns:1fr;}
  .testimonial-grid{grid-template-columns:1fr;}

  /* Header: keep logo+burger+lang+CTA from crowding on narrow phones */
  .nav{padding:12px 16px;gap:8px;}
  .logo-img{height:28px;}
  .nav .btn{padding:9px 13px;font-size:12.5px;}
  .lang-toggle{font-size:11px;}
  .nav-right{gap:8px;}

  /* Dropdown submenus: hover doesn't work reliably on touch, so when the
     mobile flyout is open, render Services/Brand submenus expanded inline
     instead of hidden behind :hover. */
  .nav-links .dropdown{
    display:block;position:static;box-shadow:none;border:none;
    margin:4px 0 4px 0;padding-inline-start:14px;max-height:none;
    background:transparent;
  }
  .nav-links > li{width:100%;}
  .nav-links a.top-link{width:100%;box-sizing:border-box;}

  /* Comfortable tap targets */
  .dropdown a{padding:11px 12px;font-size:14px;}
  .foot-col a{display:inline-block;padding:4px 0;}
}

@media(max-width:380px){
  .hero-giant{font-size:44px;}
  .nav .btn{padding:8px 10px;font-size:11.5px;}
}
