@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#19352e;--paper:#faf9f5;--gold:#aa7843;--line:#d7ded8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'DM Sans',sans-serif}a{color:inherit}a:hover{text-decoration-thickness:2px}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}header{padding:21px 5vw;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;line-height:1.05;display:block}.brand strong{font:38px 'Libre Caslon Display',Georgia,serif}.brand small{display:block;font-size:11px;letter-spacing:.28em;margin-top:5px}nav{display:flex;align-items:center;gap:27px;font-size:14px}nav a{text-decoration:none}.button{display:inline-flex;padding:13px 23px;background:var(--ink);color:white;text-decoration:none;border:1px solid var(--ink);cursor:pointer;align-items:center;justify-content:center;gap:14px;font-size:15px}.button.light{background:#fff;color:var(--ink)}.button.outline{background:transparent;color:var(--ink)}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.17em;font-weight:700;color:#617268}.hero{display:grid;grid-template-columns:1fr 1.08fr;min-height:680px}.hero-copy{padding:70px 5vw;align-self:center}.hero h1{font:clamp(50px,5.5vw,84px)/1.03 'Libre Caslon Display',Georgia,serif;letter-spacing:-.025em;margin:24px 0}.hero p{max-width:470px}.hero figure{margin:25px 25px 25px 0;position:relative;min-height:580px;background:#e1e7df}.hero img{height:100%;position:absolute}.hero figcaption{position:absolute;bottom:13px;left:17px;right:17px;color:#fff;background:#19352edb;padding:7px 12px;font-size:12px}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.strip{background:var(--ink);color:#fff;padding:20px 5vw;display:flex;justify-content:space-between;gap:20px;font-size:14px}.section{padding:85px 5vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.section h2{font:clamp(36px,4vw,55px)/1.1 'Libre Caslon Display',Georgia,serif;margin:12px 0 22px}.section h3{font:31px/1.15 'Libre Caslon Display',Georgia,serif}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:44px}.card{border-top:1px solid #a8b8ab;padding-top:22px}.number{color:var(--gold);font-size:13px;letter-spacing:.12em}.card p{color:#506058}.card a{font-size:15px;text-underline-offset:7px}.muted{background:#eaf0e9}.narrow{max-width:850px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.steps h3{font:600 18px 'DM Sans',sans-serif}.steps p{font-size:16px;color:#506058}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;background:#19352e;color:#fff}.contact .eyebrow{color:#c4d5c7}.contact h2{max-width:440px}.contact p{color:#d1ddd5}.contact a{color:#fff}.contact .button{background:#e7d6bc;border-color:#e7d6bc;color:#19352e}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:14px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #91a99c;background:white;border-radius:0;padding:12px;color:#18352d;min-width:0}textarea{min-height:120px}.full{grid-column:1/-1}.fine{font-size:13px}.form-note{font-size:14px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:600}details p{max-width:800px}footer{padding:45px 5vw;font-size:14px}footer .row{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}footer .links{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}footer .legal{border-top:1px solid var(--line);margin-top:30px;padding-top:20px;color:#607067;font-size:12px}.pagehero{padding:75px 5vw 65px;max-width:1000px}.pagehero h1{font:clamp(46px,6vw,78px)/1.06 'Libre Caslon Display',Georgia,serif;margin:20px 0}.pagehero p{max-width:750px}.breadcrumb{font-size:13px}.checklist li{padding:8px 0}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:15px;z-index:20}:focus-visible{outline:3px solid #c99b61;outline-offset:5px}.mobile-contact{display:none}@media(max-width:850px){header{padding:18px 6vw;align-items:flex-start}nav{gap:14px;flex-wrap:wrap;justify-content:flex-end;max-width:220px;font-size:13px}nav .button{display:none}.brand strong{font-size:30px}.brand small{font-size:9px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 6vw}.hero h1{max-width:550px}.hero figure{height:390px;min-height:0;margin:0 6vw 30px}.strip{flex-wrap:wrap;padding:20px 6vw;font-size:13px}.section{padding:60px 6vw}.intro,.contact{grid-template-columns:1fr;gap:28px}.cards,.steps{grid-template-columns:1fr;gap:30px}.cards h3{margin:8px 0 15px}.formgrid{gap:16px}.pagehero{padding:50px 6vw}footer{padding:35px 6vw 85px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;background:#19352e;color:white;z-index:10;border-top:1px solid #718b7a}.mobile-contact a{width:50%;text-align:center;padding:13px;text-decoration:none;font-size:14px}.mobile-contact a+a{border-left:1px solid #718b7a}}@media(max-width:450px){nav{max-width:165px;gap:10px}.hero figure{height:300px}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.hero h1{font-size:55px}.strip{display:block}.strip span{display:block;margin:5px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.featured-project-heading{margin-top:55px}.project-exterior{grid-column:1/-1}.story-photos .project-exterior img{max-height:650px;aspect-ratio:1.8;object-position:center}.story-lead{font-size:24px;line-height:1.5}.signature{font-weight:600}.signature span{font-size:14px;font-weight:400}.story-photos{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:45px}.story-photos figure{margin:0}.story-photos img{height:auto;aspect-ratio:1.55;object-fit:cover}.story-photos figcaption{padding:13px 0;font-size:14px;color:#506058}.project-wide{width:90%;margin:0 5%;height:auto}.hero h1{font-size:clamp(48px,5vw,76px)}.hero figure{min-height:560px}.hero img{object-position:55% center}@media(max-width:850px){.story-photos{grid-template-columns:1fr}.hero figure{min-height:0;height:auto;aspect-ratio:1.57}.hero img{position:static;height:auto}.hero figcaption{font-size:11px;bottom:8px;padding:5px 8px}.hero h1{font-size:clamp(44px,9vw,64px)}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.65;cursor:wait}

.brand{width:300px;flex-shrink:0}.brand-stacked{width:280px}.brand-stacked img{mix-blend-mode:multiply}nav a{white-space:nowrap}@media(min-width:851px) and (max-width:1100px){header .brand{width:250px}nav .button{display:none}}.brand img{width:100%;height:auto;object-fit:contain}.brand-tagline{display:block;font-size:12px;line-height:1.4;letter-spacing:.025em;text-align:center;margin-top:0;color:#675741}header{padding:12px 5vw;gap:20px}nav{gap:22px}.muted{background:#eeeee7}:root{--ink:#202d28;--gold:#926d45;--line:#deded5}.contact,.mobile-contact{background:var(--ink)}.hero figcaption{background:#202d28db}@media(max-width:1100px){nav{gap:16px}nav .button{padding:11px 14px}}@media(max-width:850px){header{flex-direction:column;align-items:center;padding:12px 6vw 16px;gap:13px}.brand{width:250px}nav{max-width:none;justify-content:center;gap:22px;font-size:14px}.brand-tagline{font-size:11px}footer .brand{width:260px}}@media(max-width:450px){nav{gap:20px;max-width:none}header .brand{width:235px}.brand-tagline{font-size:10.5px}}

@media(min-width:851px) and (max-width:1250px){header .brand{width:250px}nav .button{display:none}}nav{flex-wrap:wrap;justify-content:flex-end}@media(max-width:850px){nav{justify-content:center}}
.photo-slot{margin-top:28px;padding:55px 25px;border:1px dashed #aaa99b;background:#eeeee7;text-align:center;font-size:24px}.photo-slot span{font-size:14px}.placeholder-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#675741}

.loft-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:38px}.loft-gallery figure{margin:0}.loft-gallery img{height:auto;aspect-ratio:4/3;object-fit:contain;background:#e3e3dc}.loft-gallery figcaption{padding:10px 0;font-size:14px}.loft-progress{margin-top:20px}@media(max-width:650px){.loft-gallery{grid-template-columns:1fr}}
/* Shared finishing pass: comfortable spacing, readable type, quiet surfaces. */
:root{--ink:#243b32;--paper:#fbfaf6;--gold:#85603c;--line:#dcded4}body{line-height:1.7}p{margin:0 0 1.2em}a{text-underline-offset:4px}section,article,div{min-width:0}.section{padding:80px max(6vw,calc((100vw - 1180px)/2))}.section h2{font-size:clamp(36px,4vw,54px)}.section h3{font-size:30px}.intro{gap:clamp(32px,6vw,90px)}.intro p:last-child{margin-bottom:0}.muted{background:#efefe7}.eyebrow{display:block;line-height:1.5;color:#53644e}.button{border-radius:3px;min-height:48px;transition:background .18s,color .18s}.button:hover{background:#355343;color:#fff}.text-link{font-size:15px;font-weight:600;display:inline-block;padding:10px 0}.actions{align-items:center;gap:20px}.hero{min-height:600px;max-width:1500px;margin:auto;grid-template-columns:1fr 1.05fr}.hero-copy{padding:52px 5vw 52px 6vw}.hero h1{font-size:clamp(48px,5.1vw,76px);margin:22px 0}.hero .hero-lead{font-size:23px;line-height:1.4;color:var(--ink);margin-bottom:16px}.hero figure{min-height:520px;margin:26px 26px 26px 0;border-radius:5px;overflow:hidden}.hero .trust-line{font-size:12px;color:#56645b;margin:26px 0 0;line-height:1.8}.hero figcaption{background:#243b32e8;border-radius:2px;max-width:310px}.cards{gap:24px;margin-top:34px}.card{background:#fff;padding:28px;border:1px solid var(--line);border-radius:5px}.card h3{margin:17px 0}.card p{font-size:16px}.card a{display:inline-block;padding:8px 0}.story-lead{font-size:24px;line-height:1.5}.story-motto{font:italic 27px/1.4 Georgia,serif;color:#6f654f;max-width:290px;margin-top:28px}.signature{margin:26px 0 0}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end}.section-heading h2{margin-bottom:0}.section-intro{max-width:660px;margin-top:20px;color:#536159}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:32px}.project-card{border:1px solid var(--line);background:#fff;border-radius:5px;overflow:hidden;scroll-margin-top:30px}.project-image{display:block}.project-image img{aspect-ratio:3/2;height:auto;object-fit:cover}.project-copy{padding:28px}.project-copy h3{margin:14px 0}.project-copy h3 a{text-decoration:none}.project-copy p{font-size:16px;color:#536159}.steps{gap:30px}.steps>div{border-top:1px solid #cbd0c3;padding-top:22px}.steps h3{font:600 18px/1.5 'DM Sans',sans-serif;margin:10px 0}.faq-section details:first-child{border-top:0}.faq-section summary{padding-right:10px}.faq-section details p{margin:15px 0 0;font-size:16px}.contact{gap:65px}.contact .eyebrow{color:#d7d9bc}.contact input,.contact select,.contact textarea{border-radius:3px;border:1px solid #cbd0c3;min-height:46px;font-size:16px}.contact a[href^="mailto:"]{overflow-wrap:anywhere}.contact .fine{font-size:12px}.contact .form-note{font-size:13px}.contact .button:hover{background:#f4e7d1;color:var(--ink)}.pagehero{max-width:1180px;margin:0 auto;padding:64px 6vw 54px}.pagehero h1{font-size:clamp(43px,5vw,70px);max-width:850px}.pagehero p{max-width:730px}.breadcrumb{color:#5f6c60}.checklist{padding-left:22px;margin:0}.checklist li{padding:9px 0}.project-wide{border-radius:5px;max-width:1180px;margin:0 auto;width:88%}.loft-gallery{gap:24px}.loft-gallery img{border-radius:4px}.loft-progress summary{padding:8px 0}.narrow{max-width:1000px;margin:auto}.narrow h1{font:48px/1.15 'Libre Caslon Display',Georgia,serif}.narrow h2{font-size:34px}footer{padding:45px 6vw 30px;background:#f2f1eb}footer .brand-stacked{width:170px}footer .row{align-items:center}footer .links{gap:16px 25px}footer .links a{padding:4px 0}.brand{width:250px}header{padding:12px 5vw;max-width:1600px;margin:auto}header nav{gap:21px}nav a:not(.button){padding:10px 0;border-bottom:1px solid transparent}nav a:hover:not(.button),nav a[aria-current="page"]{border-bottom-color:var(--gold)}.brand-tagline{font-size:11px}.nav-toggle{display:none}.project-page-intro{padding-bottom:25px}.project-page-intro h2{font-size:38px}.pagehero+.project-page-intro{padding-top:15px}
@media(min-width:851px) and (max-width:1250px){header .brand{width:215px}header nav{gap:17px;font-size:13px}header nav .button{display:none}}
@media(max-width:850px){.section{padding:55px 6vw}.hero{display:flex;flex-direction:column}.hero-copy{padding:40px 6vw 32px}.hero h1{font-size:clamp(46px,9vw,66px)}.hero figure{min-height:0;margin:0 6vw 35px;height:auto;aspect-ratio:auto}.hero img{position:static;height:auto}.hero .trust-line{margin-top:20px}.intro,.contact{grid-template-columns:1fr;gap:28px}.cards{grid-template-columns:1fr}.card{padding:25px}.project-grid{gap:20px}.project-copy{padding:22px}.project-copy h3{font-size:27px}.section-heading{align-items:start;flex-direction:column;gap:4px}.story-motto{max-width:none;margin:16px 0 0}.steps{grid-template-columns:1fr}.pagehero{padding:40px 6vw}.pagehero h1{font-size:clamp(42px,8vw,62px)}header{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:10px 6vw;gap:8px}header .brand{width:210px}.brand-tagline{font-size:10px}header nav{width:100%;max-width:none;justify-content:center;gap:6px 22px;font-size:14px}.js .nav-toggle{display:block;background:transparent;border:1px solid #a9b5a7;border-radius:3px;padding:9px 15px;color:var(--ink);font-size:14px}.js header nav{display:none}.js header nav.is-open{display:flex;padding:18px 0 8px}.mobile-contact{background:#243b32;padding-bottom:env(safe-area-inset-bottom)}footer{padding:35px 6vw 95px}footer .brand-stacked{width:150px}.contact{gap:30px}}
@media(max-width:600px){.project-grid{grid-template-columns:1fr}.hero .actions{align-items:flex-start;gap:8px;flex-direction:column}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.story-lead{font-size:22px}.loft-gallery{grid-template-columns:1fr}.hero figcaption{font-size:10px}.contact .button{width:100%}footer .row{align-items:start}.pagehero h1{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
/* Compact page rhythm: keep related content together. */
p{margin-bottom:1em}.section{padding-top:52px;padding-bottom:52px}.intro{gap:clamp(24px,4vw,52px);grid-template-columns:.85fr 1.15fr}.section h2{margin:8px 0 18px;font-size:clamp(34px,3.6vw,48px)}.pagehero{padding-top:38px;padding-bottom:30px}.pagehero h1{margin:14px 0 18px;font-size:clamp(42px,4.6vw,64px)}.pagehero p:last-child{margin-bottom:0}.pagehero .actions{margin-top:22px}.hero{min-height:0}.hero-copy{padding-top:36px;padding-bottom:36px}.hero figure{min-height:460px;margin-top:18px;margin-bottom:18px}.hero h1{margin:18px 0}.actions{margin-top:22px}.cards,.steps{margin-top:26px}.card{padding:22px}.card h3{margin:12px 0}.card p:last-of-type{margin-bottom:8px}.project-grid{gap:24px;margin-top:22px}.project-copy{padding:22px}.project-copy h3{margin:10px 0}.project-copy .text-link{padding-bottom:0}.section-intro{margin-top:14px;margin-bottom:0}.story-photos{margin-top:26px;gap:20px}.story-photos figcaption{padding:8px 0}.loft-gallery{margin-top:24px;gap:20px}.loft-gallery figcaption{padding:8px 0}.project-page-intro{padding-bottom:40px}.pagehero+.project-page-intro{padding-top:8px}.project-page-intro>.project-grid{margin-top:0}.project-summary{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.project-summary .story-lead{font-size:23px;margin-bottom:14px}.project-note{border-left:2px solid #bda88d;padding-left:24px}.project-note .signature{margin-top:14px}.project-note .fine{margin:16px 0 0}.contact{gap:40px}.formgrid{gap:14px 18px}.contact textarea{min-height:105px}.contact .form-note{margin:14px 0}.contact .fine:last-child{margin-bottom:0}.faq-section details{padding:16px 0}footer{padding-top:28px;padding-bottom:24px}footer .brand-stacked{width:130px}footer .links{margin-top:14px}footer .legal{margin-top:20px;padding-top:14px}.page-adu-zoning .intro{grid-template-columns:.7fr 1.3fr}.page-privacy .section{padding-top:38px}
@media(max-width:850px){.section{padding-top:36px;padding-bottom:36px}.intro,.contact{grid-template-columns:1fr;gap:18px}.page-adu-zoning .intro{grid-template-columns:1fr}.pagehero{padding-top:28px;padding-bottom:24px}.pagehero h1{font-size:clamp(39px,7vw,55px)}.hero-copy{padding-top:28px;padding-bottom:24px}.hero figure{min-height:0;margin:0 6vw 24px}.cards,.steps{gap:20px;margin-top:22px}.story-motto{margin-top:12px}.project-grid{gap:20px}.project-copy{padding:20px}.project-summary{grid-template-columns:1fr;gap:18px}.project-note{padding-left:18px}.story-photos{margin-top:22px}.contact{gap:24px}.section h2{margin-bottom:14px}footer{padding-bottom:90px}.loft-gallery{margin-top:20px}}
/* ADU education: sketches and a readable furnished concept. */
.adu-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.adu-type{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#fff}.adu-type img{height:auto;aspect-ratio:3/2}.adu-type-copy{padding:22px}.adu-type h3{font-size:28px;margin:10px 0 14px}.adu-type p{font-size:16px;margin-bottom:0;color:#506058}.adu-caption{margin:16px 0 0;color:#5c675b}.adu-takeaway{font:clamp(25px,3vw,36px)/1.35 'Libre Caslon Display',Georgia,serif;margin:24px 0 0}.adu-takeaway em{color:#85603c}.adu-layout-grid{display:grid;grid-template-columns:1fr .9fr;gap:44px;align-items:center}.adu-floorplan{margin:0}.adu-floorplan img{height:auto;object-fit:contain;border:1px solid var(--line);border-radius:5px}.adu-floorplan figcaption{font-size:13px;margin-top:9px;color:#53644e}.adu-size-ideas{border-top:1px solid #c9cebf;margin-top:24px;padding-top:4px}.adu-size-ideas h3{font:600 18px/1.5 'DM Sans',sans-serif;margin:16px 0}.adu-size-ideas p{font-size:15px;margin:0 0 16px}.adu-size-ideas strong{display:block;color:var(--ink)}
@media(max-width:1000px){.adu-types{gap:16px}.adu-type-copy{padding:18px}.adu-type h3{font-size:25px}.adu-layout-grid{gap:28px}}
@media(max-width:750px){.adu-types,.adu-layout-grid{grid-template-columns:1fr}.adu-types{gap:20px}.adu-type{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center}.adu-type img{object-fit:contain}.adu-type h3{font-size:26px}.adu-floorplan{max-width:560px;width:100%;margin:0 auto}.adu-layout-grid{gap:22px}}
@media(max-width:500px){.adu-type{display:block}.adu-type-copy{padding:20px}.adu-type h3{font-size:29px}.adu-takeaway em{display:block}}
/* Small-home design stories: one welcoming exterior and two everyday interiors. */
.small-home-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:center;margin-top:26px;background:#efefe7;border:1px solid var(--line);border-radius:5px;overflow:hidden}.small-home-feature>img{height:auto;aspect-ratio:3/2}.small-home-feature-copy{padding:20px 28px 20px 0}.small-home-feature h3{font-size:34px;margin:12px 0 18px}.small-home-feature p{font-size:16px}.small-home-feature p:last-child{margin-bottom:0}.small-home-details>article>img{height:auto;aspect-ratio:3/2;object-fit:cover}.small-home-details .project-copy p{margin-bottom:0}.small-home-ideas>.text-link{margin-top:8px}
@media(max-width:850px){.small-home-feature{grid-template-columns:1fr;gap:0}.small-home-feature-copy{padding:24px}.small-home-feature h3{font-size:31px}}
@media(max-width:600px){.small-home-feature-copy{padding:20px}.small-home-feature h3{font-size:29px}}
.tiny-home-concept{margin:0;align-self:center}.tiny-home-concept img{height:auto;aspect-ratio:3/2}.tiny-home-concept figcaption{padding:9px 16px;font-size:12px;color:#53644e;background:#fbfaf6}
/* First inquiry: clear expectations and a compact four-step process. */
.next-steps-list{grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin-bottom:14px}.next-steps-list li{border-top:1px solid #cbd0c3;padding-top:20px}.next-steps-list .number{font-size:11px;letter-spacing:.08em}.next-steps-list p{margin-bottom:0}.inquiry-next{margin:25px 0;padding:20px 0;border-top:1px solid #718076;border-bottom:1px solid #718076}.contact .inquiry-next h3{font:600 18px/1.45 'DM Sans',sans-serif;margin:0 0 12px}.contact .inquiry-next p{font-size:15px}.inquiry-next a{font-size:14px}.contact .inquiry-required{margin-top:0}.contact #form-status:not(:empty){padding:14px;border:1px solid #a9b5a7;border-radius:3px;font-size:15px}.contact textarea{min-height:130px}
@media(max-width:1000px){.next-steps-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.next-steps-list{grid-template-columns:1fr}.next-steps-list li{padding-top:16px}.inquiry-next{margin:20px 0;padding:16px 0}}
/* Concept gallery: full illustrations appear only on Ideas & Planning. */
.planning-jumps{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px 22px;font-size:15px;margin-top:24px;max-width:none}.planning-jumps a{text-decoration:underline;white-space:normal}.planning-figure{margin:26px 0 0}.planning-figure img{height:auto;object-fit:contain;border:1px solid var(--line);border-radius:5px}.planning-figure figcaption{font-size:13px;color:#53644e;padding-top:10px}.planning-story .intro p:last-child{margin-bottom:0}.planning-teaser{border-top:1px solid var(--line)}header nav{gap:16px}
@media(min-width:851px) and (max-width:1400px){header nav .button{display:none}header .brand{width:215px}header nav{font-size:13px;gap:15px}}
@media(max-width:850px){.planning-jumps{justify-content:flex-start;font-size:14px;gap:8px 18px}.planning-figure{margin-top:20px}}
/* A simpler menu, optional inquiry details, and accessible image enlargement. */
.homes-menu{position:relative;padding:0;border:0}.homes-menu summary{font-weight:400;padding:10px 0;list-style:none;white-space:nowrap}.homes-menu summary::-webkit-details-marker{display:none}.homes-menu summary::after{content:'⌄';margin-left:7px}.homes-options{position:absolute;top:100%;left:0;z-index:20;width:230px;padding:12px 18px;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 20px #243b3214}.homes-options a{display:block}.homes-menu:has([aria-current='page']) summary{border-bottom:1px solid var(--gold)}header .nav-contact{font-weight:700;text-decoration:underline;text-underline-offset:5px}.home-options-note{max-width:820px;margin:24px 0 0;font-size:16px;color:#506058}.inquiry-options{margin-top:22px;border-color:#718076;padding:16px 0}.inquiry-options summary{font-size:16px}.inquiry-options summary span{font-weight:400;font-size:14px}.inquiry-options .formgrid{margin-top:20px}.project-outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:28px 0}.project-outcome-grid>div{border-top:1px solid var(--line);padding-top:10px}.project-outcome-grid h3{font:600 18px/1.4 'DM Sans',sans-serif}.project-outcome-grid p{font-size:16px}.viewer-open{overflow:hidden}.image-viewer{width:min(1500px,96vw);height:92dvh;max-height:92vh;max-width:96vw;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}.image-viewer[open]{display:flex;flex-direction:column}.image-viewer::backdrop{background:#10281fd9}.viewer-toolbar{display:flex;gap:10px;align-items:center;flex-shrink:0}.viewer-toolbar button{min-width:44px;min-height:44px;border:1px solid #89998e;background:white;color:var(--ink);border-radius:3px;cursor:pointer}.viewer-toolbar output{min-width:50px;text-align:center;font-size:14px}.viewer-close{margin-left:auto;padding:0 14px}.viewer-help{font-size:13px;margin:10px 0}.viewer-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;background:#eeeee7}.viewer-scroll img{display:block;max-width:none;height:auto;object-fit:contain;margin:0 auto}.planning-figure>a{display:block;cursor:zoom-in}
@media(max-width:850px){.homes-options{position:static;width:auto;border:0;box-shadow:none;padding:0 8px}.homes-menu{align-self:flex-start}.project-outcome-grid{grid-template-columns:1fr;gap:12px}.image-viewer{padding:10px}.viewer-toolbar{gap:6px}.viewer-help{font-size:12px}header nav .nav-contact{display:block}}
/* Compare ADU arrangements with readable column headings and horizontal scroll on phones. */
.comparison-scroll{overflow-x:auto;margin:24px 0 12px;max-width:100%;border:1px solid var(--line);border-radius:4px}.guide-comparison{border-collapse:collapse;width:100%;min-width:620px;font-size:15px;text-align:left}.guide-comparison caption{text-align:left;padding:16px 18px;font-weight:600}.guide-comparison th,.guide-comparison td{vertical-align:top;padding:16px 18px;border-top:1px solid var(--line)}.guide-comparison thead{background:#efefe7}.guide-comparison tbody th{width:24%}.guide-comparison td{width:25%}
