/* Homepage editorial refinement. The hero and shared page styles are intentionally untouched. */
@font-face{font-family:'Aruni Instrument Serif';src:url('/assets/fonts/instrument-serif.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Aruni Inter';src:url('/assets/fonts/inter-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Aruni Inter';src:url('/assets/fonts/inter-medium.woff') format('woff');font-style:normal;font-weight:500 700;font-display:swap}
.home-page{background:#F6F5F1}
.home-page .home-content,.home-page>.editorial-content{--ink:#1C1C1A;--muted:#60615B;--editorial-rule:#D4D4CC;background:#F6F5F1;color:var(--ink);font-family:'Aruni Inter',Arial,sans-serif;max-width:1440px;padding-inline:clamp(24px,6.25vw,90px)}
.home-page .home-content .home-section{padding-block:64px 72px;border-top:1px solid var(--editorial-rule)}
.home-page .home-content .home-section>.section-label{margin-bottom:26px}
.home-page .home-content .section-label,.home-page .home-content .project-number{font:400 12px/1.6 'Aruni Inter',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.home-page .home-content h2:not(.section-label),.home-page .home-content h3{font-family:'Aruni Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:1.04;text-wrap:pretty;color:var(--ink)}
.home-page .home-content h2:not(.section-label){font-size:clamp(36px,4vw,48px)}
.home-page .home-content .home-body{font:400 16px/1.75 'Aruni Inter',Arial,sans-serif;color:var(--muted);max-width:490px}
.home-page .home-content .home-split{grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.home-page .home-content .home-split>*{min-width:0}
.home-page .home-content .home-split>:first-child{grid-column:1/7}
.home-page .home-content .home-split>:last-child{grid-column:8/-1}
/* A compact opening statement retains the editorial grid. */
.home-page .home-content .home-studio{padding-block:72px 80px;border-top:0}
.home-page .home-content .home-studio .home-split{align-items:end}
.home-page .home-content .home-studio h2{grid-column:1/8;font-size:clamp(48px,4.5vw,60px);letter-spacing:-.035em;line-height:1.01}
.home-page .home-content .home-studio .home-body{grid-column:8/-1;padding:0 0 5px;font-size:16px;line-height:1.85}
/* Preserve the complete case-study image at a more controlled scale. */
.home-page .home-content .case-title-row{gap:32px;margin-bottom:28px}
.home-page .home-content .case-title-row h2{font-size:clamp(48px,4.5vw,60px)}
.home-page .home-content .case-title-row>p{font-size:13px;line-height:1.7;color:var(--muted)}
.home-page .home-content .case-image-link{max-width:980px;margin-inline:auto}
.home-page .home-content .case-image-link>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.home-page .home-content .case-copy{margin-top:28px}
.home-page .home-content .case-copy h3{font-size:clamp(36px,3.2vw,44px);max-width:500px}
.home-page .home-content .case-facts{gap:16px 24px;margin-top:24px}
.home-page .home-content .case-facts dt{font-size:11px;letter-spacing:.1em;margin-bottom:4px;color:var(--muted)}
.home-page .home-content .case-facts dd{font-size:14px;line-height:1.6}
.home-page .home-content .case-facts>div:last-child dd{font-family:'Aruni Instrument Serif',Georgia,serif;font-size:25px;line-height:1.15}
.home-page .home-content .editorial-actions{gap:16px 28px;margin-top:24px}
.home-page .home-content .editorial-actions a,.home-page .home-content .project-cta{font:400 12px/1.7 'Aruni Inter',Arial,sans-serif;letter-spacing:.1em;border-bottom:1px solid #8F9188;padding-block:12px}
/* Staggered project composition: one lead image, followed by two offset views. */
.home-page .home-content .featured-projects-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:40px 28px;align-items:start}
.home-page .home-content .featured-project:nth-child(1){grid-column:1/8;grid-row:1}
.home-page .home-content .featured-project:nth-child(2){grid-column:2/6;grid-row:2;margin-top:28px}
.home-page .home-content .featured-project:nth-child(3){grid-column:8/-1;grid-row:2}
.home-page .home-content .featured-project figure>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.home-page .home-content .featured-project figcaption{display:grid;grid-template-columns:28px 1fr;align-items:baseline;gap:5px 14px;margin-top:14px}
.home-page .home-content .featured-project h3{font:400 19px/1.4 'Aruni Inter',Arial,sans-serif;letter-spacing:-.025em;grid-column:2}
.home-page .home-content .featured-project .project-number{grid-column:1;grid-row:1;font-size:11px;letter-spacing:.03em}
.home-page .home-content .project-category{grid-column:2;font-size:12px;line-height:1.65;color:var(--muted)}
/* Purpose: calm statements separated by fine editorial rules. */
.home-page .home-content .home-purpose>h2{max-width:740px}
.home-page .home-content .purpose-rows{margin-top:30px}
.home-page .home-content .purpose-row{grid-template-columns:44px minmax(0,1fr) minmax(0,.95fr);gap:28px;padding-block:24px;border-color:var(--editorial-rule)}
.home-page .home-content .purpose-row h3{font-size:clamp(28px,2.5vw,34px);line-height:1.08;max-width:430px}
.home-page .home-content .purpose-row .project-number{padding-top:6px}
/* Keep every selected image, at its original ratio, within a quieter three-row collection. */
.home-page .home-content .selected-mosaic{max-width:960px;gap:20px;margin-inline:auto}
.home-page .home-content .mosaic-row{grid-template-columns:1.12fr .94fr .94fr;grid-template-rows:auto;gap:16px;aspect-ratio:auto;align-items:start}
.home-page .home-content .mosaic-row:nth-child(2){grid-template-columns:.94fr 1.12fr .94fr}
.home-page .home-content .mosaic-row:nth-child(3){grid-template-columns:.94fr .94fr 1.12fr}
.home-page .home-content .mosaic-image{grid-column:auto;grid-row:auto;margin:0;overflow:visible}
.home-page .home-content .mosaic-image:nth-child(2){margin-top:12px}
.home-page .home-content .mosaic-image img{width:100%;height:auto;object-fit:contain}
/* Each process step reads across one line, then stacks naturally on mobile. */
.home-page .home-content .process-steps{grid-template-columns:1fr;gap:0;margin-top:30px}
.home-page .home-content .process-steps li{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,.95fr);gap:28px;padding-block:20px;border-color:var(--editorial-rule)}
.home-page .home-content .process-steps h3{font-size:30px;line-height:1.15;margin:0}
.home-page .home-content .process-steps .project-number{padding-top:6px}
.home-page .home-content .process-steps .home-body{grid-column:3}
/* Contact and footer share the same grid and restrained text-link treatment. */
.home-page .home-content .home-contact{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 32px;text-align:left;padding-block:64px 72px}
.home-page .home-content .home-contact h2{grid-column:1/-1;font-size:clamp(48px,4.5vw,60px);line-height:1.02;max-width:820px;margin:0 0 24px}
.home-page .home-content .home-contact .home-body{grid-column:1/7;grid-row:2;margin:0;max-width:440px}
.home-page .home-content .home-contact .project-cta{grid-column:9/-1;grid-row:2;justify-self:start;align-self:start;margin-top:0}
.home-page .home-content .home-contact-details{grid-column:1/-1;justify-content:flex-start;gap:12px 30px;margin-top:28px;font-size:14px}
.home-page>.editorial-content .footer-bottom{border-top:1px solid #D4D4CC;padding-block:32px 42px;align-items:center}
.home-page>.editorial-content .footer-brand{width:112px}
.home-page>.editorial-content .footer-nav{font:400 12px/1.7 'Aruni Inter',Arial,sans-serif;letter-spacing:.02em;gap:26px}
/* Motion is prepared as an inert editor template until the staircase film is supplied. */
.home-page .home-content .motion-intro{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;margin-bottom:28px}
.home-page .home-content .motion-preview{position:relative;max-width:880px;margin-inline:auto;aspect-ratio:16/9;background:#1C1C1A;overflow:hidden}
.home-page .home-content .motion-preview img{display:block;width:100%;height:100%;object-fit:contain}
.home-page .home-content .motion-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:56px;height:56px;border:1px solid #ffffffb3;border-radius:50%;background:#1c1c1a40;color:#fff}
@media(max-width:1050px){
 .home-page .home-content .home-studio .home-split{grid-template-columns:1fr;gap:24px}
 .home-page .home-content .home-studio h2,.home-page .home-content .home-studio .home-body{grid-column:1}
 .home-page .home-content .home-studio .home-body{max-width:480px;font-size:16px;margin-left:auto}
 .home-page .home-content .home-split{gap:24px}
 .home-page .home-content .home-section{padding-bottom:64px}
 .home-page .home-content .home-studio{padding-block:64px 72px}
 .home-page .home-content .featured-projects-grid{gap:32px 24px}
 .home-page .home-content .featured-project:nth-child(2){margin-top:24px}
 .home-page .home-content .purpose-row,.home-page .home-content .process-steps li{grid-template-columns:32px minmax(0,1fr) minmax(0,1fr);gap:24px}
 .home-page .home-content .home-contact .project-cta{grid-column:8/-1}
}
@media(max-width:700px){
 .home-page .home-content,.home-page>.editorial-content{padding-inline:6vw}
 .home-page .home-content .home-section{padding-block:40px 48px}
 .home-page .home-content .motion-intro{grid-template-columns:1fr;gap:18px;margin-bottom:24px}
 .home-page .home-content .home-section>.section-label{margin-bottom:22px}
 .home-page .home-content h2:not(.section-label){font-size:clamp(34px,7.4vw,42px);line-height:1.06}
 .home-page .home-content .home-body{font-size:16px;line-height:1.75}
 .home-page .home-content .home-split{grid-template-columns:1fr;gap:22px}
 .home-page .home-content .home-split>:first-child,.home-page .home-content .home-split>:last-child{grid-column:1}
 .home-page .home-content .home-studio{padding-block:48px 56px}
 .home-page .home-content .home-studio h2{font-size:clamp(36px,8.3vw,48px);line-height:1.03}
 .home-page .home-content .home-studio .home-body{margin:0;padding:0}
 .home-page .home-content .case-title-row{display:block;margin-bottom:22px}
 .home-page .home-content .case-title-row h2{font-size:44px}
 .home-page .home-content .case-title-row>p{margin-top:12px}
 .home-page .home-content .case-copy{margin-top:28px}
 .home-page .home-content .case-copy h3{font-size:36px;max-width:440px}
 .home-page .home-content .case-facts{gap:18px 20px;margin-top:24px}
 .home-page .home-content .editorial-actions{gap:16px 24px;margin-top:22px}
 .home-page .home-content .featured-projects-grid{grid-template-columns:1fr;gap:32px}
 .home-page .home-content .featured-project:nth-child(n){grid-column:1;grid-row:auto;margin:0}
 .home-page .home-content .featured-project figcaption{margin-top:16px}
 .home-page .home-content .featured-project h3{font-size:19px}
 .home-page .home-content .purpose-rows{margin-top:26px}
 .home-page .home-content .purpose-row,.home-page .home-content .process-steps li{grid-template-columns:26px minmax(0,1fr);gap:10px 14px;padding-block:20px}
 .home-page .home-content .purpose-row h3{font-size:29px}
 .home-page .home-content .purpose-row .home-body,.home-page .home-content .process-steps .home-body{grid-column:2}
 .home-page .home-content .selected-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .home-page .home-content .mosaic-row{display:contents}
 .home-page .home-content .mosaic-image:nth-child(n){grid-column:auto;grid-row:auto;margin:0}
 .home-page .home-content .process-steps{margin-top:26px}
 .home-page .home-content .process-steps h3{font-size:28px}
 .home-page .home-content .home-contact{display:block;padding-block:44px 48px}
 .home-page .home-content .home-contact h2{font-size:clamp(36px,8.3vw,48px);line-height:1.03;margin-bottom:26px}
 .home-page .home-content .home-contact .project-cta{margin-top:26px}
 .home-page .home-content .home-contact-details{margin-top:28px;gap:10px 24px}
 .home-page>.editorial-content .footer-bottom{padding-block:28px 32px;gap:28px}
 .home-page>.editorial-content .footer-nav{gap:14px 20px}
}
@media(max-width:360px){.home-page .home-content .case-facts{grid-template-columns:1fr}.home-page .home-content .home-studio h2{font-size:34px}}
