.v15-section .section-heading {max-width:1050px;margin-inline:auto}
.v15-section .section-heading>.eyebrow {display:block;font-size:11px;letter-spacing:.12em;color:#5483a0;margin-bottom:17px}
.v15-section .section-heading h2 {font-size:32px;line-height:1.4}
.v15-section .section-heading p {font-size:17px;line-height:1.8;margin-top:17px}
.need-grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.need-grid>a {position:relative;border:1px solid #dce6ef;border-radius:10px;padding:25px 20px;background:#f5f9fc;transition:transform .2s,border-color .2s}
.need-grid>a:hover {transform:translateY(-4px);border-color:#4b83a5}
.need-grid>a>span {font-size:12px;color:#7294ad}
.need-grid h3 {font-size:20px;line-height:1.4;margin:24px 0 13px}
.need-grid p {font-size:14px;line-height:1.7;color:#60758d;padding-bottom:15px}
.need-grid b {position:absolute;right:17px;bottom:14px;color:#5085a5}
.solution-pair {display:grid;grid-template-columns:1fr 1fr;gap:28px}
.solution-feature {position:relative;isolation:isolate;overflow:hidden;min-height:410px;border-radius:13px;background:#0c2546;color:#fff;display:flex;align-items:flex-end}
.solution-feature>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.solution-feature:after {content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071d3bf5 5%,#0d284bbb 48%,#0b244520 100%);z-index:-1}
.solution-feature>div {padding:35px}
.solution-feature .eyebrow {font-size:11px;letter-spacing:.1em;color:#c5dcea}
.solution-feature h3 {font-size:34px;margin:13px 0}
.solution-feature p {font-size:16px;line-height:1.85;color:#d9e4ef;max-width:480px}
.solution-feature .text-link {display:block;font-size:14px;margin-top:23px;color:#c8e2f3}
.home-cycle {list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.home-cycle li {position:relative;text-align:center;border:1px solid #d7e4ee;background:#f2f7fb;border-radius:10px;padding:28px 15px}
.home-cycle span {display:block;color:#7496af;font-size:12px;margin-bottom:12px}
.home-cycle strong {font-size:25px}
.home-cycle li:not(:last-child):after {content:'→';position:absolute;right:-23px;top:40%;color:#5589a5}
.about-link {display:block;text-align:center;margin-top:28px;color:#3b7195;font-size:15px}
.about-v15-hero {background-position:center}
.about-v15-hero .hero-copy {max-width:850px}
.about-v15-hero h1 {font-size:48px!important;line-height:1.3!important;max-width:820px;word-break:keep-all}
.about-v15-hero .hero-desc {max-width:720px}
.principle-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.principle-grid article {padding:33px;border:1px solid #dbe5ef;border-radius:12px;background:linear-gradient(135deg,#eef5fa,#fff)}
.principle-grid article>span {display:block;font-size:42px;color:#769db9;margin-bottom:28px}
.principle-grid small {font-size:10px;letter-spacing:.07em;color:#5e839f}
.principle-grid h3 {font-size:24px;line-height:1.4;margin:14px 0 18px}
.principle-grid p {font-size:16px;line-height:1.85;color:#5c7288}
.delivery-steps {padding:0;list-style:none;display:grid;gap:14px}
.delivery-steps li {display:grid;grid-template-columns:64px 1.4fr 1fr;gap:26px;align-items:center;padding:27px 30px;background:#fff;border:1px solid #d8e4ed;border-radius:10px}
.delivery-steps li>span {font-size:30px;color:#7097b2}
.delivery-steps h3 {font-size:23px;margin-bottom:8px}
.delivery-steps p {font-size:15px;color:#60768b;line-height:1.8}
.delivery-output {border-left:2px solid #b9d1e2;padding-left:25px}
.delivery-output small {display:block;font-size:11px;color:#6d8ca3;margin-bottom:10px}
.delivery-output strong {font-size:17px;line-height:1.6;font-weight:600}
.scope-note {font-size:13px;color:#718498;text-align:right;margin-top:20px}
.role-grid {display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
.role-grid article {border-top:3px solid #8fadc5;padding:22px 5px}
.role-grid h3 {font-size:20px;line-height:1.4;margin-bottom:15px}
.role-grid p {font-size:15px;line-height:1.8;color:#63798e}
.supporting-solutions {margin-top:35px;background:#edf4f9;padding:25px 30px;display:flex;gap:27px;align-items:center;flex-wrap:wrap;border-radius:10px}
.supporting-solutions p {flex:1;font-size:15px;color:#617b92}
.supporting-solutions a {font-size:17px;color:#235775;font-weight:600}
.company-contact {display:flex;gap:30px;align-items:center;justify-content:space-between;background:#fff;border:1px solid #d9e5ed;border-radius:12px;padding:35px}
.company-contact dl {display:grid;gap:18px}
.company-contact dl>div {display:grid;grid-template-columns:150px 1fr;gap:20px}
.company-contact dt {font-size:14px;color:#6d8397}
.company-contact dd {margin:0;font-size:17px;color:#193c59}
.company-contact .button {background:#12385b;color:white;white-space:nowrap}
a:focus-visible {outline:3px solid #77a9d1;outline-offset:4px}

.solution-feature h3 {color:#fff}
.about-v15-hero {background-image:linear-gradient(90deg,rgba(5,24,49,.83),rgba(10,35,63,.40)),url(../images/about-building.jpg)}

@media(max-width:1100px) {
	.need-grid {grid-template-columns:repeat(3,1fr)}
	.role-grid {grid-template-columns:repeat(3,1fr)}
	.principle-grid article {padding:25px}
	.principle-grid h3 {font-size:22px}
}

@media(max-width:760px) {
	.v15-section .section-heading h2 {font-size:27px}
	.v15-section .section-heading p {font-size:16px}
	.principle-grid,.solution-pair {grid-template-columns:1fr}
	.about-v15-hero h1 {font-size:36px!important}
	.delivery-steps li {grid-template-columns:40px 1fr;padding:24px;gap:15px}
	.delivery-output {grid-column:2}
	.company-contact {align-items:flex-start;flex-direction:column}
	.role-grid {grid-template-columns:repeat(2,1fr)}
	.home-cycle {gap:20px}
	.home-cycle strong {font-size:20px}
	.home-cycle li:not(:last-child):after {right:-18px}
	.solution-feature {min-height:390px}
	
	.need-grid {display: flex; flex-wrap: wrap; gap: 16px;}
	.need-grid a {flex: 1 1 33.333%;} 
}

@media(max-width:480px) {
	.need-grid>a {padding:20px 23px; flex: 100%;}
	.need-grid h3 {margin:10px 0; font-size: 18px;}
	.need-grid p {padding-bottom:0}
	.v15-section .section-heading h2 {font-size:25px}
	.v15-section .section-heading p {font-size:15px}
	.solution-feature>div {padding:27px}
	.solution-feature h3 {font-size:24px}
	.solution-feature p {font-size:15px}
	.home-cycle {grid-template-columns:1fr 1fr;gap:20px}
	.home-cycle li:after {display:none}
	.about-v15-hero h1 {font-size:31px!important}
	.principle-grid article {padding:27px}
	.delivery-steps h3 {font-size:18px}
	.delivery-steps li {padding:21px 17px}
	.delivery-output {padding-left:15px}
	.delivery-output strong {font-size:16px}
	.role-grid {grid-template-columns:1fr; gap: 10px;}
	.role-grid article {padding:19px 5px}
	.supporting-solutions {padding:23px;gap:20px}
	.supporting-solutions p {flex-basis:100%}
	.company-contact {padding:25px 20px}
	.company-contact dl>div {grid-template-columns:1fr;gap:7px}
	.scope-note {text-align:left;line-height:1.7}
	
}