*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;color:#222}nav{min-height:56px;display:flex;align-items:center;gap:18px;padding:12px 20px;background:#fff;border-bottom:1px solid #ddd;flex-wrap:wrap}nav strong{margin-right:auto}a,button{color:inherit}button{cursor:pointer;padding:10px 16px;border:1px solid #ddd;border-radius:8px;background:#f7f7f7;font:inherit}iframe{display:block;border:0;width:100%;height:calc(100dvh - 65px)}dialog{width:min(94vw,520px);border:1px solid #ddd;border-radius:16px;padding:24px}dialog::backdrop{background:#0008}label{display:block;margin:14px 0}input:not([type=checkbox]),textarea{display:block;width:100%;font:inherit;padding:10px;border:1px solid #aaa;border-radius:6px;margin-top:6px}textarea{min-height:100px}button:disabled{opacity:.6}

nav[hidden]{display:none}

/* Reserve space for required links so custom content and fixed CTAs are never covered. */
body{height:100dvh;display:flex;flex-direction:column}
body>nav{flex:0 0 auto}
#site-frame{flex:1 1 auto;min-height:0;height:auto}
body>nav strong{min-width:0;overflow-wrap:anywhere}

#site-links{display:flex;align-items:center;gap:14px;min-width:0;max-width:100%;margin-left:auto}
#site-sections{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto}
#site-sections button{flex:none;background:transparent;border-color:transparent;white-space:nowrap;padding:10px 8px}
#site-links>a{text-decoration:none}
#site-links>a,#site-links>button{flex:none;white-space:nowrap}
@media(max-width:600px){body>nav{gap:8px;padding:10px 12px}body>nav strong{flex-basis:100%}#site-links{width:100%;gap:10px}#site-sections{flex:1}#open-inquiry{padding:10px}}

#site-phone{display:inline-flex;flex-direction:column;gap:2px;background:#132b39;color:white;padding:8px 16px;font-size:13px;font-weight:700}#site-phone span{font-size:11px;font-weight:400}nav a:focus-visible,nav button:focus-visible{outline:3px solid #0757d8;outline-offset:3px}
@media(max-width:600px){body>nav{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}body>nav strong{grid-column:1;grid-row:1;font-size:14px}#site-links{display:contents}#site-sections{grid-column:1;grid-row:2;gap:2px;font-size:12px}#site-sections button{padding:8px 4px}#site-links>a:not(#site-phone){grid-column:2;grid-row:2;justify-self:end;font-size:12px}#site-phone,#open-inquiry{grid-column:2;grid-row:1}#site-phone{padding:7px 12px}}
