:root{
    --blue:#294b8b;
    --blue-dk:#1d3a6e;
    --green:#56a557;
    --green-dk:#458a46;
    --ink:#1a2230;
    --muted:#5c6675;
    --paper:#ffffff;
    --mist:#f4f6fa;
    --line:#e6eaf1;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
  h1,h2,h3,.disp{font-family:'Barlow Condensed',sans-serif;font-weight:600;line-height:1.04;letter-spacing:.4px}
  a{color:inherit}
  .wrap{max-width:1140px;margin:0 auto;padding:0 28px}
  .btn{display:inline-flex;align-items:center;gap:9px;background:var(--green);color:#fff;font-family:'Barlow Condensed';
    font-weight:600;font-size:1.18rem;letter-spacing:.6px;text-transform:uppercase;padding:14px 28px;border-radius:8px;
    text-decoration:none;transition:.18s;box-shadow:0 8px 22px rgba(86,165,87,.32)}
  .btn:hover{background:var(--green-dk);transform:translateY(-2px)}
  .btn.blue{background:var(--blue);box-shadow:0 8px 22px rgba(41,75,139,.3)}
  .btn.blue:hover{background:var(--blue-dk)}
  .btn.ghost{background:transparent;border:1.5px solid rgba(255,255,255,.7);color:#fff;box-shadow:none}
  .btn.ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}

  /* image placeholders — subtle framed, NOT busy */
  .imgslot{position:relative;background:var(--mist);border:1px solid var(--line);border-radius:14px;
    display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);overflow:hidden}
  .imgslot .tag{font-family:'Barlow Condensed';text-transform:uppercase;letter-spacing:1.2px;font-size:.82rem;
    color:var(--blue);background:#fff;border:1px solid var(--line);padding:8px 14px;border-radius:30px;font-weight:600}
  .imgslot .sub{font-size:.74rem;color:var(--muted);margin-top:8px;font-family:'Inter'}

  /* top utility bar */
  .util{background:var(--blue-dk);color:#cdd8ee;font-size:.82rem}
  .util .wrap{display:flex;justify-content:space-between;align-items:center;padding:7px 28px;flex-wrap:wrap;gap:6px}
  .util a{color:#fff;text-decoration:none;font-weight:500}
  .util .badges span{margin-left:16px}

  /* header */
  header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;max-width:1140px;margin:0 auto;gap:20px}
  .nav img.logo{height:60px;width:auto;display:block}
  nav.links{display:flex;gap:24px}
  nav.links a{text-decoration:none;font-family:'Barlow Condensed';font-weight:600;font-size:1.05rem;letter-spacing:.4px;
    text-transform:uppercase;color:var(--ink);transition:.15s}
  nav.links a:hover{color:var(--green)}
  .callbtn{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:#fff;text-decoration:none;
    font-family:'Barlow Condensed';font-weight:600;font-size:1.12rem;letter-spacing:.5px;padding:10px 20px;border-radius:8px}
  @media(max-width:920px){nav.links{display:none}}

  /* hero */
  .hero{position:relative;color:#fff;overflow:hidden;background:var(--blue)}
  .hero .media{position:absolute;inset:0}
  .hero .media .imgslot{height:100%;border-radius:0;border:none;background:linear-gradient(135deg,#2c4f91,#1d3a6e)}
  .hero .media .imgslot .tag{background:rgba(255,255,255,.92)}
  .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(20,38,75,.86) 0%,rgba(20,38,75,.55) 55%,rgba(20,38,75,.25) 100%);z-index:1}
  .hero-inner{position:relative;z-index:2;padding:420px 0 104px;max-width:660px}
  .ribbon-float{position:absolute;top:22px;left:28px;z-index:6}
  .ribbon-float img{height:372px;width:auto;filter:drop-shadow(0 8px 22px rgba(0,0,0,.4));border-radius:8px}
  .hero .eyebrow{font-family:'Barlow Condensed';font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
    font-size:.92rem;color:#9ec79f;margin-bottom:16px}
  .hero h1{font-size:4.1rem;font-weight:700;letter-spacing:.5px}
  .hero h1 .accent{color:var(--green)}
  .hero p{font-size:1.22rem;margin:20px 0 30px;color:#e4ebf6;font-weight:400}
  .hero .cta-row{display:flex;gap:14px;flex-wrap:wrap}
  @media(max-width:760px){.hero h1{font-size:2.7rem}.hero-inner{padding:300px 0 70px}.ribbon-float img{height:230px}}

  /* trust bar */
  .trustbar{background:#fff;border-bottom:1px solid var(--line)}
  .trustbar .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 40px;padding:20px 28px}
  .trustbar .t{display:flex;align-items:center;gap:10px;font-family:'Barlow Condensed';font-weight:600;
    font-size:1.08rem;letter-spacing:.4px;color:var(--blue);text-transform:uppercase}
  .trustbar .t svg{width:20px;height:20px;flex:none}

  section{padding:84px 0}
  .sec-head{max-width:640px}
  .sec-head.center{margin:0 auto;text-align:center}
  .klabel{font-family:'Barlow Condensed';font-weight:600;letter-spacing:2.5px;text-transform:uppercase;font-size:.86rem;color:var(--green);margin-bottom:10px}
  h2.title{font-size:2.7rem;font-weight:700;color:var(--ink)}
  .lead{font-size:1.12rem;color:var(--muted);margin-top:12px}

  /* video feature */
  .videofeat{background:var(--mist)}
  .videofeat .grid{display:grid;grid-template-columns:1.25fr 1fr;gap:44px;align-items:center}
  .videofeat video{width:100%;border-radius:16px;display:block;box-shadow:0 24px 60px rgba(29,58,110,.22);background:#000;aspect-ratio:16/9;object-fit:cover}
  .videofeat h2{font-size:2.5rem;font-weight:700;color:var(--ink)}
  .videofeat p{color:var(--muted);font-size:1.08rem;margin:14px 0 22px}
  @media(max-width:820px){.videofeat .grid{grid-template-columns:1fr;gap:28px}}

  /* services */
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
  .svc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;transition:.2s}
  .svc:hover{border-color:var(--green);transform:translateY(-3px);box-shadow:0 16px 40px rgba(41,75,139,.1)}
  .svc .ic{width:46px;height:46px;border-radius:11px;background:rgba(86,165,87,.12);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
  .svc .ic svg{width:24px;height:24px;color:var(--green)}
  .svc h3{font-size:1.3rem;font-weight:600;color:var(--blue);margin-bottom:5px;letter-spacing:.3px}
  .svc p{font-size:.95rem;color:var(--muted)}
  @media(max-width:820px){.svc-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:540px){.svc-grid{grid-template-columns:1fr}}

  /* before after — sleek 2-up */
  .ba{background:var(--blue);color:#fff}
  .ba .title{color:#fff}.ba .lead{color:#c4d2ec}
  .ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
  .ba-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:14px}
  .ba-card.wide{grid-column:1 / -1}
  .ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative}
  .ba-img{width:100%;height:240px;object-fit:cover;border-radius:10px;display:block}
  .ba-card.wide .ba-img{height:340px}
  .ba-badge{position:absolute;top:10px;font-family:'Barlow Condensed';font-weight:700;letter-spacing:.8px;
    font-size:.78rem;color:#fff;padding:5px 11px;border-radius:20px;backdrop-filter:blur(2px)}
  .ba-badge.before{left:10px;background:rgba(20,30,50,.78)}
  .ba-badge.after{right:10px;background:var(--green)}
  .ba-cap{font-family:'Barlow Condensed';font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:1.05rem;margin-top:12px;padding:0 4px;color:#dce6f7}
  @media(max-width:760px){.ba-grid{grid-template-columns:1fr}.ba-card.wide .ba-img{height:240px}}

  /* why band */
  .why .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 36px;margin-top:44px}
  .why-item{display:flex;gap:14px}
  .why-item .dot{flex:none;width:34px;height:34px;border-radius:9px;background:var(--blue);display:flex;align-items:center;justify-content:center}
  .why-item .dot svg{width:18px;height:18px;color:#fff}
  .why-item h3{font-size:1.22rem;font-weight:600;color:var(--blue);letter-spacing:.3px}
  .why-item p{font-size:.94rem;color:var(--muted);margin-top:2px}
  @media(max-width:820px){.why .why-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:540px){.why .why-grid{grid-template-columns:1fr}}

  /* emergency CTA strip */
  .emerg{background:var(--green);color:#fff}
  .emerg .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:42px 28px}
  .emerg h2{font-size:2.1rem;font-weight:700}
  .emerg p{color:#eaf6ea;margin-top:4px}
  .emerg .btn.white{background:#fff;color:var(--green-dk);box-shadow:0 8px 22px rgba(0,0,0,.15)}

  /* mat rental — subtle, secondary */
  .mat{background:var(--mist)}
  .mat .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:center}
  .mat .imgslot{height:230px}
  .mat .klabel{color:var(--blue)}
  .mat h2{font-size:2rem;font-weight:700;color:var(--ink);margin-bottom:10px}
  .mat p{color:var(--muted);margin-bottom:20px}
  @media(max-width:760px){.mat .wrap{grid-template-columns:1fr}}

  /* contact */
  .contact{background:var(--blue-dk);color:#fff;text-align:center}
  .contact h2{font-size:2.6rem;font-weight:700}
  .contact p{color:#c4d2ec;max-width:54ch;margin:12px auto 26px}
  .bigphone{font-family:'Barlow Condensed';font-weight:700;font-size:2.8rem;color:var(--green);text-decoration:none;letter-spacing:1px;display:inline-block}

  footer{background:#13233f;color:#8fa0bd;font-size:.85rem;text-align:center;padding:26px}

  .review-note{font-size:.86rem;color:var(--muted);font-style:italic;margin-top:10px}

/* ---------- shared sub-page styles ---------- */
.page-hero{position:relative;background:var(--blue);color:#fff;padding:64px 0;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#1d3a6e,#294b8b)}
.page-hero .wrap{position:relative;z-index:2}
.page-hero .crumb{font-family:'Barlow Condensed';letter-spacing:1.5px;text-transform:uppercase;font-size:.82rem;color:#9ec79f;margin-bottom:10px}
.page-hero h1{font-size:3rem;font-weight:700;max-width:18ch}
.page-hero p{font-size:1.15rem;color:#e4ebf6;max-width:60ch;margin-top:14px}
.page-hero .btn{margin-top:22px}
@media(max-width:680px){.page-hero h1{font-size:2.1rem}}

.psec{padding:64px 0}
.psec.alt{background:var(--mist)}
.psec h2{font-size:2.1rem;font-weight:700;color:var(--ink);margin-bottom:6px}
.psec .klabel{margin-bottom:8px}
.psec p.lead{font-size:1.08rem;color:var(--muted);max-width:64ch}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.two-col img{width:100%;border-radius:14px;display:block;box-shadow:0 16px 40px rgba(29,58,110,.16)}
.two-col .imgslot2{width:100%;aspect-ratio:4/3;background:var(--mist);border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--muted);text-align:center;padding:1rem}
.two-col .imgslot2 .tag{font-family:'Barlow Condensed';text-transform:uppercase;letter-spacing:1px;font-size:.8rem;color:var(--blue);background:#fff;border:1px solid var(--line);padding:7px 13px;border-radius:24px;font-weight:600}
@media(max-width:760px){.two-col{grid-template-columns:1fr;gap:24px}}

.bullets{list-style:none;margin-top:18px;display:grid;gap:12px}
.bullets li{display:flex;gap:11px;font-size:1rem;color:#333}
.bullets li svg{flex:none;width:22px;height:22px;color:var(--green);margin-top:2px}

.feature3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.feature3 .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;border-top:4px solid var(--green)}
.feature3 .card h3{font-size:1.18rem;color:var(--blue);font-weight:600;margin-bottom:5px}
.feature3 .card p{font-size:.93rem;color:var(--muted)}
@media(max-width:760px){.feature3{grid-template-columns:1fr}}

.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.gal img{width:100%;height:230px;object-fit:cover;border-radius:12px;display:block}
.gal .vslot{position:relative;height:230px;border-radius:12px;overflow:hidden;background:#11180f;display:flex;align-items:center;justify-content:center;text-align:center;color:#aab59c;border:1px solid #2c3a24;padding:1rem}
.gal .vslot .play{position:absolute;width:46px;height:46px;border-radius:50%;background:rgba(244,123,32,.92);color:#1a1205;display:flex;align-items:center;justify-content:center;font-size:1.1rem;top:50%;left:50%;transform:translate(-50%,-50%)}
.gal .vslot .vt{position:absolute;bottom:10px;left:0;right:0;font-family:'Barlow Condensed';font-size:.82rem;color:#dce6f7;letter-spacing:.5px;padding:0 8px}
.gal video{width:100%;height:230px;object-fit:cover;border-radius:12px;background:#000}
@media(max-width:760px){.gal{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.gal{grid-template-columns:1fr}}

.cta-band{background:var(--green);color:#fff;text-align:center;padding:54px 0}
.cta-band h2{font-size:2rem;font-weight:700}
.cta-band p{color:#eaf6ea;margin:8px auto 20px;max-width:50ch}
.cta-band .btn.white{background:#fff;color:var(--green-dk)}

/* ---------- youtube gallery ---------- */
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(29,58,110,.08)}
.vframe{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.vframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vcard .vtitle{font-family:'Barlow Condensed';font-weight:600;letter-spacing:.4px;color:var(--blue);font-size:1.05rem;padding:12px 14px}
@media(max-width:880px){.vgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.vgrid{grid-template-columns:1fr}}

/* hero background image */
.hero .media .hero-bg-img{width:100%;height:100%;object-fit:cover;display:block}
.hero .media{position:absolute;inset:0}

/* service-page photo gallery */
.pgal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.pgal img{width:100%;height:240px;object-fit:cover;border-radius:12px;display:block;box-shadow:0 8px 22px rgba(29,58,110,.12)}
@media(max-width:760px){.pgal{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pgal{grid-template-columns:1fr}}

/* before/during/after trio */
.ba-card.trio{grid-column:1/-1}
.ba-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ba-trio .ba-cell{position:relative}
.ba-trio .ba-img{width:100%;height:300px;object-fit:cover;border-radius:12px;display:block}
.ba-badge.during{background:#f47b20;color:#1a1205}
@media(max-width:760px){.ba-trio{grid-template-columns:1fr}.ba-trio .ba-img{height:240px}}

/* badged tree-services gallery */
.pgal-b{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.pgal-b .pcell{position:relative}
.pgal-b .pcell img{width:100%;height:240px;object-fit:cover;border-radius:12px;display:block;box-shadow:0 8px 22px rgba(29,58,110,.12)}
.pgal-b .ba-badge{position:absolute;top:12px;left:12px;font-family:'Barlow Condensed';font-weight:700;letter-spacing:1px;font-size:.78rem;padding:5px 12px;border-radius:20px}
@media(max-width:760px){.pgal-b{grid-template-columns:1fr 1fr}.pgal-b .pcell img{height:200px}}
@media(max-width:520px){.pgal-b{grid-template-columns:1fr}}

/* scene-grouped tree-services gallery (one job per row) */
.scenes{margin-top:30px}
.scene{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.scene:last-child{border-bottom:0;margin-bottom:0}
.scene .pcell{position:relative;flex:1 1 220px;min-width:180px}
.scene .pcell img{width:100%;height:240px;object-fit:cover;border-radius:12px;display:block;box-shadow:0 8px 22px rgba(29,58,110,.12)}
.scene .ba-badge{position:absolute;top:12px;left:12px;font-family:'Barlow Condensed';font-weight:700;letter-spacing:1px;font-size:.78rem;padding:5px 12px;border-radius:20px}
@media(max-width:760px){.scene .pcell img{height:200px}}

/* legal pages + footer links */
.legal{max-width:820px;margin:0 auto;padding:54px 0}
.legal h1{font-size:2.2rem;color:var(--ink);margin-bottom:4px}
.legal .eff{color:var(--muted);font-size:.95rem;margin-bottom:26px}
.legal h2{font-size:1.25rem;color:var(--blue);margin:26px 0 8px}
.legal p{color:#333;line-height:1.65;margin-bottom:12px}
.legal ul{margin:0 0 12px 20px;color:#333;line-height:1.6}
footer .foot-links{margin-bottom:8px}
footer .foot-links a{color:#cfe0f5;text-decoration:none;margin:0 4px}
footer .foot-links a:hover{text-decoration:underline}
