:root{--ink:#171a1e;--night:#15191d;--paper:#f4f4f1;--white:#fff;--blue:#1769ff;--muted:#777d85;--line:rgba(23,26,30,.2);--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{height:78px;padding:0 4.2vw;background:var(--night);color:var(--white);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.brand{display:block;width:142px;height:53px;overflow:hidden}.brand img,.footer-brand img{object-fit:cover;object-position:center;mix-blend-mode:screen}.site-nav{display:flex;align-items:center;gap:clamp(22px,3vw,54px);font-size:12px}.site-nav a:not(.nav-cta){opacity:.83;transition:opacity .2s}.site-nav a:hover{opacity:1}.nav-cta{padding:13px 18px;background:var(--paper);color:var(--ink);font-weight:600}.menu-toggle{display:none}.hero{min-height:calc(100svh - 78px);display:flex;align-items:center;position:relative;background:var(--night);color:var(--white);overflow:hidden}.hero-copy{position:relative;width:min(920px,78%);padding:8vh 0 9vh 9vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;z-index:2}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.14em;font-weight:600}.eyebrow{color:#c9cbd0;margin:0 0 30px}.eyebrow i{display:inline-block;width:5px;height:5px;margin:0 10px 2px;background:var(--blue);border-radius:50%}h1,h2,h3,p{margin-top:0}.hero h1{font-family:var(--display);font-size:clamp(62px,10vw,148px);line-height:.82;letter-spacing:-.025em;font-weight:700;margin:0 0 34px;white-space:nowrap}.hero h1 em{font-style:normal;color:#c8cbd0}.hero-deck{font-size:16px;max-width:330px;line-height:1.5;margin-bottom:26px}.button{min-height:51px;padding:0 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;border:0;font:600 12px var(--body);cursor:pointer;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#f4f4f1;color:var(--ink)}.button-light:hover{background:white}.button span{margin:0;font-size:19px}.hero-location{font-size:11px;color:#a5aab0;margin:27px 0 0}.hero-image{position:absolute;inset:0;margin:0;min-height:0;overflow:hidden;z-index:0}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,15,18,.78) 0%,rgba(12,15,18,.58) 43%,rgba(12,15,18,.12) 100%),linear-gradient(0deg,rgba(12,15,18,.38),transparent 48%)}.hero-image img{object-position:center 48%;filter:saturate(.84)}.hero-image figcaption{position:absolute;bottom:28px;right:34px;z-index:1;color:white;font-size:9px;letter-spacing:.15em}.hero-image figcaption b{font-weight:500;margin-left:22px;color:#c7cbd0}.section-pad{padding-left:9vw;padding-right:9vw}.intro{padding-top:126px;padding-bottom:135px}.section-kicker{color:var(--muted);margin-bottom:20px}.section-kicker span{color:var(--blue)}.intro-content{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.intro h2,.services h2,.work h2,.about h2,.quote h2{font:600 clamp(48px,6.3vw,94px)/.9 var(--display);letter-spacing:-.015em;margin:0}.intro h2 span,.work-heading h2 span,.about h2 span{color:#8d939b}.intro-text{max-width:470px;padding-bottom:7px}.lead{font-size:21px;line-height:1.4;font-weight:500;letter-spacing:-.025em}.intro-text>p:not(.lead),.about-grid>div>p:not(.lead){font-size:13px;color:#626870;line-height:1.8}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding:8px 0 5px;font-weight:600;font-size:12px;margin-top:13px}.text-link span{margin-left:24px;color:var(--blue)}.services{padding-top:93px;padding-bottom:115px;background:#e9eae7}.services-head,.work-heading{display:flex;justify-content:space-between;align-items:end;gap:5vw}.services-head>p,.work-heading>p{width:245px;color:#6b7077;font-size:12px;line-height:1.75;margin:0 0 5px}.services h2{font-size:clamp(44px,5.5vw,78px)}.service-list{margin-top:55px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:12% 1fr auto;gap:20px;padding:27px 0 29px;border-bottom:1px solid var(--line);align-items:start}.service-no{font-size:10px;color:var(--blue);padding-top:7px}.service-row h3{font:600 clamp(27px,3vw,39px)/1.04 var(--display);margin:0 0 8px}.service-row p{font-size:12px;color:#6b7077;max-width:465px;margin:0}.service-mark{font-size:9px;letter-spacing:.12em;color:#8b9095;padding-top:8px}.work{padding-top:112px;padding-bottom:120px}.work-heading{padding-bottom:74px}.work-heading h2{font-size:clamp(55px,8vw,112px)}.work-heading>p{margin-bottom:10px}.project{margin:0 auto 117px;max-width:1440px;padding:0 9vw}.project:last-child{margin-bottom:0}.project-heading{display:grid;grid-template-columns:12% 1fr 27%;gap:18px;align-items:start;margin-bottom:31px}.project-number{font:500 18px var(--display);color:var(--blue);padding-top:7px}.project-heading .section-kicker{margin-bottom:9px}.project-heading h3{font:600 clamp(40px,5vw,65px)/.91 var(--display);letter-spacing:-.015em;margin:0}.project-note{font-size:12px;line-height:1.7;color:#717780;margin:36px 0 0}.project-pair,.frankston-pair{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:end}.photo{margin:0;position:relative;background:#d7d8d6;overflow:hidden}.photo img{transition:transform .7s cubic-bezier(.2,.65,.2,1)}.photo:hover img{transform:scale(1.025)}.photo figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:13px 15px;color:white;font-size:8px;letter-spacing:.14em;background:linear-gradient(0deg,rgba(15,18,21,.58),transparent)}.photo-before{height:clamp(330px,38vw,520px)}.photo-after{height:clamp(430px,50vw,650px)}.photo-before img{object-position:center 55%}.photo-after img{object-position:center 50%}.project-hampton{padding-left:15vw;padding-right:9vw}.hampton-pair{display:grid;grid-template-columns:.82fr 1.18fr;grid-template-rows:270px 235px;gap:14px;align-items:stretch}.photo-hampton-before{grid-row:1/3;height:100%}.photo-hampton-after{height:270px}.photo-hampton-detail{height:235px}.photo-hampton-before img{object-position:center 58%}.photo-hampton-after img{object-position:center 55%}.photo-hampton-detail img{object-position:center 60%}.project-frankston{padding-left:9vw;padding-right:15vw}.frankston-pair{grid-template-columns:1.15fr .85fr}.photo-frankston-before{height:clamp(340px,39vw,520px)}.photo-frankston-detail{height:clamp(420px,49vw,640px)}.photo-frankston-before img{object-position:center 57%}.photo-frankston-detail img{object-position:center 48%}.about{padding-top:105px;padding-bottom:120px;background:#e9eae7}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}.about-grid>div{max-width:460px}.about h2{font-size:clamp(50px,6vw,86px)}.quote{padding-top:110px;padding-bottom:112px;background:var(--night);color:white;display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.quote .section-kicker{color:#a6abb1}.quote h2{font-size:clamp(52px,6vw,84px);margin-bottom:22px}.quote-intro>p:not(.section-kicker){max-width:365px;color:#b4b8be;font-size:13px;line-height:1.8}.quote-intro .quote-location{margin-top:42px;font-size:9px!important;letter-spacing:.12em;color:#858b93!important}.form-note,.demo-notice{font-size:10px;color:#aab0b7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 16px}.quote-form label{font-size:10px;color:#d9dce0;display:block}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:6px;padding:11px 0;color:white;background:transparent;border:0;border-bottom:1px solid #50565e;border-radius:0;font:13px var(--body);outline:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue)}.quote-form select{color:#b7bbc1}.quote-form select option{color:var(--ink)}.quote-form textarea{resize:vertical}.quote-form .full{grid-column:1/-1}.button-blue{margin-top:24px;background:var(--blue);color:white;min-width:190px}.button-blue:hover{background:#0755df}.demo-notice{margin:15px 0 0;color:#808790}.form-status{min-height:20px;margin:8px 0 0;color:#a8c2ff;font-size:11px}.site-footer{padding:36px 4.5vw 20px;background:#101316;color:#f6f6f4}.footer-brand{display:block;width:130px;height:47px;overflow:hidden;margin-bottom:24px}.site-footer>p{font-size:9px;letter-spacing:.11em;color:#a3a8af;line-height:1.8}.footer-links{display:flex;gap:23px;font-size:10px;margin:24px 0 40px}.footer-bottom{border-top:1px solid #363b41;padding-top:16px;display:flex;gap:30px;color:#90969e;font-size:9px}.footer-bottom a:first-of-type{margin-left:auto}.mobile-quote{display:none}.menu-toggle{border:0}
@media(max-width:760px){html{scroll-padding-top:66px}.site-header{height:66px;padding:0 20px}.brand{width:112px;height:43px}.menu-toggle{display:flex;width:38px;height:38px;border:1px solid #555b63;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-toggle span{width:14px;height:1px;background:white;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--night);padding:9px 20px 22px;align-items:stretch;gap:0;flex-direction:column}.site-nav.open{display:flex}.site-nav a{padding:13px 0;border-bottom:1px solid #373c43}.site-nav .nav-cta{border:0;margin-top:13px;padding:14px;background:var(--paper);text-align:center}.hero{min-height:calc(100svh - 66px);display:flex;flex-direction:column;justify-content:flex-end}.hero-copy{width:100%;padding:9vh 22px 42px;order:2;min-height:0;justify-content:flex-end}.hero-image{position:absolute;inset:0;height:100%;min-height:0;margin:0}.hero-image:after{background:linear-gradient(0deg,rgba(12,15,18,.86) 0%,rgba(12,15,18,.66) 37%,rgba(12,15,18,.14) 100%)}.hero-image img{object-position:center 50%;filter:saturate(.84)}.hero-image figcaption{display:none}.hero-copy .eyebrow{font-size:8px;margin-bottom:20px}.hero h1{font-size:clamp(54px,15.4vw,80px);line-height:.83;white-space:normal;margin-bottom:23px}.hero-deck{font-size:14px;max-width:295px;margin-bottom:21px}.button{min-height:49px}.hero-location{font-size:9px;margin-top:18px}.section-pad{padding-left:22px;padding-right:22px}.intro{padding-top:79px;padding-bottom:83px}.section-kicker{font-size:9px;margin-bottom:17px}.intro-content,.about-grid{grid-template-columns:1fr;gap:26px}.intro h2{font-size:66px}.lead{font-size:18px}.intro-text>p:not(.lead),.about-grid>div>p:not(.lead){font-size:12px}.services{padding-top:73px;padding-bottom:80px}.services-head,.work-heading{display:block}.services-head>p,.work-heading>p{width:auto;max-width:310px;margin-top:18px}.services h2{font-size:54px}.service-list{margin-top:37px}.service-row{grid-template-columns:33px 1fr;padding:22px 0;gap:8px}.service-row h3{font-size:30px}.service-row p{font-size:11px;max-width:320px}.service-mark{display:none}.work{padding-top:76px;padding-bottom:80px}.work-heading{padding-bottom:52px}.work-heading h2{font-size:66px}.project,.project-hampton,.project-frankston{padding-left:22px;padding-right:22px;margin-bottom:78px}.project-heading{grid-template-columns:30px 1fr;gap:8px;margin-bottom:21px}.project-number{font-size:15px}.project-heading h3{font-size:44px}.project-note{grid-column:2;margin:8px 0 0;max-width:300px;font-size:11px}.project-pair,.frankston-pair{grid-template-columns:.83fr 1.17fr;gap:8px}.photo-before{height:280px}.photo-after{height:340px}.photo figcaption{padding:9px 8px;font-size:7px;letter-spacing:.1em}.hampton-pair{grid-template-columns:1fr 1fr;grid-template-rows:235px 190px;gap:8px}.photo-hampton-before{grid-row:1/3}.photo-hampton-after{height:235px}.photo-hampton-detail{height:190px}.photo-hampton-before img{object-position:54%}.frankston-pair{grid-template-columns:1.07fr .93fr}.photo-frankston-before{height:290px}.photo-frankston-detail{height:350px}.about{padding-top:73px;padding-bottom:80px}.about h2{font-size:57px}.quote{padding-top:75px;padding-bottom:88px;grid-template-columns:1fr;gap:33px}.quote h2{font-size:62px}.quote-intro>p:not(.section-kicker){font-size:12px}.quote-intro .quote-location{margin-top:22px}.form-grid{gap:18px 12px}.quote-form input,.quote-form select,.quote-form textarea{font-size:13px}.site-footer{padding:31px 22px 86px}.footer-links{gap:17px;flex-wrap:wrap}.footer-bottom{gap:12px;flex-wrap:wrap}.footer-bottom a:first-of-type{margin-left:auto}.mobile-quote{position:fixed;z-index:9;display:flex;justify-content:space-between;align-items:center;left:12px;right:12px;bottom:10px;padding:14px 17px;background:var(--blue);color:white;font-weight:600;font-size:11px;box-shadow:0 5px 25px rgba(0,0,0,.22)}}
@media(max-width:380px){.hero h1{font-size:54px}.intro h2{font-size:59px}.project-heading h3{font-size:39px}.hampton-pair{grid-template-rows:210px 175px}.photo-hampton-after{height:210px}.photo-hampton-detail{height:175px}.quote h2{font-size:54px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Final polish: legibility and a contextual mobile quote action. */
:root{--muted:#666d75}
.project-note{color:#5f646b}
@media(max-width:760px){
  html{scroll-padding-top:calc(66px + env(safe-area-inset-top))}
  .site-header{height:calc(66px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0}
  .site-nav{top:calc(66px + env(safe-area-inset-top))}
  .hero{min-height:calc(100svh - 66px - env(safe-area-inset-top))}
  .mobile-quote{left:auto;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 28px);min-height:44px;padding:11px 17px;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.25)}
  .mobile-quote.is-hidden{display:none}
  .photo figcaption{padding:10px 9px;color:#fff;font-size:8px;font-weight:600;letter-spacing:.07em;background:linear-gradient(0deg,rgba(10,12,15,.92),rgba(10,12,15,.68))}
  .site-footer{padding-bottom:calc(31px + env(safe-area-inset-bottom))}
}
@media(max-width:760px) and (max-height:600px){.mobile-quote{display:none!important}}

/* Final polish: improve secondary-text contrast and keep the mobile quote action contextual. */
:root{--muted:#666d75}
.project-note{color:#5f646b}
@media(max-width:760px){
  html{scroll-padding-top:calc(66px + env(safe-area-inset-top))}
  .site-header{height:calc(66px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0}
  .site-nav{top:calc(66px + env(safe-area-inset-top))}
  .hero{min-height:calc(100svh - 66px - env(safe-area-inset-top))}
  .mobile-quote{left:auto;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 28px);min-height:44px;padding:11px 17px;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.25)}
  .mobile-quote.is-hidden{display:none}
  .photo figcaption{padding:10px 9px;color:#fff;font-size:8px;font-weight:600;letter-spacing:.07em;background:linear-gradient(0deg,rgba(10,12,15,.92),rgba(10,12,15,.68))}
  .site-footer{padding-bottom:calc(31px + env(safe-area-inset-bottom))}
}
@media(max-width:760px) and (max-height:600px){.mobile-quote{display:none!important}}
@media(max-width:450px){.hero h1{font-size:54px}}
