
/* VANTAGE APPROVED EDITORIAL REFINEMENTS · 19 October 2026
   Use original imagery; controlled hero copy; aligned snap carousels;
   under-headline introductions; full-width balanced philosophy;
   exact approved Foundational Review / See Shape Scale sequence. */
.hero {min-height: min(850px, 89vh);}
.hero-content {padding-top: clamp(70px, 9vh, 114px);}
.hero h1 {font-size:clamp(48px,5.4vw,88px);line-height:1.07;max-width:860px;letter-spacing:-.045em;}
.hero-promise {font-size:clamp(17px,1.25vw,21px);line-height:1.4;margin:20px 0 14px;max-width:660px;}
.hero-summary-final {max-width:590px;line-height:1.65;font-size:clamp(14px,1.03vw,17px);margin-bottom:0;}
.hero-actions {margin-top:27px;}
/* Keep both descriptions immediately beneath their corresponding headings. */
#services .section-heading, #industries .section-heading {display:block;margin-bottom:29px;}
#services .section-heading h2, #industries .section-heading h2 {max-width:870px;margin:0 0 16px;}
#services .section-heading .section-intro-under, #industries .section-heading .section-intro-under {font-size:clamp(14px,1.16vw,16px);line-height:1.7;max-width:780px;margin:0;color:#48534f;}
/* No full-viewport left gutter or visual jump: each section's first card
   begins at the content edge and the next card stays partially visible. */
.inset-cards #services .carousel, .inset-cards #industries .carousel {width:100%;max-width:100%;margin-left:0;min-width:0;}
.inset-cards #services .carousel-track, .inset-cards #industries .carousel-track {padding:0 0 18px;scroll-padding-inline:0;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;}
.inset-cards #services .carousel-controls, .inset-cards #industries .carousel-controls {padding-right:0;display:flex;align-items:center;gap:9px;}
.carousel-count {font-size:11px;letter-spacing:.12em;color:var(--ink);font-weight:700;margin-right:11px;min-width:57px;}
.inset-cards .carousel-track .carousel-card{scroll-snap-align:start;scroll-snap-stop:normal;flex:0 0 clamp(250px,34%,358px);}
.inset-cards .carousel-track .carousel-card:last-child{margin-right:0}
/* Three equally sized, comfortable philosophy panels. */
.principles-band .container {max-width:var(--container-width, 1540px);}
.principles-band .value-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%;max-width:none;margin:35px 0 0;gap:18px;align-items:stretch;}
.principles-band .value-grid>div {min-width:0;max-width:none;min-height:245px;padding:24px 23px 26px;border:1px solid #afc1b1;border-top:2px solid #667e6c;background:rgba(255,255,255,.19);display:flex;flex-direction:column;}
.principles-band .value-grid>div span {font-family:inherit;font-size:10px;letter-spacing:.13em;font-weight:700;}
.principles-band .value-grid h3 {font-family:inherit!important;font-size:clamp(19px,1.8vw,26px)!important;line-height:1.3!important;letter-spacing:-.025em;font-weight:650!important;margin:19px 0 13px;max-width:none;}
.principles-band .value-grid p {font-family:inherit!important;max-width:none;font-size:14px;line-height:1.7;margin:0;}
.principles-band .principles-close{font-family:inherit;font-size:clamp(22px,2.3vw,30px);margin-top:32px;}
/* Restore previously reviewed approved home-page approach component. */
.approved-approach{background:#171b1a;color:#eee;padding:75px 0 88px;}
.approved-approach .approach-heading {max-width:790px;}
.approved-approach .eyebrow{font-size:10px;letter-spacing:.15em;color:#babfbd;}
.approved-approach .approach-heading h2 {font-family:Georgia,serif;font-weight:400;font-size:clamp(35px,4.05vw,64px);line-height:1.1;letter-spacing:-.04em;margin:15px 0 16px;color:#f3f3ef;}
.approved-approach .approach-subtitle {font-size:15px;line-height:1.75;color:#bfc4c2;max-width:690px;margin:0;}
.approved-approach .foundation-panel{display:grid;grid-template-columns:54px minmax(0,1fr);gap:16px;border:1px solid #3d4240;background:#202322;margin-top:30px;padding:24px;max-width:100%;}
.approved-approach .foundation-zero{font-family:Georgia,serif;font-size:34px;line-height:1;color:#c0c4c1;}
.approved-approach .foundation-label{font-size:10px;letter-spacing:.13em;color:#d8dad7;font-weight:700;margin:0 0 9px;}
.approved-approach .foundation-content h3{font-size:19px;line-height:1.35;letter-spacing:-.02em;font-weight:650;margin:0 0 8px;color:#f1f1ec;}
.approved-approach .foundation-content>p:not(.foundation-label){font-size:14px;line-height:1.65;color:#c1c5c2;max-width:920px;margin:0 0 5px;}
.approved-approach .foundation-content .foundation-footnote{font-size:12px!important;margin-top:8px!important;}
.approved-approach .engagement-divider{display:flex;align-items:center;gap:13px;margin:24px 0;font-size:10px;letter-spacing:.14em;color:#d6d8d5;white-space:nowrap;}
.approved-approach .engagement-divider:before,.approved-approach .engagement-divider:after{content:'';height:1px;background:#3f4744;flex:1;}
.approved-method-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.approved-method-card{min-width:0;background:#222423;border:1px solid #3c4240;padding:24px 21px 22px;display:flex;flex-direction:column;min-height:370px;}
.approved-method-card .method-card-kicker{font-size:10px;color:#bdc2bf;letter-spacing:.1em;margin:0;}
.approved-method-card h3{font-family:Georgia,serif;font-size:clamp(34px,3vw,47px);line-height:1.1;font-weight:400;color:#f3f4f0;margin:24px 0 14px;}
.approved-method-card>p:not(.method-card-kicker){font-size:14px;line-height:1.7;color:#c0c5c1;max-width:340px;flex:1;margin:0 0 14px;}
.approved-method-tags{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px;}
.approved-method-tags span{border:1px solid #454d49;padding:8px 10px;color:#f1f2ed;font-size:11px;font-weight:650;}
.approved-method-card .method-outcome{border-top:1px solid #4b504e;padding-top:18px;}
.approved-method-card .method-outcome strong{font-size:12px;color:#e5e8e5;font-weight:700;}
.approved-method-card .method-outcome p{font-size:13px;line-height:1.6;color:#bcc3bd;margin:10px 0 0;}
.approved-approach .approach-bottom{border-top:1px solid #484d4a;margin-top:25px;padding-top:23px;}
.approved-approach .approach-bottom h3{font-family:Georgia,serif;color:#e0e1dd;font-size:clamp(19px,2vw,27px);line-height:1.38;letter-spacing:-.02em;font-weight:400;margin:0 0 11px;}
.approved-approach .approach-bottom p{color:#b7beb8;font-size:13px;line-height:1.55;margin:0 0 23px;}
.approved-approach .approach-bottom .button-light{background:#efefec;color:#1c2522;border:0;}
@media(max-width:900px){.principles-band .value-grid{grid-template-columns:1fr 1fr!important}.approved-method-grid{grid-template-columns:1fr}.approved-method-card{min-height:0}.approved-method-card>p:not(.method-card-kicker){max-width:none}.hero{min-height:700px}}
@media(max-width:650px){
.hero{min-height:670px}.hero-content{padding-top:83px}.hero h1{font-size:clamp(42px,10vw,62px);max-width:100%}.hero-promise{font-size:16px;margin:18px 0 12px}.hero-summary-final{font-size:14px;max-width:100%}
.inset-cards .carousel-track .carousel-card{flex-basis:min(82vw,350px)}
.principles-band .value-grid{grid-template-columns:1fr!important}
.principles-band .value-grid>div{min-height:0}
.approved-approach{padding:55px 0}.approved-approach .foundation-panel{grid-template-columns:38px 1fr;padding:17px 12px;gap:10px}.approved-method-card{padding:19px 18px}.approved-approach .engagement-divider{font-size:9px;gap:6px;}
}
@media(prefers-reduced-motion:reduce){.inset-cards #services .carousel-track,.inset-cards #industries .carousel-track{scroll-behavior:auto}}
