.h-hero,.lt-hero,.r-hero{box-sizing:border-box;display:block;width:100%;max-width:none;margin:0;border-bottom:1px solid var(--v2-pale)}
.h-hero,.lt-hero{padding:var(--v2-hero-home-top) 48px 80px;background:#fff}.r-hero{padding:var(--v2-hero-paver-top) 48px 80px;background:var(--v2-cream)}
.h-hero>.h-hero-inner,.lt-hero>.lt-inner,.r-hero>.r-hero-layout{width:min(100%,var(--v2-wide));max-width:var(--v2-wide);min-width:0;margin-inline:auto}
:is(.entry-content,.editor-styles-wrapper) :is(.h-hero-layout,.lt-hero-layout,.r-hero-layout){display:grid;align-items:center;gap:56px;margin:0}
:is(.entry-content,.editor-styles-wrapper) .h-hero-layout{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr)}
:is(.entry-content,.editor-styles-wrapper) .lt-hero-layout{grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr)}
:is(.entry-content,.editor-styles-wrapper) .r-hero-layout{min-height:560px;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:60px}
.h-hero-copy,.lt-hero-copy,.r-hero-copy,.h-hero-media,.lt-hero-media,.r-hero-media{min-width:0}
.h-hero-copy>h1{max-width:18ch;font-size:60px;line-height:1.02;letter-spacing:-.024em;text-wrap:balance}
.lt-hero-copy>h1{max-width:18ch;font-size:54px;line-height:1.04;letter-spacing:-.024em;text-wrap:balance}
.route-location .lt-hero-copy>h1{font-size:56px;line-height:1.03}
.r-hero-copy>h1{max-width:18ch;font-size:64px;line-height:1.02;letter-spacing:-.024em;text-wrap:balance}
.h-hero-copy>p,.lt-hero-copy>p,.r-hero-copy>p{max-width:540px;margin-top:24px;font-size:19px;line-height:1.55}
.h-hero-media-slot,.lt-hero-media,.r-hero-media{min-height:420px;background:var(--v2-cream);overflow:hidden}.h-hero-media-slot{aspect-ratio:5/4;min-height:0;border:1px solid var(--v2-line)}.h-hero-media-slot img,.lt-hero-media img,.r-hero-media img{width:100%;height:100%;object-fit:cover}
.lt-hero-snapshot{padding:34px;background:var(--v2-cream);border:1px solid var(--v2-line)}
.lt-hero-snapshot-label,.lt-price-tier-name{color:var(--v2-forest);font:700 11px/1.4 var(--v2-mono);letter-spacing:.1em;text-transform:uppercase}
.lt-hero-snapshot-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:13px 0;border-top:1px solid var(--v2-line)}.lt-hero-snapshot-row p{margin:0}.lt-hero-snapshot-row p:last-child{text-align:right;font-weight:700;color:var(--v2-ink)}
.h-hero-proof-rail,.lt-hero-proof-rail,.r-hero-trust{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:24px;color:var(--v2-muted);font-size:13px}
.h-serv,.lt-serv,.h-map,.lt-map,.h-proc,.lt-proc,.faq,.lt-price,.r-proof,.r-process,.r-pricing,.r-selected-work,.r-near-you,.r-guarantee,.r-signature,.r-closing{padding:var(--v2-section) 0;border-top:1px solid var(--v2-pale)}
.h-serv,.lt-serv,.faq,.r-pricing,.r-selected-work{background:var(--v2-cream)}
.h-serv-grid,.lt-serv-grid,.h-gtee-grid,.process-grid,.r-services,.r-work{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}
.h-serv-card,.lt-serv-card,.h-gtee-card,.process-card,.r-image-card{min-width:0;padding:28px 26px;background:#fff;border:1px solid var(--v2-line)}
.h-serv-card{display:flex;flex-direction:column;gap:10px}.h-serv-card h3{font-size:22px;line-height:1.15}.h-serv-card .wp-block-button{margin-top:auto}.h-serv-card .wp-block-button__link{min-height:0;padding:8px 0;border:0;color:var(--v2-forest);font:600 12px/1 var(--v2-mono)}
.h-serv-card p,.lt-serv-card p{font-size:16px}.h-map-layout,.lt-map-layout,.r-proof-layout,.r-area-layout,.r-signature-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:28px;margin-top:34px}.h-map-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:24px}
.map-panel,.r-mapwrap{min-height:420px;background:#e9e6dd;border:1px solid var(--v2-line);overflow:hidden}.h-map .map-panel{min-height:480px}.project-proof{min-width:0}
.lt-proof-filters,.r-map-filters,.r-scope-chips{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}.lt-proof-filter,.r-map-filters button,.r-scope-chips>*{flex:none;margin:0;padding:8px 14px;border:1px solid var(--v2-line);background:#fff;font-size:13px;white-space:nowrap}
.faq-inner{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:64px}.faq-item{border-top:1px solid var(--v2-line)}.faq-item:last-child{border-bottom:1px solid var(--v2-line)}
.faq-item summary{padding:20px 24px;color:var(--v2-ink);font:700 18px/1.2 var(--v2-display);list-style:none;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item>p{margin:0;padding:0 24px 24px}.dark-cta{padding:70px 0;background:var(--v2-ink);color:#fff}.dark-cta h2{color:#fff}.dark-cta p{max-width:720px}
.lt-price-layout,.r-cutaway-layout,.r-tracker-layout,.r-value-layout,.r-diligence-lower{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.lt-price-tiers,.lt-price-lists,.r-cutaway-cards,.r-value-stats{display:grid;gap:14px}.lt-price-tier,.r-cutaway-card,.r-value-stat,.r-diligence-card{padding:22px;border:1px solid var(--v2-line);background:#fff}
.r-surface-band,.r-cutaway,.r-tracker,.r-value-context,.r-diligence,.r-paver-inspiration{padding:var(--v2-section) var(--v2-gutter);border-top:1px solid var(--v2-pale)}
:where(.r-surface-band-inner,.r-cutaway-inner,.r-tracker-layout,.r-value-context-inner,.r-diligence-inner,.r-paver-inspiration-inner){width:min(100%,var(--v2-wide));margin:auto}
.r-surface-header,.r-paver-inspiration-header{max-width:780px;margin-bottom:34px}.r-tracker-stage-rail,.r-value-rows{display:flex;gap:8px;overflow-x:auto}.r-value-rows{display:block}
/* .r-cutaway-tabs is a vertical CROSS-SECTION, not a row of tabs, despite the
   name. It was in the flex/overflow-x rule above, which laid its six
   .r-cutaway-layer children out side by side in a horizontal scroller: the
   labels collided with each other and the band grew a horizontal scrollbar.
   Every other declaration in the component contradicts that layout --
   .r-cutaway-layer is display:block with a min-height; each layer's swatch has
   its own min-height (60/96/24/80px) which represents that stratum's THICKNESS
   and only reads stacked; .r-cutaway-structure-label is writing-mode:vertical-rl,
   an axis label for a vertical stack; .r-cutaway-layer-trigger is a
   1fr/215px grid, i.e. a full-width horizontal bar; and the hover state is
   `inset 4px 0`, a left-edge highlight on a row.
   responsive.css already set display:block for this node at narrow widths, so
   the component was correct on mobile and broken on desktop only. Removed from
   the flex rule rather than overridden, so there is one declaration, not two
   fighting. .r-tracker-stage-rail keeps the flex row: it genuinely is one. */
.r-cutaway-tabs{display:block;overflow-x:visible}.r-value-row{display:grid;grid-template-columns:minmax(160px,210px) 1fr;gap:18px;padding:13px 0;border-top:1px solid var(--v2-pale)}
.mob-cta{display:none}
.v2-archive__header,.v2-card-grid,.v2-empty,.v2-not-found,.v2-single,.navigation.pagination{width:min(calc(100% - (2 * var(--v2-gutter))),var(--v2-wide));margin-inline:auto}.v2-archive__header,.v2-not-found,.v2-single__header{padding-top:var(--v2-section)}.v2-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:36px 0 var(--v2-section)}.v2-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--v2-line);background:#fff}.v2-card__media{display:block;aspect-ratio:4/3;overflow:hidden}.v2-card__media img{width:100%;height:100%;object-fit:cover}.v2-card__body{display:flex;flex:1;flex-direction:column;padding:22px 24px 24px}.v2-card__title{margin:0;font:700 20px/1.2 var(--v2-display);letter-spacing:-.01em;color:var(--v2-ink)}.v2-card__title a{color:inherit;text-decoration:none}.v2-card__title a:hover{text-decoration:underline}.v2-card__excerpt{margin:10px 0 0;color:var(--v2-body);font-size:16px;line-height:1.55}.v2-card__excerpt p:last-child{margin-bottom:0}.navigation.pagination{padding-bottom:var(--v2-section)}.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.page-numbers{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--v2-line);color:var(--v2-ink);font:600 12px/1 var(--v2-mono);letter-spacing:.04em;text-decoration:none}.page-numbers:hover{border-color:var(--v2-ink)}.page-numbers.current{border-color:var(--v2-ink);background:var(--v2-ink);color:#fff}.page-numbers.dots{border-color:transparent}.v2-not-found{padding-bottom:var(--v2-section);text-align:center}.v2-single{padding-bottom:var(--v2-section)}.v2-single__header{max-width:900px}.v2-single>.entry-content{max-width:var(--v2-content);padding-top:36px}

/* Home proof, guarantee, process, reviews and calculator bands. */
.route-home :where(.wp-block-group,.wp-block-columns),.paver-page :where(.wp-block-group,.wp-block-columns){max-width:none!important}
.route-home .h-trust,.route-home :where(.h-gtee-inner,.h-reviews-inner){width:min(100%,var(--v2-wide));max-width:var(--v2-wide)!important;margin-inline:auto!important}
/* The blanket max-width:none!important above also strips these two; restore them. */
.route-home > .dark-cta > .r-innerpad{max-width:900px!important}
.route-home .h-map-intro{max-width:740px!important}
/* Section headings keep their measure so they wrap as designed. */
.route-home .h-serv-inner > h2,.route-home .h-proc-inner > h2{max-width:680px}.route-home :where(.h-serv-inner,.h-map-inner,.h-proc-inner){width:min(calc(100% - (2 * var(--v2-gutter))),var(--v2-wide));max-width:var(--v2-wide)!important;margin-inline:auto!important}.route-home :where(.h-serv-grid,.h-map-layout,.process-grid,.h-gtee-grid){width:100%;max-width:none!important}
.route-home .h-map-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr)}.route-home .h-gtee-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h-map-intro,.lt-map-intro{max-width:740px;margin-bottom:34px}
.project-proof{padding:28px;border:1px solid var(--v2-line);background:#fff}
.project-proof-row{margin:0;padding:11px 0;border-top:1px solid var(--v2-pale);font-size:14px}
.project-proof-row:first-of-type{border-top:0;color:var(--v2-forest);font:700 10px/1.4 var(--v2-mono);letter-spacing:.1em;text-transform:uppercase}
.h-gtee,.h-reviews{padding:var(--v2-section) var(--v2-gutter);border-top:1px solid var(--v2-pale)}
:where(.h-gtee-inner,.h-reviews-inner){width:min(100%,var(--v2-wide));margin-inline:auto}
.h-gtee{background:var(--v2-cream)}.h-gtee-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:56px;row-gap:0}.h-gtee-inner>:not(.h-gtee-grid){grid-column:1}.h-gtee-inner>p:not(.eyebrow-label){max-width:740px;margin-top:22px}.h-gtee-inner>.r-cta{margin-top:28px}.h-gtee-inner>.h-gtee-grid{grid-column:2;grid-row:1/6}
.h-gtee-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;margin:0;gap:14px}.h-gtee-grid>.h-gtee-card{padding:24px 18px;background:#fff}.h-gtee-grid>.h-gtee-card:last-child{border-color:var(--v2-ink);background:var(--v2-ink);color:#fff}.h-gtee-card h3{font-size:30px}.h-gtee-card:last-child h3{color:#fff}.h-gtee-card p{margin:10px 0 0;color:var(--v2-forest);font:600 11px/1.3 var(--v2-mono);letter-spacing:.04em;text-transform:uppercase}.h-gtee-card:last-child p{color:var(--v2-sage)}
.h-trust-label,.lt-hero-proof-label{margin:0;color:var(--v2-muted);font:600 12px/1.45 var(--v2-body-font)}
.lt-hero-proof-divider{margin:0;color:var(--v2-sage)}
.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.process-card{padding:22px 0 0;border:0;border-top:2px solid var(--v2-sage);background:transparent}
.process-number{margin:0 0 18px;color:var(--v2-muted);font:600 11px/1.4 var(--v2-mono);letter-spacing:.08em}
.h-reviews{padding-block:88px;background:var(--v2-cream)}.h-reviews-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}.h-reviews-inner>h2{font-size:60px;line-height:.85}.h-reviews-inner>p{max-width:420px;margin:0}.route-home>.h-calc{display:none}
.route-home :is(.h-serv,.h-map) h2{font-size:44px;line-height:1.06}.route-home .h-gtee h2{font-size:46px;line-height:1.05}.route-home .h-proc h2{font-size:40px;line-height:1.08}.route-home>.dark-cta{padding:96px var(--v2-gutter);text-align:center}.route-home>.dark-cta>.r-innerpad{max-width:900px}.route-home>.dark-cta h2{font-size:44px;line-height:1.07}.route-home>.dark-cta p{margin-inline:auto}.route-home>.dark-cta .r-cta{justify-content:center}

/* Location/service pricing, nearby links and supporting sections. */
.lt-price-inner,.lt-areas-inner,.lt-related-inner{width:min(100%,var(--v2-wide));margin-inline:auto}
.lt-price-tiers{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px}
.lt-price-tier{display:flex;min-width:0;flex-direction:column;gap:10px;padding:26px}
.lt-price-tier-value{margin:0;color:var(--v2-ink);font:700 clamp(1.55rem,2.4vw,2.25rem)/1 var(--v2-display)}
.lt-price-tier-copy,.lt-price-tier-note,.lt-price-addon,.lt-price-included{margin:0;font-size:14px}
.lt-price-tier-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--v2-pale)}
.lt-price-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:14px 0;border-top:1px solid var(--v2-pale)}
.lt-areas,.lt-related,.related-band{padding:72px var(--v2-gutter);border-top:1px solid var(--v2-pale);background:var(--v2-cream)}
.lt-areas-links,.r-related-links{display:flex;flex-wrap:wrap;gap:10px}.lt-cta-contact,.r-cta-note,.r-closing-note{margin-top:18px;color:var(--v2-muted);font-size:14px}

/* Paver page band system and route-proven inner measures. */
.paver-page{background:#fff}.paver-page>.paver-band{display:block!important}.paver-band{position:relative;min-width:0;scroll-margin-top:calc(var(--v2-header-offset) + 8px)}
:where(.paver-band--01,.paver-band--03,.paver-band--06,.paver-band--09,.paver-band--11,.paver-band--13,.paver-band--15,.paver-band--17){background:var(--v2-cream)}
:where(.paver-band--02,.paver-band--04,.paver-band--05,.paver-band--07,.paver-band--08,.paver-band--10,.paver-band--12,.paver-band--14,.paver-band--16){background:#fff}
:where(.r-proof,.r-process,.r-pricing,.r-near-you,.r-signature,.r-guarantee,.r-selected-work,.r-area,.r-faq,.r-closing){padding:var(--v2-section) var(--v2-gutter)}
:where(.r-proof-inner,.r-process-inner,.r-pricing-inner,.r-near-you-inner,.r-signature-inner,.r-guarantee-inner,.r-selected-work-inner,.r-area-inner,.r-faq-inner,.r-closing-inner){width:min(100%,var(--v2-wide));margin-inline:auto}
.r-eyebrow{display:flex;align-items:center;gap:12px}.r-eyebrow-rule{display:inline-block;width:36px;height:2px;background:var(--v2-sage)}
.r-hero-image{height:100%;min-height:420px}.r-hero-media-note,.r-hero-nearby{margin-top:12px;color:var(--v2-muted);font-size:13px}
.r-proof-copy>p,.r-surface-intro,.r-diligence-intro,.r-guarantee-copy>p,.r-signature-copy>p{max-width:740px}
.r-proof-provider,.r-map-detail,.r-cred,.r-pricing-callout,.r-value-callout{padding:26px;border:1px solid var(--v2-line);background:#fff}
.r-cred-record,.r-maprow{display:grid;grid-template-columns:minmax(130px,.7fr) 1fr;gap:18px;margin:0;padding:12px 0;border-top:1px solid var(--v2-pale)}
.r-cred-note,.r-map-detail-note,.r-value-source-note{margin-top:14px;color:var(--v2-muted);font-size:13px}

/* Cutaway: layered system at desktop, readable stacked disclosure on phones. */
.r-cutaway-stack{min-width:0;border:1px solid var(--v2-line);background:#fff}
.r-cutaway-structure-label,.r-cutaway-detail-eyebrow,.r-cutaway-detail-label,.r-tracker-row-label,.r-price-framework-label{color:var(--v2-muted);font:600 10px/1.4 var(--v2-mono);letter-spacing:.1em;text-transform:uppercase}
.r-cutaway-structure-label{padding:14px 18px;border-bottom:1px solid var(--v2-pale)}
.r-cutaway-layer{position:relative;min-width:0;border-top:1px solid rgb(0 0 0/.08)}
.r-cutaway-layer-trigger{display:grid;width:100%;min-height:44px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;padding:8px 14px;border:0;background:transparent;color:var(--v2-ink);text-align:left;cursor:pointer}
.r-cutaway-number{font:600 10px/1 var(--v2-mono)}.r-cutaway-layer-label{display:flex;justify-content:space-between;gap:12px}.r-cutaway-layer-label small{color:var(--v2-muted)}
.r-cutaway-layer--01{background:#cbbda4}.r-cutaway-layer--02{background:#e2d7c0}.r-cutaway-layer--03{background:#b8b3a7}.r-cutaway-layer--04{background:#b0ac9f}.r-cutaway-layer--05{background:#aea89b}.r-cutaway-layer--06{background:#806f58}
.r-cutaway-layer:is(:hover,:focus-within,.is-active){box-shadow:inset 4px 0 var(--v2-forest)}
.r-cutaway-detail{padding:28px;border:1px solid var(--v2-line);background:#fff}.r-cutaway-detail-state[hidden],.r-cutaway-detail-state:not(.is-active){display:none}.r-cutaway-detail-state.is-active{display:block}
.r-cutaway-depth{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid var(--v2-pale)}
.r-cutaway-callout,.r-tracker-callout{margin-top:22px;padding:18px;border-left:3px solid var(--v2-sage);background:var(--v2-cream)}
.r-cutaway-cards{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}.r-cutaway-card{height:100%}

/* Surface cards, process rail and project tracker. */
.r-surface-media{aspect-ratio:4/3;overflow:hidden;background:var(--v2-cream)}.r-surface-media img{width:100%;height:100%;object-fit:cover}
.r-work-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.r-process-rail{position:relative}.r-procrow{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(220px,.55fr);gap:24px;padding:26px 0;border-top:1px solid var(--v2-pale)}
.r-procnode{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--v2-sage);border-radius:50%;color:var(--v2-forest);font:700 11px/1 var(--v2-mono)}
.r-procbody h3{margin-bottom:8px}.r-procaside{color:var(--v2-muted);font-size:14px}
.r-tracker-layout{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr)}
.r-tracker-checks{padding:0;list-style:none}.r-tracker-checks li{position:relative;padding:9px 0 9px 26px;border-top:1px solid var(--v2-pale)}.r-tracker-checks li::before{position:absolute;left:0;content:"✓";color:var(--v2-forest);font-weight:700}
.r-tracker-visual{min-width:0;border:1px solid var(--v2-line);background:#fff}.r-tracker-visual-header,.r-tracker-context,.r-tracker-status,.r-tracker-message,.r-tracker-records-heading{padding:16px 18px;border-bottom:1px solid var(--v2-pale)}
.r-tracker-visual-header,.r-tracker-status,.r-tracker-records-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.r-tracker-visual-title{margin:0;font-weight:700;color:var(--v2-ink)}
.r-tracker-logo-slot,.r-tracker-visual-badge{flex:none}.r-tracker-status-dot{width:9px;height:9px;border-radius:50%;background:var(--v2-sage)}
.r-tracker-stage-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;padding:18px}.r-tracker-stage{position:relative;min-width:0;text-align:center}.r-tracker-stage::before{position:absolute;top:11px;right:50%;left:-50%;height:1px;background:var(--v2-line);content:""}.r-tracker-stage:first-child::before{left:50%}.r-tracker-stage span{position:relative;z-index:1;display:flex;width:23px;height:23px;align-items:center;justify-content:center;margin:auto;border:1px solid var(--v2-line);border-radius:50%;background:#fff;font:600 9px/1 var(--v2-mono)}.r-tracker-stage.is-current span{border-color:var(--v2-forest);background:var(--v2-forest);color:#fff}.r-tracker-stage strong{display:block;margin-top:8px;font-size:11px}.r-tracker-stage-note,.r-tracker-actor{display:block;color:var(--v2-muted);font-size:10px}
.r-tracker-update{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;padding:18px}.r-tracker-media-slot{min-height:80px;background:var(--v2-cream)}.r-tracker-update-time{color:var(--v2-muted);font-size:11px}.r-tracker-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.r-tracker-record{padding:14px 18px;border-top:1px solid var(--v2-pale)}.r-tracker-message{display:flex;gap:12px}.r-tracker-message-icon{color:var(--v2-forest)}

/* Pricing, value, diligence, guarantee, area, FAQ and closing bands. */
.r-price-framework{padding:28px;border:1px solid var(--v2-line);background:#fff}.r-pricebar{margin-top:22px}.r-pricebar-track{position:relative;height:14px;background:var(--v2-line)}.r-pricebar-fill{position:absolute;inset:0 auto 0 0;width:68%;background:var(--v2-sage)}.r-pricebar-axis,.r-pricebar-axis-labels{display:flex;justify-content:space-between;gap:14px;margin-top:8px;color:var(--v2-muted);font-size:11px}
.r-value-chart{padding:26px;border:1px solid var(--v2-line);background:#fff}.r-value-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.r-value-stat strong{display:block;color:var(--v2-ink);font:700 24px/1.1 var(--v2-display)}
.r-diligence-header{display:grid;grid-template-columns:1.15fr 1.5fr .95fr .85fr;background:var(--v2-ink);color:#fff}.r-diligence-header>*{margin:0;padding:12px 16px}.r-diligence-row{display:grid;grid-template-columns:1.15fr 1.5fr .95fr .85fr;border-bottom:1px solid var(--v2-pale)}.r-diligence-row>*{margin:0;padding:14px 16px;border-left:1px solid var(--v2-pale)}.r-diligence-row>:first-child{border-left:0}.r-diligence-marker{color:var(--v2-forest);font-weight:700}.r-diligence-card-action{margin-top:18px}
.r-guarantee-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:40px}.r-guarantee-clauses{border:1px solid var(--v2-line);background:#fff}.r-guarantee-clause{padding:18px;border-top:1px solid var(--v2-pale)}.r-guarantee-clause:first-child{border-top:0}
.r-signature-media,.r-area-map{min-height:340px;background:var(--v2-cream);overflow:hidden}

/* Contain Leaflet's z-index ladder inside the map.
   leaflet.css ranks its panes and controls from 100 up to 1000
   (.leaflet-top/.leaflet-bottom); the fixed .r-header is z-index 60
   (shell.css:1). With no stacking context between them, those panes and the
   +/- zoom controls are siblings of the header in the ROOT stacking context and
   paint straight over it -- the map covered the main menu. overflow:hidden does
   NOT create a stacking context; isolation:isolate does.

   Applied at .sequoia-provider-map, the provider's own map root, because that
   is the ONE node every Leaflet instance on the site mounts inside. The band
   wrappers are not: /service-areas/ uses .hl-map, the paver hub uses
   .r-area-map and .r-mapwrap, the map+proof bands use .map-panel. Isolating the
   band classes fixed some maps and missed others -- measured: the zoom control
   still painted over the header on /service-areas/. One rule at the shared root
   covers every present and future band.

   Preferred to raising the header above 1000, which would only start a z-index
   escalation with the next third-party widget. */
.sequoia-provider-map{isolation:isolate}.r-signature-media img{width:100%;height:100%;object-fit:cover}.r-area-copy{min-width:0}.r-area-chip-group{display:flex;flex-wrap:wrap;gap:8px}.r-area-chip{padding:7px 11px;border:1px solid var(--v2-line);background:#fff;font-size:12px}.r-area-county{margin-top:18px;color:var(--v2-muted);font-size:13px}
.r-faq-list{max-width:860px}.r-faq-list details{border-top:1px solid var(--v2-line)}.r-faq-list summary{padding:20px 36px 20px 0;color:var(--v2-ink);font-family:var(--v2-display);font-weight:700;cursor:pointer}.r-faq-list details>p{padding-right:36px}.r-closing{background:var(--v2-ink);color:#fff}.r-closing h2{color:#fff}.r-closing-inner{max-width:780px}

/* Small structural contracts whose children carry the visible treatment. */
.faq-intro{max-width:360px}.faq-list{min-width:0}.faq-plus{float:right;color:var(--v2-sage)}
.lt-hero-snapshot-rows{margin-top:16px}.lt-hero-snapshot-lead{color:var(--v2-muted);font-size:14px}.lt-hero-snapshot-unit{font-size:.65em}.lt-nearby{background:var(--v2-cream)}
.r-2col{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:52px}.r-3to1{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.r-conn{border-top:1px solid var(--v2-pale)}
.r-cutaway-detail-states,.r-cutaway-layer-copy{min-width:0}.r-cutaway-layer-leader{height:1px;flex:1;background:rgb(23 22 15/.24)}.r-cutaway-swatch{display:block;min-height:28px}
.r-map-label,.r-pricebar-label{color:var(--v2-muted);font:600 10px/1.4 var(--v2-mono);letter-spacing:.08em;text-transform:uppercase}
.r-scope-section{padding-top:24px}.r-scope-chips--seven,.r-scope-chips--fifteen{max-width:100%}.r-tablewrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.r-tablewrap :is(.r-diligence-header,.r-diligence-row){max-width:none}
.r-tracker-copy,.r-tracker-update-copy{min-width:0}.r-tracker-media-fallback{display:grid;min-height:100%;place-items:center;color:var(--v2-muted);font-size:12px}.r-tracker-message-action{margin-left:auto}.r-tracker-update-secondary{border-top:1px solid var(--v2-pale)}
.svc-proof{background:#fff}

/* Exact Paver source geometry, scoped to the 17 canonical bands. */
.paver-page>.paver-band:not(.r-hero){padding:104px 48px;border-top:1px solid var(--v2-pale)}
.paver-page>.paver-band--02{padding-block:58px}.paver-page>.paver-band--17{padding-block:120px}
.paver-page :where(.r-hero-layout,.r-innerpad,.r-cutaway-inner,.r-surface-band-inner,.r-paver-inspiration-inner,.r-process-inner,.r-tracker-layout,.r-pricing-inner,.r-near-you-inner,.r-value-context-inner,.r-signature-inner,.r-diligence-inner,.r-selected-work-inner,.r-guarantee-inner,.r-faq-inner,.r-area-inner,.r-closing-inner){width:min(100%,var(--v2-wide));max-width:var(--v2-wide)!important;margin-inline:auto!important}.paver-page :where(.r-proof-layout,.r-cutaway-layout,.r-services,.r-process-rail,.r-maprow,.r-work,.r-guarantee-layout,.r-signature-layout){width:100%;max-width:none!important}
.paver-page .r-3to1,.paver-page .r-work{grid-template-columns:repeat(3,minmax(0,1fr))}.paver-page :is(.r-tracker-layout,.r-value-layout,.r-signature-layout,.r-diligence-lower){grid-template-columns:repeat(2,minmax(0,1fr))}.paver-page .r-guarantee-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.7fr)}
.paver-page .r-proof-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:52px;margin-top:0}.paver-page .r-cred{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:40px;padding-top:32px;border-top:1px solid var(--v2-pale)}.paver-page .r-cred>.r-cred-note{grid-column:1/-1}
.paver-page .r-cutaway-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:44px;margin-top:44px;padding:36px;border:1px solid var(--v2-line);background:#fff}.paver-page .r-cutaway-cards{gap:24px}
.paver-page .r-services{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.paver-page .r-image-card{padding:0;overflow:hidden}.paver-page .r-image-card>:not(.r-surface-media){margin-inline:24px}.paver-page .r-image-card>:last-child{margin-bottom:24px}
.paver-page .r-process-rail{margin-top:44px}.paver-page .r-procrow{position:relative;grid-template-columns:60px minmax(0,1fr) minmax(250px,330px);gap:26px 32px}.paver-page .r-procrow>.r-procnode{position:static;justify-content:center}.paver-page .r-procrow>.r-procnode>.r-conn{position:absolute;top:56px;bottom:0;left:30px;width:2px;height:auto;border:0;background:#d8d2c4;transform:translateX(-50%)}
.paver-page .r-pricebar{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:24px;padding:18px 0;border-top:1px solid var(--v2-pale)}.paver-page .r-pricebar-track{height:40px}
.paver-page .r-maprow{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:stretch;gap:24px}.paver-page .r-mapwrap{min-height:560px}
.paver-page .r-faq-list{max-width:none}.paver-page .r-faq-list details{border-color:var(--v2-line)}.paver-page .r-faq-list summary{font-size:18px;line-height:1.2}
.paver-page>.r-closing{background:var(--v2-cream);color:var(--v2-body)}.paver-page>.r-closing h2{color:var(--v2-ink)}

/* Tier-1 repairs. */

/* Home reviews band: the reference sets the five stars directly above the
   summary paragraph in the 420px column beside the 5.0 figure. */
.route-home .h-reviews-inner>.h-reviews-summary{max-width:420px!important}
.h-reviews-inner>.h-reviews-summary>p{margin:0}
.h-reviews-summary .wp-block-sequoia-rating-stars{margin:0 0 8px}
.h-reviews-summary .wp-block-sequoia-rating-stars>div:first-child,
.h-reviews-summary .wp-block-sequoia-rating-stars>p{display:none}
.h-reviews-summary .wp-block-sequoia-rating-stars .stars{margin-top:0;font-size:20px}
.h-reviews-summary .wp-block-sequoia-rating-stars .stars::before{letter-spacing:3px}

/* Case-study archive cards carry three fields the template used to drop. */
.sv2-case-archive .sv2-grid>article>a{display:flex;flex-direction:column;height:100%}
.sv2-case-archive .sv2-grid .sv2-case-card__body{display:flex;flex:1;flex-direction:column;padding:22px 24px 24px}
.sv2-case-archive__lede{margin:14px 0 0;max-width:660px;font:400 18px/1.55 var(--v2-body-font);color:var(--v2-body)}
.sv2-case-archive__note{margin:28px 0 0;font:400 12.5px/1.5 var(--v2-body-font);color:var(--v2-muted)}
.sv2-case-archive .sv2-case-card__chip{margin:0 0 10px;color:var(--v2-forest);font:500 11px/1 var(--v2-mono);letter-spacing:.06em}/* Owner review 2026-08-25: chips rendered SAN BRUNO - MODERN MEDITERRANEAN while the
   filter buttons directly above them read "Modern Mediterranean". Same taxonomy terms,
   two casings. The uppercase transform is dropped so the badge shows the term as stored;
   size and tracking are nudged to stay legible without the caps. */
.sv2-case-archive .sv2-case-card__body>h2{margin:0;padding:0;font:700 20px/1.2 var(--v2-display);letter-spacing:-.01em;color:var(--v2-ink)}
/* This row held only "View case study" until the investment figure started
   rendering; in a 3-up grid a six-figure range and the CTA no longer fit one
   line, so the range broke across two lines and the CTA's arrow orphaned onto
   its own. The row wraps as a unit instead, and neither child breaks
   internally. */
.sv2-case-archive .sv2-case-card__foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;margin-top:auto;padding-top:16px}
.sv2-case-archive .sv2-case-card__investment{font:800 22px/1.1 var(--v2-display);letter-spacing:-.01em;color:var(--v2-ink);white-space:nowrap}
.sv2-case-archive .sv2-case-card__more{margin-left:auto;color:var(--v2-forest);font:600 12px/1 var(--v2-mono);letter-spacing:.04em;white-space:nowrap}
