/*
Theme Name: SVS Autocare
Theme URI: https://www.svsautocare.com.au
Author: SVS Autocare
Author URI: https://www.svsautocare.com.au
Description: Custom dark theme for SVS Autocare - Specialist Vehicle Servicing, Maroochydore. Includes Home, Parts and Contact templates with a shared sticky header and footer. Fully responsive.
Version: 1.1
Requires at least: 5.8
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: svs-autocare
*/

/* ============================================================
   GLOBAL / RESET
   ============================================================ */
:root{
  --svs-green:#c8da2b;
  --svs-green-hover:#d9ec3a;
  --svs-black:#000;
  --svs-bg:#0a0a0a;
  --svs-card:#111;
}

*, *::before, *::after{ box-sizing:border-box; margin:0; padding:0; }

html{ scroll-behavior:smooth; }

body{
  background:#000;
  color:#fff;
  font-family:'Manrope', Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; }

/* ============================================================
   HEADER / NAV
   ============================================================ */
.svs-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(0,0,0,0.92);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(200,218,43,0.15);
}

.svs-header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 48px;
  height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.svs-logo{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
}
.svs-logo-mark{
  width:34px;height:34px;
  background:var(--svs-green);
  border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:16px;color:#000;letter-spacing:-1px;
  flex-shrink:0;
}
.svs-logo-text{
  font-size:18px;font-weight:800;letter-spacing:1px;
  text-transform:uppercase;color:#fff;line-height:1;
}
.svs-logo-text span{ color:var(--svs-green); }

/* Image logo (bundled asset or Customizer "Site Identity" logo) */
.svs-logo-link, .custom-logo-link{
  display:inline-flex;align-items:center;line-height:0;
  text-decoration:none;-webkit-tap-highlight-color:transparent;
}
.svs-header .svs-brand-logo, .svs-header .custom-logo{
  height:42px;width:auto;max-width:60vw;display:block;
}
.svs-footer .svs-brand-logo, .svs-footer .custom-logo{
  height:48px;width:auto;max-width:240px;display:block;
}

.svs-nav{
  display:flex;
  align-items:center;
  gap:34px;
}
.svs-nav a{
  font-size:11px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,0.75);
  text-decoration:none;
  transition:color 0.15s ease;
  -webkit-tap-highlight-color:transparent;
}
.svs-nav a:hover, .svs-nav a.current-page{ color:var(--svs-green); }

.svs-header-call{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11px;font-weight:800;letter-spacing:2px;
  text-transform:uppercase;color:#000;
  background:var(--svs-green);
  padding:11px 22px;border-radius:50px;
  text-decoration:none;
  transition:background 0.15s ease;
  -webkit-tap-highlight-color:transparent;
}
.svs-header-call:hover{ background:var(--svs-green-hover); }
.svs-header-call svg{ width:14px;height:14px;fill:none;stroke:#000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }

/* Hamburger */
.svs-burger{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:42px;height:42px;
  background:transparent;border:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.svs-burger span{
  display:block;width:24px;height:2px;background:#fff;border-radius:2px;
  transition:transform 0.25s ease, opacity 0.25s ease;
  margin:0 auto;
}
.svs-burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.svs-burger.is-open span:nth-child(2){ opacity:0; }
.svs-burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ============================================================
   FOOTER
   ============================================================ */
.svs-footer{
  background:#0a0a0a;
  border-top:1px solid rgba(200,218,43,0.15);
  font-family:'Manrope', Arial, sans-serif;
}
.svs-footer-inner{
  max-width:1100px;margin:0 auto;padding:64px 48px 0;
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;
}
.svs-footer-col h4{
  font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;
  color:var(--svs-green);margin-bottom:20px;
}
.svs-footer-brand .svs-logo-text{ font-size:22px; }
.svs-footer-brand p{
  font-size:13px;line-height:1.8;color:rgba(255,255,255,0.5);
  margin-top:18px;max-width:300px;
}
.svs-footer-col a, .svs-footer-col p.svs-footer-line{
  display:block;font-size:13px;font-weight:600;color:rgba(255,255,255,0.7);
  text-decoration:none;line-height:1.5;margin-bottom:12px;
  transition:color 0.15s ease;
}
.svs-footer-col a:hover{ color:var(--svs-green); }
.svs-footer-hours-row{
  display:flex;justify-content:space-between;gap:16px;
  font-size:12px;color:rgba(255,255,255,0.6);margin-bottom:9px;
}
.svs-footer-hours-row strong{ color:#fff;font-weight:700; }
.svs-footer-hours-row.closed span{ color:rgba(255,255,255,0.3); }

.svs-footer-socials{ display:flex;gap:10px;margin-top:6px; }
.svs-footer-socials a{
  width:38px;height:38px;border-radius:10px;
  background:#111;border:1px solid rgba(255,255,255,0.08);
  display:flex;align-items:center;justify-content:center;
  margin:0;transition:border-color 0.15s ease,background 0.15s ease;
}
.svs-footer-socials a:hover{ border-color:rgba(200,218,43,0.4);background:rgba(200,218,43,0.07); }
.svs-footer-socials svg{ width:18px;height:18px;fill:#fff; }

.svs-footer-bottom{
  max-width:1100px;margin:56px auto 0;padding:24px 48px;
  border-top:1px solid rgba(255,255,255,0.06);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
  font-size:11px;letter-spacing:0.5px;color:rgba(255,255,255,0.4);
}
.svs-footer-bottom a{ color:rgba(255,255,255,0.4);text-decoration:none; }
.svs-footer-bottom a:hover{ color:var(--svs-green); }

/* ============================================================
   SHARED PAGE PRIMITIVES
   ============================================================ */
.svs-page-eyebrow{
  font-size:10px;font-weight:700;letter-spacing:5px;text-transform:uppercase;
  color:var(--svs-green);margin-bottom:16px;
}
.svs-page-title{
  font-size:clamp(44px,6vw,80px);font-weight:800;letter-spacing:-2px;
  text-transform:uppercase;color:#fff;line-height:0.9;
}

/* ============================================================
   HOME
   ============================================================ */
.svs-hero{
  position:relative;width:100%;height:700px;display:flex;align-items:center;
  background:#111;overflow:hidden;
}
.svs-hero-img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  filter:grayscale(100%);z-index:0;
}
.svs-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(110deg, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.60) 55%, rgba(0,0,0,0.25) 100%);
  z-index:1;
}
.svs-hero-green-bar{ position:absolute;bottom:0;left:0;width:340px;height:3px;background:var(--svs-green);z-index:2; }
.svs-hero-inner{ position:relative;z-index:3;max-width:1200px;margin:0 auto;padding:0 48px;width:100%; }
.svs-eyebrow{
  font-size:10px;font-weight:700;letter-spacing:5px;text-transform:uppercase;
  color:var(--svs-green);margin-bottom:20px;opacity:0;animation:svsUp 0.6s ease forwards 0.1s;
}
.svs-hero-h1{
  font-size:clamp(48px,9vw,108px);font-weight:800;line-height:0.92;letter-spacing:-3px;
  text-transform:uppercase;color:#fff;margin-bottom:28px;opacity:0;animation:svsUp 0.6s ease forwards 0.2s;
}
.svs-hero-h1 em{ font-style:normal;color:var(--svs-green); }
.svs-hero-sub{
  font-size:15px;font-weight:400;line-height:1.8;color:rgba(255,255,255,0.65);
  max-width:420px;margin-bottom:40px;opacity:0;animation:svsUp 0.6s ease forwards 0.3s;
}
.svs-hero-btns{ display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:svsUp 0.6s ease forwards 0.4s; }
.svs-btn-green{
  font-size:11px;font-weight:800;letter-spacing:3px;text-transform:uppercase;text-decoration:none;
  color:#000;background:var(--svs-green);padding:16px 36px;border-radius:50px;display:inline-block;
  transition:background 0.15s ease,box-shadow 0.15s ease;-webkit-tap-highlight-color:transparent;
}
.svs-btn-green:hover{ background:var(--svs-green-hover);box-shadow:0 8px 24px rgba(200,218,43,0.4); }
.svs-btn-ghost{
  font-size:11px;font-weight:800;letter-spacing:3px;text-transform:uppercase;text-decoration:none;
  color:#fff;background:transparent;padding:15px 36px;border-radius:50px;
  border:1.5px solid rgba(255,255,255,0.4);display:inline-block;
  transition:border-color 0.15s ease,background 0.15s ease;-webkit-tap-highlight-color:transparent;
}
.svs-btn-ghost:hover{ border-color:#fff;background:rgba(255,255,255,0.1); }

.svs-cards-section{ background:#0a0a0a;padding:90px 32px; }
.svs-section-head{ text-align:center;margin-bottom:56px; }
.svs-section-eyebrow{ font-size:10px;font-weight:700;letter-spacing:5px;text-transform:uppercase;color:var(--svs-green);margin-bottom:12px; }
.svs-section-title{ font-size:clamp(30px,5vw,52px);font-weight:800;letter-spacing:-1.5px;text-transform:uppercase;color:#fff;line-height:1; }
.svs-cards-grid{ max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }
.svs-card{
  display:block;background:#111;border:1px solid rgba(255,255,255,0.07);border-radius:18px;
  padding:36px 28px;text-decoration:none;transition:border-color 0.15s ease,box-shadow 0.15s ease;
  -webkit-tap-highlight-color:transparent;
}
.svs-card:hover{ border-color:rgba(200,218,43,0.45);box-shadow:0 12px 40px rgba(0,0,0,0.4); }
.svs-card-icon{
  width:48px;height:48px;background:rgba(200,218,43,0.08);border:1px solid rgba(200,218,43,0.22);
  border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;
}
.svs-card-icon svg{ width:22px;height:22px;stroke:var(--svs-green);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round; }
.svs-card-tag{ font-size:9px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--svs-green);margin-bottom:8px; }
.svs-card-title{ font-size:20px;font-weight:800;letter-spacing:-0.5px;text-transform:uppercase;color:#fff;margin-bottom:10px;line-height:1.1; }
.svs-card-desc{ font-size:13px;font-weight:400;line-height:1.75;color:rgba(255,255,255,0.45);margin-bottom:24px; }
.svs-card-link{ display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--svs-green); }
.svs-card-link svg{ width:15px;height:15px;stroke:var(--svs-green);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }

.svs-stats{
  max-width:1100px;margin:64px auto 0;background:#111;border:1px solid rgba(200,218,43,0.15);
  border-radius:20px;padding:44px 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center;
}
.svs-stat-num{ font-size:42px;font-weight:800;letter-spacing:-2px;color:var(--svs-green);line-height:1;margin-bottom:8px; }
.svs-stat-label{ font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.4); }

.svs-services{ background:var(--svs-green);padding:80px 32px; }
.svs-services-inner{ max-width:1100px;margin:0 auto; }
.svs-services-heading{ text-align:center;margin-bottom:40px; }
.svs-services-heading h2{ font-size:clamp(32px,5vw,56px);font-weight:800;line-height:0.95;letter-spacing:-2px;text-transform:uppercase;color:#000; }
.svs-services-grid{ display:grid;grid-template-columns:repeat(4,1fr);gap:14px; }
.svs-service-box{ background:#000;border-radius:18px;padding:36px 24px;text-align:center;transition:background 0.15s ease;-webkit-tap-highlight-color:transparent; }
.svs-service-box:hover{ background:#1a1a1a; }
.svs-service-box-icon{ font-size:32px;margin-bottom:16px;display:block; }
.svs-service-box-title{ font-size:16px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff;margin-bottom:10px; }
.svs-service-box-line{ width:28px;height:2px;background:var(--svs-green);margin:0 auto;border-radius:2px; }

@keyframes svsUp{ from{ opacity:0;transform:translateY(16px); } to{ opacity:1;transform:translateY(0); } }

/* ============================================================
   PARTS
   ============================================================ */
.svs-parts-banner{ position:relative;background:#0a0a0a;border-bottom:1px solid rgba(200,218,43,0.15);padding:80px 48px;overflow:hidden; }
.svs-parts-banner::after{
  content:'PARTS';position:absolute;right:-20px;top:50%;transform:translateY(-50%);
  font-size:180px;font-weight:800;letter-spacing:-8px;color:rgba(255,255,255,0.03);line-height:1;user-select:none;
}
.svs-banner-inner{ max-width:1100px;margin:0 auto;position:relative;z-index:1; }
.svs-parts-content{ max-width:1100px;margin:0 auto;padding:100px 48px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center; }
.svs-parts-text h2{ font-size:clamp(28px,3.5vw,44px);font-weight:800;letter-spacing:-1px;text-transform:uppercase;color:#fff;line-height:1.05;margin-bottom:24px; }
.svs-parts-text h2 em{ font-style:normal;color:var(--svs-green); }
.svs-parts-text p{ font-size:15px;font-weight:400;line-height:1.85;color:rgba(255,255,255,0.6);margin-bottom:18px; }
.svs-parts-features{ list-style:none;margin:32px 0; }
.svs-parts-features li{ font-size:13px;font-weight:700;letter-spacing:0.5px;color:rgba(255,255,255,0.8);padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.06);display:flex;align-items:center;gap:12px; }
.svs-parts-features li::before{ content:'';display:block;width:6px;height:6px;background:var(--svs-green);border-radius:50%;flex-shrink:0; }
.svs-ebay-card{ background:#111;border:1px solid rgba(200,218,43,0.2);border-radius:24px;padding:52px 40px;text-align:center;position:relative;overflow:hidden;transition:border-color 0.15s ease,box-shadow 0.15s ease; }
.svs-ebay-card:hover{ border-color:rgba(200,218,43,0.5);box-shadow:0 20px 60px rgba(0,0,0,0.4); }
.svs-ebay-card::before{ content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--svs-green),transparent); }
.svs-ebay-badge{ display:inline-block;font-size:9px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:#000;background:var(--svs-green);padding:6px 16px;border-radius:20px;margin-bottom:28px; }
.svs-ebay-card h3{ font-size:28px;font-weight:800;letter-spacing:-0.5px;text-transform:uppercase;color:#fff;line-height:1.1;margin-bottom:14px; }
.svs-ebay-card p{ font-size:13px;font-weight:400;line-height:1.7;color:rgba(255,255,255,0.45);margin-bottom:40px; }
.svs-ebay-btn{ display:flex;align-items:center;justify-content:center;gap:12px;width:100%;font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase;text-decoration:none;color:#000;background:var(--svs-green);padding:20px 32px;border-radius:50px;transition:background 0.15s ease,box-shadow 0.15s ease;margin-bottom:16px;-webkit-tap-highlight-color:transparent; }
.svs-ebay-btn:hover{ background:var(--svs-green-hover);box-shadow:0 8px 32px rgba(200,218,43,0.3); }
.svs-ebay-btn svg{ width:20px;height:20px;fill:none;stroke:#000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }
.svs-ebay-note{ font-size:10px;color:rgba(255,255,255,0.3);letter-spacing:1px; }

/* ============================================================
   CONTACT
   ============================================================ */
.svs-contact-banner{ position:relative;background:#0a0a0a;border-bottom:1px solid rgba(200,218,43,0.15);padding:80px 48px;overflow:hidden; }
.svs-contact-banner::after{
  content:'CONTACT';position:absolute;right:-30px;top:50%;transform:translateY(-50%);
  font-size:160px;font-weight:800;color:rgba(255,255,255,0.025);user-select:none;line-height:1;
}
.svs-map-wrap{ width:100%;height:440px;position:relative;overflow:hidden;border-top:1px solid rgba(200,218,43,0.1);border-bottom:1px solid rgba(200,218,43,0.1); }
.svs-map-wrap iframe{ width:100%;height:100%;border:none;filter:invert(90%) hue-rotate(180deg) contrast(0.85) brightness(0.85); }
.svs-map-overlay{ position:absolute;bottom:24px;left:24px;background:#000;border:1px solid rgba(200,218,43,0.3);border-radius:14px;padding:16px 22px;z-index:1; }
.svs-map-overlay p{ font-size:11px;font-weight:700;letter-spacing:1px;color:#fff;line-height:1.6; }
.svs-map-overlay span{ color:var(--svs-green); }
.svs-map-link{ display:inline-block;margin-top:10px;font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--svs-green);text-decoration:none;border-bottom:1px solid rgba(200,218,43,0.35);padding-bottom:2px; }
.svs-contact-grid{ max-width:1100px;margin:0 auto;padding:100px 48px;display:grid;grid-template-columns:1fr 1fr;gap:60px; }
.svs-contact-info h2{ font-size:36px;font-weight:800;letter-spacing:-1px;text-transform:uppercase;color:#fff;margin-bottom:40px;line-height:1; }
.svs-contact-row{ display:flex;align-items:flex-start;gap:18px;margin-bottom:28px; }
.svs-contact-icon{ width:44px;height:44px;background:rgba(200,218,43,0.08);border:1px solid rgba(200,218,43,0.2);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.svs-contact-icon svg{ width:18px;height:18px;stroke:var(--svs-green);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round; }
.svs-contact-detail-label{ font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--svs-green);margin-bottom:4px; }
.svs-contact-detail-val{ font-size:15px;font-weight:700;color:#fff;text-decoration:none;transition:color 0.15s ease;display:block;line-height:1.4; }
.svs-contact-detail-val:hover{ color:var(--svs-green); }
.svs-socials-title{ font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:16px;margin-top:40px; }
.svs-socials{ display:flex;gap:12px;flex-wrap:wrap; }
.svs-social-btn{ display:flex;align-items:center;gap:10px;text-decoration:none;background:#111;border:1px solid rgba(255,255,255,0.08);border-radius:50px;padding:12px 20px;transition:border-color 0.15s ease,background 0.15s ease;-webkit-tap-highlight-color:transparent; }
.svs-social-btn:hover{ border-color:rgba(200,218,43,0.4);background:rgba(200,218,43,0.07); }
.svs-social-btn svg{ width:18px;height:18px;fill:#fff; }
.svs-social-btn span{ font-size:12px;font-weight:700;letter-spacing:0.5px;color:#fff; }
.svs-hours-card{ background:#111;border:1px solid rgba(200,218,43,0.15);border-radius:24px;overflow:hidden; }
.svs-hours-header{ background:var(--svs-green);padding:28px 36px; }
.svs-hours-header h3{ font-size:22px;font-weight:800;letter-spacing:-0.5px;text-transform:uppercase;color:#000; }
.svs-hours-header p{ font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);margin-top:4px; }
.svs-hours-body{ padding:32px 36px; }
.svs-hours-row{ display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.05); }
.svs-hours-row:last-child{ border-bottom:none; }
.svs-hours-day{ font-size:13px;font-weight:700;color:rgba(255,255,255,0.7);letter-spacing:0.5px; }
.svs-hours-time{ font-size:13px;font-weight:800;color:#fff;letter-spacing:0.5px; }
.svs-hours-time.svs-closed{ color:rgba(255,255,255,0.25);font-weight:400; }
.svs-hours-dot{ display:inline-block;width:6px;height:6px;background:var(--svs-green);border-radius:50%;margin-right:10px;flex-shrink:0; }
.svs-hours-cta{ padding:28px 36px;border-top:1px solid rgba(255,255,255,0.05);display:flex;flex-direction:column;gap:12px; }
.svs-call-btn{ display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:#000;background:var(--svs-green);font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:16px 24px;border-radius:50px;transition:background 0.15s ease;-webkit-tap-highlight-color:transparent; }
.svs-call-btn:hover{ background:var(--svs-green-hover); }
.svs-call-btn svg{ width:16px;height:16px;fill:none;stroke:#000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }
.svs-email-btn{ display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:#fff;background:transparent;border:1.5px solid rgba(255,255,255,0.15);font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:15px 24px;border-radius:50px;transition:border-color 0.15s ease,color 0.15s ease;-webkit-tap-highlight-color:transparent; }
.svs-email-btn:hover{ border-color:rgba(200,218,43,0.5);color:var(--svs-green); }
.svs-email-btn svg{ width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:980px){
  .svs-header-inner{ padding:0 24px; }
  .svs-nav{
    position:fixed;top:74px;left:0;right:0;
    background:#0a0a0a;border-bottom:1px solid rgba(200,218,43,0.15);
    box-shadow:0 24px 40px rgba(0,0,0,0.5);
    flex-direction:column;align-items:stretch;gap:0;
    padding:8px 0 16px;
    opacity:0;
    visibility:hidden;
    transform:translateY(-10px);
    transition:opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
    max-height:calc(100vh - 74px);overflow-y:auto;
  }
  .svs-nav.is-open{ opacity:1;visibility:visible;transform:translateY(0); }
  .svs-nav a{ padding:16px 24px;font-size:13px;border-bottom:1px solid rgba(255,255,255,0.05); }
  .svs-nav .svs-header-call{ margin:16px 24px 0;justify-content:center; }
  .svs-burger{ display:flex; }
}

@media (max-width:900px){
  .svs-hero{ height:600px; }
  .svs-hero-inner{ padding:0 32px; }
  .svs-cards-grid{ grid-template-columns:1fr 1fr; }
  .svs-stats{ grid-template-columns:1fr 1fr;gap:28px; }
  .svs-services-grid{ grid-template-columns:1fr 1fr;gap:12px; }
  .svs-parts-banner,.svs-contact-banner{ padding:60px 24px; }
  .svs-parts-content{ grid-template-columns:1fr;gap:48px;padding:60px 24px; }
  .svs-contact-grid{ grid-template-columns:1fr;padding:60px 24px;gap:40px; }
  .svs-map-wrap{ height:320px; }
  .svs-footer-inner{ grid-template-columns:1fr 1fr;gap:40px;padding:56px 24px 0; }
  .svs-footer-bottom{ padding:24px; }
}

@media (max-width:600px){
  .svs-hero{ height:560px; }
  .svs-hero-inner{ padding:0 22px; }
  .svs-hero-h1{ letter-spacing:-1.5px; }
  .svs-hero-sub{ font-size:14px; }
  .svs-hero-btns{ flex-direction:column;align-items:stretch;gap:12px; }
  .svs-btn-green,.svs-btn-ghost{ text-align:center;padding:18px 24px; }
  .svs-cards-section{ padding:64px 20px; }
  .svs-cards-grid{ grid-template-columns:1fr;gap:14px; }
  .svs-card{ padding:28px 22px; }
  .svs-stats{ grid-template-columns:1fr 1fr;gap:24px;padding:32px 20px;margin-top:40px; }
  .svs-stat-num{ font-size:34px; }
  .svs-services{ padding:60px 20px; }
  .svs-services-grid{ grid-template-columns:1fr 1fr;gap:10px; }
  .svs-service-box{ padding:28px 16px; }
  .svs-service-box-title{ font-size:13px; }
  .svs-footer-inner{ grid-template-columns:1fr;gap:36px; }
  .svs-header-call span.svs-call-label{ display:none; }
  .svs-header .svs-brand-logo, .svs-header .custom-logo{ height:34px; }
}
