/* Contractor-first, immersive entry: three routes into the business and a
   quiet navigation that takes on a solid surface after the opening frame. */
body{padding:0}
body[data-current-page="home"]{padding-top:0}
body[data-current-page="fieldflow"] main [data-page="fieldflow"]{display:block}
.site-header,body[data-current-page="home"] .site-header{
  position:relative;top:0;left:0;right:0;width:100%;height:104px;min-height:0;
  display:flex;flex-direction:row;align-items:center;justify-content:space-between;
  padding:0 clamp(26px,3.5vw,58px);border:0;border-bottom:1px solid #55605c;
  background:var(--forest-deep);color:#fff;box-shadow:none;z-index:40;
}
.site-header::before,.rail-foot,.nav-heading{display:none}
.site-header .brand,body[data-current-page="home"] .site-header .brand{width:250px;max-width:250px;flex:none;visibility:visible}
.site-header .nav{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:clamp(12px,1.45vw,27px);width:auto;margin:0;font:700 11px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.04em}
.site-header .nav a:not(.nav-cta){display:block;min-height:0;padding:8px 0;border:0;color:inherit;white-space:nowrap}
.site-header .nav a:not(.nav-cta)::before{display:none}
.site-header .nav a:not(.nav-cta):hover,.site-header .nav a[aria-current="page"]:not(.nav-cta){color:#b8dabf;border:0;padding:8px 0}
.site-header .nav-cta{margin:0;padding:13px 15px;background:var(--ivory);color:var(--forest-deep);font-size:10px;min-height:41px;white-space:nowrap;gap:10px}
.site-header .nav-cta span{color:#547a52}
.site-header .menu-button{display:none}

body[data-current-page="home"] main .hero{min-height:calc(100svh - 104px);display:block}
.hero{background:#10251c}
.hero-slide{filter:saturate(.8) contrast(1.03)}
.hero-shade{background:linear-gradient(90deg,rgba(4,18,13,.86),rgba(4,18,13,.44) 58%,rgba(4,18,13,.12)),linear-gradient(0deg,rgba(4,18,13,.72),transparent 50%)}
.hero::before{display:none}
.hero-content{width:min(calc(100% - 112px),1180px);max-width:1180px;margin:auto;padding:clamp(78px,11svh,118px) 0 210px}
.hero-brand{display:none}
.hero-overline{margin-bottom:21px;font-size:10px}
.hero h1{font-size:clamp(76px,8.5vw,130px);line-height:.8;margin-bottom:20px;max-width:790px}
.hero-copy{max-width:650px;margin-top:26px;font-size:clamp(16px,1.4vw,20px)}
.hero-detail{display:none}
.hero-actions{margin-top:27px;gap:26px}
.hero-actions .button{min-height:47px;padding:12px 16px;font-size:10px}
.hero-bottom{z-index:5;width:auto;left:auto;right:clamp(26px,3.5vw,58px);bottom:195px;justify-content:end;gap:0}
.hero-bottom::before,.hero-bottom>span{display:none}
.hero-carousel-dot{width:30px}
.hero-carousel-dot:before{height:2px}
.hero-paths{position:absolute;z-index:5;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);min-height:180px;border-top:1px solid rgba(255,255,255,.45);background:rgba(6,20,14,.7);backdrop-filter:blur(8px)}
.hero-path{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:22px clamp(26px,3.5vw,58px);border-right:1px solid rgba(255,255,255,.35);transition:background .35s ease;color:#fff}
.hero-path::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#87bc93;transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.hero-path:last-child{border:0}
.hero-path:hover,.hero-path:focus-visible,.hero-path.is-selected{background:rgba(20,67,43,.88)}
.hero-path:hover::before,.hero-path:focus-visible::before,.hero-path.is-selected::before{transform:scaleX(1)}
.path-number{font:700 9px/1.2 'Manrope',Arial,sans-serif;letter-spacing:.17em;color:#c5e4c8}
.hero-path strong{font:500 clamp(38px,3.8vw,61px)/.88 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;transition:transform .35s ease}
.hero-path:hover strong,.hero-path:focus-visible strong,.hero-path.is-selected strong{transform:translateY(-3px)}
.path-description{font:500 12px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.02em;color:#eef4ec}
.path-go{font:700 10px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.05em;text-transform:uppercase;display:flex;justify-content:space-between;gap:10px;color:#dceadb}
.path-go b{font-size:17px;font-weight:400;transition:transform .35s ease}
.hero-path:hover .path-go b,.hero-path:focus-visible .path-go b,.hero-path.is-selected .path-go b{transform:translate(3px,-3px)}
.hero-path-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity .55s ease,transform 1.2s ease;filter:saturate(.82) contrast(1.03)}
.hero-path-insulation{object-position:center 45%}
.hero[data-path="concrete"] .hero-path-concrete,.hero[data-path="insulation"] .hero-path-insulation,.hero[data-path="careers"] .hero-path-careers{opacity:1;transform:scale(1)}

/* Gentle reveal builds rhythm without turning the page into a long animation. */
.reveal-on-scroll{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal-on-scroll.is-visible{opacity:1;transform:none}

@media(max-width:1100px){
  body,body[data-current-page="home"]{padding-top:0}
  .site-header,body[data-current-page="home"] .site-header{position:sticky;top:0;height:82px;padding:0 25px}
  .site-header .brand,body[data-current-page="home"] .site-header .brand{width:195px;max-width:195px}
  .site-header .menu-button{display:flex;width:44px;height:44px;flex-direction:column;justify-content:center;gap:6px;padding:8px;border:0;background:transparent}
  .site-header .menu-button span{display:block;height:2px;background:#fff}
  body[data-current-page="home"] .site-header .menu-button span{background:#fff}
  .site-header .nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100svh - 82px);overflow:auto;margin:0;padding:18px 25px 26px;background:var(--ivory);color:var(--forest-deep);box-shadow:0 22px 30px rgba(0,0,0,.2);align-items:stretch;flex-direction:column;gap:0}
  .site-header .nav.is-open{display:flex}
  .site-header .nav a:not(.nav-cta){border-bottom:1px solid #d3dbd1;padding:14px 0;font-size:16px}
  .site-header .nav-cta{margin-top:19px;background:var(--forest-deep);color:#fff;font-size:12px}
  .hero-content{width:min(calc(100% - 70px),1120px)}
  .hero-path{padding-inline:30px}
}
@media(max-width:700px){
  body,body[data-current-page="home"]{padding-top:0}
  .site-header,body[data-current-page="home"] .site-header{top:0;height:78px;padding-inline:18px}
  .site-header .brand,body[data-current-page="home"] .site-header .brand{width:170px;max-width:170px}
  .site-header .nav{max-height:calc(100svh - 78px);padding-inline:19px}
  body[data-current-page="home"] main .hero{min-height:0;display:flex;flex-direction:column;align-items:stretch}
  .hero-content{width:calc(100% - 38px);padding:92px 0 87px}
  .hero h1{font-size:clamp(67px,15vw,97px);line-height:.84}
  .hero-overline{font-size:8px;margin-bottom:24px}
  .hero-copy{font-size:16px;line-height:1.5;margin-top:23px}
  .hero-actions{margin-top:27px;align-items:flex-start;gap:22px}
  .hero-actions .button{min-height:49px}
  .hero-bottom{right:19px;bottom:auto;top:24px}
  .hero-paths{position:relative;order:2;grid-template-columns:1fr;min-height:0;backdrop-filter:none;background:#112b20}
  .hero-path{min-height:114px;padding:18px 20px;gap:6px;border-right:0;border-bottom:1px solid rgba(255,255,255,.26)}
  .hero-path strong{font-size:36px}
  .hero-path:hover,.hero-path:focus-visible{padding:18px 20px}
  .hero-shade{background:linear-gradient(0deg,rgba(4,18,13,.95),rgba(4,18,13,.56) 63%,rgba(4,18,13,.38))}
  .hero-path-image{display:none}
}
@media(prefers-reduced-motion:reduce){.site-header,.hero-path,.hero-path::before,.hero-path strong,.path-go b,.hero-path-image,.reveal-on-scroll{transition:none}.reveal-on-scroll{opacity:1;transform:none}}
