:root {
  --ink: #172b2b;
  --ink-dark: #102525;
  --ink-muted: #53605e;
  --forest: #1a3837;
  --forest-light: #254746;
  --accent: #d7a16c;
  --accent-dark: #b67b4d;
  --cream: #f7f5f0;
  --cream-dark: #eeece5;
  --line: #e1e2dc;
  --white: #fff;
  --body: 'DM Sans', sans-serif;
  --display: 'Manrope', 'DM Sans', sans-serif;
  --wrap: 1220px;
}
*, *::before, *::after {box-sizing: border-box;}
html {scroll-behavior: smooth; scroll-padding-top: 92px;}
body {margin:0; font-family:var(--body); font-size:16px; line-height:1.65; color:var(--ink); background:var(--white); -webkit-font-smoothing:antialiased;}
body, button, input, select, textarea {font-family:var(--body);}
img, svg {max-width:100%;}
a {text-decoration:none; color:inherit;}
button, input, textarea, select {font:inherit;}
button, a { -webkit-tap-highlight-color: transparent;}
button {cursor:pointer;}
::selection {background:#ddae7b; color:#142c2a;}
:focus-visible {outline:3px solid #d7a16c; outline-offset:4px;}
.skip-link {position:fixed; top:-100px; left:20px; z-index:5000; padding:10px 20px; background:white; color:#123;}
.skip-link:focus {top:10px;}
.container {width:min(var(--wrap), calc(100% - 80px)); margin:0 auto;}
.section {padding:112px 0;}
.section-soft {background:var(--cream);}
.display-heading {font:700 clamp(36px,4.0vw,59px)/1.13 var(--display); letter-spacing:-.052em; margin:21px 0 0;}
.highlight-word {color:#aa7957;}
.eyebrow {font:700 10px/1.5 var(--display); letter-spacing:.21em; color:#a67957; text-transform:uppercase; margin:0; display:flex; align-items:center; gap:13px;}
.eyebrow .line {display:inline-block; height:1px; width:32px; background:currentColor; flex-shrink:0;}
.eyebrow-light {color:#dfb48e;}
.button {appearance:none; border:0; display:inline-flex; align-items:center; justify-content:center; gap:27px; font:700 12px/1.2 var(--display); letter-spacing:.005em; padding:19px 25px; min-height:56px; white-space:nowrap; transition:transform .2s,background .2s,color .2s,border-color .2s;}
.button:hover {transform:translateY(-2px);}
.button span {font-size:19px; line-height:.8; font-weight:400;}
.button-primary {background:var(--accent); color:#122726;}
.button-primary:hover {background:#ebbb89;}
.button-dark {background:var(--forest); color:var(--white);}
.button-dark:hover {background:#2a5251;}
.button-outline {color:var(--forest); border:1px solid #c7cec8; background:transparent;}
.text-link {display:inline-flex; align-items:center; gap:17px; color:var(--forest); font-weight:700; font-size:13px; padding-bottom:8px; border-bottom:1px solid currentColor; transition:gap .2s,color .2s;}
.text-link:hover {gap:24px;}
.text-link span {font-size:18px; font-weight:400; line-height:1;}

/* Top navigation */
.announcement {background:var(--ink-dark); color:#cedbd6; font-size:11px; min-height:34px;}
.announcement-inner {display:flex; align-items:center; min-height:34px; gap:8px;}
.announcement .announce-dot {background:var(--accent); border-radius:50%; width:5px; height:5px; flex-shrink:0;}
.announcement a {margin-left:auto; color:#f7e8d7; font-weight:600;}
.announcement a span {color:var(--accent); margin-left:4px;}
.site-header {height:84px; background:#fff; position:sticky; top:0; z-index:1000; box-shadow:0 1px 0 rgba(21,46,46,.09);}
.nav-wrap {height:100%; display:flex; align-items:center; justify-content:space-between; gap:35px;}
.brand {display:flex; align-items:center; gap:11px; flex-shrink:0; color:var(--ink);}
.brand-mark {display:flex; width:41px; height:41px; align-items:center; justify-content:center;}
.brand-mark svg {width:100%; height:100%;}
.brand-type {display:flex; flex-direction:column; color:inherit;}
.brand-type strong {font:800 22px/1 var(--display); letter-spacing:.07em;}
.brand-type > span {font:700 8.5px/1.7 var(--display); letter-spacing:.44em; margin-top:3px;}
.nav-links {display:flex; align-items:center; gap:29px; margin-left:auto;}
.nav-links a {font:700 12px/1.2 var(--body); color:#344843; transition:color .2s; white-space:nowrap;}
.nav-links a:hover {color:var(--accent-dark);}
.button-nav {color:var(--white); background:var(--forest); padding:15px 20px; min-height:48px; font-size:11px; gap:15px;}
.button-nav:hover {background:var(--forest-light);}
.menu-toggle {display:none; padding:8px; background:transparent; border:0;}
.mobile-nav-contact {display:none;}

/* Hero */
.hero {position:relative; min-height:670px; isolation:isolate; background:var(--ink-dark); overflow:hidden; color:white;}
.hero-photo {position:absolute; z-index:-3; inset:0 0 0 31%; background:linear-gradient(135deg,#556c67,#adb0a3 40%,#71847b); background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2000&q=86'); background-size:cover; background-position:center center;}
.hero-overlay {position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,rgba(12,30,29,.99) 0%, rgba(12,31,30,.96) 25%, rgba(14,32,31,.82) 44%, rgba(16,33,32,.38) 71%,rgba(12,29,29,.22) 100%);}
.hero::after {content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(0deg,rgba(11,28,26,.64),transparent 30%);}
.hero-inner {display:flex; flex-direction:column; justify-content:space-between; min-height:670px; padding-top:113px; padding-bottom:31px;}
.hero-content {max-width:765px;}
.hero .eyebrow {font-size:10px; gap:11px;}
.small-diamond {font-size:6px; color:var(--accent);}
.hero h1 {font:800 clamp(52px,6vw,87px)/1.10 var(--display); letter-spacing:-.061em; margin:25px 0 20px;}
.hero h1 em {font-style:normal; color:#e0b486;}
.hero-content > p {max-width:505px; color:#d8e0dc; font-size:16px; line-height:1.9; margin:0;}
.hero-actions {display:flex; align-items:center; gap:30px; margin-top:34px; flex-wrap:wrap;}
.hero-text-link {color:#f6eee3; border-color:rgba(255,255,255,.45);}
.hero-bottom {display:flex; align-items:center; gap:18px; font-size:11px; color:#e2e8e4; letter-spacing:.045em; padding-top:48px;}
.hero-side-rule {height:1px; width:32px; background:var(--accent);}
.gold-square {display:inline-block; width:6px; height:6px; background:var(--accent); margin-right:6px; transform:rotate(45deg);}
.hero-location {margin-left:auto; font:700 10px/1.2 var(--display); letter-spacing:.16em;}

/* Intro */
.intro {background:#fff; padding:118px 0 110px;}
.intro-grid {display:grid; grid-template-columns: 1.15fr 1fr; gap:95px;}
.intro .display-heading {margin-top:30px;}
.intro-right {padding-top:20px; max-width:490px;}
.intro-right .lead {font-size:22px; font-weight:600; line-height:1.55; letter-spacing:-.025em; color:#263b39; margin:0 0 23px;}
.intro-right > p:not(.lead) {font-size:15px; color:#66716e; line-height:1.95; margin-bottom:24px;}
.dark-link {color:#24504a;}

/* Services */
.services {padding-bottom:122px;}
.section-heading {margin-bottom:47px;}
.split-heading {display:flex; justify-content:space-between; gap:50px; align-items:end;}
.split-heading > p {max-width:295px; color:#6c7772; font-size:14px; line-height:1.9; margin:0 0 5px;}
.service-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.service-card {position:relative; overflow:hidden; min-height:265px; transition:transform .25s,box-shadow .25s;}
.service-card:hover {transform:translateY(-5px); box-shadow:0 19px 38px rgba(20,45,43,.1);}
.service-feature {min-height:324px; grid-column:span 2; color:white; background:#274443;}
.service-photo {position:absolute; inset:0; background-color:#506d67; background-size:cover; background-position:center; transition:transform .6s;}
.basement-photo {background-image:url('https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=1450&q=85');}
.service-feature:hover .service-photo {transform:scale(1.045);}
.service-photo-shade {position:absolute; inset:0; background:linear-gradient(90deg,rgba(15,35,33,.87),rgba(15,35,33,.59) 57%,rgba(15,35,33,.19));}
.service-card-content {position:relative; display:flex; height:100%; min-height:324px; flex-direction:column; justify-content:space-between; padding:30px 35px;}
.service-index {font:700 10px/1.3 var(--display); letter-spacing:.16em; color:#b7bbb5;}
.service-feature .service-index {color:#dfbf9e;}
.service-feature h3 {font:700 clamp(27px,3vw,38px)/1.25 var(--display); letter-spacing:-.035em; margin:0 0 11px;}
.service-feature h3 span {font-weight:400; font-size:25px; margin-left:14px; color:#efbe8c;}
.service-feature p {color:#e4e9e5; font-size:14px; max-width:370px; line-height:1.8; margin:0;}
.service-simple {background:white; border:1px solid #edece7; padding:27px 30px 25px; display:flex; flex-direction:column; align-items:flex-start;}
.service-icon {width:47px; height:47px; margin-bottom:21px; color:#a77955;}
.service-simple .service-index {color:#b49f8b; font-size:9px;}
.service-simple h3 {font:700 24px/1.25 var(--display); letter-spacing:-.035em; margin:10px 0 13px;}
.service-simple p {font:400 13px/1.75 var(--body); color:#748079; max-width:275px; margin:0 0 16px;}
.card-arrow {position:absolute; right:29px; bottom:22px; font:400 21px/1 var(--display); color:#a47758;}

/* Basement */
.basements {background:#fff; padding:130px 0;}
.basement-layout {display:grid; grid-template-columns:1fr 1fr; gap:10.2%; align-items:center;}
.basement-visual {position:relative; min-height:585px;}
.basement-image {position:absolute; inset:0 12px 32px 0; background-color:#d6d9d0; background-image:url('https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=1000&q=83'); background-size:cover; background-position:43% center;}
.image-caption {position:absolute; bottom:0; left:0; display:flex; align-items:center; gap:12px; color:#8d8276; font:700 10px/1.2 var(--display); letter-spacing:.15em;}
.caption-line {height:1px; width:25px; background:var(--accent-dark);}
.visual-stamp {background:var(--forest); color:white; position:absolute; right:-16px; bottom:77px; width:208px; height:118px; display:flex; flex-direction:column; justify-content:center; padding:21px 25px;}
.visual-stamp span {color:#e8b78d; font:700 10px/1.7 var(--display); letter-spacing:.14em;}
.visual-stamp strong {font:800 15px/1.5 var(--display); letter-spacing:.025em;}
.basement-copy {padding:0 0 12px;}
.basement-copy .display-heading {margin:24px 0 25px;}
.basement-lead {font-size:19px; color:#213e3a; font-weight:600; line-height:1.65; margin:0 0 15px;}
.basement-copy > p:not(.eyebrow):not(.basement-lead) {font:400 14px/1.85 var(--body); color:#6f7a75; margin:0 0 22px;}
.check-grid {display:grid; grid-template-columns:1fr 1fr; column-gap:10px; row-gap:15px; margin:25px 0 20px;}
.check-grid span {display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; color:#3f5850;}
.check-grid svg {width:19px; height:19px; border-radius:50%; flex-shrink:0; background:#e8efe9; padding:3px; fill:none; stroke:#397259; stroke-width:2.2;}
.note {background:#f7f5f0; border-left:2px solid var(--accent); padding:13px 18px; font:400 11px/1.75 var(--body); color:#68736c; margin:25px 0;}
.note strong {color:#4e5b51;}

/* Approach */
.approach {background:var(--forest); color:#fff; padding:103px 0 110px; position:relative; overflow:hidden;}
.approach::before {content:''; position:absolute; width:470px; height:470px; border:1px solid rgba(220,205,183,.09); border-radius:50%; right:-135px; top:-160px; box-shadow:0 0 0 88px rgba(220,205,183,.015),0 0 0 175px rgba(220,205,183,.015); pointer-events:none;}
.approach-head {display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:65px; position:relative;}
.approach .display-heading {margin-top:22px; color:#fff;}
.light-accent {color:#e6ba8f;}
.approach-head > p {max-width:315px; color:#bfcdc9; font-size:14px; line-height:1.85; margin:0 0 6px;}
.steps-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:27px; position:relative;}
.step-number {font:500 44px/1.1 var(--display); letter-spacing:-.075em; color:#e1af80;}
.step-line {display:block; width:100%; height:1px; margin:26px 0 25px; background:rgba(232,235,225,.26); position:relative;}
.step-line::before {content:''; position:absolute; top:-3px; left:0; height:7px; width:7px; background:var(--accent); border-radius:50%;}
.step h3 {font:700 20px/1.25 var(--display); letter-spacing:-.026em; margin:0 0 13px;}
.step p {color:#c0d0ca; font-size:13px; line-height:1.9; margin:0; max-width:230px;}

/* Gallery / inspiration */
.inspiration {padding-bottom:100px;}
.inspiration-head {margin-bottom:38px;}
.lookbook-grid {display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:16px;}
.lookbook-item {height:394px; overflow:hidden; position:relative; background:#78918a; isolation:isolate;}
.lookbook-photo {position:absolute; inset:0; z-index:-2; background-color:#5a766d; background-size:cover; background-position:center; transition:transform .6s;}
.lookbook-item:hover .lookbook-photo {transform:scale(1.045);}
.lookbook-one {background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=850&q=84'); background-position:30% center;}
.lookbook-two {background-image:url('https://images.unsplash.com/photo-1556911220-bff31c812dba?auto=format&fit=crop&w=700&q=84'); background-position:47% center;}
.lookbook-three {background-image:url('https://images.unsplash.com/photo-1600566752355-35792bedcfea?auto=format&fit=crop&w=700&q=84');}
.lookbook-item::before {content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(12,29,28,.82), transparent 60%);}
.lookbook-label {position:absolute; bottom:25px; left:25px; right:15px; color:#fff; display:flex; flex-direction:column; gap:4px;}
.lookbook-label span {font:700 9px/1.2 var(--display); letter-spacing:.16em; color:#f0c497;}
.lookbook-label strong {font:700 22px/1.3 var(--display); letter-spacing:-.035em;}
.image-disclaimer {font-size:11px; color:#7e8882; text-align:right; margin:14px 1px 0;}

/* Service Area */
.service-area {background:#b98359; color:#fff; padding:54px 0;}
.service-area-inner {display:flex; align-items:center; gap:42px;}
.service-area-symbol {font-size:56px; line-height:1; font-weight:200; color:#f5d1ae;}
.service-area .eyebrow {font-size:9px; color:#f2dfcd;}
.service-area h2 {font:700 clamp(23px,3.1vw,35px)/1.4 var(--display); letter-spacing:-.045em; margin:4px 0 7px;}
.service-area h2 em {color:#fcdfbc; font-style:normal;}
.service-area p:not(.eyebrow) {font-size:12px; color:#faeee2; margin:0; line-height:1.7;}
.service-area .text-link {margin-left:auto; white-space:nowrap; font-size:12px;}

/* FAQ */
.faq-grid {display:grid; grid-template-columns:0.95fr 1.15fr; gap:12%;}
.faq-grid > div:first-child > p:not(.eyebrow) {margin:23px 0; color:#78817c; max-width:350px; line-height:1.85; font-size:14px;}
.faq-items details {border-bottom:1px solid #daddd5;}
.faq-items details:first-child {border-top:1px solid #daddd5;}
.faq-items summary {cursor:pointer; list-style:none; display:flex; gap:16px; align-items:center; justify-content:space-between; padding:21px 0; font-size:15px; font-weight:700; color:#25413b;}
.faq-items summary::-webkit-details-marker {display:none;}
.faq-plus {position:relative; width:22px; height:22px; flex-shrink:0; border:1px solid #ced8d0; border-radius:50%;}
.faq-plus::before,.faq-plus::after {content:''; position:absolute; background:#507766; left:50%; top:50%; transform:translate(-50%,-50%);}
.faq-plus::before {width:8px; height:1px;}
.faq-plus::after {width:1px; height:8px; transition:transform .25s;}
.faq-items details[open] .faq-plus::after {transform:translate(-50%,-50%) rotate(90deg);}
.faq-items details p {font-size:13px; color:#6b7870; line-height:1.9; margin:-4px 0 21px; padding-right:25px;}

/* Contact */
.contact {background:var(--ink-dark); color:white; padding:115px 0 125px; overflow:hidden;}
.contact-grid {display:grid; grid-template-columns:.94fr 1.03fr; gap:9%; align-items:start;}
.contact-copy {position:relative; min-height:560px; padding-top:28px;}
.contact-copy .display-heading {font-size:clamp(43px,4.5vw,62px); margin:28px 0 28px;}
.contact-copy > p:not(.eyebrow) {max-width:440px; font-size:15px; line-height:1.95; color:#c4d0cb; margin:0;}
.contact-points {display:flex; flex-direction:column; gap:24px; margin-top:45px;}
.contact-points > div {display:flex; align-items:center; gap:15px;}
.contact-point-icon {display:flex; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #506462; color:var(--accent); font-size:22px;}
.contact-points strong {font:700 14px/1.6 var(--display); display:block; color:#fff;}
.contact-points small {font-size:12px; color:#a8bdb6;}
.contact-decoration {position:absolute; bottom:-100px; left:-18px; font:800 270px/1 var(--display); color:rgba(245,255,245,.035); letter-spacing:-.10em; pointer-events:none;}
.contact-decoration span {color:rgba(215,161,108,.16);}
.form-card {background:#fff; color:var(--ink); padding:41px 43px 43px; box-shadow:0 26px 60px rgba(0,0,0,.08);}
.form-tag {color:#b2815b; font:700 10px/1.2 var(--display); letter-spacing:.16em;}
.form-heading h3 {font:700 29px/1.3 var(--display); letter-spacing:-.047em; margin:11px 0 5px;}
.form-heading p {font-size:13px; color:#83908a; margin:0 0 26px;}
.form-row {display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.form-card label {font:700 12px/1.7 var(--body); color:#3b504b; display:flex; flex-direction:column; margin-bottom:18px; gap:6px;}
.form-card label span {color:#b88355;}
.form-card input, .form-card select, .form-card textarea {display:block; border:1px solid #e1e5de; border-radius:0; background:#fbfcfa; font:400 12px/1.55 var(--body); color:#1f3935; padding:13px 14px; outline:0; width:100%; min-height:46px; transition:border-color .2s,box-shadow .2s;}
.form-card input:focus, .form-card select:focus, .form-card textarea:focus {border-color:#a8bcb4; box-shadow:0 0 0 2px #e0eae3;}
.form-card input::placeholder,.form-card textarea::placeholder {color:#aab3ad;}
.form-card select:invalid {color:#aab3ad;}
.form-card select option {color:#223c35;}
.form-card textarea {resize:vertical; min-height:115px;}
.form-submit {width:100%; justify-content:space-between; margin-top:2px; padding-left:22px; padding-right:23px;}
.form-small {font-size:10px; line-height:1.7; color:#89958e; margin:12px 0 0;}
.form-result h4 {font:700 23px/1.3 var(--display); margin:20px 0 10px;}
.form-result p {font-size:13px; color:#75817a;}
.form-result textarea {width:100%; min-height:185px; resize:vertical; font-size:12px;}
.result-actions {display:flex; gap:10px; margin-top:14px; flex-wrap:wrap;}
.copy-status {min-height:23px; color:#386350 !important; font-weight:700;}
[hidden] {display:none !important;}

/* Footer */
.footer {background:#0d1e1f; color:#bdc9c4; padding:72px 0 0;}
.footer-upper {display:flex; justify-content:space-between; gap:60px; padding-bottom:74px;}
.brand-footer {color:#fff;}
.brand-footer .brand-mark {color:#d8b084;}
.footer-upper > div:first-child > p {font-size:14px; line-height:1.85; margin:22px 0 0; color:#8fa6a0;}
.footer-cols {display:flex; gap:clamp(40px,5.5vw,90px);}
.footer-cols > div {display:flex; flex-direction:column; align-items:flex-start; gap:10px;}
.footer-cols h4 {font:700 11px/1.4 var(--display); color:#ecc099; letter-spacing:.13em; text-transform:uppercase; margin:5px 0 11px;}
.footer-cols a,.footer-cols span {font-size:12px; color:#b8c8c2; line-height:1.7;}
.footer-cols a:hover {color:#e9bf94;}
.footer-bottom {border-top:1px solid #233838; display:flex; justify-content:space-between; align-items:center; gap:25px; padding:23px 0;}
.footer-bottom p, .footer-bottom a {font-size:10px; color:#809891; margin:0; line-height:1.8;}
.footer-bottom a {color:#d0b393; white-space:nowrap;}

/* Responsive */
@media (max-width:1120px) {
  .nav-wrap {gap:20px;}
  .nav-links {gap:18px;}
  .nav-links a {font-size:11px;}
  .button-nav {padding:15px 14px; gap:9px;}
  .container {width:min(var(--wrap),calc(100% - 64px));}
  .intro-grid {gap:60px;}
  .basement-layout {gap:6%;}
  .form-card {padding:35px 29px;}
  .contact-grid {gap:5%;}
}
@media (max-width:920px) {
  .nav-links {position:absolute; top:100%; left:0; right:0; background:#fff; display:none; flex-direction:column; align-items:stretch; gap:0; padding:13px 32px 25px; box-shadow:0 20px 30px rgba(20,30,20,.12);}
  .nav-links.is-open {display:flex;}
  .nav-links a {font-size:14px; padding:13px 0; border-bottom:1px solid #edf0e9;}
  .mobile-nav-contact {display:block;}
  .menu-toggle {display:flex; margin-left:auto; width:40px; height:40px; flex-direction:column; justify-content:center; gap:5px;}
  .menu-toggle span {width:22px; height:2px; background:#274441; transition:transform .2s,opacity .2s;}
  .menu-toggle.is-open span:nth-child(1) {transform:translateY(7px) rotate(45deg);}
  .menu-toggle.is-open span:nth-child(2) {opacity:0;}
  .menu-toggle.is-open span:nth-child(3) {transform:translateY(-7px) rotate(-45deg);}
  .button-nav {display:none;}
  .hero {min-height:630px;}
  .hero-inner {min-height:630px; padding-top:110px;}
  .hero h1 {font-size:clamp(50px,8vw,78px);}
  .hero-photo {left:20%;}
  .hero-overlay {background:linear-gradient(90deg,rgba(12,30,29,.98),rgba(12,30,29,.84) 48%,rgba(12,30,29,.4));}
  .intro-grid {grid-template-columns:1fr 1fr; gap:34px;}
  .lead {font-size:20px !important;}
  .section {padding:85px 0;}
  .services {padding-bottom:90px;}
  .basements {padding:95px 0;}
  .service-grid {grid-template-columns:1fr 1fr;}
  .service-feature {grid-column:span 2;}
  .basement-layout {grid-template-columns:1fr 1fr; gap:33px;}
  .basement-visual {min-height:470px;}
  .check-grid {grid-template-columns:1fr; row-gap:11px;}
  .visual-stamp {right:-10px; width:185px;}
  .lookbook-grid {grid-template-columns:1fr 1fr;}
  .lookbook-large {grid-column:span 2;}
  .lookbook-item {height:340px;}
  .lookbook-large {height:310px;}
  .contact-copy .display-heading {font-size:44px;}
  .footer-cols {gap:35px;}
}
@media (max-width:680px) {
  html {scroll-padding-top:70px;}
  .container {width:calc(100% - 38px);}
  .announcement {display:none;}
  .site-header {height:72px;}
  .brand-mark {width:36px; height:36px;}
  .brand-type strong {font-size:19px;}
  .brand-type > span {font-size:7px;}
  .nav-links {padding:12px 20px 24px;}
  .hero {min-height:685px;}
  .hero-inner {min-height:685px; padding-top:103px; padding-bottom:28px;}
  .hero-photo {inset:0; background-position:58% center;}
  .hero-overlay {background:linear-gradient(90deg,rgba(12,29,29,.95),rgba(12,29,29,.58)),linear-gradient(0deg,rgba(12,29,29,.83),transparent 70%);}
  .hero .eyebrow {font-size:9px; letter-spacing:.12em; flex-wrap:wrap;}
  .hero h1 {font-size:clamp(44px,9vw,68px); line-height:1.14; letter-spacing:-.057em; margin:26px 0 19px;}
  .hero-content > p {font-size:14px; max-width:370px; line-height:1.9;}
  .hero-actions {margin-top:27px; gap:20px; align-items:flex-start; flex-direction:column;}
  .hero-actions .button {min-height:53px; padding:17px 21px; font-size:11px;}
  .hero-bottom {font-size:10px; padding-top:30px;}
  .hero-location {display:none;}
  .section {padding:72px 0;}
  .display-heading {font-size:clamp(34px,8vw,50px);}
  .intro {padding:83px 0 72px;}
  .intro-grid {grid-template-columns:1fr; gap:26px;}
  .intro .display-heading {margin-top:20px;}
  .intro-right {padding:0; max-width:none;}
  .intro-right .lead {font-size:18px !important;}
  .intro-right > p:not(.lead) {font-size:14px;}
  .split-heading {flex-direction:column; align-items:start; gap:17px;}
  .section-heading {margin-bottom:28px;}
  .split-heading > p {max-width:420px; font-size:13px;}
  .service-grid {grid-template-columns:1fr; gap:12px;}
  .service-feature {grid-column:span 1; min-height:330px;}
  .service-card-content {min-height:330px; padding:25px;}
  .service-card {min-height:240px;}
  .service-simple {min-height:228px; padding:24px;}
  .service-icon {width:38px; height:38px; margin-bottom:10px;}
  .service-simple h3 {font-size:22px; margin:7px 0 7px;}
  .service-simple p {font-size:12px; max-width:340px; margin-bottom:0;}
  .service-feature h3 {font-size:30px;}
  .basements {padding:81px 0 88px;}
  .basement-layout {grid-template-columns:1fr; gap:45px;}
  .basement-visual {min-height:408px;}
  .basement-image {inset:0 9px 25px 0;}
  .visual-stamp {bottom:65px; right:0; width:173px; height:95px; padding:18px;}
  .visual-stamp strong {font-size:12px;}
  .visual-stamp span {font-size:9px;}
  .basement-copy .display-heading {margin:22px 0 23px;}
  .basement-lead {font-size:17px;}
  .check-grid {grid-template-columns:1fr 1fr; gap:13px 8px;}
  .check-grid span {font-size:11px;}
  .note {margin:23px 0;}
  .approach {padding:80px 0 82px;}
  .approach-head {flex-direction:column; align-items:start; margin-bottom:38px; gap:17px;}
  .approach-head > p {max-width:none; font-size:13px;}
  .steps-grid {grid-template-columns:1fr 1fr; gap:36px 22px;}
  .step-number {font-size:35px;}
  .step-line {margin:18px 0 18px;}
  .step h3 {font-size:17px;}
  .step p {font-size:12px;}
  .inspiration {padding:75px 0 70px;}
  .lookbook-grid {grid-template-columns:1fr; gap:12px;}
  .lookbook-large {grid-column:span 1;}
  .lookbook-item, .lookbook-large {height:300px;}
  .lookbook-label strong {font-size:20px;}
  .image-disclaimer {text-align:left; line-height:1.6;}
  .service-area {padding:45px 0;}
  .service-area-inner {align-items:flex-start; gap:10px; flex-direction:column;}
  .service-area-symbol {font-size:38px;}
  .service-area h2 {font-size:25px;}
  .service-area .text-link {margin:10px 0 0; white-space:normal;}
  .faq-grid {grid-template-columns:1fr; gap:31px;}
  .faq-grid .display-heading {margin-top:20px;}
  .faq-grid > div:first-child > p:not(.eyebrow) {margin:18px 0;}
  .faq-items summary {font-size:13px; padding:20px 0;}
  .faq-items details p {font-size:12px;}
  .contact {padding:78px 0 80px;}
  .contact-grid {grid-template-columns:1fr; gap:40px;}
  .contact-copy {min-height:auto; padding-top:0;}
  .contact-copy .display-heading {font-size:clamp(39px,9vw,54px); margin:23px 0;}
  .contact-copy > p:not(.eyebrow) {font-size:14px;}
  .contact-points {margin-top:28px; gap:16px;}
  .contact-decoration {display:none;}
  .form-card {padding:31px 23px;}
  .form-heading h3 {font-size:26px;}
  .form-row {grid-template-columns:1fr; gap:0;}
  .form-card label {margin-bottom:15px;}
  .form-submit {font-size:11px;}
  .footer {padding-top:63px;}
  .footer-upper {flex-direction:column; padding-bottom:44px; gap:36px;}
  .footer-cols {flex-wrap:wrap; gap:28px 35px;}
  .footer-cols > div {min-width:115px;}
  .footer-bottom {align-items:flex-start; flex-direction:column; gap:7px;}
}
@media (max-width:380px) {
  .hero h1 {font-size:41px;}
  .hero .eyebrow {font-size:8px;}
  .check-grid {grid-template-columns:1fr;}
  .steps-grid {gap:27px 15px;}
  .step h3 {font-size:15px;}
  .step p {font-size:11px;}
  .form-card {padding:26px 17px;}
  .footer-cols {gap:22px;}
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after {scroll-behavior:auto !important; transition-duration:0.01ms !important; animation-duration:0.01ms !important;}
}

/* Custom Navraj Renovation gold/silver logo supplied by the company */
.site-header {background:#080d0e; box-shadow:0 1px 0 rgba(224,180,134,.17); height:100px;}
.nav-wrap {gap:25px;}
.brand {color:#f3f1ea; gap:3px;}
.brand-image-mark {display:block; width:87px; height:75px; object-fit:contain; mix-blend-mode:screen; flex-shrink:0;}
.brand-type strong {font-size:21px; letter-spacing:.09em; color:#e9bb74;}
.brand-type > span {color:#e9e7e4; letter-spacing:.36em;}
.nav-links {gap:24px;}
.nav-links a {color:#f4f3f0;}
.nav-links a:hover {color:#e6b977;}
.button-nav {background:#d7a16c; color:#101615;}
.button-nav:hover {background:#edc08e;}
.footer {background:#080d0e;}
.footer-full-logo {display:block; width:min(285px,100%); height:auto; mix-blend-mode:screen;}
.brand-footer {display:inline-flex;}
.contact-points a {color:#fff; transition:color .2s; overflow-wrap:anywhere;}
.contact-points a:hover {color:#e9bc83; text-decoration:underline; text-underline-offset:3px;}
.form-result .result-actions {flex-wrap:wrap;}
@media (max-width:1120px) {
  .nav-wrap {gap:18px;}
  .brand-image-mark {width:69px; height:64px;}
  .brand-type strong {font-size:18px;}
  .brand-type > span {font-size:7.2px;}
  .nav-links {gap:15px;}
}
@media (max-width:920px) {
  .site-header {height:85px;}
  .nav-links {background:#0e1819; box-shadow:0 20px 30px rgba(10,12,12,.3);}
  .nav-links a {border-bottom:1px solid rgba(255,255,255,.15); color:#f6f6f5;}
  .menu-toggle span {background:#e9bb74;}
}
@media (max-width:680px) {
  html {scroll-padding-top:80px;}
  .site-header {height:78px;}
  .brand-image-mark {width:68px; height:60px;}
  .brand-type strong {font-size:19px;}
  .brand-type > span {font-size:7px;}
}
