:root{--ng-navy:#0c2d44;--ng-teal:#0abfa7;--ng-purple:#7c3aed;--ng-ink:#173950;--ng-muted:#607589;--ng-border:#dce8ee;--ng-bg:#f5f9fb}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
.ng-body{margin:0;background:var(--ng-bg);color:var(--ng-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.7;overflow-x:hidden}
.ng-container{max-width:1220px;width:calc(100% - 42px);margin:0 auto}
.ng-header{background:#fff;border-bottom:1px solid var(--ng-border);box-shadow:0 2px 14px rgba(9,42,60,.035);position:sticky;top:0;z-index:90}
.ng-header-inner{min-height:92px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.ng-brand{display:inline-flex;max-width:250px}
.ng-brand img{display:block;width:100%;height:auto}
.ng-section-title{text-decoration:none;color:#263c50;font-weight:800;font-size:.95rem;text-align:right}
.ng-section-title span{font-size:.77rem;font-weight:650;display:block;color:#159d8e}
.ng-hero{background:linear-gradient(110deg,#e9faf7,#f5faff 45%,#f4f0ff);padding:65px 0 76px}
.ng-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}
.ng-hero-grid img{display:block;max-width:100%;width:100%;height:auto;max-height:340px;object-fit:cover;border-radius:25px;box-shadow:0 15px 45px rgba(11,45,65,.13)}
.ng-eyebrow{font-size:.79rem;letter-spacing:.11em;color:#168775;font-weight:850;text-transform:uppercase;margin-bottom:14px}
.ng-hero h1,.ng-article-head h1{font-size:clamp(2.05rem,4.1vw,3.85rem);letter-spacing:-.048em;line-height:1.11;color:var(--ng-navy);margin:0 0 22px;font-weight:850}
.ng-hero p,.ng-article-head p{max-width:750px;font-size:1.1rem;color:#456078;line-height:1.75;margin:0}
.ng-hero-rule{width:88px;height:5px;background:linear-gradient(90deg,#10c5ac,#8542e7);border-radius:9px;margin:22px 0}
.ng-hero p.ng-secondary{font-size:.96rem}
.ng-section{padding:65px 0 85px}
.ng-section-heading{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin-bottom:25px}
.ng-section-heading h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.2;margin:0;color:var(--ng-navy);letter-spacing:-.035em}
.ng-section-heading span,.ng-section-heading>a{font-size:.9rem;color:var(--ng-purple);font-weight:800;text-decoration:none}
.ng-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.ng-card{background:#fff;border:1px solid var(--ng-border);border-radius:18px;overflow:hidden;box-shadow:0 7px 22px rgba(13,48,68,.06);display:flex;flex-direction:column}
.ng-card-visual{min-height:110px;padding:18px 22px;background:linear-gradient(120deg,#0b334c,#0e606b);display:flex;justify-content:space-between;align-items:end;color:#fff}
.ng-card:nth-child(3n+2) .ng-card-visual{background:linear-gradient(120deg,#143b69,#6451af)}
.ng-card:nth-child(3n+3) .ng-card-visual{background:linear-gradient(120deg,#084952,#0b896b)}
.ng-card-visual>span{font-size:1.85rem;line-height:1}
.ng-card-visual>strong{font-size:.91rem;text-align:right}
.ng-card-body{padding:22px;display:flex;flex-direction:column;flex:1}
.ng-category{font-size:.75rem;text-transform:uppercase;font-weight:850;letter-spacing:.07em;color:#278879;margin-bottom:10px}
.ng-card h3{font-size:1.19rem;line-height:1.35;margin:0 0 11px;letter-spacing:-.017em}
.ng-card h3>a{color:var(--ng-ink);text-decoration:none}
.ng-card h3>a:hover{color:var(--ng-purple)}
.ng-card p{color:#607386;margin:0 0 20px;line-height:1.65;font-size:.91rem;flex:1}
.ng-card-bottom{display:flex;gap:12px;justify-content:space-between;align-items:center;border-top:1px solid #edf1f5;padding-top:14px;font-size:.8rem;color:#64778c}
.ng-card-bottom>a,.ng-card-body>a{color:#6535d8;text-decoration:none;font-weight:850}
.ng-card-bottom>a:hover,.ng-card-body>a:hover{text-decoration:underline}
.ng-article-head{background:linear-gradient(125deg,#e6faf5,#f4faff);padding:58px 0 54px}
.ng-article-head .ng-back{color:#287b74;text-decoration:none;font-size:.9rem;font-weight:800;display:inline-block;margin-bottom:30px}
.ng-article-head .ng-eyebrow{margin-bottom:16px}
.ng-article-head h1{max-width:1000px}
.ng-article-head>div>p{max-width:850px}
.ng-article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.ng-article-meta>span{background:rgba(255,255,255,.88);border:1px solid var(--ng-border);border-radius:999px;padding:4px 12px;color:#4a6074;font-size:.77rem;font-weight:750}
.ng-article-grid{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:45px;align-items:start;margin-top:48px;margin-bottom:80px}
.ng-prose{font-size:1.02rem;line-height:1.91;min-width:0}
.ng-prose h2{font-size:clamp(1.38rem,2.5vw,1.9rem);letter-spacing:-.032em;line-height:1.35;margin:36px 0 13px;color:var(--ng-navy)}
.ng-prose h3{font-size:1.24rem;margin:26px 0 10px;line-height:1.4}
.ng-prose p{margin:0 0 21px;color:#324c60}
.ng-prose>p:first-child{font-size:1.115rem;color:#294b59}
.ng-prose ul,.ng-prose ol{margin:13px 0 26px;padding-left:26px}
.ng-prose li{padding-left:3px;margin-bottom:8px}
.ng-prose a{color:#5b34c5;text-decoration:underline;text-underline-offset:3px}
.ng-prose details{background:#fff;border:1px solid var(--ng-border);padding:14px 18px;border-radius:11px;margin-bottom:10px}
.ng-prose summary{font-weight:800;cursor:pointer;color:#234458}
.ng-prose details>p{margin:10px 0 0}
.ng-prose .ng-tip{border-left:4px solid #16b6a1;background:#eafbfa;padding:18px 22px;border-radius:0 12px 12px 0;margin:26px 0}
.ng-sidebar{position:sticky;top:112px;display:grid;gap:15px}
.ng-side-box{border:1px solid var(--ng-border);background:#fff;border-radius:15px;padding:20px}
.ng-side-box strong{display:block;color:#214259;font-size:.87rem}
.ng-side-box p{font-size:.91rem;line-height:1.6;margin:4px 0 17px;color:#5e7180}
.ng-side-box p:last-child{margin-bottom:0}
.ng-legal{background:#effaf8;border-color:#cdeae5}
.ng-related{background:#eaf3f7}
.ng-small .ng-card-body{padding:20px}
.ng-footer{background:#0b3047;color:#eaf7f8;padding:38px 0 42px}
.ng-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:18px}
.ng-footer strong{font-size:1.25rem;color:#e0ffff}
.ng-footer p{font-size:.87rem;opacity:.74;margin:5px 0 0;max-width:600px}
.ng-footer a{color:#5be1c8;text-decoration:none;font-weight:850}
.ng-language-widget{position:fixed;z-index:999;right:18px;bottom:max(16px,env(safe-area-inset-bottom,0px) + 12px)}
.ng-language-toggle{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #dae5ea;border-radius:999px;padding:11px 15px;font-size:.9rem;font-weight:850;color:#244459;box-shadow:0 12px 29px rgba(10,36,55,.2);cursor:pointer}
.ng-language-toggle:hover{border-color:#32c6b4}
.ng-language-toggle:focus-visible,.ng-language-menu a:focus-visible{outline:3px solid #7930e8;outline-offset:2px}
.ng-language-menu{position:absolute;right:0;bottom:calc(100% + 10px);width:170px;display:grid;gap:1px;border-radius:15px;padding:8px;background:#fff;border:1px solid #dce8ec;box-shadow:0 18px 39px rgba(8,33,53,.2)}
.ng-language-menu[hidden]{display:none}
.ng-language-menu a{display:block;padding:9px 13px;border-radius:9px;font-size:.89rem;font-weight:750;color:#25445b;text-decoration:none}
.ng-language-menu a:hover,.ng-language-menu a[aria-current]{background:#eafbfa;color:#076d64}
@media(max-width:980px){.ng-hero-grid{grid-template-columns:1fr 300px;gap:22px}.ng-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ng-article-grid{grid-template-columns:1fr}.ng-sidebar{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:690px){.ng-container{width:calc(100% - 30px)}.ng-header-inner{min-height:78px}.ng-brand{max-width:170px}.ng-section-title{font-size:.82rem}.ng-hero{padding:35px 0 48px}.ng-hero-grid{grid-template-columns:1fr}.ng-hero-grid img{max-height:210px}.ng-section{padding:40px 0 60px}.ng-grid{grid-template-columns:1fr}.ng-article-head{padding:36px 0}.ng-article-grid{margin-top:28px;margin-bottom:46px}.ng-sidebar{grid-template-columns:1fr}.ng-footer-inner{flex-direction:column;align-items:flex-start}.ng-language-widget{right:11px;bottom:11px}}

/* Finnish compound words must not expand mobile document beyond viewport. */
.ng-hero-grid>div{min-width:0}
.ng-hero h1,.ng-article-head h1{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:690px){.ng-hero-grid{grid-template-columns:minmax(0,1fr)}}

/* Editorial photos: distinctive images on the hub, article and related cards. */
.ng-card-visual{position:relative;isolation:isolate;min-height:185px;overflow:hidden;padding:16px 19px;background:#0a3e52}
.ng-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .35s ease}
.ng-card-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(4,28,47,.10) 25%,rgba(4,28,47,.78) 100%);z-index:-1}
.ng-card:hover .ng-card-image{transform:scale(1.045)}
.ng-card-visual>span,.ng-card-visual>strong{position:relative;z-index:1;text-shadow:0 1px 6px rgba(0,0,0,.55)}
.ng-article-photo{margin:30px 0 0;background:#fff;border:1px solid var(--ng-border);border-radius:19px;overflow:hidden;box-shadow:0 16px 34px rgba(13,48,68,.09)}
.ng-article-photo>img{display:block;width:100%;max-height:510px;aspect-ratio:16/9;object-fit:cover}
.ng-article-photo figcaption{padding:8px 16px 10px;color:#607589;font-size:.73rem;line-height:1.5;background:#fff}
.ng-article-photo figcaption a{color:#365e79;text-decoration:underline;text-underline-offset:2px}
.ng-article-photo+.ng-article-grid{margin-top:32px}
.ng-related-photo{display:block;height:154px;overflow:hidden;background:#e7f1f6}
.ng-related-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.ng-related-photo:hover img{transform:scale(1.04)}
@media(max-width:690px){.ng-card-visual{min-height:170px}.ng-article-photo{margin:18px 0 0}.ng-article-photo>img{aspect-ratio:4/3;max-height:320px}}
