:root{
	--ct-brand:#2f6ae0;
	--ct-brand-strong:#1b3a8f;
	--ct-brand-ink:#fff;
	--ct-ink:#16213a;
	--ct-text:#16213a;
	--ct-text-muted:#5b6780;
	--ct-bg:#f4f6f9;
	--ct-surface:#fff;
	--ct-surface-soft:#e9effb;
	--ct-line:#dde3ec;
	--ct-focus:#2b8fc2;
	--ct-ok-bg:#e8f6ef;--ct-ok-line:#b9e2cb;--ct-ok-text:#17613d;
	--ct-warn-bg:#fff6e5;--ct-warn-line:#f0d9a8;--ct-warn-text:#7a5310;
	--ct-err-bg:#fdecea;--ct-err-line:#f3c9c5;--ct-err-text:#a8261d;
	--ct-grad:linear-gradient(135deg,var(--ct-brand),var(--ct-brand-strong));
	--ct-shadow-card:0 8px 24px rgba(15,40,60,.06);
	--ct-chart-1:#2f6ae0;--ct-chart-2:#b5521a;--ct-chart-3:#0a7f66;
	--ct-chart-4:#8446c9;--ct-chart-5:#6a7008;--ct-chart-6:#b02d86;
	--ct-chart-grid:#e4e9f2;--ct-chart-axis:#aab4c8;
	--ct-font:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--ct-font-mono:ui-monospace,"Cascadia Mono",Consolas,monospace;
	--ct-text-xs:13px;--ct-text-sm:14px;--ct-text-base:16px;--ct-text-lg:18px;
	--ct-text-xl:20px;--ct-text-2xl:25px;--ct-text-3xl:clamp(28px,4.2vw,40px);
	--ct-lh:1.55;
	--ct-space-1:4px;--ct-space-2:8px;--ct-space-3:12px;--ct-space-4:16px;
	--ct-space-5:24px;--ct-space-6:32px;--ct-space-7:48px;
	--ct-radius-sm:6px;--ct-radius-md:10px;--ct-radius-lg:12px;--ct-radius-xl:16px;--ct-radius-pill:999px;
	--ct-wrap:1080px;
	--ct-accent:#b3945c;
	--ct-accent-soft:#d8c49a;
	--ct-accent-ink:#1a1507;
	--ct-ink-deep:#0f1830;
	--ct-ink-mid:#16224a;
	--ct-ink-glow:#22336a;
	--ct-on-ink:#fff;
	--ct-on-ink-muted:rgba(255,255,255,.66);
	--ct-line-ink:rgba(255,255,255,.14);
	--ct-band:clamp(60px,9vw,130px);
	--ct-wide:1180px;
}
@media (prefers-color-scheme:dark){
	:root{
		--ct-brand:#6e9bff;
		--ct-brand-strong:#9db8ff;
		--ct-brand-ink:#0b1120;
		--ct-ink:#e6ecf7;
		--ct-text:#e6ecf7;
		--ct-text-muted:#9aa6bf;
		--ct-bg:#0d1322;
		--ct-surface:#141c2f;
		--ct-surface-soft:#1a2440;
		--ct-line:#28334d;
		--ct-focus:#7cc7ea;
		--ct-ok-bg:#12291f;--ct-ok-line:#24553d;--ct-ok-text:#8fe0b5;
		--ct-warn-bg:#2a2112;--ct-warn-line:#5a4520;--ct-warn-text:#f1cf8a;
		--ct-err-bg:#2c1614;--ct-err-line:#6a2c26;--ct-err-text:#f3a39b;
		--ct-shadow-card:0 8px 24px rgba(0,0,0,.35);
		--ct-chart-1:#4d82e8;--ct-chart-2:#d2762a;--ct-chart-3:#1a9077;
		--ct-chart-4:#9a6ae0;--ct-chart-5:#8a8f24;--ct-chart-6:#cc5a9e;
		--ct-chart-grid:#222d45;--ct-chart-axis:#55617c;
	}
}

*{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ct-bg);color:var(--ct-text);font-family:var(--ct-font);font-size:var(--ct-text-base);line-height:var(--ct-lh)}
a{color:var(--ct-brand)}
h1{font-size:var(--ct-text-3xl);line-height:1.15;margin:var(--ct-space-3) 0 var(--ct-space-3);letter-spacing:-.4px}
h2{font-size:var(--ct-text-xl);margin:0 0 var(--ct-space-2)}
h3{font-size:var(--ct-text-base);margin:0 0 var(--ct-space-2)}
:focus-visible{outline:3px solid var(--ct-focus);outline-offset:2px}

.ct-wrap{max-width:var(--ct-wrap);margin:0 auto;padding:0 var(--ct-space-4)}
.ct-header{border-bottom:1px solid var(--ct-line);background:var(--ct-surface)}
.ct-header .ct-wrap{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:var(--ct-space-4);row-gap:var(--ct-space-2);padding-top:var(--ct-space-5);padding-bottom:22px}
.ct-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ct-ink);justify-self:start}
.ct-brand img,.ct-brand svg{width:52px;height:52px;flex:0 0 52px}
.ct-brand .ct-word{font-size:21px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;margin-right:-.32em}
.ct-claim{grid-column:1/-1;margin:-4px 0 0;color:var(--ct-ink);font-size:15px;font-weight:500;letter-spacing:.2px}
.ct-claim span{color:var(--ct-brand)}
.ct-lang{display:flex;gap:2px;font-size:var(--ct-text-xs);font-weight:650;letter-spacing:.06em}
.ct-lang a{color:var(--ct-text-muted);text-decoration:none;padding:3px 7px;border-radius:var(--ct-radius-sm)}
.ct-lang a[aria-current="true"]{color:var(--ct-text);background:var(--ct-surface-soft)}
@media(max-width:560px){
	.ct-brand img,.ct-brand svg{width:42px;height:42px;flex-basis:42px}
	.ct-brand .ct-word{font-size:16px;letter-spacing:.24em;margin-right:-.24em}
	.ct-claim{font-size:var(--ct-text-sm)}
}

.ct-tag{display:inline-block;font-size:var(--ct-text-xs);font-weight:650;letter-spacing:.3px;text-transform:uppercase;color:var(--ct-warn-text);background:var(--ct-warn-bg);border:1px solid var(--ct-warn-line);border-radius:var(--ct-radius-pill);padding:3px 10px}
.ct-lead{font-size:var(--ct-text-lg);color:var(--ct-text-muted);margin:0 0 22px;max-width:36em}
.ct-fine{color:var(--ct-text-muted);font-size:var(--ct-text-xs);margin-top:var(--ct-space-3)}

.ct-card{background:var(--ct-surface);border:1px solid var(--ct-line);border-radius:var(--ct-radius-xl);padding:6px;box-shadow:var(--ct-shadow-card)}
.ct-panel{padding:var(--ct-space-4) var(--ct-space-4) var(--ct-space-4)}
.ct-panel .ct-sub{color:var(--ct-text-muted);margin:0 0 var(--ct-space-4);font-size:15px}

.ct-list{list-style:none;padding:0;margin:0 0 var(--ct-space-5);display:grid;gap:var(--ct-space-2)}
.ct-list li{display:flex;gap:var(--ct-space-3);align-items:flex-start;background:var(--ct-surface);border:1px solid var(--ct-line);border-radius:var(--ct-radius-lg);padding:var(--ct-space-3) 14px}
.ct-list b{display:block}
.ct-list span{color:var(--ct-text-muted);font-size:15px}
.ct-dot{flex:0 0 10px;height:10px;margin-top:8px;border-radius:50%;background:var(--ct-grad)}

.ct-note{background:var(--ct-surface-soft);border:1px solid var(--ct-line);color:var(--ct-text);border-radius:var(--ct-radius-lg);padding:14px var(--ct-space-4);font-size:15px}
.ct-note b{display:block;margin-bottom:var(--ct-space-1)}
.ct-note.is-ok{background:var(--ct-ok-bg);border-color:var(--ct-ok-line);color:var(--ct-ok-text)}
.ct-note.is-warn{background:var(--ct-warn-bg);border-color:var(--ct-warn-line);color:var(--ct-warn-text)}
.ct-note.is-err{background:var(--ct-err-bg);border-color:var(--ct-err-line);color:var(--ct-err-text)}

.ct-teaser{display:grid;gap:2px;margin-top:var(--ct-space-4);text-decoration:none;color:var(--ct-text);background:var(--ct-surface);border:1px solid var(--ct-line);border-left:4px solid var(--ct-brand);border-radius:var(--ct-radius-lg);padding:14px var(--ct-space-4)}
.ct-teaser:hover{border-color:var(--ct-brand)}
.ct-teaser .ct-kicker{font-size:var(--ct-text-xs);font-weight:650;letter-spacing:.3px;text-transform:uppercase;color:var(--ct-brand)}
.ct-teaser .ct-title{font-size:var(--ct-text-lg);font-weight:700}
.ct-teaser .ct-sub{color:var(--ct-text-muted);font-size:15px}

.ct-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;background:var(--ct-surface-soft);border-radius:var(--ct-radius-lg);padding:var(--ct-space-1)}
.ct-tabs button{appearance:none;border:0;background:transparent;color:var(--ct-text-muted);font:inherit;font-weight:600;padding:var(--ct-space-2) var(--ct-space-2);border-radius:9px;cursor:pointer}
.ct-tabs button[aria-selected="true"]{background:var(--ct-surface);color:var(--ct-text);box-shadow:0 1px 3px rgba(0,0,0,.08)}

label.ct-field{display:block;font-weight:600;font-size:var(--ct-text-sm);margin:var(--ct-space-3) 0 5px}
label.ct-field .ct-opt{font-weight:400;color:var(--ct-text-muted)}
.ct-input{width:100%;font:inherit;color:var(--ct-text);background:var(--ct-surface);border:1px solid var(--ct-line);border-radius:var(--ct-radius-md);padding:11px var(--ct-space-3)}
.ct-check{display:flex;gap:var(--ct-space-2);align-items:flex-start;font-weight:400;font-size:var(--ct-text-sm);margin:14px 0 0;color:var(--ct-text)}
.ct-check input{margin-top:3px;width:18px;height:18px;flex:0 0 18px}
.ct-check .ct-opt{color:var(--ct-text-muted)}

.ct-btn{appearance:none;border:1px solid var(--ct-line);border-radius:11px;background:var(--ct-surface);color:var(--ct-text);font:inherit;font-weight:600;padding:var(--ct-space-3) var(--ct-space-4);cursor:pointer}
.ct-btn:hover{border-color:var(--ct-brand)}
.ct-btn-primary{border:0;color:var(--ct-brand-ink);background:var(--ct-grad);font-weight:700;padding:13px var(--ct-space-4)}
.ct-btn-block{width:100%;margin-top:var(--ct-space-4)}
.ct-btn[disabled]{opacity:.6;cursor:progress}

.ct-result{margin-top:14px;border-radius:var(--ct-radius-md);padding:var(--ct-space-3) 14px;font-size:15px}
.ct-result.is-ok{background:var(--ct-ok-bg);border:1px solid var(--ct-ok-line);color:var(--ct-ok-text)}
.ct-result.is-err{background:var(--ct-err-bg);border:1px solid var(--ct-err-line);color:var(--ct-err-text)}

.ct-footer{border-top:1px solid var(--ct-line);background:var(--ct-surface)}
.ct-footer .ct-wrap{padding-top:var(--ct-space-5);padding-bottom:28px;color:var(--ct-text-muted);font-size:var(--ct-text-sm);display:grid;gap:var(--ct-space-2)}
.ct-footer h3{color:var(--ct-text);font-size:15px;margin:0}
.ct-footer p{margin:0}

.ct-visually-hidden{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.ct-band{padding:var(--ct-band) var(--ct-space-4)}
.ct-band-dark{background:var(--ct-ink-mid);color:var(--ct-on-ink)}
.ct-band-deep{background:var(--ct-ink-deep);color:var(--ct-on-ink)}
.ct-band-accent{background:var(--ct-accent);color:var(--ct-accent-ink)}
.ct-band-paper{background:var(--ct-bg);color:var(--ct-ink)}
.ct-inner{max-width:var(--ct-wide);margin:0 auto}
.ct-kicker{margin:0 0 18px;font-size:var(--ct-text-xs);letter-spacing:.2em;text-transform:uppercase;opacity:.65}
.ct-display{margin:0 0 clamp(28px,4vw,56px);font-size:clamp(30px,4.6vw,58px);letter-spacing:-1px;line-height:1.05}
.ct-statement{margin:0;font-size:clamp(20px,2.6vw,34px);line-height:1.25;letter-spacing:-.4px;max-width:20em;font-weight:600}
.ct-statement span{opacity:.62}

.ct-hero{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 90% at 50% 45%,var(--ct-ink-glow) 0%,var(--ct-ink-deep) 65%);color:var(--ct-on-ink)}
.ct-hero canvas{position:absolute;inset:0;width:100%;height:100%}
.ct-hero-copy{position:relative;text-align:center;padding:0 var(--ct-space-5)}
.ct-hero-copy h1{margin:0;font-size:clamp(38px,6.4vw,82px);line-height:1;letter-spacing:-1.8px;text-shadow:0 10px 44px rgba(8,14,30,.8)}
.ct-hero-copy h1 u{text-decoration:none;color:var(--ct-accent-soft)}
.ct-hero-copy p{margin:20px auto 0;max-width:26em;color:var(--ct-on-ink-muted);font-size:clamp(15px,1.6vw,19px);text-shadow:0 6px 24px rgba(8,14,30,.8)}

.ct-cols-2{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(24px,3.4vw,52px)}
.ct-cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3.4vw,52px)}
.ct-cols-4{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(24px,3.4vw,52px)}
.ct-items a,.ct-items>div{display:grid;gap:var(--ct-space-3);align-content:start;text-decoration:none;color:inherit;border-top:1px solid var(--ct-line-ink);padding-top:18px}
.ct-items em{display:flex;align-items:center;gap:10px;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--ct-accent-soft)}
.ct-items em::before{content:"";width:16px;height:18px;background:var(--ct-accent);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.ct-items b{font-size:clamp(17px,1.7vw,21px);line-height:1.3}
.ct-items span{color:var(--ct-on-ink-muted);font-size:15px}
.ct-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--ct-line-ink);border:1px solid var(--ct-line-ink)}
.ct-matrix div{background:var(--ct-ink-mid);padding:clamp(20px,2.6vw,32px);font-size:clamp(16px,1.7vw,20px);font-weight:600}
.ct-matrix div span{display:block;margin-top:6px;font-size:var(--ct-text-sm);font-weight:400;color:var(--ct-on-ink-muted)}
.ct-band-paper .ct-matrix{background:rgba(15,24,48,.12);border-color:rgba(15,24,48,.12)}
.ct-band-paper .ct-matrix div{background:var(--ct-bg);color:var(--ct-ink)}
.ct-band-paper .ct-matrix div span{color:var(--ct-text-muted)}
.ct-btn-on-accent{background:var(--ct-accent-ink);color:#fff;border:0;font-weight:700;padding:15px 30px;border-radius:2px;text-decoration:none;display:inline-block}
.ct-btn-on-dark{background:#fff;color:var(--ct-ink-mid);border:0;font-weight:700;padding:15px 30px;border-radius:2px;text-decoration:none;display:inline-block}
@media(max-width:1000px){.ct-cols-2,.ct-cols-3,.ct-cols-4,.ct-matrix{grid-template-columns:1fr}}
