/* Standalone navigation, local accessibility and compact legal content. */
html { scroll-padding-top: 6.5rem; }
.site-skip-link { position:fixed; top:-100px; left:12px; z-index:12000;
  padding:.7rem 1rem; background:var(--color-primary); color:var(--color-on-primary);
  border-radius:0 0 8px 8px; text-decoration:none; }
.site-skip-link:focus { top:0; }
.site-page-main { width:100%; min-width:0; display:block; }
.selmarian-nav-section .selmarian-nav-overlay { pointer-events:auto; }
.selmarian-nav-section .selmarian-nav-overlay[aria-hidden="true"] { pointer-events:none; }
.selmarian-nav-hamburger, .selmarian-nav-close { border:0; background:none; align-items:center;
  justify-content:center; cursor:pointer; min-width:40px; min-height:40px; }
.selmarian-nav-section.is-open .selmarian-nav-overlay { display:flex; }
.selmarian-nav-overlay { max-height:100dvh; min-height:100vh; overscroll-behavior:contain;
  gap:0; isolation:isolate; }
.selmarian-nav-overlay-links { width:100%; margin:0 auto; padding-bottom:2rem; }
.selmarian-nav-overlay-links > a { display:block !important; width:min(100%,30rem);
  text-align:center; padding:.3rem .5rem; cursor:pointer; position:relative; }
.selmarian-nav-overlay-links .selmarian-nav-overlay-link { display:block; }
.selmarian-nav-overlay .selmarian-nav-overlay-header { z-index:2; }
.selmarian-nav-overlay .selmarian-nav-close { z-index:3; position:relative; }
.selmarian-nav-overlay-links a:focus-visible,
.selmarian-nav-hamburger:focus-visible, .selmarian-nav-close:focus-visible { outline:2px solid var(--color-primary); outline-offset:4px; border-radius:4px; }
body.menu-open { overflow:hidden; }
a, button { -webkit-tap-highlight-color:transparent; }
img { max-width:100%; height:auto; }
:where(h1,h2,h3,h4,h5,h6,p,li,dd,a) { overflow-wrap:break-word; }
:where(section,article,main,footer,nav) { min-width:0; }
.selmarian-footer-company-meta { flex-wrap:wrap; }
.selmarian-footer-contact-link { cursor:auto; }
.selmarian-footer-contact-link a { cursor:pointer; }
.selmarian-footer-legal-links { flex-wrap:wrap; }
.selmarian-footer-newsletter-col .selmarian-footer-nav-link { display:inline-block; margin-top:1rem; }
/* General legal / contact pages use the original site shell and palette. */
.site-legal-content { width:100%; max-width:860px; padding:clamp(5.5rem,10vw,9rem) clamp(1rem,5vw,2.5rem) 4rem; margin:0 auto; color:var(--color-on-surface); }
.site-legal-content h1 {font-family:var(--font-family-heading); font-size:clamp(2.5rem,6vw,4rem); font-weight:600; line-height:1.12; margin:0 0 1rem; }
.site-legal-content h2 {font-family:var(--font-family-heading); font-size:clamp(1.65rem,3.6vw,2.15rem); font-weight:600; line-height:1.15; margin:2.15rem 0 .75rem; }
.site-legal-content h3 {font-size:1rem; font-weight:600; margin:1.5rem 0 .5rem; }
.site-legal-content p {line-height:1.85; color:var(--color-on-surface-secondary); margin:.7rem 0 1.1rem; }
.site-legal-content a { color:var(--color-primary); text-decoration:underline; text-underline-offset:3px; }
.site-legal-content ul {padding-left:1.5rem; margin:.6rem 0 1rem; color:var(--color-on-surface-secondary);}
.site-legal-content li { margin:.4rem 0;line-height:1.7; }
.site-legal-content .legal-lead {font-size:clamp(1rem,1.6vw,1.2rem); }
.site-legal-content .legal-back { display:inline-flex; font-weight:600; margin:1rem 0 .5rem; }
.site-legal-content address {font-style:normal; color:var(--color-on-surface-secondary); line-height:1.8; }
.site-legal-content .contact-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.7rem 0 2.5rem; }
.site-legal-content .contact-card {border:1px solid var(--color-neutral);border-radius:var(--border-radius-md);padding:1.25rem;background:var(--color-surface);min-width:0;}
.site-legal-content .contact-card h2 {font-size:1.6rem;margin:0 0 .6rem;}
.site-legal-content .contact-card p {margin:0;color:var(--color-on-surface);}
@media(max-width:767px) {
 .selmarian-nav-section { z-index:9999; }
 .selmarian-nav-overlay { padding:clamp(1rem,4vw,1.5rem); }
 .selmarian-nav-overlay-header { margin-bottom:clamp(1.5rem,4vh,3rem); }
 .selmarian-nav-overlay-links { gap:clamp(.75rem,2.5vh,1.5rem); }
 .selmarian-nav-overlay-link {font-size:clamp(1.3rem,5vw,1.7rem);}
 .site-legal-content {padding-top:7rem;}
 .site-legal-content .contact-cards {grid-template-columns:1fr;}
 .site-legal-content address {overflow-wrap:anywhere;}
 .btn {max-width:100%;white-space:normal;}
 .selmarian-footer-legal-links {gap:.6rem 1rem;}
 .selmarian-footer-inner {max-width:100%;}
}
@media (max-width:374px) {
 .selmarian-nav-container {padding:0 .75rem;}
 .selmarian-nav-capsule {padding:.4rem .65rem;}
 .company-logo-name {font-size:1rem;}
 .site-legal-content {padding-inline:1rem;}
}

/* At tablet widths the original 12-column spans must not create implicit grid tracks. */
@media(max-width:991px) {
 .region-portfolio-stream {grid-template-columns:minmax(0,1fr);}
 .region-experiences-container {max-width:100%;}
}

/* Plain telephone and email are intentionally not interactive. */
.site-plain-contact .selmarian-footer-contact-link:hover {color:inherit;cursor:default;}
