:root{--primary:#285bd0;--dark:#080d1c;--light:#f0f4ff;--white:#fff;--accent:#348fff;--muted:#a1acc4;--line:rgba(132,166,225,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:radial-gradient(ellipse 80% 850px at 0 0,rgba(37,123,163,.43),transparent 78%),radial-gradient(ellipse 80% 1050px at 100% 0,rgba(62,32,153,.42),transparent 80%),radial-gradient(ellipse 65% 800px at 100% 100%,rgba(18,59,145,.2),transparent 80%),var(--dark);color:var(--light);font-family:Manrope,sans-serif;font-size:14px}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{border:0}::selection{background:var(--accent);color:var(--dark)}.header{height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1600px;padding:0 5%;margin:auto;border-bottom:1px solid var(--line)}.wordmark{font-family:Phudu,sans-serif;font-weight:600;font-size:24px;letter-spacing:-.8px;white-space:nowrap}.spark{color:var(--accent);padding:0 2px}.wordmark-dot{font-family:Manrope;font-size:10px;vertical-align:top;padding-left:3px}.header nav{display:flex;gap:34px;font-size:12px}.header nav a{color:#bbc6df;transition:color .2s}.header nav a:hover{color:var(--accent)}.contact-pill{border:1px solid #38609a;border-radius:30px;padding:12px 20px;font-size:12px}.contact-pill span{margin-left:27px;color:var(--accent)}main{overflow:hidden}.hero,.section,footer{max-width:1600px;padding-left:5%;padding-right:5%;margin:auto}.hero{padding-top:48px}.eyebrow,.section-kicker{font-size:10px;letter-spacing:2px;font-weight:600}.eyebrow{display:flex;align-items:center;gap:10px}.status-dot{height:6px;width:6px;background:var(--accent);border-radius:50%}.year{margin-left:auto;color:var(--muted);letter-spacing:1px}h1,h2,h3,p{margin:0}h1,h2,.contact-headline{font-family:Phudu,sans-serif;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(64px,7.8vw,126px);line-height:1.08;margin-top:28px;position:relative;max-width:1140px}.outline{color:var(--accent)}.hero-star{position:absolute;right:1%;top:15%;font-size:110px;color:var(--accent);font-weight:400}.hero-intro{display:flex;align-items:end;justify-content:space-between;margin:25px 0 36px}.hero-intro p{font-size:13px;color:#b0bed5;line-height:1.8}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:12px;padding:9px 0;border-bottom:1px solid #416899}.text-link span{color:var(--accent);font-size:20px}.featured{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.feature{height:410px;background:#101b38;position:relative;overflow:hidden;text-align:left;padding:0}.art{position:absolute;inset:0;display:block;background-image:url('assets/cinematic-triptych.png');background-size:300% auto;background-repeat:no-repeat;transition:transform .7s;background-color:#10223e}.art-one{background-position:0 50%}.art-two{background-position:50% 50%}.art-three{background-position:100% 50%}.feature:hover .art,.project:hover .art{transform:scale(1.045)}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,13,28,.22),transparent 45%,rgba(4,8,22,.92))}.card-top{position:absolute;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.card-top>span{font-size:21px;line-height:1}.feature-caption{position:absolute;bottom:24px;left:22px;right:18px;display:flex;gap:13px;align-items:center}.round-play{height:38px;width:38px;border:1px solid #7db7ff;display:grid;place-items:center;border-radius:50%;font-size:20px;flex-shrink:0}.feature-caption small{font-size:7px;letter-spacing:1.1px;display:block;color:#c2cee7;margin-bottom:6px}.feature-caption strong{font-family:Phudu;font-size:25px;font-weight:500;white-space:nowrap}.demo-label{font-size:8px;color:#dce7ff;margin-left:auto;align-self:end}.featured-footer{display:flex;justify-content:space-between;margin-top:17px;font-size:8px;letter-spacing:1.3px;color:var(--muted)}.section{padding-top:110px}.section-kicker{color:var(--muted);margin-bottom:27px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}h2{font-size:clamp(38px,4.4vw,68px);line-height:1.08}h2 span{color:var(--muted)}.section-heading p{color:var(--muted);font-size:12px;line-height:1.8}.work-toolbar{border-top:1px solid var(--line);padding-top:24px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between}.filters{display:flex;gap:10px}.filters button{background:transparent;border:1px solid var(--line);padding:10px 18px;border-radius:30px;font-size:11px}.filters button.active{background:var(--accent);color:var(--dark);border-color:var(--accent)}.filters sup{font-size:8px;margin-left:8px}.toolbar-note{font-size:8px;color:var(--muted);letter-spacing:1.3px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px}.project{padding:0;text-align:left;background:transparent;min-width:0}.project[hidden]{display:none}.project-image{display:block;position:relative;aspect-ratio:1.22;overflow:hidden;background:#10223e}.media-tag{position:absolute;top:14px;left:14px;font-size:8px;letter-spacing:1px;background:rgba(8,16,38,.72);padding:7px 9px}.view-mark{position:absolute;bottom:12px;right:12px;border-radius:50%;width:30px;height:30px;background:var(--light);color:var(--dark);display:grid;place-items:center}.project-info{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:14px}.project-info strong{font-size:13px;font-weight:500}.project-info small{font-size:8px;color:var(--muted)}.crop-detail{filter:saturate(.65);transform:scale(1.3)}.project:hover .crop-detail{transform:scale(1.35)}.about{display:grid;grid-template-columns:1fr 1.15fr;gap:9%;align-items:center}.portrait-placeholder{position:relative;min-height:480px;background:var(--primary);overflow:hidden;display:flex;align-items:center;justify-content:center}.portrait-lines{font-size:310px;color:rgba(132,166,225,.2);line-height:1;transform:rotate(-15deg)}.portrait-label{position:absolute;font-family:Phudu;font-size:25px;text-align:center;letter-spacing:1px}.portrait-label small{font-family:Manrope;font-size:11px;letter-spacing:0;display:block;margin-top:10px;color:#d6e8ff}.portrait-corner{position:absolute;bottom:22px;left:24px;font-size:10px;line-height:1.6;letter-spacing:2px}.about-copy h2{font-size:clamp(34px,3.8vw,58px);margin-bottom:28px}.about-copy p{color:#abb8d0;font-size:12px;line-height:1.95;max-width:450px;margin-bottom:16px}.about-copy .about-lead{font-size:18px;color:var(--light)}.about-lead span{color:var(--accent)}p.placeholder-note,.placeholder-note{font-size:10px!important;line-height:1.7;color:#93a3c1!important}.expertise{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.expertise span{font-size:8px;letter-spacing:.7px;border:1px solid var(--line);border-radius:20px;padding:8px 11px}.recognition .section-heading{margin-bottom:42px}.award{display:flex;align-items:center;gap:30px;padding:27px 0;border-top:1px solid var(--line)}.award:last-child{border-bottom:1px solid var(--line)}.award-icon{color:var(--accent);font-size:36px}.award h3{font-size:16px;font-weight:500;margin-bottom:7px}.award p{font-size:11px;color:var(--muted)}.award-year{margin-left:auto;font-size:11px;color:var(--muted)}.recognition>.placeholder-note{margin-top:16px}.contact{padding-top:120px;padding-bottom:65px}.contact>p{font-size:13px;color:var(--muted);margin-bottom:22px}.contact-headline{display:block;position:relative;font-size:clamp(48px,7.4vw,116px);line-height:1.08}.contact-headline>span:first-of-type{color:var(--accent)}.contact-arrow{position:absolute;right:0;top:15px;font-family:Manrope;font-size:110px;color:var(--accent);transition:transform .3s}.contact-headline:hover .contact-arrow{transform:translate(6px,-6px)}.contact-bottom{margin-top:35px;display:flex;justify-content:space-between;gap:15px;align-items:center}.email{border-bottom:1px solid #3e70b4;padding-bottom:8px;font-size:14px}footer{border-top:1px solid var(--line);height:110px;display:flex;align-items:center;justify-content:space-between}footer>span,footer>a:last-child{font-size:8px;letter-spacing:1px;color:var(--muted)}dialog{padding:0;border:1px solid #3565a1;background:var(--dark);color:var(--light);max-width:950px;width:90vw;max-height:90vh;overflow:auto}dialog::backdrop{background:rgba(3,6,19,.88);backdrop-filter:blur(10px)}.modal-close{position:absolute;right:14px;top:14px;z-index:2;border-radius:50%;height:38px;width:38px;background:var(--dark);border:1px solid var(--muted)}.modal-art{height:440px;position:relative}.modal-art .art{background-size:300% auto}.modal-copy{padding:32px}.modal-copy h2{font-size:44px;margin-bottom:18px}.modal-copy p{line-height:1.8;color:var(--muted)}.modal-tools{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.modal-tools span{font-size:11px;border:1px solid var(--line);padding:6px 10px}.modal-copy .section-kicker{display:block;margin-bottom:12px}body.modal-open{overflow:hidden}@media(min-width:1600px){h1{font-size:126px}.feature{height:480px}}@media(max-width:1000px){.hero-star{font-size:80px;right:0}.feature{height:320px}.feature-caption{left:15px;right:12px;gap:8px}.feature-caption strong{font-size:19px}.feature-caption small{font-size:6px}.round-play{width:30px;height:30px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portrait-placeholder{min-height:420px}.about{gap:6%}.contact-arrow{font-size:80px}}@media(max-width:640px){.header{height:78px;padding:0 6%}.wordmark{font-size:21px}.header nav{display:none}.contact-pill{padding:10px 14px}.hero,.section,footer{padding-left:6%;padding-right:6%}.hero{padding-top:34px}.eyebrow{font-size:7px;letter-spacing:1px}.year{font-size:7px}.hero-star{font-size:43px;top:auto;bottom:4px;right:4px}h1{font-size:clamp(45px,10.5vw,67px);line-height:1.13;margin-top:25px}.hero-intro{align-items:start;gap:20px;margin:24px 0 27px}.hero-intro p{font-size:10px}.text-link{font-size:10px;gap:12px}.text-link span{font-size:16px}.featured{grid-template-columns:1fr;gap:12px}.feature{height:270px}.feature .art{background-size:300% auto}.feature-caption strong{font-size:26px}.feature-caption small{font-size:8px}.feature-caption{left:20px;bottom:20px;gap:12px}.round-play{width:38px;height:38px}.card-top{font-size:8px}.featured-footer{font-size:6px;letter-spacing:.6px}.section{padding-top:75px}.section-kicker{font-size:8px;margin-bottom:20px}.section-heading{display:block;margin-bottom:25px}.section-heading p{margin-top:20px;font-size:11px}h2{font-size:39px}.toolbar-note{display:none}.filters button{font-size:10px;padding:9px 13px}.project-grid{gap:24px 12px}.project-info{display:block}.project-info strong{font-size:11px;display:block;margin-bottom:5px}.project-info small{font-size:8px}.media-tag{top:8px;left:8px;font-size:6px;padding:5px}.view-mark{width:24px;height:24px;font-size:12px}.about{grid-template-columns:1fr;gap:35px}.portrait-placeholder{min-height:390px}.about-copy h2{font-size:40px}.about-copy p{font-size:12px}.award{gap:16px;padding:24px 0}.award h3{font-size:12px}.award p{font-size:9px}.award-icon{font-size:29px}.award-year{font-size:9px}.contact-headline{font-size:45px}.contact-arrow{font-size:43px;top:4px}.contact>p{font-size:10px}.contact-bottom{display:block}.contact-bottom .placeholder-note{display:block;margin-top:16px}.email{font-size:13px}footer{height:auto;min-height:115px;gap:20px;flex-wrap:wrap;padding-top:24px;padding-bottom:24px}footer .wordmark{width:100%}footer>span,footer>a:last-child{font-size:7px}.modal-art{height:340px}.modal-copy{padding:24px}.modal-copy h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Blue cinematic palette from the approved visual reference. */
.portrait-placeholder{background:radial-gradient(ellipse at 10% 0%,rgba(43,179,225,.45),transparent 70%),linear-gradient(135deg,#164c78,#23205c 70%,#10192f)}
.contact-pill{border-color:rgba(65,148,255,.7)}
.contact-pill:hover{background:rgba(52,143,255,.12)}
.filters button.active{background:linear-gradient(115deg,#63b3ff,#2d84ee);border-color:#4c9fff;color:#071528}
.round-play{border-color:#76aff4}
.view-mark{background:#348fff;color:#071528}
.modal-close{border-color:#4d7ab7}
