/* V2.8: scoped About Us content. Shared header and contact modal are unchanged. */
.v2 .about-main { color: #193158; font-family: Arial, Helvetica, sans-serif; }
.v2 .about-main h1, .v2 .about-main h2, .v2 .about-main h3 { font-weight: 700; }
.v2 .about-main h2 { font-size: clamp(27px, 2.83cqw, 35px); line-height: 1.18; letter-spacing: -.04em; }
.v2 .about-main h3 { font-size: clamp(18px, 1.7cqw, 21px); line-height: 1.25; letter-spacing: -.025em; }
.v2 .about-main p { font-size: clamp(14px, 1.15cqw, 16px); line-height: 1.75; color: #7285a1; }
.v2 .about-main .about-kicker { font-size: clamp(9px, .73cqw, 11px); line-height: 1.6; font-weight: 700; letter-spacing: .23em; color: #216ad1; text-transform: uppercase; margin-bottom: 1.3cqw; }
.v2 .about-main .pill { font-size: clamp(11px, .86cqw, 13px); min-height: 38px; padding: 1.15cqw 1.85cqw; }
.about-inner { width: 85.65%; margin: auto; }
.about-wide { width: 92.45%; margin: auto; }
.about-main section { scroll-margin-top: 24px; }
.about-hero { position: relative; isolation: isolate; min-height: 39.7cqw; background: #14263b; overflow: hidden; display: flex; align-items: center; }
.about-hero-art { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; }
.about-hero::before { content: ''; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, #12263beb 0%, #172d43c9 42%, #263a4e8f 72%, #25354555); }
.about-hero::after { content: ''; position: absolute; top: 0; bottom: 0; left: 64%; width: 36%; z-index: -1; background: #ffffff12; clip-path: polygon(22% 0, 100% 0, 100% 100%, 0 84%); }
.about-hero-copy { width: 86%; margin: auto; padding: 5.8cqw 0 7.3cqw; }
.v2 .about-hero .about-kicker { color: #accdf7; }
.v2 .about-hero h1 { font-size: clamp(34px, 4.25cqw, 52px); line-height: 1.12; letter-spacing: -.045em; color: white; max-width: 56%; }
.about-hero h1 span { color: #70b5ff; }
.v2 .about-hero p { color: #e0e8f0; max-width: 49%; margin-top: 1.8cqw; line-height: 1.8; }
.about-hero-actions { display: flex; gap: .8cqw; margin-top: 2cqw; flex-wrap: wrap; }
.about-main .pill.about-ghost { background: #ffffff1a; border: 1px solid #ffffff30; }
.about-hero-caption { position: absolute; right: 3.8%; bottom: 2.5cqw; font-size: clamp(8px,.76cqw,10px); letter-spacing: .03em; color: #e3eaf2; }
.about-overview { padding-block: 7cqw; display: grid; grid-template-columns: 1.1fr 1fr; gap: 6cqw; align-items: center; }
.about-overview p { margin-top: 1.5cqw; }
.about-concept { position: relative; padding: 2cqw; border: 1px solid #e0edff; border-radius: 2cqw; background: #eef5ff; }
.about-concept::before { content: ''; position: absolute; top: -1.8cqw; right: -1.3cqw; width: 7.4cqw; height: 7.4cqw; border-radius: 50%; background: #b8d7ff3b; pointer-events: none; }
.v2 .about-concept .about-kicker { color: #6483b2; font-size: clamp(8px,.7cqw,10px); }
.about-concept-banner { position: relative; background: linear-gradient(100deg,#153879,#1467d5); color: white; padding: 2cqw; border-radius: 1cqw; box-shadow: 0 8px 18px #215a9530; }
.about-concept-banner::after { content: '△'; position: absolute; right: 1.8cqw; bottom: 1.6cqw; color: #bbdbff; font-size: 2.8cqw; }
.v2 .about-concept-banner h3 { color: white; font-size: clamp(18px,1.65cqw,21px); }
.v2 .about-concept-banner p { color: #b5cffa; font-size: clamp(10px,.75cqw,11px); margin-top: .25cqw; }
.about-concept-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2cqw; margin-top: 1.2cqw; }
.about-concept-grid > div { padding: 1.4cqw; background: white; border: 1px solid #e8f0fb; border-radius: .9cqw; }
.about-concept-grid strong { display: block; font-size: clamp(10px,.85cqw,12px); line-height: 1.4; }
.about-concept-grid strong::before { content: ''; display: inline-block; width: .6em; height: .6em; margin-right: .5em; border-radius: 50%; background: #3f82ed; }
.about-concept-grid > div:nth-child(2) strong::before { background: #e5aa52; }
.about-concept-grid > div:nth-child(3) strong::before { background: #3bad77; }
.about-concept-grid > div:nth-child(4) strong::before { background: #8d74da; }
.v2 .about-concept-grid p { font-size: clamp(9px,.72cqw,11px); margin-top: .5cqw; line-height: 1.5; }
.v2 .about-concept .concept-note { font-size: clamp(9px,.67cqw,10px); color: #8096b5; margin-top: 1.3cqw; }
.about-mission { background: #f4f8fe; padding-block: 6.4cqw; }
.about-section-intro { margin-top: 1cqw; max-width: 60cqw; }
.about-mission-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4cqw; margin-top: 2.2cqw; }
.about-mission-card { padding: 2.7cqw; border-radius: 1.5cqw; background: white; border: 1px solid #e1edfc; min-height: 19.8cqw; }
.about-symbol { display: block; font-size: 27px; color: #3b81ed; margin-bottom: 1.7cqw; }
.about-mission-card:first-child { background: #173468; color: white; border-color: #315084; }
.about-mission-card:first-child .about-symbol { color: #b8d6ff; }
.v2 .about-mission-card p { margin-top: 1.2cqw; }
.v2 .about-mission-card:first-child p { color: #c7d6ee; }
.about-principles { padding-block: 6.5cqw 7cqw; }
.about-principle-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.3cqw; margin-top: 2.6cqw; }
.about-principle { padding: 2.1cqw; min-height: 18.5cqw; border: 1px solid #e1ebf8; border-radius: 1.5cqw; background: linear-gradient(#fcfdff,#f7faff); }
.about-principle-icon { display: grid; place-items: center; width: 3.8cqw; height: 3.8cqw; min-width: 40px; min-height: 40px; border-radius: 1cqw; color: #387de1; background: #e4efff; font-size: 23px; margin-bottom: 1.8cqw; }
.about-principle:nth-child(2) .about-principle-icon { color: #3da576; background: #e1f6ec; }
.about-principle:nth-child(3) .about-principle-icon { color: #d49e42; background: #fff2da; }
.v2 .about-principle h3 { font-size: clamp(17px,1.45cqw,20px); }
.v2 .about-principle p { font-size: clamp(13px,1cqw,15px); margin-top: 1cqw; line-height: 1.65; }
.about-approach { padding-block: 6.4cqw 7.2cqw; background: linear-gradient(105deg,#122b4f,#0a1d33); color: white; }
.v2 .about-approach h2 { max-width: 56cqw; }
.v2 .about-approach .about-kicker { color: #9dc5f4; }
.v2 .about-approach .about-section-intro { color: #acbed6; max-width: 68cqw; }
.about-approach-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1.1cqw; margin-top: 2.4cqw; }
.about-approach-card { background: #ffffff0d; border: 1px solid #ffffff12; padding: 2cqw 1.6cqw; border-radius: 1.4cqw; min-height: 16.3cqw; }
.v2 .about-approach-card .about-kicker { font-size: clamp(9px,.8cqw,11px); letter-spacing: .07em; margin-bottom: 2.7cqw; }
.v2 .about-approach-card h3 { font-size: clamp(15px,1.25cqw,18px); letter-spacing: -.02em; }
.v2 .about-approach-card p { font-size: clamp(12px,.95cqw,14px); color: #b1c1d5; margin-top: 1cqw; line-height: 1.65; }
.about-products { padding-block: 6.7cqw 7.2cqw; }
.about-products-heading { text-align: center; }
.v2 .about-products-heading p { margin-top: 1cqw; }
.about-product-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4cqw; margin-top: 2.7cqw; }
.about-product-card { border: 1px solid #dfeafb; border-radius: 1.8cqw; background: #f7faff; overflow: hidden; display: flex; flex-direction: column; }
.about-product-card:last-child { background: #f2faf6; }
.about-product-picture { position: relative; height: 16.7cqw; overflow: hidden; background: #e8f1f8; }
.about-product-picture img { width: 100%; height: 100%; object-fit: cover; display: block; }
.about-product-label { position: absolute; inset: auto 0 0; padding: 2.5cqw 1.5cqw 1.3cqw; background: linear-gradient(transparent,#1732428f); color: white; font-size: clamp(8px,.7cqw,10px); font-weight: 700; letter-spacing: .2em; }
.about-product-copy { padding: 2.3cqw; display: flex; flex-direction: column; flex: 1; align-items: flex-start; }
.v2 .about-product-copy .about-kicker { font-size: clamp(8px,.65cqw,10px); margin-bottom: .8cqw; }
.v2 .about-product-copy h3 { font-size: clamp(22px,1.9cqw,26px); color: #20447a; }
.v2 .about-product-copy .about-product-subtitle { color: #1c69d2; font-size: clamp(12px,.95cqw,14px); font-weight: 700; margin: .2cqw 0 .8cqw; }
.v2 .about-product-copy > p:not(.about-kicker):not(.about-product-subtitle) { margin-bottom: 3cqw; }
.about-product-copy .pill { margin-top: auto; }
.about-closing { background: linear-gradient(100deg,#e8f3ff,#f6fbff); padding-block: 4cqw; }
.about-closing .about-inner { display: flex; align-items: center; justify-content: space-between; gap: 2cqw; }
.v2 .about-closing .about-kicker { margin-bottom: .8cqw; }
.v2 .about-closing h2 { font-size: clamp(24px,2.3cqw,30px); color: #294f7e; }
.v2 .about-closing p { margin-top: .5cqw; font-size: clamp(13px,1cqw,15px); }
.about-closing-buttons { display: flex; gap: .8cqw; flex-shrink: 0; }
.v2 .about-main .pill.about-outline { background: white; color: #2461b4; border: 1px solid #c8ddfa; }
.site.v2.pricing-site .pricing-main { min-height: 65vh; display: grid; place-items: center; text-align: center; padding: 90px 24px; }
.v2 .pricing-main h1 { font-size: clamp(28px,3vw,38px); font-weight: 400; }
.v2 .pricing-main h2 { font-size: clamp(38px,4vw,52px); font-weight: 400; color: var(--blue); margin-top: 24px; }
.v2 .pricing-main p { font-size: 16px; line-height: 1.7; max-width: 540px; margin: 24px auto 0; color: var(--muted); }
@media (max-width:900px) {
 .about-inner, .about-wide { width: calc(100% - 40px); }
 .v2 .about-main h2 { font-size: 29px; }
 .v2 .about-main p { font-size: 16px; }
 .v2 .about-main .about-kicker { font-size: 10px; margin-bottom: 16px; }
 .v2 .about-main .pill { padding: 13px 20px; font-size: 12px; min-height: 44px; }
 .about-hero-copy { width: calc(100% - 40px); padding: 70px 0 90px; }
 .v2 .about-hero h1 { font-size: clamp(32px,7.5vw,52px); max-width: 650px; }
 .v2 .about-hero p { max-width: 520px; margin-top: 24px; }
 .about-hero-actions { margin-top: 28px; gap: 12px; }
 .about-hero-caption { font-size: 8px; bottom: 18px; right: 20px; left: 20px; text-align: right; }
 .about-overview { grid-template-columns: 1fr; padding-block: 64px; gap: 40px; }
 .about-overview p { margin-top: 20px; }
 .about-concept { padding: 22px; border-radius: 18px; }
 .about-concept-banner { padding: 22px; border-radius: 12px; }
 .v2 .about-concept-banner p { font-size: 12px; }
 .about-concept-grid { gap: 10px; margin-top: 14px; }
 .about-concept-grid > div { padding: 16px 12px; border-radius: 10px; }
 .about-concept-grid strong { font-size: 12px; }
 .v2 .about-concept-grid p { font-size: 11px; margin-top: 6px; }
 .v2 .about-concept .concept-note { font-size: 10px; margin-top: 14px; }
 .about-mission, .about-principles, .about-approach, .about-products { padding-block: 64px; }
 .about-section-intro, .v2 .about-approach h2, .v2 .about-approach .about-section-intro { max-width: none; margin-top: 18px; }
 .about-mission-grid, .about-principle-grid, .about-product-grid { grid-template-columns: 1fr; gap: 20px; margin-top: 30px; }
 .about-mission-card, .about-principle { padding: 28px; border-radius: 16px; }
 .about-symbol { margin-bottom: 22px; }
 .v2 .about-mission-card p, .v2 .about-principle p { margin-top: 16px; }
 .about-principle-icon { margin-bottom: 22px; border-radius: 10px; }
 .about-approach-grid { grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 30px; }
 .about-approach-card { padding: 24px; border-radius: 16px; }
 .v2 .about-approach-card .about-kicker { font-size: 10px; margin-bottom: 28px; }
 .v2 .about-approach-card h3 { font-size: 18px; }
 .v2 .about-approach-card p { font-size: 15px; margin-top: 16px; }
 .v2 .about-products-heading p { margin-top: 18px; }
 .about-product-card { border-radius: 18px; }
 .about-product-picture { height: auto; aspect-ratio: 2.7; }
 .about-product-label { font-size: 8px; padding: 28px 16px 12px; }
 .about-product-copy { padding: 26px; }
 .v2 .about-product-copy .about-kicker { font-size: 10px; margin-bottom: 12px; }
 .v2 .about-product-copy .about-product-subtitle { font-size: 13px; margin: 5px 0 16px; }
 .v2 .about-product-copy > p:not(.about-kicker):not(.about-product-subtitle) { margin-bottom: 28px; }
 .about-closing { padding-block: 44px; }
 .about-closing .about-inner { display: block; }
 .v2 .about-closing h2 { font-size: 26px; }
 .v2 .about-closing p { margin-top: 18px; }
 .about-closing-buttons { flex-wrap: wrap; gap: 12px; margin-top: 28px; }
}
@media (max-width:540px) { .about-approach-grid { grid-template-columns: 1fr; } }
