:root{--ink:#10231f;--cream:#f2efe7;--blue:#64b5e8;--line:rgba(16,35,31,.22);--mono:'DM Mono',monospace;--sans:'DM Sans',sans-serif;--serif:'Playfair Display',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}.site-header{position:absolute;z-index:3;top:0;left:0;width:100%;padding:24px 4vw;display:flex;justify-content:space-between;align-items:flex-start;color:#fff}.brand{display:inline-flex;flex-direction:column;text-decoration:none;color:inherit}.brand span{font:600 42px/.72 var(--serif);letter-spacing:-2px}.brand small{font:9px var(--mono);letter-spacing:1.45px;margin-top:10px}.site-header nav{display:flex;align-items:center;gap:28px;font:11px var(--mono);text-transform:uppercase;letter-spacing:.4px}.site-header nav a{color:#fff;text-decoration:none}.nav-cta{border:1px solid rgba(255,255,255,.6);padding:12px 14px}.nav-cta span,.submit span{font-size:18px;margin-left:8px}.menu-toggle{display:none}.hero{position:relative;min-height:780px;height:100vh;overflow:hidden;color:#fff}.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-video{object-fit:cover}.hero-shade{background:linear-gradient(180deg,rgba(5,15,12,.42),rgba(5,15,12,.1) 40%,rgba(5,15,12,.65))}.hero-top{position:absolute;top:110px;left:4vw;font:10px var(--mono);letter-spacing:.55px}.hero-top span{color:var(--blue);margin:0 8px}.hero-content{position:absolute;left:4vw;right:4vw;bottom:52px}.eyebrow{margin:0 0 22px;font:10px var(--mono);letter-spacing:1.2px}.light{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(57px,9.3vw,151px)/.84 var(--serif);letter-spacing:-.075em;margin:0}em{font-style:italic;font-weight:500}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:48px}.hero-bottom p{max-width:320px;line-height:1.35}.round-link{width:58px;height:58px;border:1px solid rgba(255,255,255,.65);border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;font-size:24px}.scroll-note{position:absolute;right:4vw;bottom:25px;font:9px var(--mono);letter-spacing:1px;writing-mode:vertical-rl}.section-pad{padding:126px 9vw}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1.15fr .7fr;gap:12vw}.intro h2,.services h2,.territory h2,.why h2,.contact h2{font:500 clamp(43px,5.8vw,85px)/.93 var(--serif);letter-spacing:-.065em;margin:0}.intro .lead{font-size:23px;line-height:1.25}.intro p:not(.eyebrow){line-height:1.5}.text-link{display:inline-block;margin-top:22px;color:var(--ink);font:11px var(--mono);letter-spacing:.4px;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link span{font-size:18px;margin-left:8px}.services-heading{padding-bottom:70px}.service-card{position:relative;min-height:690px;color:#fff;overflow:hidden;border-top:1px solid rgba(255,255,255,.2)}.service-card img,.card-overlay{position:absolute;inset:0;width:100%;height:100%}.service-card img{object-fit:cover;transition:transform .7s ease}.service-card:hover img{transform:scale(1.04)}.card-overlay{background:linear-gradient(90deg,rgba(4,18,14,.7),rgba(4,18,14,.12) 70%)}.service-number{position:absolute;top:35px;right:5vw;font:11px var(--mono);color:var(--blue)}.service-copy{position:absolute;left:9vw;bottom:60px;max-width:620px}.service-copy h3{font:500 clamp(43px,5.8vw,83px)/.9 var(--serif);letter-spacing:-.065em;margin-bottom:20px}.service-copy p:not(.eyebrow){max-width:390px;line-height:1.4}.service-more{border:0;background:transparent;color:#fff;font:11px var(--mono);text-transform:uppercase;padding:0;border-bottom:1px solid var(--blue);padding-bottom:5px;cursor:pointer}.service-more span{color:var(--blue);font-size:18px;margin-left:10px}.details{padding-top:110px;padding-bottom:120px}.details-list{border-top:1px solid var(--line)}.details-list button{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:22px 0;display:grid;grid-template-columns:70px 1fr 30px;color:var(--ink);font:500 clamp(26px,3.4vw,50px)/1 var(--serif);cursor:pointer}.details-list button span{font:10px var(--mono);padding-top:8px}.details-list button b{font:400 28px var(--sans);text-align:right}.territory{background:var(--blue);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.places{border-top:1px solid rgba(16,35,31,.45)}.places p{border-bottom:1px solid rgba(16,35,31,.45);padding:13px 0;margin:0;font:500 clamp(22px,2.4vw,35px)/1.1 var(--serif);letter-spacing:-.035em}.places small{display:block;margin-top:20px;font:9px var(--mono);letter-spacing:.8px}.why{display:grid;grid-template-columns:1fr 1fr}.why-image{min-height:760px}.why-image img{width:100%;height:100%;object-fit:cover}.why-copy{padding:120px 9vw}.why h2{font-size:clamp(43px,5vw,72px)}.why-items{margin-top:75px}.why-items p{display:grid;grid-template-columns:42px 1fr;gap:0 10px;border-top:1px solid var(--line);padding:18px 0;line-height:1.4;font-size:14px}.why-items span{font:10px var(--mono);grid-row:span 2;padding-top:3px}.why-items b{font-size:16px;margin-bottom:5px}.contact{background:var(--ink);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12vw}.contact h2{font-size:clamp(48px,6.2vw,90px)}.contact-grid>div>p:not(.eyebrow){max-width:370px;line-height:1.5;margin-top:35px}.contact-note{color:var(--blue);font:10px var(--mono);letter-spacing:1px}.contact form{display:flex;flex-direction:column;gap:20px}label{font:10px var(--mono);letter-spacing:.7px;text-transform:uppercase;color:var(--blue)}input,select,textarea{appearance:none;border:0;border-bottom:1px solid rgba(255,255,255,.5);width:100%;padding:12px 0 11px;background:transparent;border-radius:0;color:#fff;font:16px var(--sans);outline:none}select{background:#10231f}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:rgba(255,255,255,.63)}.submit{margin-top:14px;background:var(--blue);border:0;padding:15px;color:var(--ink);text-align:left;font:11px var(--mono);text-transform:uppercase;cursor:pointer}.submit span{float:right}.form-message{font-size:13px;color:var(--blue);margin:0}footer{padding:45px 4vw;display:flex;justify-content:space-between;align-items:end;background:#0a1714;color:#fff;font:10px var(--mono)}footer .brand span{font-size:32px}footer p{margin:0}footer>a:last-child{color:#fff;text-decoration:none}dialog{max-width:550px;border:0;padding:55px;background:var(--cream);color:var(--ink);box-shadow:0 20px 80px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(0,0,0,.65)}dialog h2{font:500 48px/.95 var(--serif);letter-spacing:-.06em;margin:0 0 25px}dialog ul{padding-left:20px;line-height:1.6}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:32px;cursor:pointer}.cursor-glow{position:fixed;pointer-events:none;width:180px;height:180px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(100,181,232,.14);filter:blur(20px);z-index:5;mix-blend-mode:screen;opacity:0}@media (hover:hover){.cursor-glow{opacity:1}}@media(max-width:760px){.site-header{padding:20px 6vw}.brand span{font-size:34px}.site-header nav{display:none;position:absolute;top:76px;left:0;width:100%;background:var(--ink);padding:25px 6vw;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu-toggle{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#fff;font:10px var(--mono);text-transform:uppercase}.menu-toggle i,.menu-toggle i:before{display:block;width:21px;height:1px;background:#fff;content:''}.menu-toggle i:before{transform:translateY(5px)}.hero{min-height:650px}.hero-top{top:95px;font-size:9px;max-width:250px}.hero-content{left:6vw;right:6vw;bottom:55px}.hero-bottom{margin-top:35px}.hero-bottom p{font-size:14px;max-width:230px}.scroll-note{display:none}.section-pad{padding:80px 6vw}.intro-grid,.territory,.contact-grid,.why{grid-template-columns:1fr;gap:40px}.intro .lead{font-size:20px}.services-heading{padding-bottom:45px}.service-card{min-height:600px}.service-copy{left:6vw;bottom:45px;right:6vw}.service-copy h3{font-size:48px}.details{padding-top:70px}.details-list button{grid-template-columns:45px 1fr 20px;font-size:29px}.why-image{min-height:450px}.why-copy{padding:80px 6vw}.why-items{margin-top:45px}.contact-grid>div>p:not(.eyebrow){margin-top:22px}footer{padding:32px 6vw;display:grid;gap:20px;align-items:start}footer>a:last-child{grid-column:1}dialog{width:calc(100% - 30px);padding:45px 28px}}
