/* Architectural imagery keeps its complete frame; copy has its own reading space. */
:root{--paper:#faf7ef;--cream:#f0eadc;--line:#dcdaca}
h1,h2,h3{text-wrap:balance}
.section-intro>p,.welcome>p,.family-copy>p,.contact-heading>p{text-wrap:pretty}
.hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(26px,4vw,72px);height:auto;min-height:710px;max-height:none;padding:70px var(--gutter) 145px;background:radial-gradient(ellipse at 92% 0,#52604b 0,transparent 52%),linear-gradient(125deg,#1f352a,#344b37)}
.hero-media{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;min-width:0;z-index:1;overflow:visible;background:#e7e9db;box-shadow:0 25px 65px #0b1c2033;outline:1px solid #dfd6bd55;outline-offset:10px}
.hero-photo{width:100%;height:auto;aspect-ratio:1200/804;object-fit:contain;object-position:center;transform:none!important;will-change:auto}
.hero-copy{position:relative;grid-column:1;grid-row:1;z-index:2;min-width:0;padding:12px 0 16px}
.hero h1{font-size:clamp(64px,6.35vw,106px);line-height:.98;letter-spacing:-2.2px;max-width:660px}
.hero-note{font-size:28px;margin-bottom:28px;color:#e8dab7}
.hero h1 em{color:#e9debd}
.hero-description{font-size:16px;line-height:1.9;max-width:410px;margin:28px 0 30px;color:#f4eedf}
.hero-shade{background:none;pointer-events:none}
.hero .sunlight{opacity:.25;inset:-50% -20% -20% 10%}
.hero .motes{opacity:.3}
.hero-side-note{top:32px;right:var(--gutter);writing-mode:initial;letter-spacing:2px;font-size:9px;color:#d6dec8}
.hero-attribution{bottom:112px;right:var(--gutter);background:none;padding:0;font-size:11px;color:#e5dcc5}
.hero-bottom{bottom:32px}
.hero-visit{max-width:360px}
.hero-copy .button{font-size:14px;padding:18px 24px;gap:18px}
.welcome{padding-top:87px;padding-bottom:87px}
.welcome>p,.section-intro>p{line-height:1.9}
.journey-stage{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:1fr auto;column-gap:clamp(22px,4vw,68px);height:auto;min-height:620px;padding:54px clamp(25px,4vw,70px) 30px;background:#eae9db;color:var(--forest);overflow:hidden}
.journey-photos,.journey-stage.floorplan .journey-photos{position:relative;inset:auto;grid-column:2;grid-row:1;align-self:center;width:100%;height:auto;z-index:auto;background:#f6f4e9;border:1px solid #d6d5c2}
.journey-photos img,.journey-stage.floorplan .journey-photos img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center;padding:0;transform:none!important;transition:opacity .22s}
.journey-stage.floorplan .journey-photos img{aspect-ratio:3/2;padding:14px}
.journey-stage.changing img{opacity:.75;transform:none}
.journey-shade,.journey-stage.floorplan .journey-shade{display:none}
.journey-story,.journey-stage.floorplan .journey-story{grid-column:1;grid-row:1;width:100%;max-width:540px;align-self:center;padding:0 0 26px}
.chapter-number{font-size:11px;color:#718064;letter-spacing:2.3px;margin-bottom:25px}
.journey-story h3,.journey-stage.floorplan .journey-story h3{font-size:clamp(42px,4.3vw,68px);line-height:1.05}
.journey-story h3 em{color:#7b8158}
.journey-story>p,.journey-stage.floorplan .journey-story>p{font-size:15px;line-height:1.95;color:#53634f;max-width:390px;margin-top:25px}
.handwriting,.journey-stage.floorplan .handwriting{display:block;font-size:28px;color:#8a794a;margin-top:22px}
.journey-navigation{position:relative;inset:auto;grid-column:1/-1;grid-row:2;gap:30px;margin-top:30px}
.chapter-tabs{gap:30px}
.chapter-tabs button{font-size:13px;color:#52634c;border-top-color:#929c8366}
.chapter-tabs button span{color:#788365}
.chapter-tabs button.active{border-top-color:#415c3b;color:#243c2e}
.chapter-tabs button:hover{border-top-color:#415c3b}
.journey-next:hover{background:#2c4532;color:#fffaf0}
.photo-expand{top:16px;right:16px;width:36px;height:36px;z-index:2;background:#fcf9edf2;box-shadow:0 3px 14px #2b3e2710}
.journey-caption{font-size:12px;line-height:1.7}
.home-showcase{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(30px,4.3vw,65px);align-items:center}
.home-visual{min-height:0;aspect-ratio:3/2;overflow:visible;background:#eeeee3;outline:1px solid #d7d7c4;outline-offset:8px;margin:8px}
.home-visual img{object-fit:contain;object-position:center;transform:none;transition:opacity .2s}
.image-kind{top:13px;left:13px;font-size:9px;letter-spacing:1.2px;background:#fcf9edf2}
.floorplan-button{bottom:13px;left:13px;background:#fffdf3f5;box-shadow:0 4px 12px #25382e12}
.home-story>p{font-size:15px;line-height:1.9;min-height:0}
.home-facts dt{font-size:12px;line-height:1.5}
.home-story .other-homes summary{font-size:13px}
.family{align-items:start;gap:0;background:#ecebdc;color:#2d4333}
.family-photo{min-height:0;height:auto;padding:40px 0 40px 40px;align-self:center;overflow:visible}
.family-photo img{position:static;inset:auto;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;transform:none;filter:none}
.family-photo:after{display:none}
.photo-signature{position:relative;display:block;inset:auto;margin:20px 0 0;color:#746b45;font-size:31px;transform:rotate(-2deg)}
.family-copy{padding-top:56px;padding-bottom:56px}
.family-copy>p{font-size:15px;line-height:1.9;color:#54644f}
.family-copy>.eyebrow{color:#657352}
.family-copy h2 em,.family-promise em,.family-promise .icon{color:#778052}
.family-copy>.family-lead{color:#364b37}
.family-promise{border-top-color:#85947144}
.certification{color:#4d6544;border-top-color:#85947144}
.path-steps p{font-size:15px;line-height:1.9}
.realization-feature{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;background:#edf0e3}
.realization-photo{min-height:0;height:auto;aspect-ratio:4/3;overflow:hidden;background:#edf0e3}
.realization-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important;filter:none;transition:opacity .2s}
.realization-story{padding:38px 36px}
.realization-story>p{line-height:1.9}
.realization-story .eyebrow{line-height:1.8}
.image-treatment{display:block;font:11px/1.7 var(--sans);color:#61734f;margin:-5px 0 15px;letter-spacing:.2px}
#photo-treatment{display:block;font:12px/1.5 var(--sans);letter-spacing:0;color:#66755d;margin-top:8px}
.photo-compare{display:block;margin:0 28px 16px;padding:9px 13px;border:1px solid #abb699;background:#f3f3e7;color:#3d5435;font:12px/1.5 var(--sans)}
.photo-compare:hover{background:#e6ebd9}
.testimonial{margin-top:16px}
.contact-dialog-photo{display:flex;flex-direction:column;justify-content:center;background:#e7e7d7;padding:24px;gap:30px;overflow:visible}
.contact-dialog-photo img{position:static;inset:auto;z-index:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transform:none}
.contact-dialog-photo:after{display:none}
.contact-dialog-photo>span{position:static;font-size:42px;line-height:1.1;color:#314a37}
.contact-dialog-photo>span em{color:#83805a}
.book-home-picture img,.book-portrait .book-home-picture img,.book-preview .book-home-picture img{height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;background:#ecefe3;transform:none}
.book-home-picture figcaption{font-size:11px;line-height:1.7;color:#67765d;margin-top:12px}
.book-image-open{display:block;position:relative;width:100%;padding:0;border:0;background:transparent;text-align:left}
.book-image-open>span{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:7px;background:#faf7efed;border:1px solid #d3d5bb;padding:7px 10px;color:#3c5037;font:11px/1.4 var(--sans);box-shadow:0 3px 12px #3145210d}
.book-image-open>span>.icon{width:14px;height:14px}
.book-image-open:hover>span{background:#fffdf4;border-color:#7b8c65}
.book-portrait{justify-content:flex-start}
.book-portrait blockquote{margin:auto;padding-top:22px;padding-bottom:28px;line-height:1.25}
.book-cover-image{height:auto;max-height:185px;aspect-ratio:3/2;object-fit:contain;background:#e5e9da}
.book-ending-portrait>img{max-height:none;min-height:0;aspect-ratio:4/3;object-fit:contain}
.book-home-summary{font-size:15px;line-height:1.85}
.book-question-intro{font-size:14px;line-height:1.85}
.book-cover-credit{display:block;font:10px/1.6 var(--sans);color:#d6c7a4;margin-top:12px}
.book-photo-credit,.family-photo-credit,.contact-photo-credit{display:block;font:11px/1.7 var(--sans);color:#617052}
.family-photo-credit{margin-top:12px}
.image-kind{max-width:calc(100% - 26px);line-height:1.5}
@media(max-width:760px){#contact-dialog[open]{display:block;grid-template-columns:1fr}}
@media(min-width:1800px){.hero{padding-top:95px;padding-bottom:150px;min-height:840px}.hero-media{max-width:1160px;justify-self:center}.hero-copy{max-width:680px;justify-self:end}.journey-stage{min-height:680px}.journey-photos{max-width:1100px;justify-self:center}}
@media(max-width:1100px){.hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;min-height:600px;padding-top:65px;padding-bottom:137px}.hero h1{font-size:clamp(56px,6.5vw,76px)}.hero-note{font-size:25px}.hero-description{font-size:14px}.hero-description br{display:none}.hero-copy .button{font-size:12px;gap:14px;padding:17px}.hero-attribution{font-size:10px}.journey-stage{padding:40px 28px 28px;gap:25px;min-height:555px}.journey-story h3,.journey-stage.floorplan .journey-story h3{font-size:46px}.journey-story>p{font-size:14px}.chapter-tabs{gap:20px}.chapter-tabs button{font-size:12px}.home-showcase{gap:30px}.family-photo{padding-left:26px}.family-copy{padding:40px 30px}.family-copy>p{font-size:14px}.realization-story{padding:30px 26px}.book-home-summary{font-size:14px}}
@media(max-width:760px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:32px;padding:43px var(--gutter) 30px;min-height:0}.hero-copy{order:0;padding:0;max-width:620px}.hero h1{font-size:clamp(63px,10.5vw,84px);line-height:.96;letter-spacing:-2px}.hero h1 span:first-child{max-width:none}.hero-note{font-size:25px;margin-bottom:23px}.hero-description{font-size:15px;line-height:1.85;max-width:420px;margin:25px 0}.hero-copy .button{font-size:13px;padding:17px 20px}.hero-media{order:1;max-width:650px;align-self:center;outline-offset:6px}.hero-attribution{order:2;position:static;align-self:end;line-height:1.7;margin-top:-17px;font-size:10px}.hero-bottom{order:3;position:static;gap:18px;padding:0;margin-top:0}.hero-visit{margin:0;max-width:none;flex:1}.hero-visit strong{font-size:12px}.hero-visit span{font-size:9px}.scroll-cue,.hero-side-note{display:none}.hero .sunlight{opacity:.12}.welcome{padding-top:55px;padding-bottom:55px}.journey-stage{display:flex;flex-direction:column;margin:0;padding:28px 24px 25px;gap:0;min-height:0}.journey-photos,.journey-stage.floorplan .journey-photos{order:0;position:relative;inset:auto;width:100%;height:auto;margin:0 0 29px}.journey-story,.journey-stage.floorplan .journey-story{order:1;padding:0;width:100%;max-width:none}.journey-story h3,.journey-stage.floorplan .journey-story h3{font-size:48px}.journey-story>p,.journey-stage.floorplan .journey-story>p{font-size:15px;line-height:1.9;max-width:580px;margin-top:21px}.chapter-number{margin-bottom:18px}.handwriting,.journey-stage.floorplan .handwriting{font-size:28px;margin-top:19px}.journey-navigation{order:2;margin-top:29px;gap:14px;width:100%;align-items:center}.chapter-tabs{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;padding-right:0}.chapter-tabs button{font-size:12px;padding-top:10px}.chapter-tabs button.active{padding-top:9px}.chapter-tabs button span{display:inline;font-size:10px;margin-right:7px}.journey-next{position:static;width:36px;height:36px;align-self:end;margin-bottom:2px}.photo-expand{top:38px;right:34px}.journey-caption{font-size:11px}.home-showcase{display:flex;flex-direction:column;align-items:stretch;gap:30px}.home-visual{min-height:0;height:auto;aspect-ratio:3/2;margin:7px;outline-offset:6px}.home-story h3{font-size:43px}.home-facts dt{font-size:11px}.home-facts dd{font-size:17px}.family{display:flex;flex-direction:column;align-items:stretch}.family-photo{height:auto;min-height:0;padding:28px 26px 0}.photo-signature{margin-top:16px;font-size:30px}.family-copy{padding:33px 27px 42px}.family-copy>p{font-size:15px}.realization-feature{display:flex;flex-direction:column;align-items:stretch}.realization-photo{width:100%;height:auto;min-height:0;aspect-ratio:4/3}.realization-story{padding:30px 25px}.contact-dialog-photo{display:none}.book-home-picture img,.book-portrait .book-home-picture img,.book-preview .book-home-picture img{height:auto;max-height:none;aspect-ratio:3/2}.book-portrait blockquote{font-size:25px;margin:0 auto;padding:13px 4px 23px}.book-home-summary{font-size:15px}.book-cover-image{height:auto;max-height:165px}}
@media(max-width:380px){.hero h1{font-size:59px}.hero-description{font-size:14px}.hero-note{font-size:23px}.hero-copy .button{padding:16px;font-size:12px;gap:12px}.hero{padding-top:35px;gap:28px}.hero-visit strong{font-size:11px}.journey-story h3,.journey-stage.floorplan .journey-story h3{font-size:43px}.journey-stage{padding-left:20px;padding-right:20px}.home-facts{gap:7px}.home-facts dd{font-size:15px}.photo-expand{right:29px}.book-home-picture figcaption{font-size:10px}}
