:root{
  --black:#060807;
  --black-2:#0e130e;
  --white:#ffffff;
  --paper:#f8faf5;
  --paper-2:#eef4ea;
  --green:#89a97b;
  --green-deep:#667f5c;
  --green-metal:#89a97b;
  --green-pale:#eef8e9;
  --text:#101410;
  --muted:#5d675a;
  --line:rgba(16,20,16,.11);
  --line-dark:rgba(255,255,255,.13);
  --shadow:0 24px 90px rgba(5,8,5,.14);
  --radius:26px;
  --radius-sm:18px;
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;background:var(--white);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(var(--container),calc(100% - 36px));margin-inline:auto}.narrow{max-width:880px}
.skip-link{position:absolute;left:-999px;top:1rem;z-index:9999;background:var(--black);color:var(--white);padding:.8rem 1rem;border-radius:999px}.skip-link:focus{left:1rem}
.site-status{background:#0c100c;color:#eef7e9;border-bottom:1px solid rgba(137,169,123,.28);font-size:.92rem}.status-inner{display:flex;gap:.75rem;align-items:center;justify-content:center;min-height:42px;text-align:center}.status-inner strong{color:var(--green)}.status-inner span{color:rgba(248,250,245,.78)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(16px) saturate(150%);border-bottom:1px solid var(--line)}
.nav-shell{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:inline-flex;align-items:center;border-radius:16px;padding:.35rem .3rem}.brand img{width:224px;height:auto}.brand:focus-visible,.main-nav a:focus-visible,.nav-dropdown-button:focus-visible,.menu-toggle:focus-visible,.btn:focus-visible{outline:3px solid rgba(137,169,123,.6);outline-offset:3px}
.main-nav{display:flex;align-items:center;gap:.25rem}.main-nav>a,.nav-dropdown-button{appearance:none;border:0;background:transparent;color:var(--text);font-weight:800;font-size:.87rem;letter-spacing:.01em;padding:.75rem .78rem;border-radius:999px;white-space:nowrap;cursor:pointer}.main-nav>a:hover,.nav-dropdown-button:hover,.main-nav>a[aria-current="page"]{background:var(--green-pale);color:#162214}.nav-dropdown{position:relative}.dropdown-panel{position:absolute;top:calc(100% + 12px);left:0;min-width:306px;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:.55rem;box-shadow:var(--shadow);display:grid;gap:.12rem;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s ease}.nav-dropdown:hover .dropdown-panel,.nav-dropdown.is-open .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-panel a{display:block;border-radius:15px;padding:.78rem .86rem;color:var(--text);font-weight:800}.dropdown-panel a:hover{background:var(--green-pale);color:#162214}.menu-toggle{display:none;border:1px solid var(--line);background:var(--white);border-radius:999px;padding:.75rem .95rem;font-weight:900;color:var(--text)}
.hero{background:radial-gradient(circle at 80% 22%,rgba(137,169,123,.22),transparent 34%),linear-gradient(135deg,#050706 0%,#0c110c 62%,#24351f 100%);color:var(--white);overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(74px,8vw,124px) 0}.eyebrow{font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.16em;color:var(--green-deep);margin:0 0 .85rem}.hero .eyebrow,.black .eyebrow,.page-hero .eyebrow{color:var(--green)}h1,h2,h3{margin:0;line-height:1.03;letter-spacing:-.045em}h1{font-size:clamp(3rem,8vw,7rem)}h2{font-size:clamp(2rem,4.8vw,4.35rem)}h3{font-size:clamp(1.28rem,2.1vw,1.9rem)}.stack-title span{display:block}.lead{font-size:clamp(1.05rem,1.6vw,1.34rem);color:rgba(248,250,245,.78);max-width:760px;margin-top:1.25rem}.lead.dark{color:var(--muted)}.soft{color:rgba(248,250,245,.73);font-size:1.05rem;max-width:700px}.button-row{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.96rem 1.15rem;border-radius:999px;border:1px solid transparent;font-weight:950;transition:transform .18s ease,background .18s ease,border-color .18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--green);color:#071006;box-shadow:0 16px 42px rgba(137,169,123,.24)}.btn-primary:hover{background:#9fb695}.btn-secondary{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.22);color:var(--white)}.btn-secondary:hover{background:rgba(255,255,255,.1)}.hero-media{position:relative;border-radius:32px;overflow:hidden;box-shadow:0 36px 120px rgba(0,0,0,.38);border:1px solid rgba(137,169,123,.28);background:#0c110c}.hero-media img{width:100%;min-height:490px;object-fit:cover}.media-caption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(5,7,6,.76);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:1rem}.media-caption strong{display:block}.media-caption span{display:block;color:rgba(248,250,245,.72);font-size:.9rem;margin-top:.24rem}
.section{padding:clamp(62px,7vw,110px) 0}.section-compact{padding:clamp(44px,5vw,76px) 0}.white{background:var(--white)}.muted{background:var(--paper)}.black{background:var(--black);color:var(--white)}.intro-strip{display:grid;grid-template-columns:1fr .72fr;gap:3rem;align-items:end;border-bottom:1px solid var(--line);padding-bottom:clamp(30px,4vw,52px)}.intro-strip p:last-child{color:var(--muted);font-size:1.08rem}.section-heading{max-width:860px;margin-bottom:2rem}.section-heading.centered{text-align:center;margin-inline:auto}.section-heading p{color:var(--muted);font-size:1.05rem}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;box-shadow:0 16px 50px rgba(6,8,7,.05)}.card h3{margin-bottom:.65rem}.card p,.card ul{color:var(--muted)}.card ul{margin:.8rem 0 0;padding-left:1.1rem}.card li{margin:.34rem 0}.compact-grid .card{box-shadow:none}.text-link{display:inline-flex;margin-top:1rem;color:var(--green-deep);font-weight:950}.text-link:hover{text-decoration:underline}.text-link.light{color:var(--green)}.feature-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.feature-card{border-radius:32px;padding:clamp(1.35rem,3vw,2.25rem);min-height:390px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;inset:auto -15% -35% 25%;height:60%;background:radial-gradient(circle,rgba(137,169,123,.22),transparent 60%)}.dark-feature{background:linear-gradient(135deg,#050706,#111811);color:var(--white);border:1px solid rgba(137,169,123,.30)}.light-feature{background:linear-gradient(135deg,#f9fbf7,#edf6e8);color:var(--text);border:1px solid var(--line)}.feature-number{position:absolute;top:1.3rem;right:1.4rem;color:var(--green);font-weight:950;letter-spacing:.1em}.feature-card p{position:relative;color:inherit;opacity:.76;max-width:560px}.feature-card h3,.feature-card a{position:relative}.dark-feature .text-link{color:var(--green)}.split{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(2rem,5vw,4rem);align-items:start}.align-center{align-items:center}.copy-block{display:grid;gap:1rem;color:var(--muted);font-size:1.05rem}.black .copy-block{color:rgba(248,250,245,.75)}.process-list{display:grid;gap:.75rem}.process-list div{display:grid;grid-template-columns:54px 1fr;gap:1rem;align-items:center;border:1px solid var(--line-dark);border-radius:18px;padding:1rem;background:rgba(255,255,255,.05)}.process-list span,.process-row span{width:42px;height:42px;border-radius:999px;background:var(--green);color:#071006;display:grid;place-items:center;font-weight:950}.process-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.process-row div{border:1px solid var(--line-dark);border-radius:24px;padding:1.2rem;background:rgba(255,255,255,.05)}.process-row strong{display:block;margin:.9rem 0 .35rem;font-size:1.1rem}.process-row p{color:rgba(248,250,245,.72);margin:0}.simple-final{text-align:center;max-width:870px}.simple-final p{color:var(--muted);font-size:1.08rem}.simple-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.2rem}.simple-links a{border:1px solid var(--line);border-radius:999px;padding:.78rem 1rem;font-weight:900}.simple-links a:hover{background:var(--green-pale)}.page-hero{background:linear-gradient(135deg,#050706,#111811 62%,#26391f);color:var(--white);padding:clamp(70px,8vw,122px) 0}.page-hero .lead{max-width:900px}.cta-band{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;background:linear-gradient(135deg,#050706,#172319);color:var(--white);border:1px solid rgba(137,169,123,.28);border-radius:32px;padding:clamp(1.4rem,4vw,3rem);box-shadow:var(--shadow)}.cta-band p{color:rgba(248,250,245,.74);max-width:760px;margin:.55rem 0 0}.project-format{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.project-format span{border:1px solid var(--line);border-radius:999px;padding:.8rem 1rem;text-align:center;font-weight:900;background:var(--paper)}.article-list{display:grid;gap:.72rem}.article-row{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;border:1px solid var(--line);border-radius:18px;padding:1rem 1.1rem;background:var(--white);font-weight:900}.article-row span{color:var(--green-deep)}.article-row:hover{background:var(--green-pale)}.contact-card{display:grid;gap:.5rem;margin-top:1.2rem}.contact-card a{font-weight:950;color:var(--green-deep);font-size:1.15rem}.form{display:grid;gap:1rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;box-shadow:0 16px 50px rgba(6,8,7,.06)}.form label{display:grid;gap:.35rem;font-weight:900;color:var(--text)}.form input,.form textarea,.form select{width:100%;border:1px solid rgba(16,20,16,.17);border-radius:14px;padding:.92rem;font:inherit;background:#fff;color:var(--text)}.form textarea{min-height:150px;resize:vertical}.hidden{display:none}.price-panel{background:linear-gradient(135deg,#050706,#172319);color:var(--white);border:1px solid rgba(137,169,123,.38);border-radius:32px;padding:clamp(1.25rem,3vw,2rem);box-shadow:var(--shadow)}.price-panel h2{color:var(--green);font-size:clamp(2.2rem,5vw,4.6rem);margin-bottom:.7rem}.price-panel p{color:rgba(248,250,245,.76);margin:.55rem 0}.estimator-note{margin-top:1.2rem}.footer{background:#050706;color:rgba(248,250,245,.74);padding:56px 0 28px;border-top:1px solid rgba(137,169,123,.28)}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:2rem}.footer h2{font-size:1rem;letter-spacing:.02em;margin-bottom:.8rem;color:var(--white)}.footer a{display:block;color:rgba(248,250,245,.74);margin:.38rem 0}.footer a:hover{color:var(--green)}.footer-logo-card{display:inline-flex;background:#fff;border-radius:16px;padding:.55rem;margin-bottom:1rem}.footer-logo-card img{width:224px}.footer-brand p{max-width:440px}.footer-contact a{font-weight:900;color:var(--green)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:2rem;padding-top:1.2rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.88rem;color:rgba(248,250,245,.58)}
@media (max-width:1040px){.grid.four{grid-template-columns:repeat(2,1fr)}.hero-grid,.split,.intro-strip{grid-template-columns:1fr}.hero-media img{min-height:390px}.footer-grid{grid-template-columns:1fr 1fr}.project-format{grid-template-columns:repeat(2,1fr)}}
@media (max-width:840px){.menu-toggle{display:inline-flex}.main-nav{position:absolute;left:18px;right:18px;top:calc(100% + 10px);background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:.8rem;display:none;align-items:stretch;flex-direction:column}.main-nav.is-open{display:flex}.main-nav>a,.nav-dropdown-button{width:100%;text-align:left;display:flex;justify-content:space-between}.nav-dropdown{width:100%}.dropdown-panel{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border-radius:18px;background:var(--paper);margin:.25rem 0 .5rem;min-width:0}.nav-dropdown.is-open .dropdown-panel{display:grid}.brand img{width:196px}.feature-pair,.grid.three,.grid.two,.process-row{grid-template-columns:1fr}.cta-band{grid-template-columns:1fr}.hero-grid{padding:58px 0}.status-inner{align-items:flex-start;flex-direction:column;text-align:left;gap:.1rem;padding:.55rem 0}.footer-grid{grid-template-columns:1fr}.article-row{grid-template-columns:1fr}.project-format{grid-template-columns:1fr}}
@media (max-width:520px){.container{width:min(var(--container),calc(100% - 28px))}.brand img{width:178px}.hero-media img{min-height:300px}.media-caption{position:static;border-radius:0;border-left:0;border-right:0;border-bottom:0}.button-row .btn{width:100%}h1{font-size:clamp(2.75rem,17vw,4.9rem)}.grid.four{grid-template-columns:1fr}.feature-card{min-height:320px}.simple-links a{width:100%;text-align:center}.footer-logo-card img{width:190px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* V3 refinements: compact header bubbles, service dropdown, simplified homepage */
.site-header{background:rgba(255,255,255,.94)}
.nav-shell{min-height:74px;gap:1.1rem}
.brand{padding:.25rem 0;border-radius:18px;flex:0 0 auto}
.brand img{width:210px;height:auto;object-fit:contain}
.main-nav{gap:.34rem;flex-wrap:nowrap}
.nav-pill,.nav-dropdown-button{appearance:none;border:1px solid transparent;background:transparent;color:#111711;font-weight:850;font-size:.82rem;letter-spacing:.005em;padding:.5rem .72rem;border-radius:999px;white-space:nowrap;cursor:pointer;line-height:1.1;min-height:34px;display:inline-flex;align-items:center;gap:.25rem}
.nav-dropdown-button{background:#f0f6ec;border-color:rgba(137,169,123,.24);color:#142012}
.nav-pill:hover,.nav-dropdown-button:hover,.main-nav>a[aria-current="page"]{background:#edf7e8;color:#142012;border-color:rgba(137,169,123,.22)}
.dropdown-panel{left:auto;right:0;min-width:520px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.14rem;padding:.65rem;border-radius:24px;box-shadow:0 22px 74px rgba(5,8,5,.16)}
.dropdown-panel a{padding:.72rem .82rem;border-radius:15px;font-size:.88rem;font-weight:850}
.dropdown-panel a:first-child{grid-column:1/-1;background:#f7fbf4;color:#183015}
.hero-minimal .hero-grid{padding:clamp(64px,8vw,116px) 0}
.hero-minimal .lead{max-width:720px}
.button-row.restrained{gap:.7rem;margin-top:1.7rem}
.homepage-focus{padding-top:clamp(58px,6vw,92px);padding-bottom:clamp(58px,6vw,96px)}
.compact-heading{max-width:820px;margin-bottom:1.55rem}
.compact-heading p:last-child{max-width:690px;margin-left:auto;margin-right:auto}
.minimal-pair .feature-card{min-height:330px}
.planning-home{padding:clamp(58px,6vw,92px) 0}
.slim-process div{padding:.9rem}
.under-construction-note{border-top:1px solid var(--line)}
.no-border{border-bottom:0;padding-bottom:0}
.site-status{background:#050706;color:#f6fbf3}
.status-inner strong{color:#89a97b}
.footer-logo-card img{width:210px;height:auto}
.price-panel h2{font-size:clamp(2rem,4vw,3.8rem)}
@media (max-width:1120px){.brand img{width:190px}.nav-pill,.nav-dropdown-button{font-size:.78rem;padding:.48rem .58rem}.dropdown-panel{min-width:480px}}
@media (max-width:920px){.menu-toggle{display:inline-flex}.main-nav{position:absolute;left:18px;right:18px;top:calc(100% + 10px);background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:.75rem;display:none;align-items:stretch;flex-direction:column}.main-nav.is-open{display:flex}.nav-pill,.nav-dropdown-button{width:100%;min-height:42px;text-align:left;justify-content:space-between;font-size:.9rem;padding:.78rem .9rem}.nav-dropdown{width:100%}.dropdown-panel{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border-radius:18px;background:var(--paper);margin:.25rem 0 .5rem;min-width:0;grid-template-columns:1fr;border-color:transparent}.nav-dropdown.is-open .dropdown-panel{display:grid}.dropdown-panel a:first-child{grid-column:auto}.brand img{width:178px}}
@media (max-width:520px){.brand img{width:156px}.hero-minimal .hero-grid{padding:50px 0}.minimal-pair .feature-card{min-height:300px}.status-inner{font-size:.86rem}.footer-logo-card img{width:180px}}


/* =========================================================
   Axis Point Contracting™ V4 — Netlify drag/drop refinement
   Purpose: prevent cached-header problems, restore clean top nav,
   keep the homepage minimal, and keep Services inside one menu.
   ========================================================= */
:root{
  --v4-black:#050706;
  --v4-ink:#101510;
  --v4-green:#89a97b;
  --v4-green-dark:#667f5c;
  --v4-soft:#f4f8f1;
  --v4-border:rgba(16,21,16,.12);
}
.site-status{
  background:#f7faf4 !important;
  color:#182018 !important;
  border-bottom:1px solid rgba(16,21,16,.08) !important;
  font-size:.88rem !important;
}
.status-inner{
  min-height:34px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.55rem !important;
  text-align:center !important;
  padding:.32rem 0 !important;
}
.status-inner .status-dot{
  width:.5rem;
  height:.5rem;
  border-radius:999px;
  background:var(--v4-green);
  box-shadow:0 0 0 4px rgba(137,169,123,.13);
  flex:0 0 auto;
}
.status-inner strong{
  color:#101510 !important;
  font-weight:900 !important;
}
.status-inner span:not(.status-dot){color:#3b4539 !important;}
.site-header{
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  background:rgba(255,255,255,.96) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  border-bottom:1px solid var(--v4-border) !important;
  box-shadow:0 10px 34px rgba(5,7,6,.045) !important;
}
.nav-shell{
  min-height:76px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:1rem !important;
}
.brand-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  padding:.2rem 0 !important;
  border-radius:16px !important;
}
.brand-link img{
  display:block !important;
  width:210px !important;
  max-width:32vw !important;
  height:auto !important;
  object-fit:contain !important;
}
.brand-link:focus-visible,
.nav-link:focus-visible,
.service-trigger:focus-visible,
.menu-toggle:focus-visible{
  outline:3px solid rgba(137,169,123,.55) !important;
  outline-offset:4px !important;
}
.main-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:.42rem !important;
  flex-wrap:nowrap !important;
}
.nav-link,
.service-trigger{
  appearance:none !important;
  border:1px solid rgba(16,21,16,.08) !important;
  background:rgba(244,248,241,.78) !important;
  color:#111711 !important;
  min-height:34px !important;
  padding:.48rem .72rem !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.28rem !important;
  font:inherit !important;
  font-size:.8rem !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:.002em !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  text-decoration:none !important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease,color .16s ease !important;
}
.nav-link:hover,
.service-trigger:hover,
.service-menu.is-open .service-trigger{
  background:#eaf6e4 !important;
  border-color:rgba(137,169,123,.3) !important;
  color:#142012 !important;
  transform:translateY(-1px) !important;
}
.nav-link.nav-cta{
  background:#111711 !important;
  color:#f7faf4 !important;
  border-color:#111711 !important;
}
.nav-link.nav-cta:hover{
  background:#22351f !important;
  border-color:rgba(137,169,123,.45) !important;
  color:#fff !important;
}
.service-menu{position:relative !important;display:inline-flex !important;}
.service-trigger .chevron{font-size:.74rem;line-height:1;opacity:.72;}
.service-panel{
  position:absolute !important;
  top:calc(100% + 12px) !important;
  right:0 !important;
  z-index:1100 !important;
  width:min(560px,calc(100vw - 36px)) !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:.35rem !important;
  padding:.7rem !important;
  background:rgba(255,255,255,.98) !important;
  border:1px solid rgba(16,21,16,.1) !important;
  border-radius:24px !important;
  box-shadow:0 28px 90px rgba(5,7,6,.18) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(-8px) !important;
  pointer-events:none !important;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease !important;
}
.service-menu:hover .service-panel,
.service-menu:focus-within .service-panel,
.service-menu.is-open .service-panel{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
}
.service-panel a{
  display:grid !important;
  gap:.18rem !important;
  padding:.78rem .86rem !important;
  border-radius:16px !important;
  color:#121812 !important;
  text-decoration:none !important;
  background:transparent !important;
  border:1px solid transparent !important;
}
.service-panel a strong{
  font-size:.88rem !important;
  line-height:1.1 !important;
  font-weight:900 !important;
}
.service-panel a span{
  font-size:.75rem !important;
  line-height:1.25 !important;
  color:#5f6a5b !important;
}
.service-panel a:hover{
  background:#f1f8ed !important;
  border-color:rgba(137,169,123,.16) !important;
}
.service-panel a.featured-service{
  background:#111711 !important;
  color:#fff !important;
  border-color:#111711 !important;
}
.service-panel a.featured-service span{color:rgba(247,250,244,.72) !important;}
.service-panel a.estimator-link{background:#f7fbf4 !important;}
.menu-toggle{
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  width:42px !important;
  height:42px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(16,21,16,.12) !important;
  background:#fff !important;
  color:#101510 !important;
  box-shadow:0 10px 28px rgba(5,7,6,.07) !important;
  cursor:pointer !important;
}
.menu-toggle span{
  position:absolute;
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:#101510;
  transition:transform .18s ease,opacity .18s ease;
}
.menu-toggle span:nth-child(1){transform:translateY(-6px)}
.menu-toggle span:nth-child(3){transform:translateY(6px)}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg)}
.hero-minimal .hero-grid{padding-top:clamp(58px,7vw,104px) !important;}
.page-hero{padding-top:clamp(62px,7vw,108px) !important;}
.under-construction-note{display:none !important;}
@media (max-width:1180px){
  .brand-link img{width:190px !important;}
  .nav-link,.service-trigger{font-size:.76rem !important;padding:.46rem .58rem !important;}
  .main-nav{gap:.26rem !important;}
}
@media (max-width:960px){
  .nav-shell{min-height:70px !important;}
  .brand-link img{width:178px !important;max-width:68vw !important;}
  .menu-toggle{display:inline-flex !important;position:relative !important;flex:0 0 auto !important;}
  .main-nav{
    position:absolute !important;
    left:18px !important;
    right:18px !important;
    top:calc(100% + 10px) !important;
    display:none !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:.45rem !important;
    padding:.75rem !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid rgba(16,21,16,.1) !important;
    border-radius:24px !important;
    box-shadow:0 28px 90px rgba(5,7,6,.16) !important;
  }
  .main-nav.is-open{display:flex !important;}
  .nav-link,.service-trigger{
    width:100% !important;
    min-height:44px !important;
    justify-content:space-between !important;
    font-size:.92rem !important;
    padding:.84rem .92rem !important;
  }
  .service-menu{display:block !important;width:100% !important;}
  .service-panel{
    position:static !important;
    width:100% !important;
    grid-template-columns:1fr !important;
    gap:.2rem !important;
    margin-top:.35rem !important;
    padding:.45rem !important;
    border-radius:18px !important;
    box-shadow:none !important;
    background:#f6faf3 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    display:none !important;
    pointer-events:auto !important;
  }
  .service-menu.is-open .service-panel{display:grid !important;}
  .status-inner{justify-content:flex-start !important;text-align:left !important;}
}
@media (max-width:560px){
  .container{width:min(var(--container),calc(100% - 28px)) !important;}
  .brand-link img{width:160px !important;}
  .status-inner{font-size:.78rem !important;gap:.42rem !important;}
  .status-inner span:not(.status-dot){display:none !important;}
}


/* =========================================================
   Axis Point Contracting™ V5 — Clean hero correction
   Removes the abstract hero box/graphic and returns the
   homepage to a premium, minimal text-first layout.
   ========================================================= */
.hero-minimal{
  position:relative !important;
  isolation:isolate !important;
  background:
    radial-gradient(circle at 84% 34%,rgba(137,169,123,.22),transparent 36%),
    radial-gradient(circle at 22% 82%,rgba(137,169,123,.10),transparent 36%),
    linear-gradient(135deg,#050706 0%,#071006 52%,#162414 100%) !important;
}
.hero-minimal:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.26;
  background:
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(90deg,#000,transparent 72%);
}
.hero-minimal .hero-grid{
  grid-template-columns:minmax(0,920px) !important;
  justify-content:start !important;
  align-items:center !important;
  gap:0 !important;
  min-height:min(760px,calc(100svh - 112px)) !important;
  padding:clamp(72px,9vw,138px) 0 clamp(76px,9vw,132px) !important;
}
.hero-minimal .hero-copy{
  max-width:900px !important;
}
.hero-minimal .stack-title{
  max-width:780px !important;
}
.hero-minimal .lead{
  max-width:690px !important;
  color:rgba(248,250,245,.80) !important;
}
.hero-minimal .hero-media,
.hero-minimal .media-caption{
  display:none !important;
}
.hero-minimal .button-row.restrained{
  margin-top:1.8rem !important;
}
.hero-minimal .btn-secondary{
  background:rgba(255,255,255,.035) !important;
}
.homepage-focus{
  border-top:1px solid rgba(137,169,123,.18) !important;
}
@media (max-width:960px){
  .hero-minimal .hero-grid{
    min-height:auto !important;
    padding:clamp(58px,12vw,92px) 0 clamp(64px,12vw,98px) !important;
  }
}
@media (max-width:560px){
  .hero-minimal .button-row.restrained{gap:.62rem !important;}
  .hero-minimal .btn{width:100% !important;}
}


/* V6 fixes: owner/about details, customer reviews section, concrete service, form confirmation */
.core-service-strip{
  margin-top:1rem;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(135deg,#f9fbf7,#edf6e8);
  padding:1.1rem 1.2rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem;
  box-shadow:0 16px 50px rgba(6,8,7,.04);
}
.core-service-strip div{display:grid;grid-template-columns:auto auto 1fr;gap:.7rem;align-items:center;min-width:0}
.core-service-strip span{width:36px;height:36px;border-radius:999px;background:var(--green);color:#071006;display:grid;place-items:center;font-weight:950;font-size:.82rem}
.core-service-strip strong{font-size:1.15rem;letter-spacing:-.03em}
.core-service-strip p{margin:0;color:var(--muted)}
.customer-reviews-home .lead.dark{max-width:760px}
.review-ready-panel,.review-note-card,.owner-contact-card{
  border:1px solid var(--line);
  border-radius:26px;
  background:var(--white);
  padding:1.35rem;
  box-shadow:0 16px 50px rgba(6,8,7,.05);
}
.review-ready-panel strong,.review-note-card strong,.owner-contact-card strong{display:block;font-size:1.15rem;margin-bottom:.35rem;color:var(--text)}
.review-ready-panel p,.review-note-card p{color:var(--muted);margin:.35rem 0 0}
.owner-contact-card{display:grid;gap:.25rem;margin-top:.4rem;background:linear-gradient(135deg,#f9fbf7,#edf6e8)}
.owner-contact-card span{color:var(--muted);font-weight:750}
.owner-contact-card a{color:var(--green-deep);font-weight:950}
.owner-section .lead.dark{margin-top:1rem}
.values-dark .card{background:rgba(255,255,255,.06);border-color:var(--line-dark);box-shadow:none;color:var(--white)}
.values-dark .card p{color:rgba(248,250,245,.72)}
.concrete-inline-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.form-submitting{opacity:.72;pointer-events:none}
.form-message{margin-top:1rem;border:1px solid rgba(137,169,123,.28);background:#eef8e9;border-radius:16px;padding:.9rem 1rem;color:#142012;font-weight:800}
@media (max-width:920px){
  .core-service-strip{align-items:flex-start;flex-direction:column}
  .core-service-strip div{grid-template-columns:auto 1fr;align-items:start}
  .core-service-strip p{grid-column:1/-1}
}


/* =========================================================
   Axis Point Contracting™ V7 — Estimator pricing model
   ========================================================= */
.estimator-hero h1{max-width:980px}
.centered-copy{text-align:center}.centered-copy .lead{margin-left:auto;margin-right:auto}.centered-buttons{justify-content:center}
.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.price-card{border:1px solid var(--line);border-radius:26px;background:#fff;padding:1.25rem;box-shadow:0 16px 50px rgba(6,8,7,.05)}.price-card span{display:block;color:var(--green-deep);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:950;margin-bottom:.45rem}.price-card strong{display:block;font-size:clamp(1.65rem,3vw,2.6rem);line-height:1;letter-spacing:-.045em}.price-card p{color:var(--muted);margin:.75rem 0 0}.strong-price{background:linear-gradient(135deg,#fff,#f2f8ee)}
.pricing-table-wrap{background:#fff;border:1px solid var(--line);border-radius:32px;padding:clamp(1rem,3vw,2rem);box-shadow:0 18px 60px rgba(6,8,7,.06);overflow:hidden}.muted .pricing-table-wrap{box-shadow:none}.featured-table{border-color:rgba(137,169,123,.24)}.pricing-table-heading{display:grid;gap:.55rem;margin-bottom:1.2rem}.pricing-table-heading h2{font-size:clamp(1.9rem,3.8vw,3.4rem)}.pricing-table-heading p:not(.eyebrow){color:var(--muted);max-width:850px;margin:0}.pricing-table{width:100%;border-collapse:collapse;font-size:.96rem}.pricing-table th{background:#111711;color:#fff;text-align:left;padding:1rem;border-bottom:1px solid rgba(255,255,255,.12);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.pricing-table td{padding:1rem;border-bottom:1px solid var(--line);vertical-align:top;color:#364033}.pricing-table tr:last-child td{border-bottom:0}.pricing-table td:first-child{font-weight:900;color:#111711}.pricing-table td:nth-child(2){font-weight:900;color:#315d25;white-space:nowrap}.emergency-price-band{display:grid;grid-template-columns:minmax(220px,.35fr) 1fr;gap:1.4rem;align-items:center;border:1px solid rgba(137,169,123,.28);border-radius:32px;background:rgba(255,255,255,.055);padding:clamp(1.2rem,3vw,2rem)}.emergency-price-band span{display:block;color:var(--green);font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;font-weight:950}.emergency-price-band strong{display:block;font-size:clamp(3rem,7vw,6rem);line-height:.92;letter-spacing:-.06em}.emergency-price-band p{color:rgba(248,250,245,.76);margin:0;font-size:1.08rem}.pricing-notes .card{box-shadow:none}.estimator-form-dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}.estimator-form-dark label{color:rgba(248,250,245,.78)}.estimator-form-dark input,.estimator-form-dark select,.estimator-form-dark textarea{background:#fff;color:#101510}.form-submitting{opacity:.72;pointer-events:none}
@media (max-width:980px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-table{display:block;overflow-x:auto;white-space:normal}.emergency-price-band{grid-template-columns:1fr}.pricing-table td:nth-child(2){white-space:normal}}
@media (max-width:620px){.pricing-grid{grid-template-columns:1fr}.pricing-table th,.pricing-table td{padding:.85rem;min-width:160px}.pricing-table td:first-child{min-width:210px}.pricing-table-wrap{border-radius:24px}.emergency-price-band{border-radius:24px}}

/* Final publication overrides */
.service-panel-minimal{min-width:320px;grid-template-columns:1fr!important}.service-panel-minimal a{display:block}.call-nav{border-color:var(--green,#4f7d64)!important}.hero-grid-single{grid-template-columns:minmax(0,850px)!important}.signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.emergency-feature{background:linear-gradient(145deg,#173328,#0a1712);color:#fff;border-color:rgba(255,255,255,.12)}.concrete-feature{background:#eef2ef}.estimate-result{margin-top:1.5rem;padding:1.4rem;border:1px solid rgba(47,112,78,.35);border-radius:18px;background:#fff}.estimate-result span{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.estimate-result strong{display:block;font-size:clamp(1.4rem,3vw,2.25rem);margin:.35rem 0;color:#1f6f4a}.estimator-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:3rem;align-items:start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.consent-label{display:flex!important;align-items:flex-start;gap:.7rem}.consent-label input{width:auto;margin-top:.3rem}.form-note{font-size:.9rem}.estimator-invite{padding:1.1rem;border:1px solid rgba(47,112,78,.25);border-radius:14px;margin-bottom:1rem}.reviews-compact .button-row{justify-content:flex-start}@media(max-width:800px){.signature-grid,.estimator-layout,.form-grid{grid-template-columns:1fr}.service-panel-minimal{min-width:0}.main-nav .call-nav{display:flex}.estimate-result{margin-bottom:1.5rem}}


/* AXIS POINT UNIFORM RESPONSIVE BRAND SYSTEM */
:root{
  --ap-header-logo-width:clamp(178px,18vw,242px);
  --ap-footer-logo-width:clamp(210px,24vw,300px);
}
.brand-link{display:inline-flex!important;align-items:center!important;min-width:0!important;line-height:0!important;}
.brand-link .site-logo-header{display:block!important;width:var(--ap-header-logo-width)!important;max-width:100%!important;height:auto!important;object-fit:contain!important;}
.footer-logo-card{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;}
.footer-logo-card .site-logo-footer{display:block!important;width:var(--ap-footer-logo-width)!important;max-width:100%!important;height:auto!important;object-fit:contain!important;}
.nav-shell{gap:clamp(.65rem,1.4vw,1.4rem)!important;}
.main-nav{min-width:0!important;}
img{max-width:100%;height:auto;}
@media (max-width:1180px){
  :root{--ap-header-logo-width:190px;}
  .brand-link .site-logo-header{width:var(--ap-header-logo-width)!important;}
}
@media (max-width:960px){
  :root{--ap-header-logo-width:176px;--ap-footer-logo-width:240px;}
  .brand-link{max-width:calc(100% - 58px)!important;}
  .brand-link .site-logo-header{width:var(--ap-header-logo-width)!important;max-width:100%!important;}
  .main-nav{max-height:calc(100vh - 98px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
  body.nav-open{overflow:hidden!important;}
}
@media (max-width:560px){
  :root{--ap-header-logo-width:156px;--ap-footer-logo-width:220px;}
  .site-header .container{width:min(var(--container),calc(100% - 24px))!important;}
  .brand-link .site-logo-header{width:var(--ap-header-logo-width)!important;}
  .footer-grid{grid-template-columns:1fr!important;}
  .footer-logo-card .site-logo-footer{width:var(--ap-footer-logo-width)!important;}
}

.brandline{
  margin:.9rem 0 0;
  color:var(--green);
  font-size:clamp(1rem,1.35vw,1.2rem);
  font-weight:850;
  letter-spacing:.02em;
}
.brandline-dark{color:var(--green-deep)}
.footer-brandline{
  color:var(--green);
  font-weight:850;
  margin:.65rem 0 0;
}

/* Sitewide revision: homepage hierarchy, cards, footer, guides and project carousel */
.homepage-focus{padding-top:clamp(54px,6vw,88px)}
.hero-dark-card{
  background:radial-gradient(circle at 82% 18%,rgba(137,169,123,.22),transparent 35%),linear-gradient(135deg,#050706 0%,#0c110c 62%,#24351f 100%);
  color:#fff;border:1px solid rgba(137,169,123,.30)
}
.hero-dark-card .text-link{color:var(--green)}
.white-fade-card{
  background:linear-gradient(180deg,#fff 0%,#fff 48%,#f5f7f3 70%,#24351f 142%);
  color:var(--text);border:1px solid var(--line)
}
.white-fade-card:after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:46%;
  background:linear-gradient(180deg,transparent,rgba(36,53,31,.22));
  pointer-events:none
}
.white-fade-card h3,.white-fade-card p,.white-fade-card a,.white-fade-card .feature-number{z-index:1}
.footer-grid-single{grid-template-columns:minmax(0,720px)!important}
.footer-owner{margin:1.1rem 0 .1rem!important;color:#fff;font-size:1.05rem}
.footer-contact{margin-top:.2rem!important}
.service-menu:hover .service-panel,
.service-menu:focus-within .service-panel{
  opacity:1!important;visibility:visible!important;transform:translateY(0)!important;pointer-events:auto!important
}
.before-after-carousel{position:relative;border-radius:30px;background:var(--paper);border:1px solid var(--line);padding:clamp(1rem,3vw,2rem);overflow:hidden}
.carousel-track{position:relative}
.before-after-slide{display:none}
.before-after-slide.is-active{display:block}
.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.comparison-frame{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.comparison-frame>span{display:block;padding:.75rem 1rem;font-weight:950;color:var(--green-deep)}
.photo-ready{min-height:300px;display:grid;place-items:center;background:linear-gradient(135deg,#050706,#26391f);color:rgba(255,255,255,.72);font-weight:850;letter-spacing:.03em}
.comparison-copy{padding:1.15rem .25rem .2rem}
.carousel-control{position:absolute;top:48%;z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:2rem;line-height:1;cursor:pointer}
.carousel-prev{left:10px}.carousel-next{right:10px}
.carousel-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}
.carousel-dots button{width:11px;height:11px;border:0;border-radius:50%;background:#cad4c5}
.carousel-dots button.is-active{background:var(--green-deep)}
.guide-visual-card{margin:0;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.guide-visual-card img{display:block;width:100%;height:auto}
.guide-visual-card figcaption{padding:1rem 1.2rem;color:var(--muted)}
@media(max-width:760px){
 .comparison-grid{grid-template-columns:1fr}
 .photo-ready{min-height:220px}
 .carousel-control{top:auto;bottom:14px}
 .carousel-dots{padding-bottom:3.3rem}
}

/* Service architecture and brand emphasis */
.company-highlight{
  color:var(--green-deep);
  font-weight:900;
  text-decoration-thickness:.08em;
  text-underline-offset:.14em;
}
.black .company-highlight,.page-hero .company-highlight,.hero .company-highlight,.footer .company-highlight{
  color:var(--green);
}
.clickable-card{
  display:block;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.card:hover,.feature-card:hover,.clickable-card:hover,
.card:focus-within,.feature-card:focus-within,.clickable-card:focus-visible{
  transform:translateY(-4px);
  border-color:var(--green);
  box-shadow:0 20px 54px rgba(137,169,123,.22);
  background:linear-gradient(145deg,#fff 0%,var(--green-pale) 100%);
}
.hero-dark-card:hover{
  background:radial-gradient(circle at 82% 18%,rgba(137,169,123,.32),transparent 38%),linear-gradient(135deg,#050706 0%,#142012 62%,#30472a 100%);
}
.white-fade-card:hover{
  background:linear-gradient(180deg,#fff 0%,var(--green-pale) 48%,#dfe9da 72%,#30472a 145%);
}
.service-directory-card{min-height:210px}
.emergency-card{border-color:rgba(137,169,123,.55)}
.maintenance-nav{border-color:rgba(137,169,123,.28)!important}
.maintenance-nav:hover{background:var(--green-pale)!important;color:var(--green-deep)!important}
@media(max-width:760px){
 .service-directory-card{min-height:auto}
 .card:hover,.feature-card:hover,.clickable-card:hover{transform:none}
}

/* Trust-focused homepage and sitewide revision */
.feature-card-link{display:block;color:inherit;text-decoration:none}
.trust-feature-card{
  min-height:360px;
  border-top:0!important;
  background:linear-gradient(155deg,#ffffff 0%,#f6f8f4 62%,#e6eee1 100%);
  color:var(--text);
}
.trust-feature-card:before{background:radial-gradient(circle,rgba(137,169,123,.18),transparent 62%)}
.trust-feature-card:hover,.feature-card-link:focus-visible .trust-feature-card{
  transform:translateY(-5px);
  border-color:var(--green);
  box-shadow:0 24px 64px rgba(137,169,123,.24);
  background:linear-gradient(155deg,#ffffff 0%,var(--green-pale) 58%,#dce7d7 100%);
}
.trust-feature-card .feature-number{color:var(--green-deep)}
.trust-feature-card h3,.trust-feature-card p{position:relative;z-index:2}
.faq-card-link{display:block;color:inherit;text-decoration:none}
.faq-answer-card{
  height:100%;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.faq-answer-card:hover,.faq-card-link:focus-visible .faq-answer-card{
  transform:translateY(-4px);
  border-color:var(--green);
  background:linear-gradient(145deg,#fff 0%,var(--green-pale) 100%);
  box-shadow:0 20px 54px rgba(137,169,123,.22);
}
.faq-directive{display:inline-block;margin-top:.8rem;color:var(--green-deep);font-weight:900}
.footer-grid-wide{width:min(1180px,calc(100% - 36px));grid-template-columns:1fr!important}
.footer-brand-wide{width:100%;padding-inline:clamp(.5rem,3vw,2rem)}
.company-colour-name{color:var(--green)!important;margin:1.15rem 0 .55rem!important}
.footer-contact-balanced{margin:.55rem 0!important;line-height:1.8}
@media(max-width:760px){
  .trust-feature-card{min-height:260px}
  .footer-grid-wide{width:min(100%,calc(100% - 28px))}
  .footer-brand-wide{padding-inline:0}
}

/* V11 final publication corrections */
.company-name{
  display:inline-block;
  white-space:nowrap;
  color:var(--green-deep);
  font-weight:900;
}
.hero .company-name,.page-hero .company-name,.black .company-name,.footer .company-name{color:var(--green)}
.feature-card-link{display:block;color:inherit;text-decoration:none}
.trust-feature-card{
  min-height:350px;
  border-top:0!important;
  background:linear-gradient(155deg,#fff 0%,#f6f8f4 62%,#e3ebde 100%);
  color:var(--text)
}
.trust-feature-card:hover,.feature-card-link:focus-visible .trust-feature-card{
  transform:translateY(-5px);
  border-color:var(--green);
  box-shadow:0 24px 64px rgba(137,169,123,.24);
  background:linear-gradient(155deg,#fff 0%,var(--green-pale) 58%,#d7e3d2 100%)
}
.faq-card-link{display:block;color:inherit;text-decoration:none}
.faq-answer-card{height:100%;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.faq-answer-card:hover,.faq-card-link:focus-visible .faq-answer-card{
  transform:translateY(-4px);
  border-color:var(--green);
  background:linear-gradient(145deg,#fff 0%,var(--green-pale) 100%);
  box-shadow:0 20px 54px rgba(137,169,123,.22)
}
.faq-directive{display:inline-block;margin-top:.8rem;color:var(--green-deep);font-weight:900}
.footer-grid-wide{width:min(1180px,calc(100% - 36px));grid-template-columns:1fr!important}
.footer-brand{width:100%}
.company-colour-name{color:var(--green)!important;margin:1rem 0 .55rem!important}
.footer-contact-balanced{margin:.55rem 0!important;line-height:1.8}
@media(max-width:760px){
  .company-name{white-space:normal}
  .trust-feature-card{min-height:260px}
}

/* Final release: continuous company name, alternating cards, forms and full-width footer */
.company-name{
  display:inline-block!important;
  white-space:nowrap!important;
  color:var(--green-deep)!important;
  font-weight:900!important;
}
.hero .company-name,.page-hero .company-name,.black .company-name,.footer .company-name{
  color:var(--green)!important;
}
.paired-card,.alternating-feature,.faq-answer-card{
  border:1.5px solid var(--green)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
.tone-light{
  background:#fff!important;
  color:var(--text)!important;
}
.tone-light p{color:var(--muted)!important}
.tone-light:hover,.feature-card-link:focus-visible .tone-light,.faq-card-link:focus-visible .tone-light{
  background:linear-gradient(135deg,#050706,#172319)!important;
  color:#fff!important;
  transform:translateY(-4px);
  box-shadow:0 22px 58px rgba(137,169,123,.24)!important;
}
.tone-light:hover p,.feature-card-link:focus-visible .tone-light p,.faq-card-link:focus-visible .tone-light p{
  color:rgba(248,250,245,.78)!important;
}
.tone-dark{
  background:linear-gradient(135deg,#050706,#172319)!important;
  color:#fff!important;
}
.tone-dark p{color:rgba(248,250,245,.78)!important}
.tone-dark:hover,.feature-card-link:focus-visible .tone-dark,.faq-card-link:focus-visible .tone-dark{
  background:#fff!important;
  color:var(--text)!important;
  transform:translateY(-4px);
  box-shadow:0 22px 58px rgba(137,169,123,.24)!important;
}
.tone-dark:hover p,.feature-card-link:focus-visible .tone-dark p,.faq-card-link:focus-visible .tone-dark p{
  color:var(--muted)!important;
}
.feature-card-link,.faq-card-link{display:block;color:inherit;text-decoration:none}
.alternating-feature{min-height:340px}
.faq-grid-final{max-width:1050px;margin-inline:auto}
.faq-directive{display:inline-block;margin-top:.85rem;color:var(--green-deep);font-weight:900}
.tone-dark .faq-directive{color:var(--green)}
.tone-dark:hover .faq-directive{color:var(--green-deep)}
.footer-final{padding:64px 0 28px}
.footer-wide{width:min(1180px,calc(100% - 36px));margin-inline:auto}
.footer-brand-full{width:100%;max-width:none}
.footer-tagline{margin:1.1rem 0 1.6rem;color:var(--green);font-size:1.05rem;font-weight:900}
.footer-contact-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem}
.footer-contact-stack .footer-owner{color:var(--green);font-weight:900}
.footer-contact-stack a{display:block;margin:0;color:rgba(248,250,245,.82);font-weight:900}
.footer-contact-stack a:hover{color:var(--green)}
.footer-bottom-final{justify-content:flex-start}
.form-grid{display:grid;gap:1rem}
.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.consent-row{display:grid!important;grid-template-columns:auto 1fr!important;align-items:start!important;gap:.7rem!important}
.consent-row input{width:auto!important;margin-top:.3rem}
.form-privacy{font-size:.9rem;color:var(--muted)}
.assessment-steps div{align-items:start}
.assessment-steps strong{padding-top:.55rem}
@media(max-width:760px){
  .company-name{white-space:nowrap!important;font-size:.96em}
  .form-grid.two{grid-template-columns:1fr}
  .alternating-feature{min-height:260px}
  .footer-wide{width:min(100%,calc(100% - 28px))}
}

/* Approved website and Google image package integration */
.brand-visual-section{padding-top:clamp(26px,4vw,52px)}
.brand-visual{
  margin:0;
  overflow:hidden;
  border:1px solid rgba(137,169,123,.30);
  border-radius:28px;
  background:#050706;
  box-shadow:0 24px 72px rgba(5,8,5,.16);
}
.brand-visual img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.brand-visual figcaption{
  padding:.9rem 1.1rem;
  background:#fff;
  color:var(--muted);
  font-size:.92rem;
}
@media(max-width:760px){
  .brand-visual{border-radius:20px}
}

/* Real project photography integration */
.project-before-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.real-project-grid{display:grid;gap:1rem}
.real-project-grid.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.project-photo-card,.project-wide-photo{
  margin:0;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(137,169,123,.34);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 54px rgba(5,8,5,.10);
}
.project-photo-card img,.project-wide-photo img{
  display:block;
  width:100%;
  height:420px;
  object-fit:cover;
}
.project-wide-photo{margin-top:1rem}
.project-wide-photo img{height:auto;max-height:620px}
.project-photo-card figcaption,.project-wide-photo figcaption{
  padding:.85rem 1rem;
  color:var(--muted);
  font-size:.92rem;
  background:#fff;
}
.project-stage{
  position:absolute;
  z-index:2;
  top:12px;
  left:12px;
  padding:.45rem .72rem;
  border-radius:999px;
  background:rgba(5,7,6,.84);
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.04em;
}
.project-photo-card{
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.project-photo-card:hover{
  transform:translateY(-3px);
  border-color:var(--green);
  box-shadow:0 22px 62px rgba(137,169,123,.23);
}
.project-photo-landscape img{height:auto}
.project-gallery-link{margin-top:1.25rem}
@media(max-width:900px){
  .real-project-grid.three-up{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .project-before-after,.real-project-grid.three-up{grid-template-columns:1fr}
  .project-photo-card img{height:auto;max-height:620px}
}

/* Homepage consolidation and full-width footer rebuild */
.home-service-pair{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  max-width:1040px;
  margin-inline:auto;
}
.home-primary-service{min-height:330px}
.combined-guidance-grid{
  max-width:1040px;
  margin-inline:auto;
}
.combined-guidance-content{align-items:stretch}
.combined-guidance-content>.card{
  height:100%;
  padding:clamp(1.35rem,3vw,2.25rem);
}
.combined-guidance-content ul{
  margin:.9rem 0 0;
  padding-left:1.2rem;
}
.combined-guidance-content li{margin:.45rem 0}

.footer-rebuilt{
  width:100%;
  padding:0!important;
  background:#050706;
  border-top:1px solid rgba(137,169,123,.30);
}
.footer-main-shell,
.footer-legal-shell{
  width:min(1180px,calc(100% - 48px));
  margin-inline:auto;
}
.footer-main-shell{
  display:grid;
  grid-template-columns:minmax(260px,380px) minmax(0,1fr);
  align-items:center;
  gap:clamp(2.5rem,7vw,7rem);
  padding:clamp(54px,7vw,86px) 0;
}
.footer-logo-zone .footer-logo-card{
  display:inline-flex;
  margin:0;
  padding:.65rem;
  border-radius:18px;
  background:#fff;
}
.footer-logo-zone img{
  display:block;
  width:min(100%,287px);
  height:auto;
}
.footer-information-zone{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.footer-tagline{
  margin:0 0 .9rem!important;
  color:var(--green)!important;
  font-size:clamp(1.12rem,1.7vw,1.45rem)!important;
  font-weight:900!important;
  line-height:1.35;
}
.footer-contact-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:.9rem!important;
  margin:0!important;
}
.footer-contact-stack .footer-owner,
.footer-contact-stack a{
  display:block!important;
  margin:0!important;
  line-height:1.35!important;
  font-size:1.05rem;
  font-weight:900;
}
.footer-contact-stack .footer-owner{color:var(--green)!important}
.footer-contact-stack a{color:rgba(248,250,245,.84)!important}
.footer-contact-stack a:hover,
.footer-contact-stack a:focus-visible{color:var(--green)!important}
.footer-legal-shell{
  display:flex;
  justify-content:flex-start;
  padding:1.2rem 0 1.55rem;
  border-top:1px solid rgba(255,255,255,.10);
  color:rgba(248,250,245,.58);
  font-size:.88rem;
}
.footer-legal-shell .company-name{
  white-space:nowrap!important;
  color:inherit!important;
  font-weight:inherit!important;
}
@media(max-width:800px){
  .home-service-pair,
  .combined-guidance-grid{
    grid-template-columns:1fr!important;
  }
  .footer-main-shell{
    grid-template-columns:1fr;
    gap:2rem;
    width:min(100%,calc(100% - 32px));
  }
  .footer-legal-shell{
    width:min(100%,calc(100% - 32px));
  }
}
