/* Carolinne Wittlin v2 : layout modelled on chriscortazzo.com, light/airy orchid skin */
:root{
  --navy:#14110E;--navy-2:#3A2C20;--blue:#3A2C20;--blue-d:#261C14;--tan:#CDB08E;
  --paper:#ffffff;--mist:#F6F2EC;--line:#E8E1D8;
  --ink:#1B1714;--muted:#6B625A;
  --pvh:44px;--hdr:86px;
  --disp:'Instrument Serif',Georgia,serif;--body:'Inter',system-ui,sans-serif;--ital:'Instrument Serif',Georgia,serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);font-weight:300;font-size:18px;line-height:1.65;color:var(--ink);background:var(--paper);padding-top:var(--pvh);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-weight:300;line-height:1.2}
h1+p,h2+p,h2+.lead,h3+p{margin-top:18px}
p+p{margin-top:16px}
.wrap{width:min(1180px,92vw);margin:0 auto}
.narrow{width:min(860px,92vw);margin:0 auto}
.center{text-align:center}
.sec{padding:clamp(64px,8vw,104px) 0}
.sec-title{font-family:var(--body);font-weight:300;font-size:clamp(28px,3vw,36px);color:var(--navy);text-align:center;margin-bottom:clamp(30px,4vw,44px)}
.lead{font-size:19px;color:var(--muted);max-width:720px;margin-left:auto;margin-right:auto}

/* preview banner */
.pv-banner{position:fixed;top:0;left:0;right:0;z-index:300;background:#0A0807;color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding:0 16px;min-height:44px;font-size:13.5px;font-weight:400}
.pv-cta{background:var(--blue);color:#fff;padding:0 18px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.pv-cta:hover{background:var(--blue-d)}

/* header */
.hdr{position:fixed;top:var(--pvh);left:0;right:0;z-index:200;transition:background .4s var(--ease),box-shadow .4s}
.hdr-in{width:min(1320px,94vw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;min-height:var(--hdr);gap:24px}
.brand{display:flex;flex-direction:column;color:#fff;line-height:1}
.brand .dre{font-size:13px;letter-spacing:.24em;font-weight:400;opacity:.92;margin-bottom:6px}
.brand .row{display:flex;align-items:center;gap:18px}
.brand .nm{font-family:var(--disp);font-size:clamp(20px,2vw,27px);letter-spacing:.06em;white-space:nowrap}
.brand .bar{width:1px;height:26px;background:rgba(255,255,255,.55)}
.brand img{height:30px;width:auto}
.nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,28px)}
.nav>li{list-style:none;position:relative}
.nav a{font-size:13.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;color:#fff;display:inline-flex;align-items:center;min-height:44px}
.nav a:hover,.nav a.on{color:var(--tan)}
.nav .dd{position:absolute;top:100%;left:-18px;background:var(--navy);min-width:220px;padding:10px 0;opacity:0;pointer-events:none;transform:translateY(6px);transition:.25s var(--ease);box-shadow:0 12px 30px rgba(10,8,6,.25)}
.nav li:hover .dd,.nav li:focus-within .dd{opacity:1;pointer-events:auto;transform:none}
.nav .dd a{display:flex;padding:0 18px;font-size:13px}
.hdr.solid,.sub .hdr{background:linear-gradient(90deg,rgba(20,17,14,.97),rgba(58,44,32,.95));box-shadow:0 4px 24px rgba(10,8,6,.18)}
.burger{display:none;width:48px;height:48px;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:none;border:0;cursor:pointer}
.burger span{display:block;width:26px;height:2px;background:#fff}
.mobile-nav{position:fixed;inset:var(--pvh) 0 0 0;z-index:250;background:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:90px 0 40px;gap:4px;opacity:0;pointer-events:none;transition:opacity .3s;overflow-y:auto}
.mobile-nav.open{opacity:1;pointer-events:auto}
.mobile-nav a{color:#fff;font-size:17px;letter-spacing:.2em;text-transform:uppercase;display:inline-flex;align-items:center;min-height:48px}
.mobile-nav .sm{font-size:14px;opacity:.85;min-height:44px}
.mn-close{position:absolute;top:20px;right:20px;width:48px;height:48px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer;display:flex;align-items:center;justify-content:center}

/* hero */
.hero{position:relative;height:100svh;min-height:600px;margin-top:calc(var(--pvh)*-1);background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img,.hero-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-bg video{z-index:1}
.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,17,14,.55) 0%,rgba(20,17,14,.18) 32%,rgba(20,17,14,.22) 62%,rgba(20,17,14,.62) 100%)}
.hero-in{position:relative;z-index:2;padding:0 5vw}
.hero h1{font-family:var(--disp);font-weight:400;font-size:clamp(40px,6.4vw,84px);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px 24px rgba(10,8,6,.35);line-height:1.1}
.tags{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 40px;margin-top:22px}
.tags span{font-family:var(--ital);font-style:italic;font-size:clamp(19px,1.8vw,23px);text-shadow:0 1px 12px rgba(10,8,6,.45)}
.mouse{position:absolute;z-index:2;left:50%;bottom:38px;transform:translateX(-50%);width:28px;height:46px;border:2px solid rgba(255,255,255,.85);border-radius:16px}
.mouse::after{content:"";position:absolute;left:50%;top:9px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:wheel 1.8s infinite}
@keyframes wheel{0%{opacity:1;transform:none}100%{opacity:0;transform:translateY(12px)}}

/* page header (subpages) */
.phead{position:relative;background:var(--navy);color:#fff;padding:calc(var(--hdr) + 70px) 0 70px;text-align:center;overflow:hidden}
.phead .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.34}
.phead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,14,.35),rgba(20,17,14,.72))}
.phead>.wrap{position:relative;z-index:2}
.phead h1{font-family:var(--disp);font-weight:400;font-size:clamp(32px,4.4vw,54px);letter-spacing:.08em;text-transform:uppercase}
.phead p{font-family:var(--ital);font-style:italic;font-size:21px;margin-top:12px}

/* property cards */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pgrid.two{grid-template-columns:repeat(2,1fr)}
.pcard{background:#fff;box-shadow:0 1px 3px rgba(20,17,14,.12),0 6px 22px rgba(20,17,14,.06);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}
.pcard:hover{transform:translateY(-3px);box-shadow:0 2px 6px rgba(20,17,14,.14),0 14px 34px rgba(20,17,14,.1)}
.pcard .img{aspect-ratio:3/2;overflow:hidden;background:var(--mist)}
.pcard.big .img{aspect-ratio:16/7}
.pcard .img img{width:100%;height:100%;object-fit:cover}
.pcard .status{background:var(--navy);color:#fff;text-align:center;font-size:13px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;padding:12px 0}
.pcard .status.sold{background:var(--blue)}
.pcard .body{padding:22px 20px 26px;text-align:center}
.pcard h3{font-size:22px;color:var(--navy)}
.pcard .city{font-size:15px;color:var(--muted);margin-top:2px}
.pcard .price{font-size:22px;color:var(--navy);margin-top:12px;font-weight:400}
.specs{display:flex;justify-content:center;gap:26px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.specs div{font-size:20px;color:var(--navy);line-height:1.1}
.specs small{display:block;font-size:13px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px}
.featured .pcard.big{margin-bottom:24px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border:2px solid var(--navy);color:var(--navy);font-size:16px;font-weight:400;border-radius:4px;transition:.25s var(--ease);cursor:pointer;background:transparent;font-family:var(--body)}
.btn:hover{background:var(--navy);color:#fff}
.btn::after{content:"\203A";font-size:22px;line-height:1;margin-top:-2px}
.btn.lt{border-color:#fff;color:#fff}
.btn.lt:hover{background:#fff;color:var(--navy)}
.btn.solid{background:var(--blue);border-color:var(--blue);color:#fff}
.btn.solid:hover{background:var(--blue-d);border-color:var(--blue-d)}
.more{text-align:center;margin-top:38px}

/* orchid bio band */
.bioband{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.bioband .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.bioband::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,17,14,.9) 0%,rgba(20,17,14,.72) 55%,rgba(58,44,32,.6) 100%)}
.bioband>.wrap{position:relative;z-index:2}
.bio{display:grid;grid-template-columns:300px 1fr;gap:clamp(28px,4vw,48px);align-items:start}
.bio .ph{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;box-shadow:0 12px 40px rgba(0,0,0,.3)}
.bio h2{font-size:clamp(30px,3vw,38px)}
.bio h3{font-size:21px;font-weight:600;margin-top:14px}
.bio p{color:rgba(255,255,255,.94)}
.play{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-weight:400;min-height:44px}
.play::before{content:"";width:0;height:0;border-left:9px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent;box-shadow:3px 0 0 0 currentColor}
.play:hover{color:var(--tan)}
.posts{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:clamp(40px,5vw,60px)}
.post img{width:100%;aspect-ratio:3/2;object-fit:cover}
.post h3{font-size:20px;margin-top:16px;line-height:1.3}
.post p{font-size:16px;margin-top:10px;color:rgba(255,255,255,.86);line-height:1.55}
.post:hover h3{color:var(--tan)}

/* history split band */
.hist{position:relative;min-height:600px;display:flex;align-items:center;color:#fff;background:var(--navy);overflow:hidden}
.hist .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hist::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,17,14,0) 20%,rgba(20,17,14,.55) 50%,rgba(20,17,14,.9) 100%)}
.hist .wrap{position:relative;z-index:2;display:flex;justify-content:flex-end}
.hist .txt{width:min(480px,100%)}
.hist h2{font-size:clamp(28px,2.8vw,34px)}
.hist .kick{font-size:17px;opacity:.94;margin-top:12px}
.links{display:flex;flex-wrap:wrap;gap:6px 30px}

/* communities grid */
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ccard img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px;transition:transform .5s var(--ease)}
.ccard .im{overflow:hidden;border-radius:3px}
.ccard:hover img{transform:scale(1.04)}
.ccard span{display:block;text-align:center;font-size:17px;color:var(--ink);margin-top:10px}

/* newsletter */
.news{position:relative;border-top:1px solid var(--line);overflow:hidden;background:#fff}
.news .bg{position:absolute;right:0;top:0;height:100%;width:52%;object-fit:cover;opacity:.3;-webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}
.news .wrap{position:relative;z-index:1;text-align:center}
.news h2{font-family:var(--ital);font-style:italic;font-weight:400;font-size:clamp(26px,2.6vw,32px);color:var(--navy)}
.news p{color:var(--ink);margin-top:6px}
.nform{display:flex;max-width:460px;margin:24px auto 0}
.nform input{flex:1;min-width:0;height:52px;border:2px solid var(--navy);border-right:0;border-radius:4px 0 0 4px;padding:0 16px;font:inherit;font-size:17px;background:#fff}
.nform button{height:52px;padding:0 24px;border:0;background:var(--blue);color:#fff;font:inherit;font-size:17px;font-weight:400;border-radius:0 4px 4px 0;cursor:pointer}
.nform button:hover{background:var(--blue-d)}
.fmsg{margin-top:12px;font-size:16px;color:var(--navy);min-height:24px}

/* footer */
.foot{background:var(--navy);color:#fff;text-align:center;padding:64px 0 40px}
.foot .nm{font-family:var(--disp);font-size:28px;letter-spacing:.08em}
.foot .ct{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 26px;margin-top:10px;font-size:16px}
.foot .ct a{display:inline-flex;align-items:center;min-height:44px}
.foot .ct a:hover{color:var(--tan)}
.foot .logo{height:44px;width:auto;margin:36px auto 0}
.foot .legal{font-size:14px;color:rgba(255,255,255,.8);max-width:980px;margin:28px auto 0;line-height:1.6}
.foot .copy{font-size:14px;color:rgba(255,255,255,.72);margin-top:22px}

/* properties page */
.search{position:relative;z-index:2;max-width:640px;margin:26px auto 0;display:flex;box-shadow:0 8px 30px rgba(10,8,6,.3)}
.search input{flex:1;min-width:0;height:56px;border:0;padding:0 18px;font:inherit;font-size:17px;border-radius:4px 0 0 4px}
.search button{width:64px;height:56px;border:0;background:var(--blue);color:#fff;border-radius:0 4px 4px 0;cursor:pointer;display:flex;align-items:center;justify-content:center}
.search button svg{width:22px;height:22px}
.search-note{position:relative;z-index:2;font-size:15px;opacity:.92;margin-top:12px}
.filters{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 26px;margin-top:10px;position:relative;z-index:2}
.filters a{font-size:13.5px;letter-spacing:.2em;text-transform:uppercase;display:inline-flex;align-items:center;min-height:44px;color:#fff}
.filters a:hover{color:var(--tan)}
.blueband{background:linear-gradient(120deg,var(--navy) 0%,var(--navy-2) 55%,var(--blue) 140%);color:#fff;text-align:center}
.blueband h2{font-size:clamp(28px,3vw,36px)}
.blueband p{max-width:640px;margin-left:auto;margin-right:auto;color:rgba(255,255,255,.94)}
.blueband .btn{margin-top:26px}
.legal-note{font-size:15px;color:var(--muted);text-align:center;margin-top:28px}

/* about page */
.about{display:grid;grid-template-columns:300px 1fr;gap:clamp(30px,5vw,60px);align-items:start}
.about aside img.ph{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.about aside .ci{margin-top:18px;font-size:16px}
.about aside .ci a{display:flex;align-items:center;gap:12px;min-height:44px;color:var(--ink)}
.about aside .ci a:hover{color:var(--blue)}
.about aside .ci svg{width:18px;height:18px;flex:0 0 18px;fill:var(--navy)}
.about aside .bl{height:34px;width:auto;margin-top:26px}
.about aside p{font-size:15.5px;color:var(--muted);margin-top:14px;line-height:1.6}
.about h1{font-size:clamp(34px,3.6vw,44px);color:var(--navy)}
.about .h2{font-size:clamp(22px,2.2vw,28px);font-weight:400;color:var(--ink);margin-top:10px}
.about h2.s{font-size:clamp(24px,2.4vw,30px);color:var(--navy);margin-top:40px}
.about article p{color:var(--ink)}
.quote{border-left:3px solid var(--blue);padding:4px 0 4px 22px;margin-top:26px;font-family:var(--ital);font-style:italic;font-size:22px;color:var(--navy);line-height:1.5}

/* westside article */
.art-sec{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center}
.art-sec+.art-sec{margin-top:clamp(56px,7vw,90px)}
.art-sec.rev .art-img{order:2}
.art-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.art-sec h2{font-size:clamp(26px,2.6vw,32px);color:var(--navy)}
.art-sec .yr{font-family:var(--ital);font-style:italic;color:var(--blue);font-size:21px}
.intro-p{font-size:20px;color:var(--ink);text-align:center}

/* communities page details */
.cdetail{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;padding:clamp(40px,5vw,60px) 0;border-top:1px solid var(--line);scroll-margin-top:150px}
.cdetail:nth-child(even) .im{order:2}
.cdetail img{width:100%;aspect-ratio:3/2;object-fit:cover}
.cdetail h2{font-size:clamp(26px,2.6vw,32px);color:var(--navy)}
.cdetail .act{display:inline-block;margin-top:16px;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-weight:600}
.txtlink{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--navy);font-weight:400;min-height:44px;border-bottom:1px solid var(--blue)}
.txtlink:hover{color:var(--blue)}

/* blog */
.feat{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,48px);align-items:center;margin-bottom:clamp(44px,5vw,64px)}
.feat img,.bgrid img{width:100%;aspect-ratio:3/2;object-fit:cover}
.feat h2{font-size:clamp(26px,2.6vw,32px);color:var(--navy)}
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.bgrid h3{font-size:22px;color:var(--navy);margin-top:18px;line-height:1.3}
.bgrid p{font-size:16.5px;color:var(--muted);margin-top:10px}
.readfull{display:inline-flex;align-items:center;gap:10px;margin-top:14px;font-weight:400;color:var(--navy);min-height:44px}
.readfull::before{content:"";border-left:9px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent}
.readfull:hover{color:var(--blue)}
.post-body h2{font-size:clamp(24px,2.4vw,30px);color:var(--navy);margin-top:40px}
.post-body p{font-size:19px}
.post-body ul{margin:16px 0 0 22px}
.post-body li{margin-top:8px}
.post-hero{width:100%;aspect-ratio:21/9;object-fit:cover;margin-bottom:40px}
.byline{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:26px;text-align:center}

/* contact */
.cwrap{position:relative;padding:calc(var(--hdr) + 60px) 0 80px;background:#DCE3EE;overflow:hidden}
.cwrap .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cwrap::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(246,242,236,.35))}
.cwrap>.wrap{position:relative;z-index:2}
.card{width:min(360px,100%);margin:0 auto;background:rgba(20,17,14,.9);color:#fff;text-align:center;padding:30px 24px;border-radius:4px;box-shadow:0 12px 40px rgba(10,8,6,.25)}
.card img{width:150px;height:150px;border-radius:50%;object-fit:cover;object-position:50% 20%;margin:0 auto;border:3px solid rgba(255,255,255,.85)}
.card .nm{font-family:var(--disp);font-size:26px;letter-spacing:.06em;margin-top:18px}
.card a{display:inline-flex;align-items:center;min-height:40px;font-size:18px}
.card a:hover{color:var(--tan)}
.card .dre{font-size:15px;opacity:.9;margin-top:6px}
.cform{width:min(700px,100%);margin:28px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cform input,.cform textarea,.cform select{width:100%;border:1px solid #D9D1C7;background:#fff;border-radius:4px;padding:0 14px;height:52px;font:inherit;font-size:17px;color:var(--ink)}
.cform textarea{height:130px;padding:12px 14px;resize:vertical}
.cform .full{grid-column:1/-1}
.cform label.chk{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;border-radius:4px;min-height:52px;font-size:16px;border:1px solid #D9D1C7}
.cform label.chk input{width:18px;height:18px}
.cform button{grid-column:1/-1;justify-self:center;margin-top:10px;height:52px;padding:0 34px;border:0;border-radius:4px;background:var(--navy);color:#fff;font:inherit;font-size:17px;font-weight:400;cursor:pointer}
.cform button:hover{background:var(--blue)}
.cform .fmsg{grid-column:1/-1;text-align:center;background:rgba(255,255,255,.85);border-radius:4px}
.cform .fmsg:empty{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.mouse::after{animation:none}}

/* responsive */
@media (max-width:1100px){
  .nav{display:none}.burger{display:flex}
  .posts{grid-template-columns:repeat(2,1fr)}
  .cgrid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  :root{--hdr:72px}
  .pgrid,.pgrid.two{grid-template-columns:1fr 1fr}
  .bio,.about{grid-template-columns:1fr}
  .bio .ph,.about aside img.ph{max-width:320px}
  .hist{min-height:0;padding:80px 0}
  .hist::after{background:rgba(20,17,14,.68)}
  .art-sec,.cdetail,.feat{grid-template-columns:1fr}
  .art-sec.rev .art-img,.cdetail:nth-child(even) .im{order:0}
  .bgrid{grid-template-columns:1fr 1fr}
  .news .bg{width:100%;opacity:.16;-webkit-mask-image:none;mask-image:none}
  .brand img{height:24px}
}
@media (max-width:640px){
  body{font-size:17px}
  .pv-banner{font-size:13px;padding:6px 12px;gap:8px}
  .pgrid,.pgrid.two,.bgrid,.posts{grid-template-columns:1fr}
  .cgrid{grid-template-columns:1fr 1fr;gap:14px}
  .pcard.big .img{aspect-ratio:3/2}
  .brand .bar,.brand img{display:none}
  .brand .nm{font-size:19px}
  .brand .dre{font-size:13px;letter-spacing:.18em}
  .tags{flex-direction:column;gap:6px}
  .cform{grid-template-columns:1fr}
  .specs{gap:18px}
  .phead p{font-size:19px}
}
@media (max-width:640px){.hdr-in{width:auto;margin:0;padding:0 20px 0 22px}}
/* bright coastal hero: lighter scrim, text shadow carries legibility */
.hero-scrim{background:linear-gradient(180deg,rgba(20,17,14,.42) 0%,rgba(20,17,14,.10) 30%,rgba(20,17,14,.16) 60%,rgba(20,17,14,.45) 100%)}
.hero h1{text-shadow:0 2px 28px rgba(10,8,6,.55),0 1px 3px rgba(10,8,6,.35)}
.tags span{text-shadow:0 1px 14px rgba(10,8,6,.7),0 1px 2px rgba(10,8,6,.4)}

/* v46 editorial palette + type: white / black / espresso brown, Instrument Serif + Inter */
body{font-weight:300;font-size:17px}
.hero h1{font-family:var(--disp);text-transform:none;letter-spacing:-.01em;font-size:clamp(54px,8.6vw,124px);line-height:.98}
.hero h1 em{font-style:italic;color:var(--tan)}
.tags span{font-family:var(--body);font-style:normal;font-size:clamp(11px,1vw,13px);letter-spacing:.32em;text-transform:uppercase;font-weight:400}
.phead h1{text-transform:none;letter-spacing:-.005em;font-size:clamp(44px,6vw,78px);line-height:1}
.phead p{font-size:24px;color:var(--tan)}
.brand .nm,.foot .nm,.card .nm{letter-spacing:.05em;font-size:clamp(24px,2.3vw,31px)}
.foot .nm{font-size:34px}
.sec-title,.bio h2,.hist h2,.blueband h2,.art-sec h2,.cdetail h2,.feat h2,.post-body h2,.about h1,.about h2.s,.news h2{font-family:var(--disp);font-weight:400;letter-spacing:-.005em}
.sec-title{font-size:clamp(34px,3.8vw,50px)}
.pcard h3,.bgrid h3,.post h3{font-family:var(--disp);font-weight:400;font-size:25px}
.pcard .price{font-family:var(--disp);font-size:26px}
.quote,.art-sec .yr{font-size:25px}
.art-sec .yr,.cdetail .act{color:var(--blue)}
.nav a,.mobile-nav a,.filters a,.pcard .status,.byline{font-weight:400}
.btn,.nform button,.cform button{border-radius:0;letter-spacing:.14em;text-transform:uppercase;font-size:13px;font-weight:500}
.nform input{border-radius:0}
.pv-cta{background:var(--tan);color:#14110E}.pv-cta:hover{background:#E0C8AB}

/* v49: light bio band, airy sepia history, white footer (Brock 2026-09-25) */
.bioband{background:var(--mist);color:var(--ink)}
.bioband .bg{opacity:.75;object-position:70% 50%}
.bioband::before{background:linear-gradient(90deg,rgba(250,247,242,.95) 0%,rgba(250,247,242,.82) 45%,rgba(250,247,242,.35) 100%)}
.bioband .bio h2,.bioband .post h3{color:var(--navy)}
.bioband .bio h3{color:var(--blue)}
.bioband .bio p{color:var(--ink)}
.bioband .post p{color:var(--muted)}
.bioband .play{color:var(--navy)}
.bioband .play:hover,.bioband .post:hover h3{color:var(--blue)}
.bioband .bio .ph{box-shadow:0 12px 36px rgba(58,44,32,.16)}
.bioband .btn.lt{border-color:var(--navy);color:var(--navy)}
.bioband .btn.lt:hover{background:var(--navy);color:#fff}
.hist{background:#F4EEE5;color:var(--ink)}
.hist::after{background:linear-gradient(90deg,rgba(250,247,242,0) 25%,rgba(250,247,242,.6) 52%,rgba(250,247,242,.9) 100%)}
.hist h2{color:var(--navy)}
.hist .kick{color:var(--blue);opacity:1}
.hist .play{color:var(--navy)}
.hist .play:hover{color:var(--blue)}
.foot{background:#fff;color:var(--ink);padding-top:24px}
.foot .nm{color:var(--navy)}
.foot .ct a:hover{color:var(--blue)}
.foot .legal{color:var(--muted)}
.foot .copy{color:var(--muted)}
@media (max-width:900px){
  .hist::after{background:rgba(250,247,242,.78)}
  .bioband::before{background:rgba(250,247,242,.86)}
}
.news::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(rgba(255,255,255,0),#fff);pointer-events:none}
.news{padding-bottom:40px}

/* v51: Brock's photos (2026-10-03): colour photo hero, lifestyle grid, faded luxury images */
.hero-bg picture,.hero-bg picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.home .hero-scrim{background:linear-gradient(180deg,rgba(20,17,14,.40) 0%,rgba(20,17,14,.08) 30%,rgba(20,17,14,.06) 60%,rgba(20,17,14,.38) 100%)}
.lux{background:#fff}
.lux-head{text-align:center;max-width:640px;margin:0 auto 44px}
.lux-head .eyebrow{font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.lux-head p:last-child{color:var(--muted);margin-top:12px}
.lux-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:start}
.lux-grid figure{margin:0;overflow:hidden;border-radius:3px}
.lux-grid img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.lux-grid figure.tall{margin-top:48px}
.lux-grid figure:hover img{transform:scale(1.035)}
.blueband{position:relative;overflow:hidden}
.blueband>.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;filter:grayscale(.35)}
.blueband>.narrow{position:relative;z-index:1}
.phead .bg{opacity:.62}
.phead::after{background:linear-gradient(180deg,rgba(20,17,14,.30),rgba(20,17,14,.55))}
.cgrid{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){.cgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){
  .lux-grid{grid-template-columns:1fr 1fr;gap:12px}
  .lux-grid figure.tall{margin-top:28px}
  .hero-bg picture img{object-position:50% 70%}
}
@media (min-width:901px){.home .hero-in{transform:translateY(-14vh)}}
/* v54: black & white sticky header (no beige) */
.hdr.solid,.sub .hdr{background:rgba(10,9,8,.97);box-shadow:0 1px 0 rgba(255,255,255,.08),0 4px 24px rgba(0,0,0,.25)}
.nav a:hover,.nav a.on{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
.nav .dd,.mobile-nav{background:#0A0908}
.nav .dd a:hover{color:#fff;opacity:.7;text-decoration:none}
.pv-cta{background:#fff;color:#0A0908}.pv-cta:hover{background:#E6E6E6}
/* v55: 11 community cards, 4 per row, last row centered */
.cgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}
.cgrid .ccard{flex:0 0 calc((100% - 60px)/4)}
@media (max-width:900px){.cgrid{gap:14px}.cgrid .ccard{flex:0 0 calc((100% - 14px)/2)}}

/* v56 (Brock 2026-10-06): script name font, no listing banners, lux grid of 5, B&W history, light contact card */
:root{--script:'Mrs Saint Delafield','Herr Von Muellerhoff',cursive}
.hero h1{font-family:var(--script);font-weight:400;text-transform:none;letter-spacing:0;font-size:clamp(76px,11vw,168px);line-height:1.05}
.hero h1 em{font-style:normal;color:#fff}
.brand .nm{font-family:var(--script);letter-spacing:0;font-size:clamp(34px,3.2vw,44px);line-height:1;text-transform:none}
.foot .nm{font-family:var(--script);letter-spacing:0;font-size:52px;line-height:1.1;text-transform:none}
.bio h2,.about h1{font-family:var(--script);font-weight:400;letter-spacing:0;font-size:clamp(52px,5vw,68px);line-height:1.1}
.phead p{font-family:var(--script);font-style:normal;color:#fff;font-size:clamp(34px,3.4vw,46px);margin-top:6px;line-height:1.2}
.hist .kick{font-family:var(--script);font-size:clamp(30px,2.8vw,38px);line-height:1.2;color:var(--ink)}
.lux-grid{grid-template-columns:repeat(5,1fr);gap:16px}
.lux-grid figure.tall{margin-top:0}
.lux-grid figure:nth-child(even){margin-top:48px}
.posts{grid-template-columns:repeat(3,1fr)}
.bgrid{grid-template-columns:repeat(2,1fr)}
.hist .bg{filter:grayscale(1)}
.post img[src*="westside_color"],.bgrid img[src*="westside_color"],.feat img[src*="westside_color"]{filter:grayscale(1)}
/* contact card: white, no black */
.card{background:rgba(255,255,255,.88);color:var(--ink);box-shadow:0 12px 40px rgba(10,8,6,.10);border:1px solid rgba(20,17,14,.08);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.card .nm{font-family:var(--script);letter-spacing:0;font-size:46px;line-height:1.1;color:var(--ink)}
.card img{border-color:#fff;box-shadow:0 4px 18px rgba(10,8,6,.12)}
.card a{color:var(--ink)}
.card a:hover{color:#000;text-decoration:underline;text-underline-offset:4px}
.card .dre{color:var(--muted);opacity:1}
@media (max-width:900px){
  .lux-grid{grid-template-columns:1fr 1fr;gap:12px}
  .lux-grid figure:nth-child(even){margin-top:0}
  .lux-grid figure:nth-child(5){grid-column:1/-1}
  .lux-grid figure:nth-child(5) img{aspect-ratio:3/2}
  .posts{grid-template-columns:1fr 1fr}
  .brand .nm{font-size:32px}
}
@media (max-width:600px){.posts,.bgrid{grid-template-columns:1fr}.hero h1{font-size:clamp(64px,19vw,96px)}}
.hist .kick{font-size:clamp(26px,2.2vw,30px)}
/* v58 desktop-only larger lux images */
@media (min-width:901px){
  .lux>.wrap{width:min(1720px,96vw)}
  .lux-grid{gap:20px}
  .lux-grid img{aspect-ratio:2/3}
  .lux-grid figure:nth-child(even){margin-top:64px}
}
/* v59: client font Coraline for her name, straight-lined sans for all other display text, sky fade on top header */
@font-face{font-family:'Coraline';src:url('../fonts/Coraline.woff2') format('woff2'),url('../fonts/Coraline.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--script:'Coraline','Mrs Saint Delafield',cursive;--disp:'Jost','Inter',system-ui,sans-serif;--ital:'Jost','Inter',system-ui,sans-serif}
.sec-title,.bio h2,.hist h2,.blueband h2,.art-sec h2,.cdetail h2,.feat h2,.post-body h2,.about h2.s,.news h2,.pcard h3,.bgrid h3,.post h3,.pcard .price,.phead h1{font-weight:300;letter-spacing:.02em}
.news h2,.quote,.art-sec .yr,.tags span{font-style:normal}
.phead p,.hist .kick{font-family:var(--disp);font-weight:300;font-style:normal;font-size:clamp(17px,1.5vw,20px);letter-spacing:.18em;text-transform:uppercase;line-height:1.5}
.phead p{margin-top:12px}
.home .hdr:not(.solid){background:linear-gradient(180deg,rgba(139,196,246,.96) 0%,rgba(144,200,248,.75) 55%,rgba(150,204,249,0) 100%)}
.home .hdr:not(.solid) .hdr-in{text-shadow:0 1px 10px rgba(30,60,100,.35)}
.hero-scrim{background:linear-gradient(180deg,rgba(20,17,14,0) 0%,rgba(20,17,14,.08) 32%,rgba(20,17,14,.18) 62%,rgba(20,17,14,.55) 100%)}
/* v60 (Brock 2026-10-07): her name in Coraline ALL CAPS, slightly smaller */
.hero h1,.hero h1 em,.brand .nm,.foot .nm,.bio h2,.about h1,.card .nm{text-transform:uppercase;letter-spacing:.06em;font-style:normal}
.hero h1{font-size:clamp(46px,7.2vw,112px);line-height:1.05}
.brand .nm{font-size:clamp(20px,2vw,28px)}
.foot .nm{font-size:34px}
.bio h2,.about h1{font-size:clamp(34px,3.4vw,46px)}
.card .nm{font-size:30px}

/* v61 (Brock 2026-10-07): payment/preview banner removed */
:root{--pvh:0px}

/* v63 (Brock 2026-10-08): subpage top header blends into each opening image (like home), solid black only once scrolled */
.sub .hdr:not(.solid){--hc:40,40,40;background:linear-gradient(180deg,rgba(var(--hc),.88) 0%,rgba(var(--hc),.55) 55%,rgba(var(--hc),0) 100%);box-shadow:none}
.sub .hdr:not(.solid) .hdr-in{text-shadow:0 1px 10px rgba(0,0,0,.25)}
body:has(.phead .bg[src*="lx_oceanhouse"]) .hdr:not(.solid){--hc:78,96,108}
body:has(.phead .bg[src*="westside_color"]) .hdr:not(.solid){--hc:72,70,68}
body:has(.phead .bg[src*="lx_arches"]) .hdr:not(.solid){--hc:86,70,56}
body:has(.phead .bg[src*="lx_ocean.jpg"]) .hdr:not(.solid){--hc:38,56,66}
body:has(.cwrap) .hdr:not(.solid){--hc:150,150,150}
body:has(.cwrap) .hdr:not(.solid) .hdr-in{text-shadow:0 1px 8px rgba(0,0,0,.35)}
/* about page has no opening image: soft white fade with dark nav */
body:has(.about) .hdr:not(.solid){--hc:255,255,255}
body:has(.about) .hdr:not(.solid) .hdr-in{text-shadow:none}
body:has(.about) .hdr:not(.solid) .brand,body:has(.about) .hdr:not(.solid) .nav>li>a{color:var(--navy)}
body:has(.about) .hdr:not(.solid) .nav>li>a.on,body:has(.about) .hdr:not(.solid) .nav>li>a:hover{color:var(--blue)}
body:has(.about) .hdr:not(.solid) .brand .bar{background:rgba(20,17,14,.4)}
body:has(.about) .hdr:not(.solid) .brand img{filter:invert(1)}
body:has(.about) .hdr:not(.solid) .burger span{background:var(--navy)}
/* v65: brighter page-opening photos, transparent contact card */
.phead .bg{opacity:1}
.phead::after{background:linear-gradient(180deg,rgba(20,17,14,.18),rgba(20,17,14,.34))}
.phead h1,.phead p{text-shadow:0 2px 14px rgba(0,0,0,.35)}
.cwrap .card{background:rgba(255,255,255,.22);border:1px solid rgba(205,176,142,.75);box-shadow:0 0 0 1px rgba(255,255,255,.35) inset,0 10px 30px rgba(10,8,6,.06);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
body:has(.phead .bg[src*="westside_color"]) .hdr:not(.solid){--hc:72,138,200}
body:has(.phead .bg[src*="lx_oceanhouse"]) .hdr:not(.solid){--hc:104,146,180}
body:has(.phead .bg[src*="lx_arches"]) .hdr:not(.solid){--hc:140,106,76}
body:has(.phead .bg[src*="lx_ocean.jpg"]) .hdr:not(.solid){--hc:18,88,132}
.phead .bg[src*="westside_color"]{object-position:center 22%}
/* v66: westside photo in full color on home + thumbnails (Brock 2026-10-09) */
.hist .bg,.post img[src*="westside_color"],.bgrid img[src*="westside_color"],.feat img[src*="westside_color"]{filter:none!important}
.hist .bg{opacity:1}
