/* Production navigation, contact and legal content around the approved Sequence layout. */
.sr-only,.hp-field { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.header .language-switch { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; font-size:1rem; }
.header .brand { flex-shrink:0; }
.header .brand img { object-fit:contain; }
.header nav a[aria-current="location"] { color:var(--blue); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:6px; }
.header-inner { max-width:1600px; width:100%; }
.contact-disclosure { max-width:760px; margin:48px auto 0; text-align:left; border-top:1px solid #b9d0ff; border-bottom:1px solid #b9d0ff; }
.contact-disclosure>summary { min-height:72px; font-size:1.125rem; }
.contact-form { background:#fff; color:var(--ink); border-radius:20px; padding:32px; margin:0 0 24px; --focus:#1748af; }
.contact-form .field { margin-bottom:24px; }
.contact-form label { display:block; font-size:1.0625rem; margin-bottom:8px; }
.contact-form :is(input:not([type=checkbox]),select,textarea) { display:block; width:100%; min-height:48px; padding:12px 14px; font:inherit; font-size:1rem; line-height:1.5; border:1px solid #798aa2; border-radius:8px; background:#fff; color:#101d32; }
.contact-form textarea { resize:vertical; }
.contact-form .field-consent { display:flex; gap:14px; align-items:flex-start; }
.contact-form input[type=checkbox] { width:24px; height:24px; flex-shrink:0; margin:2px 0 0; accent-color:var(--blue); }
.contact-form .field-consent label { font-size:1rem; line-height:1.5; }
.contact-form .privacy-link { background:none; border:0; padding:8px 0; min-height:44px; color:#1748af; font-size:1rem; text-decoration:underline; text-underline-offset:4px; }
.contact-form .form-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:24px; }
.contact-form .button { display:inline-flex; gap:16px; align-items:center; justify-content:center; min-height:52px; background:var(--blue); color:white; border:0; border-radius:28px; padding:12px 24px; font-size:1rem; }
.contact-form .button svg { width:20px; height:20px; }
.contact-form .form-note { font-size:.9375rem; color:#475569; line-height:1.5; }
.contact-form #form-send-hint { margin-top:20px; }
.footer>.wrap { display:block; }
.footer-signature { font-size:1.4rem; color:#fff; font-weight:550; }
.footer .footer-signature>span { display:block; font-size:1rem; color:#bdc9da; font-weight:400; border:0; margin-top:8px; padding:0; }
.footer-navigation { display:flex; flex-wrap:wrap; gap:8px 28px; margin-block:24px; }
.footer-navigation :is(a,button) { display:inline-flex; align-items:center; min-height:44px; color:inherit; font-size:1rem; border:0; background:none; padding:4px 0; }
.footer-navigation button:hover { text-decoration:underline; text-underline-offset:5px; }
.footer-copyright { border-top:1px solid #38465a; padding-top:24px; margin-top:24px; font-size:.9375rem; }
.footer .motion-toggle { width:auto; }
.legal-dialog { width:min(840px,calc(100% - 32px)); max-height:85svh; padding:0; border:1px solid #b7c6dd; border-radius:16px; background:#fff; color:#101d32; overflow:auto; --focus:#1748af; }
.legal-dialog::backdrop { background:#06101baf; backdrop-filter:blur(4px); }
.dialog-head { display:flex; align-items:center; justify-content:space-between; gap:24px; position:sticky; top:0; padding:24px 32px; border-bottom:1px solid #cbd4e1; background:#fff; z-index:1; }
.dialog-head h2 { font-size:1.65rem; line-height:1.25; }
.dialog-close { border:1px solid #8290a2; background:#f8fafc; border-radius:50%; display:grid; place-items:center; padding:10px; min-width:44px; min-height:44px; color:#101d32; }
.dialog-body { padding:8px 32px 32px; font-size:1rem; }
.dialog-body :is(p,ul,ol) { margin-block:20px; line-height:1.6; }
.dialog-body h3 { font-size:1.25rem; margin-top:32px; line-height:1.4; }
.dialog-body a { color:#1748af; text-decoration:underline; overflow-wrap:anywhere; }
/* Older shared URLs keep their content, with the new navigation and type hierarchy. */
.secondary-page .header { --header:80px; color:#101d32; }
.secondary-page .header-inner { height:var(--header); min-height:var(--header); }
.secondary-page .header .brand { color:#101d32; }
.secondary-page .header .brand img { width:29px; height:32px; }
.secondary-page .header a { text-decoration:none; }
.secondary-page .header .header-cta { color:#101d32; }
.secondary-page .header .mobile-menu nav { color:#101d32; }
.secondary-page .footer .brand { color:#fff; }
.secondary-page .detail-main picture img { height:100%; object-fit:cover; }
.secondary-page .container { max-width:1280px; }
.secondary-page .profile-hero .profile-hero-title { font-weight:550; }
.secondary-page .header .language-switch { margin:0; }
@media(max-width:1100px) { .header-inner { gap:16px; } .header nav { gap:20px; } }
@media(max-width:1024px) {
 .header .desktop-nav,.header .language-switch { display:none; }
 .header .mobile-menu { display:block; border:0; margin-left:auto; }
 .mobile-menu summary { font-size:1rem; min-height:44px; gap:8px; }
 .mobile-menu summary span { font-size:1.25rem; }
 .header .mobile-menu nav { display:flex; position:absolute; top:100%; left:16px; right:16px; margin:0; padding:20px 24px; flex-direction:column; gap:0; border:1px solid #cbd5e1; border-radius:0 0 18px 18px; background:#f8fafc; box-shadow:0 16px 30px #101d3226; }
 .mobile-menu nav a { padding:14px 0; min-height:48px; }
}
@media(max-width:760px) {
 .contact-form { padding:24px 20px; }
 .contact-disclosure { margin-top:32px; }
 .footer-navigation { gap:8px 24px; }
 .dialog-head { padding:20px; }
 .dialog-body { padding:4px 20px 24px; }
 .dialog-head h2 { font-size:1.375rem; }
 .secondary-page .header { --header:72px; }
}
@media(prefers-reduced-motion:reduce) { .legal-dialog::backdrop { backdrop-filter:none; } }

/* A quieter close: supporting details stay available, while contact stays clear. */
.context-links { display: flex; flex-wrap: wrap; align-items: center; gap: 0 24px; margin-top: 16px; font-size: .9375rem; line-height: 1.5; color: var(--muted); }
.context-links a { display: inline-flex; align-items: center; min-height: 44px; color: var(--blue); text-decoration: underline; text-underline-offset: 4px; }
.context-links a:hover { color: var(--ink); }
.context-links a:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
@media(max-width:480px) { .context-links { gap: 0 20px; } .context-links>span { flex-basis: 100%; } }
.sequence-home .offer-details { margin-top: 24px; border-top: 1px solid #bac9e0; }
.sequence-home .offer-details details { margin: 0; max-width: none; border-top: 0; border-bottom: 1px solid #d0dbea; }
.sequence-home .offer-details summary { min-height: 48px; padding-block: 10px; gap: 20px; color: var(--muted); font-size: .9375rem; line-height: 1.4; }
.sequence-home .offer-details summary span[aria-hidden] { font-size: 1.25rem; }
.sequence-home .offer-details summary:hover { color: var(--ink); }
.sequence-home .offer-details details[open] summary { color: var(--ink); }
.sequence-home .offer-details details>p { max-width: 78ch; margin-block: 0 16px; color: var(--muted); font-size: 1rem; line-height: 1.65; }
.sequence-home .offer-details details>p:last-child { margin-bottom: 24px; }
.sequence-home .contact { padding-block: 56px; text-align: left; }
.sequence-home .contact>.wrap { max-width: 1060px; }
.contact-main { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 48px; }
.sequence-home .contact h2 { font-size: clamp(2.25rem,3.6vw,3.25rem); line-height: 1.1; }
.contact-actions { justify-self: end; }
.sequence-home .contact-button { margin: 0; min-height: 56px; padding: 16px 24px; gap: 24px; font-size: 1.125rem; }
.contact-actions>p { margin-top: 12px; font-size: .9375rem; text-align: center; }
.contact-secondary { display: grid; grid-template-columns: 1.15fr 1fr; align-items: start; gap: 48px; border-top: 1px solid #b8d0ff66; padding-top: 24px; margin-top: 36px; }
.sequence-home .contact-person { margin: 0; font-size: .9375rem; line-height: 1.5; }
.sequence-home .contact-person strong { font-size: 1.125rem; }
.sequence-home .contact-person .founder-experience { font-size: .9375rem; margin-top: 8px; }
.sequence-home .contact-person a { display: inline-flex; align-items: center; align-self: start; min-height: 44px; margin-top: 4px; font-size: 1rem; }
.sequence-home .contact-disclosure { width: 100%; max-width: none; margin: 0; border-top: 0; border-bottom: 1px solid #b8d0ff66; }
.sequence-home .contact-disclosure>summary { min-height: 48px; font-size: 1rem; }
.sequence-home .contact-disclosure>summary span[aria-hidden] { font-size: 1.25rem; }
.sequence-home .contact-form { padding: 24px; margin-top: 12px; }
:is(.sequence-home,.industry-page,.profile-page) .footer { padding-block: 28px; }
:is(.sequence-home,.industry-page,.profile-page) .footer>.wrap { display: grid; grid-template-columns: minmax(230px,.8fr) 2fr; align-items: start; gap: 16px 48px; max-width: var(--layout-max); }
:is(.sequence-home,.industry-page,.profile-page) .footer-signature { font-size: 1.125rem; }
:is(.sequence-home,.industry-page,.profile-page) .footer-signature>span { margin-top: 4px; font-size: .875rem; }
:is(.sequence-home,.industry-page,.profile-page) .footer-navigation { margin: 0; gap: 0 24px; }
:is(.sequence-home,.industry-page,.profile-page) .footer-navigation :is(a,button) { font-size: .9375rem; min-height: 44px; }
:is(.sequence-home,.industry-page,.profile-page) .footer-copyright { grid-column: 1; grid-row: 2; border: 0; margin: 0; padding: 0; min-height: 44px; display: flex; align-items: center; font-size: .875rem; }
:is(.sequence-home,.industry-page,.profile-page) .footer .motion-toggle { grid-column: 2; grid-row: 2; justify-self: end; border: 0; border-radius: 0; padding: 8px 0; font-size: .875rem; text-decoration: underline; text-underline-offset: 4px; }
@media(max-width:760px) {
 .sequence-home .contact { padding-block: 40px; }
 .contact-main,.contact-secondary { grid-template-columns: 1fr; gap: 24px; }
 .sequence-home .contact h2 { font-size: clamp(2.1rem,7.6vw,2.75rem); }
 .contact-actions { justify-self: start; }
 .sequence-home .contact-button { font-size: 1rem; padding: 14px 20px; }
 .contact-secondary { margin-top: 28px; }
 .sequence-home .contact-form { padding: 24px 20px; }
 :is(.sequence-home,.industry-page,.profile-page) .footer>.wrap { grid-template-columns: 1fr; gap: 12px; }
 :is(.sequence-home,.industry-page,.profile-page) .footer-navigation { gap: 0 20px; }
 :is(.sequence-home,.industry-page,.profile-page) .footer :is(.motion-toggle,.footer-copyright) { grid-column: 1; grid-row: auto; justify-self: start; }
}
