/* Desktop refinements only. Approved layouts below 1024px remain unchanged. */
@media(min-width:1024px){
 :root{--desktop-content:1920px;--desktop-gutter:clamp(32px,5vw,96px)}
 .wrap,.site-footer{width:min(var(--desktop-content),calc(100% - var(--desktop-gutter) - var(--desktop-gutter)))}
 .site-header{width:100%;max-width:none;padding-inline:max(var(--desktop-gutter),calc((100% - var(--desktop-content))/2))}
 .brand{font-size:17px}.brand small{font-size:9px}
 #main-nav a{font-size:15px;padding:12px 6px}.header-cta{font-size:14px;min-height:48px}
 .cinema-opening{padding-top:42px;--scene-height:clamp(520px,40vw,780px)}
 .opening-intro{grid-template-columns:1.25fr 1fr;gap:clamp(40px,5vw,100px);padding-bottom:32px}
 .opening-intro h1{font-size:clamp(52px,4.7vw,96px);line-height:1.23;letter-spacing:-.035em}
 .opening-description>p{font-size:18px;line-height:1.7;max-width:46ch}
 .opening-description .hero-actions{gap:28px;margin-top:24px}
 .opening-description .button{font-size:16px;min-height:56px;padding:14px 24px}
 .opening-description .secondary-button{font-size:15px;min-height:52px}
 .showcase-tabs{gap:12px}.showcase-tabs button{font-size:15px;min-height:50px;padding:12px 18px}
 .artifact-position.artifact-main{width:60%;max-width:1120px}
 .artifact-left,.artifact-right{width:32%;max-width:520px}
 .cinema-opening .browser-chrome{font-size:12px;padding:13px 18px}
 .cinema-opening .preview-caption{font-size:15px;padding:14px 18px}
 .cinema-opening .preview-caption span:last-child{font-size:13px}
 .scene-footer .showcase-note,.scene-next{font-size:14px}.scene-footer .showcase-note span{font-size:13px}
 .story-line{font-size:clamp(34px,2.7vw,52px);line-height:1.65}
 .section-head h2,.service-section h2,.reviews-section h2,.process-section h2,.faq-section h2{font-size:clamp(38px,3.1vw,60px);line-height:1.3}
 .section-head>p,.service-section .section-head>p,.work-section .section-head>p{font-size:17px;line-height:1.7;max-width:48ch}
 .main-service{grid-template-columns:1.15fr 1fr;column-gap:clamp(40px,4vw,80px)}
 .main-service h3{font-size:18px}.service-lead{font-size:clamp(28px,2.15vw,40px);line-height:1.5}
 .service-intro>p:last-child:not(.service-lead){font-size:18px;line-height:1.75;max-width:48ch}
 .service-detail dt{font-size:15px}.service-detail dd{font-size:15px;line-height:1.7}
 .service-detail>p{font-size:14px;line-height:1.75}
 .service-detail .text-link{font-size:15px}
 .service-preview-caption strong{font-size:16px}.service-preview-caption p,.design-original,.service-showcase-note{font-size:13px}
 .service-tray h3{font-size:24px}.service-tray p{font-size:17px;line-height:1.7}.service-tray a{font-size:15px}
 .review-identity strong{font-size:18px}.review-identity>div>span{font-size:15px}
 .review-slide .review-quote{font-size:24px;line-height:1.7;max-width:72ch}
 .review-slide .review-quote.review-long{font-size:20px;line-height:1.8;max-width:80ch}
 .process-section{grid-template-columns:.9fr 1.1fr;gap:clamp(50px,6vw,120px)}
 .process-section .section-head>p,.process li p{font-size:17px;line-height:1.75}.process li h3{font-size:24px;line-height:1.5}
 .portfolio-cards .project-line h3{font-size:22px;line-height:1.5}.portfolio-cards .project-line>span{font-size:14px}.portfolio-cards .project-copy>p{font-size:15px}
 .work-toolbar .filters button{font-size:15px;padding:11px 23px}.portfolio-status{font-size:14px}
 .faq summary{font-size:20px;line-height:1.6}.faq p{font-size:17px;line-height:1.75}
 .contact-grid{gap:clamp(60px,6vw,120px)}.contact-section h2{font-size:clamp(44px,3.4vw,68px);line-height:1.35}
 .contact-section h2+p{font-size:18px;line-height:1.7;max-width:44ch}.brief-panel h3{font-size:24px}.brief-panel li p{font-size:17px}.brief-panel button{font-size:16px}
 .site-footer{font-size:13px}
}
@media(min-width:1800px){
 .opening-description>p{font-size:20px}.opening-intro{padding-bottom:40px}
 .service-section,.reviews-section{padding-block:96px}.process-section{padding-block:96px}
 .service-detail dt,.service-detail dd{font-size:16px}
 .service-tray{gap:36px}.portfolio-cards.projects{gap:40px 32px}
}

@media(min-width:1024px){
 .reviews-section.wrap{width:100%;padding-inline:max(var(--desktop-gutter),calc((100% - var(--desktop-content))/2))}
 .review-carousel{width:100%;max-width:none}
 .reviews-section .section-head>p{font-size:17px;line-height:1.7}
 .review-slide.is-active,.review-slide.is-visible{min-height:250px}
}

@media(min-width:1024px){
 html{scroll-padding-top:124px}
 .site-header{height:104px;min-height:104px;padding-block:18px}
 .site-header .brand{gap:16px}
 .site-header .brand-symbol{font-size:64px;line-height:.82}
 .site-header .brand>span:last-child{font-size:20px;line-height:1.3}
 .site-header .brand small{font-size:10px;margin-top:6px;letter-spacing:.13em}
 .site-header #main-nav{gap:34px}
 .site-header #main-nav a{font-size:18px;font-weight:500;padding:12px 6px;min-height:48px}
 .site-header .header-cta{font-size:16px;min-height:56px;padding:14px 24px;gap:24px}
 .site-header .header-cta svg{width:20px;height:20px}
}

/* Reading hierarchy: section title > proposition > body > scope/notes. */
@media(min-width:1024px){
 :root{--desktop-copy:clamp(20px,1.2vw,24px);--desktop-secondary:clamp(17px,1vw,20px);--desktop-note:clamp(16px,.9vw,18px)}
 .service-section{padding-block:72px}
 .service-section .section-head,.reviews-section .section-head,.work-section .section-head{margin-bottom:28px}
 .service-section .section-head>p,.reviews-section .section-head>p,.process-section .section-head>p,.work-section .section-head>p{font-size:var(--desktop-copy);line-height:1.65;max-width:42ch}
 .main-service{grid-template-columns:1fr 1.05fr;column-gap:clamp(32px,3vw,56px);row-gap:24px;padding:28px 0 36px}
 .main-service .service-intro h3{font-size:22px;line-height:1.5;margin-bottom:14px}
 .main-service .service-lead{font-size:clamp(30px,2.3vw,44px);line-height:1.4;margin:0}
 .main-service .service-intro>p:last-child:not(.service-lead){font-size:var(--desktop-copy);line-height:1.65;max-width:none;margin-top:22px}
 .main-service .service-detail dl{margin:0}
 .main-service .service-detail dl>div{grid-template-columns:134px minmax(0,1fr);gap:20px;padding:18px 0;align-items:start}
 .main-service .service-detail dt,.main-service .service-detail dd{font-size:var(--desktop-secondary);line-height:1.65}
 .main-service .service-detail dt{font-weight:600}
 .main-service .service-detail .scope-note{font-size:var(--desktop-note);line-height:1.7;margin-top:20px;max-width:none;color:#625d6c}
 .main-service .service-detail .text-link{font-size:18px;min-height:48px;margin-top:20px}
 .service-preview-caption{padding:17px 20px}
 .service-preview-caption strong{font-size:20px;line-height:1.5}
 .service-preview-caption p,.service-preview-caption .design-original,.service-showcase-note{font-size:16px;line-height:1.65}
 .service-showcase-note{margin-top:14px}
 .service-tray{padding-top:32px;gap:32px}
 .service-tray h3{font-size:28px;line-height:1.4;margin-bottom:14px}
 .service-tray p{font-size:var(--desktop-copy);line-height:1.65}
 .service-tray .text-link{font-size:18px;min-height:48px}
 .reviews-section.wrap,#main>.reviews-section{padding-block:72px}
 .review-identity strong{font-size:22px}.review-identity>div>span{font-size:18px}
 .review-slide .review-quote{font-size:26px;line-height:1.65;max-width:70ch}
 .review-slide .review-quote.review-long{font-size:var(--desktop-copy);line-height:1.7;max-width:76ch}
 .review-rating span,.review-carousel-status{font-size:16px}
 .review-navigation button{font-size:16px;min-height:50px}
 .process-section{padding-block:72px;grid-template-columns:.8fr 1.2fr;gap:64px}
 .process li{padding:22px 0;column-gap:24px}
 .process li h3{font-size:28px;line-height:1.4;margin-bottom:12px}
 .process li p{font-size:var(--desktop-copy);line-height:1.65}
 .process li>span{font-size:16px}
 .portfolio-cards .project-line>span,.portfolio-cards .project-copy>p:not(.work-format){font-size:var(--desktop-secondary);line-height:1.6;margin-top:8px}
 .portfolio-status{font-size:16px}
 .faq-section{grid-template-columns:.8fr 1.2fr;gap:64px;padding-bottom:64px}
 .faq details>summary{font-size:clamp(22px,1.3vw,26px);line-height:1.55;padding-block:24px}
 .faq details>p{font-size:var(--desktop-copy);line-height:1.7;max-width:68ch;padding:0 0 24px;margin:0}
 .contact-section{padding-block:80px}
 .contact-section h2+p{font-size:var(--desktop-copy);line-height:1.65;margin-top:24px}
 .contact-section .contact-actions .button{font-size:18px;min-height:58px}
 .contact-section .contact-secondary{font-size:20px;line-height:1.6;min-height:52px}
 .contact-section .brief-panel h3{font-size:30px;line-height:1.4;margin-bottom:18px}
 .contact-section .brief-panel li{padding-block:18px;gap:20px}
 .contact-section .brief-panel li p{font-size:var(--desktop-copy);line-height:1.6}
 .contact-section .brief-panel li>span::before{font-size:15px}
 .contact-section .brief-panel button{font-size:19px;min-height:58px;padding:14px 20px}
 .site-footer{font-size:15px}
}

@media(min-width:1024px){
 .service-tray .other-services article>h3{font-size:28px;line-height:1.4;margin:20px 0 14px}
 .service-tray .other-services article>p{font-size:var(--desktop-copy);line-height:1.65;margin:0 0 18px;max-width:none}
 .service-tray .other-services article>a:not(.service-art){font-size:18px;line-height:1.6;min-height:48px}
}

@media(min-width:1024px){
 .work-section .section-head h2{font-size:clamp(38px,3.1vw,60px);line-height:1.3}
 .contact-section .brief-panel label{font-size:var(--desktop-note);line-height:1.65}
 .contact-section .brief-panel textarea{font-size:18px;line-height:1.65}
}
