@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202420;--paper:#fafaf7;--orange:#feaa3d;--muted:#626660}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--orange);outline-offset:6px}img{max-width:100%;display:block}.header{height:114px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dadcd6}.brand{display:flex;gap:17px;align-items:center}.monogram{font-family:Georgia,serif;font-size:45px;letter-spacing:-5px;line-height:1}.monogram>span:first-child{font-size:26px;letter-spacing:-3px}.brand-dot{color:var(--orange);letter-spacing:0}.brand-name{font-size:16px;letter-spacing:1.8px;font-weight:800;line-height:1.5}.brand-name small{display:block;font-size:10px;letter-spacing:2px;font-weight:500}nav{display:flex;gap:36px;align-items:center;font-size:14px;font-weight:500}.nav-cta{border:1px solid #b8bcb5;padding:11px 19px}.nav-cta span{margin-left:22px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:660px;background:var(--ink);color:var(--paper)}.hero-copy{padding:61px 10% 32px}.eyebrow{font-size:12px;letter-spacing:1.9px;font-weight:600;margin:0 0 37px;color:#cad0c6;display:flex;align-items:center;gap:11px}.eyebrow>span{width:22px;height:2px;background:var(--orange)}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:500}h1{font-size:clamp(54px,5.7vw,86px);line-height:1.08;letter-spacing:-4px;margin:0 0 27px}em{font-family:Georgia,serif;font-weight:400;color:var(--orange)}.intro{font-size:18px;max-width:360px;color:#c9cec5;line-height:1.7;margin:0 0 34px}.button{display:inline-flex;padding:17px 23px;align-items:center;gap:34px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.orange{background:var(--orange);color:#171b17}.orange:hover{background:#fa824a}.hero-bottom{margin-top:62px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.5px;line-height:1.8;color:#adb4a9}.hero-bottom a{font-size:25px;border:1px solid #61665d;width:46px;height:46px;display:grid;place-items:center;border-radius:50%}.hero-image{position:relative;min-height:620px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.image-tag{position:absolute;bottom:30px;right:30px;background:var(--paper);color:var(--ink);padding:12px 17px;font-size:10px;font-weight:600;letter-spacing:1.5px}.service-strip{padding:24px 5%;display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #dcded7;font-size:14px}.service-strip i{width:5px;height:5px;background:var(--orange);border-radius:50%}.section{padding:95px 7%}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:58px}.dark{color:#626660}.section-heading h2,h2{font-size:clamp(36px,4vw,56px);line-height:1.15;letter-spacing:-2px;margin:0 0 23px}.section-heading p:not(.eyebrow){max-width:520px;color:var(--muted);margin-bottom:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.services article{border-top:1px solid #a9ada5;padding-top:22px}.number{font-size:12px;color:#8d4a29}.services h3{font-size:27px;line-height:1.3;letter-spacing:-.8px;margin:30px 0 18px}.services p{color:var(--muted);max-width:330px;margin-bottom:28px}.services article>a{display:flex;justify-content:space-between;gap:15px;font-size:14px;border-top:1px solid #dcded7;padding-top:20px;font-weight:600}.services article>a:hover{color:#a8451c}.approach{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:11%}.approach-title>p:last-child{max-width:400px;color:#bdc5b8}.steps article{display:flex;gap:25px;border-top:1px solid #4c5248;padding:25px 0}.steps article>span{font-size:12px;color:var(--orange);padding-top:5px}.steps h3{margin:0 0 10px;font-size:22px;letter-spacing:-.5px}.steps p{color:#bdc5b8;margin:0;font-size:15px}.contact{background:#f0f1eb}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%}.contact h2{font-size:clamp(48px,6vw,80px)}.contact p{color:var(--muted)}.dark-button{background:var(--ink);color:var(--paper);margin-top:17px}.contact-details{padding-top:10px}.contact-details>a,.contact-details>div{display:block;padding:23px 0;border-bottom:1px solid #c9cdc3}.contact-details small{display:block;font-size:11px;letter-spacing:1.3px;margin-bottom:10px;color:var(--muted)}.contact-details a>span{font-size:clamp(17px,1.8vw,25px);overflow-wrap:anywhere}.contact-details a:hover>span{color:#a8451c}.contact-details p{margin:0}footer{padding:38px 5%;display:flex;align-items:center;gap:36px;font-size:12px;color:var(--muted)}.footer-brand{font-family:'Manrope',sans-serif;font-size:19px;letter-spacing:1px;font-weight:800;color:var(--ink);margin-right:auto}.footer-brand span{color:var(--orange)}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:9}.skip:focus{top:15px}@media(min-width:1600px){.hero-copy{padding-left:14%;padding-right:14%}.hero{min-height:760px}.hero-bottom{margin-top:95px}}@media(max-width:900px){.brand-name{display:none}.hero-copy{padding:42px 9% 30px}h1{font-size:57px;letter-spacing:-3px}.hero{min-height:610px}.hero-image{min-height:610px}.section{padding:70px 6%}.services{gap:25px}.services h3{font-size:23px}.section-heading{grid-template-columns:1fr 2fr;gap:20px}.approach,.contact-grid{gap:7%}footer{flex-wrap:wrap;gap:20px}.footer-brand{width:100%}}@media(max-width:620px){.header{height:86px;padding:0 6%}.monogram{font-size:39px}nav{gap:19px}nav>a:first-child{display:none}.nav-cta{padding:9px 12px}.nav-cta span{margin-left:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:39px 7% 28px}h1{font-size:65px}.eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:28px}.intro{font-size:17px;max-width:340px}.hero-bottom{margin-top:36px}.hero-image{min-height:340px}.image-tag{bottom:20px;right:20px;font-size:9px}.service-strip{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:14px;padding:21px 7%}.service-strip i{display:none}.section{padding:57px 7%}.section-heading{display:block;margin-bottom:34px}.section-heading h2,h2{font-size:39px;letter-spacing:-1.5px}.services{grid-template-columns:1fr;gap:36px}.services h3{font-size:28px;margin-top:16px}.services p{max-width:none}.approach,.contact-grid{grid-template-columns:1fr;gap:32px}.approach h2{font-size:44px}.steps article{gap:20px}.contact h2{font-size:62px}.contact-details a>span{font-size:22px}footer{padding:32px 7%;font-size:11px;gap:18px}.button{font-size:13px;gap:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Original Davies & King brand artwork */
.company-logo{width:215px;height:auto;object-fit:contain}.header{height:124px;background:#fff}.footer-brand .company-logo{width:195px}footer{background:#fff}@media(max-width:620px){.header{height:106px;gap:15px}.brand{flex-shrink:0}.brand .company-logo{width:170px}nav>a:nth-child(2){display:none}.footer-brand .company-logo{width:180px}}@media(max-width:360px){.brand .company-logo{width:145px}.nav-cta span{margin-left:3px}}

/* Display the main lockup from the supplied brand sheet without altering its artwork. */
footer{background:#000;color:#c3c3c3}.brand-sheet-window{display:block;position:relative;overflow:hidden;width:260px;aspect-ratio:2.6}.brand-sheet-window img{position:absolute;width:125%;max-width:none;height:auto;left:-12.5%;top:-68%}@media(max-width:620px){.brand-sheet-window{width:230px}}

/* Transparent original logo, framed to remove unused canvas in the layout. */
.header{background:var(--ink);color:var(--paper);border-bottom:1px solid #41483e;height:124px}.logo-window{display:block;position:relative;overflow:hidden;width:240px;aspect-ratio:1215/443}.logo-window img{position:absolute;width:126.42%;max-width:none;height:auto;left:-14.32%;top:-79.91%}footer{background:var(--ink)}.footer-brand .logo-window{width:240px}@media(max-width:620px){.header{height:106px}.brand .logo-window{width:190px}.footer-brand .logo-window{width:230px}}@media(max-width:360px){.brand .logo-window{width:160px}}

/* Selected project photography */
.projects{background:#f0f1eb}.project{margin:0 0 68px}.project:last-child{margin-bottom:0}.project-caption{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:end;margin-bottom:26px}.project-type{font-size:11px;letter-spacing:1.6px;color:#626660;margin:0 0 12px}.project-caption h3{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:0}.project-caption>p{color:var(--muted);max-width:450px;margin:0}.project-photo{display:block;overflow:hidden;background:#daddd4}.project-photo img{display:block;width:100%;height:auto;transition:opacity .2s}.project-photo:hover img{opacity:.9}.kitchen-project>.project-photo img{aspect-ratio:1.75;object-fit:cover;object-position:center 55%}.photo-credit{font-size:12px;color:#626660;margin:9px 0 0}.project-sequence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.projects figure{margin:0;min-width:0}.project-sequence img{aspect-ratio:3/4;object-fit:cover;object-position:center}.project-sequence figure:first-child img{object-position:56% center}.projects figcaption{font-size:13px;margin-top:10px;color:var(--muted)}.structural-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.structural-pair img{aspect-ratio:1.18;object-fit:cover}.hero-image img{object-position:48% center}@media(max-width:620px){.project-caption{grid-template-columns:1fr;gap:15px}.project-caption h3{font-size:28px}.project{margin-bottom:45px}.project-sequence{grid-template-columns:1fr 1fr;gap:16px}.project-sequence figure:last-child{grid-column:1/-1}.project-sequence figure:last-child img{aspect-ratio:1;object-position:center 55%}.structural-pair{grid-template-columns:1fr}.kitchen-project>.project-photo img{aspect-ratio:1.2}.header nav>a[href="#projects"]{display:block}nav{gap:20px}}@media(max-width:420px){.header nav>a[href="#projects"]{display:none}}@media(prefers-reduced-motion:reduce){.project-photo img{transition:none}}

.compact-kitchen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:center;padding:36px 0;border-top:1px solid #c9cdc3;border-bottom:1px solid #c9cdc3}.compact-kitchen>.project-photo{max-width:420px;width:100%}.compact-kitchen>.project-photo img{width:100%;height:auto}.compact-kitchen .project-caption{display:block;margin:0}.compact-kitchen .project-caption h3{font-size:40px;line-height:1.15;margin-bottom:24px}.compact-kitchen .project-caption>p{max-width:370px}@media(max-width:620px){.compact-kitchen{grid-template-columns:1fr;gap:26px}.compact-kitchen>.project-photo{max-width:none}.compact-kitchen .project-caption h3{font-size:32px}.compact-kitchen .project-caption>p{max-width:none}}

.kitchen-progress{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.kitchen-progress img{aspect-ratio:1.45;object-fit:cover}.image-tag{max-width:calc(100% - 40px);line-height:1.6}@media(max-width:620px){.kitchen-progress{gap:14px}.kitchen-progress img{aspect-ratio:1;object-fit:cover}.kitchen-progress figcaption{font-size:12px}.image-tag{font-size:9px;letter-spacing:1px}}

.whole-home>.project-photo img{aspect-ratio:1.65;object-fit:cover}.attic-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.attic-pair img{aspect-ratio:1.1;object-fit:cover;object-position:center}.attic-pair figure:last-child img{object-position:center 42%}.solar-pair{display:grid;grid-template-columns:1.45fr 1fr;gap:24px;align-items:start}.solar-pair img{width:100%;height:auto}.solar-project{padding:36px 0;border-top:1px solid #c9cdc3;border-bottom:1px solid #c9cdc3}@media(max-width:620px){.attic-pair{gap:14px}.attic-pair img{aspect-ratio:3/4}.attic-pair figcaption{font-size:12px}.solar-pair{grid-template-columns:1fr;gap:24px}.solar-pair figure:last-child{max-width:380px;width:100%;margin-inline:auto}.whole-home>.project-photo img{aspect-ratio:1.25}}

/* Official NICEIC artwork in the footer. */
footer{flex-wrap:wrap}.niceic-logo{display:inline-flex;align-items:center;flex-shrink:0;padding:8px 0}.niceic-logo img{width:160px;height:auto}
