/* Hero and about page: editorial composition built around the client’s actual portraits. */
.hero.hero-editorial { position:relative; isolation:isolate; height:min(960px,calc(100svh - 54px)); min-height:690px; max-height:none; overflow:hidden; background:#111111; color:#f9f8f5; }
.hero-frame {position:absolute; top:0; bottom:0; left:50%; width:min(100%, 960px); transform:translateX(-50%); overflow:hidden;}
.hero-frame>img { width:100%; height:100%; object-fit:cover; object-position:center 38%; transform:translate3d(0,var(--story-y,0px),0) scale(1.035); }
.hero-vignette {position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#111 0%,transparent 20%,transparent 80%,#111 100%),linear-gradient(0deg,rgba(17,17,17,.90),rgba(17,17,17,.05) 47%,rgba(17,17,17,.12));}
.hero-editorial .hero-side {top:42%;left:4%;color:#f8f7f3;font-size:11px;text-shadow:0 1px 5px #000;}
.hero-editorial .hero-portfolio {top:42%;right:4%;color:#fff;background:none;text-shadow:0 1px 5px #000;}
.hero-editorial-title {position:absolute;left:3%;right:3%;bottom:6%;text-align:center;animation:hero-arrive 1s ease both;}
.hero-editorial-title h1 {margin:0;line-height:1;letter-spacing:-.055em;}
.hero-line {display:flex;justify-content:center;align-items:baseline;gap:clamp(7px,1.4vw,25px);white-space:nowrap;}
.hero-line-first {padding-right:2%;}.hero-line-second {padding-left:8%;margin-top:-.01em;}
.hero-line-second .hero-hand { margin-left: .12em; }
.hero-strong {font-family:var(--sans);font-size:clamp(43px,6.5vw,104px);font-weight:700;letter-spacing:-.07em;}
.hero-hand {font-family:var(--script);font-size:clamp(46px,7.3vw,118px);font-weight:400;text-transform:none;letter-spacing:-.055em;line-height:1.25;}
.hero-editorial .hero-scroll {z-index:2;bottom:20px;}
.site-header.on-hero {color:#fff;background:none;text-shadow:0 1px 4px #0009;}
.about-editorial-intro {padding-top:90px;padding-bottom:42px;}
.about-editorial-intro h1 {max-width:1180px; font-family:var(--sans); font-size:clamp(55px,7.5vw,115px);line-height:1.18;font-weight:600;letter-spacing:-.065em;}
.about-editorial-intro h1 .script {font-size:.77em;letter-spacing:-.065em;font-weight:400;white-space:nowrap;}
.about-editorial-intro-bottom {display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c8c5bd;margin-top:60px;padding-top:19px;font-size:9px;letter-spacing:.13em;}
.about-editorial-story {padding-top:40px;padding-bottom:130px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.9fr);gap:9vw;align-items:center;}
.about-editorial-photo {position:relative;overflow:hidden;background:#24221f;}
.about-editorial-photo img {height:100%;width:100%;object-fit:cover;object-position:center;transform:translate3d(0,var(--story-y,0px),0) scale(1.10);will-change:transform;}
.about-main-photo {height:min(780px,64vw);min-height:560px;}
.about-photo-label {position:absolute;left:24px;bottom:21px;font-size:9px;color:#fff;letter-spacing:.13em;text-shadow:0 1px 5px #000;}
.about-editorial-copy {max-width:550px;}
.about-script {display:block;font-size:clamp(30px,3vw,48px);line-height:1.45;margin-bottom:32px;}
.about-editorial-copy h2,.about-experience-copy h2 {font-size:clamp(38px,4.25vw,65px);line-height:1.1;font-weight:600;letter-spacing:-.055em;margin-bottom:32px;}
.about-editorial-copy h2 span {color:#8f8b81;}
.about-copy-prose p {max-width:550px;font-size:14px;color:#575851;line-height:1.95;margin-top:20px;}
.about-cta {display:inline-flex;gap:25px;align-items:center;font-size:10px;font-weight:600;letter-spacing:.12em;padding-bottom:11px;border-bottom:1px solid currentColor;margin-top:32px;}
.about-cta svg {width:17px;height:17px;transition:transform .2s;}.about-cta:hover svg {transform:translate(4px,-4px)}
.about-manifesto {background:#1b1b19;color:#eeeae4;text-align:center;}
.about-manifesto-inner {padding-top:120px;padding-bottom:125px;}
.about-manifesto .eyebrow {color:#b7b3aa;}
.about-manifesto-quote {max-width:1020px;margin:0 auto;font-size:clamp(35px,5vw,76px);line-height:1.28;letter-spacing:-.055em;}
.about-manifesto-quote .script {font-size:.9em;line-height:1.4;}
.about-author {display:block;margin-top:38px;font-size:9px;letter-spacing:.17em;}
.about-editorial-experience {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:10vw;align-items:center;padding-top:140px;padding-bottom:140px;}
.about-experience-copy {max-width:530px;}.about-experience-copy h2 .script {font-size:.8em;line-height:1.5;font-weight:400;}
.about-side-photo {height:min(740px,62vw);min-height:510px;}
.about-editorial-finale {position:relative;min-height:660px;display:grid;place-items:center;text-align:center;color:#fff;background:#111;isolation:isolate;overflow:hidden;}
.about-final-photo {position:absolute;inset:0;z-index:-2;background:#141414;}
.about-final-photo img {max-width:960px;margin:auto;}
.about-editorial-finale::after {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#111 0%,#1118 28%,#1118 72%,#111 100%);}
.about-final-copy {padding:110px 20px;}.about-final-copy h2 {font-size:clamp(45px,6vw,85px);line-height:1.3;font-weight:600;}.about-final-copy h2 .script {font-size:.72em;font-weight:400;}
.about-cta-light {color:#fff;}
@media(max-width:900px){.hero-editorial .hero-side{top:31%;}.hero-editorial .hero-portfolio{top:31%;}.hero-editorial-title{bottom:11%;}.hero-strong{font-size:6.4vw;}.hero-hand{font-size:7.4vw;}}
@media(max-width:760px){
 .hero.hero-editorial{height:calc(100svh - 44px);min-height:620px;max-height:840px;}
 .hero-frame{width:100%;}.hero-frame>img{object-position:50% 30%;}
 .hero-vignette{background:linear-gradient(0deg,#111 0%,#1118 32%,transparent 55%),linear-gradient(90deg,#1117,transparent 20%,transparent 80%,#1117);}
 .hero-editorial .hero-side{top:23%;left:6%;font-size:9px;}.hero-editorial .hero-side span{font-size:9px;margin-top:8px;}
 .hero-editorial .hero-portfolio{top:30%;left:6%;right:auto;font-size:9px;}
 .hero-editorial-title{left:3%;right:3%;bottom:14%;}
 .hero-line{gap:1.1vw;}.hero-line-first{padding:0}.hero-line-second{padding:0;margin-top:2vw}
 .hero-strong{font-size:6.7vw;letter-spacing:-.065em;}.hero-hand{font-size:7.8vw;letter-spacing:-.06em;}
 .about-editorial-intro{padding-top:55px;padding-bottom:35px;}.about-editorial-intro h1{font-size:clamp(46px,10vw,73px);line-height:1.22}.about-editorial-intro h1 .script{white-space:normal;}
 .about-editorial-intro-bottom{margin-top:38px;gap:12px;font-size:8px;}.about-editorial-intro-bottom span{text-align:right;}
 .about-editorial-story,.about-editorial-experience{grid-template-columns:1fr;gap:45px;padding-top:20px;padding-bottom:80px;}
 .about-main-photo{height:125vw;min-height:0;max-height:630px;}.about-editorial-copy{padding-top:5px;}.about-script{font-size:35px;margin-bottom:20px;}
 .about-editorial-copy h2,.about-experience-copy h2{font-size:38px;}.about-copy-prose p{font-size:13px;}
 .about-manifesto-inner{padding-top:85px;padding-bottom:90px;}.about-manifesto-quote{font-size:37px;line-height:1.3;}
 .about-editorial-experience{padding-top:80px;}.about-side-photo{height:120vw;min-height:0;max-height:620px;}
 .about-editorial-finale{min-height:550px;}.about-final-copy h2{font-size:45px;}
}
@media(prefers-reduced-motion:reduce){.hero-frame>img,.about-editorial-photo img{transform:none;will-change:auto}.hero-editorial-title{animation:none}}
.about-editorial-intro h1 .script { display:inline-block; white-space:nowrap; margin-left:.10em; }
@media (max-width:760px) { .about-editorial-intro h1 { font-size:clamp(32px,9.7vw,46px); } }
/* Limit enlargement of the original portrait, particularly on high-density phones. */
.hero-frame { width: min(90vw, 840px); -webkit-mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent); mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent); }
.hero-frame > img { height: auto; object-fit: contain; object-position: center top; transform: translate3d(0,var(--story-y,0px),0); -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent); mask-image: linear-gradient(180deg, #000 70%, transparent); }
@media(max-width:760px) { .hero-frame { width: min(138vw, 600px); } }
