/* Naturalisation Blog — responsive, accessible, no third-party fonts or trackers */
:root{--navy:#102942;--ink:#182e46;--sub:#566779;--blue:#215fbb;--border:#e0e7ee;--surface:#fff;--cream:#fbf8f2;--pale:#f4f8fb;--red:#e85b63;--round:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.72 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
button,a{outline-offset:3px}
:focus-visible{outline:3px solid #2574cf;outline-offset:4px}
.wrap{width:min(1180px,calc(100% - 48px));margin:auto}
.narrow{max-width:780px}
.skip{position:absolute;top:-100px;left:10px;background:var(--navy);color:white;padding:10px 15px;z-index:200}
.skip:focus{top:10px}
.header{position:relative;z-index:10;background:white;border-bottom:1px solid #ebeff3}
.header-in{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--navy);text-decoration:none!important}
.brand-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;color:#fff;font:800 32px/1 Georgia,serif;background:linear-gradient(135deg,#2766be 0%,#2b65b4 34%,#fff8f0 49%,#d64b5a 66%,#b82a42 100%);box-shadow:0 4px 12px #153c671c;text-shadow:0 1px 1px #2843649f}
.brand-text{display:flex;flex-direction:column;line-height:1.16}
.brand-text strong{font-size:19px;font-weight:790;letter-spacing:-.5px}
.brand-text small{color:#6b7d90;font-size:11px;letter-spacing:.5px;font-weight:700;text-transform:uppercase;margin-top:4px}
nav{display:flex;align-items:center;gap:28px}
nav a{color:#344b62;font-size:14px;font-weight:690}
nav .nav-app{padding:11px 17px;border:1px solid #cbd9e6;border-radius:12px;color:var(--navy)}
nav .nav-app:hover{background:#f1f6fa;text-decoration:none}
.hero{background:radial-gradient(circle at 78% 18%,#e7f0f7,transparent 39%),linear-gradient(110deg,#fff 3%,#fcf9f3 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:52px;align-items:center;min-height:550px;padding-top:90px;padding-bottom:90px}
.eyebrow{color:#36649b;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:2.05px}
.hero h1{font-size:clamp(43px,5.3vw,75px);letter-spacing:-3.1px;line-height:1.1;color:var(--navy);margin:21px 0 25px;max-width:740px;font-weight:820}
.hero h1 em{font-style:normal;color:#2770b8}
.hero-lead{font-size:18px;max-width:590px;line-height:1.82;color:#55697a}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 20px;border-radius:12px;font-size:14px;font-weight:790;text-decoration:none!important;text-align:center;line-height:1.25;transition:transform .15s ease,background .15s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:#173c64;color:white;box-shadow:0 10px 22px #173c6421}
.btn-primary:hover{background:#235688}
.btn-outline{border:1px solid #c7d4df;color:var(--navy);background:#fff}
.btn-outline:hover{background:#f4f8fd}
.btn-white{background:#fff;color:#173c64}
.btn-white:hover{background:#f1f4fc}
.hero-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.hero-proof span{font-size:12px;font-weight:640;color:#64788b}
.hero-proof span:not(:last-child):after{content:"•";color:#b8c3ce;margin-left:10px}
.hero-visual{padding:29px 28px;border:1px solid #d8e4ed;border-radius:26px;background:#fff;box-shadow:0 24px 65px #12344b14;position:relative;transform:rotate(.5deg)}
.hero-visual:before{content:"";position:absolute;left:35px;top:-10px;width:80px;height:5px;border-radius:6px;background:linear-gradient(90deg,#2a66bc 35%,#e6e9ed 35% 67%,#e45c62 67%)}
.small-label{font-size:11px;letter-spacing:1.2px;font-weight:850;color:#66839d;margin-bottom:21px}
.journey{background:linear-gradient(135deg,#f7fafc,#fff);padding:5px 15px;border-radius:17px;border:1px solid #e7edf3}
.journey-line{display:grid;grid-template-columns:15px 1fr 32px;align-items:center;gap:17px;min-height:83px;position:relative}
.journey-line:not(:last-child):after{content:"";position:absolute;height:48px;top:53px;left:6px;width:2px;background:#d6e1eb}
.dot{height:13px;width:13px;border-radius:50%;border:3px solid #d5e1ed;background:white;z-index:1}
.dot.done{background:#2a78bd;border-color:#cfe3f4}
.dot.now{background:#da525b;border-color:#f5d0d3}
.journey-line strong{display:block;color:#17364f;font-size:16px;font-weight:790}
.journey-line div span{display:block;color:#697f90;font-size:13px;margin-top:2px}
.step{color:#8699ad;font-weight:800;font-size:13px}
.done-step{color:#2671ad}
.journey-bottom{font-size:12px;color:#697b90;padding-top:18px;display:flex;align-items:center;gap:10px}
.badge-dot{width:7px;height:7px;background:#d35261;border-radius:50%}
.trust{background:#f2f7fb;border-top:1px solid #e0e9ef;border-bottom:1px solid #e0e9ef;color:#436076;font-size:14px}
.trust .wrap{padding:15px 0}
.trust strong{color:#153b5a}
.section{padding-top:82px;padding-bottom:82px}
.section-warm{background:#f8fafc}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:31px}
.section-head>div{max-width:700px}
.section-head h2,.editorial h2{font-size:clamp(28px,3.6vw,42px);letter-spacing:-1.4px;line-height:1.19;color:var(--navy);margin:12px 0 0}
.section-head>p{max-width:340px;margin:0;color:#687c8d;font-size:14px}
.topics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.topic{display:flex;gap:21px;align-items:flex-start;min-height:145px;background:#fff;border:1px solid var(--border);padding:26px;border-radius:17px;text-decoration:none!important;color:var(--ink)}
.topic:hover{box-shadow:0 12px 25px #183f650b;border-color:#c4d7e7}
.topic-number{background:#e8f1f9;color:#28649c;font-size:13px;font-weight:800;padding:9px;border-radius:10px}
.topic h3{margin:0 0 5px;font-size:19px;letter-spacing:-.5px}
.topic p{margin:0;color:#65788b;font-size:14px;line-height:1.62}
.topic-arrow{margin-left:auto;color:#94a4b4}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.post-card{display:flex;flex-direction:column;align-items:flex-start;min-height:270px;background:#fff;border:1px solid var(--border);border-radius:19px;padding:25px 23px;transition:box-shadow .15s,transform .15s}
.post-card:hover{box-shadow:0 14px 32px #1f486411;transform:translateY(-3px)}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;flex-wrap:wrap}
.tag{display:inline-block;color:#205b91;background:#eaf2f8;padding:6px 10px;border-radius:8px;font-size:11px;font-weight:780;letter-spacing:.2px}
.readtime{color:#8593a3;font-size:11px;font-weight:620}
.post-card h3{font-size:20px;line-height:1.34;letter-spacing:-.5px;margin:21px 0 12px}
.post-card h3 a{color:#13324d}
.post-card h3 a:hover{color:#2767ac;text-decoration:none}
.post-card p{font-size:14px;color:#627589;line-height:1.69;margin:0 0 19px}
.read-more{display:inline-flex;align-items:center;gap:8px;color:#205d9c;font-size:13px;font-weight:800;margin-top:auto;text-decoration:none!important}
.read-more:hover{gap:12px}
.app-banner{display:flex;justify-content:space-between;align-items:center;gap:30px;background:linear-gradient(115deg,#112c49,#194b70);color:white;border-radius:24px;padding:40px 48px;overflow:hidden;position:relative}
.app-banner:after{content:"N";font:800 200px/.8 Georgia,serif;color:#ffffff07;position:absolute;right:17%;top:6%}
.app-banner>*{position:relative;z-index:1}
.eyebrow.light{color:#8cbedf}
.app-banner h2{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:12px 0}
.app-banner p{color:#c5dae9;max-width:600px;margin:0 0 9px}
.app-banner small{color:#97b5ca}
.editorial{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:65px;padding-top:35px}
.editorial p{color:#647487;line-height:1.8;margin-top:0}
.footer{background:#0f253b;color:#b8c9d7;padding:58px 0 0}
.footer-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:80px;padding-bottom:50px}
.footer-inner p{max-width:510px;font-size:13px;line-height:1.8;color:#a9bccf}
.footer-inner .footer-title{font-size:23px;font-weight:850;color:white;margin:0 0 15px}
.flag-line{display:inline-block;width:7px;height:22px;background:linear-gradient(#2770ca 33%,#fff 33% 66%,#e34c55 66%);vertical-align:middle;margin-right:7px}
.footer-links{display:flex;flex-direction:column;gap:7px}
.footer-links a{color:#e0ebf4;font-size:13px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #294258;padding:19px 0;font-size:11px;color:#8096a8}
.article-hero{background:linear-gradient(120deg,#f4f8fb,#fff 70%);border-bottom:1px solid #e9eef4;padding:54px 0 62px}
.crumbs{color:#8494a3;font-size:12px;margin:0 0 28px}
.crumbs a{color:#59758e}
.crumbs span{margin-right:6px;margin-left:6px}
.article-hero h1,.plain-hero h1{font-size:clamp(35px,4.6vw,54px);color:var(--navy);line-height:1.17;letter-spacing:-2px;margin:18px 0 20px}
.article-lead{font-size:18px;line-height:1.81;color:#536d81}
.article-meta{display:flex;gap:17px;flex-wrap:wrap;font-size:12px;color:#74879a;margin-top:20px}
.article-meta span:not(:last-child):after{content:"•";margin-left:17px;color:#bac9d5}
.article-shell{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:65px;align-items:start;padding-top:58px;padding-bottom:36px}
.article-text{font-size:16px;color:#33495d;line-height:1.91}
.article-text p{margin:15px 0}
.article-text h2,.plain-content h2{color:#173e5f;letter-spacing:-.65px;line-height:1.27;font-size:26px;margin:0 0 15px}
.article-section{margin-bottom:44px}
.article-list{padding-left:25px;margin:18px 0}
.article-list li{padding-left:5px;margin:9px 0}
.article-notice{background:#edf5fc;border:1px solid #dceaf4;border-left:4px solid #347bb0;border-radius:12px;padding:17px 20px;margin-bottom:38px;font-size:14px;line-height:1.7;color:#3d607b}
.article-sources{border-top:1px solid var(--border);padding-top:26px;margin:15px 0 45px}
.article-sources ul{padding-left:21px}
.article-sources li{margin:8px 0;font-size:14px}
.article-sources a{word-break:break-word}
.article-sources p{font-size:14px;color:#657789}
.article-end{border-top:1px solid #e8edf2;padding:21px 0;display:flex;justify-content:space-between;gap:15px;font-size:13px}
.article-end span{color:#677a8b}
.article-end a{font-weight:760}
.article-aside{position:sticky;top:20px;display:flex;flex-direction:column;gap:14px}
.aside-panel{background:#f7fafc;border:1px solid #e4ecf2;padding:24px;border-radius:18px}
.aside-panel h3{color:#193e5a;margin:12px 0;font-size:20px;letter-spacing:-.5px}
.aside-panel p{color:#62788a;line-height:1.72;font-size:14px}
.aside-panel.subdued{background:#fff}
.btn-full{display:flex;width:100%;margin-top:22px;font-size:12px;padding:13px}
.related{padding-top:40px}
.related h2{color:var(--navy);font-size:31px;letter-spacing:-1px;margin:8px 0 27px}
.plain-hero{padding-top:78px;padding-bottom:30px}
.plain-content{padding-bottom:90px}
.plain-content h2{margin:35px 0 10px}
.plain-content p{color:#53677a;line-height:1.88}
.note{background:#f2f7fc;padding:15px 19px;border-radius:12px;font-size:14px;color:#536a80!important}
.error-page{padding-top:120px;padding-bottom:150px;max-width:730px}
.error-page h1{font-size:48px;color:var(--navy);line-height:1.15}
.error-page p{color:#64778a;margin-bottom:35px}
@media(max-width:1050px){.hero-grid{gap:26px}.article-shell{gap:30px;grid-template-columns:minmax(0,1fr) 260px}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.wrap{width:min(100% - 32px,650px)}.header-in{min-height:76px}.header-in nav{gap:14px}.header-in nav>a:not(.nav-app){display:none}.nav .nav-app{font-size:12px}.brand-text strong{font-size:17px}.brand-symbol{height:43px;width:43px}.hero-grid{grid-template-columns:1fr;gap:38px;padding-top:58px;padding-bottom:55px}.hero h1{font-size:clamp(40px,9vw,61px);letter-spacing:-1.8px}.hero-lead{font-size:16px}.hero-visual{max-width:540px;width:100%;margin:auto}.section{padding-top:58px;padding-bottom:58px}.section-head{align-items:start;flex-direction:column;gap:14px}.section-head>p{max-width:550px}.topics{grid-template-columns:1fr}.topic{min-height:120px}.post-grid{grid-template-columns:1fr}.post-card{min-height:235px}.app-banner{padding:28px;flex-direction:column;align-items:start}.app-banner h2{font-size:29px}.editorial{grid-template-columns:1fr;gap:18px}.footer-inner{grid-template-columns:1fr;gap:25px}.footer-bottom{flex-direction:column;gap:6px}.article-hero{padding-top:36px;padding-bottom:42px}.article-hero h1,.plain-hero h1{font-size:clamp(32px,8vw,47px);letter-spacing:-1.25px}.article-shell{grid-template-columns:1fr;padding-top:35px}.article-aside{position:static;grid-row:2}.article-meta{gap:7px}.article-meta span:not(:last-child):after{margin-left:7px}.article-end{flex-direction:column}.plain-hero{padding-top:45px}}
@media(max-width:390px){.wrap{width:calc(100% - 26px)}.header-in nav .nav-app{padding:10px 11px}.brand-text small{font-size:9px}.brand-symbol{width:37px;height:37px;font-size:27px}.article-hero h1{font-size:32px}.hero h1{font-size:39px}.hero-visual{padding:22px 17px}.post-card{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.post-card{transition:none}}
