/* Fonts served from our own server (Inter, Playfair Display), replacing Google Fonts. 9 Nov 2026 */
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-ext-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/inter-latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/playfair-italic-latin-ext-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/playfair-italic-latin-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-ext-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-ext-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-ext-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/playfair-latin-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Atelier Value: shared styles loaded on every page (added 9 Nov 2026) */
:root { --bronze: #B89768; --bronze-deep: #0A1118; }
/* One bronze, #B89768 (restored 9 Nov 2026). --bronze-deep is the colour for small label text on light backgrounds: navy, so it stays readable. */

/* Skip link for keyboard users */
.av-skip { position: absolute; left: 16px; top: -80px; z-index: 2000; background: #FAFAFA; color: #0A1118; padding: 10px 16px; font-family: 'Inter', sans-serif; font-size: 0.9rem; font-weight: 500; text-decoration: none; transition: top 0.2s ease; }
.av-skip:focus { top: 12px; }
#main { display: block; outline: none; }

/* Visible focus outlines */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--bronze-deep); outline-offset: 3px; }
header a:focus-visible, header button:focus-visible, footer a:focus-visible, .bg-navy a:focus-visible { outline-color: #FAFAFA; }

/* Book a Session and other bronze buttons: bronze with navy text (6.9:1) */
.btn-bronze { background-color: var(--bronze) !important; border: 1px solid var(--bronze) !important; color: #0A1118 !important; }
.btn-bronze:hover { background-color: #CBAF86 !important; border-color: #CBAF86 !important; color: #0A1118 !important; }

/* Small bronze-coloured text on light backgrounds shows in navy; navy areas keep the bronze */
.tag, .link-arrow { color: var(--bronze-deep); }
.bg-navy .tag, .bg-navy .link-arrow, .ai-card-navy .tag, footer .tag { color: var(--bronze); }
.section:not(.bg-navy) a[style*="var(--bronze)"], .page-hero a[style*="var(--bronze)"], .legal-content a[style*="var(--bronze)"] { color: var(--bronze-deep) !important; }

/* Main heading on Book and Contact, styled like the former section heading */
.section-header-editorial h1 { font-size: 3rem; line-height: 1.2; letter-spacing: -0.01em; white-space: normal; max-width: 700px; margin: 0; }
@media (max-width: 768px) { .section-header-editorial h1 { font-size: 2.2rem; } }

/* Bronze labels whose colour is set inline, on light backgrounds */
.hero [style*="color: var(--bronze)"], .hero-content [style*="color: var(--bronze)"], .page-hero [style*="color: var(--bronze)"], .section:not(.bg-navy) [style*="color: var(--bronze)"] { color: var(--bronze-deep) !important; }
.section.bg-navy [style*="color: var(--bronze)"], .ai-card-navy [style*="color: var(--bronze)"] { color: var(--bronze) !important; }

/* ===== Footer: one style for every page and language (10 Nov 2026) ===== */
footer.av-footer { background-color: #0A1118 !important; color: #A0AAB5 !important; padding: 80px 0 32px 0 !important; border-top: 1px solid rgba(255, 255, 255, 0.08) !important; font-family: 'Inter', sans-serif; text-align: left; }
footer.av-footer .footer-grid { display: flex; justify-content: space-between; align-items: flex-start; gap: 64px; margin-bottom: 56px; }
footer.av-footer .footer-col-main { max-width: none; flex: 1 1 auto; min-width: 0; }
footer.av-footer p { margin: 0; font-weight: 400; }
footer.av-footer .av-f-brand { font-family: 'Playfair Display', serif !important; font-size: 1.5rem !important; font-weight: 500; line-height: 1.2; color: var(--bronze) !important; margin: 0 0 12px 0; }
footer.av-footer .av-f-tagline, footer.av-footer .av-f-address { font-size: 0.95rem !important; line-height: 1.6; color: #A0AAB5 !important; }
footer.av-footer .av-f-address { margin-top: 10px; }
footer.av-footer .av-f-email { margin-top: 14px; }
footer.av-footer .av-f-email a { color: var(--bronze) !important; font-weight: 500; font-size: 1rem; }
footer.av-footer .social-icons { display: flex; gap: 15px; margin-top: 18px; }
footer.av-footer .social-icons a { color: var(--bronze) !important; }
footer.av-footer .footer-links-wrapper { display: flex; gap: 80px; flex: 0 0 auto; }
footer.av-footer .footer-col h4, footer.av-footer .footer-col h2 { color: var(--bronze) !important; margin: 0 0 22px 0; padding-top: 6px; text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.8rem; font-weight: 600; font-family: 'Inter', sans-serif; line-height: 1; }
footer.av-footer .footer-links p { margin: 0 0 8px 0; line-height: 1.7; }
footer.av-footer .footer-links a { color: #A0AAB5 !important; font-size: 0.95rem !important; font-family: 'Inter', sans-serif; transition: color 0.3s ease; }
footer.av-footer .footer-links a:hover, footer.av-footer .av-f-email a:hover { color: #FFFFFF !important; }
footer.av-footer .footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid rgba(255, 255, 255, 0.1) !important; padding-top: 30px; }
footer.av-footer .footer-bottom p { color: #7C8795 !important; font-size: 0.8rem !important; letter-spacing: 0.02em; }
@media (min-width: 1200px) { footer.av-footer .av-f-tagline, footer.av-footer .av-f-address { white-space: nowrap; } }
@media (max-width: 1024px) { footer.av-footer .footer-grid { flex-direction: column; gap: 40px; } footer.av-footer .footer-links-wrapper { gap: 40px; } }
@media (max-width: 768px) {
  footer.av-footer, footer.av-footer .footer-grid { text-align: center; }
  footer.av-footer .footer-grid, footer.av-footer .footer-links-wrapper { align-items: center; }
  footer.av-footer .footer-links-wrapper { flex-direction: column; }
  footer.av-footer .social-icons { justify-content: center; }
  footer.av-footer .footer-bottom { flex-direction: column; gap: 6px; text-align: center; }
}

/* Contact page: registered address on one line where space allows */
@media (min-width: 1100px) { .av-contact-address { white-space: nowrap; } }

/* Keep address parts together so lines break only at natural points */
.av-nw { white-space: nowrap; }

/* Phones: left-aligned text avoids wide gaps between words; desktop stays justified */
@media (max-width: 768px) { .text-justify, p.text-justify, li.text-justify { text-align: left !important; } }
/* Phones: smaller illustration in the Insights header */
@media (max-width: 768px) { .hero img[src*="Picture17"] { max-height: 180px; } .hero div:has(> img[src*="Picture17"]) { height: 200px !important; } }

/* Phones: booking calendar without the large empty space */
@media (max-width: 768px) { .av-cal-embed { min-height: 420px !important; } }

/* One bronze (9 Nov 2026): label lines stay bronze; small label text on light backgrounds in navy */
.av-eyebrow::before { background: var(--bronze) !important; }
.expertise-label, .linkedin-link, .legal-sidebar h4, .legal-sidebar h2, .legal-date { color: var(--bronze-deep) !important; }
.bg-navy .expertise-label, .ai-card-navy .expertise-label, .bg-navy .linkedin-link { color: var(--bronze) !important; }

/* Readiness Assessment calls to action (9 Nov 2026) */
.av-assess-line { margin: 22px 0 0; font-size: .95rem; line-height: 1.6; color: #5B6577; }
.av-assess-line a { color: #0A1118; text-decoration: underline; text-underline-offset: 3px; font-weight: 500; }
.av-assess-line--dark { margin-top: 28px; text-align: center; }
.av-assess-line--dark a { color: var(--bronze); }
.av-assess-band { background: #FAFAFA; border-top: 1px solid #E2E4E8; padding: 56px 0; }
.av-assess-inner { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.av-assess-text h2 { font-family: 'Playfair Display', serif; font-weight: 400; font-size: 2rem; line-height: 1.25; margin: 10px 0; color: #0A1118; white-space: normal; }
.av-assess-text p { margin: 0; max-width: 640px; color: #333333; }
.av-assess-inner .btn { flex: none; }
@media (max-width: 768px) { .av-assess-band { padding: 44px 0; } .av-assess-inner { flex-direction: column; align-items: flex-start; gap: 24px; } .av-assess-text h2 { font-size: 1.6rem; } }

/* Assessment calls to action: one style (9 Nov 2026). Buttons solid bronze; text links with a bronze underline */
.av-assess-band .btn { background-color: var(--bronze) !important; border: 1px solid var(--bronze) !important; color: #0A1118 !important; }
.av-assess-band .btn:hover { background-color: #CBAF86 !important; border-color: #CBAF86 !important; color: #0A1118 !important; }
.av-assess-line a { color: #0A1118; text-decoration: underline; text-decoration-color: var(--bronze); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.av-assess-line a:hover { text-decoration-color: #0A1118; }
.av-assess-line--dark a { color: var(--bronze); text-decoration-color: var(--bronze); }
.av-assess-line--dark a:hover { color: #FFFFFF; text-decoration-color: #FFFFFF; }

/* Home proof strip (10 Nov 2026) */
.av-proof{background:#FFFFFF;border-top:1px solid #E2E4E8;border-bottom:1px solid #E2E4E8;padding:40px 0 34px}
.av-proof-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.av-proof-grid li{border-left:2px solid var(--bronze);padding-left:18px}
.av-proof-grid strong{display:block;font-family:'Playfair Display',serif;font-weight:500;font-size:2.1rem;line-height:1.1;color:#0A1118;margin-bottom:6px}
.av-proof-grid span{display:block;font-size:.95rem;line-height:1.45;color:#333333}
.av-proof-cap{margin:22px 0 0;font-size:.82rem;color:#64748B}
@media (max-width:768px){.av-proof{padding:32px 0 28px}.av-proof-grid{grid-template-columns:1fr;gap:22px}.av-proof-grid strong{font-size:1.8rem}}


/* ===== Navigation audit (10 Nov 2026) ===== */
/* Laptops: keep logo and menu on one row instead of stacking (Spanish labels are longer, so its range starts and ends later) */
@media (min-width:1024px) and (max-width:1320px){html:not([lang="es"]) header .nav-wrapper{flex-wrap:nowrap !important;row-gap:0 !important;padding:10px 24px !important}html:not([lang="es"]) header .logo img{height:44px !important}html:not([lang="es"]) header nav{width:auto !important;margin-left:auto !important;justify-content:flex-end !important;gap:1.5rem !important;flex-wrap:nowrap !important}html:not([lang="es"]) header nav > ul{gap:1.35rem !important;margin-right:0 !important}html:not([lang="es"]) header nav ul li a,html:not([lang="es"]) header .av-dd-toggle,html:not([lang="es"]) header nav .btn{letter-spacing:.06em !important}html:not([lang="es"]) header nav .btn{padding-left:20px !important;padding-right:20px !important}}
@media (min-width:1181px) and (max-width:1460px){html[lang="es"] header .nav-wrapper{flex-wrap:nowrap !important;row-gap:0 !important;padding:10px 24px !important}html[lang="es"] header .logo img{height:44px !important}html[lang="es"] header nav{width:auto !important;margin-left:auto !important;justify-content:flex-end !important;gap:1.5rem !important;flex-wrap:nowrap !important}html[lang="es"] header nav > ul{gap:1.35rem !important;margin-right:0 !important}html[lang="es"] header nav ul li a,html[lang="es"] header .av-dd-toggle,html[lang="es"] header nav .btn{letter-spacing:.06em !important}html[lang="es"] header nav .btn{padding-left:20px !important;padding-right:20px !important}}
/* Footer: three link columns; brand text wraps instead of running under the links; stacked between 1025 and 1199 px */
@media (min-width:1025px){footer.av-footer .av-f-tagline,footer.av-footer .av-f-address{white-space:normal !important}footer.av-footer .footer-col-main{flex:1 1 300px;min-width:280px;max-width:440px}footer.av-footer .footer-links-wrapper{gap:56px}}
@media (min-width:1025px) and (max-width:1199px){footer.av-footer .footer-grid{flex-direction:column;gap:40px}footer.av-footer .footer-col-main{max-width:none}}
/* Phones: 44 px tap areas in the menu and for text links */
@media (max-width:768px){
  header nav > ul{gap:.15rem !important}
  header nav > ul > li > a, header nav .av-dd-toggle{display:inline-flex !important;align-items:center;min-height:44px;padding-top:0 !important;padding-bottom:0 !important}
  header nav > ul > li > a::after, header nav .av-dd-toggle::after{bottom:9px !important}
  header nav .av-dd-menu a{min-height:44px;padding-top:0 !important;padding-bottom:0 !important}
  a.link-arrow{display:inline-flex;align-items:center;min-height:44px}
}

/* About: jump links under the hero (10 Nov 2026) */
.av-jump { display: flex; flex-wrap: wrap; gap: 4px 28px; margin-top: 28px; }
.av-jump a { display: inline-flex; align-items: center; min-height: 44px; font-family: 'Inter', sans-serif; font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: #8A6F48; text-decoration: none; border-bottom: 1px solid transparent; }
.av-jump a:hover, .av-jump a:focus-visible { border-bottom-color: #8A6F48; }
#overview, #founder, #experience, #colleagues { scroll-margin-top: 112px; }
@media (max-width: 768px) { .av-jump { gap: 0 22px; margin-top: 20px; } #overview, #founder, #experience, #colleagues { scroll-margin-top: 72px; } }


/* Footer: more compact on laptops and desktops; phones unchanged (11 Nov 2026) */
@media (min-width: 769px) {
  footer.av-footer { padding-top: 60px !important; }
  footer.av-footer .footer-grid { margin-bottom: 40px; }
  footer.av-footer .footer-col h4, footer.av-footer .footer-col h2 { margin-bottom: 18px; }
  footer.av-footer .footer-links p { margin-bottom: 4px; line-height: 1.55; }
  footer.av-footer .footer-bottom { padding-top: 24px; }
}


/* Menu on one row on small laptops and tablets in landscape (11 Nov 2026). English and French from 900 to 1,060 px (the 10 Nov layout overflowed slightly just above 1,024 px); Spanish labels are longer, so from 1,000 px up to where the 10 Nov rule takes over */
@media (min-width:900px) and (max-width:1140px){html:not([lang="es"]) header .nav-wrapper{flex-wrap:nowrap !important;row-gap:0 !important;padding:10px 18px !important}html:not([lang="es"]) header .logo{flex:none}html:not([lang="es"]) header .logo img{height:34px !important;width:auto}html:not([lang="es"]) header nav{width:auto !important;margin:0 0 0 auto !important;justify-content:flex-end !important;gap:.9rem !important;flex-wrap:nowrap !important}html:not([lang="es"]) header nav > ul{gap:.9rem !important;margin-right:0 !important;flex-wrap:nowrap !important}html:not([lang="es"]) header nav ul li a,html:not([lang="es"]) header .av-dd-toggle{font-size:.68rem !important;letter-spacing:.04em !important;white-space:nowrap}html:not([lang="es"]) header nav .btn{font-size:.66rem !important;letter-spacing:.04em !important;padding:10px 12px !important;white-space:nowrap}}
@media (min-width:1000px) and (max-width:1260px){html[lang="es"] header .nav-wrapper{flex-wrap:nowrap !important;row-gap:0 !important;padding:10px 18px !important}html[lang="es"] header .logo{flex:none}html[lang="es"] header .logo img{height:34px !important;width:auto}html[lang="es"] header nav{width:auto !important;margin:0 0 0 auto !important;justify-content:flex-end !important;gap:.9rem !important;flex-wrap:nowrap !important}html[lang="es"] header nav > ul{gap:.9rem !important;margin-right:0 !important;flex-wrap:nowrap !important}html[lang="es"] header nav ul li a,html[lang="es"] header .av-dd-toggle{font-size:.68rem !important;letter-spacing:.04em !important;white-space:nowrap}html[lang="es"] header nav .btn{font-size:.66rem !important;letter-spacing:.04em !important;padding:10px 12px !important;white-space:nowrap}}


/* Phones: a link after a lead-in ("Not ready to talk yet?") moves to its own line as a whole instead of breaking mid-phrase; paired links stack (12 Nov 2026) */
@media (max-width: 768px) {
  .av-assess-line a { display: inline-block; }
  .av-assess-line .av-linksep { display: none; }
  .av-assess-line:has(.av-linksep) a { display: block; width: fit-content; margin-top: 6px; }
}
/* Phones: practice descriptions and their lists left-aligned, no stretched word gaps (12 Nov 2026) */
@media (max-width: 768px) { .expertise-description, .expertise-description li, .service-list li { text-align: left !important; } }


/* Fix batch, 12 Nov 2026: page landmark, hidden section headings, larger tap areas on phones */
main#main { display: block; height: auto; }
main#main:focus { outline: none; }
.av-vh { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
footer.av-footer .social-icons { gap: 0; }
footer.av-footer .social-icons a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
@media (min-width: 769px) { footer.av-footer .social-icons { margin-left: -11px; } }
.dm-hot::after { content: ""; position: absolute; inset: -12px; border-radius: 50%; }
.dm-dots button { position: relative; }
.dm-dots button::after { content: ""; position: absolute; left: -3px; right: -3px; top: -20px; bottom: -20px; }
@media (max-width: 768px) { a.btn.btn-small { font-size: .78rem; padding: 13px 22px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; } }
/* Home practice cards: three equal columns in every language (ES/FR titles were widening the grid at 1,280 px and up) */
.editorial-grid > * { min-width: 0; }

/* Atelier Value · "Where to start" ladder (live on Home since 12 Nov 2026) */
.av-start { background: var(--white, #FFFFFF); padding: 110px 0 100px; border-top: 1px solid var(--border-grey, #E5E7EB); scroll-margin-top: 90px; }
.av-start-head { max-width: 760px; margin: 0 0 64px; }
.av-start-eyebrow { display: inline-flex; align-items: center; gap: 14px; font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--navy, #0A1118); margin-bottom: 22px; }
.av-start-eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--bronze, #B89768); }
.av-start h2 { font-family: 'Playfair Display', serif; font-weight: 500; font-size: clamp(2rem, 3.4vw, 2.8rem); line-height: 1.15; color: var(--navy, #0A1118); margin: 0 0 20px; }
.av-start-intro { font-size: 1.05rem; line-height: 1.7; color: var(--text-main, #334155); margin: 0; }

.av-ladder { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.av-ladder-step { position: relative; padding: 46px 40px 0 0; scroll-margin-top: 110px; }
.av-ladder-step::before { content: ""; position: absolute; top: 0; left: 0; width: 14px; height: 14px; box-sizing: border-box; border: 2px solid var(--navy, #0A1118); background: var(--white, #FFFFFF); z-index: 1; }
.av-ladder-step::after { content: ""; position: absolute; top: 6px; left: 14px; right: 0; height: 2px; background: var(--navy, #0A1118); }
.av-ladder-step:last-child::before { background: var(--bronze, #B89768); border-color: var(--bronze, #B89768); }
.av-ladder-step:last-child::after { display: none; }
.av-ladder-step:target .av-ladder-quote { border-left-color: var(--navy, #0A1118); }

.av-ladder-label { display: block; font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--navy, #0A1118); margin-bottom: 6px; }
.av-ladder-label .av-num { color: var(--bronze-deep, #0A1118); margin-right: 8px; }
.av-ladder-moment { display: block; font-size: .9rem; color: var(--text-muted, #5B6577); margin-bottom: 22px; }
.av-ladder-quote { font-family: 'Playfair Display', serif; font-size: 1.3rem; line-height: 1.4; color: var(--navy, #0A1118); margin: 0 0 22px; padding-left: 16px; border-left: 2px solid var(--bronze, #B89768); quotes: "\201C" "\201D"; }
.av-ladder-quote::before { content: open-quote; }
.av-ladder-quote::after { content: close-quote; }
.av-ladder-what { font-size: .98rem; line-height: 1.7; color: var(--text-main, #334155); margin: 0 0 18px; }
.av-ladder-format { font-family: 'Inter', sans-serif; font-size: .8rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--navy, #0A1118); margin: 0 0 18px; }
.av-ladder-proof { font-size: .9rem; line-height: 1.6; color: var(--text-muted, #5B6577); margin: 0; padding-top: 16px; border-top: 1px solid var(--border-grey, #E5E7EB); }
.av-ladder-proof strong { color: var(--navy, #0A1118); font-weight: 600; }

.av-start-cta { display: flex; align-items: center; gap: 28px; margin-top: 72px; padding: 32px 36px; background: #F8F9FA; border-left: 2px solid var(--bronze, #B89768); }
.av-start-portrait { flex: none; width: 88px; height: 88px; border-radius: 50%; object-fit: cover; object-position: 50% 18%; filter: grayscale(100%); }
.av-start-cta-text { flex: 1 1 auto; }
.av-start-cta-text p { margin: 0; color: var(--text-main, #334155); line-height: 1.6; }
.av-start-cta-text .av-start-cta-lead { font-family: 'Playfair Display', serif; font-size: 1.25rem; color: var(--navy, #0A1118); margin-bottom: 6px; }
.av-start-cta-text .av-start-cta-name { font-size: .85rem; color: var(--text-muted, #5B6577); margin-top: 8px; }
.av-start-cta-actions { flex: none; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.av-start-cta-actions a.av-start-alt { font-size: .9rem; color: var(--navy, #0A1118); text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 1024px) {
  .av-ladder-step { padding-right: 28px; }
  .av-ladder-quote { font-size: 1.15rem; }
}
@media (max-width: 860px) {
  .av-start { padding: 80px 0 72px; }
  .av-start-head { margin-bottom: 44px; }
  .av-ladder { grid-template-columns: 1fr; }
  .av-ladder-step { padding: 0 0 44px 40px; }
  .av-ladder-step::after { top: 14px; left: 6px; right: auto; bottom: 0; width: 2px; height: auto; }
  .av-ladder-step:last-child { padding-bottom: 0; }
  .av-start-cta { flex-direction: column; align-items: flex-start; gap: 20px; padding: 28px 24px; margin-top: 56px; }
  .av-start-cta-actions { width: 100%; }
  .av-start-cta-actions .btn { width: 100%; text-align: center; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
}

/* Second sentence of the heading on its own line on laptops and desktops */
@media (min-width: 861px) { .av-start-h2b { display: block; } .av-start-head { max-width: none; } .av-start-intro { max-width: 760px; } }

/* French quotation marks */
:lang(fr) .av-ladder-quote { quotes: "\00AB\00A0" "\00A0\00BB"; }

/* Footer, 12 Nov 2026: space between the tagline and the address; address on one line on laptops and desktops */
footer.av-footer .av-f-address { margin-top: 24px; }
/* address wraps only where the column is too narrow for it */
/* Compact menu bands extended to 1,140 px (EN/FR) and 1,260 px (ES) after "Where to start" joined the menu; footer link columns slightly tighter on wide screens so the tagline and address keep one line (12 Nov 2026) */
@media (min-width: 1181px) { footer.av-footer .footer-links-wrapper { gap: 36px; } footer.av-footer .footer-grid { column-gap: 44px; } }
/* Spanish Home headline: same step-down as French on laptops, so the hero image keeps its column (12 Nov 2026) */
@media (min-width: 1025px) { html[lang="es"] .hero-content h1 { font-size: 3.4rem; } }
/* English Home headline slightly smaller on small laptops, so the hero image keeps its column (12 Nov 2026) */
@media (min-width: 1025px) and (max-width: 1260px) { html[lang="en"] .hero-content h1 { font-size: 3.8rem; } }
/* "Where to start": the three columns share one row grid, so labels, quotes, durations, dividers and proof lines align (12 Nov 2026) */
@media (min-width: 861px) {
  @supports (grid-template-rows: subgrid) {
    .av-ladder { grid-template-rows: repeat(6, auto); }
    .av-ladder-step { display: grid; grid-row: span 6; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
    .av-ladder-format { align-self: start; }
  }
}
/* Home: link to all practices under the two practice cards (12 Nov 2026) */
.av-assess-line.av-allpractices { margin-top: 56px; }
/* Home shows two practice cards: two equal columns */
@media (min-width: 769px) { .editorial-grid:has(> .editorial-item:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 64px !important; } }
