/* Light palette and quieter typography; motion remains in motion.css. */
:root{color-scheme:light;--muted:#5b6464;--line:#d9dfde;--panel:#f3f6f5;--text:#121919;--accent-text:#08777a}
body{background:#fff;color:var(--text);font-size:16px}
p{color:var(--muted)}
.eyebrow{letter-spacing:1.2px;font-size:12px}
.teal.eyebrow,.eyebrow .teal,.form-status,.dialog-copy h3{color:var(--accent-text)}
.outline{-webkit-text-stroke-color:#596e6e}
.gradient-text{background:none;color:var(--teal);-webkit-text-fill-color:var(--teal)}
.text-link{font-size:14px;border-color:#a4b1af;gap:20px}
.text-link:hover{color:var(--accent-text)}
.pill-button{font-size:14px;border-radius:5px;padding:14px 20px;font-weight:700;box-shadow:none}
.pill-button:hover{background:#0b8e91;border-color:#0b8e91;box-shadow:none;color:#000;transform:translateY(-2px)}
.brand-name{font-size:13px;letter-spacing:1px}
.brand-mark{border-radius:4px}
.main-nav>a{font-size:14px;color:#596363}
.main-nav>a:hover,.main-nav>a[aria-current]{color:#000}
.header-contact{color:var(--text);border-color:#bdc8c6;font-size:13px;border-radius:5px;background:transparent}
.menu-toggle i{background:#172222}
.hero-orbit,.scene-rings,.identity-orbit,.heading-asterisk,.large-asterisk,.manifesto-star{display:none}

/* A personal introduction, without a project mockup or placeholder portrait. */
.cinema-ready .hero-reel{height:140svh}
.hero,.cinema-ready .hero{padding-top:38px;padding-bottom:36px}
.cinema-ready .hero{height:calc(100svh - 100px);min-height:640px}
.hero-meta{color:var(--muted);font-size:12px;letter-spacing:1.1px}
.hero-title,.cinema-ready .hero-title{background:none;color:var(--teal);-webkit-text-fill-color:var(--teal);font-size:clamp(100px,20vw,290px);letter-spacing:-.025em;margin-top:18px;line-height:1.15;text-align:left}
.hero-content,.cinema-ready .hero-content{grid-template-columns:1.1fr 1fr;align-items:start;gap:60px;min-height:0;max-width:none;margin:30px 0 80px}
.hero-intro,.cinema-ready .hero-intro{padding-top:0;grid-row:auto;grid-column:auto}
.hero-intro>.eyebrow{font-size:13px;text-transform:none;letter-spacing:0}
.hero-intro h2,.cinema-ready .hero-intro h2{font-size:clamp(46px,6.4vw,92px);color:var(--text);margin:10px 0 20px;letter-spacing:-.025em;white-space:nowrap}
.hero-note,.cinema-ready .hero-note{justify-self:stretch;align-self:start;padding-top:22px;grid-row:auto;grid-column:auto}
.hero-note p{font-size:clamp(17px,1.65vw,22px);font-weight:400;line-height:1.65;color:#3f4c4c;letter-spacing:-.3px;margin:0}
.hero-actions{display:flex;gap:26px;align-items:center;margin-top:30px;flex-wrap:wrap}
.hero-bottom,.cinema-ready .hero-bottom{color:#596363;font-size:11px;letter-spacing:.8px;border-top:1px solid var(--line);padding:22px 0 0;bottom:60px;gap:20px;align-items:center}
.hero-bottom a{display:flex;align-items:center;gap:20px;white-space:nowrap}

/* Keep the original dark project imagery inside light presentation surfaces. */
.work-reel,.work-stage{background:#f1f5f4}
.scene-kicker,.gallery-intro p:last-child,.gallery-instruction{color:#526564;font-size:12px}
.gallery-intro .eyebrow{color:var(--accent-text);font-size:12px}
.gallery-intro p:last-child{font-size:15px;line-height:1.7}
.gallery-link{font-size:14px}
.gallery-stage-count{color:#b8d2ce}
.gallery-heading{color:#08a4a7;opacity:.85}
.gallery-heading span{-webkit-text-stroke-color:#08a4a7}
.reel-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;background:#fff;border-color:#bccdca;box-shadow:0 18px 35px #183c3420;border-radius:8px}
.reel-card:after{display:none}
.reel-card img{opacity:1}
.reel-card-label{background:#fff;color:#162322;border-top:1px solid #e0e7e5;padding:13px 16px}
.reel-card-label strong{font-size:15px}
.reel-card-label small{color:#5b6d69;font-size:11px;letter-spacing:.6px}
.gallery-status .eyebrow{color:#526564;font-size:11px;letter-spacing:.7px}
.gallery-current span{color:#243b37;font-size:14px}
.gallery-prev,.gallery-next{background:#fff;border-color:#b5c8c3;color:#253d38}
.gallery-dots button:before{background:#b8cac5}
.gallery-controls button:disabled{opacity:.45}
.motion-switch{background:#fffffff2;border-color:#c5d4d0;color:#435b54;box-shadow:0 3px 12px #183c3409;font-size:11px;padding:8px 12px}
.motion-switch:hover{color:#000}
.film-stage{background:#fff}
.film-window{background:#eef4f1;border-color:#c3d2cc;box-shadow:0 16px 40px #183c3415}
.film-title{color:var(--teal)}
.film-caption p{font-size:14px}
.film-caption .eyebrow{font-size:12px}
.film-caption .text-link{font-size:14px}
.film-caption h3{font-size:32px}
.manifesto{padding-block:110px}
.manifesto-meta .eyebrow{font-size:12px}
.ink-line,.cinema-static .ink-line{color:var(--text)}
.cinema-ready .ink-line{background-image:linear-gradient(90deg,#182422 0%,#182422 var(--ink,0%),#ccd8d4 var(--ink,0%),#ccd8d4 100%)}
.cinema-ready .ink-line:last-child{background-image:linear-gradient(90deg,#08a4a7 0%,#08a4a7 var(--ink,0%),#c7dfda var(--ink,0%),#c7dfda 100%)}
.manifesto-bottom p{font-size:16px;max-width:570px;line-height:1.85}
.manifesto-bottom a{font-size:14px}
.end-scene{background:#f1f5f4;min-height:720px;height:90svh;border-top:1px solid var(--line)}
.end-scene>.eyebrow{color:#526564;font-size:13px}
.end-scene h2{color:#172422;font-size:clamp(100px,23vw,320px)}
.end-orb{background:var(--teal);color:#000;box-shadow:none;border:8px solid #f1f5f4;width:clamp(130px,17vw,230px);top:43%}
.end-orb:hover{background:#08777a;color:#fff}
.end-copy h3{font-size:clamp(30px,3.6vw,50px)}
.end-copy{bottom:14%}
.end-signature{color:#526564;font-size:11px}

/* Interior pages, project details, and form controls. */
.page-intro>.eyebrow,.cta>.eyebrow{color:#596763}
.intro-bottom p{font-size:16px}
.intro-bottom .eyebrow{font-size:12px}
.identity-art{background:#eef5f2;border-color:#d2e0da}
.identity-art>.eyebrow,.identity-bottom{color:#527166;font-size:12px}
.identity-art>strong{text-shadow:none}
.story-copy p:not(.eyebrow),.focus-row p,.process-grid p,.project-copy p:not(.eyebrow){font-size:16px;line-height:1.8}
.project-visual{background:#edf3f0;border-color:#d1dfd8}
.project-visual:after{display:none}
.project-preview{box-shadow:0 18px 28px #142f2520;border-color:#a2b5ac}
.project-number,.visual-play{color:#4c675b;font-size:12px}
.tags span{color:#4d6259;border-color:#c8d7cf;font-size:12px}
.filter{border-color:#c8d5cf;font-size:14px}
.filter span{color:#596b63;font-size:12px}
.next-work p{font-size:15px}
.empty-state{background:#f5f8f6}
.empty-state p{font-size:16px}
.cta{background:none}
.cta-title:hover>span:first-child{color:#08777a}
.cta-bottom{color:#5b6862;font-size:14px}
.footer-copy,.footer-links,.footer-top{color:#596b63;font-size:13px}
.contact-aside>p,.contact-note p{font-size:16px;max-width:360px}
.contact-note .eyebrow{font-size:12px}
.field label,.interest-field legend{font-size:15px}
.field .optional{font-size:13px}
.field input,.field textarea,.field select{color:#172a21;border-color:#b7c7be;font-size:16px;color-scheme:light}
.field input::placeholder,.field textarea::placeholder{color:#697d72}
.field select option{background:#fff;color:#172a21}
.interest-options span{border-color:#c0d0c6;font-size:13px}
.interest-options input:checked+span{color:#086d6f;background:#e9f6f4}
.form-note{font-size:13px}
.form-status{font-size:14px}
.project-dialog{background:#fff;color:#182422;border-color:#c1d1c9;box-shadow:0 30px 90px #15281e40}
.project-dialog::backdrop{background:#14231d99;backdrop-filter:blur(6px)}
.dialog-top{background:#fffffff5}
.dialog-top .eyebrow{color:#52675b;font-size:12px}
.dialog-close{color:#182422;border-color:#b9cbc0}
.dialog-copy p{font-size:15px}
.dialog-copy h3{font-size:12px}
.dialog-copy ul{color:#52675b;font-size:14px}
.dialog-caption{color:#63786b;font-size:12px!important}

@media(max-width:1100px){
  .hero-content,.cinema-ready .hero-content{gap:35px}
  .main-nav{gap:24px}
  .gallery-bottom{grid-template-columns:1fr auto 1fr}
}
@media(max-width:760px){
  .main-nav{background:#fff;border-color:#c8d8cf;box-shadow:0 15px 35px #173f2820}
  .brand-name{font-size:11px;letter-spacing:.5px}
  .header-contact{font-size:12px;padding:9px 12px;gap:12px}
  .hero-meta{font-size:11px;letter-spacing:.5px;gap:16px}
  .hero-meta>span:last-child{text-align:right;max-width:100px}
  .hero,.cinema-ready .hero{padding-top:28px;min-height:630px;height:calc(100svh - 80px)}
  .cinema-ready .hero-reel{height:130svh}
  .hero-title,.cinema-ready .hero-title{font-size:21vw;margin-top:28px;line-height:1.2}
  .hero-content,.cinema-ready .hero-content{grid-template-columns:1fr;gap:28px;margin:34px 0 90px}
  .hero-intro h2,.cinema-ready .hero-intro h2{font-size:clamp(48px,12vw,76px);margin-bottom:14px}
  .hero-intro .text-link{font-size:14px}
  .hero-note,.cinema-ready .hero-note{padding:0}
  .hero-note p{font-size:17px;letter-spacing:0}
  .hero-actions{gap:22px;margin-top:23px}
  .hero-actions .pill-button{font-size:13px;padding:12px 16px}
  .hero-actions .text-link{font-size:13px;gap:13px}
  .hero-bottom,.cinema-ready .hero-bottom{font-size:11px;letter-spacing:0;bottom:60px;padding-top:16px;line-height:1.6}
  .hero-bottom>span{max-width:170px}
  .hero-bottom a{gap:12px}
  .scene-kicker{font-size:11px;letter-spacing:.5px;gap:18px;top:4%}
  .scene-kicker span:last-child{max-width:135px}
  .gallery-intro .eyebrow{font-size:11px}
  .gallery-intro p:last-child{font-size:13px}
  .gallery-link{font-size:12px;gap:12px}
  .reel-card{aspect-ratio:.81}
  .reel-card-label{padding:12px 14px}
  .reel-card-label strong{font-size:14px}
  .reel-card-label small{font-size:10px}
  .gallery-status .eyebrow{font-size:10px;letter-spacing:.2px}
  .gallery-current span{font-size:12px}
  .gallery-bottom{grid-template-columns:1fr auto;gap:14px;bottom:70px}
  .gallery-heading{bottom:23%}
  .gallery-instruction{font-size:11px;letter-spacing:.4px}
  .gallery-dots button{width:12px}
  .gallery-dots{gap:3px}
  .gallery-controls{gap:8px}
  .motion-switch{font-size:11px;right:12px;bottom:10px}
  .film-caption{gap:18px;grid-template-columns:1fr}
  .film-caption h3{font-size:26px}
  .film-caption p{display:none}
  .film-caption .eyebrow{font-size:11px}
  .film-caption .text-link{grid-column:auto;font-size:13px}
  .film-window{top:28%}
  .film-caption{bottom:7%}
  .manifesto{padding-block:75px}
  .manifesto-meta .eyebrow{font-size:11px}
  .manifesto h2{font-size:10.5vw;line-height:1.2}
  .manifesto-bottom p{font-size:16px}
  .manifesto-bottom .text-link{font-size:14px}
  .end-scene{min-height:650px;height:90svh;padding-top:38px}
  .end-scene>.eyebrow{font-size:12px}
  .end-scene h2{font-size:22vw;top:20%}
  .end-orb{top:43%;width:140px}
  .end-copy h3{font-size:30px}
  .end-signature{font-size:11px}
  .intro-bottom{display:block}
  .intro-bottom .eyebrow{display:block;text-align:left;max-width:none;margin-top:18px}
  .page-intro>.eyebrow{font-size:12px}
  .identity-art>.eyebrow,.identity-bottom{font-size:11px}
  .filter{font-size:13px;padding:10px 12px}
  .filter span{font-size:11px}
  .cta-bottom{flex-direction:column;gap:20px}
  .cta-bottom>span{max-width:none;font-size:14px}
  .footer-links{font-size:12px;gap:16px}
  .footer-top,.footer-copy{font-size:12px}
  .footer-copy{padding-bottom:20px}
}
@media(max-height:720px){
  .cinema-ready .hero-reel{height:auto}
  .hero,.cinema-ready .hero{position:relative;min-height:0;height:auto;padding-bottom:28px}
  .hero-content,.cinema-ready .hero-content{margin-bottom:36px}
  .hero-title,.hero-intro,.hero-note{transform:none!important;opacity:1!important}
  .hero-bottom,.cinema-ready .hero-bottom{position:relative;inset:auto;margin-top:0;opacity:1!important}
}
@media(max-height:600px){
  .cinema-ready .reel-card-label{padding:8px 10px}
  .cinema-ready .reel-card-label strong{font-size:12px}
  .cinema-ready .reel-card-label small{display:none}
  .cinema-ready .gallery-status .eyebrow{display:none}
  .cinema-ready .gallery-intro,.cinema-ready .gallery-link{top:48px}
  .film-caption p{display:block;text-align:left}
}
@media(prefers-reduced-motion:reduce){.ink-line{color:var(--text)}}

/* Portrait-led hero: the photo overlaps the title, with clear space for the copy. */
.portrait-hero,.cinema-ready .portrait-hero{padding-top:30px;padding-bottom:30px;min-height:740px;height:calc(100svh - 100px);overflow:clip}
.portrait-hero .hero-title,.cinema-ready .portrait-hero .hero-title{font-size:clamp(150px,23vw,326px);line-height:1.05;text-align:center;letter-spacing:-.035em;margin:18px -4px 0;z-index:0}
.portrait-hero .hero-content,.cinema-ready .portrait-hero .hero-content{grid-template-columns:1fr 1.8fr 1fr;gap:24px;align-items:end;margin:clamp(-260px,-18vw,-165px) 0 0;min-height:0;isolation:isolate}
.portrait-hero .hero-art,.cinema-ready .portrait-hero .hero-art{grid-column:2;grid-row:1;justify-self:center;align-self:end;width:calc(100% + 85px);max-width:min(590px,calc(100svh - 340px));margin:0 -42.5px;padding:0;perspective:none;z-index:1;transform-origin:center bottom}
.hero-portrait img{display:block;width:100%;height:auto}
.portrait-hero .hero-intro,.cinema-ready .portrait-hero .hero-intro{grid-column:1;grid-row:1;padding:0 0 50px;position:relative;z-index:2;align-self:end}
.portrait-hero .hero-intro h2,.cinema-ready .portrait-hero .hero-intro h2{font-size:clamp(52px,6.2vw,88px);line-height:1.03;margin:12px 0 24px;letter-spacing:-.025em}
.portrait-hero .hero-intro h2 br{display:block}
.portrait-hero .hero-note,.cinema-ready .portrait-hero .hero-note{grid-column:3;grid-row:1;position:relative;z-index:2;padding:0 0 40px;align-self:end}
.portrait-role{display:block;color:var(--accent-text);font-size:11px;letter-spacing:.8px;margin-bottom:14px}
.portrait-hero .hero-note p{font-size:17px;line-height:1.75;letter-spacing:0;max-width:230px}
.portrait-hero .hero-actions{flex-direction:column;align-items:flex-start;gap:16px;margin-top:24px}
.portrait-hero .hero-actions .pill-button{font-size:13px;gap:22px;padding:13px 17px}
.portrait-hero .hero-actions .text-link{font-size:13px}
.portrait-hero .hero-bottom,.cinema-ready .portrait-hero .hero-bottom{position:relative;inset:auto;margin:0;padding:20px 110px 0 0;z-index:3}
@media(min-width:1400px){
  .portrait-hero .hero-intro,.cinema-ready .portrait-hero .hero-intro{padding-bottom:35px}
  .portrait-hero .hero-note,.cinema-ready .portrait-hero .hero-note{padding-bottom:35px}
}
@media(min-width:761px) and (max-width:1000px){
  .portrait-hero .hero-content,.cinema-ready .portrait-hero .hero-content{grid-template-columns:1fr 1.55fr 1fr;gap:18px;margin-top:-110px}
  .portrait-hero .hero-art,.cinema-ready .portrait-hero .hero-art{width:calc(100% + 70px);margin-inline:-35px}
  .portrait-hero .hero-intro,.cinema-ready .portrait-hero .hero-intro{padding-bottom:60px}
  .portrait-hero .hero-note,.cinema-ready .portrait-hero .hero-note{padding-bottom:40px}
  .portrait-hero .hero-note p{font-size:16px}
  .portrait-role{font-size:10px}
}
@media(max-width:760px){
  .cinema-ready .portrait-reel{height:auto}
  .portrait-hero,.cinema-ready .portrait-hero{position:relative;height:auto;min-height:0;padding-top:26px;padding-bottom:38px}
  .portrait-hero .hero-title,.cinema-ready .portrait-hero .hero-title{font-size:22vw;line-height:1.1;margin:24px 0 0;letter-spacing:-.03em;transform:none!important;opacity:1!important}
  .portrait-hero .hero-content,.cinema-ready .portrait-hero .hero-content{grid-template-columns:1fr 1fr;gap:22px 26px;margin:-60px 0 0}
  .portrait-hero .hero-art,.cinema-ready .portrait-hero .hero-art{grid-column:1/-1;grid-row:1;width:min(112%,430px);max-width:430px;margin:0;transform:none!important;opacity:1!important}
  .portrait-hero .hero-intro,.cinema-ready .portrait-hero .hero-intro{grid-column:1;grid-row:2;padding:0;align-self:start;transform:none!important;opacity:1!important}
  .portrait-hero .hero-intro h2,.cinema-ready .portrait-hero .hero-intro h2{font-size:clamp(40px,12vw,68px);margin:8px 0 18px}
  .portrait-hero .hero-intro .text-link{font-size:13px;gap:15px}
  .portrait-hero .hero-note,.cinema-ready .portrait-hero .hero-note{grid-column:2;grid-row:2;padding:0;align-self:start;transform:none!important;opacity:1!important}
  .portrait-role{display:none}
  .portrait-hero .hero-note p{font-size:15px;line-height:1.7}
  .portrait-hero .hero-actions{margin-top:18px;gap:12px}
  .portrait-hero .hero-actions .pill-button{font-size:12px;padding:11px 12px;gap:14px;white-space:nowrap}
  .portrait-hero .hero-actions .text-link{font-size:12px;gap:14px}
  .portrait-hero .hero-bottom,.cinema-ready .portrait-hero .hero-bottom{margin-top:30px;padding:18px 0 30px;align-items:flex-start;opacity:1!important}
  .portrait-hero .hero-bottom>span{max-width:155px}
  .portrait-hero .hero-bottom a{gap:8px}
}
@media(max-height:780px) and (min-width:761px){
  .cinema-ready .portrait-reel{height:auto}
  .portrait-hero,.cinema-ready .portrait-hero{position:relative;height:auto;min-height:0}
  .portrait-hero .hero-art,.cinema-ready .portrait-hero .hero-art{max-width:590px}
  .portrait-hero .hero-title,.portrait-hero .hero-art,.portrait-hero .hero-intro,.portrait-hero .hero-note{transform:none!important;opacity:1!important}
  .portrait-hero .hero-bottom{opacity:1!important}
}
.cinema-static .portrait-hero{height:auto}
