@import url(fonts/fonts.css);

:root{
  --stone:#EFE9DC; --stone-2:#E5DDCB; --paper:#F8F4EA; --ink:#1F1C17; --soft:#5F584B;
  --oak:#1B241A; --orange:#E2542A; --cream:#F8F4EA;
  --serif:'Source Serif 4',Georgia,serif;
  --sans:'Archivo',Helvetica,Arial,sans-serif;
  --gut:clamp(18px,4.4vw,72px);
  --ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:92px}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--stone);color:var(--ink);font:400 clamp(18px,1.3vw,20px)/1.55 var(--serif);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure,blockquote{margin:0;padding:0}
ul,ol{list-style:none}
button{font-family:inherit;color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:10px 14px;z-index:199}
.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.pad{padding:clamp(76px,10vw,164px) var(--gut)}
.pad-x{padding-left:var(--gut);padding-right:var(--gut)}

/* TYPE: his logo's wide grotesque, with an italic serif accent */
.dt{font-family:var(--sans);font-weight:800;font-stretch:125%;text-transform:uppercase;letter-spacing:-.022em;line-height:.98;font-size:clamp(38px,7vw,124px)}
.dt em{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-.018em;font-size:1.12em;line-height:.9}
.dt.mid{font-size:clamp(32px,4.9vw,84px)}
.dt.sm{font-size:clamp(26px,2.9vw,46px)}
.dt.sm2{font-size:clamp(30px,4.1vw,70px)}
.ln{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}
.ln>span{display:block}

/* PILLS */
.btn{display:inline-flex;align-items:center;gap:12px;border:0;border-radius:999px;background:var(--orange);color:var(--ink);text-decoration:none;cursor:pointer;font:700 15px/1 var(--sans);font-stretch:112%;padding:18px 26px;transition:background .28s,color .28s,transform .28s var(--ease)}
.btn::after{content:"\2192";font-size:17px;transition:transform .28s var(--ease)}
.btn:hover{background:var(--ink);color:var(--cream)}
.btn:hover::after{transform:translateX(5px)}
.btn.ghost{background:rgba(248,244,234,.14);color:var(--cream);box-shadow:inset 0 0 0 1.5px rgba(248,244,234,.75);backdrop-filter:blur(2px)}
.btn.ghost:hover{background:var(--cream);color:var(--ink)}
.btn.dark{background:var(--ink);color:var(--cream)}
.btn.dark:hover{background:var(--cream);color:var(--ink)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.walk-l{display:inline-flex;gap:9px;align-items:center;font:700 14.5px/1 var(--sans);font-stretch:112%;text-decoration:none;padding-bottom:5px;border-bottom:2px solid var(--orange)}
.walk-l::after{content:"\2192"}

.concept{position:absolute;z-index:40;left:22px;top:78px;margin:0;background:rgba(20,19,15,.62);color:var(--cream);border-radius:999px;padding:7px 12px;font:500 11.5px/1.2 var(--sans);max-width:calc(100% - 44px)}

/* CURTAIN */
.curtain{position:fixed;inset:0;z-index:150;background:var(--stone);display:none;align-items:center;justify-content:center}
.js .curtain{display:flex}
.curtain svg{position:absolute;width:132px;height:132px;transform:rotate(-90deg)}
.curtain circle{fill:none;stroke:var(--orange);stroke-width:2;stroke-dasharray:352;stroke-dashoffset:352}
.curtain img{width:62px;height:auto}

/* NAV: floating pill */
.nav{position:fixed;left:14px;right:14px;top:14px;margin:0 auto;z-index:60;max-width:1240px;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--cream);border-radius:999px;padding:9px 11px 9px 22px;box-shadow:0 14px 34px -18px rgba(0,0,0,.7)}
.nav .logo img{width:132px;height:auto}
.nl{display:flex;gap:clamp(14px,2vw,28px);align-items:center}
.nl a{text-decoration:none}
.nl .opt a{font:500 13.5px/1 var(--sans);font-stretch:110%}
.nl .opt a:hover{color:var(--orange)}
.nl .tel{font-weight:700!important}
.menubtn{border:0;border-radius:999px;background:var(--cream);color:var(--ink);padding:11px 18px;font:700 13.5px/1 var(--sans);cursor:pointer}
.menubtn:hover{background:var(--orange)}
.savedbtn{display:inline-flex;gap:6px;align-items:center;border:0;background:none;color:var(--cream);font:700 13.5px/1 var(--sans);cursor:pointer;padding:4px}
.savedbtn[hidden]{display:none}
.savedbtn i{color:var(--orange);font:400 17px/1 Georgia,serif}

/* FULLSCREEN MENU */
.menu{position:fixed;inset:0;z-index:55;background:var(--oak);color:var(--cream);clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);visibility:hidden;overflow:auto}
.menu-in{display:grid;grid-template-columns:7fr 5fr;gap:40px;min-height:100%;padding:110px var(--gut) 44px;align-items:end}
.mbig a{display:block;text-decoration:none;font:800 clamp(36px,6.1vw,92px)/1.08 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em;transition:color .2s,transform .3s var(--ease)}
.mbig a:hover{color:var(--orange);transform:translateX(12px)}
.lab{font:700 12px/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;opacity:.65;margin-bottom:14px}
.mplaces>a{display:flex;gap:14px;align-items:center;padding:9px 0;border-top:1px solid rgba(248,244,234,.2);text-decoration:none}
.mplaces>a:hover{color:var(--orange)}
.mplaces>a img{width:74px;height:50px;object-fit:cover;border-radius:10px}
.mplaces>a span{font:600 17px/1.2 var(--serif)}
.mplaces small{display:block;font:400 13px/1.3 var(--sans);opacity:.75;margin-top:3px}
.mcall{margin-top:18px;font:700 15px/1 var(--sans)}

/* HERO */
.hero{padding:8px 8px 0}
.hero-frame{position:relative;height:calc(94svh - 8px);min-height:600px;border-radius:26px;overflow:hidden;background:#14130f;color:var(--cream)}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.hero-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,13,10,.34) 0,rgba(14,13,10,0) 20%,rgba(14,13,10,0) 34%,rgba(14,13,10,.62) 62%,rgba(14,13,10,.92) 100%);pointer-events:none}
.hero-copy{position:absolute;z-index:2;left:clamp(18px,3.4vw,54px);right:clamp(18px,3.4vw,54px);bottom:clamp(22px,4.4vh,46px)}
.hero h1{font-size:clamp(34px,5.8vw,112px)}
.hero-low{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-top:clamp(16px,2.6vh,28px)}
.hero-sub{max-width:37em;font-size:clamp(17px,1.28vw,20px);line-height:1.42}
.pause{position:absolute;z-index:3;right:18px;top:84px;border:0;border-radius:999px;background:rgba(20,19,15,.62);backdrop-filter:blur(4px);color:var(--cream);font:500 12px/1 var(--sans);padding:9px 13px;cursor:pointer}

/* MANIFESTO */
.mani{padding-bottom:clamp(56px,7vw,110px)}
.manifesto{font:400 clamp(30px,4.5vw,76px)/1.14 var(--serif);letter-spacing:-.018em;max-width:23em}
.manifesto span{display:inline}

/* THE LINE */
.walk{padding:0 8px}
.walk-stage{position:relative;height:90svh;min-height:560px;overflow:hidden;background:var(--oak);color:var(--cream);border-radius:26px}
.walk-stage>img,.walk-stage svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.walk-stage .baked{opacity:0}
.walk-stage path{fill:none;stroke:var(--orange);stroke-width:3.2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.walk-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,17,11,.1) 0,rgba(14,17,11,0) 42%,rgba(14,17,11,.9) 100%)}
.line-copy{position:absolute;z-index:3;left:clamp(18px,3.4vw,54px);right:clamp(18px,3.4vw,54px);bottom:clamp(24px,5vh,50px)}
.line-copy .btn{margin-top:22px}

/* LAND */
.land-head{display:flex;justify-content:space-between;align-items:flex-end;gap:34px;flex-wrap:wrap}
.land-sub{max-width:17em;font-size:clamp(19px,1.6vw,25px);line-height:1.3}
.finder{display:grid;grid-template-columns:1.55fr 1.4fr .7fr .7fr .7fr auto;gap:0;align-items:center;background:var(--paper);border-radius:999px;padding:9px 9px 9px 30px;margin:clamp(30px,4vw,54px) 0 18px;box-shadow:0 20px 44px -30px rgba(31,28,23,.8)}
.finder label{display:block;font:700 11.5px/1.2 var(--sans);letter-spacing:.015em;padding:3px 16px 3px 0;border-right:1px solid rgba(31,28,23,.16);margin-right:16px}
.finder label:nth-last-of-type(1){border:0}
.finder select{display:block;width:100%;margin-top:3px;padding:2px 0;border:0;background:transparent;font:400 17px/1.2 var(--serif);color:var(--ink);cursor:pointer;outline-offset:6px}
.matchnote{font:600 16px/1.3 var(--sans);color:#a73d1b;margin:0 0 10px 30px}
.showcase{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,64px);margin-top:clamp(28px,3vw,48px)}
.stage{position:sticky;top:88px;height:calc(100svh - 108px);min-height:460px}
.stage-in{position:relative;width:100%;height:100%;border-radius:24px;overflow:hidden;background:var(--stone-2);cursor:pointer}
.pane{position:absolute;inset:0;display:block;clip-path:polygon(100% 100%,100% 100%,100% 100%,100% 100%)}
.pane.on{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.pane img{width:100%;height:100%;object-fit:cover}
.stamp{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--paper);box-shadow:0 8px 22px -8px rgba(0,0,0,.6);flex:none}
.stamp img{width:20px;height:auto}
.stamp.big{position:absolute;z-index:5;right:18px;bottom:18px;width:auto;height:auto;border-radius:999px;padding:8px 16px 8px 10px;gap:9px;pointer-events:none}
.stamp.big img{width:24px}
.stamp.big small{font:700 12px/1 var(--sans)}
.rows{padding-bottom:6vh}
.row{min-height:clamp(330px,58svh,560px);display:flex;flex-direction:column;justify-content:center;border-top:1px solid rgba(31,28,23,.26);padding:30px 0;opacity:.34;transition:opacity .45s}
.row.on,.row:hover,.row:focus-within{opacity:1}
.row[hidden]{display:none}
.rimg{display:none}
.rtop{display:flex;justify-content:space-between;align-items:center;gap:14px}
.acres{font:800 clamp(38px,5vw,84px)/1 var(--sans);font-stretch:125%;letter-spacing:-.025em;text-transform:uppercase;margin:0}
.heart{flex:none;width:48px;height:48px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font:400 25px/1 Georgia,serif;cursor:pointer;box-shadow:0 8px 22px -12px rgba(0,0,0,.6);transition:transform .25s var(--ease),color .2s}
.heart:hover{transform:scale(1.12);color:var(--orange)}
.heart[aria-pressed="true"]{color:var(--orange)}
.heart.big{width:auto;height:auto;border-radius:999px;display:inline-flex;align-items:center;gap:9px;padding:15px 22px;font:700 15px/1 var(--sans);background:rgba(248,244,234,.16);color:var(--cream);box-shadow:inset 0 0 0 1.5px rgba(248,244,234,.75)}
.heart.big i{font:400 20px/1 Georgia,serif}
.heart.big:hover{transform:none;background:var(--cream);color:var(--ink)}
.heart.big[aria-pressed="true"] i{color:var(--orange)}
.rname{font:600 clamp(20px,1.7vw,26px)/1.25 var(--serif);margin-top:15px}
.rname a{text-decoration:none}
.rname a:hover{color:#a73d1b}
.rname span{font-weight:400;color:var(--soft)}
.rline{color:var(--soft);max-width:30em;margin-top:6px;font-size:clamp(17px,1.25vw,19px);line-height:1.42}
.rfoot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}
.price{font:700 clamp(17px,1.4vw,21px)/1 var(--sans);font-stretch:112%}
.cursor{position:fixed;left:0;top:0;z-index:70;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:var(--orange);color:var(--ink);display:flex;align-items:center;justify-content:center;font:700 13px/1 var(--sans);pointer-events:none;transform:scale(0);opacity:0}

/* SELLING */
.sell{position:relative;background:#0f120c;color:var(--cream);overflow:hidden;margin:0 8px;border-radius:26px}
.sell video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.66}
.sell::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,15,10,.92) 0,rgba(13,15,10,.74) 48%,rgba(13,15,10,.3) 100%)}
.sell-in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(30px,5vw,80px);align-items:center}
.sell blockquote{font:400 italic clamp(21px,1.9vw,29px)/1.32 var(--serif);margin-top:clamp(26px,3vw,46px);max-width:24em}
.sell cite{display:block;font:700 13px/1.3 var(--sans);font-style:normal;margin-top:13px}
.eval{background:var(--paper);color:var(--ink);padding:clamp(24px,2.6vw,38px);border-radius:26px}
.eval h3{margin:0 0 8px;font:800 clamp(24px,2.3vw,36px)/1.05 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.018em}
.eval p{font-size:17px;line-height:1.4;margin-bottom:12px}
label{display:block}
.eval label,.wf label{font:700 12px/1.2 var(--sans);margin-top:13px}
.eval input,.wf input{display:block;width:100%;margin-top:6px;padding:13px 18px;border:0;border-radius:999px;background:var(--stone);font:400 16.5px/1.2 var(--serif)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.eval .btn{margin-top:18px;width:100%;justify-content:center}
.eval small,.alerts small{display:block;margin-top:9px;font:400 12.5px/1.3 var(--sans);opacity:.75}
.thanks{font:600 15px/1.4 var(--sans);margin:12px 0 0!important;color:#a73d1b}

/* BRAD: parallax collage */
.collage{position:relative;height:clamp(640px,62vw,980px);margin-top:clamp(50px,7vw,110px)}
.collage h2{position:absolute;z-index:3;left:0;right:0;top:44%;text-align:center;font-size:clamp(40px,8vw,146px);mix-blend-mode:normal}
.collage figure{position:absolute;overflow:hidden;border-radius:20px;will-change:transform}
.collage img{width:100%;height:100%;object-fit:cover}
.c1{left:var(--gut);top:0;width:16.5vw;aspect-ratio:3/4}
.c2{right:var(--gut);top:0;width:30vw;aspect-ratio:16/10}
.c3{left:33vw;top:5%;width:19vw;aspect-ratio:1/1}
.c4{left:7vw;bottom:0;width:26vw;aspect-ratio:16/9}
.c5{right:12vw;bottom:-3%;width:17vw;aspect-ratio:4/5}
.c5 img{object-position:50% 20%}
.story{padding-top:clamp(70px,8vw,120px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(26px,5vw,80px)}
.story .lede{font-size:clamp(22px,2.1vw,33px);line-height:1.28}
.road li{display:grid;grid-template-columns:minmax(130px,3fr) 7fr;gap:16px;padding:15px 0;border-top:1px solid rgba(31,28,23,.26)}
.road li:last-child{border-bottom:1px solid rgba(31,28,23,.26)}
.road strong{font:700 15px/1.3 var(--sans);font-stretch:112%}
.road span{font-size:clamp(17px,1.25vw,19px);line-height:1.42}

/* EXTRAS */
.extras{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);padding-top:0;align-items:end}
.ex{display:block;text-decoration:none}
.exi{overflow:hidden;border-radius:22px;margin-bottom:20px}
.exi img{width:100%;object-fit:cover;transition:transform 1s var(--ease)}
.e1 .exi img{aspect-ratio:16/10}.e2 .exi img{aspect-ratio:4/4}
.ex:hover .exi img{transform:scale(1.04)}
.ex p{margin:10px 0 15px;max-width:30em;font-size:clamp(17px,1.25vw,19px);line-height:1.44}

/* MAP */
.terr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-bottom:clamp(24px,3vw,44px)}
.terr-head p{max-width:21em;font-size:clamp(18px,1.4vw,22px);line-height:1.34}
.mapbox{position:relative;margin:0 8px;border-radius:26px;overflow:hidden;height:min(86svh,860px);min-height:560px;background:#dcd8c8}
#map,.minimap{width:100%;height:100%;font-family:var(--sans)}
.mapctl{position:absolute;z-index:500;right:14px;top:14px;display:flex;background:var(--ink);border-radius:999px;padding:4px}
.mapctl button{border:0;background:none;color:var(--cream);border-radius:999px;padding:10px 16px;font:700 13px/1 var(--sans);cursor:pointer}
.mapctl button[aria-pressed="true"]{background:var(--cream);color:var(--ink)}
.maplist{position:absolute;z-index:500;left:14px;bottom:14px;right:14px;display:flex;gap:7px;overflow-x:auto;padding:2px;scrollbar-width:none}
.maplist button{flex:none;border:0;border-radius:999px;background:var(--paper);padding:11px 16px;font:600 13.5px/1 var(--sans);cursor:pointer;box-shadow:0 8px 20px -10px rgba(0,0,0,.6)}
.maplist button:hover,.maplist button[aria-pressed="true"]{background:var(--orange)}
.bpin{position:relative;width:46px;height:56px}
.bpin .c{position:absolute;left:0;top:0;width:46px;height:46px;border-radius:50%;background:var(--paper);box-shadow:0 0 0 3px var(--orange),0 10px 18px rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;transition:transform .2s var(--ease)}
.bpin:hover .c{transform:scale(1.14)}
.bpin .c img{width:23px;height:auto}
.bpin::after{content:"";position:absolute;left:17px;top:47px;width:0;height:0;border:6px solid transparent;border-top:10px solid var(--orange)}
.leaflet-popup-content-wrapper{border-radius:18px;padding:0;overflow:hidden;background:var(--paper)}
.leaflet-popup-content{margin:0;width:240px!important}
.leaflet-container a.leaflet-popup-close-button{color:#fff;top:7px;right:7px;text-shadow:0 1px 4px #000;font-size:20px}
.pop img{width:100%;height:126px;object-fit:cover}
.pop div{padding:12px 15px 15px}
.pop b{display:block;font:800 21px/1.05 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em}
.pop span{display:block;font:500 13.5px/1.3 var(--sans);margin:5px 0 10px;color:var(--soft)}
.pop a.go{display:inline-block;background:var(--orange);color:var(--ink)!important;text-decoration:none;font:700 13px/1 var(--sans);padding:10px 14px;border-radius:999px}

/* ALERTS */
.alerts{padding:clamp(76px,9vw,140px) 8px 8px}
.alerts-in{position:relative;overflow:hidden;background:var(--oak);color:var(--cream);border-radius:26px;padding:clamp(40px,7vw,110px) clamp(20px,5vw,76px)}
.alerts video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.alert-copy{position:relative;z-index:2;max-width:760px}
.alerts-in::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,20,13,.88),rgba(15,20,13,.48) 66%,rgba(15,20,13,.14))}
.alerts .lede{margin:20px 0 22px;font-size:clamp(19px,1.5vw,23px);line-height:1.36;max-width:29em}
.alerts fieldset{border:0;padding:0;margin:0 0 15px;display:flex;flex-wrap:wrap;gap:7px}
.tog input{position:absolute;opacity:0}
.tog span{display:block;border-radius:999px;padding:10px 16px;font:600 14px/1 var(--sans);box-shadow:inset 0 0 0 1.5px rgba(248,244,234,.7);cursor:pointer}
.tog input:checked+span{background:var(--orange);color:var(--ink);box-shadow:none}
.tog input:focus-visible+span{outline:3px solid var(--cream);outline-offset:2px}
.pillin{display:flex;background:var(--paper);border-radius:999px;padding:6px;max-width:520px}
.pillin input{flex:1;min-width:0;border:0;background:none;padding:10px 16px;color:var(--ink);font:400 17px var(--serif)}
.pillin button{border:0;border-radius:999px;background:var(--orange);color:var(--ink);font:700 14px/1 var(--sans);padding:0 20px;cursor:pointer}
.pillin button:hover{background:var(--ink);color:var(--cream)}

/* CLOSE: tour */
.close{position:relative;overflow:hidden;background:#141a12;color:var(--cream);margin:8px;border-radius:26px;padding:clamp(40px,6vw,92px) clamp(20px,3.8vw,60px)}
.close video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7}
.close::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,20,13,.9) 0,rgba(15,20,13,.62) 54%,rgba(15,20,13,.22) 100%)}
.close-in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(26px,5vw,80px);align-items:center}
.close h2{font-size:clamp(36px,5.6vw,96px)}
.close-sub{font:400 clamp(21px,2vw,31px)/1.28 var(--serif);max-width:24em;margin-top:clamp(14px,1.6vw,24px)}
.close-call{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-top:clamp(18px,2vw,30px);font:700 clamp(16px,1.3vw,20px)/1 var(--sans);font-stretch:112%}
.close-call a{text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:5px}
.close-call a:hover{color:var(--orange)}
.tourform{background:var(--paper);color:var(--ink);border-radius:24px;padding:clamp(20px,2.2vw,30px)}
.tourform label{font:700 12px/1.2 var(--sans);margin-bottom:12px}
.tourform input{display:block;width:100%;margin-top:6px;padding:13px 18px;border:0;border-radius:999px;background:var(--stone);font:400 16.5px/1.2 var(--serif)}
.tourform .btn{width:100%;justify-content:center;margin-top:4px}

/* FOOTER */
footer{padding:clamp(40px,4.5vw,66px) var(--gut) 34px;font:400 15px/1.55 var(--sans)}
.foot{display:grid;grid-template-columns:repeat(12,1fr);gap:28px 24px}
.foot .brand{grid-column:1/4}
.foot .brand img{width:136px;height:auto;background:var(--ink);padding:18px;border-radius:20px;box-sizing:content-box}
.foot .who{grid-column:4/9}
.foot .name{display:block;font:800 clamp(22px,2vw,30px)/1.1 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.018em;margin-bottom:4px}
.foot .broker{display:block;font:700 clamp(18px,1.5vw,22px)/1.2 var(--sans);font-stretch:112%;margin:14px 0 4px}
.foot .legal{grid-column:9/13}
.foot .legal a{display:block;font-size:14.5px;margin-bottom:11px}
.psalm{grid-column:1/-1;font:italic 400 18px/1.4 var(--serif);border-top:1px solid rgba(31,28,23,.2);padding-top:22px;margin-top:8px}
.fine{grid-column:1/-1;font-size:12.5px;color:var(--soft)}

/* STICKY SIGN-UP: slim pill */
.stick{position:fixed;z-index:44;left:50%;bottom:16px;display:flex;align-items:center;background:var(--ink);color:var(--cream);border-radius:999px;padding:6px 8px 6px 22px;box-shadow:0 20px 44px -16px rgba(0,0,0,.75);transform:translate(-50%,180%);transition:transform .5s var(--ease);visibility:hidden}
.stick.on{transform:translate(-50%,0);visibility:visible}
.stick[hidden]{display:none}
.stick .m{display:none}
.stick form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.stick form span{font:600 14px/1 var(--sans);white-space:nowrap}
.stick input{width:190px;border:0;border-radius:999px;background:rgba(248,244,234,.13);color:var(--cream);padding:10px 15px;font:400 15px var(--serif)}
.stick input::placeholder{color:rgba(248,244,234,.7)}
.stick form button{border:0;border-radius:999px;background:var(--orange);color:var(--ink);font:700 13px/1 var(--sans);padding:11px 16px;cursor:pointer}
.stick .thanks{color:var(--orange);font-size:13px;margin:0!important}
.stick .x{background:none;border:0;color:var(--cream);font:400 20px/1 var(--sans);padding:6px 9px;margin-left:3px;cursor:pointer}
.bar{display:none;position:fixed;left:10px;right:10px;bottom:10px;z-index:45;background:var(--ink);border-radius:999px;padding:5px;box-shadow:0 16px 36px -14px rgba(0,0,0,.8)}
.bar a{flex:1;text-align:center;color:var(--cream);text-decoration:none;border-radius:999px;padding:14px 6px;font:700 14px/1 var(--sans)}
.bar a:first-child{background:var(--orange);color:var(--ink)}

/* KEEP ME UPDATED */
.keep{position:fixed;z-index:70;right:18px;bottom:18px;width:min(380px,calc(100vw - 20px));background:var(--paper);color:var(--ink);border-radius:24px;padding:20px 22px;box-shadow:0 30px 70px -20px rgba(0,0,0,.72)}
.keep[hidden]{display:none}
.keep .who{display:flex;gap:13px;align-items:center;padding-right:18px}
.keep .who img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 12%;flex:none}
.keep strong{display:block;font:600 21px/1.18 var(--serif)}
.keep p{font-size:16.5px;line-height:1.38;margin:11px 0 12px}
.keep input{display:block;width:100%;padding:12px 17px;margin-bottom:7px;border:0;border-radius:999px;background:var(--stone);font:400 16px var(--serif)}
.keep .acts{display:flex;align-items:center;gap:16px;margin-top:11px}
.keep .btn{padding:14px 18px;font-size:13.5px}
.keep .btn::after{display:none}
.keep .no{background:none;border:0;padding:0;font:500 13.5px/1 var(--sans);text-decoration:underline;cursor:pointer}
.keep .x{position:absolute;right:9px;top:9px;background:none;border:0;font:400 23px/1 var(--sans);padding:5px 8px;cursor:pointer}
.savedlist{position:fixed;z-index:70;right:14px;top:82px;width:min(340px,calc(100vw - 28px));background:var(--paper);border-radius:22px;padding:16px 18px;box-shadow:0 30px 70px -20px rgba(0,0,0,.72)}
.savedlist[hidden]{display:none}
.savedlist p{font:800 16px/1 var(--sans);font-stretch:125%;text-transform:uppercase;margin-bottom:9px}
.savedlist a{display:block;padding:10px 0;border-top:1px solid rgba(31,28,23,.18);text-decoration:none;font:600 17px/1.2 var(--serif)}
.savedlist a:hover{color:#a73d1b}

/* PROPERTY PAGES */
.ph-hero{padding:8px 8px 0}
.ph-frame{position:relative;height:calc(90svh - 8px);min-height:560px;border-radius:26px;overflow:hidden;background:#16170f;color:var(--cream)}
.ph-frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,10,.28),rgba(14,14,10,0) 28%,rgba(14,14,10,.16) 48%,rgba(14,14,10,.88));pointer-events:none}
.ph-copy{position:absolute;z-index:2;left:clamp(18px,3.4vw,54px);right:clamp(18px,3.4vw,54px);bottom:clamp(24px,4.6vh,48px)}
.ph-where{display:flex;align-items:center;gap:11px;font:600 clamp(15px,1.2vw,18px)/1.3 var(--sans);margin-bottom:14px}
.ph-copy h1{font-size:clamp(36px,6.2vw,112px)}
.ph-copy .cta-row{margin-top:clamp(16px,2.2vh,26px)}
.ph-price{position:absolute;z-index:2;right:clamp(18px,3.4vw,54px);bottom:clamp(30px,5vh,54px);font:800 clamp(20px,2.3vw,38px)/1 var(--sans);font-stretch:125%;letter-spacing:-.02em;text-align:right}
.keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 var(--gut)}
.keys div{padding:clamp(24px,3vw,42px) 12px clamp(20px,2.6vw,36px) 0;border-right:1px solid rgba(31,28,23,.2);margin-right:14px}
.keys div:last-child{border:0;margin:0}
.keys b{display:block;font:800 clamp(30px,4.3vw,72px)/1 var(--sans);font-stretch:125%;letter-spacing:-.03em}
.keys span{display:block;margin-top:9px;font:500 14px/1.3 var(--sans)}
.rp-story{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(26px,5vw,80px)}
.pull{font:400 italic clamp(28px,3.5vw,56px)/1.12 var(--serif);letter-spacing:-.015em}
.rp-story .body p+p{margin-top:18px}
.film{position:relative;margin:0 8px;aspect-ratio:21/9;overflow:hidden;background:#111;border-radius:26px}
.film img{position:absolute;width:118%;max-width:none;height:118%;object-fit:cover;left:-9%;top:-9%;animation:drift 26s ease-in-out infinite alternate}
@keyframes drift{from{transform:translate(-3.5%,-2%) scale(1)}to{transform:translate(3.5%,2%) scale(1.07)}}
.film .tag{position:absolute;left:clamp(18px,3.4vw,54px);bottom:18px;z-index:2;color:var(--cream);max-width:40em;font:500 13.5px/1.4 var(--sans);text-shadow:0 1px 8px rgba(0,0,0,.85)}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px;padding-top:clamp(50px,6vw,90px)}
.g{padding:0;border:0;background:none;border-radius:18px;overflow:hidden;cursor:zoom-in}
.g img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.g:hover img{transform:scale(1.04)}
.s7{grid-column:span 7;aspect-ratio:16/10}.s5{grid-column:span 5}
.s5b{grid-column:span 5}.s7b{grid-column:span 7;aspect-ratio:16/10}
.s4{grid-column:span 4;aspect-ratio:1/1}
.s12{grid-column:span 12;aspect-ratio:21/9}
.report-sec{padding-bottom:clamp(50px,6vw,90px)}
.report{width:100%;border-collapse:collapse;margin-top:clamp(20px,2.6vw,38px);border-top:2px solid var(--ink)}
.report th,.report td{text-align:left;vertical-align:top;padding:16px 16px 16px 0;border-bottom:1px solid rgba(31,28,23,.22)}
.report th{width:27%;font:700 13.5px/1.4 var(--sans);padding-top:20px}
.pmap .minimap{height:min(62svh,560px);margin-top:clamp(18px,2.2vw,30px);border-radius:24px;overflow:hidden}
.pmap .note{margin-top:10px;font:400 14px/1.4 var(--sans);color:var(--soft)}
.walkform{padding-bottom:clamp(50px,6vw,90px)}
.wf{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(26px,5vw,80px);align-items:end}
.wf form{background:var(--paper);border-radius:26px;padding:clamp(22px,2.6vw,36px)}
.wf form p{font-size:17px}
.wf .btn{margin-top:16px;width:100%;justify-content:center}
.court{margin-top:26px;font:400 13px/1.5 var(--sans);color:var(--soft)}
.nextp{position:relative;display:block;height:clamp(300px,48vh,520px);margin:0 8px;border-radius:26px;overflow:hidden;color:var(--cream);text-decoration:none;background:#111}
.nextp img{width:100%;height:100%;object-fit:cover;opacity:.74;transition:transform 1.1s var(--ease),opacity .4s}
.nextp:hover img{transform:scale(1.04);opacity:.9}
.np{position:absolute;left:clamp(18px,3.4vw,54px);right:clamp(18px,3.4vw,54px);bottom:clamp(20px,3vw,40px)}
.np small{display:block;font:700 13px/1 var(--sans);margin-bottom:10px}
.np b{display:block;font-size:clamp(34px,6.6vw,118px)}
.np i{display:block;font:500 15px/1.3 var(--sans);margin-top:10px}
.lightbox{position:fixed;inset:0;z-index:120;background:rgba(14,13,10,.93);display:flex;align-items:center;justify-content:center;padding:4vw}
.lightbox[hidden]{display:none}
.lightbox img{max-width:100%;max-height:92vh;border-radius:14px}
.lightbox button{position:absolute;right:18px;top:14px;border:0;background:none;color:#fff;font:400 34px/1 var(--sans);cursor:pointer}

/* BRAD'S VIEW */
.dash{padding:110px var(--gut) 70px}
.dash h1{font:800 clamp(36px,6vw,96px)/1 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.025em;max-width:15ch}
.sample{display:inline-block;background:var(--orange);color:var(--ink);border-radius:999px;padding:9px 15px;margin-bottom:18px;font:700 12px/1.2 var(--sans);letter-spacing:.03em}
.dash .lede{max-width:40em;margin-top:18px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);margin:clamp(30px,4vw,54px) 0;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.tiles div{padding:22px 14px 20px 0;border-right:1px solid rgba(31,28,23,.2);margin-right:14px}
.tiles div:last-child{border:0;margin:0}
.tiles b{display:block;font:800 clamp(34px,4.2vw,66px)/1 var(--sans);font-stretch:125%;letter-spacing:-.03em}
.tiles span{display:block;margin-top:9px;font:500 13.5px/1.3 var(--sans)}
.dash h2{font:800 clamp(24px,2.8vw,42px)/1.05 var(--sans);font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em;margin:clamp(34px,4vw,60px) 0 16px}
.dtable{width:100%;border-collapse:collapse;font:400 15.5px/1.35 var(--sans)}
.dtable th{text-align:left;font:700 12px/1.2 var(--sans);border-bottom:2px solid var(--ink);padding:9px 12px 9px 0;vertical-align:bottom}
.dtable td{border-bottom:1px solid rgba(31,28,23,.22);padding:13px 12px 13px 0;vertical-align:top}
.dtable td:first-child{font:600 18px/1.2 var(--serif)}
.hot{color:#a73d1b;font-weight:700}
.dcols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px)}
.knows{background:var(--oak);color:var(--cream);border-radius:26px;padding:clamp(24px,3vw,44px);margin-top:clamp(40px,5vw,70px)}
.knows h2{margin-top:0}
.knows li{padding:12px 0;border-top:1px solid rgba(248,244,234,.28);font-size:clamp(17px,1.25vw,19px)}

/* REVEAL STATES */
.js [data-rise]{opacity:0;transform:translateY(22px)}
.js [data-lines] .ln>span{transform:translateY(105%)}

@media (max-width:980px){
  html{scroll-padding-top:78px}
  .nl .opt{display:none}
  .nav .logo img{width:112px}
  .bar{display:flex}
  body{padding-bottom:70px}
  .hero-frame{min-height:560px}
  .hero-low{display:block}
  .hero-sub{margin-bottom:16px}
  .btn{padding:16px 20px;font-size:14.5px}
  .pause{top:76px;right:12px}
  .finder{grid-template-columns:1fr 1fr;border-radius:26px;padding:18px 20px;gap:14px 16px}
  .finder label{border:0;margin:0;padding:0}
  .finder .btn{grid-column:1/-1;justify-content:center}
  .matchnote{margin-left:4px}
  .showcase{display:block}
  .stage{display:none}
  .rows{padding:0}
  .row{min-height:0;opacity:1;padding:0 0 38px;border:0}
  .rimg{display:block;position:relative;border-radius:22px;overflow:hidden;margin-bottom:16px}
  .rimg>img{width:100%;aspect-ratio:4/3.1;object-fit:cover}
  .rimg .stamp{position:absolute;left:12px;bottom:12px}
  .sell::after{background:rgba(13,15,10,.78)}
  .close::after{background:rgba(15,20,13,.76)}
  .close-in{grid-template-columns:minmax(0,1fr)}
  .sell-in,.story,.extras,.wf,.rp-story,.dcols{grid-template-columns:minmax(0,1fr)}
  .menu-in{grid-template-columns:1fr;align-items:start}
  .collage{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 var(--gut);margin-top:60px}
  .collage h2{position:static;grid-column:1/-1;text-align:left;margin-bottom:14px;font-size:clamp(38px,12vw,84px)}
  .collage figure{position:static;width:auto;aspect-ratio:1/1;transform:none!important}
  .c1{grid-column:1/-1;aspect-ratio:4/4.6!important}
  .c5{display:none}
  .foot .brand,.foot .who,.foot .legal{grid-column:1/-1}
  .keys{grid-template-columns:1fr 1fr}
  .keys div:nth-child(2){border-right:0}
  .film{aspect-ratio:4/3}
  .s5,.s5b,.s4{grid-column:span 6;aspect-ratio:1/1}
  .s7,.s7b,.s12{grid-column:span 12;aspect-ratio:16/10}
  .mapbox{height:72svh;min-height:480px}
  .tiles{grid-template-columns:1fr 1fr}
  .tiles div:nth-child(2){border-right:0}
  .dtable{font-size:14px}
  .stick{left:10px;right:10px;bottom:70px;padding:0 6px 0 18px;transform:translateY(180%);justify-content:space-between}
  .stick.on{transform:none}
  .stick form{display:none}
  .stick .m{display:block;color:var(--cream);text-decoration:none;font:700 13.5px/1 var(--sans);padding:13px 0}
  .keep{right:10px;bottom:72px}
  .ph-price{position:static;margin:0 0 0;}
  .ph-copy{bottom:20px}
  .ph-frame{min-height:540px}
  .ph-price{position:absolute;top:80px;right:14px;bottom:auto;background:rgba(14,14,10,.55);border-radius:999px;padding:10px 15px;font-size:16px}
}
@media (max-width:640px){
  .walk-stage{height:auto;min-height:0;padding-top:50vw}
  .walk-stage>img,.walk-stage svg{height:50vw;bottom:auto}
  .walk-shade{display:none}
  .line-copy{position:relative;left:auto;right:auto;bottom:auto;padding:24px 18px 30px}
  .hero video{height:58%;object-position:42% 0}
  .hero-frame::after{background:linear-gradient(180deg,rgba(14,13,10,.26) 0,rgba(14,13,10,0) 18%,rgba(14,13,10,.1) 34%,#14130f 58%,#14130f 100%)}
  .two{grid-template-columns:1fr}
  .report th{width:36%}
  .road li{grid-template-columns:1fr;gap:3px}
}
@media (prefers-reduced-motion:reduce){
  .film img{animation:none}
  .js [data-rise]{opacity:1;transform:none}
  .js [data-lines] .ln>span{transform:none}
  .js .curtain{display:none}
  .exi img,.g img,.nextp img{transition:none}
}
