:root{
    --navy:#0c1c33;
    --navy-2:#0a1830;
    --blue:#2f7bf6;
    --blue-dark:#1e5fd6;
    --accent:#4fb0ff;
    --accent-dark:#2f8fe6;
    --ink:#14213a;
    --gray:#6b7280;
    --line:#e7e9ee;
    --off:#f4f6f9;
    --white:#ffffff;
    --star:#f5b400;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter',sans-serif;
    color:var(--ink);
    background:var(--white);
    line-height:1.55;
  }
  h1,h2,h3,h4{font-family:'Montserrat',sans-serif;}
  img{max-width:100%;display:block;}
  a{text-decoration:none;color:inherit;}
  ul{list-style:none;}
  .container{max-width:1180px;margin:0 auto;padding:0 24px;}
  .eyebrow{
    color:var(--blue);
    font-weight:700;
    font-size:.78rem;
    letter-spacing:.14em;
    text-transform:uppercase;
    display:block;
    margin-bottom:8px;
  }
  .eyebrow-badge{
    display:inline-block;
    background:rgba(79,176,255,.12);border:1px solid rgba(79,176,255,.4);
    color:var(--blue);font-weight:700;font-size:.76rem;letter-spacing:.12em;
    text-transform:uppercase;padding:7px 18px;border-radius:30px;
    margin-bottom:14px;
    box-shadow:0 0 20px rgba(79,176,255,.18);
  }
  .text-accent{
    color:var(--accent);
    text-shadow:0 0 30px rgba(79,176,255,.35);
  }
  .section-title{
    font-size:2rem;
    font-weight:800;
    letter-spacing:.01em;
  }
  .rule{
    width:56px;height:3px;background:var(--blue);
    margin:14px auto 0;border-radius:3px;
  }
  .rule.left{margin:14px 0 0;}
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:14px 26px;
    font-weight:700;font-size:.82rem;
    letter-spacing:.04em;text-transform:uppercase;
    border-radius:6px;border:2px solid transparent;
    cursor:pointer;transition:all .2s ease;
    white-space:nowrap;
  }
  .btn-primary{background:var(--blue);color:#fff;}
  .btn-primary:hover{background:var(--blue-dark);transform:translateY(-1px);}
  .btn-outline{border-color:rgba(255,255,255,.5);color:#fff;background:transparent;}
  .btn-outline:hover{background:rgba(255,255,255,.12);border-color:#fff;}
  .btn-outline-blue{border-color:var(--blue);color:var(--blue);background:transparent;}
  .btn-outline-blue:hover{background:var(--blue);color:#fff;}
  .btn-white{background:#fff;color:var(--navy);}
  .btn-white:hover{background:#eaf0fb;}
  .btn-glow{
    background:var(--accent);
    box-shadow:0 8px 24px rgba(79,176,255,.45);
  }
  .btn-glow:hover{background:var(--accent-dark);box-shadow:0 10px 30px rgba(79,176,255,.6);transform:translateY(-2px);}
  .btn-block{width:100%;justify-content:center;font-size:.9rem;padding:16px 26px;}

  /* ===== HEADER ===== */
  header{
    background:#fff;
    position:sticky;top:0;z-index:50;
    box-shadow:0 2px 12px rgba(12,28,51,.08);
  }
  .nav-wrap{
    display:flex;align-items:center;justify-content:space-between;
    padding:14px 24px;max-width:1180px;margin:0 auto;
  }
  .logo{
    display:flex;align-items:center;gap:12px;
  }
  .logo-img{height:78px;width:auto;flex-shrink:0;object-fit:contain;}
  nav.main-nav > ul{display:flex;align-items:center;gap:30px;}
  nav.main-nav > ul > li{display:flex;align-items:center;}
  nav.main-nav a{
    color:var(--ink);font-weight:600;font-size:.82rem;
    letter-spacing:.04em;text-transform:uppercase;
    position:relative;line-height:1;
  }
  nav.main-nav a.active{color:var(--blue);}
  nav.main-nav a:not(.active):hover{color:var(--blue);}

  .header-right{display:flex;align-items:center;gap:22px;}
  .desktop-social{display:flex;align-items:center;gap:10px;}
  .desktop-social a{
    width:34px;height:34px;border-radius:50%;background:var(--off);
    display:flex;align-items:center;justify-content:center;
    transition:background .2s ease;
  }
  .desktop-social a:hover{background:var(--line);}
  .call-cta{display:flex;align-items:center;gap:12px;color:var(--ink);}
  .call-icon{
    width:40px;height:40px;border-radius:50%;background:var(--blue);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .call-cta .call-label{font-size:.7rem;color:var(--gray);}
  .call-cta .call-number{font-weight:800;font-size:1rem;color:var(--ink);}
  .menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:4px;}
  .menu-toggle span{display:block;width:26px;height:3px;background:var(--ink);margin:5px 0;border-radius:2px;}
  .mobile-social{display:none;align-items:center;gap:10px;}
  .mobile-social a{
    width:34px;height:34px;border-radius:50%;background:var(--off);
    display:flex;align-items:center;justify-content:center;
    transition:background .2s ease;
  }
  .mobile-social a:hover{background:var(--line);}
  .mobile-actions{display:none;align-items:center;gap:14px;}

  /* ===== HERO ===== */
  .hero{
    position:relative;
    background:linear-gradient(100deg, rgba(4,10,22,.96) 0%, rgba(6,16,34,.85) 40%, rgba(10,25,48,.35) 70%),
      url('4p_hero.png') right center/cover no-repeat;
    color:#fff;padding:100px 0 140px;
    overflow:hidden;
  }
  .hero::before{
    content:"";position:absolute;top:0;right:-6%;width:46%;height:100%;
    background:linear-gradient(180deg, rgba(79,176,255,.14), rgba(79,176,255,0));
    clip-path:polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
    pointer-events:none;
  }
  .hero .container{margin:0;max-width:none;padding-left:64px;}
  .hero-inner{max-width:720px;position:relative;z-index:1;}
  .hero .eyebrow{
    background:rgba(79,176,255,.14);border:1px solid rgba(79,176,255,.5);
    color:var(--accent);display:inline-block;padding:6px 16px;border-radius:30px;
    font-size:.74rem;margin-bottom:22px;
  }
  .hero h1{
    font-size:4.6rem;font-weight:900;line-height:1.02;margin-bottom:22px;
    letter-spacing:-.02em;
  }
  .hero h1 .accent{
    color:var(--accent);
    text-shadow:0 0 40px rgba(79,176,255,.35);
  }
  .hero p{color:#cdd6e6;font-size:1.08rem;max-width:460px;margin-bottom:34px;}
  .hero-btns{display:flex;gap:16px;flex-wrap:wrap;}
  .hero-btns .btn svg{width:16px;height:16px;}
  .hero-btns .btn{font-size:.86rem;padding:16px 30px;}
  .hero-badges{
    display:flex;gap:26px;flex-wrap:wrap;margin-top:38px;
  }
  .hero-badges span{
    display:flex;align-items:center;gap:8px;
    font-size:.8rem;font-weight:600;color:#c3cde3;
  }
  .hero-badges svg{color:var(--accent);flex-shrink:0;}


  /* ===== FEATURE STRIP ===== */
  .features{
    background:var(--off);
    padding:80px 0 84px;
  }
  .features-heading{text-align:center;max-width:640px;margin:0 auto 46px;}
  .features-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:26px;text-align:center;
  }
  .features-grid.cols-3{
    grid-template-columns:repeat(3,1fr);max-width:920px;margin:0 auto;
  }
  .feature{
    position:relative;overflow:hidden;
    background:#fff;padding:38px 24px 30px;border-radius:14px;
    box-shadow:0 10px 30px rgba(12,28,51,.06);
    border-top:4px solid var(--blue);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .feature:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 44px rgba(12,28,51,.14);
  }
  .feature-icon{
    width:72px;height:72px;border-radius:50%;
    background:linear-gradient(135deg, var(--navy), var(--blue));
    display:flex;align-items:center;justify-content:center;margin:0 auto 20px;
    color:#fff;
    box-shadow:0 10px 24px rgba(47,123,246,.28);
  }
  .feature h4{
    font-size:1rem;font-weight:800;letter-spacing:.01em;margin-bottom:12px;
  }
  .feature p{color:var(--gray);font-size:.88rem;line-height:1.6;}

  /* ===== ABOUT ===== */
  .about{padding:0;}
  .about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;}
  .about-img{
    position:relative;overflow:hidden;
    clip-path:polygon(0 0, 100% 0, 82% 100%, 0% 100%);
  }
  .about-img img{width:100%;height:100%;object-fit:cover;min-height:480px;}
  .about-copy{padding:70px 60px 70px 20px;display:flex;flex-direction:column;justify-content:center;}
  .about-copy h2{font-size:1.9rem;font-weight:800;margin-bottom:16px;}
  .about-copy p{color:var(--gray);margin-bottom:22px;max-width:480px;}
  .about-list{display:flex;flex-direction:column;gap:10px;margin-bottom:26px;}
  .about-list li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.92rem;}
  .about-list svg{color:var(--blue);flex-shrink:0;}
  .signature{
    display:flex;align-items:center;gap:26px;flex-wrap:wrap;
  }
  .signature .script{font-family:'Segoe Script','Brush Script MT',cursive;font-size:1.3rem;color:#333;}

  /* ===== CTA BANNER ===== */
  .cta-banner{
    position:relative;overflow:hidden;
    background:linear-gradient(100deg, var(--navy) 0%, var(--blue-dark) 100%);
    color:#fff;padding:44px 0;
  }
  .cta-inner{
    position:relative;z-index:1;
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;
  }
  .cta-left{display:flex;align-items:center;gap:18px;}
  .cta-left .icon-circle{
    width:52px;height:52px;border-radius:50%;background:var(--accent);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .cta-left h3{font-size:1.4rem;font-weight:800;}
  .cta-left p{font-size:.9rem;color:#e2ebfc;margin-top:4px;}

  /* ===== INSPECTION FORM ===== */
  .inspection{
    position:relative;overflow:hidden;
    background:var(--off);padding:90px 0;
  }
  .inspection-grid{
    position:relative;z-index:1;
    display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
  }
  .inspection-copy h2{font-size:2.1rem;font-weight:800;margin-top:2px;}
  .inspection-copy .eyebrow{margin-bottom:6px;}
  .inspection-copy p{color:var(--gray);margin:18px 0 24px;max-width:440px;}
  .inspection-points{display:flex;flex-direction:column;gap:12px;}
  .inspection-points li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.92rem;}
  .inspection-points svg{color:var(--accent);flex-shrink:0;}

  .inspection-form-card{
    background:#fff;border-radius:14px;padding:36px;
    box-shadow:0 20px 50px rgba(12,28,51,.1);
  }
  .form-row{margin-bottom:18px;}
  .form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .form-field label{
    display:block;font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:6px;
  }
  .form-field input,
  .form-field textarea{
    width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:7px;
    font-family:'Inter',sans-serif;font-size:.92rem;color:var(--ink);
    transition:border-color .2s ease;
  }
  .form-field input:focus,
  .form-field textarea:focus{
    outline:none;border-color:var(--blue);
  }
  .form-field textarea{resize:vertical;}
  .consent{
    display:flex;align-items:flex-start;gap:10px;margin-bottom:22px;cursor:pointer;
  }
  .consent input{margin-top:3px;flex-shrink:0;}
  .consent span{font-size:.76rem;color:var(--gray);line-height:1.5;}
  .form-status{margin-top:14px;font-size:.86rem;font-weight:600;min-height:1.2em;}
  .form-status.success{color:#1a9c56;}
  .form-status.error{color:#d9432b;}

  /* ===== ABOUT PAGE ===== */
  .page-hero{
    background:
      radial-gradient(ellipse at 50% 0%, rgba(79,176,255,.16), rgba(79,176,255,0) 60%),
      var(--navy);
    color:#fff;padding:100px 0 76px;text-align:center;
    position:relative;
  }
  .page-hero .eyebrow{display:inline-block;}
  .page-hero h1{font-size:2.8rem;font-weight:900;margin:16px 0 18px;letter-spacing:-.01em;}
  .page-hero p{color:#cdd6e6;font-size:1.05rem;max-width:600px;margin:0 auto;}

  .story-section{padding:80px 0;}
  .story-section .container{max-width:760px;text-align:center;}
  .story-section h2{font-size:1.9rem;font-weight:800;margin-bottom:18px;}
  .story-section p{color:var(--gray);font-size:1rem;line-height:1.8;}

  .trust-strip{background:#fff;padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .trust-strip-inner{display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap;}
  .trust-strip-inner span{
    display:flex;align-items:center;gap:8px;
    color:var(--ink);font-weight:700;font-size:.92rem;
  }
  .trust-strip-inner svg{color:var(--blue);flex-shrink:0;}

  /* ===== SERVICE DETAIL PAGES ===== */
  .service-hero-photo-section{background:#fff;padding:50px 0 0;}
  .service-hero-photo{
    width:100%;height:420px;object-fit:cover;border-radius:16px;
    box-shadow:0 20px 50px rgba(12,28,51,.14);display:block;
  }
  .service-overview{padding:80px 0 40px;}
  .service-overview .container{max-width:800px;text-align:center;}
  .service-overview h2{font-size:2rem;font-weight:800;margin-bottom:18px;letter-spacing:-.01em;}
  .service-overview p{color:var(--gray);font-size:1.02rem;line-height:1.8;margin-bottom:16px;}

  .signs-section{background:var(--off);padding:80px 0;}
  .signs-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:6px 40px;
    max-width:840px;margin:0 auto;
  }
  .signs-grid li{
    display:flex;gap:12px;align-items:flex-start;
    font-weight:600;color:var(--ink);font-size:.94rem;
    padding:14px 0;border-bottom:1px solid var(--line);
  }
  .signs-grid svg{color:var(--accent);flex-shrink:0;margin-top:2px;}

  .service-gallery{padding:80px 0;}
  .service-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}

  /* ===== SERVICES PAGE ===== */
  .services-page{background:var(--off);padding:90px 0;}
  .services-page-grid{
    display:flex;flex-wrap:wrap;justify-content:center;gap:28px;text-align:center;
  }
  .services-page-grid .service-card-detail{
    flex:1 1 300px;max-width:340px;
  }
  .service-card-detail{
    display:block;
    background:#fff;border-radius:16px;padding:40px 26px;
    box-shadow:0 12px 32px rgba(12,28,51,.08);
    border-top:4px solid var(--blue);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .service-card-detail:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 44px rgba(79,176,255,.2);
  }
  .service-card-link{
    display:inline-block;margin-top:16px;
    color:var(--blue);font-weight:700;font-size:.86rem;
  }
  .service-icon-lg{
    width:72px;height:72px;border-radius:50%;
    background:linear-gradient(135deg, var(--navy), var(--blue));
    display:flex;align-items:center;justify-content:center;margin:0 auto 20px;
    color:#fff;
    box-shadow:0 10px 24px rgba(47,123,246,.28);
  }
  .service-card-detail h3{font-size:1.1rem;font-weight:800;margin-bottom:14px;}

  /* ===== SERVICE AREAS GRID ===== */
  .service-areas-grid{
    display:flex;flex-wrap:wrap;justify-content:center;gap:28px;
  }
  .service-areas-grid .service-card-detail{
    flex:1 1 280px;max-width:320px;
  }
  .service-card-detail p{color:var(--gray);font-size:.9rem;line-height:1.7;}

  /* ===== PROCESS SECTION (Our Work) ===== */
  .process-section{background:var(--off);padding:90px 0;}
  .process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
  .process-step{
    position:relative;background:#fff;border-radius:16px;padding:22px;
    box-shadow:0 12px 32px rgba(12,28,51,.08);
    border-top:4px solid var(--blue);
  }
  .process-step:nth-child(2){border-top-color:var(--navy);}
  .process-step:nth-child(3){border-top-color:var(--accent);}
  .step-number{
    position:absolute;top:38px;left:38px;z-index:2;
    width:38px;height:38px;border-radius:50%;
    background:var(--blue);color:#fff;font-weight:800;font-size:.85rem;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 0 0 4px #fff, 0 6px 20px rgba(47,123,246,.55);
  }
  .process-step:nth-child(2) .step-number{background:var(--navy);box-shadow:0 0 0 4px #fff, 0 6px 20px rgba(12,28,51,.5);}
  .process-step:nth-child(3) .step-number{background:var(--accent);box-shadow:0 0 0 4px #fff, 0 6px 20px rgba(79,176,255,.55);}
  .process-img{
    position:relative;border-radius:10px;overflow:hidden;
    height:200px;margin-bottom:20px;
  }
  .process-img img{width:100%;height:100%;object-fit:cover;}
  .process-step h4{font-size:1.05rem;font-weight:800;margin-bottom:12px;}
  .process-step p{color:var(--gray);font-size:.88rem;line-height:1.68;}

  /* ===== YARD SIGN FEATURE ===== */
  .yard-sign-section{background:#fff;padding:94px 0;position:relative;overflow:hidden;}
  .yard-sign-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  .yard-sign-img{
    position:relative;border-radius:16px;overflow:hidden;
    box-shadow:0 0 0 6px rgba(79,176,255,.1), 0 24px 54px rgba(79,176,255,.25);
  }
  .yard-sign-img img{width:100%;height:100%;object-fit:cover;display:block;}
  .yard-sign-copy h2{font-size:2rem;font-weight:800;margin:10px 0 18px;letter-spacing:-.01em;}
  .yard-sign-copy p{color:var(--gray);font-size:1.02rem;line-height:1.8;}

  /* ===== WORK GALLERY ===== */
  .work-gallery{background:var(--off);padding:94px 0;}
  .work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .work-item{
    position:relative;border-radius:14px;overflow:hidden;
    box-shadow:0 12px 32px rgba(12,28,51,.1);
    border:2px solid transparent;
    transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  }
  .work-item:hover{
    border-color:var(--accent);
    box-shadow:0 18px 44px rgba(79,176,255,.28);
    transform:translateY(-4px);
  }
  .work-item img{width:100%;height:230px;object-fit:cover;display:block;transition:transform .35s ease;}
  .work-item:hover img{transform:scale(1.06);}
  .work-caption{
    position:absolute;bottom:0;left:0;right:0;
    background:linear-gradient(0deg, rgba(6,14,28,.92), rgba(10,25,50,.15) 70%, rgba(10,25,50,0));
    color:#fff;font-weight:700;font-size:.86rem;
    padding:38px 18px 16px;
    display:flex;align-items:center;gap:8px;
  }
  .work-caption::before{
    content:"";width:8px;height:8px;border-radius:50%;
    background:var(--accent);flex-shrink:0;
    box-shadow:0 0 10px rgba(79,176,255,.8);
  }

  /* ===== REVIEWS PAGE ===== */
  .reviews-page{background:var(--off);padding:80px 0;}
  .reviews-page-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:26px;
    align-items:start;
  }
  .review-card{
    background:#fff;border-radius:14px;padding:28px 26px;
    box-shadow:0 10px 30px rgba(12,28,51,.06);
  }
  .review-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
  .review-avatar{
    width:42px;height:42px;border-radius:50%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:1.05rem;
  }
  .review-name{font-weight:700;font-size:.92rem;color:var(--ink);}
  .review-meta{font-size:.76rem;color:var(--gray);}
  .review-stars{
    color:var(--star);font-size:.9rem;letter-spacing:2px;margin-bottom:12px;
  }
  .review-stars .review-time{
    color:var(--gray);font-size:.76rem;letter-spacing:normal;margin-left:4px;
  }
  .review-card p{color:var(--ink);font-size:.86rem;line-height:1.65;margin-bottom:10px;}
  .review-card p:last-child{margin-bottom:0;}

  /* ===== LEGAL PAGES ===== */
  .legal-page{padding:70px 0 100px;}
  .legal-page .container{max-width:800px;}
  .legal-title{font-size:2.4rem;font-weight:900;letter-spacing:-.01em;margin-bottom:14px;}
  .legal-intro{color:var(--gray);font-size:1rem;margin-bottom:40px;}
  .legal-section{margin-bottom:32px;}
  .legal-section h2{color:var(--blue);font-size:1.15rem;font-weight:800;margin-bottom:12px;}
  .legal-section p{color:var(--ink);font-size:.94rem;line-height:1.7;margin-bottom:12px;}
  .legal-section p:last-child{margin-bottom:0;}
  .legal-section ul{margin:14px 0;padding-left:22px;}
  .legal-section li{list-style:disc;color:var(--ink);font-size:.94rem;line-height:1.7;margin-bottom:6px;}
  .legal-section a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;}
  .legal-back{
    display:inline-flex;align-items:center;gap:6px;margin-top:12px;
    color:var(--accent);font-weight:700;font-size:.9rem;
  }
  .legal-back:hover{color:var(--accent-dark);}

  /* ===== FOOTER ===== */
  footer{background:#e3e9f3;color:var(--ink);padding:60px 0 0;border-top:1px solid var(--line);}
  .footer-grid{
    display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;padding-bottom:44px;
    border-bottom:1px solid rgba(12,28,51,.1);
  }
  .footer-brand{display:flex;align-items:flex-start;gap:12px;}
  .footer-logo-img{height:60px;width:auto;object-fit:contain;display:block;}
  .footer-brand p{font-size:.85rem;margin-top:14px;color:var(--gray);max-width:260px;}
  .footer-col h5{color:var(--ink);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;}
  .footer-col ul{display:flex;flex-direction:column;gap:11px;}
  .footer-col a{font-size:.87rem;color:var(--gray);}
  .footer-col a:hover{color:var(--blue);}
  .footer-col li.contact-item{display:flex;align-items:flex-start;gap:10px;font-size:.87rem;color:var(--gray);}
  .footer-col li.contact-item svg{flex-shrink:0;margin-top:2px;color:var(--blue);}
  .social-icons{display:flex;gap:10px;margin-top:16px;}
  .social-icons a{
    width:34px;height:34px;border-radius:50%;background:var(--off);
    display:flex;align-items:center;justify-content:center;
  }
  .social-icons a:hover{background:var(--line);}
  .footer-bottom{
    display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 18px;
    padding:22px 0;font-size:.76rem;color:var(--gray);text-align:center;
  }
  .footer-bottom a{color:var(--gray);text-decoration:underline;text-underline-offset:2px;}
  .footer-bottom a:hover{color:var(--blue);}
  .footer-legal-links{display:flex;align-items:center;gap:8px;}
  .footer-legal-links .dot{color:var(--gray);}

  @media (max-width:960px){
    .features-grid{grid-template-columns:repeat(2,1fr);}
    .features-grid.cols-3{grid-template-columns:repeat(2,1fr);max-width:none;}
    .about-grid{grid-template-columns:1fr;}
    .about-img{clip-path:none;min-height:320px;}
    .about-copy{padding:50px 24px;}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .inspection-grid{grid-template-columns:1fr;gap:44px;}
    .reviews-page-grid{grid-template-columns:repeat(2,1fr);}
    .process-grid{grid-template-columns:1fr;}
    .yard-sign-grid{grid-template-columns:1fr;gap:32px;}
    .yard-sign-img{order:-1;}
    .work-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:880px){
    nav.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:20px 24px;box-shadow:0 8px 20px rgba(12,28,51,.1);max-height:calc(100vh - 100px);overflow-y:auto;-webkit-overflow-scrolling:touch;}
    nav.main-nav.open{display:block;}
    nav.main-nav ul{flex-direction:column;gap:18px;}
    .menu-toggle{display:block;}
    .header-right{display:none;}
    .mobile-social{display:flex;}
    .mobile-actions{display:flex;}
    .hero{padding:60px 0 90px;text-align:left;}
    .hero .container{padding-left:24px;}
    .hero h1{font-size:2.6rem;}
    .hero-badges{gap:16px;}
    .features-grid{grid-template-columns:1fr;}
    .features-grid.cols-3{grid-template-columns:1fr;}
    .cta-inner{flex-direction:column;align-items:flex-start;}
    .footer-grid{grid-template-columns:1fr;}
    .inspection{padding:64px 0;}
    .inspection-form-card{padding:26px;}
    .form-row.two-col{grid-template-columns:1fr;}
    .reviews-page-grid{grid-template-columns:1fr;}
    .signs-grid{grid-template-columns:1fr;}
    .service-gallery-grid{grid-template-columns:1fr;}
    .service-hero-photo{height:260px;}
    .work-grid{grid-template-columns:1fr;}
    .page-hero{padding:70px 0 56px;}
    .page-hero h1{font-size:2rem;}
    .trust-strip-inner{gap:20px;}
  }
