/* ADHD Boston: shared insurance, staff, and editorial landing pages. */
.insurance-banner{background:#fffefb;border-bottom:1px solid var(--line);padding:19px 0 12px}.insurance-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.insurance-heading p{margin:0;font-size:13px;color:var(--ink)}.insurance-heading strong{font-size:15px}.insurance-heading span{display:block;font-size:11px;font-weight:400;color:#556962;margin-top:2px}.insurance-heading a{font-size:12px;font-weight:700;text-underline-offset:4px;white-space:nowrap}.insurance-heading a span{display:inline;color:inherit}.insurance-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;margin:10px 0 3px}.insurance-logo{min-width:0;display:flex;align-items:center;justify-content:center;height:63px}.insurance-logo img{width:100%;height:60px;object-fit:contain;mix-blend-mode:multiply}.insurance-logo span{display:none}.insurance-fine{margin:0;font-size:10px;color:#52675f;text-align:center}.nav{min-height:86px}header nav{gap:19px}.brand small{letter-spacing:.13em}.hero{padding-top:59px;padding-bottom:60px}.hero h1{font-size:clamp(48px,5.4vw,72px)}.hero-copy>p{line-height:1.7}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:35px}.section-heading>p{max-width:380px}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.team-card{background:var(--paper);border:1px solid var(--line);border-radius:110px 110px 8px 8px;overflow:hidden}.portrait-link{display:block;background:#e5e8df;overflow:hidden;aspect-ratio:1/1.08}.portrait-link img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .3s}.portrait-link:hover img{transform:scale(1.025)}.team-card-copy{padding:23px 20px 25px}.card-role{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#5a7167;font-weight:700;margin-bottom:8px}.team-card h3{font:26px/1.1 Georgia,serif;letter-spacing:-.04em;margin:0 0 13px}.team-card h3 a{text-decoration:none}.team-card p{font-size:13px;line-height:1.65}.team-card .team-audience{font-size:11px;color:#365b4e;font-weight:bold;min-height:35px}.team-card .textlink{font-size:12px}.landing-hero{padding-top:58px;padding-bottom:58px;max-width:1100px}.landing-hero>.eyebrow{margin-top:26px}.landing-hero h1{max-width:940px;font-size:clamp(42px,5.5vw,68px);margin-top:0}.landing-hero .lead{font-size:19px;line-height:1.8;max-width:840px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:76px;align-items:start;padding-top:12px;padding-bottom:25px}.detail-layout>article{min-width:0}.copy-section{margin:0 0 43px}.copy-section h2{font-size:35px;line-height:1.15;letter-spacing:-.03em}.copy-section p{font-size:16px;line-height:1.85}.copy-section li{margin:14px 0;color:var(--body)}.side-note{background:#e4ebde;border-radius:8px;padding:28px}.side-note h3{font:27px/1.2 Georgia,serif}.side-note ul{padding-left:19px;font-size:14px;color:var(--body);margin-bottom:25px}.side-note li{margin:12px 0}.side-note .btn{width:100%;gap:12px;font-size:13px}.side-note .small-copy{font-size:12px;margin:20px 0 0}.side-links{padding:28px 10px}.side-links h3{font-size:15px}.side-links a{display:block;padding:13px 0;border-top:1px solid var(--line);font-size:13px;text-decoration:none}.profile-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center;padding-top:60px;padding-bottom:68px}.profile-copy>.eyebrow{margin-top:30px;font-size:10px}.profile-copy h1{font-size:clamp(40px,4.4vw,58px)}.profile-copy .lead{font-size:17px;line-height:1.8}.profile-tags{display:flex;flex-wrap:wrap;gap:6px;margin:25px 0}.profile-tags span{font-size:11px;padding:5px 10px;border:1px solid #bccbbb;border-radius:20px}.profile-portrait{margin:0;align-self:start;background:#e3e7dc;border-radius:170px 170px 8px 8px;overflow:hidden}.profile-portrait img{display:block;width:100%;height:auto;max-height:540px;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}.profile-portrait figcaption{text-align:center;padding:13px 15px;font-size:12px}.faq-section{border-top:1px solid var(--line);padding-top:36px;margin-top:30px}.faq-section h2{font-size:35px}.faq-section p{line-height:1.8}.closing{background:#dce7d9;border-radius:12px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;padding:45px 48px}.closing h2{font-size:45px}.closing p{margin-bottom:0}.closing small{font-size:12px;line-height:1.7}.resource-box{background:#eee9d9;padding:25px 28px;border-radius:6px;margin-top:35px}.resource-box h3{font:26px Georgia,serif}.resource-box a{font-size:14px}.source-note{font-size:12px;margin-top:30px}.intro-video{display:block;width:min(100%,440px);max-height:480px;background:#173e39;border-radius:8px}.footer-links{flex-wrap:wrap;max-width:420px}.footer .email{overflow-wrap:anywhere}.footer p a{overflow-wrap:anywhere}header .services-dropdown{max-height:70vh;overflow:auto;min-width:270px}.location-section{border-top:1px solid var(--line)}
@media(min-width:1101px){.nav{gap:28px}header nav{flex-wrap:nowrap}.nav .brand strong{font-size:15px}.nav .brand small{font-size:9px}header nav a,header .services-menu summary{font-size:13px}.nav .btn{padding:12px 16px}}
@media(max-width:1050px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.detail-layout{gap:35px;grid-template-columns:minmax(0,1fr) 260px}.profile-hero{gap:35px}.insurance-logos{gap:14px}.profile-copy h1{font-size:44px}}
@media(max-width:730px){.insurance-banner{padding-top:14px}.insurance-heading{align-items:start;gap:12px}.insurance-heading strong{font-size:13px}.insurance-heading p>span{display:none}.insurance-heading a{font-size:11px;white-space:normal;text-align:right;max-width:125px}.insurance-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 18px;margin:10px 0}.insurance-logo{height:41px}.insurance-logo img{height:42px}.insurance-fine{font-size:9px;line-height:1.5;text-align:left}.hero{padding-top:35px}.hero h1{font-size:53px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:none}.team-grid{gap:14px}.team-card{border-radius:75px 75px 7px 7px}.team-card-copy{padding:17px 14px}.team-card h3{font-size:24px}.team-card p{font-size:12px}.team-card .team-audience{font-size:10px;min-height:0}.portrait-link{aspect-ratio:1/1.25}.landing-hero{padding-top:35px;padding-bottom:37px}.landing-hero h1{font-size:43px}.landing-hero .lead{font-size:17px}.detail-layout{display:flex;flex-direction:column;gap:25px}.detail-aside{width:100%}.copy-section{margin-bottom:33px}.copy-section h2,.faq-section h2{font-size:30px}.copy-section p{font-size:16px}.profile-hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:40px;gap:30px}.profile-copy h1{font-size:43px}.profile-portrait{max-width:370px;justify-self:center;width:100%}.profile-portrait img{max-height:420px}.closing{grid-template-columns:1fr;gap:30px;padding:30px 25px}.closing h2{font-size:38px}header .services-dropdown{max-height:45vh}.nav{min-height:78px}.footer-links{gap:15px}.side-links{padding:24px 0}.profile-copy>.eyebrow{line-height:1.7}}
@media(max-width:390px){.team-grid{grid-template-columns:1fr}.team-card{max-width:320px;margin:auto;width:100%}.portrait-link{aspect-ratio:1/1.05}.brand strong{font-size:13px}.brand small{font-size:8px}.brandmark{width:35px;height:40px}.wrap{padding-left:20px;padding-right:20px}.hero h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){.portrait-link img{transition:none}}
.insurance-logo{overflow:hidden}.insurance-logo img{transform:scale(1.55)}.insurance-logo:nth-child(1) img{transform:scale(2)}.insurance-logo:nth-child(3) img{transform:scale(2)}.insurance-logo:nth-child(6) img{transform:scale(2.15)}
@media(max-width:730px){.insurance-logo img{transform:scale(1.5)}.insurance-logo:nth-child(1) img,.insurance-logo:nth-child(3) img{transform:scale(1.85)}.insurance-logo:nth-child(6) img{transform:scale(2)}}
@media(max-width:730px){.insurance-logo:nth-child(6) img{transform:scale(1.5)}}

/* Team specialties with original clinician photographs. */
.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.team-card{border-radius:24px;background:#e6efd7;display:flex;flex-direction:column;border-color:#d6e1c9}
.portrait-link{aspect-ratio:1;background:#e5e8df;padding:0;flex:none}
.portrait-link img{display:block;object-position:center 20%}
.portrait-link img[src$="ibiam.jpg"],.portrait-link img[src$="mary.jpg"],.portrait-link img[src$="marianne.png"]{object-position:center top}
.team-card-copy{padding:22px 24px 25px;display:flex;flex-direction:column;flex:1}
.team-card h3{font-family:Arial,Helvetica,sans-serif;font-size:26px;line-height:1.2;letter-spacing:-.04em;margin-bottom:5px;font-weight:750}
.team-card .card-role{font-size:14px;line-height:1.5;letter-spacing:0;text-transform:none;margin:0 0 17px;color:var(--ink);font-weight:600;min-height:42px}
.team-specialties{list-style:none;padding:17px 0 0;margin:0 0 20px;border-top:2px solid #c66c3d;display:grid;gap:12px}
.team-specialties li{font-size:22px;font-weight:700;line-height:1.3;letter-spacing:-.025em}
.team-card .team-audience{font-size:12px;margin-top:auto;min-height:0;line-height:1.6}
.team-card .textlink{font-size:14px;align-self:flex-start;margin-top:4px}
.team-openings{background:var(--ink);color:#fffdf8;border-radius:14px;padding:26px 30px;margin-bottom:32px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.team-openings strong{display:block;text-transform:uppercase;letter-spacing:.07em;font-size:21px;line-height:1.3}
.team-openings span{display:block;font-size:18px;font-weight:600;margin-top:5px;color:#f3c1a7}
.team-openings p{font-size:12px;color:#f2f5e9;margin:8px 0 0}
.team-openings .btn{background:#f3c1a7;color:#173e39;border-color:#f3c1a7;white-space:nowrap}
.team-directory-hero{padding-bottom:36px}
@media(max-width:1050px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:730px){.team-grid{grid-template-columns:1fr;gap:24px}.team-card{max-width:440px;width:100%;margin:0 auto;border-radius:22px}.team-card-copy{padding:22px 24px}.team-card h3{font-size:27px}.team-card .card-role{min-height:0;font-size:15px}.team-specialties li{font-size:22px}.team-openings{display:block;padding:24px}.team-openings .btn{margin-top:18px;white-space:normal}.team-openings strong{font-size:20px}.team-openings span{font-size:17px}.portrait-link{aspect-ratio:1}.team-card .team-audience{font-size:12px}}

/* Seven insurers, including Harvard Pilgrim Health Care. */
.insurance-logos{grid-template-columns:repeat(7,minmax(0,1fr));gap:18px}
.insurance-logo img[src$="harvard-pilgrim.jpg"]{transform:none;object-fit:cover}
@media(min-width:731px) and (max-width:1050px){.insurance-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 22px}}
@media(max-width:730px){.insurance-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px}.insurance-logo:last-child{grid-column:2}}
@media(min-width:731px){.insurance-logo:nth-child(6) img{transform:scale(1.7)}}

/* Preserve complete original photographs on clinician profile pages. */
.profile-portrait{border-radius:24px}
.profile-portrait img{aspect-ratio:auto;height:auto;max-height:580px;object-fit:contain;object-position:center}
