/* site.css — shared shell for the non-home routes (About, Opportunities, Projects, Resources, Contact, 404).
   Tokens follow the v7 handoff table (dark/light) and the Master Pack design-token roles. */
@font-face{font-family:'Abar Mid';src:url('../fonts/AbarMid-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Abar Mid';src:url('../fonts/AbarMid-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Abar Mid';src:url('../fonts/AbarMid-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Abar Mid';src:url('../fonts/AbarMid-ExtraBold.woff2') format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:'Ravi';src:url('../fonts/Ravi-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Ravi';src:url('../fonts/Ravi-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Peyda';src:url('../fonts/Peyda-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Peyda';src:url('../fonts/Peyda-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Peyda';src:url('../fonts/Peyda-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Peyda';src:url('../fonts/Peyda-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/IBMPlexSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/IBMPlexSans-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/IBMPlexSans-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('../fonts/IBMPlexMono-Regular.ttf') format('truetype');font-weight:400;font-display:swap}

:root{
  --bg:#0A2126; --band:#081D21; --card:rgba(242,239,230,.045); --headerBg:rgba(8,29,33,.82);
  --ink:#F2EFE6; --sub:#B9C4BE; --mute:#8A9B95;
  --bd:rgba(242,239,230,.1); --bd2:rgba(242,239,230,.24);
  --gold:#C9A15A; --goldBd:rgba(201,161,90,.45); --goldWash:rgba(201,161,90,.08); --ring:rgba(201,161,90,.45); --teal:#3FBFAD;
  --headFont:'Abar Mid',sans-serif; --bodyFont:Ravi,sans-serif; --uiFont:Peyda,sans-serif; --mono:'IBM Plex Mono',monospace;
}
[data-theme="light"]{
  --bg:#F7F4EC; --band:#EFEADD; --card:#FFFFFF; --headerBg:rgba(247,244,236,.9);
  --ink:#14231F; --sub:#41524C; --mute:#66756F;
  --bd:#E4DCC8; --bd2:#CFC4A9;
  --gold:#8F6A2A; --goldBd:rgba(143,106,42,.4); --goldWash:rgba(143,106,42,.06); --ring:rgba(143,106,42,.35); --teal:#0E7A6C;
}
[lang="en"] body, body.en{--headFont:'IBM Plex Sans',sans-serif; --bodyFont:'IBM Plex Sans',sans-serif; --uiFont:'IBM Plex Sans',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:var(--bodyFont);min-height:100vh;text-align:start;overflow-x:hidden;transition:background 300ms,color 300ms}
a{color:var(--teal)}
::selection{background:#C9A15A;color:#081D21}
.wrap{max-width:1280px;margin:0 auto;padding-inline:28px}
.mono{font-family:var(--mono);direction:ltr;letter-spacing:.14em}
.eyebrow{font-family:var(--mono);font-size:.6rem;letter-spacing:.26em;color:var(--gold);direction:ltr;display:block}
h1.pg{margin:8px 0 0;font-family:var(--headFont);font-weight:800;font-size:clamp(1.9rem,3.8vw,2.9rem);line-height:1.28;letter-spacing:-.01em;text-wrap:balance}
.lead{margin:12px 0 0;font-size:.98rem;line-height:1.95;color:var(--sub);max-width:760px;text-wrap:pretty}
h2.sec{margin:0;font-family:var(--headFont);font-weight:700;font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.4}
.grid{display:grid;gap:13px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:22px}
.badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--goldBd);color:var(--gold);border-radius:999px;padding:5px 13px;font-family:var(--uiFont);font-weight:600;font-size:.74rem}
.badge.dashed{border-style:dashed}
.chip{display:inline-flex;align-items:center;font-family:var(--uiFont);font-size:.74rem;color:var(--sub);border:1px solid var(--bd2);border-radius:999px;padding:4px 12px}
.btn{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:11px 26px;border-radius:999px;font-family:var(--uiFont);font-weight:700;font-size:.88rem;text-decoration:none;cursor:pointer;border:none}
.btn.gold{background:linear-gradient(135deg,#E9CA8C 0%,#C9A15A 48%,#A87F3E 100%);box-shadow:inset 0 1px 0 rgba(255,248,230,.5),inset 0 0 0 1px rgba(255,248,230,.2);color:#14231F}
.btn.gold:hover{filter:brightness(1.07)}
.btn.ghost{background:transparent;border:1px solid var(--goldBd);color:var(--gold)}
.btn.ghost:hover{background:rgba(201,161,90,.1)}
.btn:focus-visible,.chipbtn:focus-visible,a:focus-visible,button:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none;border-radius:8px}
.notice{border-inline-start:3px solid var(--gold);padding-inline-start:14px;font-size:.85rem;line-height:1.9;color:var(--sub);max-width:820px}
.figband{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--bd);margin:26px 0 0}
.figband img{width:100%;height:auto;aspect-ratio:16/6.4;object-fit:cover;display:block}
.figband .cap{position:absolute;bottom:12px;inset-inline-start:18px;font-family:var(--mono);font-size:.54rem;letter-spacing:.14em;color:#EFEAE0;direction:ltr}
.figband .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,29,33,0) 55%,rgba(8,29,33,.6) 100%)}
@media (max-width:640px){.rst-band img{aspect-ratio:4/5 !important}}
table.data{width:100%;border-collapse:collapse;min-width:520px}
table.data th{text-align:start;font-family:var(--uiFont);font-size:.76rem;color:var(--mute);font-weight:600;padding:9px 8px;border-bottom:2px solid var(--bd)}
table.data td{padding:10px 8px;font-family:var(--uiFont);font-size:.84rem;color:var(--ink);border-bottom:1px solid var(--bd);vertical-align:top}
.site-header{position:sticky;top:0;z-index:50;background:var(--headerBg);backdrop-filter:blur(16px);border-bottom:1px solid var(--bd)}
.site-header .inner{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;padding-block:11px}
.site-footer{border-top:1px solid var(--bd);margin-top:70px}
.site-footer .inner{display:flex;flex-direction:column;gap:12px;padding-block:30px 42px}
.pillbtn{min-height:38px;padding:5px 13px;border-radius:999px;border:1px solid var(--bd2);background:transparent;color:var(--sub);font-family:var(--uiFont);font-weight:600;font-size:.8rem;cursor:pointer}
.pillbtn.on{border-color:var(--gold);color:var(--gold);background:rgba(201,161,90,.12)}
.skip{position:absolute;inset-inline-start:-9999px;top:8px;z-index:99;background:var(--gold);color:#14231F;padding:10px 18px;border-radius:10px;font-family:var(--uiFont)}
.skip:focus{inset-inline-start:8px}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}html{scroll-behavior:auto}}

/* luxury CTA system (redesign 2026-08-30) */
.btn{border-radius:12px;letter-spacing:.02em;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,border-color .18s ease}
.btn.gold{position:relative;overflow:hidden;background:linear-gradient(135deg,#E9CA8C 0%,#C9A15A 48%,#A87F3E 100%);color:#14231F;box-shadow:inset 0 1px 0 rgba(255,248,230,.55),inset 0 0 0 1px rgba(255,248,230,.22),0 12px 30px rgba(201,161,90,.22)}
.btn.gold::after{content:'';position:absolute;top:0;bottom:0;width:44%;background:linear-gradient(105deg,rgba(255,255,255,0),rgba(255,255,255,.38),rgba(255,255,255,0));transform:translateX(-170%) skewX(-18deg);transition:transform .55s ease;pointer-events:none}
.btn.gold:hover::after{transform:translateX(340%) skewX(-18deg)}
.btn.gold:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,248,230,.55),inset 0 0 0 1px rgba(255,248,230,.22),0 18px 40px rgba(201,161,90,.34)}
.btn.ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-1px)}
.grid-3{display:grid;gap:14px;grid-template-columns:repeat(3,1fr)}
.grid-4{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}
.flex-center{display:flex;flex-wrap:wrap;justify-content:center;gap:13px}
.flex-center>*{flex:0 1 300px}
@media (max-width:1100px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.grid-4,.grid-3{grid-template-columns:1fr}}
main select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23C9A15A' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 16px center;padding-inline-end:14px}
[dir="ltr"] main select{background-position:right 16px center}

/* modern CTA system (round 2) */
main h1,main h2,main h3{text-wrap:balance}
main p{text-wrap:pretty}
.btn{border-radius:999px;min-height:50px;padding:12px 28px;letter-spacing:.02em;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,border-color .3s,color .3s}
.btn.gold{background:linear-gradient(135deg,#F0DCAA 0%,#CBA35C 55%,#A17A38 100%);color:#161F1C;box-shadow:0 12px 32px rgba(201,161,90,.22),inset 0 1px 0 rgba(255,250,238,.6)}
.btn.gold::after{content:none}
.btn.gold:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(201,161,90,.34),inset 0 1px 0 rgba(255,250,238,.6)}
