
:root{--ink:#10171b;--navy:#111d22;--cream:#f3f2ed;--white:#fff;--muted:#bcc6ca;--accent:#41cdf4;--blue:#238be9;--display:Georgia,'Times New Roman',serif;--sans:Inter,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}button{font:inherit}::selection{background:#45caee;color:#10171b}.container{width:min(100% - 80px,1320px);margin-inline:auto}.skip-link{position:absolute;left:15px;top:-100px;z-index:300;background:#fff;color:#111;padding:10px}.skip-link:focus{top:12px}.header{position:relative;z-index:20;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff22}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:90px}.brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none}.brand img{width:49px;height:49px;object-fit:cover;border-radius:3px}.brand-text{display:block;font-size:16px;letter-spacing:.19em;font-weight:760;line-height:1.2}.brand-text em,.footer-brand em{color:var(--accent);font-style:normal}.brand-text small{display:block;font-size:9px;color:#aab9c0;letter-spacing:.38em;line-height:1.75}.nav{display:flex;gap:39px;align-items:center}.nav a{font-size:12px;letter-spacing:.09em;color:#e2e5e4;text-decoration:none;font-weight:600;text-transform:uppercase}.nav a:hover,.nav a:focus-visible{color:var(--accent)}.nav-cta{border:1px solid #ffffff70;padding:12px 16px;border-radius:2px}.nav-cta span{margin-left:15px;color:var(--accent)}.menu-button{display:none}
.hero{height:clamp(680px,81vh,900px);background:#121e21;position:relative;overflow:hidden;color:#fff}.hero-image{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 40%;filter:saturate(.95)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,19,23,.88) 0%,rgba(9,19,23,.7) 40%,rgba(9,19,23,.14) 100%),linear-gradient(0deg,#0a171bcc,transparent 36%)}.hero-inner{position:relative;display:flex;height:100%;align-items:center}.hero-copy{padding-bottom:48px;max-width:810px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.26em;display:flex;align-items:center;gap:13px}.eyebrow-rule{width:31px;height:2px;background:var(--accent)}h1,h2,h3,p{margin-top:0}.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(72px,8.1vw,138px);line-height:.99;letter-spacing:-.055em;margin:32px 0}.hero h1 i{font-weight:400;color:var(--accent)}.hero p{font-size:19px;max-width:480px;color:#ecf0ed;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:38px}.button{display:inline-flex;align-items:center;gap:30px;justify-content:space-between;border-radius:2px;padding:16px 22px;text-transform:uppercase;letter-spacing:.08em;font-weight:750;font-size:12px;text-decoration:none;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--accent);color:#0a1720}.button.primary:hover{background:#80e9fb}.text-link{font-weight:730;font-size:12px;text-transform:uppercase;text-decoration:none;letter-spacing:.1em}.text-link span{margin-left:9px;color:var(--accent)}.text-link:hover{text-decoration:underline}.hero-bottom{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.22em;color:#d9dfdd}.hero-bottom a{text-decoration:none}.hero-bottom a span{color:var(--accent);margin-left:8px}
.section-pad{padding-block:130px}.kicker{font-size:11px;font-weight:780;letter-spacing:.26em;text-transform:uppercase;color:#138fae;margin:0 0 22px}.intro-grid{display:grid;grid-template-columns:1fr .72fr;gap:14%;align-items:center}.intro-grid h2,.section-head h2,.services h2,.about h2,.contact h2{font-family:var(--display);font-size:clamp(52px,6.2vw,91px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin:0}.intro-grid h2 i,.section-head h2 i,.services h2 i,.about h2 i,.contact h2 i{font-weight:400;color:#258fb6}.intro-grid p:not(.kicker){color:#616d71;font-size:16px;line-height:1.8}.intro-grid p.intro-lead{font-family:var(--display);font-size:26px;color:#222c2d;line-height:1.4;margin-bottom:20px}
.work-section{background:#0e171c;color:#fff;padding-block:125px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:50px}.section-head h2{font-size:clamp(51px,5.6vw,80px)}.section-head p:not(.kicker){max-width:400px;color:#adbdc0;font-size:15px;margin-bottom:8px}.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:170px;gap:14px}.photo{position:relative;overflow:hidden;background:#263238;text-decoration:none;color:#fff;isolation:isolate}.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#081114c8,transparent 55%);z-index:1}.photo img{height:100%;width:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}.photo:hover img,.photo:focus img{transform:scale(1.055);filter:brightness(1.07)}.photo>span{position:absolute;bottom:17px;left:20px;right:17px;font-family:var(--display);font-size:24px;z-index:2;line-height:1.2}.photo small{display:block;font:700 9px var(--sans);letter-spacing:.2em;margin-bottom:7px;color:var(--accent)}.photo b{font-family:var(--sans);float:right;color:var(--accent);font-size:20px}.tile-1{grid-column:span 7;grid-row:span 3}.tile-2{grid-column:span 5;grid-row:span 2}.tile-3{grid-column:span 5;grid-row:span 2}.tile-4{grid-column:span 4;grid-row:span 2}.tile-5{grid-column:span 4;grid-row:span 2}.tile-6{grid-column:span 4;grid-row:span 2}.work-note{color:#a4b7b9;font-size:13px;margin:22px 0 0}.work-note a{color:var(--accent)}
.services{background:var(--cream)}.services-header{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:68px}.services-header>p{width:300px;color:#647076;font-size:15px}.service-list{border-top:1px solid #c7d0d0}.service{display:grid;grid-template-columns:100px 1fr 50px;align-items:start;padding:33px 5px;gap:30px;border-bottom:1px solid #c7d0d0}.service-number{font-size:11px;letter-spacing:.15em;color:#129bc5;font-weight:800;padding-top:12px}.service h3{font-family:var(--display);font-weight:400;font-size:32px;letter-spacing:-.025em;margin:0}.service p{color:#5c6b6f;max-width:650px;font-size:14px;margin:8px 0 0}.service-arrow{text-align:right;font-size:25px;color:#199ac3}
.feature-strip{min-height:390px;position:relative;display:flex;align-items:center;color:#fff;background:#22302b}.feature-strip>img,.feature-dark{position:absolute;inset:0;width:100%;height:100%}.feature-strip>img{object-fit:cover;object-position:center 45%}.feature-dark{background:#0c1618a8}.feature-content{position:relative;text-align:center;padding-block:70px}.feature-content .kicker{color:var(--accent)}.feature-content blockquote{font:italic clamp(30px,4.1vw,58px)/1.18 var(--display);max-width:920px;margin:22px auto}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:.88fr 1fr;align-items:center;gap:9%}.about-image{min-height:540px;height:100%;background:#e0e3db}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy p:not(.kicker){max-width:590px;color:#5a6769;line-height:1.8;font-size:16px}.about-copy h2{margin-bottom:30px}.about-copy .availability{font-size:13px!important;font-weight:600;color:#2f464d!important;border-top:1px solid #d3dce0;margin-top:33px;padding-top:25px}.avail-dot{display:inline-block;width:9px;height:9px;background:#1d9eaa;border-radius:50%;margin-right:9px}
.contact{background:#0c171d;color:#fff;padding-block:122px}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:center}.contact h2{font-size:clamp(61px,7vw,108px);margin-bottom:30px}.contact p:not(.kicker){max-width:490px;color:#b9c7c8;margin-bottom:32px}.contact-side{display:grid;gap:32px}.contact-side div{border-bottom:1px solid #ffffff25;padding-bottom:26px}.contact-side small{display:block;color:var(--accent);font-size:10px;font-weight:750;letter-spacing:.2em;margin-bottom:10px}.contact-side a{font:400 clamp(17px,2vw,24px)/1.3 var(--display);text-decoration:none;overflow-wrap:anywhere}.contact-side a:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.policies{background:#e9ecea;padding-block:54px}.policies h2{font-size:16px;font-weight:700;letter-spacing:.02em;margin-bottom:22px}.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.policy-grid h3{font-size:12px;margin:0 0 8px}.policy-grid p{font-size:12px;line-height:1.75;color:#5c6668}.policy-grid a{color:#1d718f}.footer{background:#081116;color:#fff;padding:36px 0}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;gap:25px;align-items:center}.footer-brand{font-weight:800;text-decoration:none;font-size:20px;letter-spacing:.18em}.footer-brand span{font-size:16px;color:var(--accent)}.footer-main>div span{display:block;color:#99a7aa;font-size:11px}.footer-main>a:last-child{font-size:11px;color:#adbdc0}.lightbox{position:fixed;inset:0;background:#071014f2;z-index:200;display:none;align-items:center;justify-content:center;flex-direction:column;padding:50px 18px 25px}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:calc(100vh - 115px);object-fit:contain}.lightbox p{color:#d8e8e9;margin:12px}.lightbox-close{position:absolute;right:26px;top:13px;color:#fff;background:none;border:0;font-size:40px;line-height:1;cursor:pointer}
@media(max-width:900px){.container{width:min(100% - 44px,1320px)}.nav{gap:17px}.nav a{font-size:10px}.hero{height:730px}.hero h1{font-size:clamp(68px,10vw,110px)}.section-pad{padding-block:85px}.intro-grid,.about-grid,.contact-grid{gap:6%}.intro-grid p.intro-lead{font-size:22px}.gallery{grid-auto-rows:135px}.section-head{align-items:start}.photo>span{font-size:19px}.about-image{min-height:420px}.policy-grid{gap:14px}}
@media(max-width:640px){.container{width:min(100% - 34px,1320px)}.header-row{min-height:75px}.brand img{height:43px;width:43px}.brand-text{font-size:13px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;align-items:center;border:1px solid #ffffff55;background:transparent;border-radius:2px}.menu-button span{width:20px;height:2px;background:#fff}.nav{display:none;position:absolute;top:74px;left:0;right:0;background:#10171b;padding:22px 20px 30px;flex-direction:column;align-items:stretch;gap:25px;box-shadow:0 15px 20px #0004}.nav.is-open{display:flex}.nav a{font-size:13px}.hero{height:min(780px,calc(100svh - 74px));min-height:610px}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#091317df 0%,#091317aa 64%,#09131766 100%)}.hero-copy{padding:0 0 48px}.eyebrow{font-size:9px;letter-spacing:.13em}.hero h1{font-size:clamp(56px,13.3vw,85px);margin:24px 0}.hero p{font-size:16px}.hero-actions{gap:19px;flex-wrap:wrap}.button{font-size:11px;padding:13px 15px;gap:16px}.text-link{font-size:11px}.hero-bottom{bottom:17px;font-size:8px;letter-spacing:.09em}.intro-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:33px}.section-pad{padding-block:75px}.intro-grid h2,.about h2,.services h2,.contact h2{font-size:56px}.intro-grid p.intro-lead{font-size:23px}.work-section{padding-block:76px}.section-head,.services-header{display:block;margin-bottom:29px}.section-head p:not(.kicker){margin-top:18px}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px;gap:9px}.tile-1{grid-column:span 2;grid-row:span 2}.tile-2,.tile-3,.tile-4,.tile-5,.tile-6{grid-column:span 1;grid-row:span 1}.tile-6{grid-column:span 2;grid-row:span 2}.photo>span{left:10px;bottom:10px;right:10px;font-size:16px}.photo small{font-size:8px;letter-spacing:.12em}.photo b{font-size:16px}.services-header>p{width:auto;margin-top:18px}.service{grid-template-columns:38px 1fr 19px;padding:27px 0;gap:12px}.service h3{font-size:24px}.service p{font-size:13px}.feature-strip{min-height:340px}.about-image{min-height:340px;max-height:450px}.contact{padding-block:80px}.contact h2{font-size:64px}.policy-grid{grid-template-columns:1fr;gap:8px}.footer-main{grid-template-columns:1fr;gap:13px}.footer-brand{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
