/* The cinematic promise becomes a useful, editable proposal. Brand fonts stay inherited. */
.approach{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#faf9f6}
.approach-image{min-width:0;min-height:850px;isolation:isolate}
.approach-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% center}
.approach-image:after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,rgba(0,51,102,.42));pointer-events:none}
.approach-image .image-caption{z-index:1;left:clamp(24px,3vw,50px);right:24px;bottom:34px;display:flex;align-items:center;gap:26px;font:10px/1.6 var(--sans);letter-spacing:.22em;text-shadow:0 1px 8px #0005}
.approach-image .image-caption span{display:block;flex:0 1 100px;min-width:24px;border-top:1px solid #fff9}
.approach-copy{min-width:0;padding:clamp(54px,5vw,84px) clamp(32px,5.1vw,84px) clamp(46px,4.7vw,78px)}
.approach-copy>.eyebrow{display:flex;align-items:center;gap:18px;color:#8b653c;font-size:11px;letter-spacing:.24em;margin-bottom:27px}
.approach-copy>.eyebrow>span{width:48px;border-top:1px solid currentColor}
.approach-copy h2{font:400 clamp(40px,4.2vw,70px)/1.12 var(--serif);letter-spacing:-.035em;margin:0 0 29px;color:#003366}
.approach-copy h2>span{display:block}
.approach-copy h2>span+span{margin-top:5px}
.vision-copy.approach-copy>.approach-lead{font-size:clamp(16px,1.3vw,21px);line-height:1.65;color:#686c67;max-width:none;margin:0}
.approach-benefits{margin:31px 0 0;padding:0;list-style:none}
.approach-benefits li{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;gap:24px;border-top:1px solid #d5cbbd;padding:23px 0;margin:0}
.approach-benefits li:last-child{padding-bottom:0}
.approach-benefits .approach-icon{width:42px;height:42px;justify-self:start;stroke:#926b3e;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.approach-benefits li>div{border-left:1px solid #d5cbbd;padding-left:24px;min-width:0}
.approach-benefits h3{font:400 clamp(19px,1.6vw,26px)/1.25 var(--serif);letter-spacing:-.015em;margin:0 0 7px;color:#003366}
.approach-benefits p{font-size:clamp(13px,1vw,16px);line-height:1.55;color:#71736c;margin:0}
/* A compact bridge leads directly into the existing live comparison, not another title page. */
.proposal-proof-bridge{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 64px;padding:0 0 28px;border-bottom:1px solid #dedbd4}
.proposal-proof-bridge>p{flex-shrink:0;font:400 clamp(19px,1.65vw,26px)/1.4 var(--serif);letter-spacing:-.02em;margin:0;color:#003366}
.proposal-proof-bridge>p>span{color:#6a737d}
.proposal-proof-bridge nav{display:flex;justify-content:flex-end;gap:14px 24px;flex-wrap:wrap}
.proposal-proof-bridge nav a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 0;font-size:12px;line-height:1.5;color:#535a61;border-bottom:1px solid transparent;transition:color 220ms,border-color 220ms}
.proposal-proof-bridge nav a>span{display:inline-block;color:#956b49;transition:transform 220ms}
.proposal-proof-bridge nav a:focus-visible{outline:2px solid #ae804c;outline-offset:5px;color:#8b633d;border-bottom-color:#bba186}
.proposal-proof-bridge nav a:focus-visible>span{transform:translateY(3px)}
@media(hover:hover) and (pointer:fine){
 .proposal-proof-bridge nav a:hover{color:#8b633d;border-bottom-color:#bba186}
 .proposal-proof-bridge nav a:hover>span{transform:translateY(3px)}
}
@media(min-width:1800px){
 .approach-copy{padding-left:max(84px,calc((50vw - 690px)/2));padding-right:max(84px,calc((50vw - 690px)/2))}
}
@media(max-width:1100px){
 .approach-copy{padding:52px 34px}
 .approach-benefits li{grid-template-columns:42px minmax(0,1fr);gap:17px}
 .approach-benefits li>div{padding-left:17px}
 .approach-benefits .approach-icon{width:34px;height:34px}
 .proposal-proof-bridge{align-items:flex-start}
 .proposal-proof-bridge nav{column-gap:18px}
}
@media(max-width:900px){
 .approach{grid-template-columns:minmax(0,1fr)}
 .approach-image{min-height:0;height:clamp(280px,50vw,430px)}
 .approach-image>img{object-position:center 45%}
 .approach-copy{padding:52px max(25px,7vw) 56px}
 .approach-copy h2{font-size:clamp(39px,6.4vw,56px)}
 .approach-copy h2>span>br{display:none}
 .approach-copy h2>span{max-width:620px}
 .vision-copy.approach-copy>.approach-lead{font-size:17px;max-width:620px}
 .approach-benefits{max-width:640px;margin-top:30px}
 .approach-benefits li{grid-template-columns:52px minmax(0,1fr);gap:20px;padding:24px 0}
 .approach-benefits .approach-icon{width:38px;height:38px}
 .approach-benefits li>div{padding-left:20px}
 .approach-benefits h3{font-size:23px}
 .approach-benefits p{font-size:15px}
 .proposal-proof-bridge{display:block;margin-bottom:46px;padding-bottom:24px}
 .proposal-proof-bridge>p{font-size:23px;line-height:1.4}
 .proposal-proof-bridge>p>br{display:none}
 .proposal-proof-bridge nav{justify-content:flex-start;margin-top:19px;gap:4px 22px}
}
@media(max-width:500px){
 .approach-image{height:290px}
 .approach-image .image-caption{font-size:8px;letter-spacing:.18em;left:25px;bottom:22px;gap:18px}
 .approach-image .image-caption span{max-width:56px}
 .approach-copy{padding:43px 25px 46px}
 .approach-copy>.eyebrow{font-size:10px;margin-bottom:24px}
 .approach-copy h2{font-size:clamp(34px,9.6vw,45px);line-height:1.12;letter-spacing:-.03em;margin-bottom:24px}
 .approach-copy h2>span{max-width:350px}
 .vision-copy.approach-copy>.approach-lead{font-size:16px;line-height:1.65}
 .approach-benefits li{grid-template-columns:34px minmax(0,1fr);gap:15px;padding:23px 0}
 .approach-benefits li>div{padding-left:15px}
 .approach-benefits .approach-icon{width:31px;height:31px}
 .approach-benefits h3{font-size:20px;line-height:1.3}
 .approach-benefits p{font-size:14px;line-height:1.6}
 .proposal-proof-bridge>p{font-size:21px}
 .proposal-proof-bridge nav{column-gap:22px}
 .proposal-proof-bridge nav a{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
 .proposal-proof-bridge nav a,.proposal-proof-bridge nav a>span{transition:none}
 .proposal-proof-bridge nav a>span{transform:none!important}
}
