.ab-sol { color:#1a2525; background:#fafaf8; font-family:Inter,sans-serif; }
.ab-sol * { box-sizing:border-box; }
.ab-sol .ab-home-hero__inner { max-width:1180px; }
.ab-sol .ab-home-hero__lead { max-width:710px; }
.ab-sol__section { padding:clamp(72px,8vw,116px) 0; }
.ab-sol__section--warm { background:#f0eee9; }
.ab-sol__section--dark { background:#192a2b; color:#fff; }
.ab-sol__section--dark .ab-sol__text,.ab-sol__section--dark .ab-sol__intro { color:#cbd3d1; }
.ab-sol__shell { width:min(calc(100% - clamp(40px,7vw,112px)),1320px); margin:0 auto; }
.ab-sol__eyebrow { margin:0 0 17px; color:#a48762; font-size:11px; font-weight:700; letter-spacing:.22em; line-height:1.5; text-transform:uppercase; }
.ab-sol__section--dark .ab-sol__eyebrow { color:#d6bb99; }
.ab-sol__title { margin:0; font-family:Raleway,sans-serif; font-size:clamp(30px,3.3vw,44px); line-height:1.16; letter-spacing:-.04em; font-weight:800; color:inherit; }
.ab-sol__head { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.46fr); gap:clamp(30px,6vw,100px); align-items:end; margin-bottom:clamp(34px,5vw,58px); }
.ab-sol__intro { margin:0; font-size:clamp(16px,1.6vw,20px); line-height:1.6; color:#4e5b5b; }
.ab-sol__text { margin:0 0 18px; font-size:15px; line-height:1.75; color:#5b6969; }
.ab-sol__text:last-child { margin-bottom:0; }
.ab-sol__split { display:grid; grid-template-columns:1.04fr .96fr; gap:clamp(35px,6vw,100px); align-items:center; }
.ab-sol__split--reverse { grid-template-columns:.96fr 1.04fr; }
.ab-sol__split--reverse .ab-sol__media { order:2; }
.ab-sol__split-copy { max-width:580px; }
.ab-sol__split-copy .ab-sol__title { margin-bottom:26px; }
.ab-sol__media { margin:0; overflow:hidden; background:#d8dedb; aspect-ratio:5/4; }
.ab-sol__media--portrait { aspect-ratio:4/5; }
.ab-sol__media img { display:block; width:100%; height:100%; object-fit:cover; }
.ab-sol__microfacts { display:flex; flex-wrap:wrap; gap:12px 28px; padding-top:27px; margin-top:29px; border-top:1px solid #d7ddda; }
.ab-sol__microfacts span { font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.ab-sol__cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #cdd3d0; }
.ab-sol__cards--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ab-sol__cards--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ab-sol__card { min-width:0; padding:27px clamp(14px,2.4vw,30px) 30px; border-right:1px solid #cdd3d0; border-bottom:1px solid #cdd3d0; }
.ab-sol__card:last-child { border-right:none; }
.ab-sol__cards--three .ab-sol__card:nth-child(3n),.ab-sol__cards--two .ab-sol__card:nth-child(2n),.ab-sol__cards:not(.ab-sol__cards--three):not(.ab-sol__cards--two) .ab-sol__card:nth-child(4n) { border-right:none; }
.ab-sol__card-no { display:block; margin-bottom:24px; color:#a48762; font-size:11px; font-weight:700; letter-spacing:.15em; }
.ab-sol__card h3 { margin:0 0 11px; font-family:Raleway,sans-serif; font-size:clamp(18px,1.65vw,24px); line-height:1.25; font-weight:800; color:inherit; }
.ab-sol__card p { margin:0; color:#5b6969; font-size:14px; line-height:1.7; }
.ab-sol__section--dark .ab-sol__card { border-color:#50605f; }
.ab-sol__section--dark .ab-sol__card p { color:#cbd3d1; }
.ab-sol__photo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.ab-sol__photo-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ab-sol__photo-card { margin:0; min-width:0; }
.ab-sol__photo-card img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:#d8dedb; }
.ab-sol__photo-card figcaption { padding:17px 0 0; }
.ab-sol__photo-card strong { display:block; font-family:Raleway,sans-serif; font-size:18px; line-height:1.3; }
.ab-sol__photo-card span { display:block; margin-top:7px; color:#647071; font-size:13px; line-height:1.55; }
.ab-sol__model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ab-sol__model-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ab-sol__model { min-width:0; background:#fff; border:1px solid #dee1dc; }
.ab-sol__model img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; background:#d8dedb; }
.ab-sol__model-body { padding:clamp(22px,3vw,36px); }
.ab-sol__model-tag { display:block; margin-bottom:12px; color:#a48762; font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.ab-sol__model h3 { margin:0 0 12px; font-family:Raleway,sans-serif; font-size:clamp(21px,2.1vw,29px); line-height:1.2; }
.ab-sol__model p { margin:0 0 20px; color:#566362; font-size:14px; line-height:1.7; }
.ab-sol__spec { display:grid; grid-template-columns:1fr auto; gap:9px 15px; margin:0; padding-top:19px; border-top:1px solid #d8ddda; font-size:12px; line-height:1.5; }
.ab-sol__spec dt { color:#687574; }
.ab-sol__spec dd { margin:0; font-weight:700; text-align:right; }
.ab-sol__band { padding:clamp(70px,8vw,110px) 0; background:#e8d9c0; }
.ab-sol__band-grid { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:end; }
.ab-sol__band .ab-sol__title { max-width:900px; }
.ab-sol__button { display:inline-flex; min-height:58px; padding:17px 24px; align-items:center; justify-content:space-between; gap:30px; background:#192a2b; color:#fff; text-decoration:none; font-size:11px; font-weight:700; letter-spacing:.13em; line-height:1.3; text-transform:uppercase; white-space:nowrap; }
.ab-sol__button:hover { background:#30484a; }
.ab-sol__button span { font-size:20px; font-weight:400; }
.ab-sol__section--dark .ab-sol__button { background:#e8d9c0; color:#192a2b; }
.ab-sol__section--dark .ab-sol__button:hover { background:#fff; }
@media(max-width:950px) { .ab-sol__head,.ab-sol__split,.ab-sol__split--reverse,.ab-sol__band-grid { grid-template-columns:1fr; } .ab-sol__split--reverse .ab-sol__media { order:0; } .ab-sol__head { gap:18px; } .ab-sol__head .ab-sol__intro { max-width:700px; } .ab-sol__cards,.ab-sol__cards--three { grid-template-columns:repeat(2,minmax(0,1fr)); } .ab-sol__cards .ab-sol__card:nth-child(n) { border-right:1px solid #cdd3d0; } .ab-sol__cards .ab-sol__card:nth-child(2n) { border-right:none; } .ab-sol__photo-grid,.ab-sol__photo-grid--three { grid-template-columns:repeat(2,minmax(0,1fr)); } .ab-sol__model-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:620px) { .ab-sol__shell { width:calc(100% - 40px); } .ab-sol__section { padding:64px 0; } .ab-sol__title { font-size:clamp(28px,7.4vw,34px); } .ab-sol__media,.ab-sol__media--portrait { aspect-ratio:4/3; } .ab-sol__cards,.ab-sol__cards--three,.ab-sol__cards--two,.ab-sol__photo-grid,.ab-sol__photo-grid--three,.ab-sol__model-grid,.ab-sol__model-grid--two { grid-template-columns:1fr; } .ab-sol__cards .ab-sol__card:nth-child(n) { border-right:none; } .ab-sol__photo-card img { aspect-ratio:5/3; } .ab-sol__band { padding:65px 0; } .ab-sol__button { width:100%; } }
