.before-after{transition:background .24s ease,color .24s ease}.before-after.is-on{background:var(--color-footer)}.before-after__grid{display:grid;grid-template-columns:5fr 7fr;gap:var(--space-2xl);align-items:center}.before-after h2{margin-block:var(--space-lg);font-size:var(--text-heading);line-height:1.16}.before-after.is-on h2{color:#fff}.before-after__copy{color:var(--color-muted);font-size:var(--text-lg);line-height:1.7}.before-after.is-on .before-after__copy{color:var(--color-subtle)}.before-after__coverage{display:inline-flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xl);color:var(--color-ink);font-size:var(--text-sm);font-weight:800}.before-after__coverage i{display:grid;width:2rem;height:2rem;place-items:center;border-radius:50%;color:var(--color-primary);background:#fee2e2}.before-after.is-on .before-after__coverage{color:#fff}.before-after.is-on .before-after__coverage i{color:var(--color-footer);background:var(--color-accent)}.before-after__panel{width:100%}.before-after__toolbar{display:inline-flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);color:var(--color-ink);font-size:var(--text-sm);font-weight:800}.before-after.is-on .before-after__toolbar{color:#fff}.before-after__switch{position:relative;width:4rem;height:2.1rem;padding:.2rem;border:0;border-radius:999px;background:var(--color-line);cursor:pointer;transition:background .18s ease}.before-after__switch span{display:block;width:1.7rem;height:1.7rem;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .18s ease}.before-after__switch[aria-pressed=true]{background:var(--color-accent)}.before-after__switch[aria-pressed=true] span{transform:translate(1.9rem)}.before-after__media{position:relative;overflow:hidden;width:100%;margin:0;border-radius:var(--radius-md);aspect-ratio:16 / 10}.before-after__media img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.before-after__media [data-before-after-on]{position:absolute;inset:0;opacity:0;transition:opacity .24s ease}.before-after.is-on .before-after__media [data-before-after-on]{opacity:1}@media(max-width:64rem){.before-after__grid{grid-template-columns:1fr}}.value-card{padding:var(--space-xl);border:1px solid var(--color-line-soft);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm);transition:box-shadow .18s ease,transform .18s ease}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.value-card__icon{display:grid;width:clamp(2.7rem,calc(2.6rem + .5vw),3rem);height:clamp(2.7rem,calc(2.6rem + .5vw),3rem);margin-bottom:var(--space-md);place-items:center;border-radius:var(--radius-md);color:var(--color-primary);background:#fef2f2;font-size:var(--text-xl)}.value-card h3{margin-bottom:var(--space-sm);font-size:var(--text-lg)}.value-card p{color:var(--color-muted);font-size:var(--text-sm);line-height:1.7}.commitments__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg);margin-top:var(--space-3xl)}@media(max-width:64rem){.commitments__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:36rem){.commitments__grid{grid-template-columns:1fr}}.faq__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-3xl)}.faq__item{padding:var(--space-lg);border:1px solid var(--color-line);border-radius:.5rem;background:var(--color-surface);box-shadow:var(--shadow-sm)}.faq__item h3{margin-bottom:var(--space-xs);font-size:var(--text-md);line-height:1.25}.faq__item p{color:var(--color-muted);font-size:var(--text-sm);line-height:1.7}@media(max-width:48rem){.faq__grid{grid-template-columns:1fr}}.infrastructure__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2xl);align-items:center}.infrastructure__map{position:relative;overflow:hidden;min-height:clamp(19rem,calc(17.33rem + 8.33vw),24rem);border-radius:var(--radius-lg);background:var(--color-surface-tint);box-shadow:var(--shadow-lg);height:100%}.infrastructure__map iframe{display:block;width:100%;height:100%;min-height:inherit;border:0}.infrastructure__map span{position:absolute;bottom:var(--space-md);left:var(--space-md);display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-line-soft);border-radius:var(--radius-sm);color:var(--color-ink);background:#fff;box-shadow:var(--shadow-sm);font-size:var(--text-xs);font-weight:800}.infrastructure__map span i{color:var(--color-primary)}.infrastructure__map-notice{position:absolute;right:var(--space-md);bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm);max-width:min(18rem,calc(100% - 2rem));padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-line-soft);border-radius:var(--radius-sm);color:var(--color-muted);background:#fffffff0;box-shadow:var(--shadow-sm);font-size:var(--text-xs);font-weight:700;line-height:1.45}.infrastructure__map-notice[hidden]{display:none}.infrastructure__map-notice a{color:var(--color-primary);font-weight:800;text-decoration:underline;text-underline-offset:.18em}.infrastructure__map-notice button{flex:0 0 auto;padding:.45rem .7rem;border:0;border-radius:var(--radius-sm);color:#fff;background:#64748b;font-size:var(--text-xs);font-weight:800;cursor:pointer;transition:background .18s ease,transform .18s ease}.infrastructure__map-notice button:hover{background:#475569;transform:translateY(-1px)}.infrastructure__content h2{margin-block:var(--space-lg);font-size:var(--text-heading);line-height:1.16}.infrastructure__copy{color:var(--color-muted);font-size:var(--text-md);line-height:1.75}.infrastructure__features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-lg)}.infrastructure__features article{padding:var(--space-md);border:1px solid var(--color-line-soft);border-radius:var(--radius-md);background:var(--color-surface-tint)}.infrastructure__features h3{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);font-size:var(--text-md);line-height:1.25}.infrastructure__features i{color:var(--color-primary)}.infrastructure__features p{color:var(--color-muted);font-size:var(--text-xs);line-height:1.55}@media(max-width:64rem){.infrastructure__grid{grid-template-columns:1fr}}@media(max-width:36rem){.infrastructure__features{grid-template-columns:1fr}.infrastructure__map span,.infrastructure__map-notice{left:var(--space-sm);right:var(--space-sm);max-width:none}.infrastructure__map span{bottom:calc(var(--space-sm) + 4.2rem)}.infrastructure__map-notice{display:grid;gap:var(--space-xs);bottom:var(--space-sm)}.infrastructure__map-notice button{width:100%}}.service-card{overflow:hidden;border:1px solid var(--color-line-soft);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease}.service-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.service-card__media{position:relative;height:clamp(11rem,calc(10rem + 5vw),14rem);background:var(--color-surface-tint)}.service-card__media img{width:100%;height:100%;object-fit:cover}.service-card__media:after{position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(180deg,#02061700,#02061794);content:"";pointer-events:none}.service-card__media span{position:absolute;bottom:var(--space-md);left:var(--space-md);z-index:1;padding:var(--space-xs) var(--space-sm);border-radius:999px;color:var(--color-primary);background:#ffffffe6;font-size:var(--text-xs);font-weight:800;backdrop-filter:blur(6px)}.service-card__body{padding:var(--space-lg)}.service-card h3{margin-bottom:var(--space-sm);font-size:var(--text-xl)}.service-card p{min-height:clamp(5.3rem,calc(5.13rem + .83vw),5.8rem);color:var(--color-muted);font-size:var(--text-sm);line-height:1.7}.service-card a{display:inline-flex;align-items:center;gap:var(--space-2xs);margin-top:var(--space-md);color:var(--color-primary);font-size:var(--text-sm);font-weight:800}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-top:var(--space-3xl)}@media(max-width:60rem){.services__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:36rem){.services__grid{grid-template-columns:1fr}}
