/* Home: a landscape opening, an editorial story, then tools for choosing a place. */
.home-redesign {
  --paper:#f4f1e8; --paper-light:#fcfaf4; --ink:#283c31; --muted:#70776c;
  --forest:#21392d; --line:#d6d6c8; --gutter:clamp(22px,5vw,100px);
  background:var(--paper);
}
.home-redesign main h2 { text-wrap:balance; }
.home-redesign main h2 em { font-style:italic; }
.home-redesign .header,.home-redesign .header.scrolled {
  top:16px;left:24px;right:24px;padding:15px 25px;gap:24px;
  color:#263b30;background:#f7f4e9ed;border:1px solid #ffffff6b;
  backdrop-filter:blur(18px);box-shadow:0 3px 30px #152b2010;
}
.home-redesign .header .desktop-nav { gap:30px;font-size:12px; }
.home-redesign .desktop-nav a::after { background:#657753; }
.home-redesign .header .header-cta { background:#263f31;border:0;color:#fffcef;padding:13px 20px;min-height:44px; }
.home-redesign .header .header-cta:hover { background:#405841; }
.home-redesign .header .brand>span { font-size:32px; }
.home-redesign .header .brand small { font-size:5px;letter-spacing:.26em; }
.home-redesign .header .brand>svg { width:30px; }
.home-redesign .landscape-experience.is-immersive { height:135svh; }
/* The sky passage adds 60svh of pinned scroll: the painted camera tilts up into the cloud (sky-passage.mjs). */
.has-sky-passage .home-redesign .landscape-experience.is-immersive { height:195svh; }
.home-redesign .landscape-experience .hero-eyebrow { display:none; }
.home-redesign .scene-introduction { bottom:17%;max-width:690px; }
.home-redesign .scene-introduction .eyebrow { font-size:10px;letter-spacing:.12em;margin-bottom:19px; }
.home-redesign .scene-poem { font-size:clamp(48px,4.8vw,78px);line-height:1.01;letter-spacing:-.04em; }
.home-redesign .hero-bottom-copy { font-size:14px;line-height:1.85;margin-top:19px; }
.hero-actions { display:flex;align-items:center;gap:30px;margin-top:27px; }
.hero-actions a { display:inline-flex;align-items:center;gap:28px;min-height:52px;font-size:12px; }
.hero-primary-action { padding:13px 21px;background:#ecebcf;color:#2c3c2d;transition:background .25s; }
.hero-primary-action:hover { background:#fff9de; }
.hero-actions a>span { font-size:19px; }
.hero-secondary-action { border-bottom:1px solid #e4ead577;color:#f1f3e7; }
.home-redesign .scene-tools { bottom:30px; }
.home-redesign .hero-footer { bottom:30px; }
.home-redesign .scene-settings { font-size:11px; }
.home-redesign .scene-shade { background:linear-gradient(0deg,#132e21ca,transparent 73%),linear-gradient(90deg,#102b222e,transparent 65%); }
.home-redesign .horizon-after h2 { font-size:clamp(52px,5.8vw,86px); }
.home-redesign .place-route { background:var(--paper);color:var(--ink); }

.home-introduction { padding:0 var(--gutter) 96px;background:var(--paper);position:relative;scroll-margin-top:0; }
.home-anchor { position:absolute;top:0; }
.home-kicker { font:10px/1.65 var(--sans);letter-spacing:.13em;color:#788366; }
.home-kicker>span { margin-right:20px;color:#9b9d7e; }

/* Give the 3D model its own dark frame and keep its controls on a clear surface. */
.home-redesign .valley-experience { --valley-paper:#f4f1e8;background:#203a2d;padding:80px var(--gutter) 40px;color:#f4f1e8;scroll-margin-top:0; }
.home-redesign .valley-heading { padding:0 0 34px;gap:50px; }
.home-redesign .valley-heading h2 { font-size:clamp(42px,4.6vw,68px);margin-top:20px; }
.home-redesign .valley-heading h2 em { color:#cad2b8; }
.home-redesign .valley-heading .valley-eyebrow { color:#b6c1a4;font-size:9px;letter-spacing:.13em; }
.home-redesign .valley-heading p { color:#c1cbb8;font-size:13px;max-width:350px; }
.home-redesign .valley-shell { background:var(--paper);color:var(--ink);border:0; }
.home-redesign .valley-stage { height:600px;max-height:72svh; }
.home-redesign .valley-topline { left:26px;right:26px; }
.home-redesign .valley-welcome { left:40px;bottom:68px; }
.home-redesign .valley-welcome h3 { font-size:clamp(42px,4.4vw,65px); }
.home-redesign .valley-welcome h3 em { color:#e8edda; }
.home-redesign .valley-status { left:26px; }
.home-redesign .valley-toolbar { padding-inline:26px; }
.home-redesign .valley-views button { padding-block:21px 18px;font-size:12px; }
.home-redesign .valley-options button,.home-redesign .valley-quality select { font-size:11px;min-height:32px; }
.home-redesign .valley-caption { padding:16px 26px;font-size:11px; }
.home-redesign .valley-sources { margin:19px 0 0;border-color:#afc3993b;color:#bdcbb1; }
.home-redesign .valley-sources>div { color:#b7c6a8; }
.home-redesign .valley-shell.valley-expanded .valley-stage { height:auto;max-height:none; }

.home-redesign .place-route .land-estate { padding:88px var(--gutter) 72px;background:var(--paper);color:var(--ink); }
.home-redesign .land-estate .land-section-heading { margin-bottom:32px;gap:12%; }
.home-redesign .land-estate .land-section-heading h2 { font-size:clamp(44px,4.9vw,72px);margin-top:18px; }
.home-redesign .land-estate .land-section-intro p { font-size:14px; }
.home-redesign .land-explorer { border:1px solid #c9cebe; }
.home-redesign .land-estate .land-toolbar { padding:0 23px;border-top:0;background:#eeeee2; }
.home-redesign .land-materials { background:#e8eadc;padding:24px 30px;border-top:0;margin-top:25px; }
.home-redesign .land-materials h3 { font-size:32px;margin-block:9px; }
.home-redesign .land-materials p { font-size:12px; }
.home-redesign .land-estate[data-land-mode=plan] .land-workspace { display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:stretch; }
.home-redesign .land-estate[data-land-mode=plan] .land-stage { height:auto;min-height:680px;align-self:stretch; }
.home-redesign .land-estate[data-land-mode=plan] .land-choice { position:relative;inset:auto;width:auto;height:auto;max-height:none;overflow:visible;padding:26px;box-shadow:none;border:0;border-left:1px solid #cfd5c3;background:#faf8ef; }
.home-redesign .land-estate[data-land-mode=plan] .parcel-viewport { inset:0; }
.home-redesign .land-estate[data-land-mode=plan] .real-tour-bar { min-height:80px; }
.home-redesign .land-estate[data-land-mode=plan] .land-selection-offer { margin-top:24px; }
.home-redesign .land-estate[data-land-mode=plan] .land-viewer-dialog { overflow:auto; }

/* Life today precedes the ideas for the future territory. */
.home-redesign .season-section { margin:0;padding:70px var(--gutter) 60px;background:#e7e9dc;color:#263e2e; }
.home-redesign .season-content h2 { font-size:clamp(44px,4.4vw,66px); }
.home-redesign .season-content h2 em { color:#7b8964; }
.home-redesign .season-tabs { border-color:#bdc7ae; }
.home-redesign .season-tabs button { color:#738165; }
.home-redesign .season-tabs button.active { color:#253e2d; }
.home-redesign .season-tabs button::after { background:#526b40; }
.home-redesign #season-panel p { color:#53654b; }
.home-redesign #season-panel>span { color:#7b886b; }
.home-redesign .season-frame.is-active figcaption { color:#364d30;border-color:#7c8b62; }
.home-redesign .season-frames { gap:12px; }
.home-redesign .season-frame { opacity:.58;transition:opacity .4s,transform .6s; }
.home-redesign .season-frame.is-active { opacity:1;transform:translateY(-15px); }
.home-redesign .season-frame figcaption { font-size:11px; }
.home-redesign .home-guide { padding:65px var(--gutter) 76px;background:#e7e9dc;border-bottom:0; }
.home-redesign .home-guide-heading { margin-bottom:31px; }
.home-redesign .home-guide-heading h2 { font-size:clamp(40px,4.2vw,62px);line-height:1.06; }
.home-redesign .home-guide-heading h2 em { color:#768360; }
.home-redesign .home-guide-heading .text-link { font-size:12px; }
.home-redesign .home-guide-cards { gap:26px; }
.home-redesign .home-guide-card { padding:0;border:0; }
.home-guide-image { position:relative;overflow:hidden;aspect-ratio:1.65;background:#ced5c1; }
.home-guide-image>img { width:100%;height:100%;object-fit:cover;transition:transform .6s; }
.home-guide-image>img[src$=".svg"] { object-fit:contain;background:#203b31; }
.home-guide-image>span { position:absolute;right:14px;bottom:14px;width:37px;height:37px;display:grid;place-items:center;background:#f4f1e9e6;color:#2c432f;font-size:20px; }
.home-guide-card:hover .home-guide-image>img { transform:scale(1.035); }
.home-guide-card-copy { padding:18px 0; }
.home-redesign .home-guide-category { font-size:10px;color:#718063; }
.home-redesign .home-guide-card h3 { font-size:29px;line-height:1.16;margin-top:8px; }
.home-guide-image-note { margin-top:15px;font-size:9px;line-height:1.7;color:#7e8772; }

.home-redesign .atlas { padding:80px var(--gutter) 38px;background:#263c30; }
.home-redesign .atlas-intro { gap:12%;margin-bottom:40px; }
.home-redesign .atlas-intro h2 { font-size:clamp(44px,4.6vw,70px); }
.home-redesign .atlas-intro>p { font-size:14px;max-width:430px; }
.home-redesign .atlas-preview { grid-template-columns:1.4fr 1fr 1fr;align-items:start;gap:24px; }
.home-redesign .atlas-preview>.atlas-card:first-child>picture { aspect-ratio:1.09; }
.home-redesign .atlas-preview>.atlas-card:not(:first-child) { margin-top:55px; }
.home-redesign .atlas-preview>.atlas-card:not(:first-child)>picture { aspect-ratio:1.03; }
.home-redesign .atlas .atlas-card .place-bottom { border:0;padding:22px 0 17px; }
.home-redesign .atlas .atlas-card h3 { font-size:30px; }
.home-redesign .atlas .atlas-card p { font-size:12px; }
.home-redesign .atlas-more>summary { font-size:13px; }
.home-redesign .development-story { background:#263c30;padding:20px var(--gutter) 75px;gap:12%; }
.home-redesign .development-story h2 { font-size:44px; }
.home-redesign .development-plan>p { font-size:13px; }

.home-redesign .faq-section { background:var(--paper);padding:85px var(--gutter) 65px; }
.home-redesign .faq-grid { grid-template-columns:.85fr 1.2fr;gap:13%; }
.home-redesign .faq-grid h2 { font-size:clamp(43px,4.3vw,64px); }
.home-redesign .faq-grid>div>p { font-size:13px;max-width:255px; }
.home-redesign .faq-list summary { font-size:14px;padding:24px 0; }
.home-redesign .faq-answer { font-size:13px; }
.home-next-steps { background:var(--paper);padding:40px var(--gutter) 90px;color:var(--ink); }
.home-next-heading { display:flex;align-items:end;justify-content:space-between;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:47px; }
.home-next-heading .home-kicker { width:100%;margin-bottom:-10px; }
.home-next-heading h2 { font:400 clamp(40px,4.1vw,62px)/1.08 var(--serif); }
.home-next-heading>a { font-size:12px;padding-block:12px;border-bottom:1px solid #a8b19b; }
.home-next-heading>a>span { margin-left:30px; }
.home-next-steps ol { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:40px 0 0; }
.home-next-steps li { border-top:1px solid #bdc6b0;padding:25px 0 0; }
.home-next-steps li>span { font-size:9px;letter-spacing:.08em;color:#879075; }
.home-next-steps h3 { font:400 31px/1.08 var(--serif);margin:22px 0 15px; }
.home-next-steps li p { font-size:13px;line-height:1.85;color:#6d7865;max-width:310px;min-height:75px; }
.home-next-steps li a { font-size:11px;display:flex;justify-content:space-between;gap:20px;max-width:310px;min-height:44px;align-items:center;margin-top:12px; }
.home-next-steps li a:hover { color:#859267; }

.home-redesign .contact { min-height:730px;height:auto;padding:60px var(--gutter) 24px; }
.home-redesign .contact-main { min-height:340px;padding-bottom:65px;align-items:center; }
.home-redesign .contact-main h2 { font-size:clamp(59px,6.5vw,98px);line-height:.99; }
.home-redesign .contact-copy { padding:28px 30px;background:#172f25d9;border:1px solid #d9e4bd3b;backdrop-filter:blur(10px);max-width:375px; }
.home-redesign .contact-copy>p { font-size:13px;line-height:1.85; }
.home-redesign .contact-copy>.button { font-size:12px;gap:22px; }
.home-redesign .footer { padding:28px 0; }
.home-redesign .home-guide-footer-nav { gap:10px 28px;font-size:11px;padding-top:19px; }
.home-redesign .legal-note { max-width:1050px;font-size:10px; }

@media(min-width:1700px) {
  .home-redesign .valley-stage { height:690px; }
}
@media(max-width:1100px) {
  .home-redesign .header .desktop-nav { gap:20px;font-size:11px; }
  .home-redesign .valley-toolbar { gap:0; }
  .home-redesign .valley-options { width:100%;padding-block:10px;border-top:1px solid #d0d5c5;justify-content:flex-end; }
  .home-redesign .atlas-preview { gap:20px; }
  .home-redesign .atlas .atlas-card h3 { font-size:27px; }
}
@media(max-width:800px) {
  .home-redesign .header,.home-redesign .header.scrolled { top:0;left:0;right:0;padding:14px 22px;border:0; }
  .home-redesign .header .desktop-nav { display:none; }
  .home-redesign .header .header-cta { margin-left:auto;font-size:11px;padding:11px 14px; }
  .home-redesign .header .brand>span { font-size:29px; }
  .home-redesign .header .brand>svg { width:26px; }
  .home-redesign .header { gap:15px; }
  .home-redesign .landscape-experience.is-immersive { height:120svh; }
  .has-sky-passage .home-redesign .landscape-experience.is-immersive { height:180svh; }
  .home-redesign .scene-poem { font-size:clamp(42px,7.5vw,61px); }
  .home-redesign .scene-introduction { bottom:18%;left:var(--gutter);right:var(--gutter); }
  .home-redesign .scene-introduction .eyebrow { font-size:8px;letter-spacing:.06em; }
  .home-redesign .hero-actions { gap:20px;margin-top:24px; }
  .home-redesign .hero-actions a { font-size:11px;gap:15px;min-height:48px; }
  .home-redesign .hero-primary-action { padding-inline:16px; }
  .home-redesign .hero-footer { display:none; }
  .home-redesign .scene-tools { left:var(--gutter);right:var(--gutter);bottom:25px;justify-content:space-between; }
  .home-introduction { padding-bottom:62px; }
  .home-redesign .valley-experience { padding:55px var(--gutter) 25px; }
  .home-redesign .valley-heading { display:block;padding-bottom:27px; }
  .home-redesign .valley-heading h2 { font-size:47px; }
  .home-redesign .valley-heading p { margin-top:20px;max-width:500px; }
  .home-redesign .valley-stage { height:510px;min-height:400px; }
  .home-redesign .valley-welcome { left:25px; }
  .home-redesign .valley-welcome h3 { font-size:49px; }
  .home-redesign .valley-toolbar,.home-redesign .valley-caption { padding-inline:18px; }
  .home-redesign .valley-views { gap:15px; }
  .home-redesign .valley-topline { left:18px;right:18px; }
  .home-redesign .valley-options { justify-content:space-between;gap:12px; }
  .home-redesign .valley-options button { min-height:44px;font-size:10px; }
  .home-redesign .valley-quality select { font-size:10px; }
  .home-redesign .valley-shell.valley-expanded .valley-stage { min-height:200px; }
  .home-redesign .place-route .land-estate { padding:60px var(--gutter) 48px; }
  .home-redesign .land-estate .land-section-heading { grid-template-columns:1fr;gap:22px; }
  .home-redesign .land-estate .land-section-heading h2 { font-size:48px; }
  .home-redesign .land-estate .land-toolbar { padding-inline:15px; }
  .home-redesign .land-materials { padding:24px;margin-top:22px; }
  .home-redesign .land-estate[data-land-mode=plan] .land-workspace { display:block; }
  .home-redesign .land-estate[data-land-mode=plan] .land-stage { height:460px;min-height:0; }
  .home-redesign .land-estate[data-land-mode=plan] .land-choice { position:relative;inset:auto;width:auto;height:auto;overflow:visible;padding:24px;border-left:0;border-top:1px solid #cfd5c3; }
  .home-redesign .land-estate[data-land-mode=plan] .parcel-viewport { inset:0; }
  .home-redesign .land-estate[data-land-mode=plan] .real-tour-bar { min-height:65px;padding-block:12px; }
  .home-redesign .land-estate[data-land-mode=plan] .land-draft-summary { margin-top:6px; }
  .home-redesign .season-section { padding-block:55px 30px; }
  .home-redesign .home-guide { padding-block:40px 55px; }
  .home-redesign .home-guide-cards { grid-template-columns:1fr;gap:28px; }
  .home-redesign .home-guide-card { display:grid;grid-template-columns:1fr 1fr;gap:23px;align-items:center; }
  .home-guide-image { aspect-ratio:1.15; }
  .home-redesign .home-guide-card h3 { font-size:29px; }
  .home-redesign .home-guide-heading h2 { font-size:44px; }
  .home-redesign .atlas { padding-top:56px; }
  .home-redesign .atlas-intro { grid-template-columns:1fr;gap:22px; }
  .home-redesign .atlas-intro h2 { font-size:48px; }
  .home-redesign .atlas-preview { grid-template-columns:1fr 1fr;gap:22px; }
  .home-redesign .atlas-preview>.atlas-card:first-child { grid-column:1/-1; }
  .home-redesign .atlas-preview>.atlas-card:first-child>picture { aspect-ratio:1.6; }
  .home-redesign .atlas-preview>.atlas-card:not(:first-child) { margin-top:0; }
  .home-redesign .atlas-preview>.atlas-card:not(:first-child)>picture { aspect-ratio:1; }
  .home-redesign .development-story { padding-block:15px 55px;gap:24px; }
  .home-redesign .faq-section { padding-block:56px 35px; }
  .home-redesign .faq-grid { grid-template-columns:1fr;gap:30px; }
  .home-redesign .faq-grid>div>p { max-width:none; }
  .home-next-steps { padding-block:25px 55px; }
  .home-next-heading { gap:22px;padding-top:35px; }
  .home-next-steps ol { grid-template-columns:1fr;margin-top:30px;gap:24px; }
  .home-next-steps li { padding-top:22px; }
  .home-next-steps h3 { font-size:31px;margin-block:12px; }
  .home-next-steps li p { max-width:550px;min-height:0; }
  .home-next-steps li a { max-width:none;margin-top:5px; }
  .home-redesign .contact { min-height:0;padding-top:45px; }
  .home-redesign .contact-main { display:block;min-height:0;padding-bottom:42px; }
  .home-redesign .contact-main h2 { font-size:60px; }
  .home-redesign .contact-copy { margin-top:35px;max-width:440px;padding:23px; }
  .home-redesign .contact .section-label { margin-bottom:30px; }
}
@media(max-width:480px) {
  .home-redesign .header .header-cta { display:none; }.home-redesign .menu-toggle { margin-left:auto; }
  .home-redesign .scene-introduction { bottom:20%; }
  .home-redesign .scene-poem { font-size:42px; }
  .home-redesign .scene-poem em { display:inline-block;max-width:330px; }
  .home-redesign .hero-bottom-copy { font-size:12px; }
  .home-redesign .hero-actions { align-items:flex-start;gap:10px;flex-wrap:wrap; }
  .home-redesign .hero-actions a { font-size:10px;gap:12px; }
  .home-redesign .hero-secondary-action { padding-inline:3px; }
  .home-kicker { font-size:8px;letter-spacing:.09em; }.home-kicker>span { margin-right:13px; }
  .home-redesign .valley-experience { padding-inline:16px; }.home-redesign .valley-heading { padding-inline:6px; }
  .home-redesign .valley-heading h2 { font-size:43px; }.home-redesign .valley-heading p { font-size:12px; }
  .home-redesign .valley-topline { left:13px;right:13px;gap:10px; }.home-redesign .valley-tag { padding:8px;font-size:7px; }
  .home-redesign .valley-fullscreen { font-size:9px; }.home-redesign .valley-status { left:13px;font-size:8px; }
  .home-redesign .valley-welcome { left:22px;bottom:70px; }.home-redesign .valley-welcome h3 { font-size:44px; }
  .home-redesign .valley-stage { height:480px; }.home-redesign .valley-views small { display:none; }
  .home-redesign .valley-toolbar { padding-inline:13px; }.home-redesign .valley-views button { font-size:11px; }
  .home-redesign .valley-options { gap:10px; }.home-redesign .valley-options button,.home-redesign .valley-quality select { font-size:9px; }
  .home-redesign .land-estate .land-section-heading h2 { font-size:43px; }
  .home-redesign .land-materials { padding:21px; }.home-redesign .land-materials h3 { font-size:30px; }
  .home-redesign .home-guide-card { gap:18px;grid-template-columns:1.05fr 1fr; }.home-redesign .home-guide-card h3 { font-size:25px; }
  .home-guide-image { aspect-ratio:.95; }.home-guide-image>span { width:28px;height:28px;right:9px;bottom:9px;font-size:16px; }
  .home-redesign .atlas-preview { gap:17px; }.home-redesign .atlas .atlas-card h3 { font-size:clamp(20px,6vw,25px); }
  .home-redesign .atlas .atlas-card p { font-size:11px; }.home-redesign .atlas-more>summary { font-size:12px; }
  .home-redesign .atlas-more>summary>span { gap:12px;font-size:10px; }
  .home-redesign .contact-main h2 { font-size:54px; }.home-redesign .contact-copy { padding:20px; }
}
@media(max-height:650px) {
  .home-redesign .scene-introduction { bottom:18%; }.home-redesign .scene-poem { font-size:39px; }
  .home-redesign .scene-introduction .eyebrow { margin-bottom:12px; }.home-redesign .hero-bottom-copy { display:none; }
  .home-redesign .hero-actions { margin-top:17px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-guide-image>img,.home-redesign .season-frame { transition:none;transform:none; }
}
html[data-motion=off] .home-guide-image>img,html[data-motion=off] .home-redesign .season-frame { transition:none;transform:none; }
/* Phones: the guide's three ways out as a row of tall pictures to swipe, each titled over its own shade. */
@media(max-width:700px) {
  .home-redesign .home-guide-cards { display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76%;gap:12px;margin:0 calc(var(--gutter)*-1);padding:2px var(--gutter) 8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain;scrollbar-width:none; }
  .home-redesign .home-guide-cards::-webkit-scrollbar { display:none; }
  .home-redesign .home-guide-card { position:relative;display:block;gap:0;scroll-snap-align:start;overflow:hidden; }
  .home-redesign .home-guide-image { aspect-ratio:4/5; }
  .home-redesign .home-guide-image:after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0f1c15e6 0,#0f1c1599 28%,#0f1c1500 55%);pointer-events:none; }
  .home-redesign .home-guide-image>span { top:12px;right:12px;bottom:auto;width:34px;height:34px;font-size:17px;z-index:1; }
  .home-redesign .home-guide-card-copy { position:absolute;left:0;right:0;bottom:0;padding:18px 18px 20px;color:#fbf8ee; }
  .home-redesign .home-guide-category { color:#e3dfcaa6;letter-spacing:.12em;text-transform:uppercase;font-size:9px; }
  .home-redesign .home-guide-card h3 { margin-top:8px;font-size:28px;color:#fbf8ee; }
  .home-redesign .home-guide-card:hover h3 { color:#fbf8ee; }
}
