:root{--navy:#0F2D4D;--navy-deep:#0A2038;--ink:#1A2332;--text:#2B3542;--muted:#5A6572;--paper:#F7F5F0;--white:#fff;--line:#D8D2C4;--gold:#C6A15B;--gold-dark:#8C6D1F}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);line-height:1.6;background:var(--white)}
.demo{position:sticky;top:0;background:#B42318;color:#fff;text-align:center;padding:.5rem 1rem;font-size:.9rem;z-index:20}
header.site{border-bottom:1px solid var(--line);background:var(--white)}
.head{max-width:960px;margin:0 auto;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--navy)}
.monogram{display:inline-flex;width:44px;height:44px;background:var(--navy);color:#fff;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:1.2rem;border-bottom:4px solid var(--gold)}
.wordmark{font-family:Georgia,serif;letter-spacing:.08em;font-size:1.05rem;color:var(--navy)}
.wordmark span{color:var(--gold-dark)}
nav.main{display:flex;flex-wrap:wrap;gap:.6rem 1rem}nav.main a{color:var(--navy);text-decoration:none;font-size:.95rem;white-space:nowrap}nav.main a:hover{text-decoration:underline}
.wrap{max-width:960px;margin:0 auto;padding:2rem 1.2rem 3rem}
.eyebrow{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);font-weight:700}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);line-height:1.25}
h1{font-size:2.4rem;margin:.5rem 0}h2{font-size:1.6rem;margin-top:2.5rem}h3{font-size:1.2rem}
.rule{height:3px;width:64px;background:var(--gold);margin:1rem 0}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}
.hero img{width:100%;height:auto;border:1px solid var(--line)}
.caption{font-size:.85rem;color:var(--muted)}
.btn{display:inline-block;padding:.75rem 1.5rem;text-decoration:none;border-radius:2px;font-weight:600}
.btn-primary{background:var(--navy);color:#fff}.btn-secondary{border:1px solid var(--navy);color:var(--navy)}
.btn-primary:hover,.btn-secondary:hover{box-shadow:0 6px 18px rgba(15,45,77,.18)}
.visa-list{border-top:1px solid var(--line);margin-top:1rem}
.visa-item{border-bottom:1px solid var(--line);padding:1.2rem 0}
.visa-item p{margin:.3rem 0}.visa-item a{color:var(--navy);font-weight:600}
.note{border:1px solid var(--line);background:var(--paper);padding:1rem}
form label{display:block;margin-top:1rem;font-weight:600;color:var(--navy)}
form input,form select,form textarea{width:100%;padding:.7rem;border:1px solid var(--line);border-radius:2px;font:inherit;margin-top:.3rem}
form input:focus,form select:focus,form textarea:focus{outline:2px solid var(--navy);outline-offset:1px}
.checkbox{display:flex;gap:.6rem;align-items:flex-start;margin-top:1rem;font-weight:400}
.checkbox input{width:auto;margin-top:.3rem;flex-shrink:0}
.checkbox a{white-space:nowrap}
.success{display:none;border:1px solid var(--navy);background:var(--paper);padding:1rem;margin-top:1rem}
footer.site{background:var(--navy-deep);color:#E8EDF2;margin-top:3rem}
footer.site .wrap{padding:2rem 1.2rem}footer.site a{color:var(--gold)}footer.site h3{color:#fff}
@media(max-width:640px){.hero{grid-template-columns:1fr}h1{font-size:1.9rem}nav.main a{margin-left:.6rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
