/* Source: /styles.css */
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/brand/fonts/dm-sans.woff2') format('woff2')}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url('/brand/fonts/manrope.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('/brand/fonts/cormorant-normal.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url('/brand/fonts/cormorant-italic.woff2') format('woff2')}
@font-face{font-family:Allura;src:url('/brand/Allura-Regular.ttf') format('truetype');font-display:swap}
:root{--paper:#f6f4ef;--white:#fffefa;--ink:#26333a;--muted:#647176;--line:#d8dad7;--accent:#b56b4f;--accent-dark:#914f37;--blue:#dce6e8;--dark:#18262d;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 'DM Sans',Arial,sans-serif}body.lock{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,video{display:block;max-width:100%}img{width:100%}::selection{background:#d9b09d;color:var(--dark)}.wrap{width:min(100% - 56px,1440px);margin-inline:auto}.skip{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.7rem 1rem;z-index:100}.skip:focus{left:1rem}.eyebrow{display:block;font:700 .74rem/1.4 Manrope,sans-serif;letter-spacing:.17em;text-transform:uppercase;color:var(--accent-dark)}.display{font:600 clamp(2.7rem,5vw,5.8rem)/1.05 Manrope,sans-serif;letter-spacing:-.075em;margin:0}.display em,.hero h1 em{font:italic 500 1.13em/0.8 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;color:var(--accent-dark)}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2rem}.section-intro p{max-width:29rem;color:var(--muted);margin:0}.section-intro .eyebrow{margin-bottom:1rem}.line-link{font:700 .78rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em;display:inline-flex;gap:1rem;align-items:center;border-bottom:1px solid currentColor;padding-bottom:.55rem;transition:gap .3s var(--ease),color .3s}.line-link:hover{gap:1.4rem;color:var(--accent-dark)}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.7rem;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:1.05rem 1.3rem;font:700 .76rem Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;transition:background .25s,transform .35s var(--ease)}.button:hover{background:#3e5059;transform:translateY(-3px)}.button.alt{background:transparent;color:var(--ink)}.button.alt:hover{background:#e8e6e0}
.site-header{position:sticky;top:0;z-index:30;background:rgba(246,244,239,.91);backdrop-filter:blur(22px);border-bottom:1px solid rgba(38,51,58,.13);transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 10px 32px #15252a12}.nav{min-height:82px;display:flex;align-items:center;gap:2.4rem}.identity{display:inline-flex;align-items:center;gap:.65rem;min-width:190px;line-height:1.03;font:800 .78rem/1.15 Manrope,sans-serif;letter-spacing:.07em}.identity img{width:42px;height:42px;transition:transform .8s var(--ease)}.identity:hover img{transform:rotate(72deg)}.identity strong{font-weight:800}.nav-links{margin-left:auto;display:flex;align-items:center;gap:clamp(1rem,2vw,2.2rem);font:700 .7rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em}.nav-links a:not(.button){border-bottom:1px solid transparent;padding:.7rem 0}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--accent-dark);border-color:var(--accent-dark)}.nav-links .button{padding:.85rem 1rem}.menu-button{display:none;border:0;background:transparent;padding:.7rem;color:var(--ink);font-weight:700}.progress{position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;pointer-events:none}
.hero{display:grid;grid-template-columns:minmax(440px,.82fr) minmax(0,1.18fr);min-height:clamp(680px,75vh,900px);border-bottom:1px solid var(--line)}.hero-copy{align-self:center;padding:6rem 3rem 6rem max(28px,calc((100vw - 1440px)/2));position:relative;z-index:1}.hero-kicker{display:flex;gap:1.3rem;align-items:center}.hero-kicker:before{content:"";width:32px;height:1px;background:var(--accent)}.hero h1{font:600 clamp(3.2rem,4.7vw,6.5rem)/1.02 Manrope,sans-serif;letter-spacing:-.085em;margin:1.6rem 0 1.5rem;max-width:830px}.hero p{font-size:1.07rem;color:#526168;max-width:29rem;margin:0 0 2rem}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.6rem}.hero-side-note{display:flex;align-items:center;gap:1rem;margin-top:4rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.hero-side-note span{width:28px;height:1px;background:var(--line)}.hero-art{position:relative;min-width:0;overflow:hidden;background:#cad6d8}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;animation:hero-in 1.4s var(--ease) both}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#26333a25,transparent 55%),linear-gradient(0deg,#26333a70,transparent 38%);pointer-events:none}.hero-stamp{position:absolute;right:2.1rem;bottom:2rem;z-index:2;color:#fff;font:700 .7rem Manrope,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:right}.hero-stamp span{display:block;width:55px;height:1px;background:#fff;margin:0 0 .8rem auto}.hero-orbit{position:absolute;z-index:2;left:50%;top:10%;width:140px;opacity:.5;filter:brightness(0) invert(1);animation:spin 24s linear infinite}
.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:var(--white)}.quick-stats div{padding:1.4rem clamp(1rem,4vw,4rem);border-right:1px solid var(--line)}.quick-stats div:last-child{border:0}.quick-stats strong{display:block;font:700 .79rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.1em}.quick-stats span{display:block;color:var(--muted);font-size:.84rem;margin-top:.2rem}
.featured{padding:clamp(5rem,9vw,10rem) 0}.feature-grid{display:grid;grid-template-columns:1.1fr .75fr 1fr;gap:1rem;align-items:start}.feature-card{display:block;position:relative;overflow:hidden;background:#d9d7d0}.feature-card:nth-child(2){margin-top:4rem}.feature-card:nth-child(3){margin-top:1.4rem}.feature-card img{height:clamp(300px,37vw,580px);object-fit:cover;transition:transform .8s var(--ease)}.feature-card:nth-child(2) img{height:clamp(270px,31vw,475px)}.feature-card:hover img{transform:scale(1.055)}.feature-card:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#15242aca)}.feature-label{position:absolute;left:1.4rem;right:1.4rem;bottom:1.4rem;z-index:2;color:#fff}.feature-label small{display:block;font:700 .67rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.15em}.feature-label strong{display:block;font:600 clamp(1.4rem,2.4vw,2.4rem) Manrope,sans-serif;letter-spacing:-.05em;line-height:1.2;margin-top:.3rem}
.statement{background:var(--blue);padding:clamp(5rem,9vw,9rem) 0}.statement-inner{display:grid;grid-template-columns:.66fr 1.34fr;gap:clamp(2rem,5vw,6rem);align-items:start}.statement .display{max-width:1000px}.statement .small{margin:1.3rem 0 0;max-width:37rem;color:#53676e}.services{padding:clamp(5rem,9vw,9rem) 0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{border:1px solid var(--line);background:var(--white);padding:2rem;min-height:320px;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #15252a10}.service-card .number{font:700 .75rem Manrope,sans-serif;color:var(--accent-dark)}.service-card h3{font:600 clamp(1.55rem,2.1vw,2.1rem)/1.16 Manrope,sans-serif;letter-spacing:-.055em;margin:auto 0 .6rem}.service-card p{color:var(--muted);margin:0 0 1.5rem}.service-card .line-link{align-self:start}
.films{background:var(--dark);color:#f4f5f1;padding:clamp(5rem,9vw,9rem) 0}.films .eyebrow{color:#dda68f}.films .section-intro p{color:#aebec4}.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.film-card{background:#21333d;min-width:0}.film-card video{width:100%;height:clamp(320px,34vw,490px);object-fit:contain;background:#101c22}.film-card:nth-child(3) video{object-fit:contain}.film-info{padding:1.35rem 1.4rem 1.7rem}.film-info small{color:#b0c2c7;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em}.film-info h3{font:600 1.3rem Manrope,sans-serif;letter-spacing:-.04em;margin:.4rem 0 0}.film-info p{color:#bdcacc;font-size:.88rem;margin:.45rem 0 0}
.approach{padding:clamp(5rem,9vw,9rem) 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,9rem);align-items:start}.approach .display{position:sticky;top:130px}.steps{border-top:1px solid var(--line)}.step{border-bottom:1px solid var(--line);padding:1.55rem 0;display:grid;grid-template-columns:3rem 1fr;gap:1rem}.step b{color:var(--accent-dark);font-size:.8rem}.step h3{font:600 1.35rem Manrope,sans-serif;letter-spacing:-.04em;margin:0}.step p{color:var(--muted);margin:.45rem 0 0}.story{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(5rem,9vw,9rem) 0}.story-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,8rem)}.story p{max-width:42rem;color:#54636a;font-size:1.06rem}.story p:first-of-type{margin-top:0}.story .line-link{margin-top:1rem}
.contact{padding:clamp(5rem,9vw,9rem) 0;background:#e9ebe8}.contact-inner{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,8rem)}.contact .display{max-width:540px}.contact-copy p{color:#54636a;max-width:28rem}.email-link{font:600 1.05rem Manrope,sans-serif;border-bottom:1px solid var(--accent-dark);word-break:break-word;display:inline-block;padding-bottom:.25rem;margin:1.5rem 0 1rem}.minimum{display:block;font-size:.8rem;color:#57666c}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem}.field{display:flex;flex-direction:column;gap:.3rem}.field.wide,.form-bottom,.form-feedback{grid-column:1/-1}.field label{font:700 .7rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em}.field input,.field select,.field textarea{border:0;border-bottom:1px solid #aab3b5;background:transparent;border-radius:0;min-height:49px;color:var(--ink);padding:.65rem 0;outline-offset:3px}.field textarea{min-height:110px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#78858a}.form-bottom{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.form-bottom small{color:#58686d;max-width:220px}.form-feedback{font-size:.87rem;color:#8f4027;min-height:1.5rem;margin:0}
.footer{background:var(--dark);color:#f6f5f1;padding:3rem 0 2rem}.footer-main{display:flex;justify-content:space-between;align-items:start;gap:3rem}.footer .identity{color:#fff}.footer .identity img{filter:brightness(0) invert(1)}.footer p{max-width:27rem;color:#aab9bd;font-size:.9rem}.footer-links{display:flex;gap:3.5rem}.footer-links div{display:grid;gap:.55rem}.footer-links a{font-size:.84rem}.footer-links a:hover{color:#e9b8a2}.footer-bottom{border-top:1px solid #45565d;margin-top:3rem;padding-top:1.2rem;display:flex;justify-content:space-between;gap:1rem;color:#aab9bd;font-size:.75rem}
.page-hero{padding:clamp(5rem,9vw,9rem) 0 4rem}.page-hero .display{max-width:1050px;margin:1.2rem 0}.page-hero p{max-width:640px;color:var(--muted);font-size:1.07rem}.portfolio-toolbar{position:sticky;top:82px;z-index:12;background:rgba(246,244,239,.96);border-block:1px solid var(--line);backdrop-filter:blur(18px)}.filters{display:flex;gap:2rem;align-items:center;overflow-x:auto;white-space:nowrap;padding:.9rem 0}.filters button{border:0;background:transparent;color:var(--muted);font:700 .73rem Manrope,sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:.55rem 0;border-bottom:2px solid transparent}.filters button.active{color:var(--ink);border-color:var(--accent)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:2rem 0 7rem}.portfolio-item{border:0;padding:0;background:#d8d6d0;overflow:hidden;position:relative;aspect-ratio:4/3}.portfolio-item.tall{aspect-ratio:3/4}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.portfolio-item:hover img{transform:scale(1.04)}.portfolio-item .caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#10212aba);padding:3rem 1rem 1rem;color:#fff;text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;opacity:0;transition:opacity .3s}.portfolio-item:hover .caption,.portfolio-item:focus-visible .caption{opacity:1}.portfolio-item[hidden]{display:none}.portfolio-count{color:var(--muted);font-size:.8rem;margin:1rem 0 0}
.service-hero{padding:clamp(5rem,9vw,8rem) 0}.service-hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:3rem;align-items:center}.service-hero .display{margin:1.2rem 0}.service-hero p{color:var(--muted);max-width:32rem}.service-hero img{height:560px;object-fit:cover}.service-details{background:var(--white);padding:clamp(5rem,8vw,8rem) 0}.service-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.service-details p{color:var(--muted)}.service-details ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.service-details li{padding:1.1rem 0;border-bottom:1px solid var(--line);font-weight:600}.service-gallery{padding:clamp(5rem,8vw,8rem) 0}.service-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.service-gallery-grid img{height:clamp(240px,30vw,440px);object-fit:cover}
.lightbox{border:0;background:#132127;color:#fff;padding:0;max-width:min(95vw,1450px);max-height:95vh;box-shadow:0 30px 90px #0009}.lightbox::backdrop{background:#081115e6}.lightbox img{width:auto;max-width:93vw;max-height:83vh;object-fit:contain;margin:auto}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1rem;font-size:.73rem;text-transform:uppercase;letter-spacing:.1em}.lightbox button{border:0;background:transparent;color:#fff;font-size:1.5rem;padding:.2rem .4rem}
@keyframes hero-in{from{opacity:.45;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes float-up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.hero{grid-template-columns:.9fr 1.1fr}.hero-copy{padding-left:28px}.hero h1{font-size:clamp(3.3rem,6vw,5rem)}.feature-grid{grid-template-columns:repeat(3,1fr)}.service-card{padding:1.45rem}.nav-links{gap:.8rem}}
@media(max-width:820px){.nav{min-height:70px}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:1rem 28px 2rem;box-shadow:0 20px 30px #10212a22;flex-direction:column;align-items:stretch;gap:.2rem}.nav-links.open{display:flex}.nav-links a{padding:.7rem 0!important}.menu-button{display:block;margin-left:auto}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:5rem 28px 3rem}.hero-art{height:65vw;min-height:460px}.quick-stats{grid-template-columns:1fr 1fr}.quick-stats div:nth-child(2){border-right:0}.quick-stats div:last-child{grid-column:1/-1;border-top:1px solid var(--line)}.statement-inner,.story-inner,.approach-grid,.contact-inner,.service-hero-grid,.service-details-grid{grid-template-columns:1fr;gap:2rem}.approach .display{position:static}.service-grid,.film-grid{grid-template-columns:1fr 1fr}.film-card:last-child{grid-column:1/-1}.film-card video{height:430px}.portfolio-toolbar{top:70px}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.service-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.wrap{width:min(100% - 32px,1440px)}.hero-copy{padding:4.3rem 16px 3rem}.hero h1{font-size:clamp(3.1rem,12vw,5rem)}.hero-side-note{margin-top:3rem}.hero-art{height:82vw;min-height:330px}.hero-orbit{width:90px}.hero-stamp{font-size:.6rem;right:1rem;bottom:1rem}.quick-stats{grid-template-columns:1fr}.quick-stats div,.quick-stats div:nth-child(2),.quick-stats div:last-child{grid-column:auto;border-right:0;border-top:1px solid var(--line);padding:1rem 16px}.quick-stats div:first-child{border-top:0}.section-intro{display:block}.section-intro p{margin-top:1.2rem}.feature-grid{grid-template-columns:1fr 1fr;gap:.6rem}.feature-card:first-child{grid-column:1/-1}.feature-card:nth-child(2),.feature-card:nth-child(3){margin:0}.feature-card img{height:320px}.feature-card:nth-child(2) img,.feature-card:nth-child(3) img{height:240px}.feature-label{left:.8rem;bottom:.8rem;right:.6rem}.feature-label strong{font-size:1.3rem}.service-grid,.film-grid{grid-template-columns:1fr}.film-card:last-child{grid-column:auto}.film-card video{height:420px}.footer-main,.footer-bottom{display:block}.footer-links{gap:2rem;margin-top:2rem}.footer-bottom span{display:block;margin-top:.5rem}.inquiry{grid-template-columns:1fr}.field{grid-column:1/-1}.portfolio-grid{gap:.6rem}.portfolio-item,.portfolio-item.tall{aspect-ratio:3/4}.portfolio-item .caption{opacity:1;font-size:.58rem}.service-gallery-grid img{height:260px}.service-hero img{height:390px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* A light editorial system: quiet surfaces let the photographs supply the drama. */
:root{--paper:#f8f7f3;--white:#fff;--ink:#242627;--muted:#626966;--line:#deded8;--accent:#a75e46;--accent-dark:#85432f;--blue:#efeee8;--dark:#242627}
body{background:var(--paper)}
:focus-visible{outline:2px solid var(--accent-dark);outline-offset:4px}
.site-header{background:rgba(248,247,243,.9);border-color:#deded8}
.identity{min-width:207px;gap:.75rem}
.identity img{width:48px;height:48px;object-fit:contain}
.identity:hover img{transform:rotate(18deg)}
.hero-art{background:#e7e8e5}
.hero-photo{transform:translate(calc(var(--px,0)*-9px),calc(var(--py,0)*-9px)) scale(1.025);transition:transform 1.2s var(--ease);animation:hero-fade 1.2s var(--ease) both}
.hero-orbit{width:120px;opacity:.85;filter:brightness(0) invert(1);animation:spin 45s linear infinite}
.hero h1{max-width:780px}
.hero-copy>*{animation:rise-in .8s var(--ease) both}
.hero-copy .hero-kicker{animation-delay:.05s}.hero-copy h1{animation-delay:.13s}.hero-copy p{animation-delay:.23s}.hero-copy .hero-actions{animation-delay:.33s}.hero-copy .hero-side-note{animation-delay:.43s}
.feature-card{isolation:isolate}
.feature-card img{transition:transform 1s var(--ease),filter .8s var(--ease)}
.feature-card:hover img{transform:scale(1.045);filter:saturate(1.07)}
.service-card{border-radius:2px}
.films{background:#ebeae4;color:var(--ink);border-block:1px solid var(--line)}
.films .eyebrow{color:var(--accent-dark)}.films .section-intro p{color:var(--muted)}
.film-card{background:var(--white);border:1px solid var(--line);box-shadow:0 8px 28px #24262708;transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.film-card:hover{transform:translateY(-7px);box-shadow:0 22px 40px #24262718}
.film-card video{background:#e5e5df}
.film-info small{color:var(--accent-dark)}.film-info p{color:var(--muted)}
.social-follow{margin:2.5rem 0 0;text-align:right}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);padding:clamp(5rem,9vw,9rem) 0}
.faq-intro p{color:var(--muted);max-width:24rem}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:1.1rem 0}
.faq-list summary{list-style:none;cursor:pointer;font:600 clamp(1rem,1.5vw,1.25rem) Manrope,sans-serif;letter-spacing:-.035em;padding-right:2.4rem;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';position:absolute;right:.25rem;top:-.15rem;font-size:1.5rem;font-weight:400;color:var(--accent-dark);transition:transform .35s var(--ease)}
.faq-list details[open] summary:after{transform:rotate(45deg)}
.faq-list p{margin:.8rem 2.4rem .5rem 0;color:var(--muted);max-width:39rem}
.footer{background:#fff;color:var(--ink);border-top:1px solid var(--line)}
.footer .identity{color:var(--ink)}.footer .identity img{filter:none}
.footer p,.footer-bottom{color:var(--muted)}
.footer-bottom{border-color:var(--line)}
.footer-links a:hover{color:var(--accent-dark)}
.portfolio-chapter{padding:2.8rem 0 1.8rem;border-top:1px solid var(--line)}
.portfolio-chapter[hidden]{display:none}
.chapter-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin:0 0 1.4rem}
.chapter-head .eyebrow{margin-bottom:.8rem}.chapter-head p{max-width:28rem;color:var(--muted);margin:0}
.chapter-head .display{font-size:clamp(2.2rem,4.2vw,4.6rem)}
.chapter-number{font:600 .26em Manrope,sans-serif;color:var(--accent-dark);vertical-align:middle;letter-spacing:0}
.portfolio-grid{padding:0 0 1.5rem;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-item{aspect-ratio:4/3;background:#e5e5df;content-visibility:auto;contain-intrinsic-size:400px 300px}
.portfolio-item:nth-child(7n + 1){grid-row:span 2;aspect-ratio:auto;min-height:520px}
.portfolio-item img{transition:transform .9s var(--ease),filter .7s var(--ease)}
.portfolio-item:hover img{transform:scale(1.035);filter:saturate(1.06)}
.portfolio-item .caption{opacity:1;background:linear-gradient(transparent,#2023237d);text-shadow:0 1px 3px #0008}
.lightbox{background:#f8f7f3;color:var(--ink);box-shadow:0 30px 90px #14151466}
.lightbox::backdrop{background:#f8f7f3ec;backdrop-filter:blur(12px)}
.lightbox button{color:var(--ink)}.lightbox-bar{border-bottom:1px solid var(--line)}
@keyframes rise-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes hero-fade{from{opacity:.65}to{opacity:1}}
.reveal{transition-duration:.95s}.feature-card:nth-child(2).reveal{transition-delay:.1s}.feature-card:nth-child(3).reveal{transition-delay:.2s}
@media(max-width:820px){.faq{grid-template-columns:1fr;gap:2rem}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-item:nth-child(7n + 1){min-height:440px}.chapter-head{display:block}.chapter-head p{margin-top:1rem}}
@media(max-width:620px){.identity{min-width:0}.identity img{width:43px;height:43px}.hero-photo{transform:none}.hero-orbit{width:80px}.portfolio-grid{gap:.5rem}.portfolio-item,.portfolio-item:nth-child(7n + 1){aspect-ratio:3/4;grid-row:auto;min-height:0}.portfolio-item .caption{padding:2rem .6rem .6rem;font-size:.53rem}.faq-list summary{font-size:1.05rem}.social-follow{text-align:left}.film-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-copy>*,.hero-photo{animation:none!important}.hero-photo{transform:none}.hero-orbit{animation:none}}

/* Readable forms, policies, and privacy notice. */
.footer-links{flex-wrap:wrap}.footer-button{border:0;background:transparent;color:inherit;padding:0;text-align:left;font-size:.84rem;cursor:pointer}.footer-button:hover,.footer-button:focus-visible{color:var(--accent-dark)}
.form-notice{font-size:.86rem;line-height:1.6;color:#414846;margin:0;padding:.9rem 1rem;border-left:3px solid var(--accent-dark);background:#f8f7f3}
.form-notice a,.consent-field a,.legal-content a,.cookie-notice a{color:#773923;text-decoration:underline;text-underline-offset:.16em}
.consent-field label{display:flex;align-items:flex-start;gap:.7rem;font:400 .9rem/1.5 'DM Sans',Arial,sans-serif;letter-spacing:0;text-transform:none;cursor:pointer}
.consent-field input{min-height:0;width:21px;height:21px;flex:none;margin:.1rem 0 0;accent-color:#85432f}
.consent-field input:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}
.field input::placeholder,.field textarea::placeholder{color:#59635f}
.cookie-notice{position:fixed;z-index:50;left:clamp(1rem,3vw,3rem);right:clamp(1rem,3vw,3rem);bottom:1rem;max-width:760px;margin-left:auto;display:flex;align-items:center;gap:1.5rem;padding:1.25rem 1.4rem;background:#fff;color:var(--ink);border:1px solid #c8c7bf;box-shadow:0 18px 50px #24262729;border-radius:4px}
/* Keep dismissal stronger than responsive :has(.cookie-actions) layouts. */
.cookie-notice[hidden]{display:none!important}
.cookie-notice strong{font:700 .9rem Manrope,sans-serif}.cookie-notice p{font-size:.85rem;line-height:1.5;margin:.3rem 0 0;color:#414846}
.cookie-notice .button{white-space:nowrap;min-height:44px;letter-spacing:.06em}
.legal-hero{padding-bottom:2rem}.legal-hero .display{max-width:980px}.legal-hero p{max-width:760px}.policy-date{display:block;margin-top:1.4rem;color:var(--muted);font-size:.85rem}
.legal-content{max-width:940px;padding-bottom:7rem}.legal-content section{padding:1.5rem 0;border-top:1px solid var(--line)}.legal-content h2{font:600 clamp(1.35rem,2vw,1.85rem)/1.2 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 .75rem}.legal-content p{color:#414846;max-width:70ch;margin:.5rem 0 1rem;line-height:1.75}.legal-content code{font-size:.85em;overflow-wrap:anywhere}.legal-contact{border-top:2px solid var(--ink);padding-top:1.5rem}
.filters button,.nav-links a:not(.button),.footer-links a,.footer-button{min-height:44px;display:inline-flex;align-items:center}
.portfolio-item:focus-visible,.feature-card:focus-visible{outline:3px solid #85432f;outline-offset:3px;z-index:2}
.film-card video:focus-visible{outline:3px solid #85432f;outline-offset:3px}
@media(max-width:820px){.footer-links{gap:1.4rem}.cookie-notice{max-width:none}}
@media(max-width:620px){.cookie-notice{display:block;padding:1rem;bottom:.75rem}.cookie-notice .button{margin-top:.8rem;width:100%}.legal-content{padding-bottom:4rem}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.footer-links div{align-content:start}}

/* Analytics preference controls, shown only when a measurement ID is configured. */
.cookie-notice:has(.cookie-actions){max-width:900px;align-items:flex-start}
.cookie-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap;min-width:300px}
.cookie-actions .button{margin:0;min-width:135px;padding-inline:1rem}
.cookie-actions .text-button{border:0;background:transparent;color:#773923;text-decoration:underline;text-underline-offset:.16em;padding:.6rem;font:600 .85rem Manrope,Arial,sans-serif;min-height:44px;cursor:pointer}
.cookie-dialog{border:1px solid #c8c7bf;border-radius:5px;box-shadow:0 24px 80px #24262755;background:#fff;color:var(--ink);padding:clamp(1.2rem,4vw,2rem);max-width:min(520px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto}
.cookie-dialog::backdrop{background:#2229;backdrop-filter:blur(5px)}
.cookie-dialog h2{font:600 1.5rem/1.2 Manrope,Arial,sans-serif;margin:0 0 .65rem}
.cookie-dialog p{font-size:.9rem;line-height:1.55;color:#414846}
.cookie-dialog a{color:#773923;text-decoration:underline}
.preference-row{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1rem 0;border-top:1px solid var(--line);font-size:.9rem}
.preference-row strong,.preference-row small{display:block}.preference-row small{color:#414846;line-height:1.45;margin-top:.2rem}
.preference-row input{width:24px;height:24px;flex:none;accent-color:#85432f}
.preference-row>span:last-child{white-space:nowrap}
.cookie-dialog-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.2rem}
@media(max-width:820px){.cookie-notice:has(.cookie-actions){display:block}.cookie-actions{justify-content:flex-start;min-width:0;margin-top:1rem}}
@media(max-width:620px){.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions .button{min-width:0;width:100%;margin:0}.cookie-actions .text-button{grid-column:1/-1}.cookie-dialog-actions .button{flex:1;padding-inline:.5rem}}

/* Concrete scope and relevant work help visitors evaluate a proposal. */
.starting-scope{padding:clamp(4rem,7vw,7rem) 0}.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.scope-card{display:flex;flex-direction:column;gap:.9rem;padding:clamp(1.5rem,3vw,2.2rem);border:1px solid var(--line);background:var(--white)}.scope-card h3{font:600 clamp(1.25rem,2vw,1.7rem)/1.2 Manrope,sans-serif;letter-spacing:-.035em;margin:0}.scope-card p{color:var(--muted);margin:0 0 .8rem}.scope-card .line-link{margin-top:auto}.scope-card .eyebrow{color:var(--accent-dark)}
.service-example{padding:clamp(4rem,7vw,7rem) 0;background:#ebeae4;border-block:1px solid var(--line)}.service-example-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.service-example .display{margin:1rem 0 1.5rem}.service-example p{color:var(--muted);max-width:34rem}.service-example .example-price{color:var(--ink);font:600 1.15rem Manrope,sans-serif}.service-example .example-note{font-size:.85rem}.service-example .button{margin-top:1rem}.service-example figure{margin:0;background:var(--white);border:1px solid var(--line)}.service-example video{display:block;width:100%;height:clamp(340px,45vw,550px);object-fit:contain;background:#e5e5df}.service-example figcaption{padding:1rem 1.3rem 1.4rem}.service-example figcaption strong{display:block;margin-bottom:.3rem}.service-example figcaption span{display:block;font-size:.85rem;color:var(--muted)}
@media(max-width:820px){.scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-example-grid{grid-template-columns:1fr}}
@media(max-width:620px){.scope-grid{grid-template-columns:1fr}.service-example video{height:420px}}

/* Proposal flow */
.hero-investment{font-weight:600;font-size:.87rem!important;margin:1.3rem 0 0!important}.hero-side-note{margin-top:2.5rem}.minimum{font-weight:600;margin:1rem 0}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.button:disabled{cursor:wait;opacity:.65;transform:none}.form-feedback a{color:#773923;text-decoration:underline}.form-feedback{overflow-wrap:anywhere}.service-hero-grid .button{margin-top:1rem}.service-card h3{margin:1.3rem 0 .6rem}.service-card .line-link{margin-top:auto}

.form-notice.wide{grid-column:1/-1}

/* Preserve the approved JC emblem colors and upright orientation. */
.identity img,.footer .identity img{filter:none}
.identity:hover img{transform:none}
.hero-orbit{filter:none;animation:none;opacity:1}

/* Source: /scene.css */
/* Clean homepage boundary. No legacy hero or experimental stylesheet is loaded here. */
body.scene-home{--paper:#f4f1ea;--ink:#1d201f;--muted:#69665f;--line:#d5d0c5;margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 'DM Sans',Arial,sans-serif}
.scene-home :is(h1,h2,h3,p,figure){margin:0}.scene-home a{color:inherit}.scene-home button{font:inherit;color:inherit}.scene-home img{filter:none!important}.scene-home :focus-visible{outline:2px solid currentColor;outline-offset:5px}.scene-home .diagonal-arrow{vertical-align:middle;flex-shrink:0}.scene-home #main{padding:0;margin:0}
.scene-home .site-header{position:fixed;inset:0 0 auto;z-index:30;width:100%;height:76px;padding:max(12px,env(safe-area-inset-top)) max(24px,4vw);display:flex;align-items:center;justify-content:space-between;gap:20px;background:transparent;color:#fff;border:0;box-shadow:none;backdrop-filter:none;transition:none;text-shadow:0 1px 5px #0009}
.scene-home.scene-past .site-header{background:var(--paper);color:var(--ink);text-shadow:none}
.scene-home .folio-brand{display:flex;align-items:center;gap:12px}.scene-home .folio-brand img{display:block;width:38px;height:38px;filter:none;object-fit:contain}.scene-home .folio-brand span{font-size:12px;letter-spacing:.12em;font-weight:600}.scene-home .folio-header nav{display:flex;gap:28px;align-items:center}.scene-home .folio-header nav a{display:flex;align-items:center;min-height:44px;font-size:13px;text-decoration:none}.scene-home .folio-header a:hover{text-decoration:underline;text-underline-offset:5px}
.scene-scroll{position:relative;height:100svh;background:#252826}.scene-stage{position:relative;height:100svh;width:100%;overflow:hidden;isolation:isolate}.scene-active .scene-scroll{height:210svh}.scene-active .scene-stage{position:sticky;top:0}.scene-camera{position:absolute;inset:0;will-change:transform}.scene-background{position:absolute;left:-16px;top:-16px;width:calc(100% + 32px);height:calc(100% + 32px);max-width:none;object-fit:cover;object-position:50% 50%;z-index:1;display:block}
.scene-title{position:absolute;left:50%;top:12vh;width:max-content;max-width:none;white-space:nowrap;transform:translateX(-50%);margin:0;color:#fff;font:500 clamp(20px,5.4vw,96px)/.87 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;text-align:center;opacity:1!important;z-index:2;pointer-events:none;text-shadow:0 1px 3px #0006;will-change:transform,clip-path;overflow:visible;text-wrap:nowrap}
.scene-foreground{position:absolute;inset:-16px;width:calc(100% + 32px);height:calc(100% + 32px);max-width:none;z-index:3;pointer-events:none;visibility:hidden}.scene-active .scene-foreground,.scene-static .scene-foreground{visibility:visible}
.scene-bottom{position:absolute;z-index:5;bottom:max(60px,env(safe-area-inset-bottom));left:4vw;right:4vw;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:25px;font-size:12px;text-shadow:0 1px 5px #000b}.scene-bottom a{display:flex;min-height:44px;align-items:center;text-decoration:none;gap:8px;border-bottom:1px solid #ffffff80}.scene-bottom a:hover{border-color:white}
.collections{padding:70px 0 55px;scroll-margin-top:86px}.collections-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:0 4vw 32px}.collections-heading p{font-size:12px;letter-spacing:.04em;margin-bottom:12px}.collections-heading h2{font:500 clamp(40px,4vw,60px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.03em}.collections-heading>a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;gap:8px}.collection-track{display:flex;gap:24px;overflow-x:auto;padding:8px 4vw 18px;scroll-padding:4vw;scroll-snap-type:x proximity}.collection-card{flex:0 0 320px;min-width:0;scroll-snap-align:start}.collection-image{display:block;width:100%;height:230px;overflow:hidden}.collection-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.collection-caption{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;padding:12px 0}.collection-caption>span{font-size:12px;color:var(--muted)}.collection-caption h3{font:500 24px/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em}.collection-caption>a{font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:5px}.scene-continue{margin:0 4vw;padding:28px 0 45px;border-top:1px solid var(--line);display:flex;gap:40px;flex-wrap:wrap;font-size:14px}.scene-continue a{min-height:44px;display:inline-flex;align-items:center;gap:8px}
.scene-home .folio-footer{padding:32px 4vw;border-top:1px solid var(--line);font-size:12px;line-height:1.8}.scene-home .folio-footer>div{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:22px}.scene-home .folio-footer nav{display:flex;gap:6px 24px;flex-wrap:wrap}.scene-home .folio-footer nav a,.scene-home .folio-footer button{min-height:44px;display:inline-flex;align-items:center;border:0;background:none;padding:0;font:inherit}.scene-home .folio-footer-end{justify-content:space-between;align-items:center;margin-top:25px}.scene-home .folio-copyright{color:var(--muted)}
/* Independent full-composition viewer. */
.scene-home .folio-dialog{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}.folio-dialog::backdrop{background:var(--paper)}.folio-dialog[open]{display:flex;flex-direction:column}.folio-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;min-height:76px;padding:12px 3vw;border-bottom:1px solid var(--line)}.folio-dialog-top>div{display:flex;align-items:baseline;gap:20px}.folio-dialog-top .folio-kicker{display:none}.folio-dialog-top h2{font:500 32px/1 'Cormorant Garamond',Georgia,serif}.folio-dialog-top p{font-size:13px}.folio-dialog button{min-height:44px;min-width:44px;border:0;padding:5px;background:none;font-size:13px}.folio-dialog-top button{display:flex;align-items:center;gap:20px}.folio-dialog-top button span{font:28px Arial,sans-serif}.folio-project{display:flex;flex:1;min-height:0;padding:14px 3vw}.folio-viewer{display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:0;min-width:0;position:relative}.folio-viewer img{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 195px);object-fit:contain;transform-origin:0 0}.folio-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 3vw 13px;border-top:1px solid var(--line);flex-shrink:0}.folio-photo-controls{display:flex;align-items:center;gap:20px}.folio-photo-controls button{font:22px Arial,sans-serif}.folio-photo-controls>span{font-size:12px;min-width:50px;text-align:center}#folio-full-file{font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center;gap:6px}.folio-thumbnails{display:flex;gap:8px;align-items:center;overflow-x:auto}.folio-thumbnails button{height:58px;min-width:48px;border:1px solid transparent;padding:4px;display:grid;place-items:center}.folio-thumbnails button[aria-current=true]{border-color:var(--ink)}.folio-thumbnails img{max-width:68px;max-height:48px;width:auto;height:auto;object-fit:contain}
.scene-home .cookie-notice,.scene-home .cookie-dialog{border:1px solid var(--line);border-radius:0;background:var(--paper);box-shadow:none;color:var(--ink)}.scene-home .cookie-notice .button,.scene-home .cookie-dialog .button{border-radius:0;border:1px solid var(--ink);background:var(--ink);color:var(--paper)}.scene-home .cookie-notice .button.alt,.scene-home .cookie-dialog .button.alt{background:transparent;color:var(--ink)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.collection-image:hover img{transform:scale(1.025)}}
@media(max-width:760px){.scene-home .site-header{height:64px;padding:8px max(16px,env(safe-area-inset-left));gap:10px}.scene-home .folio-brand span{display:none}.scene-home .folio-brand img{width:34px;height:34px}.scene-home .folio-header nav{gap:17px}.scene-home .folio-header nav a{font-size:12px}.scene-title{font-size:clamp(20px,6.6vw,50px);top:13vh}.scene-bottom{left:20px;right:20px;bottom:max(24px,env(safe-area-inset-bottom));font-size:12px;align-items:center}.scene-bottom p{max-width:115px}.scene-bottom a{max-width:160px;text-align:right;justify-content:end}.collections{padding-top:42px;padding-bottom:30px}.collections-heading{margin-inline:20px;margin-bottom:25px;align-items:center}.collections-heading h2{font-size:42px}.collections-heading>a{max-width:100px;line-height:1.5;font-size:12px}.collection-track{gap:18px;padding-inline:20px;scroll-padding:20px}.collection-card{flex-basis:min(320px,82vw)}.collection-image{height:220px}.collection-caption h3{font-size:24px}.scene-continue{margin:0 20px;gap:18px;padding-bottom:30px}.scene-home .folio-footer{padding-inline:20px}.scene-home .folio-footer>div{gap:8px;flex-direction:column}.scene-home .folio-footer nav{gap:0 20px}.scene-home .folio-footer-end{align-items:start}.folio-dialog-top{min-height:64px;padding:10px 5vw;gap:12px}.folio-dialog-top>div{display:block}.folio-dialog-top h2{font-size:27px}.folio-dialog-top p{display:none}.folio-dialog-top button{gap:8px;font-size:12px}.folio-project{padding:10px 4vw}.folio-viewer img{max-height:calc(100svh - 210px)}.folio-dialog-bottom{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;padding:8px 5vw 12px}.folio-photo-controls{gap:10px}.folio-thumbnails{grid-column:1/-1;justify-content:center}.folio-thumbnails button{height:48px}#folio-full-file{font-size:11px;text-align:right;justify-content:end}}
@media(max-height:550px) and (min-width:761px){.scene-home .site-header{height:58px;padding-block:8px}.scene-home .folio-brand img{width:32px;height:32px}.scene-title{font-size:48px}.scene-bottom{bottom:15px}}
.scene-static .scene-scroll{height:100svh}.scene-static .scene-stage{position:relative}.scene-static .scene-camera,.scene-static .scene-title{will-change:auto}.scene-static .scene-title{clip-path:none!important}.motion-reduced .collection-image img{transition:none;transform:none}
@media(prefers-reduced-motion:reduce){.scene-active .scene-scroll{height:100svh}.scene-active .scene-stage{position:relative}.scene-home *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.collection-image img{transform:none!important}}

/* Source: /homepage-continuation.css */
/* Homepage continuation only. Approved scene.css and scene.js remain byte-for-byte v16. */
.scene-exit-blend{position:absolute;z-index:4;inset:auto 0 0;height:38%;pointer-events:none;opacity:0;background:linear-gradient(to bottom,rgba(244,241,234,0),rgba(244,241,234,.24) 28%,rgba(244,241,234,.78) 68%,#f4f1ea 100%)}
.scene-scroll[data-blend-paper] .scene-bottom{color:var(--ink);text-shadow:none}.scene-scroll[data-blend-paper] .scene-bottom a{border-color:var(--ink)}
.home-section{width:92%;max-width:1440px;margin-inline:auto;scroll-margin-top:100px}.home-kicker{font:400 12px/1.7 'DM Sans',Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.home-story{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-block:100px 115px}.home-story-heading{grid-column:1/5}.home-story-heading .home-kicker{max-width:230px}.home-story h2{font:500 clamp(60px,6.2vw,100px)/.88 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;margin:28px 0 38px}.home-story-founders{display:flex;flex-direction:column;gap:8px;font-size:14px}.home-story-copy{grid-column:6/13;max-width:65ch;font-size:18px;line-height:1.7}.home-story-copy p+p{margin-top:26px}
.scene-home .collections{border-block:1px solid var(--line);padding:80px 0 92px}.scene-home .collections-heading{max-width:1440px;width:92%;margin:0 auto 42px}.scene-home .collection-track{display:grid;grid-template-columns:repeat(2,384px);justify-content:center;gap:52px 64px;overflow:visible;padding:12px 4vw 0;scroll-snap-type:none}.scene-home .collection-card{width:384px;max-width:100%;transition:transform .45s cubic-bezier(.2,.65,.2,1);transform-origin:center center}.scene-home .collection-image{height:276px}.scene-home .collection-image img{transform:none;transition:none}.scene-home .collection-caption{padding-top:14px}.scene-home .collection-caption h3{font-size:28px}.scene-home .collection-caption>a{font-size:13px}.scene-home .collection-card:nth-child(3){grid-column:1}.scene-home .collection-card:last-child{grid-column:2}
.home-portfolio{padding-block:100px 70px;scroll-margin-top:100px}.home-portfolio :is(h2,h3),.home-inquiry :is(h1,h2,h3){font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.04em}.home-portfolio .editorial-wrap,.home-inquiry .wrap{width:92%;max-width:1440px;margin-inline:auto}.home-portfolio .home-portfolio-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}.home-portfolio h2{font-size:clamp(44px,5vw,70px);line-height:1}.home-portfolio .home-portfolio-heading p{font-size:14px;max-width:340px}.home-portfolio .archive-opening{padding:0 0 45px}.home-portfolio .archive-title{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:36px}.home-portfolio .archive-title h2{font-size:clamp(44px,5vw,70px);line-height:1}.home-portfolio .archive-title p{font-size:14px;max-width:290px}.home-portfolio .archive-diptych{display:none}
.home-portfolio .portfolio-toolbar{position:sticky;top:76px;z-index:20;padding:0;border-block:1px solid var(--line);background:var(--paper);backdrop-filter:none}.home-portfolio .filters{display:flex;flex-wrap:wrap;gap:4px 26px;padding:10px 0}.home-portfolio .filters button{font:400 13px/1.4 'DM Sans',sans-serif;min-height:44px;background:none;color:var(--ink);border:0;border-bottom:2px solid transparent;border-radius:0;padding:6px 0;letter-spacing:0;text-transform:none}.home-portfolio .filters button.active{background:none;border-bottom-color:var(--ink);font-weight:600}.home-portfolio .archive-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:24px;font-size:13px;color:var(--muted)}.home-portfolio .archive-meta a{min-height:44px;display:flex;align-items:center;gap:8px}.home-portfolio .curated-selection-note{padding:15px 0;border-bottom:1px solid var(--line)}
.home-portfolio .portfolio-chapter{padding-block:45px 70px;border:0;scroll-margin-top:170px}.home-portfolio .chapter-head{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-bottom:40px;padding-top:24px;border-top:1px solid var(--line);align-items:end}.home-portfolio .chapter-head h2{font-size:clamp(40px,4.2vw,62px);margin-top:12px}.home-portfolio .chapter-head p{font-size:15px;max-width:360px;justify-self:end}.home-portfolio .folio-kicker{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.home-portfolio .portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:60px 5vw}.home-portfolio .portfolio-item,.home-portfolio .portfolio-item:nth-child(n){display:block;min-width:0;width:100%;height:auto;min-height:0;aspect-ratio:auto;grid-column:auto;grid-row:auto;padding:0;background:none;overflow:visible;content-visibility:visible;contain-intrinsic-size:none;transform:none}.home-portfolio .portfolio-item:nth-child(4n+2){padding-top:80px}.home-portfolio .portfolio-item img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:none;transform:none;transition:none;border-radius:0}.home-portfolio .portfolio-item .caption{position:static;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:10px 0;background:none;color:var(--muted);font:400 12px/1.5 'DM Sans',sans-serif;text-shadow:none;opacity:1;transform:none}
.home-portfolio .home-films{padding-block:50px 70px;border-top:1px solid var(--line)}.home-films .home-films-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.home-films h2{margin-top:15px}.home-films p{font-size:14px;max-width:320px}.home-film-grid{display:grid;grid-template-columns:1.5fr .72fr .72fr;align-items:center;gap:36px}.home-film-grid figure{min-width:0}.home-film-grid video{display:block;width:100%;height:auto;max-height:500px;object-fit:contain;background:var(--paper);border-radius:0;filter:none}.home-film-grid figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:12px;color:var(--muted)}
.home-inquiry .contact{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);padding:90px 0 105px;scroll-margin-top:90px}.home-inquiry .contact-inner{display:grid;grid-template-columns:.78fr 1.22fr;gap:10%;align-items:start}.home-inquiry .contact-copy h2{font-size:clamp(43px,4.8vw,72px);line-height:.98;margin:20px 0 25px}.home-inquiry .contact-copy>p{font-size:15px;margin:0 0 22px;max-width:390px}.home-inquiry .eyebrow{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.home-inquiry .contact-copy .minimum{display:block;font-size:12px;margin:20px 0;color:var(--muted)}.home-inquiry .contact-copy .email-link{display:inline-flex;font-size:14px;min-height:44px;align-items:center;gap:8px;border-bottom:1px solid var(--ink);margin-top:10px}.home-inquiry .inquiry{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px;padding:0;border:0;box-shadow:none;background:transparent;border-radius:0}.home-inquiry .field{display:flex;flex-direction:column;gap:8px}.home-inquiry .field.wide,.home-inquiry .wide,.home-inquiry .form-bottom,.home-inquiry .form-feedback{grid-column:1/-1}.home-inquiry .field label{font:400 13px/1.6 'DM Sans',sans-serif;color:var(--ink)}.home-inquiry :is(input,select,textarea){background:#faf8f3;color:var(--ink);border:1px solid #aaa69d;border-radius:0;padding:12px;box-shadow:none;min-height:48px;font:400 16px/1.5 'DM Sans',sans-serif;width:100%;letter-spacing:0}.home-inquiry textarea{min-height:160px;resize:vertical}.home-inquiry input::placeholder,.home-inquiry textarea::placeholder{color:#77736c;opacity:1}.home-inquiry input[type=checkbox]{width:20px;min-width:20px;height:20px;min-height:20px;accent-color:var(--ink);margin-top:2px}.home-inquiry .consent-field>label{display:flex;flex-direction:row;align-items:start;gap:12px;font-size:13px}.home-inquiry .form-notice{font-size:13px;line-height:1.7;color:var(--muted)}.home-inquiry .form-notice a,.home-inquiry .consent-field a{text-decoration:underline}.home-inquiry .preview-form-notice{padding:15px 0;border-block:1px solid var(--ink);font-size:13px;color:var(--ink);background:none;margin-bottom:4px}.home-inquiry .form-bottom{display:flex;gap:22px;align-items:center}.home-inquiry .button{font:500 14px/1.4 'DM Sans',sans-serif;min-height:48px;padding:15px 22px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);transform:none;box-shadow:none;letter-spacing:0}.home-inquiry .button:hover{background:#343735;color:var(--paper);transform:none}.home-inquiry .form-bottom small{font-size:12px;line-height:1.5;max-width:230px;color:var(--muted)}.home-inquiry .form-feedback{font-size:14px;min-height:24px}
.scene-home .lightbox{inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0 3vw 20px;background:var(--paper);color:var(--ink);border:0;overflow:auto}.scene-home .lightbox::backdrop{background:var(--paper)}.scene-home .lightbox[open]{display:flex;flex-direction:column}.scene-home .lightbox-bar{width:100%;margin:0;padding:12px 0;min-height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:13px;gap:16px;flex-shrink:0}.scene-home .lightbox-bar>div{display:flex;gap:12px}.scene-home .lightbox-bar button{background:transparent;color:var(--ink);border:1px solid var(--line);width:44px;height:44px;border-radius:0;min-height:44px}.scene-home .lightbox-bar>a{font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center}.scene-home .lightbox img{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 110px);margin:auto;object-fit:contain;flex-shrink:1;min-height:0}
@media(min-width:1440px){.scene-home .collection-track{grid-template-columns:repeat(3,384px);gap:64px 48px}.scene-home .collection-card:nth-child(3){grid-column:auto}.scene-home .collection-card:last-child{grid-column:auto}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.scene-home:not(.motion-reduced) .collection-card:hover,.scene-home:not(.motion-reduced) .collection-card:focus-within{transform:translateY(-8px) rotate(.3deg)}.scene-home:not(.motion-reduced) .collection-card:nth-child(even):hover,.scene-home:not(.motion-reduced) .collection-card:nth-child(even):focus-within{transform:translateY(-8px) rotate(-.3deg)}}
@media(max-width:900px){.home-story{gap:22px;padding-block:65px 75px}.home-story-heading{grid-column:1/5}.home-story-copy{grid-column:5/13;font-size:17px}.home-story h2{font-size:60px}.scene-home .collection-track{display:flex;justify-content:start;gap:26px;overflow-x:auto;padding:14px 4vw 22px;scroll-snap-type:x proximity;scroll-padding:4vw}.scene-home .collection-card{flex:0 0 384px;scroll-snap-align:start}.home-film-grid{grid-template-columns:1fr 1fr;gap:30px}.home-film-grid>figure:first-child{grid-column:1/-1;width:100%;max-width:720px;justify-self:center}}
@media(max-width:760px){.home-section,.home-portfolio .editorial-wrap,.home-inquiry .wrap{width:88%}.home-story{display:block;padding-block:55px 65px}.home-story-heading .home-kicker{max-width:none}.home-story h2{font-size:57px;line-height:.96;margin:20px 0 24px}.home-story h2 br{display:none}.home-story h2 br:after{content:' '}.home-story-founders{flex-direction:row;flex-wrap:wrap;gap:8px 22px;font-size:13px;margin-bottom:35px}.home-story-copy{font-size:17px;line-height:1.72;max-width:none}.home-story-copy p+p{margin-top:25px}.scene-home .collections{padding:55px 0 50px}.scene-home .collections-heading{width:88%;align-items:end;margin-bottom:26px}.scene-home .collections-heading h2{font-size:43px}.scene-home .collection-track{gap:22px;padding-inline:6vw;scroll-padding:6vw}.scene-home .collection-card{flex-basis:88vw;width:88vw}.scene-home .collection-image{height:252px}.scene-home .collection-caption h3{font-size:27px}.scene-home .collection-caption>a{font-size:12px}
 .home-portfolio{padding-block:60px 30px}.home-portfolio .archive-title,.home-portfolio .home-portfolio-heading{display:block}.home-portfolio .archive-title h2{font-size:46px;margin-bottom:18px}.home-portfolio .archive-title p br{display:none}.home-portfolio .portfolio-toolbar{top:64px}.home-portfolio .filters{flex-wrap:nowrap;gap:20px;overflow-x:auto;width:100%;padding:6px 6vw}.home-portfolio .filters button{flex-shrink:0;white-space:nowrap;font-size:12px}.home-portfolio .chapter-head{grid-template-columns:1fr;gap:18px;margin-bottom:25px}.home-portfolio .chapter-head h2{font-size:43px}.home-portfolio .chapter-head p{justify-self:start;font-size:14px}.home-portfolio .portfolio-chapter{padding-block:28px 45px}.home-portfolio .portfolio-grid{grid-template-columns:minmax(0,1fr);gap:34px}.home-portfolio .portfolio-item,.home-portfolio .portfolio-item:nth-child(n){padding:0;width:100%}.home-portfolio .portfolio-item:nth-child(3n+2){width:83%;justify-self:end}.home-portfolio .archive-meta{font-size:12px}.home-films .home-films-heading{display:block}.home-films .home-films-heading p{margin-top:18px}.home-films h2{font-size:46px}.home-film-grid{gap:30px 20px}.home-film-grid figcaption{display:block;font-size:12px}.home-film-grid figcaption>span{display:block}.home-portfolio .home-films{padding-block:40px 55px}
 .home-inquiry .contact{padding-block:55px 65px}.home-inquiry .contact-inner{grid-template-columns:1fr;gap:32px}.home-inquiry .contact-copy h2{font-size:48px}.home-inquiry .contact-copy>p{font-size:14px}.home-inquiry .inquiry{grid-template-columns:1fr;gap:19px}.home-inquiry .form-bottom{flex-direction:column;align-items:start;gap:14px}.home-inquiry .form-bottom .button{width:100%;justify-content:center}.home-inquiry .form-bottom small{max-width:none}.scene-home .lightbox{padding:0 4vw 16px}.scene-home .lightbox-bar{flex-wrap:wrap;gap:6px;min-height:105px}.scene-home .lightbox-bar>a{order:3;width:100%;justify-content:center;min-height:28px}.scene-home .lightbox img{max-height:calc(100svh - 125px)}
}
.motion-reduced .collection-card{transform:none!important;transition:none!important}.scene-static .scene-exit-blend{display:none}
@media(prefers-reduced-motion:reduce){.scene-home .collection-card{transform:none!important;transition:none!important}.scene-exit-blend{display:none}}

/* Preserve semantic hiding for archive filters and curated selections. */
.home-portfolio [hidden]{display:none!important}

/* Source: /album-pages.css */
/* Continuation and album pages only. No hero, header, or opening-blend rules. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.homepage-reorganized .story-editorial{grid-template-rows:auto auto;row-gap:68px;padding-block:110px 125px}
.story-editorial .home-story-heading{grid-column:1/5;grid-row:1}
.story-editorial .story-first{grid-column:6/12;grid-row:1;max-width:60ch}
.story-editorial .story-second{grid-column:3/9;grid-row:2;max-width:60ch}
.story-editorial .home-story-copy{font-size:18px;line-height:1.75}
.story-editorial .home-story-copy p+p{margin-top:28px}
.featured-albums{padding:35px 0 100px;scroll-margin-top:90px;overflow:hidden}
.editorial-grid{width:92%;max-width:1440px;margin:auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end}
.collection-intro{margin-bottom:50px}.collection-kicker{grid-column:1/4;align-self:start;font-size:12px;line-height:1.65;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.collection-intro h2{grid-column:5/10;font:500 clamp(46px,5vw,76px)/.95 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;margin:0}.album-directory-link{grid-column:11/13;min-height:44px;display:flex;gap:10px;align-items:center;justify-content:end;font-size:13px}
.social-showcase{padding-block:65px 120px}.social-showcase h2{font:500 clamp(46px,5vw,72px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;width:58%;margin:0 0 55px auto}
.social-film-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;align-items:start}
.social-film-grid .social-film{margin:0;padding:0;border:0;outline:0;box-shadow:none;border-radius:0;background:none;min-width:0;overflow:visible;aspect-ratio:auto;transform:none;transition:none}
.social-film:nth-child(1){grid-column:1/8;margin-top:55px;max-width:720px}.social-film:nth-child(2){grid-column:8/10}.social-film:nth-child(3){grid-column:10/13;margin-top:95px}
.social-film-grid video{display:block;width:100%;height:auto;max-height:none;border:0;border-radius:0;object-fit:contain;filter:none;background:transparent;box-shadow:none}
.social-film-grid video:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.homepage-reorganized .home-inquiry .contact{border-top:0;padding-top:40px}
.album-directory,.album-page{padding-block:140px 100px}.album-page-heading{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:end;margin-bottom:65px}
.album-page-heading h1{grid-column:4/12;font:500 clamp(54px,6.5vw,96px)/.92 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;margin:0}.album-page-heading .folio-kicker{grid-column:1/4;align-self:start}.album-page-heading>p:last-child{grid-column:4/10;font-size:14px;color:var(--muted)}
.album-back{grid-column:1/-1;font-size:13px;min-height:44px;display:flex;align-items:center;margin-bottom:20px}
.directory-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:70px 36px;align-items:start}.directory-album{grid-column:1/7;display:block}.directory-album:nth-child(even){grid-column:8/13;margin-top:100px}.directory-album img{display:block;width:100%;height:auto;object-fit:contain;filter:none}.directory-album>span{display:block;padding-top:18px;font:500 32px/1.1 'Cormorant Garamond',Georgia,serif}
.album-cover{width:74%;margin-left:auto;margin-bottom:110px}.album-cover img{display:block;width:100%;height:auto;max-height:76svh;object-fit:contain;filter:none}.album-pending{width:100%;min-height:230px;background:#e3dfd6;display:grid;place-items:center;color:#4f4b43;font:400 14px/1.4 'DM Sans',sans-serif}
.album-page .portfolio-chapter{padding:0;border:0}.album-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:75px 7%;align-items:start}
.album-page .album-photo,.album-page .album-photo:nth-child(n){display:block;width:100%;height:auto;aspect-ratio:auto;min-height:0;grid-row:auto;grid-column:auto;overflow:visible;background:transparent;transform:none;content-visibility:visible;contain-intrinsic-size:none}
.album-page .album-photo:nth-child(4n+2){margin-top:90px}.album-page .album-photo img{display:block;width:100%;height:auto;object-fit:contain;max-height:none;filter:none;transform:none;border-radius:0}
.album-photo-number{display:block;font-size:12px;color:var(--muted);padding-top:12px}.album-return{margin-top:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.album-return a{min-height:44px;display:flex;align-items:center;font-size:14px;gap:12px}
@media(max-width:1000px){.social-film-grid{gap:25px}.social-film:nth-child(1){grid-column:1/8}.social-film:nth-child(2){grid-column:8/13}.social-film:nth-child(3){grid-column:4/8;grid-row:2;margin-top:35px}.album-cover{width:85%}.album-page-heading h1{grid-column:4/13}}
@media(max-width:760px){.homepage-reorganized .story-editorial{display:block;padding-block:65px 80px}.story-editorial .home-story-copy{font-size:17px;line-height:1.72}.story-editorial .story-second{margin-top:28px}.featured-albums{padding-block:10px 70px}.editorial-grid{width:88%;display:block}.collection-intro{margin-bottom:30px}.collection-kicker{margin-bottom:24px}.collection-intro h2{font-size:49px}.album-directory-link{justify-content:start;margin-top:20px}.social-showcase{padding-block:35px 75px}.social-showcase h2{font-size:46px;width:auto;margin:0 0 38px}.social-film-grid{display:flex;flex-direction:column;gap:40px}.social-film-grid .social-film:nth-child(n){width:100%;margin:0}.social-film-grid .social-film:nth-child(2){width:76%;align-self:flex-start}.social-film-grid .social-film:nth-child(3){width:76%;align-self:flex-end}.album-directory,.album-page{padding-top:105px}.album-page-heading{display:block;margin-bottom:40px}.album-page-heading h1{font-size:58px;margin:20px 0}.album-page-heading .folio-kicker{margin:16px 0}.directory-grid{display:block}.directory-album,.directory-album:nth-child(even){margin:0 0 45px;width:100%}.directory-album:nth-child(even){width:86%;margin-left:auto}.directory-album>span{font-size:29px}.album-cover{width:100%;margin-bottom:65px}.album-photo-grid{grid-template-columns:minmax(0,1fr);gap:38px}.album-page .album-photo:nth-child(n){margin:0;width:100%}.album-page .album-photo:nth-child(3n+2){width:86%;justify-self:end}.album-return{margin-top:55px;flex-direction:column;align-items:start;gap:12px}}

/* Factual collection context and next steps, after the untouched gallery. */
.album-project{margin-top:80px;padding-top:40px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:40px}.album-project h2{font:400 clamp(28px,3vw,42px)/1.15 "DM Serif Display",serif;margin:0}.album-project p{font-size:16px;line-height:1.7;margin:0 0 18px;max-width:58ch}.album-project nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.album-project a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px;font-size:14px}.album-project a:focus-visible{outline:2px solid currentColor;outline-offset:4px}@media(max-width:760px){.album-project{grid-template-columns:1fr;gap:24px;margin-top:55px;padding-top:30px}}

/* Source: /depth-carousel.css */
/* Isolated whole-image planes. No cover crop, image filter, or media changes. */
.depth-carousel {
  --depth-title-opacity: 1;
  --depth-media-radius: 18px;
  min-width: 0;
  max-width: 100%;
  color: var(--ink, #1d201f);
}
.depth-carousel .depth-stage {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 24px;
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
  padding: 24px 7%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  /* JS never listens to wheel. Native vertical scrolling and zoom remain. */
  touch-action: auto;
  -webkit-tap-highlight-color: transparent;
  outline-offset: -3px;
}
.depth-carousel .depth-card {
  display: block;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 min(78vw, 420px);
  width: min(78vw, 420px);
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #fff;
  background: transparent;
  text-decoration: none;
  scroll-snap-align: center;
  transform-origin: 50% 50%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  outline-offset: 5px;
}
.depth-carousel .depth-card > :is(img, video) {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
  border: 0;
  border-radius: var(--depth-media-radius);
  object-fit: contain;
  object-position: center;
  filter: none;
  transform: none;
  transition: none;
  background: transparent;
}
.depth-carousel .depth-card > :is(img, video, .depth-title) {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.depth-carousel .depth-card img {
  -webkit-user-drag: none;
  user-select: none;
  pointer-events: auto;
}
.depth-carousel.is-enhanced .depth-stage {
  display: block;
  padding: 0;
  /* clip, unlike hidden, does not flatten the shared 3D rendering context. */
  overflow: clip;
  transform-style: preserve-3d;
  scroll-snap-type: none;
  perspective: 1600px;
  perspective-origin: 50% 46%;
  touch-action: pan-y pinch-zoom;
  cursor: grab;
}
.depth-carousel.is-enhanced .depth-card {
  position: absolute;
  left: 50%;
  top: 50%;
  will-change: transform;
  transform-style: preserve-3d;
  touch-action: pan-y pinch-zoom;
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
  user-select: none;
  /* The engine coordinates every plane in one rAF, not independent transitions. */
  transition: none;
  cursor: pointer;
}
/* A two-sided photo plane reuses the exact front source without duplicating
   cards or media nodes. Each inner face is culled separately, so the back is
   upright instead of a mirrored view through the original photograph. */
.depth-carousel.is-enhanced[data-kind='photo'] .depth-card {
  backface-visibility: visible;
  -webkit-backface-visibility: visible;
}
.depth-carousel.is-enhanced[data-kind='photo'] .depth-card::before {
  content: '';
  position: absolute;
  inset: 0;
  display: block;
  border-radius: var(--depth-media-radius);
  background: var(--depth-back-image, none) center / contain no-repeat;
  transform: rotateY(180deg) translateZ(.05px);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  pointer-events: auto;
}
.depth-carousel.is-enhanced .depth-card > :is(img, video) {
  width: 100%;
  height: 100%;
  touch-action: pan-y pinch-zoom;
}
.depth-carousel.is-enhanced .depth-card:not([data-active]) video {
  pointer-events: none;
}
.depth-carousel.is-enhanced .depth-card[data-active] video {
  cursor: auto;
}
.depth-carousel.is-dragging .depth-stage,
.depth-carousel.is-dragging .depth-card { cursor: grabbing; }
.depth-carousel .depth-title {
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  margin: 0;
  padding: 54px 25px 24px;
  color: #fff;
  background: linear-gradient(transparent, rgb(0 0 0 / .68));
  text-shadow: 0 1px 3px rgb(0 0 0 / .2);
  font: 500 clamp(30px, 3.15vw, 43px)/1.03 'Cormorant Garamond', Georgia, serif;
  letter-spacing: -.025em;
  border-radius: 0 0 var(--depth-media-radius) var(--depth-media-radius);
  pointer-events: auto;
  touch-action: pan-y pinch-zoom;
  user-select: none;
}
.depth-carousel .depth-title small {
  font: 400 11px/1.5 'DM Sans', Arial, sans-serif;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.depth-carousel.is-enhanced .depth-title { opacity: var(--depth-title-opacity, 0); }
.depth-carousel .depth-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 18px auto 0;
  width: min(88%, 640px);
}
.depth-carousel [hidden],
.depth-carousel:not(.is-enhanced) .depth-controls { display: none !important; }
.depth-carousel :is(.depth-prev, .depth-next) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  margin: 0;
  padding: 10px;
  border: 1px solid var(--line, #d5d0c5);
  border-radius: 0;
  background: transparent;
  color: var(--ink, #1d201f);
  font: 400 16px/1 'DM Sans', Arial, sans-serif;
  cursor: pointer;
}
.depth-carousel :is(.depth-prev, .depth-next)[aria-disabled='true'] { opacity: .4; cursor: default; }
.depth-carousel .depth-status {
  flex: 0 1 32ch;
  min-width: 0;
  margin: 0;
  text-align: center;
  color: var(--muted, #69665f);
  font: 400 12px/1.5 'DM Sans', Arial, sans-serif;
}
.depth-carousel .depth-instructions {
  max-width: 48ch;
  margin: 16px auto 0;
  padding-inline: 16px;
  color: var(--muted, #69665f);
  text-align: center;
  font: 400 11px/1.6 'DM Sans', Arial, sans-serif;
}
.depth-carousel :is(.depth-stage, .depth-card, .depth-prev, .depth-next, video):focus-visible {
  outline: 2px solid var(--ink, #1d201f);
}
.depth-carousel[data-reduced-motion='true'] .depth-stage { perspective: none; }
.depth-carousel[data-reduced-motion='true'] .depth-card { will-change: auto; }
/* Keep every named collection available to screen readers in reduced motion
   without invisible planes covering the one visible collection. */
.depth-carousel[data-kind='photo'][data-reduced-motion='true'] .depth-card:not([data-active]),
.depth-carousel[data-kind='photo'][data-reduced-motion='true'] .depth-card:not([data-active]) *,
.depth-carousel[data-kind='photo'][data-reduced-motion='true'] .depth-card:not([data-active])::before {
  pointer-events: none;
}
@media (max-width: 760px) {
  .depth-carousel { --depth-media-radius: 14px; }
  .depth-carousel .depth-title { padding: 42px 19px 18px; font-size: clamp(25px, 7.4vw, 35px); }
  .depth-carousel .depth-controls { gap: 12px; margin-top: 10px; }
  .depth-carousel .depth-status { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .depth-carousel .depth-card { transition: none !important; }
}
/* VIDEO_RING_APPROVED_20261019_START */
/* Video-only additions. The accepted v26 photo/style rules above are frozen. */
.depth-carousel.is-enhanced[data-kind='video'] .depth-card {
  backface-visibility: visible;
  -webkit-backface-visibility: visible;
}
.depth-carousel.is-enhanced[data-kind='video'] .depth-card::before,
.depth-carousel.is-enhanced[data-kind='video'] .depth-card::after {
  content: '';
  position: absolute;
  inset: 0;
  display: block;
  border-radius: var(--depth-media-radius);
  background: var(--depth-video-poster, none) center / contain no-repeat;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  pointer-events: auto;
}
.depth-carousel.is-enhanced[data-kind='video'] .depth-card::before {
  transform: rotateY(180deg) translateZ(.05px);
}
.depth-carousel.is-enhanced[data-kind='video'] .depth-card::after {
  transform: translateZ(.1px);
}
/* The selected native player's entire front/control surface is unobstructed. */
.depth-carousel.is-enhanced[data-kind='video'] .depth-card[data-active]::after {
  display: none;
  pointer-events: none;
}
@media (max-width: 760px) {
  /* Match the accepted photo breakout using content width, not viewport units.
     Outer rails and heading text remain in the original editorial tracks. */
  body.editorial.homepage-reorganized .social-showcase { overflow: visible; }
  body.editorial.homepage-reorganized .social-showcase > #video-carousel {
    --video-page-width: calc((100% + 2 * var(--ruled-inset) + 2px) / .92);
    width: var(--video-page-width);
    max-width: none;
    margin-inline: calc((100% - var(--video-page-width)) / 2);
  }
}
/* VIDEO_RING_APPROVED_20261019_END */

/* Source: /homepage-refinement.css */
/* One shared editorial grid below the approved opening. No hero or blend rules. */
.homepage-reorganized{--editorial-columns:12;--editorial-gutter:clamp(20px,2.2vw,32px);--editorial-width:92%;--editorial-max:1440px;--section-space:clamp(60px,6vw,92px)}
.homepage-reorganized :is(.home-section,.editorial-grid,.home-inquiry .wrap,.folio-footer){width:var(--editorial-width);max-width:var(--editorial-max);margin-inline:auto}
.homepage-reorganized .editorial-grid,.homepage-reorganized .story-editorial,.homepage-reorganized .contact-inner,.homepage-reorganized .folio-footer{display:grid;grid-template-columns:repeat(var(--editorial-columns),minmax(0,1fr));column-gap:var(--editorial-gutter)}
.homepage-reorganized .story-editorial{grid-template-rows:auto;row-gap:28px;align-items:start;padding-block:var(--section-space);height:auto;min-height:0}
.homepage-reorganized .story-editorial .home-story-heading{grid-column:1/span 4;grid-row:1}
.homepage-reorganized .story-editorial .story-first{grid-column:5/span 4;grid-row:1}
.homepage-reorganized .story-editorial .story-second{grid-column:9/span 4;grid-row:1;margin:0}
.homepage-reorganized .story-editorial .home-story-copy{max-width:none;font-size:clamp(16px,1.45vw,18px);line-height:1.62}
.homepage-reorganized .story-editorial .home-story-copy p+p{margin-top:24px}
.homepage-reorganized .home-story-heading .home-kicker{font-size:11px;line-height:1.6;max-width:26ch}
.homepage-reorganized .home-story h2{font-size:clamp(50px,5.6vw,84px);line-height:.92;margin:24px 0 26px}
.homepage-reorganized .home-story-founders{font-size:13px;line-height:1.6;gap:5px}
.homepage-reorganized .featured-albums{padding-block:20px var(--section-space)}
.homepage-reorganized .collection-intro{align-items:end;margin-bottom:25px}
.homepage-reorganized .collection-kicker{grid-column:1/span 3;align-self:start}
.homepage-reorganized .collection-intro h2{grid-column:5/span 5;font-size:clamp(46px,4.8vw,70px)}
.homepage-reorganized .album-directory-link{grid-column:10/span 3}
.homepage-reorganized .social-showcase{padding-block:20px var(--section-space)}
.homepage-reorganized .video-intro{width:100%;margin-bottom:28px}
.homepage-reorganized .social-showcase h2{grid-column:5/-1;width:auto;margin:0;font-size:clamp(46px,4.8vw,70px)}
.homepage-reorganized .home-inquiry .contact{padding-block:30px var(--section-space)}
.homepage-reorganized .home-inquiry .contact-inner{align-items:start;row-gap:30px}
.homepage-reorganized .contact-copy{grid-column:1/span 4}
.homepage-reorganized .home-inquiry .inquiry{grid-column:5/span 8;min-width:0}
.homepage-reorganized .contact-copy h2{font-size:clamp(43px,4.8vw,68px)}
.homepage-reorganized .folio-footer{padding:32px 0 24px;row-gap:22px;font-size:12px}
.homepage-reorganized .folio-footer>div:first-child{grid-column:1/span 4;display:flex;flex-direction:column;gap:4px;margin:0}
.homepage-reorganized .folio-footer>nav{grid-column:5/span 8;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 20px;align-items:start}
.homepage-reorganized .folio-footer .folio-footer-end{grid-column:1/-1;display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin:0;padding-top:10px}
@media(max-width:1100px){
 .homepage-reorganized{--editorial-columns:6;--editorial-gutter:24px}
 .homepage-reorganized .story-editorial .home-story-heading{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 24px;align-items:end}
 .homepage-reorganized .home-story-heading .home-kicker{grid-column:1/span 2;align-self:start}
 .homepage-reorganized .home-story-heading h2{grid-column:3/span 2;margin:0;font-size:58px}
 .homepage-reorganized .home-story-founders{grid-column:5/span 2}
 .homepage-reorganized .story-editorial .story-first{grid-column:1/span 3;grid-row:2}
 .homepage-reorganized .story-editorial .story-second{grid-column:4/span 3;grid-row:2}
 .homepage-reorganized .story-editorial .home-story-copy{font-size:17px}
 .homepage-reorganized .collection-kicker{grid-column:1/span 2}
 .homepage-reorganized .collection-intro h2{grid-column:3/span 3}
 .homepage-reorganized .album-directory-link{grid-column:6/span 1;font-size:12px}
 .homepage-reorganized .social-showcase h2{grid-column:3/-1}
 .homepage-reorganized .contact-copy{grid-column:1/span 2}
 .homepage-reorganized .home-inquiry .inquiry{grid-column:3/span 4}
 .homepage-reorganized .folio-footer>div:first-child{grid-column:1/span 2}
 .homepage-reorganized .folio-footer>nav{grid-column:3/span 4;grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .homepage-reorganized{--editorial-columns:4;--editorial-gutter:18px;--editorial-width:88%;--section-space:56px}
 .homepage-reorganized .story-editorial{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px;padding-block:56px}
 .homepage-reorganized .story-editorial .home-story-heading{display:block;grid-column:1/-1;grid-row:1}
 .homepage-reorganized .home-story-heading .home-kicker{max-width:none;font-size:11px}
 .homepage-reorganized .home-story h2{font-size:52px;margin:18px 0 20px}
 .homepage-reorganized .home-story-founders{flex-direction:row;gap:8px 18px;flex-wrap:wrap;margin-bottom:0}
 .homepage-reorganized .story-editorial .story-first{grid-column:1/-1;grid-row:2}
 .homepage-reorganized .story-editorial .story-second{grid-column:1/-1;grid-row:3}
 .homepage-reorganized .story-editorial .home-story-copy{font-size:17px;line-height:1.6}
 .homepage-reorganized .story-editorial .home-story-copy p+p{margin-top:24px}
 .homepage-reorganized .collection-intro{row-gap:18px;margin-bottom:15px}
 .homepage-reorganized .collection-kicker{grid-column:1/-1;margin:0}
 .homepage-reorganized .collection-intro h2{grid-column:1/span 3;font-size:46px}
 .homepage-reorganized .album-directory-link{grid-column:4/span 1;justify-content:end;margin:0}
 .homepage-reorganized .video-intro{margin-bottom:20px}
 .homepage-reorganized .social-showcase h2{grid-column:1/-1;font-size:44px}
 .homepage-reorganized .home-inquiry .contact-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 18px}
 .homepage-reorganized .contact-copy,.homepage-reorganized .home-inquiry .inquiry{grid-column:1/-1}
 .homepage-reorganized .home-inquiry .inquiry{grid-template-columns:minmax(0,1fr)}
 .homepage-reorganized .folio-footer>div:first-child,.homepage-reorganized .folio-footer>nav{grid-column:1/-1}
 .homepage-reorganized .folio-footer>nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
 .homepage-reorganized .folio-footer .folio-footer-end{flex-direction:column;align-items:start;gap:8px}
}

/* Source: /editorial-grid.css */
/* Structural rails for the editorial modules only. The approved opening and
   interactive media keep their own layout, painting, and motion systems. */
body.editorial {
  --ruled-width: 92%;
  --ruled-max: 1440px;
  --ruled-columns: 12;
  --ruled-gutter: clamp(20px, 2.2vw, 32px);
  --ruled-inset: clamp(18px, 2vw, 28px);
  --ruled-space: clamp(48px, 5.2vw, 76px);
  --ruled-line: #bcb7ad;
}

/* One outer rail pair. Borders occupy the module edges, never its images. */
body.editorial:is(.homepage-reorganized, .moving-edit) :is(.story-editorial, .featured-albums, .social-showcase,
  .album-directory, .album-page, .studio-opening, .studio-process,
  .studio-films, .studio-faq, .editorial-ending, .es-wrap,
  .contact-inner, .folio-footer) {
  box-sizing: border-box;
  position: relative;
  width: var(--ruled-width);
  max-width: var(--ruled-max);
  margin-inline: auto;
  padding-inline: var(--ruled-inset);
  border-inline: 1px solid var(--ruled-line);
}

/* The same tracks govern copy and module headings, including the form/footer. */
body.editorial :is(.story-editorial, .collection-intro, .video-intro,
  .album-page-heading, .studio-opening, .studio-process, .studio-faq,
  .editorial-section-heading, .editorial-ending, .es-hero-heading,
  .es-approach, .es-brief, .es-process, .es-faq, .es-section-top,
  .es-service-index, .contact-inner, .folio-footer) {
  display: grid;
  grid-template-columns: repeat(var(--ruled-columns), minmax(0, 1fr));
  column-gap: var(--ruled-gutter);
  align-items: start;
}

/* A spine occupies a real empty gutter. It ends before photographic bands. */
body.editorial :is(.story-editorial, .studio-process, .studio-faq,
  .es-approach, .es-brief, .es-process, .es-faq, .contact-inner)::before {
  content: '';
  position: absolute;
  inset-block: 0;
  left: calc(25% + var(--ruled-inset) * .5 - var(--ruled-gutter) * .25);
  width: 1px;
  background: var(--ruled-line);
  pointer-events: none;
}

/* Four approved paragraphs, one continuous reading area, unchanged body type. */
body.editorial.homepage-reorganized .story-editorial {
  grid-template-rows: auto;
  row-gap: 0;
  padding-block: var(--ruled-space);
  border-top: 1px solid var(--ruled-line);
  height: auto;
  min-height: 0;
}
body.editorial.homepage-reorganized .story-editorial .home-story-heading {
  display: block;
  grid-column: 1 / span 3;
  grid-row: 1;
}
body.editorial.homepage-reorganized .story-editorial .story-reading {
  grid-column: 4 / -1;
  grid-row: 1;
  width: 100%;
  max-width: 72ch;
  margin: 0;
  font-size: clamp(16px, 1.45vw, 18px);
  line-height: 1.62;
}
body.editorial.homepage-reorganized .story-reading p + p { margin-top: 24px; }
body.editorial.homepage-reorganized .home-story h2 {
  font-size: clamp(44px, 4.2vw, 64px);
  line-height: .94;
  margin: 22px 0 24px;
}
body.editorial.homepage-reorganized .home-story-founders { margin-bottom: 0; }

/* Collection and motion headings share the Story spine; media stays unruled. */
body.editorial.homepage-reorganized :is(.featured-albums, .social-showcase) {
  padding-block: var(--ruled-space);
  border-top: 1px solid var(--ruled-line);
}
body.editorial.homepage-reorganized :is(.collection-intro, .video-intro) {
  position: relative;
  width: 100%;
  max-width: none;
  margin: 0 0 30px;
  padding: 0 0 28px;
  border-bottom: 1px solid var(--ruled-line);
}
body.editorial.homepage-reorganized :is(.collection-intro, .video-intro)::before {
  content: '';
  position: absolute;
  inset-block: calc(-1 * var(--ruled-space)) 0;
  left: calc(25% - var(--ruled-gutter) * .25);
  width: 1px;
  background: var(--ruled-line);
  pointer-events: none;
}
body.editorial.homepage-reorganized .collection-kicker { grid-column: 1 / span 3; }
body.editorial.homepage-reorganized .collection-intro h2 { grid-column: 4 / span 6; }
body.editorial.homepage-reorganized .album-directory-link { grid-column: 10 / span 3; align-self: end; }
body.editorial.homepage-reorganized .social-showcase h2 { grid-column: 4 / -1; }

/* Directory and album photographs remain complete native-ratio compositions. */
body.editorial :is(.album-directory, .album-page) { padding-block: 128px var(--ruled-space); }
body.editorial .album-page-heading {
  position: relative;
  row-gap: 18px;
  margin-bottom: 40px;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--ruled-line);
}
body.editorial .album-page-heading .folio-kicker { grid-column: 1 / span 3; grid-row: auto; }
body.editorial .album-page-heading h1 { grid-column: 4 / -1; }
body.editorial .album-page-heading #portfolio-count { grid-column: 4 / -1; margin: 0; }
body.editorial .album-back { grid-column: 1 / -1; margin-bottom: 8px; }
body.editorial .directory-grid {
  grid-template-columns: repeat(var(--ruled-columns), minmax(0, 1fr));
  gap: var(--ruled-space) var(--ruled-gutter);
}
body.editorial .directory-album { grid-column: 1 / span 6; }
body.editorial .directory-album:nth-child(even) { grid-column: 7 / span 6; margin-top: 72px; }
body.editorial .album-cover { width: calc(75% - var(--ruled-gutter) * .25); margin-bottom: var(--ruled-space); }
body.editorial .album-photo-grid { column-gap: var(--ruled-gutter); }
body.editorial .album-return {
  margin-top: var(--ruled-space);
  padding-top: 22px;
  border-top: 1px solid var(--ruled-line);
}

/* Studio: a six/six opening, then the consistent label/reading split. */
body.editorial .studio-opening { padding-block: 128px var(--ruled-space); row-gap: 28px; }
body.editorial .studio-heading { grid-column: 1 / span 6; grid-row: 1; }
body.editorial .studio-work-image { grid-column: 8 / -1; grid-row: 1 / span 2; padding-top: 0; }
body.editorial .studio-story { grid-column: 1 / span 6; grid-row: 2; padding-top: 0; }
body.editorial :is(.studio-process, .studio-faq, .studio-films, .editorial-ending) {
  padding-block: var(--ruled-space);
  border-top: 1px solid var(--ruled-line);
}
body.editorial :is(.studio-process, .studio-faq) > div:first-child { grid-column: 1 / span 3; }
body.editorial :is(.studio-process, .studio-faq) > :last-child { grid-column: 4 / -1; }
body.editorial :is(.studio-process, .studio-faq) h2 { font-size: clamp(38px, 3.7vw, 56px); }
body.editorial .editorial-section-heading { row-gap: 12px; margin-bottom: 32px; }
body.editorial .editorial-section-heading > .folio-kicker { grid-column: 1 / span 3; grid-row: 1; }
body.editorial .editorial-section-heading > h2 { grid-column: 4 / -1; grid-row: 1; margin: 0; }
body.editorial .editorial-section-heading > p:last-child { grid-column: 4 / -1; }
body.editorial .studio-film-grid { grid-template-columns: 6fr 3fr 3fr; gap: var(--ruled-gutter); }
body.editorial .editorial-ending > h2 { grid-column: 1 / span 6; }
body.editorial .editorial-ending > a { grid-column: 8 / -1; justify-self: end; align-self: end; }

/* Services keep their existing prose, photography, clips and native frames. */
body.editorial .es-page .es-hero { padding-top: 128px; padding-bottom: var(--ruled-space); }
body.editorial .es-page .es-hero-heading { max-width: none; row-gap: 16px; }
body.editorial .es-page .es-hero-heading > .es-kicker { grid-column: 1 / span 3; }
body.editorial .es-page .es-hero-heading > h1 { grid-column: 4 / -1; margin-top: 0; }
body.editorial .es-page .es-hero-spread { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ruled-gutter); }
body.editorial .es-page .es-hero-spread > .es-cover { grid-column: 1 / span 8; }
body.editorial .es-page .es-hero-spread > .es-cover-note { grid-column: 9 / -1; }
body.editorial .es-page .es-hero--portrait .es-cover { grid-column: 1 / span 6; margin-inline: auto; }
body.editorial .es-page .es-hero--portrait .es-cover-note { grid-column: 8 / -1; }
body.editorial .es-page :is(.es-approach, .es-brief, .es-process, .es-faq) {
  padding-block: var(--ruled-space);
  border-top-color: var(--ruled-line);
}
body.editorial .es-page :is(.es-approach, .es-brief, .es-process, .es-faq) > :first-child { grid-column: 1 / span 3; }
body.editorial .es-page :is(.es-approach, .es-brief, .es-process, .es-faq) > :last-child { grid-column: 4 / -1; }
body.editorial .es-page :is(.es-approach, .es-brief, .es-process, .es-faq) h2 { font-size: clamp(38px, 3.7vw, 56px); }
body.editorial .es-page :is(.es-objectives, .es-selection, .es-motion) { padding-block: var(--ruled-space); border-top-color: var(--ruled-line); }
body.editorial .es-page .es-section-top { row-gap: 20px; margin-bottom: 36px; }
body.editorial .es-page .es-section-top > :first-child { grid-column: 1 / span 6; }
body.editorial .es-page .es-section-top > :last-child { grid-column: 8 / -1; }
body.editorial .es-page .es-photo-spreads { column-gap: var(--ruled-gutter); }
body.editorial .es-page .es-motion { grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--ruled-gutter); }
body.editorial .es-page .es-motion-copy { grid-column: 1 / span 6; }
body.editorial .es-page .es-film { grid-column: 8 / -1; }
body.editorial .es-page .es-service-index { margin-bottom: 0; border-bottom: 0; border-top-color: var(--ruled-line); }
body.editorial .es-page .es-service-index > span { grid-column: 1 / span 3; }
body.editorial .es-page .es-service-index > div { grid-column: 4 / -1; }

/* The actual contact module owns its rails, not the surrounding full-width band.
   No form fields, controls, consent, or interaction rules are restyled here. */
body.editorial .contact,
body.editorial.homepage-reorganized .home-inquiry .contact { padding-block: 0; border-top: 0; }
body.editorial .contact-inner {
  row-gap: 32px;
  padding-block: var(--ruled-space);
  border-top: 1px solid var(--ruled-line);
}
body.editorial .inquiry-page .contact-inner { padding-top: 128px; }
body.editorial .contact-inner > .contact-copy { grid-column: 1 / span 3; }
body.editorial .contact-inner > .inquiry { grid-column: 4 / -1; min-width: 0; }
body.editorial .contact-copy :is(h1, h2),
body.editorial .es-page .contact .contact-copy .display { font-size: clamp(38px, 3.7vw, 56px); }
body.editorial .contact-copy .email-link { max-width: 100%; overflow-wrap: anywhere; }
body.editorial .folio-footer {
  padding-block: 30px 22px;
  row-gap: 24px;
  border-top: 1px solid var(--ruled-line);
}
body.editorial .folio-footer > div:first-child {
  grid-column: 1 / span 3;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
}
body.editorial .folio-footer > nav {
  grid-column: 4 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 var(--ruled-gutter);
  min-width: 0;
}
body.editorial .folio-footer > nav { position: relative; }
body.editorial .folio-footer > nav::before {
  content: '';
  position: absolute;
  inset-block: -30px -24px;
  left: calc(var(--ruled-gutter) * -.5);
  width: 1px;
  background: var(--ruled-line);
  pointer-events: none;
}
body.editorial .folio-footer > .folio-footer-end {
  grid-column: 1 / -1;
  margin: 0;
  padding-top: 20px;
  border-top: 1px solid var(--ruled-line);
}

@media (max-width: 1100px) and (min-width: 761px) {
  body.editorial { --ruled-columns: 6; --ruled-gutter: 24px; --ruled-inset: 22px; }
  body.editorial.homepage-reorganized .story-editorial { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  body.editorial.homepage-reorganized .story-editorial .story-reading { font-size: 17px; }
  body.editorial.homepage-reorganized .home-story h2 { font-size: 44px; }
  body.editorial.homepage-reorganized :is(.collection-intro, .video-intro),
  body.editorial :is(.album-page-heading, .studio-process, .studio-faq, .editorial-section-heading,
    .es-hero-heading, .es-approach, .es-brief, .es-process, .es-faq, .es-service-index,
    .contact-inner, .folio-footer) { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  body.editorial .directory-album { grid-column: 1 / span 3; }
  body.editorial .directory-album:nth-child(even) { grid-column: 4 / span 3; }
  body.editorial .studio-heading, body.editorial .studio-story { grid-column: 1 / span 3; }
  body.editorial .studio-work-image { grid-column: 4 / -1; }
  body.editorial .studio-heading h1 { font-size: 58px; }
  body.editorial .editorial-ending > h2 { grid-column: 1 / span 3; }
  body.editorial .editorial-ending > a { grid-column: 4 / -1; }
  body.editorial .es-page .es-section-top > :first-child { grid-column: 1 / span 3; }
  body.editorial .es-page .es-section-top > :last-child { grid-column: 4 / -1; }
  body.editorial .folio-footer > nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.editorial .contact-copy :is(h1, h2),
  body.editorial .es-page .contact .contact-copy .display { font-size: 38px; }
}

@media (max-width: 760px) {
  body.editorial { --ruled-width: 92%; --ruled-columns: 4; --ruled-gutter: 18px; --ruled-inset: 16px; --ruled-space: 42px; }
  /* On a narrow screen only the outside rails and real section breaks remain. */
  body.editorial :is(.story-editorial, .studio-process, .studio-faq, .es-approach,
    .es-brief, .es-process, .es-faq, .contact-inner)::before,
  body.editorial.homepage-reorganized :is(.collection-intro, .video-intro)::before,
  body.editorial .folio-footer > nav::before { content: none; }
  body.editorial :is(.story-editorial, .collection-intro, .video-intro,
    .album-page-heading, .studio-opening, .studio-process, .studio-faq,
    .editorial-section-heading, .editorial-ending, .es-hero-heading,
    .es-approach, .es-brief, .es-process, .es-faq, .es-section-top,
    .es-service-index, .contact-inner, .folio-footer) { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  body.editorial.homepage-reorganized .story-editorial { grid-template-columns: minmax(0, 1fr); }
  body.editorial.homepage-reorganized .story-editorial .home-story-heading { grid-column: 1; grid-row: 1; }
  body.editorial.homepage-reorganized .story-editorial .story-reading { grid-column: 1; grid-row: 2; max-width: none; font-size: 17px; line-height: 1.6; }
  body.editorial.homepage-reorganized .home-story h2 { font-size: 46px; margin-block: 18px 20px; }
  body.editorial.homepage-reorganized :is(.collection-intro, .video-intro) { padding-bottom: 24px; margin-bottom: 24px; }
  body.editorial.homepage-reorganized :is(.collection-kicker, .collection-intro h2, .album-directory-link, .social-showcase h2) { grid-column: 1; margin: 0; }
  body.editorial.homepage-reorganized .album-directory-link { justify-content: start; }
  body.editorial :is(.album-directory, .album-page, .studio-opening) { padding-top: 98px; }
  body.editorial .album-page-heading > :is(.folio-kicker, h1, #portfolio-count, .album-back) { grid-column: 1; grid-row: auto; margin: 0; }
  body.editorial .album-page-heading h1 { font-size: clamp(44px, 12vw, 58px); }
  body.editorial .directory-grid { grid-template-columns: minmax(0, 1fr); }
  body.editorial .directory-album, body.editorial .directory-album:nth-child(even) { grid-column: 1; width: 100%; margin: 0; }
  body.editorial .album-cover { width: 100%; }
  body.editorial .album-photo-grid { grid-template-columns: minmax(0, 1fr); }
  body.editorial .studio-opening { display: grid; }
  body.editorial :is(.studio-heading, .studio-story, .studio-work-image) { grid-column: 1; grid-row: auto; }
  body.editorial .studio-work-image { width: min(100%, 420px); justify-self: end; }
  body.editorial .studio-heading h1 { font-size: clamp(43px, 11.5vw, 55px); }
  body.editorial :is(.studio-process, .studio-faq, .editorial-ending) > *,
  body.editorial .editorial-section-heading > :is(.folio-kicker, h2, p:last-child) { grid-column: 1; grid-row: auto; }
  body.editorial .editorial-ending > a { justify-self: start; }
  body.editorial .studio-film-grid { grid-template-columns: minmax(0, 1fr); row-gap: 32px; }
  body.editorial .studio-film-grid > figure:first-child { width: 100%; }
  body.editorial .studio-film-grid > figure { grid-column: 1; }
  body.editorial .es-page .es-hero { padding-top: 98px; }
  body.editorial .es-page .es-hero-heading > :is(.es-kicker, h1) { grid-column: 1; }
  body.editorial .es-page .es-hero-spread { display: flex; gap: 28px; }
  body.editorial .es-page :is(.es-approach, .es-brief, .es-process, .es-faq, .es-section-top, .es-service-index) > * { grid-column: 1; }
  body.editorial .es-page .es-motion { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  body.editorial .es-page :is(.es-motion-copy, .es-film) { grid-column: 1; }
  body.editorial .contact-inner > :is(.contact-copy, .inquiry) { grid-column: 1; }
  body.editorial .inquiry-page .contact-inner { padding-top: 98px; }
  body.editorial .folio-footer > div:first-child,
  body.editorial .folio-footer > nav,
  body.editorial .folio-footer > .folio-footer-end { grid-column: 1; }
  body.editorial .folio-footer > nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.editorial .folio-footer > .folio-footer-end { flex-direction: column; align-items: start; }
}

/* Mobile photo width repair: undo only this module's 92% shell, text insets,
   and two rail borders. Percentages resolve against the actual page content
   width, so a desktop scrollbar never adds the overflow that 100vw would. */
@media (max-width: 760px) {
  body.editorial.homepage-reorganized .featured-albums { overflow: visible; }
  body.editorial.homepage-reorganized .featured-albums > #collection-carousel {
    --photo-page-width: calc((100% + 2 * var(--ruled-inset) + 2px) / .92);
    width: var(--photo-page-width);
    max-width: none;
    margin-inline: calc((100% - var(--photo-page-width)) / 2);
  }
}

/* Source: /site-navigation.css */
/* Shared site controls; the scene's approved geometry and transparent header stay intact. */
.site-nav-trigger { appearance:none;background:none;border:0;border-radius:0;color:inherit;font:inherit;font-size:13px;min-height:44px;padding:0;cursor:pointer;text-shadow:inherit; }
.site-nav-trigger:hover { text-decoration:underline;text-underline-offset:5px; }
.folio-header .site-nav-trigger:focus-visible { outline:2px solid currentColor;outline-offset:5px; }
.site-navigation-dialog { position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;border:0;padding:clamp(22px,4vw,64px);background:#f4f1ea;color:#1d201f;overflow-y:auto;overscroll-behavior:contain; }
.site-navigation-dialog::backdrop { background:#1d201f80; }
.site-navigation-dialog[open] { display:block; }
.site-navigation-dialog [hidden] { display:none!important; }
.site-panel-header { display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid #bcb7ad; }
.site-panel-header h2 { margin:0;font:500 clamp(30px,4vw,54px)/1.05 'Cormorant Garamond',Georgia,serif; }
.site-navigation-dialog button { appearance:none;min-height:44px;background:none;border:0;color:inherit;font:inherit;font-size:14px;cursor:pointer; }
.site-panel-header button { padding:6px 0 6px 18px;display:flex;align-items:center;gap:22px; }
.site-panel-header button span { font:28px/1 Arial,sans-serif; }
.site-menu-groups { display:grid;grid-template-columns:1fr 1.5fr 1.2fr 1fr;gap:36px;padding-top:42px; }
.site-menu-groups h3 { margin:0 0 20px;font:500 12px/1.5 'DM Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#625f58; }
.site-menu-groups :is(a,button[data-site-privacy]) { display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:clamp(16px,1.6vw,22px);line-height:1.3;padding:8px 0; }
.site-menu-groups a:hover,.site-menu-groups a[aria-current=page] { text-decoration:underline;text-underline-offset:5px; }
.site-navigation-dialog :is(a,button,input):focus-visible { outline:2px solid #1d201f;outline-offset:4px; }
.site-search-switch { margin-top:36px;text-decoration:underline;text-underline-offset:5px;padding:0; }
.site-search-form { margin-top:36px;max-width:900px; }
.site-search-form label { display:block;font-size:15px;line-height:1.5;margin-bottom:16px; }
.site-search-form>div { display:flex;gap:18px;border-bottom:1px solid #1d201f; }
.site-search-form input { flex:1;min-width:0;min-height:56px;background:transparent;border:0;color:inherit;padding:8px 0;font:400 clamp(20px,3vw,32px)/1.3 'DM Sans',Arial,sans-serif; }
.site-search-form button { padding:8px 0 8px 12px; }
.site-search-status { font-size:14px;line-height:1.5;margin:20px 0; }
.site-search-results { list-style:none;margin:0;padding:0;max-width:900px; }
.site-search-results li { border-top:1px solid #d5d0c5; }
.site-search-results a { display:block;padding:16px 4px;text-decoration:none; }
.site-search-results a:hover span { text-decoration:underline;text-underline-offset:4px; }
.site-search-results span { display:block;font:500 28px/1.15 'Cormorant Garamond',Georgia,serif; }
.site-search-results small { display:block;font-size:14px;line-height:1.6;color:#625f58;margin-top:5px; }
.site-search-empty { max-width:65ch;font-size:16px;line-height:1.6; }
.site-search-empty a { display:inline-flex;align-items:center;min-height:44px;margin-right:24px; }
.accessibility-page { padding-top:140px;padding-bottom:70px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px; }
.accessibility-page>.folio-kicker { grid-column:1/4; }
.accessibility-page>h1 { grid-column:5/-1;font:500 clamp(48px,5vw,76px)/1 'Cormorant Garamond',Georgia,serif; }
.accessibility-reading { grid-column:5/-1;max-width:70ch;font-size:18px;line-height:1.65; }
.accessibility-reading h2 { margin:1.5em 0 .6em;font:500 34px/1.1 'Cormorant Garamond',Georgia,serif; }
.accessibility-reading p+p { margin-top:20px; }
@media(max-width:1000px) and (min-width:761px){.folio-header nav { gap:18px; }.folio-brand span{max-width:150px}.site-menu-groups{grid-template-columns:1fr 1fr;gap:32px;}}
@media(max-width:760px){
 .site-navigation-ready .folio-header .site-direct-link { display:none!important; }
 body:not(.site-navigation-ready) .folio-header .site-direct-link:nth-child(2),body:not(.site-navigation-ready) .folio-header .site-direct-link:nth-child(3){display:none;}
 .folio-header .folio-brand span { display:none; }
 .folio-header nav { display:flex;gap:24px!important; }
 .site-nav-trigger { font-size:13px; }
 .site-navigation-dialog { padding:20px; }
 .site-panel-header { padding-bottom:18px; }
 .site-menu-groups { grid-template-columns:1fr 1fr;gap:28px 22px;padding-top:28px; }
 .site-menu-groups :is(a,button[data-site-privacy]) { font-size:17px; }
 .site-menu-groups h3 { margin-bottom:10px; }
 .site-search-form>div { gap:10px; }
 .site-search-form input { font-size:20px; }
 .accessibility-page { display:block;padding-top:110px; }
 .accessibility-page h1 { margin-block:24px; }
 .accessibility-reading { font-size:17px; }
}
@media(max-width:380px){.site-menu-groups {grid-template-columns:1fr;}}

/* Source: /video-accessibility.css */
/* Native, optional visual descriptions. Outside the moving media surfaces. */
.video-visual-description { color:inherit; font:inherit; max-width:72ch; margin-top:18px; }
.video-visual-description--carousel { margin:24px auto 0; width:100%; }
.video-visual-description summary { cursor:pointer; min-height:44px; padding:10px 0; font-size:14px; line-height:1.6; text-decoration:underline; text-underline-offset:4px; }
.video-visual-description summary:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.video-visual-description h3 { font:600 16px/1.5 "DM Sans",sans-serif; margin:24px 0 8px; }
.video-visual-description p { font:400 16px/1.6 "DM Sans",sans-serif; margin:8px 0 20px; max-width:72ch; }
@media(max-width:760px){ .video-visual-description--carousel { margin-top:16px; } }

/* Source: /grid-composition.css */
/* Shared v29 composition. Typography, media geometry and motion are retained. */
body[data-grid-review="refined"] { --composition-line: #bcb7ad; }
body[data-grid-review="refined"].homepage-reorganized :is(.story-editorial,.featured-albums,.social-showcase) { border-inline-color:transparent; }
body[data-grid-review="refined"].homepage-reorganized .story-editorial { border-top:0; }
body[data-grid-review="refined"].homepage-reorganized .story-editorial::before { left:calc(25% + var(--ruled-inset) * .5 - var(--ruled-gutter) * .25); inset-block:var(--ruled-space); }
body[data-grid-review="refined"].homepage-reorganized .story-editorial .story-reading { grid-column:5/-1; max-width:72ch; padding-bottom:30px; border-bottom:0; }
body[data-grid-review="refined"].homepage-reorganized .featured-albums { border-top:0; }
body[data-grid-review="refined"].homepage-reorganized :is(.collection-intro,.video-intro) { border-bottom:0; }
body[data-grid-review="refined"].homepage-reorganized :is(.collection-intro,.video-intro)::before { content:none; }
body[data-grid-review="refined"].homepage-reorganized .collection-intro h2 { grid-column:5/11; }
body[data-grid-review="refined"].homepage-reorganized .album-directory-link { grid-column:11/-1; }
body[data-grid-review="refined"].homepage-reorganized .collection-kicker { padding-top:10px; border-top:1px solid var(--composition-line); }
body[data-grid-review="refined"].homepage-reorganized .social-showcase { border-top:0; }
body[data-grid-review="refined"].homepage-reorganized .video-intro { min-height:0; }
body[data-grid-review="refined"].homepage-reorganized .social-showcase h2 { grid-column:1/8; }
body[data-grid-review="refined"].homepage-reorganized .video-intro::after { content:''; grid-column:9/-1; grid-row:1; height:1px; background:var(--composition-line); margin-top:1.2em; }
body[data-grid-review="refined"].homepage-reorganized .story-editorial::after { content:""; position:absolute; left:calc(25% + var(--ruled-inset) * .5 - var(--ruled-gutter) * .25); right:var(--ruled-inset); bottom:var(--ruled-space); height:1px; background:var(--composition-line); }
body[data-grid-review="refined"].homepage-reorganized .collection-kicker { position:relative; border-top:0; }
body[data-grid-review="refined"].homepage-reorganized .collection-kicker::before { content:""; position:absolute; left:0; top:0; width:calc(100% + var(--ruled-gutter) * .5); height:1px; background:var(--composition-line); }
/* One distinct service sample. Stop module rules before the photographic spans. */
body[data-grid-review="refined"] .es-wrap { border-inline-color:transparent; }
body[data-grid-review="refined"] .es-hero-heading > .es-kicker { grid-column:1/4; }
body[data-grid-review="refined"] .es-hero-heading > h1 { grid-column:5/-1; }
body[data-grid-review="refined"] .es-hero-spread > .es-cover { grid-column:1/10; }
body[data-grid-review="refined"] .es-hero-spread > .es-cover-note { grid-column:10/-1; }
body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq) { border-top:0; }
body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)::before { inset-block:var(--ruled-space); }
body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child { grid-column:5/-1; position:relative; border-top:0; padding-top:24px; }
body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child::before {content:""; position:absolute; top:0; right:0; left:calc((100% + 5 * var(--ruled-gutter)) / -8); height:1px; background:var(--composition-line);}
@media(max-width:760px){
 body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child::before {left:0;}
 body[data-grid-review="refined"].homepage-reorganized .story-editorial::after {left:var(--ruled-inset);}
 body[data-grid-review="refined"].homepage-reorganized .collection-kicker::before {content:none;}
 body[data-grid-review="refined"].homepage-reorganized .story-editorial .story-reading { grid-column:1; padding-bottom:24px; }
 body[data-grid-review="refined"].homepage-reorganized :is(.collection-intro h2,.album-directory-link,.social-showcase h2) { grid-column:1; }
 body[data-grid-review="refined"].homepage-reorganized .video-intro::after { content:none; }
 body[data-grid-review="refined"].homepage-reorganized .collection-kicker { border-top:0; padding-top:0; }
 body[data-grid-review="refined"] .es-hero-heading > :is(.es-kicker,h1),body[data-grid-review="refined"] .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child { grid-column:1; }
}

/* Supporting pages share major alignments, not an identical enclosing box. */
body[data-grid-review="refined"] :is(.album-directory,.album-page,.studio-opening,.studio-process,.studio-films,.studio-faq,.editorial-ending,.contact-inner,.folio-footer) {border-inline-color:transparent;}
body[data-grid-review="refined"] .album-page-heading :is(h1,#portfolio-count) {grid-column:5/-1;}
body[data-grid-review="refined"] .album-page-heading {border-bottom:0;}
body[data-grid-review="refined"] .album-page-heading h1 {padding-bottom:24px;border-bottom:1px solid var(--composition-line);}
body[data-grid-review="refined"] .studio-process>:last-child,body[data-grid-review="refined"] .studio-faq>:last-child {grid-column:5/-1;}
body[data-grid-review="refined"] :is(.studio-process,.studio-faq)::before {inset-block:var(--ruled-space);}
body[data-grid-review="refined"] .editorial-ending {border-top:0;}
body[data-grid-review="refined"] .contact-inner>.inquiry {grid-column:5/-1;}
body[data-grid-review="refined"] .contact-inner::before {inset-block:var(--ruled-space);}
body[data-grid-review="refined"] .folio-footer>nav {grid-column:5/-1;}
body[data-grid-review="refined"] .folio-footer>nav::before {left:calc((100% + 5 * var(--ruled-gutter)) / -8);}
body[data-grid-review="refined"] .es-hero--portrait .es-cover {grid-column:1/span 6;}
body[data-grid-review="refined"] .es-hero--portrait .es-cover-note {grid-column:8/-1;}
@media(min-width:1101px){
 body[data-grid-review="refined"] .directory-album:first-child {grid-column:1/span 8;}
 body[data-grid-review="refined"] .directory-album:nth-child(3) {grid-column:1/span 7;}
 body[data-grid-review="refined"] .editorial-ending>h2 {grid-column:1/span 8;}
 body[data-grid-review="refined"] .editorial-ending>a {grid-column:10/-1;}
}
@media(max-width:760px){
 body[data-grid-review="refined"] .album-page-heading :is(h1,#portfolio-count),body[data-grid-review="refined"] .studio-process>:last-child,body[data-grid-review="refined"] .studio-faq>:last-child,body[data-grid-review="refined"] .contact-inner>.inquiry,body[data-grid-review="refined"] .folio-footer>nav {grid-column:1;}
 body[data-grid-review="refined"] .album-page-heading h1 {padding-bottom:20px;}
}

/* v31: the homepage previously retained four mobile tracks from its older
   refinement layer. Keep the bottom inquiry as one full-width reading/form
   stack; this override applies only to that homepage module below 761px. */
@media(max-width:760px){
 body[data-grid-review="refined"].homepage-reorganized .home-inquiry .contact-inner {grid-template-columns:minmax(0,1fr);}
 body[data-grid-review="refined"].homepage-reorganized .home-inquiry .contact-inner > :is(.contact-copy,.inquiry) {grid-column:1/-1;min-width:0;max-width:100%;}
 body[data-grid-review="refined"].homepage-reorganized .home-inquiry .inquiry {grid-template-columns:minmax(0,1fr);}
}

/* Source: /portfolio-refinement.css */
/* 2026-10-22 refinement: content proportions rather than decorative rails.
   The approved scene, title occlusion and interactive rings are untouched. */
body.editorial .album-directory { max-width:1240px; }
body.editorial .directory-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:72px 36px; align-items:start; }
body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1/span 5; width:100%; max-width:440px; margin:0; }
body.editorial .directory-grid .directory-album:nth-child(even) { grid-column:8/span 5; margin-top:96px; }
body.editorial .directory-grid .directory-album:nth-child(3) { grid-column:2/span 5; }
body.editorial .directory-grid .directory-album:nth-child(5) { grid-column:1/span 6; max-width:510px; }
body.editorial .directory-grid img { width:100%; height:auto; max-height:560px; object-fit:contain; object-position:left bottom; }
body.editorial .directory-album>span { font-size:clamp(25px,2.3vw,32px); line-height:1.15; }
body.editorial .album-cover { width:min(70%,780px); margin-bottom:64px; }
body.editorial .album-cover img { max-height:650px; }
body.editorial .album-photo-grid { gap:56px 7%; }
body.editorial .album-photo { margin:0; cursor:default; }
body.editorial .album-photo img { max-height:740px; object-fit:contain; }
body.editorial .album-photo-number { font-variant-numeric:tabular-nums; }
body.editorial .es-page .es-photo-spreads { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:48px 32px; align-items:start; }
body.editorial .es-page .es-photo-spreads .es-frame { width:100%; padding:0; margin:0; grid-column:1/span 6; }
body.editorial .es-page .es-photo-spreads .es-frame:nth-child(even) { grid-column:8/span 5; margin-top:64px; }
body.editorial .es-page .es-frame img { max-height:560px; width:100%; object-fit:contain; object-position:left bottom; }
body.editorial .es-page .es-hero-spread { grid-template-columns:repeat(12,minmax(0,1fr)); gap:32px; }
body.editorial .es-page .es-hero-spread>.es-cover { grid-column:1/span 8; }
body.editorial .es-page .es-hero-spread>.es-cover-note { grid-column:9/-1; min-width:0; }
body.editorial .es-page .es-hero--portrait .es-cover { grid-column:2/span 5; max-width:400px; }
body.editorial .es-page .es-hero--portrait .es-cover-note { grid-column:8/-1; }
body.editorial .es-page .es-cover img { max-height:570px; object-fit:contain; }
body.editorial .es-page .es-hero { padding-bottom:60px; }
body.editorial .es-page .es-selection { padding-block:56px; }
body.editorial .es-page .es-section-top { margin-bottom:38px; }
body.editorial :is(.es-hero-heading,.album-page-heading,.studio-heading) h1 { overflow-wrap:normal; }
body.editorial .es-page :is(.es-service-index a,.album-return a) { min-height:44px; }
/* Remove ornamental long rails; hierarchy comes from real column alignment. */
body.editorial :is(.es-approach,.es-brief,.es-process,.es-faq,.studio-process,.studio-faq)::before,
body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child::before { content:none; }
@media(min-width:1600px) { body.editorial .directory-grid { gap:88px 48px; } }
@media(min-width:761px) and (max-width:1100px) {
 body.editorial .es-page .es-hero-spread>.es-cover { grid-column:1/span 7; }
 body.editorial .es-page .es-hero-spread>.es-cover-note { grid-column:8/-1; }
 body.editorial .es-page .es-hero-heading h1 { font-size:clamp(48px,6vw,68px); }
 body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1/span 6; max-width:380px; }
 body.editorial .directory-grid .directory-album:nth-child(even) { grid-column:8/span 5; }
}
@media(max-width:760px) {
 body.editorial { --ruled-width:100%; --ruled-inset:clamp(20px,5vw,32px); --ruled-gutter:20px; }
 body.editorial :is(.album-directory,.album-page) { padding-top:104px; padding-bottom:56px; }
 body.editorial .album-page-heading { margin-bottom:32px; }
 body.editorial .album-page-heading h1 { font-size:clamp(40px,10.8vw,64px); }
 body.editorial .directory-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:40px; }
 body.editorial .directory-grid .directory-album:nth-child(n) { grid-column:1; width:100%; max-width:430px; margin:0; justify-self:start; }
 body.editorial .directory-grid .directory-album:nth-child(even) { width:90%; justify-self:end; }
 body.editorial .directory-grid img { max-height:500px; }
 body.editorial .album-cover { width:100%; margin-bottom:38px; }
 body.editorial .album-photo-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
 body.editorial .album-page .album-photo:nth-child(n) { width:100%; margin:0; }
 body.editorial .album-photo img { max-height:600px; }
 body.editorial .es-page .es-hero { padding-top:104px; padding-bottom:40px; }
 body.editorial .es-page .es-hero-heading { display:block; margin-bottom:24px; }
 body.editorial .es-page .es-hero-heading h1 { font-size:clamp(40px,10.7vw,64px); margin-top:16px; }
 body.editorial .es-page .es-hero-spread, body.editorial .es-page .es-hero--portrait .es-hero-spread { display:flex; flex-direction:column; gap:24px; }
 body.editorial .es-page .es-hero-spread>:is(.es-cover,.es-cover-note) { grid-column:auto; width:100%; max-width:none; margin:0; padding:0; }
 body.editorial .es-page .es-hero--portrait .es-cover { max-width:360px; align-self:center; }
 body.editorial .es-page .es-cover img { max-height:490px; }
 body.editorial .es-page .es-intro { font-size:16px; line-height:1.65; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq,.es-motion,.es-section-top) { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq,.es-motion) { padding-block:40px; }
 body.editorial .es-page :is(.es-approach,.es-brief,.es-process,.es-faq)>:last-child { grid-column:1; padding-top:0; }
 body.editorial .es-page :is(h2) { font-size:clamp(36px,9.5vw,54px); }
 body.editorial .es-page .es-selection { padding-block:40px; }
 body.editorial .es-page .es-photo-spreads { display:grid; grid-template-columns:minmax(0,1fr); gap:30px; }
 body.editorial .es-page .es-photo-spreads .es-frame:nth-child(n) { grid-column:1; width:100%; max-width:420px; margin:0; padding:0; justify-self:start; }
 body.editorial .es-page .es-photo-spreads .es-frame:nth-child(even) { width:88%; justify-self:end; }
 body.editorial .es-page .es-frame img { max-height:460px; }
 body.editorial .es-page .es-service-index>div { flex-wrap:wrap; gap:8px 20px; }
 body.editorial .es-page .es-service-index a { font-size:14px; }
 body.editorial .es-page .es-film--portrait { max-width:290px; }
 body.editorial .es-page .contact-inner { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; }
 body.editorial .es-page .contact-inner>:is(.contact-copy,.inquiry) { grid-column:1; }
 body.editorial .es-page .inquiry { grid-template-columns:minmax(0,1fr); }
 body.editorial .es-page :is(.es-cover-note,.es-frame,.es-section-copy,.es-process-list,.es-faq-list) { min-width:0; }
}
@media(max-width:360px) {
 body.editorial .es-page .es-hero-heading h1 { font-size:38px; }
 body.editorial .album-page-heading h1 { font-size:38px; }
 body.editorial .es-page :is(.es-cover,.es-frame) figcaption { flex-wrap:wrap; gap:4px 12px; }
}
/* Approved rings keep their geometry and input behavior; only visual bleed
   beyond the physical section/viewport is clipped (no scroll container). */
body.scene-home #collections,
body.scene-home #social-video { overflow-x:clip; }

/* Source: /finish-20261026.css */
/* Final editorial pass: shared tracks, readable captions, and clear controls.
   The approved fullscreen scene and its typography remain untouched. */
/* Sections already carry fixed-header scroll margins. Avoid a second offset. */
html:has(body.editorial) { scroll-padding-top:0; }
body.scene-home.scene-paper .site-header { background:var(--paper); color:var(--ink); text-shadow:none; }
body.scene-home #collections { scroll-margin-top:76px; }
body.editorial .collection-summary {
  grid-column:5 / 10;
  max-width:46ch;
  font-size:15px;
  line-height:1.65;
  color:var(--muted, #625f58);
}
body.editorial .collection-summary a { text-underline-offset:4px; }
body.editorial.homepage-reorganized .collection-intro { row-gap:18px; }
body.editorial.homepage-reorganized .collection-intro .album-directory-link { grid-row:1; }
body.editorial.homepage-reorganized .story-editorial { padding-block:56px; }
body.editorial.homepage-reorganized .story-editorial::before,
body.editorial.homepage-reorganized .story-editorial::after { content:none; }
body.editorial.homepage-reorganized .story-editorial .story-reading {
  padding:0;
  max-width:80ch;
  font-size:17px;
  line-height:1.65;
}
body.editorial .carousel-hint {
  font-size:12px;
  line-height:1.6;
  letter-spacing:.01em;
  color:var(--muted, #625f58);
  text-align:center;
  margin:0 auto 8px;
  padding-inline:20px;
}
body.editorial .depth-carousel[data-kind='video'] .depth-controls { width:min(94%,720px); }
body.editorial .depth-carousel[data-kind='video'] .depth-status { flex-basis:42ch; }
body.editorial .media-load-error {
  margin:20px auto;
  padding:16px 20px;
  max-width:64ch;
  border:1px solid var(--line, #bcb7ad);
  font-size:14px;
  line-height:1.6;
}
body.editorial .media-load-error button {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-left:10px;
  padding:4px 10px;
  border:1px solid currentColor;
  color:inherit;
  background:transparent;
  font:inherit;
  cursor:pointer;
}
body.editorial :is(input,textarea,select) { scroll-margin-block:100px 32px; }
body.editorial :is(.album-return,.es-service-index) a { text-underline-offset:4px; }
@media(min-width:1101px) {
  body.editorial.homepage-reorganized .story-editorial .story-reading {
    column-count:2;
    column-gap:36px;
  }
  body.editorial.homepage-reorganized .story-reading p { break-inside:avoid; }
  body.editorial.homepage-reorganized .story-reading p + p { margin-top:20px; }
}
@media(max-width:760px) {
  body.scene-home #collections { scroll-margin-top:64px; }
  body.editorial .collection-summary { grid-column:1; max-width:38ch; font-size:15px; }
  body.editorial.homepage-reorganized .collection-intro .album-directory-link { grid-row:auto; }
  body.editorial.homepage-reorganized .story-editorial { padding-block:40px; }
  body.editorial.homepage-reorganized .story-editorial .story-reading { font-size:16px; line-height:1.65; }
  body.editorial .carousel-hint { font-size:11px; }
  body.editorial .depth-carousel[data-kind='video'] .depth-status { font-size:12px; }
}

