:root{--navy:#071b2c;--cyan:#54dbea;--orange:#ff963f;--white:#f7fafc;--muted:#b5c7d5;--line:#294052}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--navy);color:var(--white);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}img{display:block;max-width:100%;height:auto}.wrap{max-width:1240px;margin:auto;padding-left:40px;padding-right:40px}.skip{position:fixed;top:-100px;left:16px;background:white;color:#071b2c;padding:10px;z-index:50}.skip:focus{top:16px}header{max-width:1320px;padding:24px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;font-size:19px;font-weight:800;letter-spacing:.06em;line-height:1.2}.brand img{width:58px;height:58px;border-radius:50%}.brand-sub{display:block;color:var(--cyan);font-size:13px;letter-spacing:.22em;margin-top:5px}nav{display:flex;align-items:center;gap:32px;font-size:15px}nav a:hover,.text-link:hover{color:var(--cyan)}.nav-contact{border:1px solid #4b6273;padding:9px 20px;border-radius:4px}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:52px;align-items:center;padding-top:65px;padding-bottom:76px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;color:var(--cyan);margin:0 0 20px}h1{font-size:clamp(44px,5.1vw,70px);line-height:1.05;letter-spacing:-.045em;margin:0 0 25px;max-width:600px}h1 em{font-style:normal;color:var(--orange)}.lead{font-size:19px;line-height:1.7;color:var(--muted);max-width:510px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1.4;padding:17px 22px;border-radius:4px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.orange{background:var(--orange);color:var(--navy)}.orange:hover{background:#ffb574}.text-link{font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:6px}.location{font-size:14px;color:#9ab0c1;margin-top:34px}.hero-visual{background:#102739;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 24px 64px #0004;transform:rotate(1.5deg)}.hero-visual>img{width:100%}.visual-top{display:flex;justify-content:space-between;gap:14px;padding:16px 20px;font-size:11px;font-weight:700;letter-spacing:.08em;color:#b8cbd7}.visual-bottom{display:flex;justify-content:space-between;align-items:center;padding:24px}.visual-bottom .eyebrow{font-size:11px;display:block;margin-bottom:4px}.visual-bottom strong{font-size:27px;letter-spacing:.08em}.visual-bottom>span{font-size:14px;color:var(--muted);line-height:1.4}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0c2233}.service-strip .wrap{display:flex;justify-content:space-between;gap:24px;padding-top:23px;padding-bottom:23px;color:var(--muted);font-size:15px}.section{padding-top:92px;padding-bottom:92px}.section-heading{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:45px}h2{font-size:clamp(30px,3.3vw,43px);letter-spacing:-.035em;line-height:1.18;margin:0}.section-heading>p{max-width:380px;color:var(--muted);margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.services article{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.number{color:var(--orange);font-size:14px;font-weight:700}h3{font-size:21px;margin:18px 0 10px;letter-spacing:-.02em}.services p{color:var(--muted);font-size:16px;margin:0 0 25px}.service-note{font-size:11px;font-weight:700;color:var(--cyan);letter-spacing:.07em}.work-section{background:#eff4f6;color:var(--navy)}.work-section .eyebrow{color:#007080}.work-section .section-heading>p{color:#4c6373}.portfolio{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project{padding:0;border:1px solid #c8d3da;border-radius:7px;background:white;text-align:left;color:var(--navy);cursor:pointer;overflow:hidden;transition:transform .2s,box-shadow .2s}.project:hover{transform:translateY(-4px);box-shadow:0 12px 30px #071b2c20}.project img{width:100%;aspect-ratio:3/2;object-fit:contain;background:#081a26}.project-label{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px}.project-label strong{display:block;font-size:23px;line-height:1.2}.project-label small{display:block;font-size:14px;color:#4c6373;margin-top:6px}.view{font-size:13px;border-bottom:1px solid #8195a2;white-space:nowrap}.portfolio-note{font-size:14px;color:#526876;margin:24px 0 0}.about{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:center}.about-brand{text-align:center}.about-brand img{border-radius:50%;margin:auto;max-width:280px;width:100%}.about-brand p{font-size:13px;font-weight:700;color:var(--orange);letter-spacing:.18em;margin-top:25px}.about>div>p:not(.eyebrow){color:var(--muted)}.process{margin-top:30px;border-top:1px solid var(--line)}.process>div{padding:18px 0;border-bottom:1px solid var(--line)}.process strong{font-size:16px;display:block;color:var(--cyan)}.process span{display:block;font-size:15px;color:var(--muted)}.contact{background:var(--cyan);color:var(--navy);border-radius:8px;padding:55px 60px;margin-bottom:65px}.contact .eyebrow{color:#104953}.contact h2{font-size:clamp(36px,4.5vw,58px)}.contact>p:not(.eyebrow){max-width:620px}.dark{background:var(--navy);color:white}.contact .text-link:hover{color:#174b61}.email{display:inline-block;margin-top:25px;font-size:17px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.contact .contact-note{font-size:13px;color:#174653;margin-bottom:0}footer{display:flex;justify-content:space-between;gap:24px;font-size:13px;color:var(--muted);padding-bottom:30px}footer a{text-decoration:underline}dialog{padding:0;border:1px solid #506779;border-radius:8px;background:var(--navy);color:white;width:min(1100px,94vw);max-height:94vh;overflow:auto}dialog::backdrop{background:#000c}.dialog-bar{position:sticky;top:0;background:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px}.dialog-bar h2{font-size:19px}.dialog-bar button{color:white;background:#223e52;border:1px solid #657a89;border-radius:4px;padding:8px 14px;cursor:pointer;font-size:14px}dialog img{width:100%;height:auto}dialog>p{font-size:14px;padding:0 22px;color:var(--muted)}
@media(max-width:900px){header{padding:20px 25px}.wrap{padding-left:25px;padding-right:25px}.hero{gap:28px;padding-top:45px;grid-template-columns:1fr 1fr}h1{font-size:48px}.lead{font-size:17px}.services{grid-template-columns:repeat(2,1fr)}.section-heading{gap:30px}.section-heading>p{max-width:300px}.about{gap:40px}.project-label{padding:18px}.view{display:none}.contact{margin-left:25px;margin-right:25px;padding:45px}nav{gap:20px}}
@media(max-width:640px){header{flex-wrap:wrap;gap:20px}.brand img{width:48px;height:48px}.brand{font-size:17px}nav{width:100%;justify-content:space-between;gap:10px;font-size:14px}.nav-contact{padding:6px 14px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:50px;gap:35px}h1{font-size:clamp(42px,11vw,58px)}.hero-visual{transform:none}.actions{gap:22px}.service-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:none;margin-top:22px}.services{grid-template-columns:1fr}.services article{padding:25px}.portfolio{grid-template-columns:1fr;gap:25px}.about{grid-template-columns:1fr;gap:35px}.about-brand img{max-width:200px}.contact{padding:35px 25px;margin-bottom:40px}.contact .actions{align-items:flex-start;flex-direction:column}.contact h2{font-size:38px}footer{flex-direction:column;gap:10px}.dialog-bar{padding:14px;align-items:start}.dialog-bar h2{font-size:16px}.dialog-bar button{white-space:nowrap}.portfolio-note{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
