
:root{--navy:#0F294D;--cu:#B8864A;--cu-d:#8A6232;--gr:#70807A;--gr-d:#4E5C57;--bg:#FAF8F4;--bg2:#F1EEE7;--line:#DAD6CC;--max:1120px;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
html[lang^=ar]{--serif:"Noto Naskh Arabic","Traditional Arabic","Geeza Pro","Segoe UI",Tahoma,serif;--sans:"Segoe UI","Noto Sans Arabic",Tahoma,Arial,sans-serif}
html[lang^=zh]{--serif:"Songti SC","Noto Serif SC","SimSun","STSong",serif;--sans:"PingFang SC","Microsoft YaHei","Noto Sans SC","Hiragino Sans GB",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--navy);font:400 1.0625rem/1.7 var(--sans)}
html[lang^=ar] body,html[lang^=zh] body{line-height:1.9}
img,svg{max-width:100%;display:block}a{color:inherit}
mark.todo{background:#F3E3C8;color:var(--navy);padding:0 .2em}
:focus-visible{outline:2px solid var(--cu);outline-offset:3px}
.skip{position:absolute;inset-inline-start:-999px;top:0;background:var(--navy);color:#fff;padding:.6rem 1rem;z-index:99}.skip:focus{inset-inline-start:0}
.wrap{width:min(var(--max),100% - 3rem);margin-inline:auto}
header.top{position:sticky;top:0;z-index:20;background:rgba(250,248,244,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:84px}
.brand img{height:50px;width:auto}
nav.main ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}
nav.main a{text-decoration:none;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;padding:.4rem 0;border-bottom:1px solid transparent}
html[lang^=ar] nav.main a,html[lang^=zh] nav.main a{letter-spacing:.04em;font-size:.95rem;text-transform:none}
nav.main a:hover,nav.main a[aria-current=page]{border-color:var(--cu)}
.tools{display:flex;align-items:center;gap:1rem}
details.lang{position:relative}details.lang summary{list-style:none;cursor:pointer;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;padding:.4rem .2rem;color:var(--gr-d)}
details.lang summary::-webkit-details-marker{display:none}
details.lang ul{position:absolute;inset-inline-end:0;top:110%;margin:0;padding:.5rem 0;list-style:none;background:var(--bg);border:1px solid var(--line);min-width:9rem;box-shadow:0 12px 30px rgba(15,41,77,.08)}
details.lang a{display:block;padding:.45rem 1rem;text-decoration:none;font-size:.95rem}details.lang a:hover{background:var(--bg2)}
.burger{display:none;background:none;border:1px solid var(--line);padding:.55rem .7rem;cursor:pointer;color:var(--navy)}
.burger span{display:block;width:20px;height:1.5px;background:currentColor;margin:4px 0}
.hero{padding:clamp(3rem,8vw,7rem) 0 clamp(3rem,7vw,6rem)}
.hero .grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.eyebrow{font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:var(--cu-d);margin:0 0 1.5rem}
html[lang^=ar] .eyebrow,html[lang^=zh] .eyebrow{letter-spacing:.08em;font-size:.9rem}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2;margin:0}
h1{font-size:clamp(2rem,4.4vw,3.4rem);max-width:20ch}
html[lang^=ar] h1,html[lang^=zh] h1{line-height:1.45;max-width:24ch}
h2{font-size:clamp(1.55rem,2.8vw,2.1rem);margin-bottom:1.2rem}h3{font-size:1.3rem;margin-bottom:.5rem}
.lead{font-size:1.2rem;color:var(--gr-d);max-width:56ch;margin:1.5rem 0 0}
.emb{justify-self:center;width:min(100%,340px)}
.values{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin-top:2.4rem;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gr-d)}
html[lang^=ar] .values,html[lang^=zh] .values{letter-spacing:.06em;font-size:.95rem}
.values span+span::before{content:"·";color:var(--cu);margin-inline-end:1.6rem}
section.s{padding:clamp(3rem,6vw,5.5rem) 0;border-top:1px solid var(--line)}section.alt{background:var(--bg2)}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2.4rem 3rem}
.item{border-top:1px solid var(--cu);padding-top:1.1rem}.item p{margin:.3rem 0 0;color:var(--gr-d);font-size:1rem}
.item h3 a{text-decoration:none}.item h3 a:hover{text-decoration:underline;text-decoration-color:var(--cu)}
.pic{width:44px;height:44px;margin-bottom:.9rem}
html[dir=rtl] .flip{transform:scaleX(-1)}
.two{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.portrait{aspect-ratio:4/5;overflow:hidden;background:#6b6b6b}.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.cap{font-size:.85rem;color:var(--gr-d);margin-top:.8rem}
.zones{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:.6rem}
.zones li{border:1px solid var(--line);padding:.35rem .95rem;font-size:.95rem;background:var(--bg)}
.btn{display:inline-block;margin-top:1.6rem;padding:.85rem 2rem;border:1px solid var(--navy);text-decoration:none;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;background:transparent;color:var(--navy);cursor:pointer;font-family:var(--sans)}
html[lang^=ar] .btn,html[lang^=zh] .btn{letter-spacing:.05em;font-size:.95rem;text-transform:none}
.btn:hover{background:var(--navy);color:#fff}
.page-head{padding:clamp(3rem,7vw,5.5rem) 0 clamp(1.5rem,3vw,2.5rem)}
.prose{max-width:68ch}.prose p{margin:0 0 1.1rem}.prose ul{padding-inline-start:1.2rem}.prose h3{margin:1.6rem 0 .6rem;font-size:1.25rem;color:var(--cu-d)}
.note{border-inline-start:2px solid var(--cu);padding:.3rem 1.2rem;color:var(--gr-d);margin:2rem 0}
.mod{display:grid;grid-template-columns:110px 1fr;gap:1rem 2rem;padding:1.8rem 0;border-top:1px solid var(--line)}
.mod .n{font-family:var(--serif);color:var(--cu-d);font-size:1.5rem}.mod .n img{width:48px;height:48px;margin-top:.6rem}
.mod p{margin:.2rem 0 0;color:var(--navy);max-width:62ch}
form.c{display:grid;gap:1.2rem}form.c label{display:grid;gap:.35rem;font-size:.9rem;color:var(--gr-d)}
form.c input,form.c textarea{font:inherit;color:var(--navy);padding:.8rem .9rem;border:1px solid var(--line);background:#fff;border-radius:0}
form.c textarea{min-height:170px;resize:vertical}
.chk{display:flex!important;gap:.7rem;align-items:flex-start;font-size:.88rem!important}.chk input{margin-top:.3rem}
.hp{position:absolute;inset-inline-start:-9999px;height:0;overflow:hidden}
.msg{padding:1rem 1.2rem;border:1px solid var(--cu);background:#fff;margin-bottom:1.5rem}
.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:1.1rem}
.contact-list small{display:block;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gr-d)}
html[lang^=ar] .contact-list small,html[lang^=zh] .contact-list small{letter-spacing:.04em;font-size:.85rem}
.contact-list a{text-decoration:none;border-bottom:1px solid var(--line)}.contact-list a:hover{border-color:var(--cu)}
footer.f{background:var(--navy);color:#E9ECF1;padding:4rem 0 2rem}
footer.f .g{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem}footer.f img{height:48px;width:auto}
footer.f .sig{margin:1.4rem 0 0;font-size:.75rem;letter-spacing:.3em;color:var(--cu)}
footer.f ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}footer.f a{text-decoration:none;color:#E9ECF1}footer.f a:hover{text-decoration:underline;text-decoration-color:var(--cu)}
footer.f h2{font-family:var(--sans);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:#AAB6C6;margin-bottom:1rem}
html[lang^=ar] footer.f h2,html[lang^=zh] footer.f h2{letter-spacing:.05em;font-size:.9rem}
.copy{margin-top:3rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.15);font-size:.85rem;color:#AAB6C6}
@media(max-width:900px){.hero .grid,.two,footer.f .g{grid-template-columns:1fr}.emb{width:200px;justify-self:start;order:-1}
.burger{display:block}nav.main{position:absolute;inset-inline:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);display:none}
nav.main.open{display:block}nav.main ul{flex-direction:column;gap:0;padding:1rem 1.5rem 1.5rem}nav.main a{display:block;padding:.8rem 0}
.mod{grid-template-columns:70px 1fr}.mod .n img{width:40px;height:40px}.portrait{max-width:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{header.top,footer.f .g,.burger{display:none}body{background:#fff}}
