/* Shared homepage proportions and lightweight motion. */
/* News: balanced editorial grid with controls beside the heading. */
#news .news-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:24px}
#news .section-title{grid-column:1;grid-row:1;margin-bottom:24px}
#news .news-controls{grid-column:2;grid-row:1;align-self:end;display:flex;align-items:center;gap:10px;margin:0 0 26px}
#news .news-controls a{order:0;margin-right:15px;white-space:nowrap}
#news .news-prev{order:1}
#news .news-next{order:2}
#news .news-viewport{grid-column:1/-1;grid-row:2;padding-bottom:14px}
#news .news-card .visual{aspect-ratio:1.95}
#news .news-card time{margin:16px 20px 7px}
#news .news-card h3{min-height:76px;padding-bottom:22px;line-height:1.55}
@media(max-width:600px){#news .news-inner{grid-template-columns:1fr}#news .section-title{margin-bottom:18px}#news .news-viewport{grid-row:2}#news .news-controls{grid-column:1;grid-row:3;justify-self:end;margin:16px 0 0}#news .news-card .visual{aspect-ratio:1.8}#news .news-card h3{min-height:70px}}
.global .map-airflow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.map-airflow path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round}
.map-airflow .airflow-track{stroke:#a0d7e5;stroke-width:1;opacity:.55}
.map-airflow .airflow-pulse{stroke:#e5fbff;stroke-width:2;stroke-dasharray:5 95;animation:map-air-travel 5s linear infinite;opacity:.9}
.map-airflow .is-highlighted .airflow-track{stroke:#e5fbff;opacity:1;stroke-width:1.6}
.global .flow-node{display:block;position:absolute;left:50%;top:50%;width:7px;height:7px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid #d6f5ff;background:#4589ad;box-shadow:0 0 0 3px #c3ecf52b}
.global .map-point:hover .flow-node,.global .map-point.active .flow-node,.global .map-point:focus-visible .flow-node{background:#effcff;box-shadow:0 0 0 4px #c3ecf55c}
@keyframes map-air-travel{to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.map-airflow .airflow-pulse{animation:none;display:none}}
.global .map-point{width:16px;height:16px;padding:0;border-radius:3px;color:#164f73}
.global .map-point:before{display:none}
.global .map-chip{display:block;width:100%;height:100%;overflow:visible}
.global .map-point:hover,.global .map-point:focus-visible,.global .map-point.active{color:#083854;z-index:8}
.global .map-point:hover .map-chip,.global .map-point:focus-visible .map-chip,.global .map-point.active .map-chip{transform:scale(1.35);filter:drop-shadow(0 2px 3px #164f7340)}
.global .map-point span{bottom:25px;border-radius:5px;background:#285e78;box-shadow:0 4px 14px #164f7326}
@media(max-width:800px){.global .map-point{width:12px;height:12px}}
.statistics strong[data-count]{display:inline-block;min-width:2ch;font-variant-numeric:tabular-nums}
:root{--content-width:1540px}
html{scroll-snap-type:y proximity}
.screen{scroll-snap-stop:normal}
.product-blueprint,.cases-showcase.cases-tech,.strengths.core-technologies,#news.news{padding-left:5.5%;padding-right:5.5%}
.product-v2-shell,.cases-tech .cases-shell,.core-tech-shell,.news-inner{max-width:var(--content-width);margin-left:auto;margin-right:auto}
.product-blueprint .product-v2-heading h2,.core-tech-heading h2,#news .section-title{font-size:clamp(32px,2.8vw,46px);letter-spacing:.01em}
.product-blueprint .product-v2-heading>span,.core-tech-heading p{font-size:14px;max-width:440px}
.product-blueprint .product-v2-stage{grid-template-columns:minmax(0,1fr) clamp(265px,22vw,340px)}
.product-blueprint .product-v2-tabs button small{font-size:11px;line-height:1.65;color:#66828f}
.cases-tech .cases-overview{grid-template-columns:minmax(210px,.85fr) minmax(0,1.8fr) auto;gap:22px}
.cases-tech .case-tabs strong{font-size:12px}
.cases-tech .case-tabs button{grid-template-columns:20px minmax(0,1fr);gap:9px}
.cases-tech .case-tab-icon{display:none}
.cases-tech .case-console header>span{font-size:12px;line-height:1.85;-webkit-line-clamp:unset}
.cases-tech .case-console{gap:12px;grid-template-rows:auto minmax(0,1fr) auto}
.cases-tech .case-status{display:none}
.cases-tech .case-item-tab small{font-size:10px}
.core-tech-card footer p{font-size:11px;line-height:1.65;color:#627f8c}
.core-tech-card>footer{min-height:72px}
.core-tech-card .tech-visual{bottom:98px}
.global-intro>p{max-width:560px;line-height:1.95}
.global .country-list{position:absolute;left:3%;right:3%;bottom:32px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;padding:0 0 5px;overflow:visible}
.global .country-list:before{content:"";position:absolute;left:4.1667%;right:4.1667%;bottom:10px;height:1px;background:#bdcdd5}
.global .country-list button{position:relative;min-width:0;padding:12px 4px 30px;color:#456777;font-size:clamp(12px,1vw,16px);white-space:nowrap;text-align:center}
.global .country-list button:after{content:"";position:absolute;bottom:0;left:50%;height:12px;width:1px;background:#bdcdd5}
.global .country-list button:hover,.global .country-list button:focus-visible{color:#2788b0}
.global .country-list button:hover:after,.global .country-list button:focus-visible:after{background:#2788b0}
@media(max-width:800px){.global .country-list{position:relative;left:auto;right:auto;bottom:auto;grid-template-columns:repeat(12,78px);overflow-x:auto;padding-bottom:10px;justify-content:start}.global .country-list:before{left:39px;right:auto;width:858px;bottom:15px}.global .country-list button{font-size:13px}}
#news.news{min-height:0;padding-top:clamp(72px,7vw,112px);padding-bottom:clamp(72px,7vw,112px)}
#news .news-card h3{font-size:17px;line-height:1.65}
.polish-progress{position:fixed;z-index:110;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,#467e9c,#56b6cb);transform:scaleX(0);transform-origin:left;pointer-events:none}
.polish-enter{animation:polish-enter .75s cubic-bezier(.22,1,.36,1) both}
@keyframes polish-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.screen[data-polish-visible="false"] *,.screen[data-polish-visible="false"] *:before,.screen[data-polish-visible="false"] *:after{animation-play-state:paused!important}
@media(hover:hover){.core-tech-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #315d7015}.case-detail-link:hover,.about-flow-card>a:hover{color:#247fa1}}
@media(min-width:901px){.cases-tech .cases-shell{height:auto;min-height:640px}.cases-tech .cases-main{min-height:500px}}
@media(max-width:1180px){.cases-tech .cases-overview{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:900px){.cases-tech .cases-overview{grid-template-columns:1fr}.core-tech-card footer p{font-size:10px}.product-blueprint .product-v2-heading>span,.core-tech-heading p{font-size:13px}}
@media(max-width:800px){.product-blueprint .product-v2-stage{display:flex}.product-blueprint,.cases-showcase.cases-tech,.strengths.core-technologies,#news.news{padding-left:5%;padding-right:5%}.cases-tech .cases-shell{border:1px solid #dce8ee;border-radius:14px}.cases-tech .case-visual-stage{height:420px;min-height:0}.core-tech-heading{gap:20px}}
@media(max-width:480px){.cases-tech .cases-main{padding-left:10px;padding-right:10px}.cases-tech .cases-overview{padding:20px 14px}.cases-tech .case-visual-stage{height:340px}.cases-tech .case-tabs strong{font-size:11px}.cases-tech .case-item-tabs{grid-template-columns:1fr 1fr}.cases-tech .case-item-tab small{white-space:normal;font-size:10px}.cases-tech .case-item-tab{min-height:100px;padding:10px}.core-tech-card{height:345px}.core-tech-card h3{font-size:14px}.core-tech-heading h2,.product-blueprint .product-v2-heading h2,#news .section-title{font-size:32px}}

/* English copy is longer; keep hero and navigation typography balanced. */
html[lang="en"] .nav-link{font-size:clamp(12px,.9vw,16px)}
html[lang="en"] .slide--tech-waterfall .slide-copy h2,html[lang="en"] .slide--airflow-minimal .slide-copy h2{font-size:clamp(36px,3.35vw,60px);letter-spacing:.01em}
html[lang="en"] .case-console header h2{font-size:clamp(24px,2vw,34px);line-height:1.15}
html[lang="en"] .core-tech-card footer h3{font-size:15px}
@media(max-width:800px){html[lang="en"] .slide[data-image="hero1"] .slide-copy h1{max-width:92%;white-space:normal;font-size:clamp(27px,7.6vw,36px);line-height:1.25}html[lang="en"] .slide[data-image="hero1"] .slide-copy p{max-width:90%;white-space:normal;font-size:clamp(21px,6.2vw,29px);line-height:1.35}html[lang="en"] .slide--tech-waterfall .slide-copy,html[lang="en"] .slide--airflow-minimal .slide-copy{width:94%;padding-left:7%;padding-right:7%}html[lang="en"] .slide--tech-waterfall .slide-copy h2,html[lang="en"] .slide--airflow-minimal .slide-copy h2{font-size:clamp(27px,7.6vw,34px);line-height:1.22}html[lang="en"] .slide--tech-waterfall .slide-copy p,html[lang="en"] .slide--airflow-minimal .slide-copy p{font-size:13px;line-height:1.6}}

/* News section: calmer proportions and a compact shared header. */
#news.news{padding-top:clamp(76px,6vw,96px);padding-bottom:clamp(48px,5vw,72px)}
#news .news-inner{max-width:1360px;align-items:center}
#news .news-inner{row-gap:30px}
#news .section-title{margin-bottom:22px;padding-bottom:14px;font-size:clamp(32px,2.6vw,42px)}
#news .section-title:after{width:64px;box-shadow:none}
#news .news-controls{align-self:center;margin:0 0 20px;gap:9px}
#news .news-controls a{margin-right:14px;font-size:11px}
#news .news-controls button{width:34px;height:34px;font-size:16px}
#news .news-viewport{padding:0 2px 12px}
#news .news-track{gap:18px}
#news .news-card{flex-basis:calc((100% - 36px)/3);border-radius:7px;box-shadow:0 10px 28px #315d700d}
#news .news-card .visual{aspect-ratio:2.05;background-position:center}
#news .news-card time{margin:17px 20px 7px;font-size:11px}
#news .news-card h3{min-height:78px;padding:0 20px 20px;font-size:16px;line-height:1.55;color:#28586d}
@media(max-width:800px){#news .news-card{flex-basis:calc((100% - 16px)/2)}#news .news-track{gap:16px}}
@media(max-width:600px){#news.news{padding-top:72px;padding-bottom:48px}#news .news-card{flex-basis:100%}#news .section-title{margin-bottom:20px}#news .news-controls{grid-row:3;justify-self:end;margin:14px 0 0}#news .news-card .visual{aspect-ratio:1.85}#news .news-card h3{min-height:70px}}
@media(max-width:600px){#news .news-inner{row-gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.polish-enter{animation:none}.polish-progress{display:none}.screen *,.screen *:before,.screen *:after{animation:none!important;transition:none!important}}
