@charset "UTF-8";
/* The tech direction below overrides the original editorial theme. */
/* Moody blue palette — brighter surfaces, warm white and soft sky blue. */
:root{--bg:#1c3046;--panel:#28435c;--text:#f5f6f4;--muted:#b7c9da;--line:#466079;--accent:#a8d5f1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--bg)}header{display:flex;align-items:center;justify-content:space-between;padding:28px 4.7%;border-bottom:1px solid var(--line);gap:30px}.brand{font-size:18px;letter-spacing:.04em;font-weight:600;line-height:1.4}.brand span{display:block;font-size:8px;letter-spacing:.2em;font-weight:400;color:var(--muted);margin-top:3px}nav{display:flex;gap:30px;align-items:center}header nav a{font-size:12px;color:var(--muted)}header nav a:hover{color:var(--text)}.contact-nav{border:1px solid #6989a6;border-radius:30px;padding:10px 19px;color:var(--text)}.contact-nav span{padding-left:15px}.menu-toggle{display:none}.skip{position:absolute;left:10px;top:-100px;background:var(--text);color:var(--bg);padding:12px;z-index:20}.skip:focus{top:10px}.hero,.section,.service-hero{padding:70px 4.7%}.eyebrow{font-size:10px;letter-spacing:.16em;color:var(--muted);font-weight:400}.hero-top{display:flex;justify-content:space-between}.hero h1{margin:40px 0 30px;font-size:clamp(45px,6.8vw,102px);line-height:1.06;letter-spacing:-.055em;font-weight:400}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent);letter-spacing:-.05em}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-bottom:50px}.hero-bottom p{font-size:13px;color:var(--muted);line-height:1.8}.round-link{display:flex;align-items:center;gap:30px;font-size:11px;line-height:1.4}.round-link b{border:1px solid var(--line);border-radius:50%;padding:20px 27px;font-size:24px;font-weight:400}.round-link:hover b{background:var(--accent);color:var(--bg)}.filmstrip{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:16px}.film-cell>span{display:block;margin:12px 0 0;font-size:9px;letter-spacing:.13em;color:var(--muted)}.art{height:340px;position:relative;overflow:hidden;background:#365671;isolation:isolate}.art::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#00000009 3px 4px);pointer-events:none}.art.small{height:220px}.art-orbit{position:absolute;width:70%;height:150%;border:1px solid #d6eafa55;border-radius:50%;transform:rotate(-30deg);left:15%;top:-25%}.art-letter{position:absolute;font:italic 210px/1 Georgia,serif;left:50%;top:50%;transform:translate(-50%,-50%);color:#e5f2fa}.art-0{background:radial-gradient(ellipse at 30% 60%,#6b9abc,#283f59 65%)}.art-1{background:linear-gradient(125deg,#456c8c,#243a54)}.art-1 .art-letter{font-style:normal;font-size:240px;transform:translate(-50%,-50%) rotate(-20deg)}.art-2{background:#d7e4ec}.art-2 .art-letter{color:#294761}.art-2 .art-orbit{border-color:#29476155}.art-3{background:radial-gradient(ellipse at 70% 50%,#859bb4,#344a66 70%)}.art-3 .art-orbit{border-radius:0;width:50%;height:75%;top:12%;left:25%;transform:rotate(12deg)}.art-4{background:linear-gradient(30deg,#263f5a,#527d99)}.art-4 .art-letter{font-size:350px;color:#d9eaf5}.frame-number{position:absolute;top:18px;left:18px;font-size:8px;letter-spacing:.13em;color:#eee;mix-blend-mode:difference}.art-caption{position:absolute;bottom:18px;left:18px;font-size:8px;letter-spacing:.2em;color:#eee;mix-blend-mode:difference}.draft-note{font-size:10px;color:var(--muted);margin-top:20px}.section{border-top:1px solid var(--line);padding-top:80px;padding-bottom:80px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:36px}h2{font-size:clamp(30px,4vw,58px);line-height:1.15;letter-spacing:-.04em;font-weight:400;margin:16px 0 0}.section-heading p{font-size:12px;color:var(--muted)}.home-projects,.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 24px}.home-projects .featured-link:nth-child(even){margin-top:60px}.project-meta{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding-top:16px}.project-meta h3{font-size:15px;font-weight:400;margin:0}.project-meta span{font-size:10px;color:var(--muted)}.featured-link .art,.project-open .art{transition:filter .25s}.featured-link:hover .art,.project-open:hover .art{filter:brightness(1.14)}.service-row{display:grid;grid-template-columns:50px 1.1fr 1fr 40px;gap:18px;padding:25px 0;border-top:1px solid var(--line);align-items:center}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-weight:400;font-size:23px;letter-spacing:-.03em;margin:0}.service-number{font-size:10px;color:var(--muted)}.service-description{font-size:11px;color:var(--muted);max-width:310px}.arrow{font-size:26px}.service-row:hover{color:var(--accent)}.about-teaser{padding-top:100px;padding-bottom:100px}.about-teaser h2{max-width:850px;margin-bottom:36px}.text-link{font-size:12px;border-bottom:1px solid #82aecf;padding-bottom:8px;display:inline-block}.text-link:hover{color:var(--accent)}footer{background:#29455f;padding:70px 4.7% 25px}.contact-heading{font-size:clamp(40px,6vw,84px);line-height:1.1;letter-spacing:-.05em;margin:30px 0;position:relative}.contact-heading>span{position:absolute;right:3%;top:10px;color:var(--accent)}.contact-details{display:flex;gap:50px;flex-wrap:wrap;padding:20px 0 65px;font-size:16px}.contact-details a{border-bottom:1px solid #86abc7;padding-bottom:6px}.footer-bottom{border-top:1px solid #55758e;padding-top:24px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px}.service-hero{padding-top:40px;padding-bottom:55px}.breadcrumb{font-size:11px;color:var(--muted);display:inline-block;margin-bottom:40px}.service-hero h1{font-size:clamp(48px,6.4vw,88px);line-height:1.05;letter-spacing:-.05em;font-weight:400;max-width:1000px;margin:24px 0 32px}.service-intro{display:flex;align-items:center;justify-content:space-between;gap:40px}.service-intro p{max-width:550px;color:var(--muted);font-size:14px}.selected{padding-top:35px}.selected h2{font-size:30px}.project-open{width:100%;padding:0;border:0;background:transparent;display:block;cursor:pointer;position:relative;text-align:left}.project-action{position:absolute;bottom:18px;right:18px;border:1px solid #eee6;background:#1c3046b0;color:white;border-radius:50%;width:46px;height:46px;display:grid;place-items:center}.category-nav-wrap{position:sticky;top:0;z-index:5;background:#1c3046f5;border-block:1px solid var(--line);backdrop-filter:blur(14px);padding:16px 4.7%}.category-nav{gap:12px 25px;flex-wrap:wrap}.category-nav a{font-size:11px;white-space:nowrap}.category-nav a span{font-size:8px;color:var(--muted);padding-right:8px}.category-nav a:hover{color:var(--accent)}.more-projects{margin-top:30px}.more-projects summary{cursor:pointer;border-bottom:1px solid var(--line);padding:16px 0;list-style:none;font-size:12px}.more-projects summary::-webkit-details-marker{display:none}.more-projects summary span{float:right}.more-projects[open] summary{margin-bottom:25px}.more-projects[open] summary span{transform:rotate(45deg)}.next-service a{display:block;font-size:clamp(30px,5vw,60px);letter-spacing:-.04em;margin-top:20px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.portrait-placeholder{background:radial-gradient(ellipse at center,#6087aa,#2b4965);min-height:480px;display:flex;align-items:center;justify-content:center;flex-direction:column}.portrait-placeholder>span{font:italic 150px Georgia,serif;color:var(--accent)}.portrait-placeholder p{font-size:9px;letter-spacing:.2em;color:var(--muted)}.body-copy{color:var(--muted);margin:30px 0}.comparison{position:relative;overflow:hidden;height:400px}.comparison .art{height:400px}.comparison-overlay{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0);filter:grayscale(1) brightness(.65)}.comparison-label{position:absolute;bottom:45px;left:20px;font-size:11px;background:#1c3046;padding:5px 10px}.comparison-label.after{left:auto;right:20px}.comparison-line{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:var(--text)}.range-label{display:flex;align-items:center;gap:25px;font-size:12px;margin:20px 0}.range-label input{flex:1;accent-color:var(--accent)}dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);width:min(1000px,95vw);max-height:90vh;padding:25px}dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}.dialog-close{display:block;margin-left:auto;border:1px solid var(--line);background:transparent;padding:8px 15px;cursor:pointer}.dialog-media{margin-top:20px;aspect-ratio:16/9;width:100%;border:0;object-fit:contain;background:#14263a}.project-image{width:100%;height:340px;object-fit:cover;display:block}.empty-media{padding:60px 25px;border:1px solid var(--line);margin-top:20px;text-align:center}.empty-media p{color:var(--muted)}#dialog-body h2{font-size:32px}#dialog-body>p{color:var(--muted)}
@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:760px){header{padding:22px 6%;flex-wrap:wrap}.brand{font-size:15px}.menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:20px;padding:7px 14px;font-size:12px}.menu-toggle span{margin-left:10px}header nav{display:none;width:100%;align-items:stretch;gap:0;flex-direction:column}header nav.open{display:flex}header nav a{padding:14px 0;border-bottom:1px solid var(--line)}header nav .contact-nav{border:0;border-bottom:1px solid var(--line);border-radius:0}.hero,.section,.service-hero{padding:45px 6%}.hero-top>span:last-child{display:none}.hero h1{font-size:clamp(40px,9vw,66px);margin:30px 0}.hero-bottom{gap:20px;margin-bottom:30px}.hero-bottom p{font-size:11px}.round-link{gap:10px}.round-link b{padding:10px 16px}.round-link>span{display:none}.filmstrip{gap:10px;grid-template-columns:1fr 1fr}.film-cell:last-child{display:none}.art.small{height:170px}.art.small .art-letter{font-size:140px}.art{height:260px}.art-letter{font-size:160px}.section-heading{align-items:start;flex-direction:column;gap:10px}h2{font-size:35px}.home-projects,.project-grid{grid-template-columns:1fr;gap:30px}.home-projects .featured-link:nth-child(even){margin-top:0}.project-meta{gap:10px}.project-meta span{font-size:9px}.service-row{grid-template-columns:24px 1fr 24px;gap:12px;padding:22px 0}.service-row h3{font-size:19px}.service-description{display:none}.service-hero h1{font-size:48px}.service-intro{align-items:start;flex-direction:column;gap:15px}.category-nav-wrap{padding:14px 6%}.category-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.category-nav a{font-size:11px}.about-layout{grid-template-columns:1fr;gap:40px}.portrait-placeholder{min-height:330px}.contact-heading{font-size:43px}.contact-heading>span{font-size:35px;right:0;top:-15px}.contact-details{flex-direction:column;align-items:flex-start;gap:20px;font-size:14px;padding-bottom:40px}footer{padding:50px 6% 25px}.footer-bottom{flex-wrap:wrap}.footer-bottom>span{width:100%}.comparison,.comparison .art{height:300px}.project-image{height:260px}.frame-number{font-size:7px;max-width:80%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

