/* Shared site menu and footer for the inner pages: identical to the homepage's. Classes are prefixed (sx-)
   so they never collide with the older page styles. */
.sx-nav { position:sticky; top:0; z-index:70; background:rgba(251,250,247,.92); -webkit-backdrop-filter:saturate(1.4) blur(10px); backdrop-filter:saturate(1.4) blur(10px); border-bottom:1px solid #e8e5de }
.sx-in { max-width:1160px; margin:0 auto; padding:0 max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left)) }
.sx-nav .sx-in { display:flex; align-items:center; gap:40px; min-height:72px }
.sx-logo { display:inline-flex; align-items:center; gap:9px; color:#151a18; font:600 21px/1 'Inter Tight','Helvetica Neue',Arial,sans-serif; letter-spacing:-.03em; text-decoration:none }
.sx-logo svg { display:block; width:22px; height:22px }
.sx-links { display:flex; gap:28px; margin-right:auto }
.sx-links a { padding:8px 0; color:#4e5652; font:400 15.5px/1.6 'Instrument Sans','Helvetica Neue',Arial,sans-serif; text-decoration:none }
.sx-links a:hover, .sx-links a[aria-current="page"] { color:#151a18 }
.sx-btn { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:9px 16px; border-radius:10px; background:#0d5c45; color:#fff; font:500 15px/1.2 'Instrument Sans','Helvetica Neue',Arial,sans-serif; text-decoration:none; white-space:nowrap; transition:background .2s }
.sx-btn:hover { background:#0a4a37; color:#fff }
.sx-menu { display:none; place-items:center; width:44px; height:44px; padding:0; border:1px solid #d5d1c8; border-radius:10px; background:#fff; cursor:pointer }
.sx-menu i, .sx-menu i::before, .sx-menu i::after { display:block; position:relative; width:18px; height:2px; border-radius:2px; background:#151a18; transition:transform .2s, background .2s }
.sx-menu i::before, .sx-menu i::after { content:''; position:absolute; left:0 } .sx-menu i::before { top:-6px } .sx-menu i::after { top:6px }
.sx-nav.open .sx-menu i { background:transparent } .sx-nav.open .sx-menu i::before { transform:translateY(6px) rotate(45deg) } .sx-nav.open .sx-menu i::after { transform:translateY(-6px) rotate(-45deg) }
.sx-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }
.sx-nav :focus-visible, .sx-foot :focus-visible { outline:2px solid #0d5c45; outline-offset:3px; border-radius:4px }
.sx-foot { padding:40px 0 max(48px, env(safe-area-inset-bottom)); border-top:1px solid #e8e5de; background:#fbfaf7 }
.sx-foot .sx-in { display:flex; flex-wrap:wrap; align-items:center; gap:16px 40px }
.sx-foot nav { display:flex; flex-wrap:wrap; gap:6px 24px; margin-right:auto }
.sx-foot nav a { padding:6px 0; color:#4e5652; font:400 15px/1.5 'Instrument Sans','Helvetica Neue',Arial,sans-serif; text-decoration:none } .sx-foot nav a:hover { color:#151a18 }
.sx-foot p { flex-basis:100%; margin:0; color:#69716d; font:400 13.5px/1.6 'Instrument Sans','Helvetica Neue',Arial,sans-serif } .sx-foot p a { color:inherit }
@media (max-width:760px) {
  .sx-nav .sx-in { gap:10px; justify-content:space-between }
  .sx-nav .sx-btn { margin-left:auto }
  .sx-menu { display:grid }
  .sx-links { display:none; position:absolute; left:0; right:0; top:100%; flex-direction:column; gap:0; padding:4px 24px 16px; background:#fbfaf7; border-bottom:1px solid #e8e5de; box-shadow:0 16px 30px -24px rgba(21,26,24,.4) }
  .sx-nav.open .sx-links { display:flex } .sx-links a { padding:14px 0; border-bottom:1px solid #e8e5de; font-size:18px; color:#151a18 } .sx-links a:last-child { border-bottom:0 }
  body { padding-bottom:0 !important }
}
@media (max-width:420px) { .sx-in { padding-left:max(16px, env(safe-area-inset-left)); padding-right:max(16px, env(safe-area-inset-right)) } }
@media (max-width:360px) { .sx-nav .sx-btn { padding:9px 12px; font-size:14px } }
@media (pointer:coarse) { .sx-logo, .sx-foot nav a, .sx-foot p a { display:inline-flex; align-items:center; min-height:44px } .sx-foot nav { gap:0 24px } }
@media (max-width:760px) { .sx-logo, .sx-foot nav a { min-height:44px } }

/* One content width on every page: the same column as the menu (homepage .wrap) */
.wrap, .d-wrap, .k-wrap { box-sizing:border-box; max-width:1160px !important; margin-left:auto; margin-right:auto; padding-left:max(24px, env(safe-area-inset-left)) !important; padding-right:max(24px, env(safe-area-inset-right)) !important }
@media (max-width:420px) { .wrap, .d-wrap, .k-wrap { padding-left:max(16px, env(safe-area-inset-left)) !important; padding-right:max(16px, env(safe-area-inset-right)) !important } }
.sx-menu { flex:none } .sx-logo { flex:none }
@media (max-width:400px) { .sx-nav .sx-btn { white-space:normal; text-align:center; line-height:1.15; max-width:150px; padding:7px 12px; font-size:14px } }
.cta-s { display:none } @media (max-width:380px) { .cta-l { display:none } .cta-s { display:inline } }
@media (max-width:400px) { .sx-nav .sx-btn { white-space:nowrap; max-width:none } }
/* Same headline weight and tracking as the homepage */
main h1, main h2 { font-family:'Inter Tight','Helvetica Neue',Arial,sans-serif !important; font-weight:500 !important; letter-spacing:-.03em }

/* Phone pass: inner pages use the same calmer header */
@media (max-width:420px) { .sx-nav .sx-btn { display:none } .sx-nav .sx-in { min-height:64px } }
