/* Clear reading levels: chapter, headline, supporting copy, detail. */
@font-face { font-family:'Manrope Hero'; src:url('/assets/manrope-hero-extrabold.woff2') format('woff2'); font-weight:800; font-style:normal; font-display:swap; }
:root {
  --section-title: clamp(2.25rem, 4.4vw, 4.25rem);
  --reading-copy: clamp(1rem, 1.3vw, 1.125rem);
}
main h1, main h2 { font-weight:700; letter-spacing:-.045em; text-wrap:balance; }
main h3 { font-weight:600; text-wrap:balance; }
main p strong { font-weight:600; color:var(--ink); }
.section h2 { font-size:var(--section-title); line-height:1.1; }
.ink-muted, .page-hero h1>.accent { color:#6c716e; }
.section { padding-block:104px; }
.section-head, .symptom-heading, .manifesto { align-items:start; gap:clamp(32px,6vw,88px); }
.section-head>p, .symptom-heading>p, .manifesto>p { font-size:var(--reading-copy); line-height:1.75; padding-top:5px; }
.section-head h2, .symptom-heading h2, .manifesto h2 { max-width:19ch; }
.chapter-heading { padding-bottom:0; margin-bottom:38px; border-bottom:0; }
.section-index { display:flex; align-items:center; gap:14px; font-size:18px; font-weight:600; letter-spacing:-.02em; color:var(--ink); }
.chapter-number { font-size:12px; letter-spacing:0; color:var(--muted); padding-right:14px; border-right:1px solid var(--line); }
.chapter-heading .text-link { font-size:13px; }
.eyebrow { font-size:14px; font-weight:600; margin-bottom:24px; }
.row-label { font-size:14px; font-weight:600; color:var(--ink); }
.hero-title { display:flex; flex-direction:column; font-size:clamp(4.5rem,9.2vw,9rem); line-height:.92; font-weight:700; text-wrap:initial; }
.hero-title .title-mask:not(.title-small) { font-family:'Manrope Hero',Manrope,Arial,sans-serif; font-weight:800; }
.hero-title .title-small { font-weight:600; }
.hero-title .title-mask { padding-block:.12em; margin-block:-.12em; }
.hero-title .title-small:nth-child(3) { margin-top:.1em; }
.hero-title em { text-decoration:none; }
.hero-title em::after { content:none; }
.hero-copy { font-size:17px; line-height:1.7; max-width:490px; }
.hero-copy strong { display:block; margin-bottom:10px; font-size:1.07em; line-height:1.5; }
.hero-consultation-cta { display:grid; justify-items:start; gap:12px; }
.hero-bridge { font-size:15px; line-height:1.5; color:var(--ink); font-weight:600; }
.hero-credential { display:flex; align-items:center; gap:16px; }
.hero-credential>span { font-size:12px; color:var(--muted); }
.hero-credential img { width:124px; height:auto; flex:none; }
.hero-footline { margin-top:12px; }
.page-hero { padding-block:34px 90px; }
.page-hero h1 { font-size:clamp(3.1rem,6.2vw,6rem); max-width:1150px; line-height:1.07; }
.page-hero .intro { max-width:650px; font-size:19px; line-height:1.7; margin-top:32px; }
.breadcrumbs { margin-bottom:44px; font-size:13px; }
.breadcrumbs>span:last-child { color:var(--ink); font-weight:600; }
.symptom-main h3 { font-size:clamp(1.6rem,2.8vw,2.7rem); }
.symptom-detail p { font-size:16px; line-height:1.7; }
.case-section { background:var(--soft); }
.case-section .section-head, .product-section .section-head { display:block; text-align:center; max-width:900px; margin:0 auto 64px; }
.case-section .section-head h2, .product-section .section-head h2 { margin-inline:auto; max-width:24ch; }
.case-section .section-head>p, .product-section .section-head>p { max-width:560px; margin:24px auto 0; }
.case-item>h3 { font-size:clamp(1.6rem,2.4vw,2.25rem); margin-top:28px; }
.case-item>p { font-size:16px; max-width:47ch; }
.method-section { background:var(--paper); }
.method-sticky h2 { max-width:14ch; }
.method-sticky>p { font-size:16px; max-width:38ch; }
.method-chapters>li { min-height:300px; padding-block:44px; }
.method-chapters h3 { font-size:clamp(1.8rem,3vw,2.8rem); }
.method-chapters p { font-size:16px; }
.product-title h3 { font-size:clamp(2.3rem,3.7vw,3.4rem); font-weight:700; }
.product-subtitle { font-size:clamp(1.4rem,2.1vw,2rem); line-height:1.3; }
.product-row p:not(.product-subtitle):not(.micro) { font-size:16px; line-height:1.75; max-width:44ch; }
.consultation-layout>div>p { font-size:17px; max-width:40ch; line-height:1.7; }
/* The oversized stamp entrance must not create horizontal page scrolling. */
.consultation-section { overflow-x:clip; }
.pulse-word { display:inline-block; color:var(--coral); transform-origin:50% 65%; white-space:nowrap; }
.faq-layout { padding-top:40px; border-top:1px solid var(--line); }
.faq-layout>h3 { font-size:28px; }
.faq summary { font-size:17px; font-weight:600; }
.split>div>p, .copy-block p { font-size:var(--reading-copy); line-height:1.8; max-width:55ch; }
.plain-grid h3, .split h3 { font-size:clamp(1.4rem,2.2vw,2rem); line-height:1.2; }
.deliverable { padding:30px; background:var(--soft); border:0; border-radius:12px; }
.soft .deliverable { background:var(--paper); }
.deliverable .fact-label { font-size:14px; font-weight:600; color:var(--ink); }
.content-list { font-size:16px; line-height:1.75; }
.article-layout h2 { font-size:clamp(2rem,3.5vw,3.3rem); }
.article-layout article p { font-size:18px; line-height:1.85; max-width:60ch; }
.article-layout article>div+div { padding-top:52px; border-top:1px solid var(--line); }
.legal-content h2 { font-size:28px; }
.cta-inner h2 { font-weight:700; }
.cookie-heading h2, .privacy-dialog h2 { font-weight:700; }
.privacy-category h3 { font-weight:600; }

/* About: a sequence of distinct chapters, rather than another service page. */
.about-nav { display:flex; flex-wrap:wrap; gap:12px 32px; padding-bottom:30px; }
.about-nav a { font-size:14px; text-decoration:none; border-bottom:1px solid var(--line); padding-block:8px; }
.about-nav a:hover { border-color:var(--coral); }
.story-origin { padding-top:64px; }
.story-origin-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(40px,9vw,140px); }
.story-year { align-self:start; padding-top:8px; }
.story-year>span { font-size:15px; font-weight:600; }
.story-year>strong { display:block; font-size:clamp(6rem,12vw,12rem); font-weight:700; letter-spacing:-.085em; line-height:1.2; border-bottom:4px solid var(--coral); padding-bottom:18px; margin-bottom:24px; }
.story-year>p { font-size:18px; line-height:1.6; }
.story-copy h2 { max-width:19ch; }
.story-copy p { font-size:17px; line-height:1.8; max-width:55ch; margin-top:25px; }
.story-copy h3 { font-size:28px; line-height:1.2; }
.story-takeaway { border-top:1px solid var(--line); padding-top:24px; margin-top:32px!important; }
.story-takeaway strong { display:block; margin-bottom:6px; }
.story-project-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,6vw,88px); align-items:center; }
.story-project-visual { background:var(--paper); border-radius:16px; padding:clamp(28px,4vw,56px); min-width:0; }
.story-project-visual .evzone-logo { width:174px; height:56px; }
.story-project-visual>p { margin:38px 0; font-size:clamp(2rem,3.7vw,3.4rem); font-weight:600; letter-spacing:-.04em; line-height:1.15; color:var(--muted); }
.story-evolution { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding-top:22px; border-top:1px solid var(--line); font-size:12px; font-weight:600; }
.story-evolution>[aria-hidden] { color:var(--muted); }
.editorial-heading { text-align:center; max-width:960px; margin:0 auto 64px; }
.editorial-heading h2 { max-width:24ch; margin:auto; }
.story-client-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,7vw,104px); }
.story-client-grid>article { border-top:1px solid var(--line); padding-top:30px; min-width:0; }
.story-client-name { display:flex; align-items:center; min-height:62px; font-size:19px; font-weight:600; }
.story-auditiv-logo { width:126px; height:62px; object-fit:contain; filter:brightness(0); }
.story-client-grid h3 { margin:32px 0 24px; font-size:clamp(1.6rem,2.4vw,2.25rem); line-height:1.2; }
.story-client-grid p { font-size:17px; line-height:1.8; }
.purpose-section { background:var(--soft); }
.purpose-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,6vw,88px); max-width:1050px; margin:auto; }
.purpose-grid>div { padding-top:24px; border-top:2px solid var(--coral); }
.purpose-grid h3 { font-size:22px; margin-bottom:18px; }
.purpose-grid p { font-size:18px; line-height:1.8; }
.about-today .partner-about { margin:0 0 38px; padding:0 0 30px; border-top:0; border-bottom:1px solid var(--line); flex-wrap:wrap; gap:22px; }
.about-today .partner-about img { width:200px; }
.about-today .partner-about p { max-width:34ch; }
.today-detail h3 { margin-top:30px; }

@media (max-width:1100px) {
  .section-index { font-size:16px; }
  .product-row { gap:40px; }
  .story-project-grid, .story-origin-grid { gap:44px; }
  .hero-title .title-small { font-size:.5em; }
}
@media (max-width:760px) {
  :root { --section-title:clamp(2rem,8.7vw,3rem); }
  .section { padding-block:52px; }
  .chapter-heading { margin-bottom:28px; gap:16px; flex-wrap:wrap; }
  .section-index { font-size:16px; gap:10px; }
  .chapter-number { font-size:11px; padding-right:10px; }
  .chapter-heading .text-link { font-size:12px; }
  .eyebrow, .row-label { font-size:13px; }
  .hero-v2 { padding-top:12px; }
  .hero-title { font-size:clamp(2.875rem,14.7vw,6.25rem); }
  .hero-editorial { padding-top:24px; }
  .hero-copy { font-size:16px; max-width:100%; margin-top:22px; line-height:1.6; }
  .hero-copy strong { margin-bottom:8px; font-size:1em; line-height:1.5; }
  .hero-actions { margin-top:22px; gap:12px; }
  .hero-editorial .hero-actions { flex-direction:column; }
  .hero-sculpture { max-width:400px; padding-top:12px; margin-top:8px; }
  .hero-footline { padding-block:20px; justify-content:center; flex-direction:column; gap:20px; }
  .hero-bridge { font-size:14px; }
  .hero-credential { gap:12px; }
  .hero-credential>span { font-size:11px; }
  .hero-credential img { width:112px; }
  .hero-title .title-small { font-size:.52em; line-height:1.25; }
  .page-hero { padding-block:24px 40px; }
  .page-hero h1 { font-size:clamp(2.4rem,10vw,4rem); }
  .page-hero .intro { font-size:17px; margin-top:26px; }
  .breadcrumbs { margin-bottom:30px; font-size:12px; }
  .section-head, .symptom-heading, .manifesto { gap:24px; }
  .case-section .section-head, .product-section .section-head, .editorial-heading { text-align:left; margin-bottom:32px; }
  .case-section .section-head h2, .product-section .section-head h2, .editorial-heading h2 { margin:0; }
  .case-section .section-head>p, .product-section .section-head>p { margin-top:22px; }
  .symptom-main h3, .case-item>h3 { font-size:27px; }
  .symptom-detail p, .case-item>p, .method-sticky>p, .method-chapters p { font-size:16px; }
  .method-chapters>li { min-height:0; padding-block:26px; }
  .method-chapters h3 { font-size:27px; }
  .product-row { gap:24px; padding-block:32px; }
  .product-visual { padding:20px; }
  .case-grid { gap:36px; }
  .consultation-layout { gap:32px; }
  .product-title h3 { font-size:36px; }
  .product-subtitle { font-size:23px; }
  .consultation-layout>div>p { font-size:16px; }
  .faq-layout { padding-top:28px; }
  .faq summary { font-size:16px; }
  .deliverable { padding:24px; }
  .article-layout article p { font-size:17px; }
  .article-layout article>div { margin-bottom:40px; }
  .article-layout article>div+div { padding-top:28px; }
  .about-nav { column-gap:20px; row-gap:4px; padding-bottom:20px; }
  .about-nav a { font-size:12px; }
  .story-origin { padding-top:32px; }
  .story-origin-grid, .story-project-grid, .story-client-grid, .purpose-grid { grid-template-columns:1fr; gap:40px; }
  .story-year { max-width:310px; }
  .story-year>strong { font-size:clamp(6rem,25vw,10rem); padding-bottom:8px; margin-bottom:18px; }
  .story-year>p { font-size:16px; }
  .story-copy p, .story-client-grid p, .purpose-grid p { font-size:16px; line-height:1.8; }
  .story-copy h3 { font-size:25px; }
  .story-project-visual>p { font-size:38px; }
  .story-evolution { gap:8px; font-size:11px; }
  .story-client-grid h3 { font-size:27px; margin-top:24px; }
  .purpose-grid h3 { font-size:22px; }
  .about-today .partner-about { flex-direction:row; }
}

/* A quieter frame, tighter logo groups, and distinct About / FAQ chapters. */
.site-header {
  background:rgb(255 255 255 / 82%);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  border-bottom-color:rgb(34 35 34 / 9%);
}
.scroll-line { flex:none; overflow:hidden; }
.scroll-line::before { content:none; }
.scroll-wheel {
  position:absolute;
  top:6px;
  left:calc(50% - 1px);
  width:2px;
  height:6px;
  border-radius:2px;
  background:var(--ink);
}
.experience-inner { grid-template-columns:1fr 1fr; gap:40px; }
.logo-family>span { margin-bottom:16px; }
.logo-pair { justify-content:flex-start; gap:clamp(24px,3vw,44px); min-height:54px; padding-right:0; }
.logo-family+.logo-family { padding-left:40px; }
.about-home .manifesto { margin-bottom:0; }
.faq-section { background:var(--soft); }
.faq-section .faq-layout { padding-top:0; border-top:0; align-items:start; }
.faq-section .faq-layout>h2 { font-size:clamp(2rem,3.5vw,3.4rem); max-width:13ch; }
.cta-band { background:var(--paper); padding-block:64px; border-top:1px solid var(--line); }
.cta-inner { gap:32px; }
.cta-inner h2 { font-size:clamp(1.8rem,3.2vw,3rem); line-height:1.2; max-width:22ch; }
.closing-link { flex:none; font-size:16px; padding-block:10px; }
@media (max-width:1100px) {
  .experience-inner { gap:28px; }
  .logo-family+.logo-family { padding-left:28px; }
  .logo-pair { gap:24px; }
}
@media (max-width:760px) {
  .experience-inner { grid-template-columns:1fr; gap:24px; }
  .logo-family+.logo-family { padding:22px 0 0; }
  .logo-pair { gap:36px; }
  .cta-band { padding-block:44px; }
  .cta-inner { gap:16px; }
  .closing-link { font-size:15px; }
  .footer-top>.footer-identity { gap:16px; }
  .footer-identity .brand { width:min(44%,144px); height:auto; }
  .footer-identity .brand-logo { width:100%; height:auto; object-fit:contain; }
  .footer-identity .partner-credential { width:min(44%,142px); }
}

@media (max-width:380px) {
  .logo-pair { gap:20px; }
  .experience-strip .evzone-logo { width:138px; height:40px; }
  .experience-strip .evzone-logo img { width:188px; top:-43px; left:-26px; }
  .auditiv-logo img { width:94px; }
  .sofia-logo img { width:112px; }
  .teleconvo-logo img { width:32px; }
  .teleconvo-logo>span { font-size:16px; }
}

@media (prefers-reduced-motion:reduce) {
  .scroll-wheel { transform:none!important; opacity:1!important; }
  .pulse-word { transform:none!important; }
}

/* A single invitation, followed by the live calendar. */
.diagnostic-booking{padding:64px 0 80px;scroll-margin-top:110px}
.diagnostic-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:clamp(36px,5vw,80px);align-items:start}
.diagnostic-copy{padding-top:26px}
.diagnostic-copy h1{font-size:clamp(3rem,4.5vw,4.8rem);line-height:1.05;letter-spacing:-.055em}
.diagnostic-copy p{font-size:18px;line-height:1.6;max-width:31ch;margin-top:28px;color:#626260}
.diagnostic-calendar{min-width:0}
.booking-widget{background:#fff;border-radius:16px;overflow:hidden}
.booking-widget iframe{display:block;width:100%}
.diagnostic-help{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:20px 18px 0;font-size:13px;color:#626260}
.diagnostic-help a{text-decoration:underline;text-underline-offset:4px;padding-block:8px}
@media (max-width:900px){
  .diagnostic-booking{padding:36px 0 48px;scroll-margin-top:90px}
  .diagnostic-layout{grid-template-columns:minmax(0,1fr);gap:30px;max-width:720px}
  .diagnostic-copy{padding-top:0}
  .diagnostic-copy h1{font-size:clamp(2.5rem,7vw,3.8rem);max-width:17ch}
  .diagnostic-copy p{font-size:16px;margin-top:18px;max-width:none}
  .diagnostic-help{padding-inline:4px}
}

/* Draw arrows consistently across desktop and mobile font systems. */
.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.15em;flex:none;overflow:visible}
.btn .arrow-icon{width:22px;height:22px}
.round-arrow .arrow-icon{width:24px;height:24px}
.booking-gate{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:24px;background:#f5f5f3;border:1px solid var(--line);border-radius:20px;text-align:center}
.booking-gate p{font-size:13px;line-height:1.6;max-width:350px;color:#626260;margin:0}
.language-switch{display:flex;gap:12px;align-items:center;font-size:12px;margin-left:16px;flex:none}
.language-switch a{text-decoration:none;color:var(--ink);padding:8px 2px}
.language-switch a[aria-current]{font-weight:800}
.footer-legal .language-switch{margin-left:auto}
@media(max-width:760px){.booking-gate{min-height:260px;padding:24px}.nav>.language-switch{margin-left:auto;margin-right:14px}.footer-legal .language-switch{margin-left:0}}
/* Use the supplied black English wordmark, with its transparent margins cropped in layout. */
html[lang="en"] .brand-logo{object-fit:cover;object-position:50% 49%}
html[lang="en"] .sheet-top img{height:36px;object-fit:cover;object-position:50% 49%}
html[lang="en"] .prescription-stamp img{height:36px;object-fit:cover;object-position:50% 49%}
.nav>.language-switch{order:3;margin-left:0}
.nav-links{margin-left:auto}
@media(min-width:761px) and (max-width:1100px){.nav{gap:18px}.nav-links{gap:20px}.nav-links>.btn{margin-left:0}.language-switch{gap:8px}}
@media(max-width:760px){.nav>.language-switch{order:0;margin-left:auto;margin-right:0}.nav-links{margin-left:0}html[lang="en"] .footer-identity .brand{height:44px}html[lang="en"] .footer-identity .brand-logo{height:44px;object-fit:cover}}
