/*
Theme Name: iPhone Repair 30 Min
Theme URI: https://quickiphonefixer.com
Author: FSK Digital Marketing
Author URI: https://fskdigitalmarketing.com
Description: Pixel-perfect WordPress theme replicating the Quick iPhone Fixer React site. White background, slate-950 navbar, yellow-400 brand color. Full pages: Home, Services, iPhone/MacBook/iPad/Watch Repair, About, Blog, Contact, with lead form, floating WhatsApp/Call buttons, Google Map, and complete admin dashboard.
Version: 2.0.0
Requires at least: 6.2
Tested up to: 6.5
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: ir30
Tags: repair, mobile, local-business, conversion, seo, white
*/

/* ============================================================
   DESIGN TOKENS — matches original React site exactly
   ============================================================ */
:root {
  /* Colors from original */
  --c-yellow:     #FACC15; /* yellow-400 tailwind */
  --c-yellow-dk:  #EAB308; /* yellow-500 */
  --c-yellow-bg:  #FEFCE8; /* yellow-50 */
  --c-yellow-bdr: #FEF08A; /* yellow-200 */
  --c-slate-950:  #020617; /* navbar bg */
  --c-slate-800:  #1E293B;
  --c-blue-900:   #1E3A5F;
  --c-blue-700:   #1D4ED8;
  --c-blue-600:   #2563EB;
  --c-gray-900:   #111827;
  --c-gray-700:   #374151;
  --c-gray-600:   #4B5563;
  --c-gray-200:   #E5E7EB;
  --c-gray-100:   #F3F4F6;
  --c-gray-50:    #F9FAFB;
  --c-white:      #FFFFFF;
  --c-black:      #000000;
  --c-green:      #16A34A;
  --c-whatsapp:   #25D366;
  --c-purple-900: #4C1D95;
  --c-purple-700: #7C3AED;
  --c-amber-900:  #78350F;
  --c-amber-700:  #B45309;

  /* Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Spacing */
  --nav-h: 68px;
  --radius: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --shadow: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
  --shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);
  --shadow-xl: 0 20px 25px -5px rgba(0,0,0,.1), 0 8px 10px -6px rgba(0,0,0,.1);
}

/* ============================================================
   RESET
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:16px;}
body{font-family:var(--font-sans);background:var(--c-white);color:var(--c-gray-900);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
ul,ol{list-style:none;}
button{cursor:pointer;border:none;background:none;font:inherit;}
input,select,textarea{font:inherit;}
h1,h2,h3,h4,h5{line-height:1.2;font-weight:700;}

/* ============================================================
   LAYOUT
   ============================================================ */
.container{width:100%;max-width:1152px;margin:0 auto;padding:0 16px;}
.container--sm{max-width:768px;}
.container--md{max-width:896px;}

/* ============================================================
   STICKY NAVBAR — slate-950 background, yellow accents
   ============================================================ */
#site-header{
  position:sticky;top:0;z-index:9000;
  background:var(--c-slate-950);
  box-shadow:0 1px 3px rgba(0,0,0,.5);
}
.navbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 16px;min-height:var(--nav-h);gap:16px;
  max-width:1400px;margin:0 auto;
}

/* Logo */
.navbar__logo{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.navbar__logo-img{height:40px;width:40px;object-fit:contain;}
.navbar__logo-text{font-size:1rem;font-weight:800;color:var(--c-white);line-height:1.2;}
.navbar__logo-text em{color:var(--c-yellow);font-style:normal;}

/* Desktop links */
.navbar__links{display:flex;align-items:center;gap:4px;flex:1;justify-content:center;}
.navbar__links a,
.navbar__drop-btn{
  padding:8px 14px;border-radius:6px;font-size:.9rem;font-weight:500;
  color:rgba(255,255,255,.85);transition:color .2s,background .2s;background:none;
  white-space:nowrap;
}
.navbar__links a:hover,.navbar__links a.current,
.navbar__drop-btn:hover{color:var(--c-yellow);background:rgba(255,255,255,.06);}

/* Services dropdown */
.navbar__dropdown{position:relative;}
.navbar__drop-btn{display:flex;align-items:center;gap:5px;cursor:pointer;}
.navbar__drop-btn svg{transition:transform .2s;}
.navbar__dropdown.open .navbar__drop-btn svg{transform:rotate(180deg);}
.navbar__drop-menu{
  display:none;position:absolute;top:calc(100% + 6px);left:0;
  background:var(--c-white);border:1px solid var(--c-gray-200);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);
  min-width:220px;padding:6px;z-index:100;
}
.navbar__dropdown.open .navbar__drop-menu{display:block;}
.navbar__drop-menu a{
  display:block;padding:10px 14px;border-radius:6px;
  font-size:.88rem;color:var(--c-gray-700);transition:background .15s,color .15s;
}
.navbar__drop-menu a:hover{background:var(--c-gray-100);color:var(--c-blue-700);}

/* Right side actions */
.navbar__actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.nav-call-btn{
  display:flex;align-items:center;gap:6px;padding:8px 16px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  border-radius:6px;color:var(--c-yellow);font-weight:700;font-size:.9rem;
  transition:background .2s;
}
.nav-call-btn:hover{background:rgba(255,255,255,.18);}
.nav-book-btn{
  padding:9px 18px;background:var(--c-yellow);color:var(--c-black);
  border-radius:6px;font-weight:700;font-size:.88rem;transition:background .2s,transform .15s;
}
.nav-book-btn:hover{background:var(--c-yellow-dk);transform:translateY(-1px);}

/* Hamburger */
.navbar__burger{
  display:none;flex-direction:column;gap:5px;padding:8px;
  background:rgba(255,255,255,.1);border-radius:6px;
}
.navbar__burger span{display:block;width:22px;height:2px;background:var(--c-white);border-radius:2px;transition:.2s;}

/* Mobile nav drawer */
.navbar__mobile{
  display:none;flex-direction:column;
  background:var(--c-slate-800);border-top:1px solid rgba(255,255,255,.08);
  padding:12px 16px 20px;gap:2px;
}
.navbar__mobile.open{display:flex;}
.navbar__mobile a,.navbar__mobile-drop-btn{
  display:block;padding:11px 14px;border-radius:6px;
  font-size:.95rem;font-weight:500;color:rgba(255,255,255,.85);
  transition:background .15s,color .15s;background:none;width:100%;text-align:left;
}
.navbar__mobile a:hover,.navbar__mobile-drop-btn:hover{color:var(--c-yellow);background:rgba(255,255,255,.06);}
.navbar__mobile-drop-menu{padding-left:12px;display:none;}
.navbar__mobile-drop-menu.open{display:block;}
.navbar__mobile-drop-menu a{font-size:.88rem;padding:8px 14px;color:rgba(255,255,255,.65);}
.navbar__mobile-actions{
  display:flex;gap:10px;margin-top:12px;
  padding-top:12px;border-top:1px solid rgba(255,255,255,.1);
}
.navbar__mobile-actions a{flex:1;text-align:center;padding:12px;border-radius:6px;font-weight:700;font-size:.9rem;}

/* ============================================================
   BUTTONS (reusable)
   ============================================================ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius);font-weight:700;font-size:1rem;transition:all .2s;white-space:nowrap;}
.btn-yellow{background:var(--c-yellow);color:var(--c-black);}
.btn-yellow:hover{background:var(--c-yellow-dk);}
.btn-black{background:var(--c-black);color:var(--c-white);}
.btn-black:hover{background:var(--c-gray-900);}
.btn-outline-black{border:2px solid var(--c-black);color:var(--c-black);background:transparent;}
.btn-outline-black:hover{background:var(--c-black);color:var(--c-white);}
.btn-outline-white{border:2px solid var(--c-white);color:var(--c-white);background:transparent;}
.btn-outline-white:hover{background:var(--c-white);color:var(--c-gray-900);}
.btn-whatsapp{background:var(--c-whatsapp);color:var(--c-white);}
.btn-whatsapp:hover{background:#20b958;}
.btn-lg{padding:16px 32px;font-size:1.1rem;}

/* ============================================================
   HERO SECTION — white bg, 2-col grid
   ============================================================ */
.hero{padding:48px 0 32px;background:var(--c-white);overflow:hidden;}
.hero__inner{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;max-width:1152px;margin:0 auto;padding:0 16px;}
.hero__logo{margin-bottom:24px;}
.hero__logo img{height:120px;width:120px;object-fit:contain;}
.hero__h1{
  font-size:clamp(2rem,4vw,4.5rem);font-weight:800;line-height:1.1;
  color:var(--c-black);margin-bottom:12px;text-shadow:0 1px 0 #fff;
}
.hero__h1 em{color:var(--c-yellow);font-style:normal;}
.hero__iphone-img{margin:16px 0;max-width:420px;}
.hero__iphone-img img{width:100%;height:auto;}
.hero__sub{font-size:1.05rem;font-weight:600;color:var(--c-gray-700);margin-bottom:20px;}
.hero__ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;}

/* Lead form card — right side of hero */
.hero__form{background:var(--c-white);border:1px solid var(--c-gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:28px 24px;}
.hero__form h3{font-size:1.15rem;font-weight:700;text-align:center;margin-bottom:20px;color:var(--c-black);}

/* Multi-step form */
.step-indicator{display:flex;justify-content:center;gap:8px;margin-bottom:20px;}
.step-dot{width:28px;height:28px;border-radius:50%;border:2px solid var(--c-gray-200);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:var(--c-gray-400);}
.step-dot.active{background:var(--c-yellow);border-color:var(--c-yellow);color:var(--c-black);}
.step-dot.done{background:var(--c-green);border-color:var(--c-green);color:var(--c-white);}

.form-step{display:none;}
.form-step.active{display:block;}

/* Model picker buttons */
.model-grid{display:flex;flex-wrap:wrap;gap:6px;max-height:240px;overflow-y:auto;margin-bottom:16px;padding-right:4px;}
.model-btn{
  padding:6px 12px;border-radius:20px;border:1px solid var(--c-gray-200);
  font-size:.78rem;font-weight:600;color:var(--c-gray-700);background:var(--c-white);
  cursor:pointer;transition:all .15s;white-space:nowrap;
}
.model-btn:hover,.model-btn.selected{background:var(--c-yellow);border-color:var(--c-yellow-dk);color:var(--c-black);}

/* Issue checkboxes */
.issue-list{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto;margin-bottom:16px;}
.issue-label{
  display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;
  border:1px solid var(--c-gray-200);cursor:pointer;font-size:.85rem;transition:.15s;
}
.issue-label:hover{background:var(--c-yellow-bg);border-color:var(--c-yellow);}
.issue-label input[type=checkbox]{accent-color:var(--c-yellow-dk);width:16px;height:16px;}
.issue-label.checked{background:var(--c-yellow-bg);border-color:var(--c-yellow-dk);font-weight:600;}

.form-btn-next{
  width:100%;padding:12px;background:var(--c-black);color:var(--c-yellow);
  border-radius:6px;font-weight:700;font-size:.95rem;cursor:pointer;
  transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px;
}
.form-btn-next:hover{background:var(--c-gray-900);}
.form-btn-next:disabled{background:var(--c-gray-200);color:var(--c-gray-400);cursor:not-allowed;}
.form-btn-back{
  padding:6px 14px;background:var(--c-gray-100);border-radius:6px;font-size:.82rem;
  font-weight:600;color:var(--c-gray-700);cursor:pointer;margin-bottom:12px;
}

.wa-submit-btn{
  width:100%;padding:16px;background:var(--c-whatsapp);color:var(--c-white);
  border-radius:6px;font-weight:700;font-size:1.05rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:10px;transition:.2s;
}
.wa-submit-btn:hover{background:#20b958;}

.selected-summary{
  text-align:center;margin-bottom:16px;
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:var(--c-yellow);color:var(--c-black);padding:10px 16px;border-radius:20px;
  font-weight:700;font-size:.9rem;
}

/* Lead form (standalone sections) */
.lead-form .form-group{margin-bottom:16px;}
.lead-form label{display:block;font-size:.82rem;font-weight:700;color:var(--c-gray-600);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
.lead-form input,.lead-form select,.lead-form textarea{
  width:100%;padding:12px 14px;border:1px solid var(--c-gray-200);
  border-radius:var(--radius);font-size:.95rem;color:var(--c-gray-900);
  background:var(--c-white);transition:border .2s,box-shadow .2s;
}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{
  outline:none;border-color:var(--c-yellow-dk);
  box-shadow:0 0 0 3px rgba(234,179,8,.15);
}
.lead-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.lead-form .form-full{grid-column:1/-1;}
.lead-form .submit-btn{
  width:100%;padding:15px;background:var(--c-yellow);color:var(--c-black);
  border-radius:var(--radius);font-weight:800;font-size:1rem;cursor:pointer;
  transition:background .2s,transform .15s;text-transform:uppercase;letter-spacing:.04em;
}
.lead-form .submit-btn:hover{background:var(--c-yellow-dk);transform:translateY(-1px);}
.form-note{text-align:center;font-size:.78rem;color:var(--c-gray-400);margin-top:10px;}

/* ============================================================
   STATS BAR — yellow-300 background, black text
   ============================================================ */
.stats-bar{background:var(--c-yellow);padding:24px 0;}
.stats-bar__inner{display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap;gap:20px;max-width:900px;margin:0 auto;padding:0 16px;text-align:center;}
.stat__label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(0,0,0,.65);margin-bottom:4px;}
.stat__number{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:var(--c-black);}

/* ============================================================
   HOW IT WORKS — yellow-300 bg
   ============================================================ */
.how-it-works{background:var(--c-yellow);padding:48px 0;}
.hiw-steps{display:flex;align-items:center;justify-content:space-around;flex-wrap:wrap;gap:32px;max-width:900px;margin:0 auto;padding:0 16px;text-align:center;}
.hiw-step__icon{font-size:2.5rem;font-weight:700;display:block;margin-bottom:6px;}
.hiw-step__num{font-size:3.5rem;font-weight:900;color:var(--c-black);line-height:1;}
.hiw-step__title{font-size:1rem;font-weight:700;color:var(--c-black);margin-top:6px;}
.hiw-title{text-align:center;font-size:1.5rem;font-weight:700;color:var(--c-gray-900);margin-top:28px;}

/* ============================================================
   TRUST SECTION — white bg
   ============================================================ */
.trust-section{background:var(--c-white);padding:64px 0;}
.trust-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:48px;padding-bottom:10px;border-bottom:4px solid var(--c-yellow);display:inline-block;}
.trust-section__title-wrap{text-align:center;margin-bottom:48px;}
.trust-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:48px 40px;max-width:1100px;margin:0 auto;padding:0 16px;}
.trust-item{display:flex;align-items:flex-start;gap:20px;}
.trust-item__icon{width:64px;height:64px;background:var(--c-yellow);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0;}
.trust-item__title{font-size:1.05rem;font-weight:700;margin-bottom:6px;color:var(--c-black);}
.trust-item__desc{font-size:.88rem;color:var(--c-gray-600);line-height:1.6;}

/* Testimonial quote */
.trust-quote{display:flex;flex-direction:column;align-items:center;margin-top:56px;padding:0 16px;}
.trust-quote img{width:80px;height:80px;border-radius:50%;border:4px solid var(--c-yellow);box-shadow:var(--shadow);margin-bottom:12px;object-fit:cover;}
.trust-quote blockquote{font-size:1.15rem;font-weight:600;text-align:center;max-width:640px;color:var(--c-black);position:relative;}
.trust-quote blockquote::before{content:'\201C';color:var(--c-yellow);font-size:2.5rem;font-family:serif;line-height:.5;vertical-align:-.4em;margin-right:4px;}
.trust-quote blockquote::after{content:'\201D';color:var(--c-yellow);font-size:2.5rem;font-family:serif;line-height:.5;vertical-align:-.4em;margin-left:4px;}
.trust-quote cite{margin-top:10px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--c-gray-700);font-style:normal;}

/* ============================================================
   REPAIR ISSUES — white bg, yellow-50 cards
   ============================================================ */
.issues-section{background:var(--c-white);border-top:1px solid var(--c-yellow-bdr);border-bottom:1px solid var(--c-yellow-bdr);padding:56px 0;}
.issues-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:32px;}
.issues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;max-width:1000px;margin:0 auto;padding:0 16px;}
.issue-card{background:var(--c-yellow-bg);border:1px solid var(--c-yellow-bdr);border-radius:var(--radius-lg);padding:24px 16px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:box-shadow .2s,transform .2s;}
.issue-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);}
.issue-card__icon{font-size:2.5rem;margin-bottom:12px;}
.issue-card__title{font-size:.92rem;font-weight:700;color:var(--c-black);margin-bottom:8px;line-height:1.3;}
.issue-card__desc{font-size:.8rem;color:var(--c-gray-700);line-height:1.5;}

/* ============================================================
   MAP SECTION — gray-50 bg, yellow border
   ============================================================ */
.map-section{background:var(--c-gray-50);border-top:1px solid var(--c-yellow-bdr);border-bottom:1px solid var(--c-yellow-bdr);padding:56px 0;}
.map-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:32px;}
.map-wrapper{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--c-gray-200);max-width:900px;margin:0 auto;}
.map-wrapper iframe{display:block;width:100%;border:0;}

/* ============================================================
   SERVICES PAGE — slate gradient hero, white body
   ============================================================ */
.services-hero{background:linear-gradient(to right,var(--c-slate-950),var(--c-slate-800));color:var(--c-white);padding:64px 0;}
.services-hero h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;margin-bottom:20px;text-align:center;}
.services-hero p{font-size:1.2rem;color:var(--c-gray-200);margin-bottom:48px;text-align:center;}
.services-hero-highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:700px;margin:0 auto;}
.sh-item{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.88rem;font-weight:500;}
.sh-item svg{color:var(--c-yellow);}

.services-grid-section{padding:64px 0;}
.services-grid-section h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;text-align:center;margin-bottom:48px;}
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;max-width:1100px;margin:0 auto;padding:0 16px;}
.service-card{background:var(--c-white);border-radius:var(--radius-xl);box-shadow:var(--shadow);border:1px solid var(--c-gray-200);padding:32px;transition:box-shadow .2s;}
.service-card:hover{box-shadow:var(--shadow-xl);}
.service-card__head{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.service-card__head svg{color:var(--c-blue-600);}
.service-card__head h3{font-size:1.4rem;font-weight:700;color:var(--c-gray-900);}
.service-card__desc{color:var(--c-gray-600);margin-bottom:24px;font-size:.95rem;line-height:1.6;}
.service-card__features{margin-bottom:24px;}
.service-card__features li{display:flex;align-items:center;gap:10px;color:var(--c-gray-700);font-size:.9rem;padding:4px 0;}
.feature-dot{width:8px;height:8px;background:var(--c-blue-600);border-radius:50%;flex-shrink:0;}
.service-card .btn{background:var(--c-blue-700);color:var(--c-white);padding:12px 24px;border-radius:var(--radius);}
.service-card .btn:hover{background:var(--c-blue-900);}

.services-cta{background:var(--c-yellow);padding:64px 0;}
.services-cta h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;text-align:center;color:var(--c-black);margin-bottom:20px;}
.services-cta p{text-align:center;font-size:1.1rem;color:var(--c-gray-700);margin-bottom:32px;}
.services-cta .cta-btns{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;}

/* ============================================================
   SERVICE DETAIL PAGES (iPhone/MacBook/iPad/Watch)
   ============================================================ */
/* Hero gradient varies per service — applied via inline or body class */
.service-page-hero{padding:64px 0;color:var(--c-white);}
.service-page-hero .inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:1152px;margin:0 auto;padding:0 16px;}
.service-page-hero h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:20px;}
.service-page-hero p{font-size:1.1rem;margin-bottom:28px;opacity:.9;}
.sph-badges{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:28px;}
.sph-badge{display:flex;align-items:center;gap:8px;font-size:.9rem;}
.sph-badge svg{color:var(--c-yellow);}
.sph-img{text-align:center;}
.sph-img img{max-width:400px;margin:0 auto;}

/* Services offered grid */
.repair-types{padding:64px 0;}
.repair-types h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:48px;}
.repair-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;max-width:1152px;margin:0 auto;padding:0 16px;}
.rt-card{background:var(--c-gray-50);border:1px solid var(--c-gray-200);border-radius:var(--radius-lg);padding:24px;transition:box-shadow .2s;}
.rt-card:hover{box-shadow:var(--shadow-lg);}
.rt-card svg{color:var(--c-green);margin-bottom:14px;}
.rt-card h3{font-size:.95rem;font-weight:600;color:var(--c-gray-900);margin-bottom:6px;}
.rt-card p{font-size:.8rem;color:var(--c-gray-600);line-height:1.5;}

/* Models grid */
.models-section{background:var(--c-gray-50);padding:64px 0;}
.models-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:48px;}
.models-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px;max-width:1100px;margin:0 auto;padding:0 16px;}
.model-card{background:var(--c-white);border:1px solid var(--c-gray-200);border-radius:var(--radius-lg);padding:16px 10px;text-align:center;transition:box-shadow .15s;}
.model-card:hover{box-shadow:var(--shadow);}
.model-card svg{margin:0 auto 8px;}
.model-card span{font-size:.78rem;font-weight:600;color:var(--c-gray-900);}

/* Why choose section */
.why-choose{padding:64px 0;}
.why-choose h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;text-align:center;margin-bottom:48px;}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1000px;margin:0 auto;padding:0 16px;text-align:center;}
.why-item svg{margin:0 auto 20px;}
.why-item h3{font-size:1.1rem;font-weight:700;margin-bottom:12px;}
.why-item p{font-size:.9rem;color:var(--c-gray-600);line-height:1.6;}

/* Article prose */
.prose-section{padding:64px 0;}
.prose-body{max-width:800px;margin:0 auto;padding:0 16px;}
.prose-body h2{font-size:1.8rem;font-weight:700;margin-bottom:28px;}
.prose-body h3{font-size:1.3rem;font-weight:700;margin:32px 0 12px;}
.prose-body p{color:var(--c-gray-700);font-size:.97rem;line-height:1.75;margin-bottom:20px;}

/* Service page CTA footer */
.svc-cta{color:var(--c-white);padding:64px 0;text-align:center;}
.svc-cta h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;margin-bottom:16px;}
.svc-cta p{font-size:1.1rem;margin-bottom:32px;opacity:.9;}
.svc-cta .cta-btns{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.about-page{max-width:768px;margin:0 auto;padding:56px 16px;}
.about-page h1{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;color:var(--c-yellow-dk);margin-bottom:20px;}
.about-page p{font-size:1.05rem;line-height:1.75;color:var(--c-gray-700);margin-bottom:20px;}
.about-page ul{list-style:disc;margin-left:24px;margin-bottom:20px;}
.about-page ul li{font-size:1rem;color:var(--c-gray-700);margin-bottom:10px;line-height:1.6;}
.about-page h2{font-size:1.5rem;font-weight:700;color:var(--c-black);margin-bottom:12px;}

/* ============================================================
   BLOG PAGE
   ============================================================ */
.blog-page{max-width:768px;margin:0 auto;padding:56px 16px;}
.blog-page h1{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;color:var(--c-yellow-dk);margin-bottom:24px;}
.blog-card{background:var(--c-white);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:24px;margin-bottom:32px;transition:box-shadow .2s;}
.blog-card:hover{box-shadow:var(--shadow-xl);}
.blog-card h2{font-size:1.3rem;font-weight:700;color:var(--c-black);margin-bottom:4px;}
.blog-card .blog-date{font-size:.8rem;color:var(--c-gray-400);margin-bottom:12px;}
.blog-card p{font-size:.97rem;color:var(--c-gray-700);line-height:1.7;}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.contact-page{background:var(--c-white);padding:56px 0;}
.contact-page h1{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;color:var(--c-yellow-dk);text-align:center;margin-bottom:8px;}
.contact-page .lead{text-align:center;font-size:1.05rem;color:var(--c-gray-600);margin-bottom:48px;}
.contact-grid{display:grid;grid-template-columns:2fr 3fr;gap:40px;align-items:start;max-width:1000px;margin:0 auto;padding:0 16px;}
.contact-info{background:var(--c-yellow-bg);border-radius:var(--radius-xl);padding:32px;box-shadow:var(--shadow);}
.contact-info h2{font-size:1.2rem;font-weight:700;color:var(--c-black);margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.contact-info p{color:var(--c-gray-700);line-height:1.6;font-size:.95rem;padding-left:30px;margin-bottom:24px;}
.contact-map{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--c-gray-200);}
.contact-map iframe{display:block;width:100%;border:0;}

/* ============================================================
   FLOATING BUTTONS — fixed bottom-right
   ============================================================ */
.floating-btns{position:fixed;bottom:24px;right:16px;display:flex;flex-direction:column;gap:10px;z-index:9999;}
.float-btn{
  display:flex;align-items:center;gap:8px;
  padding:12px 20px;border-radius:50px;font-weight:700;font-size:.9rem;
  box-shadow:0 4px 20px rgba(0,0,0,.2);transition:transform .2s,box-shadow .2s;
  white-space:nowrap;cursor:pointer;border:none;text-decoration:none;
}
.float-btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.25);}
.float-wa{background:var(--c-whatsapp);color:var(--c-white);}
.float-call{background:var(--c-slate-950);color:var(--c-yellow);}

/* ============================================================
   FOOTER — #181818 bg
   ============================================================ */
.site-footer{background:#181818;color:var(--c-white);padding:40px 0 0;}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1.5fr;gap:48px;max-width:1152px;margin:0 auto;padding:0 16px 40px;}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.footer-logo img{height:50px;width:50px;object-fit:contain;}
.footer-logo-text{font-size:1rem;font-weight:800;color:var(--c-white);line-height:1.2;}
.footer-contact a{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.70);font-size:.88rem;margin-bottom:8px;transition:color .2s;}
.footer-contact a:hover{color:var(--c-yellow);}
.footer-col h4{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--c-yellow);margin-bottom:14px;}
.footer-col ul li{margin-bottom:8px;}
.footer-col ul li a{color:rgba(255,255,255,.60);font-size:.88rem;transition:color .2s;}
.footer-col ul li a:hover{color:var(--c-yellow);}
.footer-social{display:flex;gap:10px;margin-bottom:20px;}
.footer-social a{width:36px;height:36px;background:rgba(255,255,255,.1);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:background .2s,color .2s;color:rgba(255,255,255,.7);}
.footer-social a:hover{background:rgba(250,204,21,.15);color:var(--c-yellow);}
.footer-bottom{text-align:center;padding:16px;border-top:1px solid rgba(255,255,255,.08);font-size:.78rem;color:rgba(255,255,255,.35);}
.footer-bottom a{color:var(--c-yellow);}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1024px){
  .services-grid{grid-template-columns:1fr;}
  .footer-inner{grid-template-columns:1fr 1fr;}
}
@media(max-width:768px){
  :root{--nav-h:64px;}
  .navbar__links,.navbar__actions{display:none;}
  .navbar__burger{display:flex;}
  .hero__inner{grid-template-columns:1fr;gap:32px;}
  .hero__logo{display:none;}
  .service-page-hero .inner{grid-template-columns:1fr;}
  .sph-img{display:none;}
  .contact-grid{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr;}
  .services-hero-highlights{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr;}
  .lead-form .form-grid{grid-template-columns:1fr;}
}
@media(max-width:480px){
  .issues-grid{grid-template-columns:1fr;}
  .models-grid{grid-template-columns:repeat(2,1fr);}
  .repair-types-grid{grid-template-columns:1fr 1fr;}
  .floating-btns{bottom:16px;right:12px;}
  .float-btn{padding:10px 14px;font-size:.82rem;}
}
