#hom{--paper:#f0eee9;--ink:#252820;--secondary:#53564c;font:17px/1.65 Manrope,sans-serif;color:var(--ink);background:var(--paper)}#hom *,#hom *:before,#hom *:after{box-sizing:border-box}#hom h1,#hom h2,#hom h3,#hom p{margin:0}#hom h1,#hom h2{font-weight:400;letter-spacing:-.035em;line-height:1.2;text-wrap:balance}#hom h1{font-size:clamp(30px,3vw,48px)}#hom h2{font-size:clamp(30px,3.1vw,48px)}#hom h3{font-size:24px;font-weight:500;letter-spacing:-.02em;line-height:1.3}#hom a{color:inherit;text-decoration:none}#hom button,#hom input,#hom textarea{font:inherit}#hom button{cursor:pointer}#hom img{display:block;max-width:100%}#hom ::selection{color:#f0eee9;background:#252820}#hom :focus-visible{outline:2px solid #a14725;outline-offset:5px}#hom .skip{position:fixed;top:-100px;left:20px;background:var(--paper);padding:12px;z-index:50}#hom .skip:focus{top:10px}
#hom .header{height:88px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:fixed;top:0;left:0;right:0;z-index:20;border-bottom:1px solid #25282020}#hom .identity{display:flex;align-items:baseline;gap:24px}#hom .identity strong{font-size:19px;font-weight:500;letter-spacing:-.02em}#hom .identity span{font-size:14px;color:var(--secondary)}#hom nav{display:flex;gap:32px;font-size:15px}#hom nav a:hover,#hom .text-link:hover{text-decoration:underline;text-underline-offset:7px}
#hom .film{position:relative;padding-top:88px}#hom .film-stage{position:relative;background:var(--paper)}#hom .picture{height:calc(70svh - 88px);min-height:340px;background:#101510;position:relative;overflow:hidden}#hom .film-poster,#hom .film-video{width:100%;height:100%;object-fit:contain;object-position:center;position:absolute;inset:0}#hom .film-video{opacity:0}#hom.video-ready .film-video{opacity:1}#hom .film-caption{min-height:30svh;padding:36px 7vw;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8vw;background:var(--paper)}#hom .caption-body p{font-size:17px;max-width:44ch;color:var(--secondary)}#hom .scroll-note{display:block;margin-top:20px;font-size:14px;color:var(--secondary)}#hom.enhanced .film{height:720svh}#hom.enhanced .film-stage{position:sticky;top:88px}
#hom .profile{padding:110px 7vw;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;border-top:1px solid #25282025}#hom .profile-text p+p{margin-top:24px}#hom .profile-text p{color:var(--secondary);max-width:48ch}#hom .text-link{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:5px;margin-top:30px;font-size:16px}
#hom .recent-work{padding:20px 7vw 110px}#hom .recent-work>h2{font-size:28px;margin-bottom:40px}#hom .work-list article{padding:35px 0;display:grid;grid-template-columns:1fr 1.5fr;gap:9vw;border-top:1px solid #25282025}#hom .work-period{font-size:15px;color:var(--secondary);margin-top:10px}#hom .work-list article>p{color:var(--secondary);font-size:17px;max-width:56ch}
#hom .contact{padding:100px 7vw;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;background:#e7e5dd}#hom .email{display:block;font-size:23px;margin-top:35px;letter-spacing:-.02em}#hom .phone{display:block;font-size:17px;margin-top:15px}#hom .privacy-note{font-size:15px;color:var(--secondary);margin-top:40px;max-width:35ch}#hom form h3{margin-bottom:26px}#hom label{display:block;font-size:16px;margin-top:17px}#hom input,#hom textarea{display:block;width:100%;padding:12px;background:transparent;color:var(--ink);border:1px solid #73776b;border-radius:0;margin-top:7px}#hom textarea{resize:vertical}#hom form button{padding:13px 20px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);margin-top:24px;font-size:16px}#hom .form-note{font-size:14px;color:var(--secondary);margin-top:18px;max-width:45ch}#hom #request-status{margin-top:20px;font-size:16px}#hom #request-status a{text-decoration:underline;text-underline-offset:5px;display:block;margin-top:10px}#hom footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 5vw;font-size:14px;border-top:1px solid #25282025}#hom #motion{border:0;background:none;padding:8px 0;color:var(--secondary);font-size:14px}#hom .noscript{padding:20px 7vw}
@media(max-width:640px){#hom .header{height:76px;padding:0 5vw}#hom .identity{display:block}#hom .identity strong{font-size:16px}#hom .identity span{display:block;font-size:12px;margin-top:3px}#hom nav{font-size:13px;gap:18px}#hom nav a:first-child{display:none}#hom .film{padding-top:76px}#hom.enhanced .film-stage{top:76px}#hom .picture{height:calc(58svh - 76px);min-height:270px}#hom .film-video,#hom .film-poster{object-fit:cover;object-position:75% top}#hom .film-caption{min-height:42svh;padding:28px 6vw 35px;display:block}#hom h1{font-size:30px;max-width:20ch}#hom .caption-body p{font-size:16px;margin-top:20px;max-width:37ch}#hom .scroll-note{margin-top:20px;font-size:13px}#hom .profile{padding:70px 6vw;grid-template-columns:1fr;gap:30px}#hom h2{font-size:31px}#hom .profile-text p{font-size:17px}#hom .recent-work{padding:0 6vw 70px}#hom .recent-work>h2{font-size:26px}#hom .work-list article{grid-template-columns:1fr;gap:20px;padding:30px 0}#hom .contact{padding:70px 6vw;grid-template-columns:1fr;gap:55px}#hom .email{font-size:22px}#hom footer{font-size:12px;flex-wrap:wrap;padding:25px 6vw}#hom #motion{font-size:12px}}
@media(prefers-reduced-motion:reduce){#hom *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Spatial portrait world: no caption panel or white UI surfaces. */
#hom{--paper:#11120f;--ink:#eee9df;--secondary:#c3bcb0;background:#11120f;color:#eee9df}#hom .header{background:linear-gradient(#11120fce,#11120f20);border:0;color:#eee9df}#hom .identity span{color:#d4ccc0}#hom nav{color:#e8e2d8}#hom .world-track{position:relative;min-height:100svh}#hom.spatial .world-track{height:950svh}#hom .world-stage{height:100svh;min-height:650px;position:relative;overflow:hidden;background:#11120f}#hom.spatial .world-stage{position:sticky;top:0}#hom .world-fallback,#hom #world-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:75% top}#hom #world-canvas{opacity:0;pointer-events:none}#hom.world-ready #world-canvas{opacity:1}#hom .world-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#11120f7a,transparent 62%),linear-gradient(0deg,#11120fe0,transparent 52%);pointer-events:none}#hom .world-copy{position:absolute;left:7vw;top:44%;max-width:46%;pointer-events:none}#hom .world-copy h1{font-family:'Bodoni Moda',serif;font-size:clamp(48px,5.2vw,82px);line-height:1.12;font-weight:400;letter-spacing:-.025em;color:#f1ebdf;text-shadow:0 3px 30px #11120f50;text-wrap:balance}#hom .world-copy p{margin-top:30px;font-size:17px;line-height:1.7;max-width:45ch;color:#e0d8cc}#hom .world-bottom{position:absolute;bottom:35px;left:7vw;right:7vw;display:flex;justify-content:space-between;gap:20px;font-size:14px;color:#d4cbbc}#hom .world-bottom a{border-bottom:1px solid #d4cbbc70;padding-bottom:4px}#hom .world-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#hom .profile,#hom .recent-work{background:#11120f;border-color:#eee9df25}#hom .work-list article{border-color:#eee9df25}#hom .contact{background:#181a15}#hom form button{background:#eee9df;color:#11120f;border-color:#eee9df}#hom input,#hom textarea{color:#eee9df;border-color:#777c6c}#hom .profile h2,#hom .contact h2{font-family:'Bodoni Moda',serif;font-size:clamp(38px,4.1vw,65px);line-height:1.16;letter-spacing:-.02em}#hom footer{background:#11120f;border-color:#eee9df25}#hom :focus-visible{outline-color:#d0b18b}
@media(max-width:640px){#hom .header{background:#11120f90}#hom .world-copy{left:6vw;top:auto;bottom:16%;max-width:88%}#hom .world-copy h1{font-size:clamp(35px,9vw,48px);line-height:1.15}#hom .world-copy p{font-size:15px;max-width:37ch;margin-top:22px}#hom .world-bottom{left:6vw;right:6vw;bottom:25px;font-size:12px}#hom .world-vignette{background:linear-gradient(0deg,#11120ff5,transparent 78%)}#hom .profile h2,#hom .contact h2{font-size:37px}}

/* A continuous photographic frame, paced like an opening sequence. */
#hom.spatial .world-track{height:650svh}#hom .world-copy{top:49%;max-width:43%}#hom .world-copy h1{font-size:clamp(44px,4.4vw,70px);line-height:1.16}#hom .world-copy p{font-size:17px;max-width:38ch;margin-top:26px}#hom .world-vignette{background:linear-gradient(90deg,#090c0b96,transparent 68%),linear-gradient(0deg,#090c0bb8,transparent 38%)}@media(max-width:640px){#hom .world-copy{top:auto;bottom:15%;max-width:88%}#hom .world-copy h1{font-size:36px}#hom .world-copy p{font-size:15px}#hom .world-vignette{background:linear-gradient(0deg,#090c0bf0,transparent 82%)}}

#hom .availability{position:absolute;top:126px;left:7vw;right:7vw;font-size:15px;line-height:1.6;color:#f1ebdf;display:flex;align-items:center;gap:12px;text-shadow:0 2px 14px #000}#hom .availability-dot{width:7px;height:7px;flex:none;background:#d9c599;border-radius:50%;box-shadow:0 0 0 4px #d9c59918}#hom .profile-text .seeking{color:#f1ebdf;font-weight:500}#hom .world-copy h1{max-width:12ch}@media(max-width:640px){#hom .availability{top:99px;left:6vw;right:6vw;font-size:13px;max-width:32ch;align-items:flex-start}#hom .availability-dot{margin-top:7px}#hom .world-copy h1{font-size:38px}}

#hom .world-copy h1{max-width:none}#hom .world-copy{max-width:46%}@media(max-width:640px){#hom .world-copy{max-width:88%}}

/* Four unique chapters; the time-lapse belongs to the opening only. */
#hom.spatial .world-track{height:450svh}#hom .story-contact{pointer-events:auto;display:inline-block;margin-top:25px;font-size:16px;border-bottom:1px solid #eee9df99;padding-bottom:5px}#hom .story-contact:hover{border-color:#eee9df}#hom .contact-intro{margin-top:28px;max-width:40ch;color:var(--secondary)}#hom .request-intro{margin-top:-10px;margin-bottom:24px;color:var(--secondary)}#hom .world-copy{top:40%}@media(max-width:640px){#hom .world-copy{top:auto;bottom:14%}#hom .story-contact{font-size:15px;margin-top:19px}#hom .world-copy p{margin-top:18px}}

/* Integration boundary: presentation styles are scoped to #hom. */
#hom{position:relative;width:100%;text-align:left;overflow-wrap:normal}#hom h1,#hom h2,#hom h3{padding:0}#hom p{padding-bottom:0}#hom button{line-height:1.5}#hom input,#hom textarea{box-shadow:none}#hom a{box-shadow:none}#hom .hom-main{display:block}
body.hom-cv-fullscreen{margin:0;padding:0;background:#11120f}body.hom-cv-fullscreen #hom{min-height:100vh}
body.admin-bar #hom .header{top:32px}@media(max-width:782px){body.admin-bar #hom .header{top:46px}}

/* Override Divi heading colors within the CV. */
#hom h1,#hom h2,#hom h3{color:var(--ink)}

#hom .hom-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#hom input[type="hidden"]{display:none}#hom form button:disabled{opacity:.65;cursor:wait}#hom #request-status:not(:empty){padding:18px 0;border-top:1px solid #eee9df55;color:var(--ink)}
