/* Photography, proportion and material: the homepage has its own composition. */
.atelier-home{--paper:#f3f1eb;--ink:#292923;--muted:#67675f;--rule:#d6d2c8;background:var(--paper)}
.atelier-home .eyebrow{font-size:.75rem;letter-spacing:.16em;line-height:1.7}
.atelier-home .section{padding-inline:6%;padding-block:clamp(80px,8vw,136px)}
.arrival{position:relative;isolation:isolate;min-height:720px;min-height:max(660px,calc(100svh - 96px));display:flex;flex-direction:column;justify-content:space-between;color:#fffdf7;background:#292720;overflow:hidden}
.arrival-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus);z-index:-2}
.arrival-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,13,10,.26),transparent 27%,transparent 43%,rgba(14,13,10,.76)),linear-gradient(90deg,rgba(14,13,10,.13),transparent 65%)}
.arrival-top{display:flex;justify-content:space-between;gap:24px;padding:30px 6%;align-items:center}
.arrival-top .eyebrow{margin:0;color:#fffdf7}
.arrival-top>span{font-size:.75rem;letter-spacing:.13em}
.arrival-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;padding:110px 6% 50px}
.arrival h1{font-size:clamp(3.75rem,6.5vw,6.5rem);line-height:1.06;letter-spacing:-.025em;text-shadow:0 2px 24px #0002}
.arrival-discover{display:flex;align-items:center;justify-content:space-between;width:222px;font-size:.875rem;margin-top:30px;padding:14px 0;border-bottom:1px solid #ffffff80;min-height:48px}
.arrival-discover span{font-size:1.4rem;transition:transform .4s}
.arrival-discover:hover span{transform:translateY(4px)}
.arrival-project{display:grid;gap:13px;min-width:230px;padding-top:20px;border-top:1px solid #ffffff80}
.arrival-project .eyebrow{font-size:.75rem;margin:0;letter-spacing:.11em}
.arrival-project>span:nth-child(2){font-family:var(--serif);font-size:1.875rem;line-height:1.25}
.arrival-project-link{font-size:.875rem;display:flex;justify-content:space-between;gap:22px;min-height:32px;align-items:center}
.portfolio-introduction{text-align:center;max-width:900px;margin:0 auto clamp(90px,9vw,144px)}
.portfolio-introduction .eyebrow{color:#78694e;margin-bottom:30px}
.portfolio-statement{font-family:var(--serif);font-size:clamp(2.25rem,3.7vw,3.75rem);line-height:1.25;letter-spacing:-.025em;margin:0;text-wrap:balance}
.portfolio-statement em{font-style:normal;color:#82755c}
.portfolio-description{font-size:1rem;line-height:1.85;max-width:560px;margin:28px auto 0;color:var(--muted);text-wrap:pretty}
.portfolio-heading{display:flex;align-items:baseline;justify-content:space-between;gap:30px;border-top:1px solid var(--rule);padding-top:28px;margin-bottom:42px}
.portfolio-heading h2{font-size:clamp(2.25rem,3.4vw,3.5rem);line-height:1.2}
.portfolio-heading p{font-size:.875rem;color:var(--muted);margin:0;line-height:1.8}
.atelier-projects .home-project-grid{gap:64px 32px}
.atelier-projects .home-project .project-image img{aspect-ratio:4/3}
.atelier-projects .home-project-label{grid-template-columns:minmax(0,1fr) 30px;gap:16px;margin-top:24px;min-height:80px}
.atelier-projects .home-project-index{display:none}
.atelier-projects .home-project-label h3{font-size:clamp(1.625rem,2.3vw,2.25rem);line-height:1.22}
.atelier-projects .home-project-label p{font-size:.875rem;margin-top:10px}
.atelier-projects .home-project-arrow{font-size:1.5rem;align-self:center;color:#766b54}
.atelier-projects .project-image{background:#e2ded4}
.atelier-projects .home-project:hover .project-image img{transform:scale(1.025)}
.atelier-projects .all-projects{margin-top:56px;padding-top:24px}
.atelier-disciplines{background:#eae7df;border-top:1px solid var(--rule)}
.atelier-home .discipline-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 9%;padding-bottom:70px}
.discipline-heading .eyebrow{grid-column:1/-1;color:#78694e;margin-bottom:26px}
.discipline-heading h2{font-size:clamp(2.5rem,4.1vw,4rem)}
.discipline-heading>p:last-child{font-size:1rem;line-height:1.85;color:var(--muted);max-width:33em;align-self:end;margin:0}
.discipline{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.discipline figure{margin:0;position:relative;min-height:580px;overflow:hidden}
.discipline figure img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:58% center}
.discipline figcaption,.story-photo figcaption{position:absolute;bottom:0;left:0;right:0;margin:0;padding:70px 32px 24px;background:linear-gradient(transparent,#1119);color:#fff;font-size:.75rem;line-height:1.6;letter-spacing:.04em;pointer-events:none}
.discipline-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(32px,6vw,100px);min-width:0;background:#e3ded3}
.discipline-copy .eyebrow{color:#74664c;margin-bottom:28px}
.discipline-copy h3{font-family:var(--serif);font-weight:400;font-size:clamp(2.5rem,3.7vw,3.75rem);line-height:1.15;letter-spacing:-.03em;margin:0;max-width:8em}
.discipline-lead{font-size:1.125rem;line-height:1.8;max-width:26em;margin:28px 0 0;color:#55564e;text-wrap:pretty}
.discipline-copy .text-disclosure{margin-top:32px;border-top:1px solid #bdb6a7}
.discipline-copy .text-disclosure summary{padding:18px 0;min-height:58px}
.discipline-copy .text-disclosure h4{font-size:1rem;font-weight:500;margin-bottom:12px}
.discipline:nth-child(even) figure{grid-column:2;grid-row:1}
.discipline:nth-child(even) .discipline-copy{grid-column:1;grid-row:1;background:#edeae3}
.atelier-story{display:grid;grid-template-columns:1fr 1fr;background:#25251f;color:#f4f1e8;margin-top:0}
.story-photo{margin:0;position:relative;min-height:780px;overflow:hidden}
.story-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.story-copy{padding:90px clamp(32px,6vw,100px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.story-copy .eyebrow{color:#c8b996;margin-bottom:32px}
.story-copy h2{font-size:clamp(2.5rem,3.7vw,3.75rem);line-height:1.18}
.story-copy>p:not(.eyebrow){font-size:1rem;line-height:1.9;color:#d0cec4;margin:32px 0 0}
.story-copy .text-disclosure{border-top:1px solid #ffffff35;margin-top:32px}
.story-copy .text-disclosure summary{color:#f4f1e8;padding-block:20px}
.story-copy .text-disclosure p{color:#d0cec4;line-height:1.85}
.story-copy .text-disclosure h3{font:400 1.5rem/1.4 var(--serif);color:#eee8dc}
.story-signature{display:block;font-family:var(--serif);font-size:1.25rem;color:#c8b996;margin-top:48px}
.atelier-home .atelier-process{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--paper)}
.atelier-process .eyebrow{color:#78694e}
.atelier-process h2{font-size:clamp(2.5rem,4.1vw,4rem)}
.atelier-process>div>p:not(.eyebrow){font-size:1rem;line-height:1.85;max-width:28em;color:var(--muted);margin-top:26px}
.process-step{border-top:1px solid #bfbbae}
.process-step:last-child{border-bottom:1px solid #bfbbae}
.process-step summary{display:grid;grid-template-columns:30px minmax(0,1fr) 18px;gap:18px;align-items:center;cursor:pointer;padding:25px 0;list-style:none;min-height:82px}
.process-step summary::-webkit-details-marker{display:none}
.process-step summary h3{font:400 clamp(1.375rem,1.8vw,1.75rem)/1.3 var(--serif);letter-spacing:-.015em;margin:0}
.process-step summary:focus-visible{outline:2px solid #867453;outline-offset:6px}
.step-symbol{position:relative;width:14px;height:14px}
.step-symbol:before,.step-symbol:after{content:'';position:absolute;top:6px;left:0;width:14px;height:1px;background:currentColor}
.step-symbol:after{transform:rotate(90deg);transition:transform .25s}
.process-step[open] .step-symbol:after{transform:rotate(0)}
.process-step>p{font-size:1rem;line-height:1.85;color:var(--muted);margin:0 30px 28px 48px}
.atelier-home footer{background:#25251f}
.atelier-home .footer-title{font-size:clamp(3rem,5.5vw,5.5rem)}
.atelier-home .footer-bottom{margin-top:90px}
@media(min-width:1700px){.atelier-home .section{padding-inline:max(6%,calc((100vw - 1520px)/2))}}
@media(max-width:1000px){.arrival-bottom{gap:30px}.arrival-project{min-width:200px}.discipline figure{min-height:520px}.discipline-copy,.story-copy{padding:54px 32px}.story-photo{min-height:720px}}
@media(max-width:760px){
 .atelier-home .section{padding-inline:6%;padding-block:72px}
 .arrival{min-height:max(650px,calc(100svh - 80px))}
 .arrival-photo{object-position:var(--mobile-focus)}
 .arrival-top{padding:24px 6%}
 .arrival-top>span{display:none}
 .arrival-top .eyebrow{font-size:.75rem;letter-spacing:.11em}
 .arrival-bottom{flex-direction:column;align-items:stretch;gap:34px;padding:130px 6% 28px}
 .arrival h1{font-size:clamp(2.75rem,10.7vw,4.5rem);line-height:1.12}
 .arrival-discover{margin-top:20px;width:200px}
 .arrival-project{display:grid;grid-template-columns:1fr auto;gap:8px 14px;padding-top:17px;min-width:0}
 .arrival-project .eyebrow{grid-column:1;font-size:.6875rem}
 .arrival-project>span:nth-child(2){font-size:1.375rem;grid-column:1}
 .arrival-project-link{grid-row:1/3;grid-column:2;font-size:.75rem;gap:14px}
 .portfolio-introduction{margin-bottom:76px}
 .portfolio-introduction .eyebrow{margin-bottom:24px}
 .portfolio-statement{font-size:clamp(1.875rem,7.7vw,2.75rem);line-height:1.28}
 .portfolio-description{font-size:1rem;margin-top:24px}
 .portfolio-heading{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:30px;padding-top:24px}
 .portfolio-heading h2{font-size:2.5rem}
 .portfolio-heading p{font-size:.8125rem}
 .atelier-projects .home-project-grid{grid-template-columns:1fr;gap:38px}
 .atelier-projects .home-project-label{margin-top:18px;min-height:0}
 .atelier-projects .home-project-label h3{font-size:1.625rem}
 .atelier-projects .home-project-label p{font-size:.8125rem;margin-top:7px}
 .atelier-projects .all-projects{margin-top:40px}
 .atelier-home .discipline-heading{grid-template-columns:1fr;gap:24px;padding-bottom:48px}
 .discipline-heading .eyebrow{margin:0}
 .discipline-heading h2{font-size:2.75rem}
 .discipline-heading>p:last-child{margin:0}
 .discipline,.atelier-story{grid-template-columns:1fr}
 .discipline figure{min-height:0;aspect-ratio:1/1}
 .discipline-copy{padding:48px 6% 52px}
 .discipline-copy h3{font-size:2.75rem;max-width:10em}
 .discipline-copy .eyebrow{margin-bottom:22px}
 .discipline-lead{font-size:1rem;margin-top:22px}
 .discipline-copy .text-disclosure{margin-top:26px}
 .discipline:nth-child(even) figure,.discipline:nth-child(even) .discipline-copy{grid-column:auto;grid-row:auto}
 .discipline figcaption,.story-photo figcaption{padding-inline:6%;padding-bottom:20px}
 .story-photo{min-height:0;aspect-ratio:1/1}
 .story-copy{padding:56px 6%}
 .story-copy h2{font-size:2.75rem}
 .story-copy .eyebrow{margin-bottom:26px}
 .story-copy>p:not(.eyebrow){margin-top:26px}
 .story-signature{margin-top:30px}
 .atelier-home .atelier-process{grid-template-columns:1fr;gap:36px}
 .atelier-process h2{font-size:2.75rem}
 .process-step summary{gap:12px;padding-block:22px;min-height:75px;grid-template-columns:24px minmax(0,1fr) 16px}
 .process-step summary h3{font-size:1.375rem}
 .process-step>p{margin-left:36px;margin-right:0}
 .atelier-home .footer-title{font-size:clamp(2.5rem,9vw,3.5rem)}
 .atelier-home .footer-bottom{margin-top:55px}
}
@media(max-width:360px){.arrival-project-link{font-size:.75rem;gap:8px}.arrival-project .eyebrow{font-size:.6875rem;letter-spacing:.04em}.discipline-copy h3,.story-copy h2{font-size:2.375rem}}
