/* ============================================================
   DP1 2026 — Risk Tree Service homepage refresh
   Enqueued by risktree_dp1_2026_styles() in functions.php
   All classes namespaced .dp1-* to avoid Bootstrap/theme collisions.
   Fonts: Rock Salt (headline accent) + Montserrat/Poppins (theme).
   ============================================================ */

:root{
  --dp1-green:#5b974e;
  --dp1-btn:#128b15;
  --dp1-head:#4c4c4c;
  --dp1-body:#696969;
  --dp1-dark:#1d2b3a;
  --dp1-line:#e6e6e6;
}

/* ---------- shared bits ---------- */
.dp1-eyebrow{font-family:'Montserrat',sans-serif;font-weight:700;letter-spacing:3px;
  text-transform:uppercase;font-size:11.5px;color:var(--dp1-green);margin-bottom:12px}
.dp1-btn{display:inline-block;background:var(--dp1-btn);color:#fff;font-family:'Montserrat',sans-serif;
  font-weight:400;font-size:15px;padding:13px 32px;border-radius:20px;transition:.2s;text-decoration:none}
.dp1-btn:hover,.dp1-btn:focus{background:#0e6f11;color:#fff;text-decoration:none}
.dp1-btn-outline{display:inline-block;border:2px solid #fff;color:#fff;font-family:'Montserrat',sans-serif;
  font-size:15px;padding:11px 30px;border-radius:20px;text-decoration:none}
.dp1-btn-outline:hover,.dp1-btn-outline:focus{background:rgba(255,255,255,.15);color:#fff;text-decoration:none}

/* ---------- 1. utility bar (above header) ---------- */
.dp1-utilbar{background:var(--dp1-dark);color:#cfd8dc;font-size:13px}
.dp1-utilbar .dp1-ub-inner{max-width:1170px;margin:0 auto;padding:9px 15px;
  display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.dp1-utilbar b{color:#fff}
.dp1-utilbar a{color:#fff;text-decoration:none}
.dp1-utilbar .dp1-ph span{color:#8fd07e;font-weight:600}

/* ---------- 2. hero additions (CTA row + ticks) ---------- */
.dp1-hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:22px 0 24px}
.dp1-hero-ticks{display:flex;gap:26px;justify-content:center;flex-wrap:wrap}
.dp1-hero-ticks span{color:#fff;font-size:13.5px;font-family:'Montserrat',sans-serif;
  display:flex;align-items:center;gap:7px}
.dp1-hero-ticks i{color:#8fd07e;font-style:normal;font-weight:700}

/* ---------- 3. quick estimate bar ---------- */
.dp1-estbar{background:var(--dp1-dark)}
.dp1-estbar .dp1-est-inner{max-width:1170px;margin:0 auto;padding:18px 15px;
  display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.dp1-estbar .dp1-est-lead{flex:1;min-width:230px}
.dp1-estbar .dp1-est-lead b{color:#fff;font-family:'Montserrat',sans-serif;font-size:16px;display:block}
.dp1-estbar .dp1-est-lead small{color:#a9bfa6;font-size:13px}
.dp1-estbar input,.dp1-estbar select{font-family:'Poppins',sans-serif;font-size:14px;padding:12px 16px;
  border-radius:20px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);
  color:#fff;min-width:170px;height:auto}
.dp1-estbar input::placeholder{color:#a9bfa6}
.dp1-estbar select option{color:#4c4c4c}

/* ---------- 4. "More Than a Tree Company" — Rock Salt + watermark ---------- */
.dp1-bigline-wrap{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:56px 24px 40px;text-align:center;overflow:hidden}
.dp1-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-7deg);
  font-family:'Rock Salt',cursive;font-size:22vw;line-height:1;white-space:nowrap;
  color:var(--dp1-head);opacity:.06;pointer-events:none;user-select:none;z-index:1}
.dp1-bigline{position:relative;z-index:2;font-family:'Rock Salt',cursive;font-size:clamp(20px,4.6vw,88px);font-weight:400;text-transform:none;letter-spacing:0;color:var(--dp1-green);white-space:nowrap;line-height:1.5;margin:0 auto;display:block}

/* ---------- 5. stat row under the RISK icons ---------- */
.dp1-statrow{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;max-width:760px;
  margin:52px auto 0;padding-top:34px;border-top:1px solid var(--dp1-line);text-align:center}
.dp1-statrow b{font-family:'Montserrat',sans-serif;font-weight:700;font-size:32px;
  color:var(--dp1-green);display:block;line-height:1.1}
.dp1-statrow small{font-size:13px;color:var(--dp1-body)}

/* ---------- 6. commercial & industrial ---------- */
.dp1-commercial{background:#fff;padding:80px 0}
.dp1-comm-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-top:10px}
.dp1-comm-photo{border-radius:8px;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.14)}
.dp1-comm-photo img{width:100%;height:420px;object-fit:cover;display:block}
.dp1-comm-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 28px}
.dp1-comm-list span{display:flex;align-items:center;gap:9px;font-family:'Montserrat',sans-serif;
  font-size:14px;color:var(--dp1-head);border:1px solid var(--dp1-line);border-radius:6px;padding:13px 15px}
.dp1-comm-list i{color:var(--dp1-green);font-style:normal;font-weight:700}

/* ---------- 7. process ---------- */
.dp1-process{background:#f7f7f5;padding:80px 0}
.dp1-proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.dp1-proc-step .dp1-circle{width:82px;height:82px;border-radius:50%;background:#fff;
  border:2px solid var(--dp1-line);display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;font-family:'Montserrat',sans-serif;font-weight:700;font-size:26px;color:var(--dp1-green)}
.dp1-proc-step h3{font-family:'Montserrat',sans-serif;font-weight:700;font-size:17px;
  text-transform:uppercase;color:var(--dp1-head);margin-bottom:10px}
.dp1-proc-step p{font-size:14px;line-height:1.7;color:var(--dp1-body)}

/* ---------- 8. service areas + full-bleed quote ---------- */
.dp1-areas{background:#fff;padding:80px 0 0}
.dp1-apills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:44px}
.dp1-apills a{border:1px solid var(--dp1-line);border-radius:20px;padding:10px 20px;
  font-family:'Montserrat',sans-serif;font-size:14px;color:var(--dp1-head);text-decoration:none}
.dp1-apills a:hover{background:var(--dp1-green);color:#fff;border-color:var(--dp1-green);text-decoration:none}
.dp1-areaquote{position:relative;overflow:hidden;text-align:center;
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  border-radius:0;padding:88px 24px;margin-bottom:0;background-size:cover;background-position:center}
.dp1-areaquote:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(10,30,15,.78)}
.dp1-areaquote > *{position:relative;z-index:2}
.dp1-areaquote p{font-family:'Rock Salt',cursive;color:#fff;font-size:30px;font-weight:400;
  line-height:1.85;max-width:1060px;margin:0 auto 26px;text-transform:none}
.dp1-areaquote b{font-family:'Montserrat',sans-serif;color:#8fd07e;font-size:13px;
  text-transform:uppercase;letter-spacing:1px}

/* ---------- 9. gallery captions ---------- */
.dp1-projcap{position:absolute;left:0;right:0;bottom:0;padding:16px;z-index:3;
  background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.78));color:#fff}
.dp1-projcap b{font-family:'Montserrat',sans-serif;font-size:13px;text-transform:uppercase;display:block}
.dp1-projcap small{font-size:12px;color:#d9d9d9}

/* ---------- 10. footer tagline ---------- */
.dp1-tagline{color:#8fd07e;font-family:'Rock Salt',cursive;font-size:15px;letter-spacing:.5px}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .dp1-comm-grid{grid-template-columns:1fr;gap:30px}
  .dp1-proc-grid{grid-template-columns:1fr 1fr}
  .dp1-comm-list{grid-template-columns:1fr 1fr}
  .dp1-areaquote p{font-size:22px;line-height:1.8}
  .dp1-statrow{gap:34px}
}
@media (max-width:620px){
  .dp1-proc-grid,.dp1-comm-list{grid-template-columns:1fr}
  .dp1-utilbar .dp1-ub-inner{justify-content:center;text-align:center}
  .dp1-areaquote{padding:60px 20px}
  .dp1-areaquote p{font-size:17px;line-height:1.9}
  .dp1-bigline-wrap{padding:44px 16px 32px}
}

/* dp1-ub-fix: keep each utility-bar block whole; wrap to a new line instead of squeezing */
.dp1-utilbar .dp1-ub-inner > div{flex:0 1 auto;min-width:0}
.dp1-utilbar .dp1-ph{white-space:nowrap}
@media (max-width:900px){
  .dp1-utilbar .dp1-ub-inner{justify-content:center;text-align:center;gap:2px 14px}
  .dp1-utilbar .dp1-ph{white-space:normal}
}
@media (max-width:480px){
  .dp1-utilbar{font-size:12px}
  .dp1-utilbar .dp1-ub-inner{padding:7px 12px}
}


/* dp1-hero-overlay: green gradient over the slider, matches the mockup */
.slider-area .slide-one.overlay::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;
  background:linear-gradient(105deg,rgba(8,39,26,.92) 0%,rgba(8,39,26,.78) 45%,rgba(8,39,26,.45) 100%)}
.slider-area .slide-one .text-layer{position:absolute;z-index:2}


/* step-1 additions */
.dp1-estbar .dp1-btn{border:0;cursor:pointer}
.dp1-commercial .section-title-2,.dp1-process .section-title-2,.dp1-areas .section-title-2{text-align:center;max-width:760px;margin:0 auto 46px}
.dp1-commercial--dark{background:#0d3b26}
.dp1-commercial--dark .section-title-2 h2{color:#fff}
.dp1-commercial--dark .section-title-2 p,.dp1-commercial--dark .dp1-comm-grid > div > p{color:#c6d8c2}
.dp1-commercial--dark .dp1-comm-list span{color:#fff;border-color:rgba(255,255,255,.25)}
.dp1-commercial--dark .dp1-comm-list i,.dp1-commercial--dark .theme-color{color:#8fd07e}

/* dp1-mobile-wrap: let the Rock Salt headline wrap to two lines on phones instead of clipping */
@media (max-width:620px){
  .dp1-bigline{white-space:normal;line-height:1.4;font-size:22px;padding:0 6px}
  .dp1-watermark{font-size:34vw}
}

/* dp1-hero-fade: ~90% forest green on the left, fading to transparent so the oak shows on the right */
.slider-area .slide-one.overlay::after{
  background:linear-gradient(90deg,
    rgba(13,59,38,.90) 0%,
    rgba(13,59,38,.90) 28%,
    rgba(13,59,38,.62) 50%,
    rgba(13,59,38,.25) 72%,
    rgba(13,59,38,0) 100%)}
@media (max-width:760px){
  .slider-area .slide-one.overlay::after{background:linear-gradient(90deg,rgba(13,59,38,.88) 0%,rgba(13,59,38,.70) 100%)}
}
/* dp1-palette-v2 */
:root{--dp1-lime:#b9e08f;--dp1-forest:#0d3b26;--dp1-dark:#0d3b26}
.dp1-utilbar{background:#000}
.dp1-estbar{background:var(--dp1-forest)}
.footer-area,.footer-area .footer-top,.footer-area .footer-bottom{background:var(--dp1-forest) !important}
.dp1-utilbar .dp1-ph span,.dp1-hero-ticks i,.dp1-tagline{color:var(--dp1-lime)}
.dp1-btn,.rts-btn,.btn.button-aylen,.btn.style-aylen{background:var(--dp1-lime) !important;color:var(--dp1-forest) !important;border-color:var(--dp1-lime) !important}
.dp1-btn:hover,.rts-btn:hover,.btn.button-aylen:hover{background:#a6d478 !important;color:var(--dp1-forest) !important}
/* dp1-hero-left */
.slider-area .col-text-center,.slider-area .slide-text{text-align:left}
.slider-area .slide-text{max-width:940px}
.slider-area .slide-text h2{font-size:13px;letter-spacing:3px;color:var(--dp1-lime);font-weight:700;margin-bottom:20px}
.slider-area .slide-text h1{font-size:88px;line-height:.98;letter-spacing:-1px;margin-bottom:24px;text-align:left}
.slider-area .slide-text h1 .dp1-l2{display:block;color:var(--dp1-lime)}
.slider-area .slide-text .paragraph p{text-align:left;max-width:720px;margin:0}
.dp1-hero-cta,.dp1-hero-ticks{justify-content:flex-start}
@media (max-width:1100px){.slider-area .slide-text h1{font-size:64px}}
@media (max-width:760px){.slider-area .slide-text h1{font-size:40px}}
/* dp1-crew: welcome -> big left headline on cream; services -> big headline, no logo */
.welcome-area{background:#f5f2ea !important}
.welcome-area .col-text-center{float:left;margin-left:0}
.welcome-area .section-title-2{text-align:left;max-width:none;margin:0 0 40px}
.dp1-bighead-wrap{text-align:left}
.dp1-bighead-wrap .dp1-eyebrow{color:#5b974e;font-size:13px;letter-spacing:3px;margin-bottom:14px}
.dp1-bighead{font-family:'Montserrat',sans-serif;font-weight:800;font-size:76px;line-height:.98;letter-spacing:-1px;text-transform:uppercase;color:#16231a;margin:0 0 26px}
.welcome-area .section-title-2 p.font-16{text-align:left;font-size:17px;line-height:1.75;color:#4a5a4d;max-width:560px}
.rts-left h2{font-size:68px;line-height:.98;letter-spacing:-1px;font-weight:800}
.rts-logo{display:none}
@media(max-width:1000px){.dp1-bighead{font-size:52px}.rts-left h2{font-size:48px}}
@media(max-width:620px){.dp1-bighead{font-size:38px}.rts-left h2{font-size:34px}}
/* dp1-svc-big: services headline = hero treatment (uppercase, big, lime accent); logo removed */
.rts-svc .rts-left h2{font-family:'Montserrat',sans-serif;font-weight:800;font-size:64px;line-height:.98;letter-spacing:-1px;text-transform:uppercase;color:#fff;margin:14px 0 22px}
.rts-svc .rts-left h2 span{color:var(--dp1-lime)}
.rts-svc .rts-logo{display:none}
@media(max-width:1000px){.rts-svc .rts-left h2{font-size:48px}}
@media(max-width:620px){.rts-svc .rts-left h2{font-size:36px}}
/* dp1-hero-fluid: hero height no longer tied to photo; all text scales smoothly, H1 stays dominant, never clips */
.slider-area .slide-one{position:relative;min-height:max(41.7vw,580px);overflow:hidden}
.slider-area .slide-one > img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}
.slider-area .slide-text{max-width:68vw}
.slider-area .slide-text h2{font-size:clamp(11px,.85vw,15px);letter-spacing:.22em;margin-bottom:clamp(10px,1vw,20px)}
.slider-area .slide-text h1{font-size:clamp(34px,4.3vw,92px);line-height:1;margin-bottom:clamp(14px,1.4vw,26px)}
.slider-area .slide-text .paragraph,.slider-area .slide-text .paragraph p{font-size:clamp(14px,1.15vw,19px);line-height:1.6;max-width:54vw}
.dp1-hero-cta{margin:clamp(14px,1.4vw,24px) 0 clamp(12px,1.2vw,22px)}
.dp1-hero-cta .dp1-btn,.dp1-hero-cta .dp1-btn-outline{font-size:clamp(13px,.95vw,16px);padding:clamp(10px,.8vw,14px) clamp(20px,1.6vw,30px)}
.dp1-hero-ticks span{font-size:clamp(11px,.85vw,14px)}
@media(max-width:760px){.slider-area .slide-one{min-height:600px}.slider-area .slide-text,.slider-area .slide-text .paragraph p{max-width:100%}}

/* ---------- dp1-hero-wide ---------- */
.slider-area .container{width:100% !important;max-width:none !important;padding-left:6vw !important;padding-right:6vw !important}
.slider-area .row{margin:0 !important}
.slider-area .row > [class*="col-"]{width:100% !important;float:none !important;margin:0 !important;padding:0 !important}
.slider-area .slide-text{max-width:72vw !important}

/* ---------- dp1-headfont (hero treatment on all titles) ---------- */
h1,h2{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:-1px !important;line-height:1.08 !important}
h2.font-36{font-size:clamp(30px,3vw,46px) !important}
h2.font-26.weight-bold{font-size:clamp(28px,2.6vw,38px) !important}
.page-title h1,.page-title h2{font-size:clamp(34px,4vw,64px) !important}
h2.floatleft.white-color{font-size:clamp(24px,2.2vw,32px) !important}
.slider-area .slide-text h2{font-size:11.5px !important;font-weight:700 !important;letter-spacing:2.4px !important;line-height:1.6 !important}
.slider-area .slide-text h1{line-height:1 !important}
.dp1-bighead,.rts-svc .rts-left h2{line-height:1 !important}

/* ---------- dp1-slide23 (slides 2/3 use h2 for the big heading) ---------- */
.slider-area .slide-text h2.time-delay3{font-size:clamp(34px,4.3vw,92px) !important;font-weight:800 !important;letter-spacing:-1px !important;line-height:1 !important;margin-bottom:clamp(14px,1.4vw,26px) !important;text-align:left}

/* ---------- dp1-h1-win (beat theme !important breakpoints) ---------- */
.slider-area .slide-text h1.font-60,.slider-area .slide-text h2.time-delay3{font-size:clamp(30px,4.3vw,92px) !important;line-height:1 !important;margin-bottom:clamp(14px,1.4vw,26px) !important}
@media (max-width:767px){.slider-area .slide-text h1.font-60,.slider-area .slide-text h2.time-delay3{font-size:clamp(26px,7.5vw,34px) !important;line-height:1.05 !important}}

/* ---------- dp1-hierarchy (hero biggest, section titles fluid below it) ---------- */
.slider-area .slide-text h1.font-60,.slider-area .slide-text h2.time-delay3{font-size:clamp(30px,5vw,100px) !important}
.dp1-bighead{font-size:clamp(30px,3.6vw,68px) !important;line-height:1 !important}
.rts-svc .rts-left h2{font-size:clamp(26px,3.2vw,58px) !important;line-height:1.02 !important}
@media (max-width:767px){
.slider-area .slide-text h1.font-60,.slider-area .slide-text h2.time-delay3{font-size:clamp(26px,8vw,36px) !important}
.dp1-bighead{font-size:clamp(24px,6.5vw,30px) !important}
.rts-svc .rts-left h2{font-size:clamp(22px,6vw,28px) !important}
.slider-area .slide-text{max-width:100% !important}
.slider-area .slide-text h2.time-delay2{font-size:10.5px !important;letter-spacing:1.5px !important;margin-bottom:10px !important}
}
