/* Original architectural illustrations dissolve into the page surface. */
.hero{max-width:1440px;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:12px;padding:72px 40px 54px;min-height:690px;align-items:center}
.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(40px,4.1vw,59px);line-height:1.08}.hero .lead{font-size:18px;line-height:1.7}.hero-actions{gap:10px}.hero-actions .btn{padding-inline:21px}
.hero-visual,.ajax-visual,.service-visual{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.architecture-art{margin:0;min-width:0}.architecture-art img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 91%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 8%,#000 88%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 91%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 8%,#000 88%,transparent 100%);mask-composite:intersect}
.hero-visual{position:relative;min-height:0;height:auto;align-self:center}.hero-visual:after{display:none}.hero-visual>img{position:relative;inset:auto;width:110%;max-width:none;margin-left:-5%;aspect-ratio:3/2;object-fit:contain}
.hero-visual figcaption{position:relative;inset:auto;padding:0 18px;margin-top:-4px;color:var(--ink)}
.art-caption{font-size:22px;line-height:1.4;font-weight:700;letter-spacing:-.02em;text-align:center;margin:10px 0 24px;color:#eef7ff}
.system-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;list-style:none;margin:0;padding:18px 0 0;border-top:1px solid #35526b70}.system-legend li{display:flex;gap:8px;align-items:center;color:#c6dceb;font-size:13px;line-height:1.5}.system-legend svg{width:21px;height:21px;flex:0 0 21px;fill:currentColor;color:#72d0f5}
.ajax-section{background:radial-gradient(ellipse at 72% 50%,#14405b55,transparent 62%),#0b1624;border-bottom:1px solid #2b4055}
.ajax-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:center}.ajax-visual{display:block;align-self:center}.ajax-visual img{aspect-ratio:1;max-height:none}.ajax-visual figcaption{padding:0 20px}.ajax-visual .art-caption{font-size:24px;margin-bottom:0}.ajax-features{gap:24px 20px}
.service{max-width:1240px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:30px}.service-visual{align-self:center;padding:0;max-width:none}.service-visual img{aspect-ratio:1;margin:0 0 14px}.service-visual .btn{position:relative}.service h2{font-size:clamp(32px,3.6vw,49px)}
@media(min-width:1440px){.hero{gap:30px}.hero-visual>img{width:112%;margin-left:-6%}}
@media(max-width:1100px){.hero{padding-inline:24px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.hero h1{font-size:43px}.hero-actions{flex-wrap:wrap}.hero .lead{font-size:17px}.hero-visual>img{width:100%;margin-left:0}.system-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.art-caption{font-size:20px}.ajax-layout{gap:18px}.ajax-copy h2{font-size:39px}.ajax-features{grid-template-columns:1fr}.service{gap:20px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding:44px 24px 48px;gap:18px;min-height:0}.hero-copy{max-width:630px}.hero h1{font-size:clamp(38px,6.8vw,54px)}.hero-visual{max-width:760px;justify-self:center;width:100%}.hero-visual>img{width:100%;margin-left:0}.hero-visual figcaption{padding:0}.system-legend{grid-template-columns:repeat(3,minmax(0,1fr))}.ajax-layout,.service{grid-template-columns:1fr}.ajax-visual{max-width:610px;justify-self:center;width:100%}.ajax-features{grid-template-columns:1fr 1fr}.service-visual{max-width:580px;justify-self:center;width:100%}.service h2{font-size:38px}}
@media(max-width:480px){.hero{padding-inline:20px;gap:8px}.hero h1{font-size:39px}.hero .lead{font-size:17px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-visual figcaption{margin-top:6px}.art-caption{font-size:19px;margin:0 0 18px}.system-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px;padding-top:16px}.system-legend li{font-size:13px}.ajax-features{grid-template-columns:1fr}.ajax-visual .art-caption{font-size:22px}.service h2{font-size:33px}}
