:root{
  --bg:#ffffff;
  --surface:#f5f7f7;
  --surface-2:#eef2f2;
  --ink:#14242c;
  --muted:#647279;
  --navy:#0c2531;
  --navy-2:#123746;
  --accent:#176875;
  --accent-dark:#0f505b;
  --accent-soft:#dbe9ea;
  --line:#dce3e4;
  --line-strong:#bfcacc;
  --ok:#2f6b55;
  --warn:#90672b;
  --danger:#8a4242;
  --shadow:0 14px 42px rgba(12,37,49,.08);
  --shadow-strong:0 30px 90px rgba(12,37,49,.16);
  --display:'Newsreader',Georgia,'Times New Roman',serif;
  --body:'Manrope','Avenir Next',sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.66;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.modal-open{overflow:hidden}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}
button,input,select,textarea{font:inherit;color:inherit}
img,svg{max-width:100%;height:auto}
.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.measure{width:min(800px,calc(100% - 48px));margin-inline:auto}
.skip{position:fixed;left:16px;top:-100px;z-index:9999;background:#fff;border:1px solid var(--navy);padding:10px 14px}.skip:focus{top:16px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-height:44px}
.brand-symbol{width:22px;height:28px;position:relative;flex:0 0 auto;border-left:2px solid var(--accent);border-right:2px solid var(--accent)}
.brand-symbol::before,.brand-symbol::after{content:'';position:absolute;left:4px;right:4px;height:2px;background:var(--accent)}
.brand-symbol::before{top:7px}.brand-symbol::after{bottom:7px}
.brand-name{font:700 1.16rem/1 var(--display);letter-spacing:.025em}.brand-name small{display:block;font:650 .54rem/1.2 var(--body);letter-spacing:.08em;color:var(--muted);margin-top:5px;text-transform:none}
.navlinks{display:flex;justify-content:center;align-items:center;gap:26px}.navlinks a{text-decoration:none;font-size:.79rem;font-weight:650;color:#4e5c63;transition:color .2s ease}.navlinks a:hover{color:var(--accent)}
.nav-actions{display:flex;align-items:center;gap:9px}.menu{display:none;border:1px solid var(--line-strong);background:#fff;padding:9px 12px;min-width:44px;min-height:44px;cursor:pointer}.consult{border:1px solid var(--navy);background:var(--navy);color:#fff;padding:10px 16px;min-height:44px;cursor:pointer;font-weight:700;font-size:.78rem;transition:background .2s ease,border-color .2s ease}.consult:hover{background:var(--accent-dark);border-color:var(--accent-dark)}

/* Typography */
h1,h2,h3{font-family:var(--display);color:var(--ink);font-weight:600;letter-spacing:-.035em}
.eyebrow,.kicker{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--accent)}
.lead{font-size:1.05rem;color:#526169;max-width:820px}.section h2,.section-tight h2{font-size:clamp(2.2rem,4.2vw,3.85rem);line-height:1.04;margin:.2em 0 .36em}

/* Hero */
.hero{background:#fff;color:var(--ink);padding:clamp(88px,9vw,132px) 0 0;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:88px;align-items:start}
.hero .eyebrow{color:var(--accent)}
.hero h1{font-size:clamp(3.7rem,7.1vw,6.8rem);line-height:.95;margin:.16em 0 .27em;max-width:900px;letter-spacing:-.055em;color:var(--navy)}
.hero p{font-size:clamp(1.02rem,1.2vw,1.17rem);max-width:790px;color:#53636b;margin:0}.hero p strong{color:var(--navy)!important}
.hero .actions{margin-top:32px}
.hero-purpose{background:transparent;color:var(--ink);padding:0;border-top:1px solid var(--navy);box-shadow:none}
.hero-purpose>span{display:block;padding-top:17px;font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--accent)}
.hero-purpose h2{font-size:1.75rem;line-height:1.08;margin:.42em 0 .78em;color:var(--navy)}
.hero-purpose-list{display:grid;gap:0;border-top:1px solid var(--line)}
.hero-purpose-link{display:grid;grid-template-columns:36px 1fr 20px;gap:12px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .25s var(--ease),color .2s ease}
.hero-purpose-link:hover{padding-left:8px;color:var(--accent-dark)}
.hero-purpose-link b{font-family:var(--display);font-size:1.04rem;display:block;line-height:1.2}.hero-purpose-link small{display:block;color:var(--muted);font-size:.76rem;line-height:1.5;margin-top:3px}.hero-purpose-link .n{color:var(--accent);font:700 .95rem/1 var(--display)}.hero-purpose-link .arr{color:var(--accent)}
.hero-bottom{margin-top:78px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}
.hero-bottom>div{padding:20px 22px 22px 0;margin-right:22px;border-right:1px solid var(--line)}.hero-bottom>div:last-child{border-right:0;margin-right:0}
.hero-bottom strong{display:block;color:var(--navy);font-family:var(--display);font-size:1.05rem}.hero-bottom span{font-size:.74rem;color:#7a878d}

/* General */
.section{padding:96px 0}.section-tight{padding:68px 0}.section-white{background:#fff;border-top:0;border-bottom:1px solid var(--line)}.section-dark{background:var(--navy);color:#d5dfe2;padding:96px 0}.section-dark h2,.section-dark h3{color:#fff}.section-dark .lead{color:#b9c7cb}.section-dark .kicker{color:#75b2ba}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;border:1px solid var(--navy);background:transparent;text-decoration:none;font-size:.82rem;font-weight:750;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-soft{background:#fff;border-color:var(--line-strong);color:var(--navy)}.btn-soft:hover{border-color:var(--accent);color:var(--accent-dark)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}

/* Home start */
.start-intro{display:grid;grid-template-columns:1fr .62fr;gap:76px;align-items:end;margin-bottom:42px}.start-intro .lead{margin-bottom:0}.start-note{border-left:2px solid var(--accent);padding-left:22px;color:var(--muted);font-size:.88rem}
.start-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--navy);border-bottom:1px solid var(--line)}
.start-card{padding:32px 28px 32px 0;margin-right:28px;border-right:1px solid var(--line);text-decoration:none;min-height:250px;display:flex;flex-direction:column;transition:color .2s ease}
.start-card:last-child{border-right:0;margin-right:0}.start-card:hover{color:var(--accent-dark)}.start-card .step{font:650 1.35rem/1 var(--display);color:var(--accent)}.start-card h3{font-size:1.52rem;line-height:1.14;margin:.55em 0 .35em}.start-card p{font-size:.89rem;color:var(--muted);margin:0}.start-card .go{margin-top:auto;padding-top:22px;font-size:.79rem;font-weight:800;color:var(--accent-dark)}

/* Principle */
.principle-wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:82px;align-items:start}.principle-big{font-family:var(--display);font-size:clamp(2.5rem,4.7vw,4.55rem);line-height:1.02;letter-spacing:-.04em;color:#fff}.principle-list{border-top:1px solid rgba(255,255,255,.22)}.principle-item{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:23px 0;border-bottom:1px solid rgba(255,255,255,.14)}.principle-item .num{font-family:var(--display);color:#7fb7be;font-size:1.15rem}.principle-item strong{color:#fff;font-family:var(--display);font-size:1.18rem;display:block}.principle-item span{font-size:.85rem;color:#aebdc1}

/* Features / tools */
.feature{border-top:1px solid var(--navy);padding:21px 2px 0}.feature .no{font-family:var(--display);font-size:1.4rem;color:var(--accent)}.feature h3{font-size:1.42rem;line-height:1.16;margin:.35em 0}.feature p{font-size:.89rem;color:#5d6b72}.feature a{font-size:.8rem;font-weight:750;text-decoration-color:#7fb7be}.section-dark .feature{border-color:#4e626c}.section-dark .feature p{color:#b7c5c9}
.tool{background:#fff;border:1px solid var(--line);padding:34px;box-shadow:none}.tool-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:28px}.tool-head h3{font-size:1.7rem;line-height:1.14;margin:0 0 5px}.tool-head p{margin:0;color:var(--muted);font-size:.84rem}.local{font-size:.67rem;border:1px solid #a5c7be;color:var(--ok);padding:6px 9px;white-space:nowrap;background:#f4f9f7}.progress{height:3px;background:#e7eded;margin:0 0 28px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);width:20%;transition:width .3s var(--ease)}.wizard-step{display:none}.wizard-step.active{display:block}.wizard-step h3{font-size:1.43rem;line-height:1.2}.choice-grid{display:grid;gap:9px;margin-top:18px}.choice{width:100%;text-align:left;border:1px solid var(--line);background:#fff;padding:14px 15px;min-height:50px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.choice:hover{border-color:var(--accent);background:#f7fbfb}.risk{padding:17px 18px;border-left:4px solid;background:#f5f7f7}.risk.low{border-color:var(--ok);background:#eef5f2}.risk.mid{border-color:var(--warn);background:#f8f3e9}.risk.high{border-color:var(--danger);background:#f9eeee}.risk strong{display:block;font-family:var(--display);font-size:1.18rem;margin-bottom:4px}
.field{margin:16px 0}.field label{display:block;font-weight:750;margin-bottom:7px}.field small{display:block;color:var(--muted);font-size:.75rem;margin-top:5px}textarea,input,select{width:100%;border:1px solid var(--line-strong);background:#fff;padding:13px 14px;outline:0}textarea{min-height:150px;resize:vertical}textarea:focus,input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(23,104,117,.10)}.output{border:1px solid var(--line);padding:18px;background:#f7f9f9;margin-top:16px}.output[hidden]{display:none}.output textarea{min-height:250px}.alert{border-left:3px solid var(--accent);background:#eef6f6;padding:14px 16px;margin:15px 0}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.check-item{border:1px solid var(--line);background:#fff;padding:13px;display:flex;gap:10px;align-items:flex-start}.check-item input{width:auto;margin-top:5px}

/* Editorial lists */
.editorial-list{border-top:1px solid var(--navy)}.editorial-row{display:grid;grid-template-columns:125px 1fr 28px;gap:20px;align-items:center;padding:23px 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:color .2s ease,padding .25s var(--ease)}.editorial-row:hover{color:var(--accent-dark);padding-left:12px;padding-right:12px}.editorial-row .tag{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:800}.editorial-row strong{font-family:var(--display);font-size:1.18rem;line-height:1.2}.editorial-row .arrow{color:var(--accent)}

/* Inner pages */
.page-hero{padding:86px 0 62px;background:#fff;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3rem,6.2vw,5.55rem);line-height:.99;margin:.2em 0;max-width:1020px;color:var(--navy)}.page-hero p{font-size:1.03rem;color:#53636b;max-width:820px}.breadcrumbs{font-size:.74rem;color:#7d898e}.breadcrumbs a{color:#4f5e65}
.prose h2{font-size:clamp(1.9rem,3.3vw,2.5rem);line-height:1.12;margin-top:2em;margin-bottom:.5em}.prose h3{font-size:1.42rem;line-height:1.2;margin-top:1.6em;margin-bottom:.4em}.prose p,.prose li{font-size:.97rem}.prose blockquote{margin:26px 0;border-left:2px solid var(--accent);padding:5px 0 5px 20px;font-family:var(--display);font-size:1.3rem;line-height:1.36;color:#394a52}.article-shell{display:grid;grid-template-columns:minmax(0,800px) minmax(220px,290px);gap:82px;align-items:start}.article-meta{display:flex;flex-wrap:wrap;gap:9px 18px;color:var(--muted);font-size:.75rem;margin-top:20px}.article-aside{position:sticky;top:104px;border-top:1px solid var(--navy);padding-top:18px}.article-aside h3{font-size:1.3rem;line-height:1.18;margin:.1em 0 .4em}.article-aside p,.article-aside li{font-size:.8rem;color:#5e6d73}.author-box{margin-top:56px;padding:28px 0;border-top:1px solid var(--navy);border-bottom:1px solid var(--line)}.author-box h3{font-size:1.38rem;margin:.1em 0}.author-box p{color:#5c6b72}.contact-lines{display:grid;gap:5px;font-size:.83rem}.source-list{margin-top:36px;padding-top:20px;border-top:1px solid var(--line)}.source-list a{display:block;margin:7px 0;font-size:.85rem;font-weight:650}.note{border-left:3px solid var(--accent);padding:15px 18px;background:#f1f6f6;margin:24px 0}.source-card{border-top:1px solid var(--navy);padding:21px 0}.source-card a{font-weight:700;color:var(--accent-dark)}.site-map{columns:2;column-gap:60px}.site-map section{break-inside:avoid;margin-bottom:30px}.site-map h2{font-size:1.46rem}.site-map a{font-size:.87rem}

/* Footer */
.footer{background:var(--navy);color:#c9d3d6;padding:58px 0 30px}.footer-grid{display:grid;grid-template-columns:1.25fr .7fr .9fr;gap:44px}.footer .brand-name{color:#fff}.footer .brand-name small{color:#8fa0a6}.footer .brand-symbol{border-color:#6faeb6}.footer .brand-symbol::before,.footer .brand-symbol::after{background:#6faeb6}.footer p{font-size:.79rem;color:#aab9bd}.footer h3{font:750 .67rem/1.2 var(--body);text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-top:0}.footer a{color:#eef3f4;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:20px;font-size:.72rem;color:#8fa0a6}

/* Modal */
dialog{border:0;padding:0;width:min(520px,calc(100% - 28px));background:#fff;box-shadow:var(--shadow-strong)}dialog::backdrop{background:rgba(3,20,28,.68);backdrop-filter:blur(3px)}.modal{padding:30px}.modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.modal h2{font-size:2rem;line-height:1.05;margin:.1em 0 .3em}.modal p{font-size:.87rem;color:#5a696f}.close{border:0;background:transparent;font-size:1.6rem;cursor:pointer;min-width:44px;min-height:44px}.modal-options{display:grid;gap:10px;margin-top:20px}.modal-option{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid var(--line);background:#fff;padding:15px 17px;text-decoration:none}.modal-option:hover{border-color:var(--accent)}.modal-option strong,.modal-option small{display:block}.modal-option small{color:var(--muted);font-size:.74rem}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;background:var(--navy);color:#fff;padding:9px 14px;z-index:200;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}

/* Motion */
@keyframes up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero .eyebrow,.hero h1,.hero p,.hero .actions,.hero-purpose{animation:up .58s var(--ease) both}.hero h1{animation-delay:.04s}.hero p{animation-delay:.08s}.hero .actions{animation-delay:.12s}.hero-purpose{animation-delay:.09s}.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.reveal.is-visible{opacity:1;transform:none}

@media(max-width:1024px){
 .hero-grid,.principle-wrap,.article-shell,.start-intro{grid-template-columns:1fr;gap:44px}.hero-purpose{max-width:700px}.start-grid{grid-template-columns:1fr}.start-card{min-height:auto;margin:0;padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.start-card:last-child{border-bottom:0}
 .grid-3{grid-template-columns:1fr 1fr}.article-aside{position:static}.navlinks{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;border-bottom:1px solid var(--line);padding:15px 28px 20px;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.navlinks.open{display:flex}.navlinks a{min-height:44px;display:flex;align-items:center;width:100%}.menu{display:inline-flex;align-items:center;justify-content:center}.nav{grid-template-columns:auto 1fr auto}.nav-actions{justify-self:end}.hero-bottom{grid-template-columns:repeat(2,1fr)}.hero-bottom>div:nth-child(2){border-right:0}.hero-bottom>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:640px){
 body{font-size:16px}.container,.measure{width:min(100% - 28px,1200px)}.nav{height:68px;gap:8px}.navlinks{top:68px}.brand-name{font-size:1rem}.brand-name small{display:none}.brand-symbol{width:19px;height:25px}.consult{font-size:.7rem;padding:8px 9px}.hero{padding:66px 0 0}.hero h1{font-size:clamp(3rem,15vw,4.8rem)}.hero-grid{gap:38px}.hero-purpose{padding:0}.hero-bottom{margin-top:48px;grid-template-columns:1fr}.hero-bottom>div{border-right:0!important;border-bottom:1px solid var(--line)!important;padding:14px 0;margin:0}.hero-bottom>div:last-child{border-bottom:0!important}.section{padding:66px 0}.section-tight{padding:50px 0}.section-dark{padding:72px 0}.grid-2,.grid-3,.check-grid,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.tool{padding:21px}.tool-head{display:block}.local{display:inline-block;margin-top:8px}.actions{display:grid}.btn{width:100%}.editorial-row{grid-template-columns:1fr 25px;gap:6px 10px;padding:18px 2px}.editorial-row .tag{grid-column:1/-1}.site-map{columns:1}.article-meta{display:grid;gap:3px}.page-hero{padding:60px 0 44px}.page-hero h1{font-size:clamp(2.75rem,13.5vw,4.45rem)}.modal{padding:22px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
