/* Layout: a magazine spread. Full-bleed photo openers, one 68ch reading column, and wide "spreads" for areas, map and numbers. Single light theme on purpose: this is Nestlewood's website. */
:root{
  --orange: #f78d2d;      /* Nestlewood orange */
  --orange-ink: #c9620c;  /* orange dark enough for text on cream/white */
  --bark: #4a3724;        /* logo brown */
  --bark-deep: #2e2216;
  --cream: #fdf5e4;
  --paper: #fffdf8;
  --ink: #2b2118;
  --muted: #74685b;
  --line: #e8dcc6;
  --display: "Bebas Neue", "Oswald", Impact, "Arial Narrow", sans-serif;
  --serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --ui: "Barlow", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --gutter: clamp(16px, 4vw, 48px);
}.nwg *, .nwg{ box-sizing: border-box; }@media (prefers-reduced-motion: reduce){.nwg *, .nwg, .nwg *::before, .nwg *::after{ animation: none !important; transition: none !important; } }.nwg{ margin: 0; background: var(--paper); color: var(--ink); font: 400 18px/1.65 var(--serif); }.nwg img{ max-width: 100%; display: block; }.nwg a{ color: var(--orange-ink); }.nwg button{ font: inherit; }.nwg :focus-visible{ outline: 3px solid var(--orange); outline-offset: 2px; }.nwg .wrap{ padding-inline: var(--gutter); }.nwg .col{ max-width: 68ch; margin-inline: auto; }.nwg .wide{ max-width: 1180px; margin-inline: auto; }.nwg h1, .nwg h2, .nwg h3{ text-wrap: balance; }.nwg .eyebrow{ font: 600 13px/1.2 var(--ui); letter-spacing: .16em; text-transform: uppercase; color: var(--orange-ink); margin: 0 0 10px; }/* Mock controls (not part of the real page) */
/* Site chrome (approximation of nestlewoodrealty.com) */
@media (max-width: 860px){ }/* Hero */
.nwg .hero{ position: relative; color: #fff; min-height: clamp(520px, 78vh, 760px); display: grid; align-items: end; background: var(--bark-deep); overflow: hidden; }.nwg .hero img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }.nwg .hero::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(46,34,22,.15) 0%, rgba(46,34,22,.25) 45%, rgba(46,34,22,.88) 100%); }.nwg .hero-in{ position: relative; z-index: 1; padding: 0 var(--gutter) clamp(32px, 6vw, 72px); max-width: 1180px; margin-inline: auto; width: 100%; }.nwg .hero .eyebrow{ color: #ffd2a8; }.nwg .hero h1{ font: 400 clamp(64px, 13vw, 168px)/.84 var(--display); margin: 0 0 18px; letter-spacing: .005em; }.nwg .hero h1 span{ color: var(--orange); display: block; }.nwg .hero .dek{ font: 400 clamp(19px, 2.2vw, 24px)/1.45 var(--serif); max-width: 34ch; margin: 0 0 22px; color: #fbf3e6; }.nwg .byline{ font: 500 14px var(--ui); color: #eadcc6; display: flex; flex-wrap: wrap; gap: 6px 18px; }.nwg .credit{ position: absolute; right: 12px; bottom: 8px; z-index: 1; font: 400 11px var(--ui); color: rgba(255,255,255,.7); }.nwg .ribbon{ background: var(--orange); color: #fff; }.nwg .ribbon .wide{ display: grid; grid-template-columns: repeat(4, 1fr); }.nwg .ribbon div{ padding: 22px 18px; border-left: 1px solid rgba(255,255,255,.35); }.nwg .ribbon div:first-child{ border-left: 0; }.nwg .ribbon b{ display: block; font: 400 clamp(40px, 5vw, 58px)/.9 var(--display); }.nwg .ribbon span{ font: 500 14px/1.35 var(--ui); display: block; margin-top: 6px; }@media (max-width: 720px){.nwg .ribbon .wide{ grid-template-columns: 1fr 1fr; }.nwg .ribbon div:nth-child(3){ border-left: 0; }.nwg .ribbon div{ border-top: 1px solid rgba(255,255,255,.35); } }/* Contents strip */
.nwg .toc{ border-bottom: 1px solid var(--line); background: #fff; }.nwg .toc ol{ list-style: none; margin: 0 auto; padding: 14px var(--gutter); display: flex; gap: 8px 22px; flex-wrap: wrap; justify-content: center; max-width: 1180px; font: 600 14px var(--ui); counter-reset: t; }.nwg .toc li{ counter-increment: t; }.nwg .toc a{ color: var(--bark); text-decoration: none; }.nwg .toc a::before{ content: counter(t, decimal-leading-zero) " "; color: var(--orange-ink); }.nwg .toc a:hover{ color: var(--orange-ink); }/* Sections */
.nwg section{ padding-block: clamp(56px, 8vw, 104px); }.nwg .sec-head{ display: grid; gap: 6px; margin-bottom: 28px; }.nwg .sec-head h2{ font: 400 clamp(46px, 7vw, 84px)/.9 var(--display); color: var(--bark); margin: 0; }.nwg .lede{ font-size: 21px; line-height: 1.55; }.nwg .lede::first-letter{ font: 400 4.1em/.8 var(--display); float: left; color: var(--orange); margin: .06em .08em 0 0; }.nwg .pull{ font: italic 400 clamp(24px, 3vw, 32px)/1.35 var(--serif); color: var(--bark); border-left: 6px solid var(--orange); padding: 4px 0 4px 22px; margin: 36px 0; }.nwg .pull cite{ display: block; font: 600 13px var(--ui); font-style: normal; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-top: 10px; }.nwg .todo{ font: 500 14px/1.45 var(--ui); background: #fff6d9; border: 2px dashed #d9a400; color: #5c4600; padding: 10px 14px; border-radius: 4px; }/* Area explorer */
.nwg .explorer{ background: var(--cream); }.nwg .filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 22px; }.nwg .chip{ font: 600 14px var(--ui); border: 1.5px solid var(--bark); background: transparent; color: var(--bark); border-radius: 999px; padding: 7px 16px; cursor: pointer; }.nwg .chip[aria-pressed="true"]{ background: var(--bark); color: #fff; }.nwg .explore-grid{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 400px); gap: 28px; align-items: start; }@media (max-width: 960px){.nwg .explore-grid{ grid-template-columns: 1fr; } }.nwg .cards{ display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }.nwg .card{ position: relative; border: 0; padding: 0; text-align: left; background: #fff; cursor: pointer; overflow: hidden; display: flex; flex-direction: column; color: var(--ink); box-shadow: 0 1px 0 var(--line); transition: transform .18s ease, box-shadow .18s ease; }.nwg .card:hover{ transform: translateY(-3px); box-shadow: 0 14px 30px rgba(74,55,36,.16); }.nwg .card[aria-pressed="true"]{ outline: 3px solid var(--orange); outline-offset: -3px; }.nwg .card .ph{ aspect-ratio: 4 / 3; overflow: hidden; background: var(--line); }.nwg .card .ph img{ width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }.nwg .card:hover .ph img{ transform: scale(1.05); }.nwg .card .tag{ position: absolute; top: 12px; left: 12px; font: 700 11px var(--ui); letter-spacing: .12em; text-transform: uppercase; background: rgba(255,253,248,.94); color: var(--bark); padding: 5px 9px; }.nwg .card .bd{ padding: 14px 16px 16px; display: grid; gap: 4px; }.nwg .card h3{ font: 400 30px/.95 var(--display); color: var(--bark); margin: 0; letter-spacing: .01em; }.nwg .card .meta{ font: 600 14px var(--ui); color: var(--orange-ink); }.nwg .card[hidden]{ display: none; }.nwg .detail{ position: sticky; top: 64px; background: #fff; display: grid; }.nwg .detail .ph{ aspect-ratio: 16 / 10; overflow: hidden; }.nwg .detail .ph img{ width: 100%; height: 100%; object-fit: cover; }.nwg .detail .bd{ padding: 20px 22px 24px; display: grid; gap: 12px; }.nwg .detail h3{ font: 400 42px/.9 var(--display); color: var(--bark); margin: 0; }.nwg .detail p{ margin: 0; font-size: 17px; line-height: 1.55; }.nwg .facts{ display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); }.nwg .facts div{ background: var(--paper); padding: 10px 12px; }.nwg .facts dt{ font: 600 11px var(--ui); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }.nwg .facts dd{ margin: 2px 0 0; font: 400 26px/1 var(--display); color: var(--bark); }.nwg .btn{ display: inline-flex; align-items: center; justify-content: center; gap: 8px; font: 400 21px/1 var(--display); letter-spacing: .06em; background: var(--orange); color: #fff; border: 2px solid var(--orange); padding: 14px 22px; text-decoration: none; cursor: pointer; }.nwg .btn:hover{ background: var(--orange-ink); border-color: var(--orange-ink); }.nwg .btn.ghost{ background: transparent; color: var(--bark); border-color: var(--bark); }.nwg .btn.ghost:hover{ background: var(--bark); color: #fff; }.nwg .btn.light{ background: #fff; color: var(--bark); border-color: #fff; }/* Map */
.nwg .mapbox{ background: #fff; padding: 18px; margin-top: 28px; }.nwg .mapbox svg{ width: 100%; height: auto; display: block; }.nwg .mapbox .cap{ font: 500 13px var(--ui); color: var(--muted); margin-top: 8px; }.nwg .pin{ cursor: pointer; }.nwg .pin circle.dot{ fill: var(--orange); stroke: #fff; stroke-width: 2.5; transition: r .15s ease; }.nwg .pin text{ font: 600 13px var(--ui); fill: var(--bark); paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; }.nwg .pin.on circle.dot{ fill: var(--bark); r: 11; }.nwg .pin.dim{ opacity: .3; }/* Full-bleed photo break */
.nwg .break{ position: relative; min-height: clamp(320px, 52vw, 560px); display: grid; align-items: end; color: #fff; overflow: hidden; background: var(--bark-deep); }.nwg .break img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }.nwg .break::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(46,34,22,.82)); }.nwg .break .in{ position: relative; z-index: 1; padding: 0 var(--gutter) 36px; max-width: 1180px; margin-inline: auto; width: 100%; }.nwg .break blockquote{ font: 400 clamp(38px, 6vw, 72px)/.92 var(--display); margin: 0; max-width: 16ch; }.nwg .break p{ font: 500 15px var(--ui); margin: 10px 0 0; color: #f3e5cf; }/* Charts */
.nwg .chart{ display: grid; gap: 10px; margin: 24px 0 8px; }.nwg .bar{ display: grid; grid-template-columns: minmax(110px, 190px) minmax(0, 1fr); gap: 14px; align-items: center; font: 500 15px var(--ui); }.nwg .bar .track{ position: relative; height: 34px; background: var(--cream); }.nwg .bar .fill{ position: absolute; inset: 0 auto 0 0; background: var(--orange); }.nwg .bar .fill.alt{ background: var(--bark); }.nwg .bar .rush{ position: absolute; inset: 0 auto 0 0; background: repeating-linear-gradient(135deg, rgba(247,141,45,.35) 0 6px, rgba(247,141,45,.12) 6px 12px); }.nwg .bar .val{ position: absolute; top: 50%; transform: translateY(-50%); font: 400 22px var(--display); color: var(--bark); padding-left: 8px; white-space: nowrap; }.nwg .bar .lab{ color: var(--ink); }.nwg .legend{ font: 500 13px var(--ui); color: var(--muted); display: flex; flex-wrap: wrap; gap: 14px; }.nwg .legend i{ display: inline-block; width: 14px; height: 14px; vertical-align: -2px; margin-right: 6px; }.nwg .split{ display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 64px); align-items: start; }@media (max-width: 900px){.nwg .split{ grid-template-columns: 1fr; } }/* Tax calculator */
.nwg .calc{ background: var(--bark); color: #fff; padding: clamp(22px, 3vw, 34px); display: grid; gap: 18px; }.nwg .calc h3{ font: 400 40px/.9 var(--display); margin: 0; color: #fff; }.nwg .calc label{ font: 600 13px var(--ui); letter-spacing: .1em; text-transform: uppercase; color: #ead9bf; display: block; margin-bottom: 6px; }.nwg .calc select, .nwg .calc input[type=range]{ width: 100%; }.nwg .calc select{ font: 500 17px var(--ui); padding: 10px 12px; background: var(--paper); color: var(--ink); border: 0; }.nwg .calc input[type=range]{ accent-color: var(--orange); }.nwg .calc .out{ border-top: 1px solid rgba(255,255,255,.25); padding-top: 14px; display: grid; gap: 2px; }.nwg .calc .out b{ font: 400 64px/.9 var(--display); color: var(--orange); }.nwg .calc .out span{ font: 500 14px var(--ui); color: #ead9bf; }.nwg .calc .price{ font: 400 30px var(--display); color: #fff; }/* Mosaic */
.nwg .mosaic{ display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 220px 220px; gap: 10px; margin-top: 28px; }.nwg .mosaic figure{ margin: 0; position: relative; overflow: hidden; background: var(--line); }.nwg .mosaic figure:first-child{ grid-row: span 2; }.nwg .mosaic img{ width: 100%; height: 100%; object-fit: cover; }.nwg .mosaic figcaption{ position: absolute; left: 0; bottom: 0; right: 0; padding: 22px 12px 10px; font: 600 14px var(--ui); color: #fff; background: linear-gradient(transparent, rgba(46,34,22,.85)); }@media (max-width: 720px){.nwg .mosaic{ grid-template-columns: 1fr 1fr; grid-template-rows: 240px 160px 160px; }.nwg .mosaic figure:first-child{ grid-column: span 2; grid-row: auto; } }/* Timeline */
.nwg .timeline{ list-style: none; padding: 0; margin: 28px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }@media (max-width: 760px){.nwg .timeline{ grid-template-columns: 1fr; } }.nwg .timeline li{ background: #fff; border-top: 6px solid var(--orange); padding: 18px; }.nwg .timeline b{ font: 400 34px/.9 var(--display); color: var(--bark); display: block; margin-bottom: 8px; }.nwg .timeline p{ margin: 0 0 8px; font-size: 16px; line-height: 1.5; }/* Checklist */
.nwg .check{ list-style: none; padding: 0; margin: 20px 0 0; display: grid; gap: 0; }.nwg .check li{ border-bottom: 1px solid var(--line); }.nwg .check label{ display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 14px; padding: 14px 0; cursor: pointer; font-size: 17px; line-height: 1.5; }.nwg .check input{ appearance: none; width: 28px; height: 28px; border: 2px solid var(--bark); margin: 0; display: grid; place-content: center; cursor: pointer; background: #fff; }.nwg .check input::after{ content: "✓"; font: 700 18px var(--ui); color: #fff; transform: scale(0); transition: transform .12s ease; }.nwg .check input:checked{ background: var(--orange); border-color: var(--orange); }.nwg .check input:checked::after{ transform: scale(1); }.nwg .check input:checked + span{ color: var(--muted); text-decoration: line-through; text-decoration-color: var(--orange); }.nwg .progress{ font: 600 14px var(--ui); color: var(--orange-ink); }/* Listings */
.nwg .listings{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin-top: 24px; }@media (max-width: 760px){.nwg .listings{ grid-template-columns: 1fr; } }.nwg .listing{ background: #fff; text-decoration: none; color: var(--ink); display: grid; }.nwg .listing .ph{ aspect-ratio: 3/2; overflow: hidden; }.nwg .listing img{ width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }.nwg .listing:hover img{ transform: scale(1.04); }.nwg .listing .bd{ padding: 12px 14px 16px; font: 500 15px var(--ui); }.nwg .listing .bd b{ font: 400 24px var(--display); color: var(--bark); display: block; }/* Gate */
.nwg .gate{ position: relative; }.nwg .gate .blur{ filter: blur(6px); opacity: .55; pointer-events: none; user-select: none; max-height: 560px; overflow: hidden; }.nwg .gate .panel{ position: absolute; inset: 40px var(--gutter) auto; margin-inline: auto; max-width: 880px; background: #fff; box-shadow: 0 30px 60px rgba(46,34,22,.25); display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }@media (max-width: 760px){.nwg .gate .panel{ grid-template-columns: 1fr; position: relative; inset: auto; margin: -420px var(--gutter) 0; } }.nwg .gate .panel .l{ background: var(--bark); color: #fff; padding: 28px; display: grid; gap: 12px; align-content: start; }.nwg .gate .panel .l h3{ font: 400 46px/.9 var(--display); margin: 0; }.nwg .gate .panel .l ul{ margin: 0; padding-left: 18px; font: 500 15px/1.55 var(--ui); color: #f0e2cb; }.nwg .gate .panel form{ padding: 28px; display: grid; gap: 12px; font-family: var(--ui); }.nwg .gate label{ font: 600 13px var(--ui); color: var(--bark); display: grid; gap: 4px; }.nwg .gate input{ font: 400 16px var(--ui); padding: 11px 12px; border: 1.5px solid var(--line); background: var(--paper); color: var(--ink); }.nwg .gate .two{ display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }.nwg .gate .fine{ font: 400 12px var(--ui); color: var(--muted); margin: 0; }.nwg .vs{ font: 500 13px var(--ui); color: #f0e2cb; border-top: 1px solid rgba(255,255,255,.2); padding-top: 10px; }/* Crossover + CTA */
.nwg .cross{ position: relative; color: #fff; overflow: hidden; background: var(--bark-deep); }.nwg .cross img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }.nwg .cross::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(46,34,22,.9) 0%, rgba(46,34,22,.55) 55%, rgba(46,34,22,.1)); }.nwg .cross .in{ position: relative; z-index: 1; max-width: 1180px; margin-inline: auto; padding: clamp(56px, 8vw, 110px) var(--gutter); }.nwg .cross h2{ font: 400 clamp(48px, 7vw, 92px)/.88 var(--display); margin: 0 0 14px; max-width: 12ch; }.nwg .cross p{ max-width: 40ch; color: #f3e5cf; }.nwg .cta{ background: var(--orange); color: #fff; text-align: center; }.nwg .cta h2{ font: 400 clamp(46px, 7vw, 80px)/.9 var(--display); margin: 0 0 10px; }.nwg .cta p{ max-width: 46ch; margin: 0 auto 22px; font-size: 19px; }.nwg .cta .row{ display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }.nwg .cta .phone{ font: 400 34px var(--display); letter-spacing: .04em; user-select: all; }.nwg .sources{ font: 400 13px/1.6 var(--ui); color: var(--muted); padding-block: 36px 56px; }.nwg .sources b{ color: var(--bark); }/* Gentle load-in for the hero only */
@keyframes rise{from{ transform: translateY(14px); opacity: .001; }to{ transform: none; opacity: 1; } }.nwg .hero-in > *{ animation: rise .7s ease both; }.nwg .hero-in > *:nth-child(2){ animation-delay: .08s; }.nwg .hero-in > *:nth-child(3){ animation-delay: .16s; }.nwg .hero-in > *:nth-child(4){ animation-delay: .24s; }/* ===== Area explorer v2: outlined map + linked cards + drawer ===== */
:root{ --water: #cfe2e7; --water-line: #a9c9d2; --land: #fbf6ec; --city: #f3e9d6; }.nwg .explore{ display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 24px; align-items: start; }@media (max-width: 980px){.nwg .explore{ grid-template-columns: 1fr; } }.nwg .explore-map{ position: sticky; top: 52px; }@media (max-width: 980px){.nwg .explore-map{ position: relative; top: 0; } }.nwg .mapbox{ background: #fff; padding: 14px; margin: 0; position: relative; }.nwg .mapbox svg{ width: 100%; height: auto; display: block; background: var(--land); }.nwg .m-county{ fill: none; stroke: #d9c9ad; stroke-width: 1.2; stroke-dasharray: 4 3; }.nwg .m-city{ fill: var(--city); stroke: #e2d3b8; stroke-width: .8; }.nwg .m-water{ fill: var(--water); stroke: var(--water-line); stroke-width: .6; }.nwg .m-road{ fill: none; stroke: #ffffff; stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; }.nwg .m-road + .m-road{ }.nwg .m-area{ fill: rgba(247, 141, 45, .28); stroke: #d9711a; stroke-width: 1.4; cursor: pointer; transition: fill .15s ease, opacity .15s ease; }.nwg .m-area.cool{ opacity: .45; }.nwg .m-area.hot, .nwg .m-area.sel{ fill: rgba(247, 141, 45, .62); stroke: var(--bark); stroke-width: 2; }.nwg .m-area:focus-visible{ outline: none; stroke: var(--bark); stroke-width: 3; }.nwg .m-badge{ pointer-events: none; }.nwg .m-badge circle{ fill: var(--bark); stroke: #fff; stroke-width: 2; }.nwg .m-badge text{ font: 400 15px var(--display); fill: #fff; text-anchor: middle; }.nwg .m-badge.hot circle, .nwg .m-badge.sel circle{ fill: var(--orange); }.nwg .m-wlabel{ font: italic 600 11px var(--ui); fill: #4f7f8c; text-anchor: middle; pointer-events: none; paint-order: stroke; stroke: var(--water); stroke-width: 3px; }.nwg .m-point rect{ fill: var(--bark); }.nwg .m-point text{ font: 400 15px var(--display); fill: var(--bark); letter-spacing: .04em; paint-order: stroke; stroke: #fff; stroke-width: 3px; pointer-events: none; }.nwg .map-tip{ position: absolute; left: 24px; top: 24px; background: var(--bark); color: #fff; padding: 8px 12px; font: 600 14px var(--ui); pointer-events: none; max-width: 70%; }.nwg .map-tip b{ display: block; font: 400 22px/1 var(--display); letter-spacing: .02em; }.nwg .map-legend{ display: flex; flex-wrap: wrap; gap: 6px 16px; font: 500 12px var(--ui); color: var(--muted); margin-top: 10px; }.nwg .map-legend i{ display: inline-block; width: 14px; height: 10px; vertical-align: -1px; margin-right: 5px; border: 1px solid; }.nwg .explore-cards .cards{ grid-template-columns: repeat(2, minmax(0, 1fr)); }@media (max-width: 560px){.nwg .explore-cards .cards{ grid-template-columns: 1fr; } }.nwg .card .num{ position: absolute; top: 10px; right: 10px; width: 30px; height: 30px; border-radius: 50%; background: var(--bark); color: #fff; font: 400 18px/30px var(--display); text-align: center; border: 2px solid #fff; }.nwg .card.hot{ outline: 3px solid var(--orange); outline-offset: -3px; transform: translateY(-3px); box-shadow: 0 14px 30px rgba(74,55,36,.16); }.nwg .card.hot .num{ background: var(--orange); }/* Drawer */
.nwg .scrim{ position: fixed; inset: 0; background: rgba(46,34,22,.45); z-index: 80; }.nwg .drawer{ position: fixed; top: 0; right: 0; bottom: 0; width: min(460px, 100%); background: var(--paper); z-index: 90; overflow-y: auto; box-shadow: -20px 0 50px rgba(46,34,22,.3); animation: slidein .28s ease; padding-bottom: env(safe-area-inset-bottom, 0px); }@keyframes slidein{from{ transform: translateX(40px); opacity: .001; }to{ transform: none; opacity: 1; } }.nwg .drawer .ph{ aspect-ratio: 16/11; overflow: hidden; position: relative; }.nwg .drawer .ph img{ width: 100%; height: 100%; object-fit: cover; }.nwg .drawer .close{ position: absolute; top: calc(12px + env(safe-area-inset-top, 0px)); right: 12px; z-index: 2; width: 40px; height: 40px; border-radius: 50%; border: 0; background: rgba(255,253,248,.95); color: var(--bark); font: 600 22px/1 var(--ui); cursor: pointer; }.nwg .drawer .bd{ padding: 20px 22px 28px; display: grid; gap: 12px; }.nwg .drawer h3{ font: 400 46px/.9 var(--display); color: var(--bark); margin: 0; }.nwg .drawer p{ margin: 0; font-size: 17px; line-height: 1.55; }.nwg .drawer .btn{ width: 100%; }.nwg .mapbox svg{ max-height: calc(100vh - 140px); transition: none; }.nwg .mapbox path{ vector-effect: non-scaling-stroke; }.nwg .m-wlabel, .nwg .m-point text{ font-size: calc(11px * var(--z, 1)); }.nwg .m-point text{ font-size: calc(15px * var(--z, 1)); }.nwg .m-point rect{ transform-box: fill-box; transform-origin: center; transform: scale(var(--z, 1)); }


/* ===== WordPress plugin additions ===== */
.nwg { overflow-x: clip; }
.nwg .is-cream { background: var(--cream); }
.nwg .explore-intro { max-width: 62ch; margin: 0 0 22px; }
.nwg .lede p { font-size: 21px; line-height: 1.55; margin: 0 0 18px; }
.nwg .lede > p:first-child::first-letter { font: 400 4.1em/.8 var(--display); float: left; color: var(--orange); margin: .06em .08em 0 0; }
.nwg .lede::first-letter { float: none; font: inherit; color: inherit; margin: 0; }
.nwg .hero .eyebrow { color: #ffd2a8; }
.nwg .sec-head h2, .nwg .cta h2, .nwg .cross h2 { letter-spacing: .01em; }
.nwg .lg-area, .nwg .lg-city, .nwg .lg-water { display: inline-block; width: 14px; height: 10px; vertical-align: -1px; margin-right: 5px; border: 1px solid; }
.nwg .lg-area { background: rgba(247,141,45,.28); border-color: #d9711a; }
.nwg .lg-city { background: #f3e9d6; border-color: #e2d3b8; }
.nwg .lg-water { background: #cfe2e7; border-color: #a9c9d2; }
.nwg .lg-free, .nwg .lg-rush { display: inline-block; width: 14px; height: 14px; vertical-align: -2px; margin-right: 6px; }
.nwg .lg-free { background: var(--bark); }
.nwg .lg-rush { background: repeating-linear-gradient(135deg, rgba(247,141,45,.6) 0 4px, rgba(247,141,45,.2) 4px 8px); }
.nwg .legend span { margin-right: 14px; }
.nwg .toc { position: sticky; top: 0; z-index: 20; }
.admin-bar .nwg .toc { top: 32px; }
.nwg .toc-pdf button { background: none; border: 1.5px solid var(--bark); color: var(--bark); font: 600 13px var(--ui); padding: 3px 10px; cursor: pointer; }
.nwg .toc-pdf button:hover { background: var(--bark); color: #fff; }
.nwg .explore-map { top: 64px; }
.nwg .phone { display: inline-block; font: 400 34px var(--display); letter-spacing: .04em; color: #fff; text-decoration: none; }
.nwg .cross .eyebrow { color: #ffc58f; }
.nwg .credit { position: absolute; right: 12px; bottom: 8px; z-index: 1; font: 400 11px var(--ui); color: rgba(255,255,255,.75); }

/* bands + compare (Hickory) */
.nwg .bands { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 24px; }
@media (max-width: 760px) { .nwg .bands { grid-template-columns: 1fr; } }
.nwg .band { background: #fff; border-top: 6px solid var(--orange); padding: 18px; }
.nwg .band b { display: block; font: 400 38px/.9 var(--display); color: var(--bark); margin-bottom: 8px; }
.nwg .band p { margin: 0; font-size: 16px; line-height: 1.5; }
.nwg .tablewrap { overflow-x: auto; }
.nwg .vs-table { width: 100%; border-collapse: collapse; font: 500 16px var(--ui); margin-top: 18px; }
.nwg .vs-table th { text-align: left; font: 400 22px var(--display); letter-spacing: .04em; color: #fff; background: var(--bark); padding: 10px 12px; }
.nwg .vs-table td { padding: 11px 12px; border-bottom: 1px solid var(--line); }
.nwg .vs-table td:nth-child(2) { color: var(--orange-ink); font-weight: 700; }
.nwg .vs-table tr:nth-child(even) td { background: #fffaf0; }

/* Sign-up panel with Gravity Forms */
.nwg .gate .panel .l h2 { font: 400 46px/.9 var(--display); margin: 0; color: #fff; }
.nwg .gate .panel .l .eyebrow { color: #ffc58f; }
.nwg .gate .panel .r { padding: 28px; display: grid; gap: 8px; align-content: start; font-family: var(--ui); }
.nwg .gate .gform_wrapper { margin: 0 !important; }
.nwg .gate .gform_wrapper .gfield_label, .nwg .gate .gform_wrapper .gform-field-label { font: 600 13px var(--ui) !important; color: var(--bark) !important; }
.nwg .gate .gform_wrapper input[type=text], .nwg .gate .gform_wrapper input[type=email], .nwg .gate .gform_wrapper input[type=tel] { font: 400 16px var(--ui) !important; padding: 11px 12px !important; border: 1.5px solid var(--line) !important; background: var(--paper) !important; color: var(--ink) !important; border-radius: 0 !important; }
.nwg .gate .gform_wrapper .gform_button { width: 100%; background: var(--orange) !important; color: #fff !important; font: 400 22px/1 var(--display) !important; letter-spacing: .06em; border: 0 !important; border-radius: 0 !important; padding: 15px 22px !important; cursor: pointer; }
.nwg .gate .gform_wrapper .gform_button:hover { background: var(--orange-ink) !important; }
.nwg .gate .gfield_required { color: var(--orange-ink) !important; }
.nwg .gate .blur .card { pointer-events: none; }
@media (max-width: 760px) { .nwg .gate .panel { margin-top: -380px; } }

/* Save as PDF */
@media print {
	header.fl-page-header, .fl-page-bar, .fl-page-nav-wrap, footer, .fl-page-footer-wrap, .fl-builder-content[data-type="header"], .fl-builder-content[data-type="footer"],
	.nwg .toc, .nwg .filters, .nwg .explore-map, .nwg .calc, .nwg .cta .row, .nwg .drawer, .nwg .scrim, .nwg .credit { display: none !important; }
	.nwg .hero { min-height: 0; color: var(--bark); background: none; }
	.nwg .hero img, .nwg .hero::after, .nwg .break, .nwg .cross img, .nwg .cross::after { display: none !important; }
	.nwg .hero h1, .nwg .hero .dek, .nwg .hero .byline, .nwg .cross { color: var(--bark) !important; }
	.nwg .explore { display: block; }
	.nwg .explore-cards .cards { grid-template-columns: 1fr 1fr; }
	.nwg section { padding-block: 24px; break-inside: avoid-page; }
	.nwg .card, .nwg .bar, .nwg .timeline li, .nwg .band { break-inside: avoid; }
	.nwg * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* Theme headings are dark by default; force light text on photo and orange blocks */
.nwg .hero h1, .nwg .hero .dek, .nwg .cross h2, .nwg .cross p, .nwg .cta h2, .nwg .cta p, .nwg .break blockquote, .nwg .ribbon b, .nwg .ribbon span, .nwg .calc h3, .nwg .drawer h3 { color: inherit; }
.nwg .hero h1 { color: #fff; }
.nwg .hero h1 span { color: var(--orange); }
.nwg .cross h2, .nwg .cta h2, .nwg .calc h3, .nwg .break blockquote { color: #fff; }
.nwg .drawer h3 { color: var(--bark); }
.nwg .card h3 { color: var(--bark); }
.nwg .listing .bd b, .nwg .timeline b, .nwg .band b { color: var(--bark); }
@media (max-width: 760px) {
	.nwg .toc { position: relative; top: 0; }
	.admin-bar .nwg .toc { top: 0; }
	.nwg .toc ol { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
	.nwg .explore-map { top: 0; }
}
