/* Real collaborator logos: 1.6 times the previous dimensions, with aspect ratio preserved. */
.collaborators-page img.collaborator-logo:not([src$="provider-placeholder.svg"]),
.collaborator-profile-page img.collaborator-logo:not([src$="provider-placeholder.svg"]){width:128px;height:128px;object-fit:contain;flex-shrink:0}
.home-collaborator-identity img:not([src$="provider-placeholder.svg"]){width:102.4px;height:102.4px;flex:0 0 102.4px;object-fit:contain}
@media(max-width:760px){.collaborator-profile-page img.collaborator-logo:not([src$="provider-placeholder.svg"]){width:115.2px;height:115.2px}}
@media(max-width:400px){.collaborators-page img.collaborator-logo:not([src$="provider-placeholder.svg"]){width:96px;height:96px}}

/* Compact business cards; preserve the enlarged logo dimensions. */
.home-collaborator-card{display:grid;grid-template-columns:102.4px minmax(0,1fr);align-content:start;column-gap:14px;row-gap:6px;padding:14px 16px;border-radius:12px}
.home-collaborator-identity{display:contents}
.home-collaborator-identity img{grid-column:1;grid-row:1 / span 4;align-self:center;justify-self:center}
.home-collaborator-identity h3{grid-column:2;margin:0;font-size:18px;line-height:1.3}
.home-collaborator-card>p{grid-column:2;margin:0;font-size:14px;line-height:1.4}
.home-collaborator-card>.text-link{grid-column:2;justify-self:start;align-self:end;display:inline-flex;align-items:center;gap:6px;min-height:40px;margin-top:0;font-size:14px;line-height:1.3}
@media(max-width:400px){.home-collaborator-card{padding:12px;column-gap:12px;row-gap:5px}.home-collaborator-identity h3{font-size:17px}}
@media(min-width:761px) and (max-width:1100px){.home-collaborator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Shared row tracks keep titles, specialties, areas and links aligned across visible cards. */
.home-collaborator-card{grid-row:span 4;grid-template-rows:subgrid}
.home-collaborator-identity h3{grid-row:1}
.home-collaborator-card>p:not(.home-collaborator-area){grid-row:2}
.home-collaborator-card>.home-collaborator-area{grid-row:3}
.home-collaborator-card>.text-link{grid-row:4}

/* Directory cards: shared tracks align each pair without resizing their logos. */
.collaborators-page .collaborator-grid{gap:16px}
.collaborators-page .collaborator-card{display:grid;grid-template-columns:128px minmax(0,1fr);grid-row:span 7;grid-template-rows:subgrid;column-gap:14px;row-gap:8px;padding:16px;border-radius:12px;align-content:start}
.collaborators-page .collaborator-badges{grid-column:1 / -1;grid-row:1;display:flex;flex-wrap:wrap;gap:6px;align-items:start}
.collaborators-page .collaborator-badges .badge{margin:0;font-size:11px;line-height:1.4}
.collaborators-page .collaborator-identity{display:contents}
.collaborators-page .collaborator-identity img{grid-column:1;grid-row:2 / span 4;align-self:center;justify-self:center}
.collaborators-page .collaborator-identity h2{grid-column:2;grid-row:2;margin:0;font:600 18px/1.3 var(--sans);overflow-wrap:anywhere}
.collaborators-page .collaborator-card>.help-text{grid-column:2;grid-row:3;margin:0;font-size:12px;line-height:1.45}
.collaborators-page .collaborator-services{grid-column:2;grid-row:4;align-self:start;gap:5px;margin:0;padding:0}
.collaborators-page .collaborator-services li{font-size:12px;line-height:1.4;padding:4px 7px}
.collaborators-page .collaborator-area{grid-column:2;grid-row:5;margin:0;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.collaborators-page .collaborator-rating{grid-column:1 / -1;grid-row:6;margin:0;padding-top:10px;align-self:start}
.collaborators-page .collaborator-rating>p{margin:0;font-size:13px;line-height:1.5}
.collaborators-page .collaborator-card>.button{grid-column:1 / -1;grid-row:7;justify-self:end;align-self:end;min-height:44px;padding:8px 14px;font-size:13px;line-height:1.4}
@media(max-width:400px){.collaborators-page .collaborator-card{grid-template-columns:96px minmax(0,1fr);padding:14px;column-gap:12px;row-gap:7px}.collaborators-page .collaborator-identity h2{font-size:17px}}

/* Shorter homepage introductions and closer sections. */
.redesign-home .section{margin-block:40px}
.redesign-home .section-title{margin-bottom:12px}
.redesign-home .home-collaborator-grid{margin-top:12px}
.redesign-home .home-collaborator-controls{margin-top:10px}
.redesign-home .hero{padding-top:24px}
@media(max-width:900px){.redesign-home .section{margin-block:24px}.redesign-home .hero{padding-top:12px}}
@media(max-width:540px){.redesign-home .section{margin-block:18px}}
@media(max-width:1000px){.collaborators-page .collaborator-grid{grid-template-columns:1fr}}

/* Remove 80% of the signed-in homepage's outer menu/hero spacing, retaining a touch target. */
.account-navigation-shell:has(+ .redesign-home) .account-navigation{margin-top:4px;margin-bottom:0}
.account-navigation-shell:has(+ .redesign-home) .account-navigation>summary{padding:6px 12px;min-height:44px}
.account-navigation-shell+.redesign-home .hero{padding-top:6.4px}
@media(max-width:900px){.account-navigation-shell:has(+ .redesign-home) .account-navigation{margin-top:3.2px}.account-navigation-shell+.redesign-home .hero{padding-top:3.2px}}

/* Small centered native sliders replace the large counters and arrow controls. */
.services-carousel-navigation.carousel-navigation-compact,.home-collaborator-controls.carousel-navigation-compact{display:flex;justify-content:center;align-items:center;gap:8px;margin:4px auto 0;min-height:32px;width:calc((100% + 24px)/1.5)}
.carousel-navigation-compact[hidden]{display:none!important}
.carousel-range{appearance:none;-webkit-appearance:none;display:block;width:100%;max-width:none;height:32px;margin:0;padding:0;border:0;background:transparent;cursor:pointer;accent-color:var(--green)}
.carousel-range::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:#d5dfd8}
.carousel-range::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;margin-top:-4px;background:var(--green);border:0}
.carousel-range::-moz-range-track{height:3px;border-radius:3px;background:#d5dfd8}
.carousel-range::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:var(--green);border:0}
.carousel-pause{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--green);font:600 14px/1 var(--sans);cursor:pointer;border-radius:50%}
.carousel-pause:hover{background:#edf1e9}
.redesign-home .services-carousel-track{scrollbar-width:none;padding-bottom:4px}
.redesign-home .services-carousel-track::-webkit-scrollbar{display:none}

@media(max-width:1100px){.services-carousel-navigation.carousel-navigation-compact,.home-collaborator-controls.carousel-navigation-compact{width:calc((100% + 20px)/2)}}
@media(max-width:760px){.services-carousel-navigation.carousel-navigation-compact,.home-collaborator-controls.carousel-navigation-compact{width:80%}}

/* Compact the initial homepage viewport without reducing brand or provider logos. */
.header:has(~ main .redesign-home) .header-inner{padding-block:4px;min-height:0}
.redesign-home .hero{padding-top:8px;gap:28px}
.redesign-home .start-panel{padding:20px 24px}
.redesign-home .start-panel .field{margin-top:10px}
.redesign-home .start-panel button[type=submit]{margin-top:14px}
.redesign-home .micro-guarantees{margin-top:8px}
.redesign-home .services-carousel,.redesign-home .home-collaborators{margin-block:18px}
.redesign-home .service-slide{padding:16px;gap:8px}
.redesign-home .services-carousel .section-title,.redesign-home .home-collaborators .section-title{margin-bottom:8px}
@media(max-width:900px){.redesign-home .hero{gap:12px}.redesign-home .start-panel{padding:16px}.redesign-home .services-carousel,.redesign-home .home-collaborators{margin-block:14px}}

/* Match service-card geometry and allow direct horizontal gestures. */
.redesign-home .home-collaborator-grid{gap:16px;padding:4px 2px;touch-action:pan-y;user-select:none;cursor:grab;grid-template-columns:repeat(3,minmax(0,1fr))}
.redesign-home .home-collaborator-grid:active{cursor:grabbing}
.redesign-home .home-collaborator-card{box-sizing:border-box;grid-row:auto;grid-template-rows:auto auto auto 1fr;border-radius:14px}
@media(max-width:900px){.redesign-home .home-collaborator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.redesign-home .home-collaborator-grid{grid-template-columns:88%}}

/* A continuous scroll track exposes the next provider card, just like services. */
.redesign-home .home-collaborator-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0;padding:4px 2px;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y}
.redesign-home .home-collaborator-grid::-webkit-scrollbar{display:none}
.redesign-home .home-collaborator-card{flex:0 0 calc((100% - 32px)/3);min-width:0;scroll-snap-align:start}
@media(max-width:900px){.redesign-home .home-collaborator-card{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:540px){.redesign-home .home-collaborator-card{flex-basis:88%}}

.ad-showcase .ad-pagination{display:flex;align-items:center;justify-content:center;gap:4px;padding:0;margin:2px auto 0;border:0;background:transparent;min-height:32px}.ad-showcase .ad-pagination[hidden]{display:none}.ad-pagination button{display:grid;place-items:center;width:32px;height:32px;min-height:32px;padding:0;border:0;background:transparent;cursor:pointer;border-radius:16px}.ad-pagination button span{display:block;width:14px;height:3px;background:#d5dfd8;border-radius:4px;transition:width .2s,background .2s}.ad-pagination button[aria-pressed="true"] span{width:28px;background:var(--green)}.ad-pagination button:hover span{background:var(--green)}@media(prefers-reduced-motion:reduce){.ad-pagination button span{transition:none}}

/* Larger sponsor marks, with a transparent surface matching each slide. */
.ad-showcase .ad-strip{grid-template-columns:180px minmax(0,1fr) auto;min-height:168px;position:relative;background:#fff}
.ad-showcase .ad-brand-mark{position:absolute;grid-column:auto;grid-row:auto;left:24px;top:15%;height:70%;width:180px;max-width:none;background:transparent;padding:0;border:0;border-radius:0;overflow:visible;isolation:auto}
.ad-showcase .ad-brand-mark img,.ad-showcase .ad-brand-mark svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:none;opacity:1;background:transparent;mix-blend-mode:multiply}
.ad-showcase .ad-strip:hover{background:#f8faf7}
@media(max-width:900px){.ad-showcase .ad-strip{grid-template-columns:40% minmax(0,1fr);gap:5px 12px;padding:12px 16px;min-height:200px}.ad-showcase .ad-brand-mark{left:16px;width:calc((100% - 44px)*.4);height:70%;top:15%}.ad-showcase .ad-name{font-size:18px}.ad-showcase .ad-copy{font-size:13px}}
@media(max-width:360px){.ad-showcase .ad-strip{padding:12px;gap:5px 10px;min-height:214px}.ad-showcase .ad-brand-mark{left:12px;width:calc((100% - 34px)*.4)}.ad-showcase .ad-name{font-size:17px}}

/* Center marks within the content rows, below the advertising label. */
.ad-showcase .ad-brand-mark{position:static;grid-column:1;grid-row:2/4;left:auto;top:auto;width:100%;height:118px;align-self:center;justify-self:center;display:flex;align-items:center;justify-content:center}
@media(max-width:900px){.ad-showcase .ad-brand-mark{grid-row:2/5;height:140px}}
@media(max-width:360px){.ad-showcase .ad-brand-mark{height:150px}}

.ad-showcase .ad-items{touch-action:pan-y;cursor:grab;user-select:none}.ad-showcase .ad-items:active{cursor:grabbing}
