:root{
  --navy:#0e2b48;--ink:#10253a;--cream:#f7f2e8;--paper:#fffdf8;--sage:#6d8066;--gold:#bd8a48;--rust:#c76c44;--plum:#77516f;--line:#d9d4c8;--muted:#67717a;
  --serif: Georgia, 'Times New Roman', serif; --sans: Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}.wrap{width:min(1180px,92vw);margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.96);border-bottom:1px solid #ece6da;backdrop-filter:blur(8px)}
.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:240px}.brand img{width:48px;height:48px;object-fit:contain}.brand-word{font-family:var(--serif);letter-spacing:.23em;font-size:18px}.brand-tag{font-size:11px;color:var(--muted);margin-top:-2px}
.nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:700;letter-spacing:.03em}.nav a:hover{opacity:.65}.nav .button{padding:10px 16px;border:1px solid var(--navy);border-radius:4px}.menu-btn{display:none;background:none;border:0;font-size:26px;color:var(--navy)}
.hero{min-height:560px;background:linear-gradient(90deg,rgba(247,242,232,.96) 0%,rgba(247,242,232,.74) 33%,rgba(247,242,232,.02) 66%),url('../images/hero-humanistan.jpg') center/cover no-repeat;display:flex;align-items:center}.hero-copy{max-width:520px;padding:62px 0}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:800;color:var(--sage)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;margin:0 0 18px}h1{font-size:clamp(48px,7vw,84px)}h2{font-size:clamp(34px,4vw,50px)}h3{font-size:28px}.lead{font-size:20px;line-height:1.5;max-width:720px}.hero .lead{max-width:430px}.warm{font-family:var(--serif);font-size:31px;color:#8b6748;margin:10px 0 22px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;background:var(--navy);color:white;border-radius:4px;font-size:13px;font-weight:800;letter-spacing:.05em}.btn.alt{background:transparent;color:var(--navy);border:1px solid var(--navy)}
.section{padding:78px 0}.section.soft{background:var(--cream)}.section.navy{background:var(--navy);color:white}.section-head{text-align:center;max-width:780px;margin:0 auto 42px}.section-head p{color:var(--muted)}.navy .section-head p{color:#d7e0e7}.grid{display:grid;gap:26px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}
.card{background:#fff;border:1px solid #ece6da;padding:28px;border-radius:6px}.soft .card{background:rgba(255,255,255,.56)}.card img.icon{width:54px;height:54px;margin-bottom:18px}.card h3{font-size:24px;margin-bottom:10px}.card p{margin:0;color:#394957}.principle{text-align:center;border-right:1px solid var(--line);padding:10px 26px}.principle:last-child{border-right:0}.principle img{width:62px;height:62px;margin:0 auto 14px}.principle strong{display:block;margin-bottom:8px}.principle p{font-size:14px;margin:0;color:#3e4851}
.split{display:grid;grid-template-columns:1fr 1.35fr}.split > div{padding:58px}.split .image-panel{min-height:360px;background:url('../images/passport-feature.jpg') center/cover no-repeat}.quote{font-family:var(--serif);font-size:34px;line-height:1.25;border-left:4px solid var(--gold);padding-left:24px}.narrow{max-width:780px;margin:0 auto}.prose h2{margin-top:42px}.prose h3{margin-top:30px}.prose p{font-size:18px}.prose ul{font-size:18px}.callout{padding:26px 30px;background:var(--cream);border-left:4px solid var(--gold);margin:30px 0}.kicker{font-family:var(--serif);font-size:38px;text-align:center}.cta-band{text-align:center;padding:48px 0;background:linear-gradient(90deg,#f4ebdc,#fffdf8,#f4ebdc)}
.footer{background:var(--navy);color:white;padding:34px 0}.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:42px;height:42px;object-fit:contain;background:white;padding:2px}.footer-links{display:flex;flex-wrap:wrap;gap:18px;font-size:12px}.fine{font-size:12px;color:#c8d3dc;margin-top:10px}.tagline{font-family:var(--serif);font-size:19px}.breadcrumbs{padding:20px 0;font-size:12px;color:var(--muted)}.page-hero{padding:72px 0 54px;background:var(--cream);border-bottom:1px solid #ebe2d4}.page-hero h1{font-size:clamp(46px,6vw,72px)}.page-hero p{max-width:750px;font-size:20px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--serif);font-size:24px}.faq p{max-width:760px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1/-1}label{display:block;font-weight:700;margin-bottom:6px}input,textarea{width:100%;padding:12px;border:1px solid #cfc8bb;border-radius:4px;background:white;font:inherit}textarea{min-height:140px}
@media(max-width:900px){.nav{display:none}.menu-btn{display:block}.nav.open{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:flex-start;padding:24px 4vw;background:white;border-bottom:1px solid #ddd}.hero{background:linear-gradient(rgba(247,242,232,.90),rgba(247,242,232,.78)),url('../images/hero-humanistan.jpg') center/cover no-repeat}.grid-5,.grid-4,.grid-3,.grid-2,.split{grid-template-columns:1fr 1fr}.principle{border-right:0;border-bottom:1px solid var(--line)}.footer-inner{flex-direction:column}}
@media(max-width:620px){.header-inner{height:68px}.brand-word{font-size:15px}.brand-tag{display:none}.brand img{width:42px;height:42px}.hero{min-height:500px}.hero-copy{padding:50px 0}.grid-5,.grid-4,.grid-3,.grid-2,.split,.form-grid{grid-template-columns:1fr}.split>div{padding:38px 6vw}.footer-links{gap:12px}.section{padding:58px 0}.page-hero{padding:54px 0 40px}.form-grid .full{grid-column:auto}}
