/* site.css, rules common to all 13 per-page CSS files, extracted
   by /tmp/extract_shared_css.py. Loaded site-wide via head-extra.html. */

*{box-sizing:border-box;margin:0;padding:0}

body{
    font-family:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;
    background:var(--bg);color:var(--ink);
    -webkit-font-smoothing:antialiased;min-height:100vh;
    font-size:15px;line-height:1.55
  }

.reveal.is-visible{opacity:1;transform:translateY(0)}

a{color:inherit;text-decoration:none}

button{font-family:inherit;cursor:pointer;color:inherit;background:none;border:0}

img,svg{display:block;max-width:100%}

.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1440px;margin:0 auto;gap:28px}

.logo{display:inline-flex;align-items:center}

.logo img{height:28px;width:auto;display:block}

nav ul li{position:relative}

.has-dd > a{display:inline-flex;align-items:center;gap:6px}

.has-dd:hover > a::after{transform:rotate(225deg) translateY(-2px)}

.dd-menu{position:absolute;top:100%;left:-14px;min-width:180px;padding:8px;margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px rgba(12,55,77,.10),0 4px 12px rgba(12,55,77,.06);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .22s ease, transform .22s ease, visibility .22s;z-index:60;list-style:none;display:block;gap:0}
.has-dd:hover .dd-menu,.has-dd:focus-within .dd-menu{opacity:1;visibility:visible;transform:translateY(0)}
.dd-menu a{display:block;padding:9px 14px;border-radius:8px;color:var(--ink) !important;font-size:14px;font-weight:500;transition:background .18s ease}

.dd-menu::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}

.dd-menu li{display:block}

.nav-cta{display:flex;gap:10px;align-items:center}

.btn{padding:11px 22px;border-radius:999px;font-weight:600;font-size:14px;transition:all .2s;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.btn-lg{padding:14px 28px;font-size:15px}

:root{
    --bg:#FAFBFC;
    --card:#FFFFFF;
    --ink:#0C374D;
    --ink-2:#05080B;
    --muted:#536B7E;
    --faint:#8BA0B3;
    --line:rgba(12,55,77,.08);
    --line-soft:rgba(12,55,77,.06);
    --teal:#4FA6C0;
    --teal-soft:#E0F0F5;
    --teal-ink:#2B7A92;
    --ok:#34D399;
  }

.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}

@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

header.nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line-soft);transition:all .3s}

nav ul{display:flex;gap:32px;list-style:none;font-size:14px;font-weight:500;color:#334456;transition:color .2s}

nav a:hover{color:var(--ink)}

.has-dd > a::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s ease;opacity:.7}

.dd-menu a:hover{background:rgba(79,166,192,.10)}

.btn-ghost{color:var(--ink);border:1px solid rgba(12,55,77,.15)}

.btn-ghost:hover{background:rgba(12,55,77,.04);border-color:rgba(12,55,77,.25)}

.btn-primary{background:var(--teal);color:#fff}

.btn-primary:hover{box-shadow:0 0 18px rgba(79,166,192,.32),0 0 36px rgba(79,166,192,.16)}

.foot-grid{max-width:1320px;margin:0 auto 48px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px}

.foot-brand p{color:var(--muted);font-size:14px;line-height:1.6;max-width:320px;margin-top:20px}

.foot-offices{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;max-width:480px}

.foot-office-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}

.foot-office-addr{font-size:13px;line-height:1.55;color:var(--muted)}

footer{background:#fff;border-top:1px solid var(--line-soft);padding:72px 32px 36px}

footer h6{font-size:12px;font-weight:700;margin-bottom:18px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase}

footer ul{list-style:none;display:flex;flex-direction:column;gap:10px}

footer ul a{font-size:14px;color:var(--muted)}

footer ul a:hover{color:var(--ink)}

.foot-base{max-width:1320px;margin:0 auto;display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid var(--line-soft);font-size:12px;color:var(--faint);flex-wrap:wrap;gap:16px}
