:root { --ink:#11121d; --cream:#ebe5da; --paper:#fcfaf5; --gold:#d6b36a; --muted:#5b5863; --line:rgba(17,18,29,.15); --soft:#e8eef0; --shadow:0 24px 58px rgba(17,18,29,.13); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:96px; }
body { margin:0; color:var(--ink); background:radial-gradient(circle at 85% -8%,#f3dfb2 0,transparent 32%),var(--cream); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.55; }
a { color:inherit; text-decoration:none; }
button { touch-action:manipulation; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.container { width:min(1120px,calc(100% - 40px)); margin:0 auto; }
.announcement { padding:9px 16px; background:linear-gradient(90deg,#bd8d42,#e2c47e,#bd8d42); color:var(--ink); text-align:center; font-size:.83rem; font-weight:850; }
.header { position:sticky; top:0; z-index:10; border-bottom:1px solid var(--line); background:rgba(235,229,218,.92); backdrop-filter:blur(15px); }
.header-row { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:22px; }
.brand img { display:block; width:auto; height:33px; filter:invert(1); }
.nav { display:flex; align-items:center; gap:20px; font-size:.88rem; font-weight:820; }
.nav a:not(.button) { opacity:.72; }
.nav a:not(.button):hover { opacity:1; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; gap:9px; padding:14px 19px; border:0; border-radius:999px; font:inherit; font-weight:850; transition:transform .2s,box-shadow .2s; }
.button:hover { transform:translateY(-3px); box-shadow:0 12px 24px rgba(17,18,29,.16); }
.button.dark { color:#fff; background:var(--ink); }
.button.gold { color:var(--ink); background:linear-gradient(135deg,#ead195,#b9883d); }
.button.line { border:1px solid var(--ink); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.eyebrow { margin:0 0 14px; color:#7d5c28; font-size:.76rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow::before { content:""; display:inline-block; width:9px; height:9px; margin-right:8px; border-radius:50%; background:currentColor; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { letter-spacing:-.048em; line-height:.98; }
h1 { max-width:800px; margin-bottom:20px; font-size:clamp(3.3rem,7vw,6.3rem); }
h2 { margin-bottom:16px; font-size:clamp(2.25rem,4.8vw,4.4rem); }
h3 { margin-bottom:8px; font-size:1.28rem; }
.lead { max-width:680px; color:var(--muted); font-size:1.1rem; }
.hero { position:relative; overflow:hidden; padding:92px 0 82px; }
.hero::after { content:""; position:absolute; right:-118px; top:-220px; width:560px; height:560px; border:1px solid rgba(17,18,29,.14); border-radius:50%; box-shadow:0 0 0 38px rgba(17,18,29,.045),0 0 0 76px rgba(17,18,29,.035); }
.hero .container { position:relative; z-index:1; }
.motto { display:inline-flex; margin:0 0 19px; padding:8px 12px; border:1px solid rgba(17,18,29,.18); border-radius:999px; background:rgba(255,255,255,.42); color:#74541e; font-size:.78rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.split { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; }
.card { padding:25px; border:1px solid var(--line); border-radius:23px; background:rgba(252,250,245,.82); }
.card p { margin:0; color:var(--muted); }
.card .number { display:block; margin-bottom:28px; color:#8a652b; font-size:.72rem; font-weight:900; letter-spacing:.12em; }
section { padding:92px 0; }
.paper { background:var(--paper); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.dark { color:#fff; background:var(--ink); }
.dark .eyebrow { color:var(--gold); }
.dark .lead { color:#c4cee4; }
.guide-grid { display:grid; grid-template-columns:.83fr 1.17fr; gap:42px; align-items:start; }
.checklist { display:grid; gap:10px; }
.check { display:flex; gap:12px; padding:15px; border:1px solid var(--line); border-radius:15px; background:var(--cream); color:var(--ink); font-size:.93rem; }
.check b { display:grid; flex:0 0 29px; width:29px; height:29px; place-items:center; border-radius:10px; background:var(--gold); }
.notice { margin-top:20px; padding:15px 17px; border-left:3px solid #b9883d; background:#f5ead0; color:#504638; font-size:.9rem; }
.country-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:11px; margin-top:35px; }
.country { min-height:162px; padding:19px; border:1px solid rgba(255,255,255,.2); border-radius:20px; background:rgba(255,255,255,.055); }
.country b { display:block; margin-bottom:10px; font-size:1.13rem; }
.country p { margin:0; color:#c9d4e8; font-size:.85rem; }
.policy { max-width:830px; }
.policy h2 { margin-top:43px; font-size:2rem; }
.policy h3 { margin-top:25px; font-size:1.16rem; }
.policy p,.policy li { color:var(--muted); }
.policy ul { padding-left:22px; }
.policy li { margin-bottom:8px; }
.policy .date { color:#6f562c; font-size:.84rem; font-weight:800; }
.cta { padding:64px 0; background:linear-gradient(135deg,#c99d75,#d5b36c); }
.cta-layout { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.cta h2 { max-width:690px; margin:0; font-size:clamp(2.3rem,4.5vw,4.2rem); }
footer { padding:30px 0; color:#fff; background:var(--ink); }
.footer-row { display:flex; align-items:center; justify-content:space-between; gap:20px; }
footer .brand img { filter:none; }
footer p { margin:0; color:#b7c3d9; font-size:.82rem; }
.footer-links,.social-links { display:flex; flex-wrap:wrap; gap:10px 16px; font-size:.8rem; font-weight:800; }
.footer-links a:hover { color:var(--gold); }
.social-links a { padding:6px 9px; border:1px solid rgba(255,255,255,.22); border-radius:999px; }
.social-links a:hover { color:var(--ink); background:var(--gold); border-color:var(--gold); }
@media (max-width:850px) { .guide-grid { grid-template-columns:1fr; } .country-grid { grid-template-columns:repeat(2,1fr); } .nav { gap:13px; } .nav a:not(.button) { display:none; } .nav a:first-child { display:inline-flex; } .footer-row { align-items:flex-start; flex-direction:column; } .cta-layout { align-items:flex-start; flex-direction:column; } }
@media (max-width:560px) { .container { width:min(100% - 28px,1120px); } .announcement { font-size:.76rem; } .header-row { min-height:70px; } .brand img { height:29px; } .nav { gap:8px; } .nav a:first-child { display:none; } .nav .button { min-height:42px; padding:11px 14px; font-size:.8rem; } .hero { padding:64px 0 58px; } .hero::after { right:-225px; top:-160px; opacity:.55; } h1 { font-size:clamp(2.8rem,13vw,3.5rem); } section { padding:70px 0; } .split,.country-grid { grid-template-columns:1fr; } .cta { padding:52px 0; } .footer-row { align-items:flex-start; flex-direction:column; } }
@media (hover:none) { .button:hover,.intake-card:hover { transform:none; box-shadow:none; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
