/* Review 31: scoped feedback refinements. No changes to navigation or footer. */

/* Native vertical scrolling; only image dragging uses a composited transform. */
#main .artist-hero.hero-swipe-active .hero-slide{transition:none;pointer-events:none}
#main .artist-hero .hero-slides{overflow:hidden;contain:paint}
#main .dao-swipe-rail{touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain;scrollbar-width:none}
#main .dao-swipe-rail.rail-moving{scroll-snap-type:none!important;scroll-behavior:auto!important}
#main .dao-swipe-rail.is-dragging{cursor:grabbing;user-select:none}
#main .dao-swipe-rail.is-dragging *{user-select:none}
@media(hover:hover) and (pointer:fine){#main .dao-swipe-rail{cursor:grab}}

/* Stable viewport dimensions prevent address-bar resizing from moving content. */
body:is([data-page=home],[data-page=about]) #main{--dao-view:calc(100svh - var(--header-height))}
body[data-page=home] #main .home-layer-cluster>.section{border-radius:0;transform:none}

/* Ecosystem: retain the orbit and the selected detail panel. */
body[data-page=about] #main .section.dao-ecosystem{background:var(--cms-brand-audience,#f6f2ea)}
body[data-page=about] #main .orbit-ring{border-color:#c7c1b6}
body[data-page=about] #main .orbit-ring-outer{border-color:#c7c1b680}
body[data-page=about] #main .orbit-ring-inner{border-color:#df291138}
body[data-page=about] #main .orbit-node{border-color:#ded8cd;box-shadow:0 4px 14px #15161405}
body[data-page=about] #main .orbit-details{align-self:center;min-width:0}
body[data-page=about] #main .orbit-panel{padding:clamp(24px,3vw,40px);gap:0}
body[data-page=about] #main .orbit-panel h3{font-size:clamp(28px,2.5vw,38px);margin:0 0 18px;line-height:1.2}
body[data-page=about] #main .orbit-panel p{font-size:16px;line-height:1.7;max-width:42ch;margin:0 0 24px;overflow-wrap:anywhere}

/* Timeline: connected years, a quieter hierarchy and a stable image stage. */
body[data-page=about] #main .timeline-heading{margin-bottom:24px;align-items:end}
body[data-page=about] #main .dao-year-tabs{margin-bottom:28px}
body[data-page=about] #main .dao-year-tabs button{min-height:58px;font-size:clamp(19px,2vw,25px);padding-bottom:18px}
body[data-page=about] #main .dao-year-tabs button>span{width:6px;height:6px;bottom:-3px}
body[data-page=about] #main .dao-year-panel{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(30px,5vw,72px);min-height:clamp(290px,calc(var(--dao-view) - 320px),440px)}
body[data-page=about] #main .history-copy{padding:20px 0}
body[data-page=about] #main .dao-year{margin-bottom:16px;font-size:12px;letter-spacing:.06em}
body[data-page=about] #main .dao-year-panel h3{font-size:clamp(28px,2.8vw,40px);line-height:1.22;margin-bottom:16px;max-width:18ch}
body[data-page=about] #main .dao-year-panel p{font-size:16px;line-height:1.7;max-width:40ch}
body[data-page=about] #main .dao-year-panel .history-visual{background:#ede9e1;border-radius:3px 3px 28px 3px}
body[data-page=about] #main .history-lockup{padding:30px}
body[data-page=about] #main .history-lockup:before{inset:10%;background:var(--cms-brand-daoPaper,#fff);border-radius:2px}
body[data-page=about] #main .history-lockup>img{max-width:75%;max-height:150px;object-fit:contain}
body[data-page=about] #main .history-orchard>img{max-width:100%;max-height:240px}
@media(prefers-reduced-motion:no-preference){
 body[data-page=about] #main .dao-year-panel:not([hidden]){animation:dao-milestone-in .32s ease-out both}
 @keyframes dao-milestone-in{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}
}

/* Keep complete logo geometry. The Billboard photograph is rendered as a
   monochrome mark with a white blend background; its source is unchanged. */
body[data-page=about] #main :is(.partner-nct,.partner-zing) .partner-mark{height:56px;align-items:center;overflow:visible}
body[data-page=about] #main :is(.partner-nct,.partner-zing) img{max-width:100%;width:148px;height:44px;object-fit:contain;object-position:center;transform:none}
body[data-page=about] #main .partner-zing img{filter:none}
body[data-page=about] #main .partner-billboard .partner-mark{overflow:hidden}
body[data-page=about] #main .partner-billboard img{width:110px;height:110px;max-width:none;flex:none;object-fit:contain;filter:grayscale(1) brightness(.7) contrast(50) invert(1);mix-blend-mode:multiply}

/* Project evidence stays in the existing rail, at a smaller screen-aware size. */
#main #solution-content .works-track{grid-auto-columns:calc((100% - 48px)/3);gap:24px;padding-bottom:12px;width:100%;max-width:1080px;align-self:center}
#main #solution-content .works>.section-heading{width:100%;max-width:1080px;margin-inline:auto}
#main #solution-content .works>.section-heading h2{font-size:clamp(32px,4vw,56px);line-height:1.15}
#main #solution-content .work-image{height:clamp(210px,31svh,300px)}
#main #solution-content .work-info h3{font-size:clamp(23px,2.1vw,30px);line-height:1.25;margin-top:8px}
#main #solution-content .work-info p{font-size:15px;line-height:1.6}
#main #solution-content .work-open{width:42px;height:42px;right:12px;bottom:12px}
#main #solution-content .fanme-card .work-image{padding:0;background:#ede7df;height:clamp(240px,36svh,330px)}
#main #solution-content .fanme-card .work-image>img{width:100%;height:100%;object-fit:contain;border-radius:0}
#main #solution-content .proposal-work-note{font-size:16px;line-height:1.65;max-width:58ch;margin:0 0 24px}

/* Audience labels reuse the bold editorial type of DAO's artist labels. */
#main #solution-content .audience-list{gap:10px}
#main #solution-content .audience-list article{display:block;min-width:0;max-width:100%;padding:9px 15px;border:1px solid transparent;border-radius:99px;background:var(--cms-brand-audience,#f6f2ea);color:var(--cms-brand-ink,#151614)}
#main #solution-content .audience-list article:before{content:none}
#main #solution-content .audience-list h3{font-family:var(--cms-brand-display-font,DAOEditorial,DAO,Arial,sans-serif);font-size:18px;line-height:1.4;font-weight:900;letter-spacing:-.015em;overflow-wrap:anywhere}

/* Tablet keeps the same columns; text and media scale down together. */
@media(min-width:761px) and (max-width:1100px){
 body[data-page=about] #main .dao-year-panel{gap:28px;min-height:320px}
 body[data-page=about] #main .dao-year-panel h3{font-size:30px}
 #main #solution-content .works-track{grid-auto-columns:calc((100% - 40px)/2.4);gap:20px}
}
@media(max-width:760px){
 body:is([data-page=home],[data-page=about]) #main{--dao-module-pad:32px}
 body[data-page=home] #main .section:is(.illustrated-intro,.home-solutions,.who-we-work,.home-artists,.home-releases),
 body[data-page=about] #main .section:is(.dao-company-lead,.dao-ecosystem,.dao-history,.dao-partners){min-height:0;padding-block:36px;justify-content:flex-start}
 body[data-page=about] #main .dao-values{min-height:0}
 body[data-page=home] #main :is(.intro-content>p,.solution-card-copy p){font-size:15px;line-height:1.65}
 body[data-page=home] #main .solution-card-copy{padding:18px 20px}
 body[data-page=home] #main .solution-card-copy h3{font-size:27px;line-height:1.2;margin-bottom:14px}
 body[data-page=home] #main .solution-card-copy p{margin-bottom:0}
 body[data-page=home] #main .solution-explore{margin-inline:20px}
 body[data-page=home] #main .who-card h3{font-size:25px;line-height:1.2;padding:18px 20px}
 body[data-page=home] #main .who-links a{font-size:14px;line-height:1.5;min-height:48px;padding-block:12px}
 body[data-page=about] #main :is(.dao-company-lead p,.dao-values-copy article p,.partners-heading>p,.dao-careers p){font-size:15px;line-height:1.65}
 body[data-page=about] #main .orbit-panel{padding:24px 22px}
 body[data-page=about] #main .orbit-panel h3{font-size:26px;margin-bottom:14px}
 body[data-page=about] #main .orbit-panel p{font-size:15px;line-height:1.65;margin-bottom:20px}
 body[data-page=about] #main .dao-year-tabs{margin-bottom:22px}
 body[data-page=about] #main .dao-year-tabs button{min-height:48px;font-size:18px;padding-bottom:15px}
 body[data-page=about] #main .dao-year-panel{grid-template-columns:minmax(0,1fr);gap:22px;min-height:0}
 body[data-page=about] #main .history-copy{padding:0;min-height:160px;justify-content:flex-start}
 body[data-page=about] #main .dao-year{margin-bottom:10px}
 body[data-page=about] #main .dao-year-panel h3{font-size:29px;max-width:21ch;margin-bottom:14px}
 body[data-page=about] #main .dao-year-panel p{font-size:15px;line-height:1.65}
 body[data-page=about] #main .dao-year-panel .history-visual{height:clamp(190px,28svh,250px);border-radius:3px 3px 22px 3px}
 body[data-page=about] #main .history-lockup>img{max-height:120px}
 body[data-page=about] #main .history-orchard>img{max-height:180px}
 body[data-page=about] #main :is(.partner-nct,.partner-zing) .partner-mark{height:42px}
 body[data-page=about] #main :is(.partner-nct,.partner-zing) img{height:36px}
 body[data-page=about] #main .partner-billboard img{width:94px;height:94px}
 #main #solution-content .works-track{grid-auto-columns:78%;gap:18px}
 #main #solution-content .works{min-height:0;padding-block:36px}
 #main #solution-content .works>.section-heading h2{font-size:32px;line-height:1.2}
 #main #solution-content .work-info h3{font-size:25px}
 #main #solution-content .work-info p{font-size:14px}
 #main #solution-content .fanme-card .work-image{height:clamp(270px,39svh,340px);padding:0}
 #main #solution-content :is(.section-intro,.audience-intro,.proposal-work-note,.hero-copy>p){font-size:15px;line-height:1.65}
 #main #solution-content .proposal-work-note{margin-bottom:24px}
 #main #solution-content .service p{font-size:15px;line-height:1.6;padding:0 20px 22px}
 #main #solution-content .service h3{font-size:23px;line-height:1.2;padding:18px 20px 12px}
 #main #solution-content :is(.production-map p,.process-flow p,.fan-destinations p,.step p,.portal-caption p){font-size:15px;line-height:1.6}
 #main #solution-content .audience-list{gap:8px}
 #main #solution-content .audience-list article{padding:8px 13px}
 #main #solution-content .audience-list h3{font-size:16px;line-height:1.45}
}

body[data-page=about] #main .partner-nct img{width:145%;max-width:220px;flex-shrink:0;height:auto;max-height:56px}

@media(max-width:760px){
 body[data-page=home] #main #home-solutions .solution-card-copy>p{font-size:15px;line-height:1.65;margin:0 20px 16px}
 body[data-page=home] #main #home-solutions .solution-card-copy>h3{font-size:26px;line-height:1.23;margin-inline:20px;margin-bottom:12px}
 body[data-page=home] #main #home-solutions .dao-service-unit{margin:14px 20px 12px}
 body[data-page=home] #main #home-solutions .solution-card-art{height:clamp(115px,20svh,150px)}
}

.history-visual[style] img{object-fit:var(--history-fit,cover)}

/* V46 audit: refine the existing components without adding control trays. */
@media(min-width:761px) and (max-width:1000px){
 body[data-page=about] #main .section.dao-company-lead{grid-template-columns:minmax(0,1fr);min-height:0;gap:26px;padding-block:48px;align-content:start}
 body[data-page=about] #main .dao-company-lead>p{max-width:64ch;font-size:17px;line-height:1.75}
}
@media(min-width:1280px){
 #main #solution-content .services-grid.services-four{grid-auto-columns:calc((100% - 60px)/4);column-gap:20px}
 #main #solution-content .services-grid.services-four .service h3{font-size:clamp(24px,1.9vw,30px);line-height:1.2}
}
@media(min-width:1101px){
 #main #solution-content .services-grid:has(>.service:nth-child(5)){grid-auto-columns:calc((100% - 40px)/2.85)}
}
@media(min-width:1101px) and (max-width:1279px){
 #main #solution-content .services-grid.services-four{grid-auto-columns:calc((100% - 40px)/2.85)}
}
@media(max-width:760px){
 #main #solution-content .rights-pair h3{font-size:clamp(14px,4.2vw,21px);overflow-wrap:normal;word-break:normal;text-wrap:balance}
}
@media(max-height:500px) and (orientation:landscape){
 #main #solution-content .solution-jumpbar{position:static;top:auto}
 #main #solution-content :is(.section,#expertise,#at-a-glance,#work,#together){scroll-margin-top:8px}
}
