:root{--navy:#162331;--navy2:#203347;--ink:#202b34;--muted:#60707c;--cream:#f6f7f6;--line:#dce2e5;--blue:#547c9b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65}a{color:inherit;text-decoration:none}.wrap{width:min(1140px,calc(100% - 44px));margin:auto}.header{position:sticky;top:0;background:#fff;z-index:5;border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:800;letter-spacing:.08em;line-height:1.15}.brand small{display:block;font-size:9px;letter-spacing:.3em;margin-top:5px;color:var(--muted)}.brand-mark{background:var(--navy);color:white;width:42px;height:42px;display:grid;place-items:center;font-size:24px;font-weight:800;border-radius:5px}.nav nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:700}.nav-cta{background:var(--navy);color:#fff;padding:11px 18px;border-radius:4px}.menu{display:none;border:0;background:none;font-size:26px;cursor:pointer}.hero{background:var(--navy);color:#fff;padding:88px 0 100px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:800;color:#9fb9cf;margin:0 0 18px}.eyebrow.dark{color:#527a9a}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,5.7vw,78px);line-height:1.05;letter-spacing:-.055em;margin-bottom:25px}h1 em{font-style:normal;color:#a9c8df}.lead{font-size:18px;color:#d2dde6;max-width:520px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.btn{border:0;display:inline-flex;justify-content:center;align-items:center;gap:18px;padding:14px 22px;border-radius:4px;font-size:13px;font-weight:800;cursor:pointer}.btn.primary{background:#fff;color:var(--navy)}.btn.outline{border:1px solid #8095a7;color:#fff}.btn.light{background:#fff;color:var(--navy);white-space:nowrap}.micro{font-size:12px;letter-spacing:.08em;color:#afc0ce}.hero-visual{position:relative}.photo-placeholder{background:linear-gradient(140deg,#c8d0d4,#e8ecee 52%,#aebbc5);border:1px dashed #8496a3;min-height:285px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;padding:25px;color:#364d5d}.photo-placeholder span{font-weight:800;font-size:12px;letter-spacing:.08em}.photo-placeholder small{font-size:11px}.hero-visual .photo-placeholder{height:430px;border-radius:6px}.floating-note{position:absolute;bottom:-22px;left:-24px;background:white;color:var(--ink);padding:18px 24px;box-shadow:0 15px 45px #0002}.floating-note strong,.floating-note span{display:block}.floating-note span{font-size:12px;color:var(--muted)}.trust{background:#e9eef1}.trust-inner{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:11px;font-weight:800;letter-spacing:.14em;color:#5a7080}.section{padding:100px 0;scroll-margin-top:75px}.two-col{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.portrait{min-height:470px}h2{font-size:clamp(34px,4vw,51px);line-height:1.12;letter-spacing:-.045em;margin-bottom:23px}h3{line-height:1.25}.section p{color:#52616c}.text-link{font-weight:800;color:#2e607e}.work-section{background:var(--cream)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:32px}.section-head p:last-child{max-width:380px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery .photo-placeholder{min-height:260px}.project{background:white}.project-copy{padding:20px}.project-copy h3{margin-bottom:7px}.project-copy p{font-size:13px;margin:0}.services{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:42px 0}.service-grid article{border-top:2px solid var(--navy);padding:22px 0}.service-number{color:#6f8fa7;font-size:12px;font-weight:800}.service-grid h3{margin:14px 0 10px;font-size:19px}.service-grid p{font-size:14px}.coming{background:var(--navy2);color:white;padding:34px 42px;display:flex;align-items:center;justify-content:space-between;gap:35px}.coming h3{font-size:24px;margin-bottom:10px}.coming p{color:#cddbe5;max-width:700px;margin-bottom:0}.coming .eyebrow{margin-bottom:10px}.area{background:var(--cream)}.area-card{padding:45px;background:#e5ecf0;border-left:5px solid var(--blue)}.area-card strong{font-size:25px}.area-card span{font-size:12px;letter-spacing:.1em;font-weight:800;color:#56768d}.contact-section{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-section h2{font-size:clamp(36px,4vw,56px)}.contact-section p{color:#d2dce4}.contact-note{margin-top:35px}.contact-note a{text-decoration:underline}.contact-note a[aria-disabled=true]{opacity:.7;cursor:default}.contact-section form{background:#fff;color:var(--ink);padding:35px;display:grid;gap:15px}.contact-section label{font-size:13px;font-weight:800;display:grid;gap:6px}.contact-section input,.contact-section select,.contact-section textarea{width:100%;padding:12px;border:1px solid #cbd5db;border-radius:3px;font:inherit;font-weight:400;color:var(--ink)}.contact-section .btn.primary{background:var(--navy);color:white;width:100%}.contact-section form small{color:var(--muted);font-size:11px}.hidden{position:absolute;left:-9999px}footer{background:#101b25;color:#fff;padding:42px 0 18px}.footer-grid{display:flex;justify-content:space-between;gap:20px}.footer-grid p{font-size:12px;color:#aebdc8}.footer-grid a{font-size:13px}.copyright{border-top:1px solid #34424d;padding-top:17px;font-size:11px;color:#8fa0ad;margin-top:30px}@media(max-width:800px){.menu{display:block}.nav nav{display:none;position:absolute;left:0;right:0;top:77px;background:white;padding:22px;box-shadow:0 12px 20px #0002;flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.hero{padding:60px 0 75px}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr;gap:42px}.hero-visual .photo-placeholder{height:300px}.floating-note{left:12px}.trust-inner{flex-wrap:wrap;justify-content:center;text-align:center}.section{padding:65px 0}.portrait{min-height:310px}.section-head{display:block}.gallery{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.coming{display:block}.coming .btn{margin-top:20px}.footer-grid{flex-wrap:wrap}}@media(max-width:520px){.gallery,.service-grid{grid-template-columns:1fr}.gallery .photo-placeholder{min-height:220px}.hero-visual .photo-placeholder{height:240px}.contact-section form{padding:22px}.coming{padding:25px}.footer-grid{display:block}.brand{font-size:13px}}

.hero-photo{display:block;width:100%;height:470px;object-fit:cover;object-position:center 45%;border-radius:6px}.project-photo{display:block;width:100%;height:310px;object-fit:cover;object-position:center 40%}.project{overflow:hidden;border-radius:5px;box-shadow:0 5px 20px #1623310d}@media(max-width:800px){.hero-photo{height:390px}.project-photo{height:300px}}@media(max-width:520px){.hero-photo{height:360px}.project-photo{height:330px}}

.about-visual{position:relative;min-height:470px;overflow:hidden;border-radius:6px;background:#e8ecef}.about-visual img{display:block;width:100%;height:470px;object-fit:cover}.about-label{position:absolute;bottom:0;left:0;right:0;padding:17px 20px;background:#162331e8;color:white;font-size:12px;font-weight:800;letter-spacing:.1em}.difference{background:#eef3f5}.difference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px}.difference-grid article{padding:25px 20px;background:white;border-top:3px solid #547c9b}.difference-grid strong{color:#547c9b;font-size:13px}.difference-grid h3{margin:10px 0;font-size:19px}.difference-grid p{font-size:14px;margin:0}@media(max-width:800px){.difference-grid{grid-template-columns:repeat(2,1fr)}.about-visual,.about-visual img{height:350px;min-height:350px}}@media(max-width:520px){.difference-grid{grid-template-columns:1fr}.about-visual,.about-visual img{height:310px;min-height:310px}}

/* Accessibility and launch polish */
:focus-visible{outline:3px solid #79b8e5;outline-offset:3px}.skip-link{position:absolute;left:12px;top:-60px;z-index:20;background:#fff;color:var(--navy);padding:12px 16px;border-radius:4px;font-weight:800}.skip-link:focus{top:12px}.project-copy{min-height:72px}.project-copy h3{font-size:16px}.contact-section input:focus,.contact-section select:focus,.contact-section textarea:focus{outline:3px solid #83b8dc;outline-offset:1px}.menu:focus-visible{outline-color:var(--blue)}@media(max-width:520px){.wrap{width:min(100% - 32px,1140px)}.actions .btn{width:100%}.nav nav{top:77px}}
