/* Woods on Glen Ellen · Stacey Davidson Realty's black, crimson and ivory edition. */
:root {
  --forest:#161516; --deep:#121113; --ink:#201c1d; --gold:#a91837;
  --ivory:#f6f3ee; --muted:#625b5d; --line:#251b202a;
  --red:#ab1734; --ruby:#d93652; --header:82px; --rail:52px;
}
html { scroll-padding-top:calc(var(--header) + var(--rail) + 10px); }
body { background:var(--ivory); }
.site-header { min-height:var(--header); padding-block:14px; background:#121113; border-bottom-color:#453e40; }
.brand { color:#fff9f5; font-size:24px; letter-spacing:-.055em; position:relative; padding-left:17px; }
.brand::before { content:""; position:absolute; top:3px; left:0; bottom:3px; width:4px; background:var(--ruby); }
.brand em { display:inline; font-size:inherit; }
.brand small { color:#e6c4c8; font-size:8px; margin-top:8px; }
#site-nav a { font-weight:700; font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
#site-nav a[aria-current],#site-nav a:hover { color:#ffa6b5; }
#site-nav .nav-tour { background:var(--red); color:white; border:0; padding:14px 18px; }
.button,.lot-tour { color:white; background:var(--red); border-color:var(--red); }
.button:hover,.lot-tour:hover { background:#86102a; color:white; }
.button-outline { color:var(--ink); border-color:#65595d; background:transparent; }
.button-outline:hover { color:#fff; background:#242023; border-color:#242023; }
.eyebrow { color:#93152e; }
a:focus-visible,button:focus-visible,select:focus-visible { outline:3px solid #ea4a65; outline-offset:3px; }
.overline { display:flex; align-items:center; gap:14px; text-transform:uppercase; font:700 10px/1.6 Arial,sans-serif; letter-spacing:.22em; }
.overline i { display:inline-block; width:42px; height:2px; background:#f04b66; }
.opening-film { position:relative; isolation:isolate; display:grid; align-content:end; min-height:clamp(590px,calc(94svh - var(--header)),950px); padding:88px var(--gutter) 96px; color:white; background:#171518; overflow:hidden; }
.film-frames,.film-frames img,.film-shade { position:absolute; inset:0; width:100%; height:100%; }
.film-frames { z-index:-3; }
.film-frames img { object-fit:cover; object-position:50% 54%; opacity:0; transition:opacity 1.8s ease; }
.film-frames img:first-child,.film-frames img.is-active { opacity:1; }
.film-frames.is-playing img:first-child:not(.is-active) { opacity:0; }
.film-shade { z-index:-1; background:linear-gradient(90deg,#101013e8 0%,#121014a8 28%,#130f1420 74%),linear-gradient(0deg,#120c12d6,transparent 60%); }
.film-editorial { max-width:1000px; }
.film-editorial .overline { color:#fff1ef; }
.film-editorial h1 { margin:24px 0 14px; font:400 clamp(72px,8.7vw,150px)/.82 Georgia,serif; letter-spacing:-.066em; }
.film-editorial h1 em { display:inline-block; margin-left:.55em; }
.film-deck { font:italic clamp(24px,2.35vw,39px)/1.25 Georgia,serif; margin-top:26px; color:#fff1ec; }
.film-links { display:flex; align-items:center; gap:32px; flex-wrap:wrap; margin-top:26px; }
.tour-pass { display:inline-flex; align-items:center; gap:14px; background:#a31732; border:1px solid #eb8a9a96; color:white; padding:12px 20px 12px 12px; text-align:left; }
.tour-pass:hover { background:#bf1e40; }
.tour-pass b { font:italic 22px Georgia,serif; width:46px; height:46px; display:grid; place-items:center; border:1px solid #ffffff80; border-radius:50%; }
.tour-pass span { font:700 14px/1.45 Arial,sans-serif; }
.tour-pass small { display:block; font:600 8px/1.7 Arial,sans-serif; letter-spacing:.13em; color:#fff3ef; }
.tour-pass i { font-style:normal; margin-left:10px; }
.underlink { display:inline-flex; align-items:center; min-height:44px; color:inherit; font-size:13px; font-weight:bold; text-decoration:underline; text-underline-offset:6px; }
.film-footer { position:absolute; bottom:20px; left:var(--gutter); right:var(--gutter); display:flex; justify-content:space-between; align-items:center; font-size:9px; font-weight:bold; letter-spacing:.17em; }
.film-toggle { padding:9px 14px; min-height:38px; background:#121113ad; border:1px solid #ffffff65; color:white; font-size:11px; }
.chapter-rail { position:sticky; top:var(--header); z-index:19; height:var(--rail); display:flex; align-items:center; gap:clamp(16px,3vw,48px); padding:0 var(--gutter); border-bottom:1px solid #30292a33; background:#f6f3eefb; box-shadow:0 4px 20px #11070c09; }
.chapter-rail strong,.mobile-chapters { white-space:nowrap; font:700 9px/1.3 Arial,sans-serif; letter-spacing:.17em; color:#811129; }
.chapter-links { display:flex; gap:clamp(14px,2vw,32px); overflow:auto; }
.chapter-links a { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; font-size:12px; min-height:44px; }
.chapter-links a:hover,.chapter-links a[aria-current] { color:var(--red); text-decoration:underline; text-underline-offset:5px; }
.chapter-links small { font-size:8px; color:#8b555d; }
.mobile-chapters { display:none; }
.hero { color:var(--ink); background:#ebe6df; min-height:460px; grid-template-columns:.95fr 1fr; align-items:center; padding:clamp(42px,5vw,80px) var(--gutter); gap:6vw; }
.hero-copy { padding:0; }
.hero .eyebrow,.hero .lede { color:#78142a; }
.hero .lede { color:#51494b; max-width:520px; margin:24px 0; }
.hero h1 { font-size:clamp(55px,6.3vw,105px); }
.hero .button-outline { color:var(--ink); border-color:#645b5c; }
.hero .button-outline:hover { color:white; background:#252023; }
.hero-photo { padding:0; background:none; overflow:visible; }
.hero-photo img { box-shadow:12px 12px 0 #a8173333; }
.hero-photo figcaption { padding:15px 0 0; color:#675e60; }
.photo-index,.scroll-cue { display:none; }
.breadcrumb { background:var(--ivory); color:#62575a; border-color:var(--line); }
.hero-copy .eyebrow::before,.split-copy .eyebrow::before,.section-heading .eyebrow::before { content:""; display:inline-block; width:32px; height:2px; margin:0 10px 3px 0; background:var(--red); }
.intro-band { grid-template-columns:.52fr 1.2fr .9fr; background:#faf7f2; padding-block:clamp(64px,6vw,100px); }
.atlas-section { display:grid; grid-template-columns:.76fr 1.18fr; align-items:center; gap:6vw; padding:clamp(52px,7vw,110px) var(--gutter); background:#191619; color:#f8f3f0; }
.atlas-copy h2,.aerial-journal h2 { font-size:clamp(42px,5.4vw,82px); margin:22px 0; }
.atlas-copy>p:not(.overline) { font-size:15px; line-height:1.8; color:#d4c9ca; max-width:390px; }
.plat-sheet { padding:clamp(12px,2vw,28px); color:#271f21; background-color:#f5f0e9; background-image:linear-gradient(#5243430b 1px,transparent 1px),linear-gradient(90deg,#5243430b 1px,transparent 1px); background-size:20px 20px; border-top:4px solid var(--red); }
.plate-label { display:flex; justify-content:space-between; gap:12px; font:700 9px/1.5 Arial,sans-serif; letter-spacing:.15em; }
.plate-label b { color:#95122d; }
.parcel-atlas { display:block; width:100%; height:clamp(300px,34vw,530px); }
.parcel-atlas polygon { stroke:#74676a; stroke-width:1.2; }
.parcel-atlas a polygon { fill:#fdfbf7; }
.parcel-atlas text { text-anchor:middle; dominant-baseline:central; font:700 12px Arial,sans-serif; fill:#89142d; pointer-events:none; }
.parcel-atlas a:hover polygon,.parcel-atlas a:focus polygon { fill:var(--red); }
.parcel-atlas a:hover text,.parcel-atlas a:focus text { fill:white; }
.plat-sheet figcaption { font-size:10px; padding-top:12px; border-top:1px solid #31263033; }
.map-legend { display:flex; gap:20px; margin:20px 0; font-size:11px; }
.map-legend span:before { content:""; display:inline-block; width:12px; height:12px; margin-right:7px; background:#fdfbf7; vertical-align:middle; }
.map-legend span+span:before { background:repeating-linear-gradient(135deg,#8c8184 0 2px,#524a4d 2px 4px); }
.tour-feature { background:#2c090f; border-bottom:5px solid #a41834; }
.tour-feature .eyebrow,.stacey-section .eyebrow { color:#ffb9c4; }
.tour-feature p:not(.eyebrow) { color:#f5e8e8; }
.homesite-card { border:0; border-bottom:2px solid #2b2326; background:#fffdfb; }
.lot-photo img { aspect-ratio:16/9; object-fit:contain; }
.lot-photo span { background:var(--red); color:white; padding:9px 12px; font-size:9px; }
.lot-photo span b { margin-right:7px; font:italic bold 15px Georgia,serif; }
.lot-copy { padding:22px 20px; }
.lot-meta,.text-button { color:#8a1830; }
.lot-tour { padding:13px 16px; }
.lot-links { justify-content:space-between; }
.lot-copy h3 { font-size:clamp(25px,2vw,36px); }
.aerial-journal { background:#181619; color:#faf6f3; padding:clamp(60px,7vw,110px) var(--gutter); }
.aerial-journal header { margin-bottom:36px; }
.journal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; }
.journal-grid a { position:relative; display:flex; align-items:end; min-height:clamp(350px,36vw,560px); isolation:isolate; overflow:hidden; padding:24px; }
.journal-grid img,.journal-grid a:after { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform .7s ease; }
.journal-grid a:after { content:""; z-index:-1; background:linear-gradient(0deg,#120e12f5,transparent 82%); }
.journal-grid a:hover img { transform:scale(1.04); }
.journal-grid h3 { margin:12px 0; font-size:clamp(27px,2.8vw,47px); }
.journal-grid small,.journal-grid span { font:600 10px/1.6 Arial,sans-serif; letter-spacing:.08em; }
.stacey-section { border-top:5px solid var(--red); }
.contact-links a:hover,.site-footer a:hover { color:#ffacbb; }
.block-filter button[aria-pressed=true] { background:var(--red); }
#gallery-photo-entry { position:relative; display:block; }
#gallery-photo-entry:after { content:"360°   FLY TO THIS PARCEL ↗"; position:absolute; bottom:10px; left:10px; background:#9e1732; color:white; padding:8px 12px; font:700 10px/1.4 Arial,sans-serif; }
@media(max-width:1000px){.chapter-rail{gap:16px}.chapter-links{gap:14px}.hero{gap:30px}.intro-band{grid-template-columns:1fr 1fr}.intro-band .eyebrow{grid-column:1/-1}.film-editorial h1{font-size:clamp(72px,11vw,110px)}}
@media(max-width:760px){
  :root{--header:74px;--rail:48px}.site-header{min-height:var(--header)}.brand{font-size:22px}.brand em{font-size:22px}.brand small{font-size:7px}
  .chapter-rail{justify-content:space-between}.chapter-links{display:none}.mobile-chapters{display:flex;align-items:center;gap:8px}.mobile-chapters select{max-width:55vw;min-height:40px;background:transparent;color:#271d20;border:0;font-size:13px}
  .opening-film{min-height:clamp(490px,76svh,760px);padding:70px var(--gutter) 82px}.film-shade{background:linear-gradient(0deg,#100b10e8 5%,#15101672 60%,#14121510)}.film-editorial h1{font-size:clamp(67px,15vw,102px)}.film-deck{font-size:24px}.film-links{gap:14px;margin-top:19px}.tour-pass{padding:9px 12px;gap:8px}.tour-pass b{width:37px;height:37px;font-size:18px}.tour-pass small{font-size:7px}.underlink{font-size:12px}.film-footer{bottom:16px;font-size:8px}
  .hero{padding-block:36px}.hero .actions{width:auto}.atlas-section{grid-template-columns:1fr;gap:28px}.atlas-copy h2 br{display:none}.atlas-copy h2{margin:15px 0}.atlas-copy>p:not(.overline){max-width:600px}.map-legend{margin:12px 0 3px}.plat-sheet{padding:16px}.parcel-atlas{height:350px}.journal-grid{grid-template-columns:1fr}.journal-grid a{min-height:235px}.journal-grid h3{font-size:34px}
}
@media(max-width:600px){
  .hero{display:grid;grid-template-columns:1fr}.hero-photo{padding:0}.hero h1{font-size:clamp(45px,11vw,62px)}.hero-copy{padding:0}.hero-photo figcaption{font-size:8px}
  .intro-band{grid-template-columns:1fr}.intro-band .eyebrow{grid-column:auto}.film-links .underlink{font-size:11px}.lot-photo span{font-size:9px}.atlas-copy .overline{font-size:9px}
}
@media(max-height:530px) and (orientation:landscape){.opening-film{min-height:450px}.film-editorial h1{font-size:64px}}
@media(prefers-reduced-motion:reduce){.film-frames img{transition:none}.journal-grid a:hover img{transform:none}}


html{scroll-padding-top:calc(var(--mast-measured,var(--header)) + var(--rail) + 12px)}
.chapter-rail{top:var(--mast-measured,var(--header))}

.page-lake-texoma-lifestyle .hero,.page-living-in-pottsboro .hero {
  position:relative;isolation:isolate;display:flex;align-items:end;min-height:clamp(460px,68svh,730px);color:white;background:#191619;
}
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero-copy { max-width:760px; }
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero-photo { position:absolute;inset:0;z-index:-1;padding:0;background:#211d20; }
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero-photo img { height:100%;object-fit:cover;box-shadow:none; }
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero-photo:after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,#161219df,transparent 85%),linear-gradient(0deg,#141016af,transparent 70%);}
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero-photo figcaption {display:none;}
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero :is(.lede,.eyebrow,.button-outline) {color:white}
:is(.page-lake-texoma-lifestyle,.page-living-in-pottsboro) .hero .button-outline {border-color:#fffb;}
