/* Final geometry and shared details for the photo-led page templates. */
.wide-scene{text-align:center;max-width:1600px;margin-inline:auto}
.editorial-photo img{object-position:var(--photo-position,50%) center;transform:scale(var(--photo-zoom,1));transform-origin:center;filter:saturate(.76) sepia(.055) contrast(.985) brightness(.93)}
.editorial-photo.photo-safe-bottom img{transform-origin:center top}
.project-card:hover .editorial-photo img{transform:scale(var(--photo-zoom,1))}
.work-filters{justify-content:center;flex-wrap:wrap;overflow:visible}
.work-grid{padding-top:28px}
.image-wrap>.editorial-photo{width:100%;height:100%;border:0;border-radius:inherit;box-shadow:none}
.image-wrap>.editorial-photo::before,.image-wrap>.editorial-photo::after{display:none}
.project-card .image-wrap img{width:100%;height:100%;aspect-ratio:auto}
.project-card .card-bottom{align-items:center;gap:14px}
.project-card .card-bottom h3{flex:1;text-align:center;font-size:clamp(23px,2.4vw,36px)}
.project-track .project-card .card-arrow{width:42px;height:42px}
.project-card .story-note{font:clamp(24px,2.5vw,34px)/1.14 Caveat,cursive;left:50%;bottom:22px;transform:translateX(-50%) rotate(-2deg);width:max-content;max-width:calc(100% - 28px);text-align:center;white-space:normal;padding:0;background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:0 1px 7px #10160ee6;color:var(--chalk)}
.service-hero>.service-copy{min-width:0}
.service-hero>figure>.editorial-photo{aspect-ratio:4/4.1}
.service-hero>figure>.editorial-photo img{height:100%;aspect-ratio:auto}
.service-hero>figure .sketch-scene{aspect-ratio:4/4.1}
.service-hero>figure .sketch-scene img{height:100%;aspect-ratio:auto}
.service-hero>figure figcaption{margin-top:0;text-align:center}
.service-scope{padding-top:0;padding-bottom:20px}
.facts{border:0;padding:0}
.service-row .handwritten{font:25px/1.1 Caveat,cursive;color:var(--brass)}
.project-scene>.editorial-photo{aspect-ratio:4/3;max-width:1100px;margin-inline:auto}
.project-details{display:flex;flex-direction:column;align-items:center;gap:24px;padding-block:48px 68px}
.project-details .intro-text{margin:0;max-width:570px}
.section:has(>.project-track)>.text-link{display:flex;width:fit-content;margin:28px auto 0}
.process-top>figure{position:relative;isolation:isolate;margin:0;border-radius:20px;overflow:hidden}
.process-top>figure img{filter:saturate(.82) sepia(.035) contrast(1.015) brightness(.965)}
.process-top>figure .handwritten{position:absolute;inset:auto 20px 26px;z-index:3;font:34px/1.1 Caveat,cursive;text-shadow:0 2px 12px #000c}
.crew-image figcaption{position:relative;left:auto;right:auto;bottom:auto;margin:-32px auto 0;width:calc(100% - 48px);display:flex;flex-direction:column;gap:4px;padding:18px 24px;text-align:center;background:linear-gradient(145deg,#ffffff22,#ffffff05 52%),rgba(24,29,23,.35);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%)}
.crew-image{overflow:visible;background:none;border:0;box-shadow:none}
.crew-image::before,.crew-image::after{bottom:40px;border-radius:18px}
.crew-image img{border-radius:18px}
.crew-caption{margin:0;font-size:11px;text-transform:none;letter-spacing:.04em}
.crew-feature{gap:30px;padding-bottom:75px}
.crew-copy{margin-top:0}
.start-layout>div,.privacy-text{text-align:center}
.start-layout>div .intro-text{margin-inline:auto}
.start-layout .guide-head{justify-content:center;text-align:left}
.start-layout .form-panel{text-align:left}
.form-panel h2{text-align:center}
.privacy-text .editorial-title>.title-main{font-size:clamp(40px,5vw,72px)}
.privacy-text .editorial-title>.title-note{font-size:clamp(38px,4.8vw,66px)}
.privacy-text p{max-width:600px;margin:28px auto}
.section .button{display:inline-grid;grid-template-columns:1fr 32px;min-width:min(100%,300px);padding:10px 12px 10px 26px;gap:14px;text-align:center}
.section .button>span[aria-hidden]{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid #ffffff48;background:linear-gradient(145deg,#ffffff28,#ffffff08);box-shadow:inset 0 1px 1px #ffffff40;font-size:17px}
.form-panel .button{min-width:0}
.form-panel .button:disabled,.form-panel .button:disabled:hover{transform:none;opacity:.5;cursor:default;background:#262c23;border-color:#ece8db30;box-shadow:none}
.extension-frame{border-radius:20px;isolation:isolate}
.extension-frame img{filter:saturate(.82) sepia(.035) contrast(1.015) brightness(.965)}
.extension-notes{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;fill:none;stroke:#eee5cc;stroke-width:1.25}
.extension-notes text{fill:var(--chalk);stroke:#182018aa;stroke-width:2.4;paint-order:stroke;font:34px Caveat,cursive}
.photo-sequence>.photo-notes{position:absolute;z-index:3;pointer-events:none;overflow:visible;fill:none;stroke:#f2ead6;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 4px #10160ecc)}
.photo-sequence>.photo-notes .detail-line{vector-effect:non-scaling-stroke}
.photo-sequence>.photo-notes .detail-contour{stroke-width:1.65;opacity:.82}
.photo-sequence>.photo-notes .detail-detail{stroke-width:1.05;opacity:.54}
.photo-sequence>.photo-notes .detail-leader{stroke-width:1.45;opacity:.92}
.photo-sequence>.photo-notes .detail-line{stroke-dasharray:1;stroke-dashoffset:1}
.photo-sequence>.photo-notes .detail-note{fill:var(--chalk);stroke:#182018cc;stroke-width:var(--photo-note-stroke,4px);paint-order:stroke;font:var(--photo-note-size,54px)/1 Caveat,cursive;letter-spacing:.01em;opacity:0}
.motion-ready .photo-sequence:not(.photo-arrived)>img{opacity:.055}
.photo-arrived>.photo-notes .detail-line{animation:registered-pencil 3.9s cubic-bezier(.35,.05,.35,1) both}
.photo-arrived>.photo-notes .detail-line-2{animation-delay:.28s}.photo-arrived>.photo-notes .detail-line-3{animation-delay:.56s}.photo-arrived>.photo-notes .detail-line-4{animation-delay:.84s}
.photo-arrived>.photo-notes .detail-note{animation:registered-note .82s cubic-bezier(.16,1,.3,1) 2.85s both}
.photo-arrived>img{animation:registered-photo 5.5s cubic-bezier(.16,1,.3,1) both}
.service-row .photo-sequence>img{opacity:1!important;animation:none!important}
.service-row .photo-sequence>.photo-notes .detail-line{stroke-dasharray:none;stroke-dashoffset:0;animation:none}
.service-row .photo-sequence>.photo-notes .detail-note{opacity:1;animation:none}
.motion-ready .extension-frame:not(.photo-arrived)>img{opacity:.055}
.motion-ready .extension-frame:not(.photo-arrived)>.photo-notes path{stroke-dasharray:1;stroke-dashoffset:1}
.extension-frame.photo-arrived>.photo-notes path{animation:registered-pencil 4.1s cubic-bezier(.35,.05,.35,1) both}
.extension-frame.photo-arrived>.photo-notes text{animation:registered-note .82s cubic-bezier(.16,1,.3,1) 3s both}
.extension-frame.photo-arrived>img{animation:registered-photo 5.7s cubic-bezier(.16,1,.3,1) both}
.sketch-scene img{filter:saturate(.76) sepia(.055) contrast(.985) brightness(.93)}
.sketch-scene.draw-sequence img{animation:registered-photo 5.5s cubic-bezier(.16,1,.3,1) both}
.sketch-scene.draw-sequence .scene-notes path{animation:pencil-arrive 3.9s cubic-bezier(.35,.05,.35,1) both}
.sketch-scene.draw-sequence .scene-notes text{animation:registered-note .82s cubic-bezier(.16,1,.3,1) 2.85s both}
@keyframes registered-pencil{to{stroke-dashoffset:0}}
@keyframes registered-note{from{opacity:0}to{opacity:1}}
@keyframes registered-photo{0%,26%{opacity:.055}100%{opacity:1}}
@media(min-width:761px){
 .project-scene>.editorial-photo[data-photo-height="1000"]{aspect-ratio:1;max-width:900px;margin-inline:auto}
 .service-hero>figure .sketch-scene{aspect-ratio:4/3}
 .service-hero .kitchen-notes{display:none}.service-hero .kitchen-mobile-notes{display:block}
}
@media(max-width:760px){
 .editorial-title>.title-main{font-size:clamp(36px,11.3vw,58px)}
 .editorial-title>.title-note{font-size:clamp(34px,10.8vw,55px);max-width:100%}
 .page-intro{padding-top:46px;padding-bottom:44px}
 .statement .intro-text{max-width:300px}
 .section .button{width:100%;min-height:54px}
 .service-hero{padding-top:32px}
 .service-hero .intro-text{max-width:320px;margin:22px auto}
 .service-scope{padding-block:0 14px}
 .facts{gap:8px}
 .facts>div{padding:14px 10px}
 .facts h3{font:14px/1.3 var(--ui-font)}
 .project-scene>.editorial-photo{aspect-ratio:4/4.5;border-radius:16px}
 .photo-notes text,.editorial-photo .photo-notes text{font-size:var(--photo-note-size,64px)}
 .project-card .story-note{left:50%;bottom:22px;font-size:27px}
 .project-card .card-bottom h3{font-size:26px}
 .crew-image figcaption{width:calc(100% - 2 * var(--gutter));margin:-22px auto 0;padding:18px 12px}
 .crew-image figcaption .handwritten{font-size:27px}
 .crew-image img{border-radius:0}
 .crew-image::before,.crew-image::after{border-radius:0}
 .crew-copy{margin-top:28px}
 .process-top>figure{margin-top:36px}
 .process-top>figure img{margin-top:0}
 .process-top>figure .handwritten{font-size:28px}
 .timeline-row{padding:28px 0}
 .timeline-row p{font-size:14px;max-width:300px;line-height:1.65}
 .closing>div{margin-top:28px}
 .footer-intro .footer-brand{justify-content:center}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.crew-image figcaption{background:#20271e;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.photo-sequence>img,.photo-arrived>img,.extension-frame>img,.sketch-scene.draw-sequence img{opacity:1;animation:none}.photo-sequence>.photo-notes .detail-line,.photo-arrived>.photo-notes .detail-line,.extension-frame>.photo-notes path,.sketch-scene.draw-sequence .scene-notes path{stroke-dashoffset:0;stroke-dasharray:none;animation:none}.photo-sequence>.photo-notes .detail-note,.extension-frame>.photo-notes text,.sketch-scene .scene-notes text{opacity:1;transform:none;animation:none}}
