/* Secondary pages: editorial reading, topic navigation and useful next steps. */
.decalogo-page .chapter-sidebar nav { max-height:65vh; overflow-y:auto; padding-right:12px; }
.decalogo-page .chapter-heading h2 { font-size:clamp(26px,2.5vw,34px); line-height:1.2; }
@media(max-width:900px) { .decalogo-page .chapter-sidebar nav { max-height:230px; grid-template-columns:1fr; } }
.secondary-page { background:#f7faff; }
.secondary-page .container { width:min(1180px,calc(100% - 64px)); }
.secondary-page .page-hero { background:#edf4fc; color:#071d49; padding:28px 0 64px; border-bottom:1px solid #d9e5f2; }
.secondary-page .page-hero::after { display:none; }
.secondary-page h1 { font-size:clamp(38px,4.7vw,66px); font-weight:400; line-height:1.06; letter-spacing:-.035em; text-wrap:balance; max-width:830px; }
.secondary-page .page-hero .eyebrow { color:#1766ff; font-weight:600; letter-spacing:.11em; line-height:1.5; }
.secondary-page .hero-copy { color:#46546d; font-size:18px; line-height:1.75; max-width:48ch; }
.breadcrumbs { display:flex; gap:14px; flex-wrap:wrap; align-items:center; margin-bottom:42px; font-size:13px; color:#586779; }
.breadcrumbs a { display:inline-flex; align-items:center; min-height:36px; }
.breadcrumbs a:hover { text-decoration:underline; }
.secondary-intro { display:grid; grid-template-columns:1.3fr 1fr; gap:12px 80px; align-items:end; }
.secondary-intro .eyebrow { grid-column:1 / -1; margin-bottom:4px; }
.secondary-intro h1 { margin:0; }
.secondary-intro .hero-copy { margin:0 0 3px; }
.secondary-page .section { padding:64px 0; }
.text-link { display:inline-flex; gap:24px; align-items:center; min-height:48px; border-bottom:1px solid #aab6c6; margin-top:18px; font-size:15px; }
.text-link:hover { color:#1766ff; border-color:#1766ff; }
.approach-hero-grid { display:grid; grid-template-columns:1.25fr .8fr; gap:90px; align-items:center; }
.approach-hero h1 { max-width:690px; font-size:clamp(40px,4.3vw,62px); }
.approach-hero-photo { margin:0; position:relative; }
.approach-hero-photo img { width:100%; height:340px; object-fit:cover; object-position:center 45%; border-radius:2px 72px 2px 2px; }
.approach-hero-photo figcaption { margin-top:12px; font-size:12px; color:#586779; }
.approach-page .approach-copy { max-width:1180px; }
.approach-copy > h2:first-child { font-size:clamp(28px,3vw,40px); font-weight:400; max-width:560px; margin:0 0 24px; }
.approach-copy > p { max-width:850px; font-size:18px; line-height:1.8; }
.approach-page .approach-pillars { grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; margin:48px 0 38px; counter-reset:pillar; }
.approach-pillars article { counter-increment:pillar; padding:24px 0 0; border-top:1px solid #bccad8; }
.approach-pillars article::before { content:'0' counter(pillar); display:block; margin-bottom:26px; color:#1766ff; font-size:12px; font-variant-numeric:tabular-nums; }
.approach-pillars h2 { font-size:25px; font-weight:500; margin:0 0 16px; }
.approach-pillars p { font-size:15px; line-height:1.8; color:#46546d; }
.approach-summary { border-left:2px solid #1766ff; padding:4px 0 4px 26px; max-width:880px; margin:0; }
.approach-summary p { margin:0; font-size:18px; line-height:1.8; }
.approach-page .approach-reading { padding-top:80px; }
.reading-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:92px; align-items:start; }
.chapter-sidebar { position:sticky; top:150px; }
.chapter-sidebar .eyebrow { color:#617084; font-size:11px; }
.chapter-sidebar nav { display:grid; }
.chapter-sidebar nav a { padding:13px 0; border-bottom:1px solid #dbe1e4; font-size:14px; line-height:1.5; }
.chapter-sidebar a:hover { color:#1766ff; }
.sidebar-contact { display:flex; justify-content:space-between; gap:15px; padding:18px 0; margin-top:24px; font-size:14px; color:#1766ff; border-top:1px solid #bccad8; line-height:1.5; }
.approach-chapter { padding:0 0 48px; margin:0 0 42px; border-bottom:1px solid #dbe1e4; scroll-margin-top:150px; }
.chapter-heading { display:flex; align-items:baseline; gap:22px; margin-bottom:26px; }
.chapter-number { font:500 12px/1 'DM Sans',sans-serif; color:#1766ff; }
.chapter-heading h2 { font-size:clamp(28px,3.1vw,40px); font-weight:400; line-height:1.12; margin:0; }
.approach-chapter p { max-width:66ch; font-size:17px; line-height:1.85; color:#46546d; margin:0 0 18px; }
.approach-chapter p:last-child { margin-bottom:0; }
.approach-chapter:last-of-type { border-bottom:0; margin-bottom:0; padding-bottom:24px; }
.secondary-page .section.navy:last-child { background:#e9edf2; color:#071d49; border-top:1px solid #d6dfe9; }
.secondary-page .cta { gap:32px; }
.secondary-page .cta h2 { font-size:clamp(30px,3.8vw,48px); line-height:1.12; font-weight:400; }
.secondary-page .cta .button { flex-shrink:0; background:#071d49; color:white; }
.section-jumps { display:flex; gap:12px 32px; flex-wrap:wrap; padding:22px 0; border-bottom:1px solid #dbe1e4; }
.section-jumps a { display:inline-flex; min-height:44px; align-items:center; gap:20px; font-size:14px; border-bottom:1px solid transparent; }
.section-jumps a:hover,.section-jumps a:focus { color:#1766ff; border-bottom-color:#1766ff; }
.jump-count { font-size:12px; padding:4px 8px; border-radius:4px; background:#e6eaf0; color:#46546d; }
.services-page .service-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 64px; border-top:0; }
.services-page .service { display:grid; grid-template-columns:30px minmax(0,1fr); gap:12px 16px; padding:30px 0 38px; align-content:start; scroll-margin-top:135px; }
.services-page .service > div:last-child { grid-column:2; display:flex; flex-direction:column; align-items:flex-start; }
.services-page .service h2 { font-size:30px; line-height:1.15; font-weight:400; margin:0; }
.services-page .service .index { padding-top:5px; }
.services-page .service p { font-size:16px; line-height:1.8; }
.services-page .tags { gap:6px; margin-top:18px; }
.services-page .tag { padding:5px 9px; border:0; border-radius:4px; background:#edf1f6; font-weight:400; font-size:12px; }
.services-page #tecnologia { background:#f2f3f0; color:#071d49; }
.services-page #tecnologia .eyebrow { color:#1766ff; }
.services-page #tecnologia .intro-grid h2 { font-size:40px; font-weight:400; }
.services-page #tecnologia .hero-copy { color:#46546d; }
.services-page #tecnologia .tech { border:0; border-top:1px solid #b9c7d6; padding:24px 0; }
.services-page #tecnologia .tech p { color:#46546d; }
.team-page .group-head { align-items:center; padding-bottom:16px; }
.team-page .group-head h2 { font-size:30px; font-weight:400; }
.team-page .team-group { scroll-margin-top:140px; }
.team-page .team-grid { gap:40px 32px; }
.team-page .portrait { aspect-ratio:4/4; background:#f1f2f1; }
.team-page .portrait img { object-fit:contain; object-position:center top; }
.team-page .team-card h3 { font-size:23px; font-weight:500; }
.team-page .team-card p { font-size:15px; line-height:1.65; }
.team-page .team-group + .team-group { margin-top:64px; }
.patient-guide .guide-layout { grid-template-columns:260px minmax(0,1fr); gap:72px; }
.patient-guide .guide-sidebar { position:sticky; top:136px; }
.patient-guide .guide-nav { position:static; display:block; max-height:calc(100svh - 260px); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; padding-right:12px; }
.patient-guide .guide-nav .eyebrow { font-size:10px; color:#617084; line-height:1.5; margin-bottom:12px; }
.patient-guide .guide-nav a { font-size:13px; padding:12px 0; }
.patient-guide .guide-nav a span { min-width:18px; }
.reading-label { color:#617084; font-size:12px; margin:0 0 12px; }
.patient-guide .guide-heading { margin-bottom:32px; font-weight:400; }
.patient-guide .guide-section > summary { gap:20px; padding:25px 0; }
.patient-guide .guide-section > summary h3 { font-weight:400; font-size:25px; }
.patient-guide .guide-section[open] { border-top-color:#1766ff; }
.patient-guide .guide-section-body { padding:0 0 24px 22px; border-left:2px solid #dce7f7; margin:0 0 24px; }
.patient-guide .guide-answer > summary h4 { font-weight:500; }
.patient-guide .guide-answer[open] .answer-copy { padding:0 0 8px; }
.location-page .location-contact-panel { padding:40px; background:#eaf3fd; }
.location-page .location-contact-panel .eyebrow { color:#1766ff; font-size:11px; }
.location-page .location-contact-panel h2 { font-size:36px; font-weight:400; }
.location-page .location-actions { display:grid; justify-items:start; gap:8px; }
.location-page .location-photo { height:100%; max-height:560px; object-fit:cover; }
.location-page .location-layout { gap:32px; align-items:stretch; }
.location-page .location-without-photo { grid-template-columns:1fr; max-width:900px; }
.location-switch { display:flex; gap:32px; padding:0 0 48px; }
.location-switch a { min-height:44px; display:inline-flex; align-items:center; border-bottom:1px solid #aab6c6; }
.location-page .page-hero { background:linear-gradient(120deg,#e9f3ff,#f7faff); }
.location-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:36px; }
.location-outline-action { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:48px; padding:0 22px; border:1px solid #8eaccf; border-radius:999px; font-weight:700; }
.location-outline-action:hover { background:#dcecff; }
.location-page .location-contact-panel { display:flex; flex-direction:column; justify-content:center; }
.location-page .location-contact-panel h2 { font-size:clamp(30px,3vw,42px); }
.location-page .location-actions { gap:12px; margin:8px 0 20px; }
.location-page .location-actions .service-path { min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; text-underline-offset:5px; }
.location-photo-placeholder { position:relative; overflow:hidden; min-height:430px; display:flex; flex-direction:column; justify-content:center; padding:46px; background:linear-gradient(135deg,#071d49,#173e7e); color:#fff; }
.location-photo-placeholder::before { content:''; position:absolute; width:520px; height:210px; right:-150px; bottom:-85px; border:2px solid rgba(122,171,250,.55); border-radius:50%; transform:rotate(-12deg); }
.location-photo-placeholder::after { content:'La sede di Arlate'; position:absolute; top:34px; left:46px; color:#a6c8ff; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.location-photo-placeholder span { font:400 clamp(36px,5vw,64px)/1 'Inter Tight',sans-serif; letter-spacing:-.04em; }
.location-photo-placeholder small { margin-top:18px; font-size:14px; color:#c4d7f4; }
.location-page .location-without-photo { grid-template-columns:1fr 1fr; max-width:none; }
.location-next { border-top:1px solid #d9e5f2; }
.location-next h2 { font-size:clamp(32px,4vw,52px); font-weight:400; margin-bottom:30px; }
.location-next-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.location-next-links a { min-height:130px; border-top:2px solid #1766ff; padding:18px 0; display:flex; flex-direction:column; justify-content:space-between; gap:18px; }
.location-next-links a > span:first-child { font:500 26px/1.1 'Inter Tight',sans-serif; }
.location-next-links a > span:last-child { display:flex; justify-content:space-between; gap:12px; color:#46546d; font-size:14px; }
.location-next-links a:hover { color:#1766ff; }
@media(max-width:800px) { .location-page .location-without-photo { grid-template-columns:1fr; } .location-photo-placeholder { min-height:260px; } .location-next-links { grid-template-columns:1fr; gap:8px; } .location-next-links a { min-height:94px; } }
@media(min-width:801px) and (max-width:1100px) {
 .header-inner { gap:12px; grid-template-columns:176px 1fr auto; }
 .nav a { padding-inline:8px; font-size:13px; }
 .site-header .brand,.site-header .brand img { width:176px; }
 .reading-layout { gap:45px; grid-template-columns:220px minmax(0,1fr); }
}

/* Shared homepage navigation and the lighter grey masthead. */
#nav.site-header,#nav.site-header.scrolled { background-color:#dfe2e6; background-image:linear-gradient(115deg,#e7e8ea 0%,#dfe2e6 52%,#d3d7dd 100%); }
.approach-page .approach-hero-grid { grid-template-columns:minmax(0,1fr); max-width:850px; }
.approach-page .approach-hero h1 { max-width:800px; }
.approach-page .approach-hero .hero-copy { margin:20px 0 0; }
.secondary-page .secondary-cta .button { background:#fff; color:#071d49; }
.secondary-page .secondary-cta .button:hover { background:#dceaff; }
@media(max-width:900px) {
 .approach-hero-grid { gap:32px; grid-template-columns:1.2fr .8fr; }
 .approach-hero-photo img { height:300px; }
 .approach-page .approach-pillars { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
 .reading-layout,.patient-guide .guide-layout { grid-template-columns:1fr; gap:32px; }
 .chapter-sidebar,.patient-guide .guide-sidebar { position:static; }
 .chapter-sidebar nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
 .chapter-sidebar .sidebar-contact { display:none; }
 .patient-guide .guide-nav { max-height:240px; border-block:1px solid #dbe1e4; padding:14px; background:#f2f3f0; }
 .patient-guide .guide-nav .eyebrow { display:block; }
 .patient-guide .guide-nav a { border-radius:0; border:0; border-bottom:1px solid #dbe1e4; white-space:normal; }
 .secondary-intro { gap:12px 36px; }
 .services-page .service-list { gap:0 32px; }
 .services-page .service h2 { font-size:26px; }
}
@media(max-width:600px) {
 .secondary-page .container { width:calc(100% - 40px); }
 .secondary-page .page-hero { padding:18px 0 36px; }
 .breadcrumbs { margin-bottom:24px; font-size:12px; }
 .secondary-page h1,.approach-hero h1 { font-size:39px; line-height:1.08; }
 .secondary-intro,.approach-hero-grid { grid-template-columns:1fr; gap:18px; }
 .secondary-intro .hero-copy { font-size:16px; line-height:1.75; }
 .approach-hero-photo { margin-top:16px; }
 .approach-hero-photo img { height:240px; border-top-right-radius:48px; }
 .secondary-page .section { padding:40px 0; }
 .approach-copy > p { font-size:16px; }
 .approach-page .approach-pillars { gap:24px 18px; margin:32px 0; }
 .approach-pillars h2 { font-size:23px; }
 .approach-pillars p { font-size:15px; }
 .approach-summary { padding-left:18px; }
 .approach-summary p { font-size:16px; }
 .chapter-sidebar nav { grid-template-columns:1fr; }
 .approach-chapter { padding-bottom:32px; margin-bottom:32px; scroll-margin-top:112px; }
 .chapter-heading { gap:14px; margin-bottom:20px; }
 .chapter-heading h2 { font-size:28px; }
 .approach-chapter p { font-size:16px; line-height:1.8; }
 .section-jumps { gap:6px 20px; padding:14px 0; }
 .service-jumps { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }
 .service-jumps a { font-size:13px; line-height:1.5; }
 .services-page .service-list { grid-template-columns:1fr; }
 .services-page .service { gap:10px 10px; grid-template-columns:22px 1fr; padding:24px 0 30px; }
 .services-page .service h2 { font-size:28px; }
 .services-page #tecnologia .intro-grid h2 { font-size:32px; }
 .team-page .team-grid { grid-template-columns:1fr; gap:32px; }
 .team-page .portrait { aspect-ratio:4/3.8; }
 .team-page .group-head h2 { font-size:28px; }
 .patient-guide .page-hero h1 { font-size:32px; }
 .patient-guide .guide-section > summary h3 { font-size:23px; }
 .patient-guide .guide-section-body { padding-left:14px; }
 .location-page .location-contact-panel { padding:26px; }
 .location-page .location-layout { grid-template-columns:1fr; }
 .location-page .location-contact-panel h2 { font-size:30px; }
}
/* Place-led pages: one composition, with each studio's verified details. */
.location-page .page-hero.location-hero { position:relative; padding:30px 0 86px; overflow:hidden; border:0; background:linear-gradient(118deg,#071d49 0%,#102e67 72%,#173e7e 100%); color:#fff; }
.location-page-arlate .page-hero.location-hero { background:linear-gradient(118deg,#071d49 0%,#12336d 68%,#22538d 100%); }
.location-hero .container { position:relative; z-index:1; }
.location-hero .breadcrumbs { margin-bottom:62px; color:#b6c9e8; }
.location-hero .breadcrumbs a:hover { color:#fff; }
.location-hero-main { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(270px,.55fr); gap:60px; align-items:end; }
.location-hero-copy .eyebrow { display:flex; gap:18px; align-items:center; color:#a6c9ff; margin-bottom:18px; }
.location-hero-copy .eyebrow span { color:#fff; opacity:.75; }
.location-page .location-hero h1 { max-width:900px; margin:0; color:#fff; font-size:clamp(4rem,7.3vw,7.6rem); line-height:.93; font-weight:400; letter-spacing:-.065em; }
.location-hero .hero-copy { max-width:520px; margin:22px 0 0; color:#d7e5fb; font-size:18px; }
.location-hero-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:37px; }
.location-hero-links a { min-height:48px; display:inline-flex; align-items:center; gap:25px; padding-bottom:7px; border-bottom:1px solid rgba(255,255,255,.6); color:#fff; font-weight:700; transition:border-color .2s ease,color .2s ease; }
.location-hero-links a:hover { color:#b9d4ff; border-color:#b9d4ff; }
.location-hero-address { padding:28px 0 5px 26px; border-left:1px solid rgba(255,255,255,.45); }
.location-hero-address > span { display:block; margin-bottom:22px; color:#a6c9ff; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.location-hero-address address { font-style:normal; font:400 clamp(1.45rem,2.1vw,2rem)/1.3 'Inter Tight',sans-serif; }
.location-hero-address a { min-height:44px; display:inline-flex; align-items:center; gap:20px; margin-top:22px; text-decoration:underline; text-underline-offset:5px; font-weight:700; }
.location-hero-smile { position:absolute; width:55%; height:auto; right:-6%; bottom:-64px; fill:none; stroke:rgba(113,170,255,.22); stroke-width:2; pointer-events:none; }
.location-directions { scroll-margin-top:80px; }
.location-section-head { display:flex; justify-content:space-between; align-items:end; gap:35px; margin-bottom:30px; }
.location-section-head .eyebrow { color:#1766ff; margin-bottom:10px; }
.location-section-head h2 { margin:0; font-size:clamp(2.2rem,4vw,3.6rem); font-weight:400; line-height:1; }
.location-section-head > p { max-width:41ch; margin:0; color:#46546d; font-size:16px; line-height:1.6; }
.location-page .location-overview { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:22px; }
.location-page .location-contact-panel { position:relative; padding:38px; border-radius:16px; background:#edf4fc; align-items:flex-start; justify-content:flex-start; }
.location-panel-number { margin-bottom:32px; color:#59729a; font-size:12px; font-weight:700; letter-spacing:.12em; }
.location-page .location-contact-panel .eyebrow { margin-bottom:9px; color:#1766ff; }
.location-page .location-contact-panel h3 { margin:0 0 24px; font-size:clamp(1.8rem,2.7vw,2.6rem); font-weight:400; line-height:1.1; }
.location-page .location-contact-panel address { font-size:17px; }
.location-page .location-contact-panel .location-details { margin:28px 0 12px; }
.location-page .location-contact-panel p:not(.eyebrow) { margin:18px 0 20px; }
.location-panel-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; margin-top:auto; }
.location-panel-actions .button { gap:16px; }
.location-panel-actions > a:not(.button) { min-height:44px; display:inline-flex; align-items:center; gap:14px; color:#1453aa; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.location-map-shell { display:flex; flex-direction:column; min-height:500px; overflow:hidden; border:1px solid #d1deec; border-radius:16px; background:#dde9f7; }
.location-map-shell iframe { width:100%; flex:1; min-height:440px; border:0; }
.location-map-caption { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 16px; padding:16px 22px; background:#f3f7fc; font-size:13px; }
.location-map-caption span { color:#506582; }
.location-map-caption a { min-height:44px; display:inline-flex; align-items:center; gap:10px; color:#1453aa; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:900px) {
 .location-hero-main { grid-template-columns:1fr; gap:32px; }
 .location-hero-address { max-width:500px; }
 .location-page .location-overview { grid-template-columns:1fr; }
 .location-map-shell iframe { min-height:400px; }
}
@media(max-width:600px) {
 .location-page .page-hero.location-hero { padding:20px 0 55px; }
 .location-hero .breadcrumbs { margin-bottom:36px; }
 .location-page .location-hero h1 { font-size:clamp(3.7rem,13vw,5.2rem); }
 .location-hero .hero-copy { font-size:16px; }
 .location-hero-links { margin-top:22px; }
 .location-hero-address { padding:20px 0 0 18px; }
 .location-hero-address > span { margin-bottom:12px; }
 .location-section-head { display:block; }
 .location-section-head > p { margin-top:15px; }
 .location-page .location-contact-panel { padding:25px; }
 .location-map-shell iframe { min-height:330px; }
 .location-map-caption { padding:12px 16px; }
}
/* Team: a tighter editorial rhythm with a clear role index. */
.team-page .page-hero { padding-bottom:52px; }
.team-page .team-layout { grid-template-columns:190px minmax(0,1fr); gap:38px; padding-top:48px; padding-bottom:84px; }
.team-page .team-sidebar { top:96px; padding:20px 16px; border:1px solid #dce5f0; border-radius:14px; background:#fff; box-shadow:0 18px 42px -38px rgba(7,29,73,.45); }
.team-page .team-sidebar .eyebrow { margin:0 0 15px; font-size:11px; }
.team-page .team-filters { gap:2px; }
.team-page .team-filters button { min-height:46px; border:0; border-radius:8px; padding:11px 12px; background:transparent; font-size:14px; }
.team-page .team-filters button:hover { background:#edf4fc; }
.team-page .team-filters button[aria-pressed="true"] { background:#e9f2ff; color:#071d49; box-shadow:inset 3px 0 #1766ff; }
.team-page .team-group + .team-group { margin-top:66px; }
.team-page .group-head { padding:0 0 18px; border-bottom:1px solid #cbd8e8; }
.team-page .group-head h2 { font-size:clamp(27px,3vw,36px); }
.team-page .team-profiles { gap:22px; margin-top:24px; }
.team-page .team-card.team-profile { min-height:330px; gap:0; padding:0; overflow:hidden; border:1px solid #dfe8f2; border-radius:14px; background:#fff; box-shadow:0 20px 42px -38px rgba(7,29,73,.42); }
.team-page .team-profile-photo { height:100%; min-height:330px; aspect-ratio:auto; background:#eceff1; }
.team-page .team-profile-photo img { width:100%; height:100%; object-fit:contain; object-position:center bottom; background:#eceff1; }
.team-page .team-profile-copy { padding:28px clamp(28px,3.5vw,48px); }
.team-page .team-profile-index { margin-bottom:12px!important; font-size:11px!important; color:#3569a4!important; }
.team-page .team-card.team-profile h3 { max-width:12ch; margin:0 0 10px; font-size:clamp(30px,2.7vw,40px); font-weight:400; letter-spacing:-.035em; line-height:1.08; }
.team-page .team-card.team-profile .team-profile-role { margin-bottom:18px!important; font-size:15px!important; line-height:1.5; }
.team-page .team-card.team-profile .team-profile-bio { font-size:15px!important; line-height:1.65!important; }
.team-page .team-cv-button { margin-top:20px; min-height:44px; padding:8px 0; font-size:14px; }
@media(max-width:900px) {
 .team-page .team-layout { grid-template-columns:1fr; gap:22px; padding-top:28px; }
 .team-page .team-sidebar { position:static; padding:16px; }
 .team-page .team-filters { display:flex; gap:6px; }
 .team-page .team-filters button { width:auto; min-width:0; flex:1 1 auto; border:1px solid #d8e4f2; }
}
@media(max-width:700px) {
 .team-page .page-hero { padding-bottom:34px; }
 .team-page .team-card.team-profile { grid-template-columns:1fr; }
 .team-page .team-profile-photo { height:300px; min-height:0; }
 .team-page .team-profile-copy { padding:26px; }
 .team-page .team-group + .team-group { margin-top:50px; }
}
