/* =====================================================================
   VIRGINIAHISTORICESTATES.COM — SITE STYLES
   Link it in the page <head>, after the theme stylesheets:
     <link href="/css/vhe-site.css" rel="stylesheet" media="all">

   Sections:
      1. Homepage hero (photo + historic listings)    .vhe-hero
      2. Homepage introduction                         .vhe-intro
      3. Explore by era                                .vhe-era
      4. Selling a historic home                       .vhe-sell
      5. Selected historic sales                       .vhe-sales
      6. Closing invitation (over a photograph)        .vhe-close
      7. Page updated date                             .vhe-updated
      8. Footer: specialized property network          .vhe-network-footer
      9. Site footer colors                            .vhe-footer
     10. Marketing expertise (brochure, co-listing)    .vhe-mkt
     11. Homepage section headings, smaller
     12. Page banner (photo across the top)          .vhe-banner
     13. Banner with buttons (Sell page)             .vhe-banner.is-feature
     14. About Bridget page (a folio)                .vhe-folio
     15. Panoramic photo with text, related pages    .vhe-pano, .vhe-related
===================================================================== */


/* =====================================================================
   1. HOMEPAGE HERO (photo + historic listings)
   Same design as the virginiacountryliving.com homepage hero.
===================================================================== */
.vhe-hero{
  /* ============ EASY SETTINGS — HOMEPAGE HERO ============ */
  --hero-height:    clamp(680px, 92vh, 1000px);
  --grid-size:      min(500px, 58vh);  /* width of the 2 × 2 listing grid */
  --tile-shape:     4 / 3;             /* listing photo shape: 4 / 3 rectangle, 3 / 2 wider, 1 / 1 square */
  --right-space:    clamp(80px, 11vw, 220px); /* space to the right of the grid; larger = text closer to the horse */
  --grid-top:       48px;              /* space above the heading */
  --gap:            12px;              /* space between the listing squares */
  --photo-focus:    20% 46%;           /* which part of the photo stays in view */
  --photo-zoom:     1.12;              /* enlarges the photo from its left edge, bringing the horse toward the center */
  --photo-focus-phone: 40% 46%;      /* the same, on phones */
  --photo-tone:     none;              /* use grayscale(1) for black and white */
  --shade:          .55;               /* darkening behind the text, 0 = none, 1 = black */
  --text:           #FFFFFF;
  --soft:           rgba(255,255,255,.82);
  /* ============ END SETTINGS ============ */
  position:relative; display:flex;
  min-height:var(--hero-height);
  background:#1a1a1a; color:var(--text);   /* shows only while the photo loads */
  overflow:hidden;
}
section.vhe-hero{padding:0 !important; margin:0 !important;}
.vhe-hero *{box-sizing:border-box;}
.vhe-hero a{text-decoration:none !important;}
.vhe-hero a:focus-visible{outline:1px solid #fff; outline-offset:5px;}

/* ---------- left: the photograph ---------- */
.vhe-hero__photo{position:absolute; inset:0; overflow:hidden; z-index:0;}
.vhe-hero img.vhe-hero__img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none;
  object-fit:cover; object-position:var(--photo-focus);
  display:block; border:0 !important;
  filter:var(--photo-tone);
  transform:scale(var(--photo-zoom)); transform-origin:0% 46%;
  animation:vheFade 1.8s ease both;
}
/* a soft shadow on the right side of the photo keeps the text easy to read */
.vhe-hero__photo::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,0) 35%, rgba(0,0,0,calc(var(--shade) * .8)) 58%, rgba(0,0,0,var(--shade)) 100%);
}

/* ---------- heading above the photos, the rest beneath ---------- */
.vhe-hero__intro{margin-bottom:34px; animation:vheRise 1.2s .2s cubic-bezier(.2,.7,.2,1) both;}
.vhe-hero__caption{margin-top:26px; animation:vheRise 1.2s 1.2s cubic-bezier(.2,.7,.2,1) both;}
.vhe-hero p.vhe-hero__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important;
  font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--soft) !important;
}
.vhe-hero h1.vhe-hero__title{
  margin:0 !important; padding:0 !important; max-width:none !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(30px, 2.5vw, 40px) !important; line-height:1.1 !important;
  letter-spacing:-.01em; text-transform:none !important;
  font-kerning:normal; font-feature-settings:"kern","liga"; text-rendering:optimizeLegibility;
  color:var(--text) !important;
}
/* the short line in refined capitals */
.vhe-hero p.vhe-hero__motto{
  margin:0 0 12px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important;
  font-size:14px !important; font-weight:400 !important; line-height:1.5 !important;
  letter-spacing:.22em; text-transform:uppercase;
  color:#FFFFFF !important;
  text-shadow:0 1px 14px rgba(0,0,0,.5);
}
/* the sentence beneath it */
.vhe-hero p.vhe-hero__sub{
  margin:0 !important; max-width:100%;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important;
  font-size:16px !important; font-weight:400 !important; line-height:1.7 !important;
  letter-spacing:.01em; text-transform:none;
  color:rgba(255,255,255,.86) !important;
  text-shadow:0 1px 14px rgba(0,0,0,.5);
}
/* your name and firm, in full white */
.vhe-hero p.vhe-hero__sub span.vhe-hero__name{
  display:inline !important; color:#FFFFFF !important;
  font-style:normal !important; font-weight:500 !important;
}
.vhe-hero__caption{padding-top:22px; border-top:1px solid rgba(255,255,255,.35);}

/* the two links, as buttons: the first filled in oxblood, the second outlined */
section.vhe-hero div.vhe-hero__actions{
  display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
  align-items:center !important; gap:12px !important;
  margin-top:24px !important; width:max-content !important; max-width:none !important;
}
section.vhe-hero div.vhe-hero__actions > a.vhe-hero__cta{
  display:inline-flex !important; float:none !important; width:auto !important;
  flex:0 0 auto !important; margin:0 !important;
}
.vhe-hero a.vhe-hero__cta,
.vhe-hero a.vhe-hero__cta:visited{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 18px !important; white-space:nowrap;
  border:1px solid rgba(255,255,255,.85) !important; border-radius:0 !important;
  background:rgba(0,0,0,.18) !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:600 !important;
  letter-spacing:.16em; text-transform:uppercase; line-height:1 !important;
  color:#FFFFFF !important;
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
}
.vhe-hero a.vhe-hero__cta:first-child,
.vhe-hero a.vhe-hero__cta:first-child:visited{
  background:#7F1D18 !important; border-color:#7F1D18 !important;
  box-shadow:0 10px 26px -14px rgba(0,0,0,.9);
}
.vhe-hero a.vhe-hero__cta:hover{background:rgba(255,255,255,.14) !important; border-color:#fff !important; transform:translateY(-1px);}
.vhe-hero a.vhe-hero__cta:first-child:hover{background:#98241D !important; border-color:#98241D !important;}

/* ---------- right: the listings ---------- */
.vhe-hero__listings{
  position:relative; z-index:1;
  margin-left:auto; width:calc(var(--grid-size) + var(--right-space) + 16px); min-width:0;
  display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start;
  padding:var(--grid-top) 0 40px 16px;
}
.vhe-hero__board{width:100%; max-width:var(--grid-size);}

.vhe-hero__head{
  display:flex; align-items:baseline; justify-content:space-between; gap:20px;
  margin-bottom:18px;
  animation:vheFade 1.2s .5s ease both;
}
.vhe-hero p.vhe-hero__label{
  margin:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important;
  font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--soft) !important;
}
.vhe-hero a.vhe-hero__all,
.vhe-hero a.vhe-hero__all:visited{
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:500 !important;
  letter-spacing:.24em; text-transform:uppercase; line-height:1.5 !important;
  color:var(--text) !important; white-space:nowrap;
}
.vhe-hero a.vhe-hero__all span{display:inline-block; margin-left:8px; transition:transform .35s ease;}
.vhe-hero a.vhe-hero__all:hover span{transform:translateX(4px);}

.vhe-hero ul.vhe-hero__grid{
  margin:0 !important; padding:0 !important; list-style:none;
  display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--gap);
}
.vhe-hero ul.vhe-hero__grid li{margin:0 !important; padding:0 !important; list-style:none; animation:vheRise 1.1s cubic-bezier(.2,.7,.2,1) both;}
.vhe-hero ul.vhe-hero__grid li::before{content:none !important;}
.vhe-hero ul.vhe-hero__grid li:nth-child(1){animation-delay:.45s;}
.vhe-hero ul.vhe-hero__grid li:nth-child(2){animation-delay:.58s;}
.vhe-hero ul.vhe-hero__grid li:nth-child(3){animation-delay:.71s;}
.vhe-hero ul.vhe-hero__grid li:nth-child(4){animation-delay:.84s;}

.vhe-hero a.vhe-hero__tile{
  position:relative; display:block; aspect-ratio:var(--tile-shape); overflow:hidden;
  background:rgba(0,0,0,.35); color:#FFFFFF !important;
}
.vhe-hero__tile img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none;
  object-fit:cover; display:block; border:0 !important;
  transition:transform 1.1s cubic-bezier(.2,.7,.2,1);
}
.vhe-hero__tile::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(0deg, rgba(8,8,8,.78) 0%, rgba(8,8,8,.25) 38%, rgba(8,8,8,0) 60%);
}
.vhe-hero a.vhe-hero__tile:hover img{transform:scale(1.06);}

.vhe-hero__info{position:absolute; z-index:2; left:14px; right:12px; bottom:13px;}
.vhe-hero__info small{
  display:block; margin-bottom:6px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:9px; font-weight:500; letter-spacing:.24em; text-transform:uppercase;
  color:rgba(255,255,255,.85);
}
.vhe-hero__info b{
  display:block;
  font-family:"Cormorant Garamond", "Playfair Display", Georgia, serif;
  font-size:clamp(15px, 1.1vw, 18px); font-weight:500; line-height:1.15; letter-spacing:.01em;
}
.vhe-hero__info i{
  display:block; margin-top:5px; font-style:normal;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:10.5px; font-weight:300; letter-spacing:.04em; line-height:1.4; color:rgba(255,255,255,.82);
  max-height:0; opacity:0; overflow:hidden;
  transition:max-height .5s ease, opacity .5s ease;
}
.vhe-hero a.vhe-hero__tile:hover .vhe-hero__info i,
.vhe-hero a.vhe-hero__tile:focus-visible .vhe-hero__info i{max-height:44px; opacity:1;}

@keyframes vheRise{from{opacity:0; transform:translateY(16px);} to{opacity:1; transform:none;}}
@keyframes vheFade{from{opacity:0;} to{opacity:1;}}
@media (prefers-reduced-motion:reduce){
  .vhe-hero *, .vhe-hero img.vhe-hero__img{animation:none !important; transition:none !important;}
}
@media (hover:none){   /* touch screens: always show the details */
  .vhe-hero__info i{max-height:40px; opacity:1;}
}

/* tablet */
@media (max-width:1100px){
  .vhe-hero{--right-space:60px;}
}

/* phone and small tablet: photo on top, listings beneath */
@media (max-width:860px){
  .vhe-hero{flex-direction:column; min-height:0;}
  .vhe-hero img.vhe-hero__img{object-position:var(--photo-focus-phone); transform:none;}
  .vhe-hero__photo::after{background:linear-gradient(0deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.5) 55%, rgba(0,0,0,.15) 100%);}
  .vhe-hero__listings{width:100%; margin-left:0; padding:46svh 24px 48px; align-items:center;}
  section.vhe-hero div.vhe-hero__actions{flex-wrap:wrap !important; width:auto !important;}
  .vhe-hero__board{max-width:620px;}
  .vhe-hero{--gap:10px;}
  .vhe-hero__info{left:14px; right:14px; bottom:12px;}
}


/* =====================================================================
   2. HOMEPAGE INTRODUCTION
===================================================================== */
.vhe-intro{
  /* ============ EASY SETTINGS — INTRODUCTION ============ */
  --bg:      #F5F1EA;    /* warm ivory */
  --ink:     #2B201A;    /* headings */
  --body:    #4A443D;    /* paragraphs */
  --accent:  #7F1D18;    /* oxblood: eyebrow, rule, link */
  --space:   clamp(56px, 6vw, 96px);
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important;
}
.vhe-intro *{box-sizing:border-box;}
.vhe-intro__wrap{
  max-width:1200px; margin:0 auto; padding:0 56px;
  display:grid; grid-template-columns:5fr 6fr; gap:28px clamp(40px, 6vw, 96px); align-items:start;
}
.vhe-intro p.vhe-intro__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--accent) !important;
}
.vhe-intro h2.vhe-intro__title{
  margin:0 0 22px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important;
  color:var(--ink) !important;
}
.vhe-intro p.vhe-intro__text{
  margin:0 0 16px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.85 !important;
  letter-spacing:.01em; color:var(--body) !important;
}
.vhe-intro p.vhe-intro__text strong{font-weight:500 !important; color:var(--ink) !important;}
.vhe-intro p.vhe-intro__pull{
  margin:28px 0 0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:19px !important; font-weight:400 !important; line-height:1.6 !important;
  color:var(--ink) !important;
}
.vhe-intro p.vhe-intro__pull::before{content:""; display:block; width:40px; height:1px; background:var(--accent); margin-bottom:18px;}
.vhe-intro a.vhe-intro__link,
.vhe-intro a.vhe-intro__link:visited{
  display:inline-block; margin-top:26px; padding-bottom:8px;
  border-bottom:1px solid var(--accent);
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ink) !important; text-decoration:none !important;
}
.vhe-intro a.vhe-intro__link:hover{color:var(--accent) !important;}

/* white version, for the listings heading on county and town pages */
.vhe-intro.is-white{--bg:#FFFFFF; padding-top:clamp(48px, 5vw, 72px) !important;}
/* less space under an introduction that is followed by listings */
.vhe-intro:has(+ .vhe-intro.is-white){padding-bottom:clamp(48px, 5vw, 72px) !important;}

@media (max-width:900px){
  .vhe-intro__wrap{grid-template-columns:1fr; padding:0 28px;}
}
@media (max-width:560px){
  .vhe-intro__wrap{padding:0 22px;}
}


/* =====================================================================
   3. EXPLORE BY ERA
===================================================================== */
.vhe-era{
  /* ============ EASY SETTINGS — EXPLORE BY ERA ============ */
  --bg:      #FFFFFF;
  --ink:     #2B201A;
  --body:    #4A443D;
  --muted:   #8B8178;
  --accent:  #7F1D18;
  --space:   clamp(56px, 6vw, 96px);
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important;
}
.vhe-era *{box-sizing:border-box;}
.vhe-era__wrap{max-width:1200px; margin:0 auto; padding:0 56px;}
.vhe-era__head{
  display:grid; grid-template-columns:5fr 6fr; gap:20px clamp(40px, 6vw, 96px);
  align-items:end; margin-bottom:40px;
}
.vhe-era p.vhe-era__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--accent) !important;
}
.vhe-era h2.vhe-era__title{
  margin:0 !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-era p.vhe-era__text{
  margin:0 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.85 !important;
  letter-spacing:.01em; color:var(--body) !important;
}
.vhe-era p.vhe-era__text strong{font-weight:500 !important; color:var(--ink) !important;}

/* the era cards */
.vhe-era ul.vhe-era__grid{
  margin:0 !important; padding:0 !important; list-style:none !important;
  display:grid; grid-template-columns:repeat(3, 1fr); gap:0 clamp(24px, 3vw, 44px);
}
.vhe-era ul.vhe-era__grid > li{margin:0 !important; padding:0 !important; list-style:none !important;}
.vhe-era ul.vhe-era__grid > li::before{content:none !important;}
.vhe-era a.vhe-era__card,
.vhe-era a.vhe-era__card:visited{
  display:block; height:100%; padding:22px 0 26px !important;
  border-top:1px solid rgba(127,29,24,.28) !important;
  text-decoration:none !important; color:var(--body) !important;
}
.vhe-era__card small{
  display:block; margin-bottom:8px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:10.5px; font-weight:600; letter-spacing:.2em; text-transform:uppercase;
  color:var(--accent);
}
.vhe-era__card b{
  display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:8px;
  font-family:"Playfair Display", Georgia, serif; font-size:21px; font-weight:400;
  line-height:1.25; color:var(--ink);
}
.vhe-era__card b span{
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif; font-size:14px;
  color:var(--accent); transition:transform .3s ease;
}
.vhe-era a.vhe-era__card:hover b span{transform:translateX(4px);}
.vhe-era__card i{
  display:block; font-style:normal;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:14px; font-weight:300; line-height:1.7; color:var(--body);
}
.vhe-era__card em{
  display:block; margin-top:8px; font-style:normal;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:12.5px; font-weight:400; line-height:1.6; color:var(--muted);
}
.vhe-era a.vhe-era__card:focus-visible{outline:1px solid var(--accent); outline-offset:5px;}

.vhe-era p.vhe-era__pull{
  margin:36px 0 0 !important; max-width:760px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:19px !important; font-weight:400 !important; line-height:1.6 !important;
  color:var(--ink) !important;
}
.vhe-era p.vhe-era__pull::before{content:""; display:block; width:40px; height:1px; background:var(--accent); margin-bottom:18px;}

@media (max-width:1000px){ .vhe-era ul.vhe-era__grid{grid-template-columns:1fr 1fr;} }
@media (max-width:900px){
  .vhe-era__wrap{padding:0 28px;}
  .vhe-era__head{grid-template-columns:1fr; align-items:start;}
}
@media (max-width:560px){
  .vhe-era__wrap{padding:0 22px;}
  .vhe-era ul.vhe-era__grid{grid-template-columns:1fr;}
}


/* =====================================================================
   4. SELLING A HISTORIC HOME
===================================================================== */
.vhe-sell{
  /* ============ EASY SETTINGS — SELLING A HISTORIC HOME ============ */
  --bg:      #F5F1EA;    /* warm ivory */
  --ink:     #2B201A;
  --body:    #4A443D;
  --accent:  #7F1D18;    /* oxblood */
  --space:   clamp(56px, 6vw, 96px);
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important;
}
.vhe-sell *{box-sizing:border-box;}
.vhe-sell__wrap{max-width:1200px; margin:0 auto; padding:0 56px;}
.vhe-sell__head{
  display:grid; grid-template-columns:5fr 6fr; gap:20px clamp(40px, 6vw, 96px);
  align-items:end; margin-bottom:40px;
}
.vhe-sell p.vhe-sell__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--accent) !important;
}
.vhe-sell h2.vhe-sell__title{
  margin:0 !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-sell p.vhe-sell__text{
  margin:0 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.85 !important;
  letter-spacing:.01em; color:var(--body) !important;
}
.vhe-sell p.vhe-sell__text strong{font-weight:500 !important; color:var(--ink) !important;}

/* the four reasons */
.vhe-sell__grid{display:grid; grid-template-columns:1fr 1fr; gap:0 clamp(40px, 6vw, 96px);}
.vhe-sell__point{padding:24px 0 28px; border-top:1px solid rgba(127,29,24,.28);}
.vhe-sell h3.vhe-sell__point-title{
  margin:0 0 10px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:21px !important; line-height:1.3 !important;
  letter-spacing:0; text-transform:none !important; color:var(--ink) !important;
}

.vhe-sell p.vhe-sell__pull{
  margin:36px 0 0 !important; max-width:760px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:19px !important; font-weight:400 !important; line-height:1.6 !important;
  color:var(--ink) !important;
}
.vhe-sell p.vhe-sell__pull::before{content:""; display:block; width:40px; height:1px; background:var(--accent); margin-bottom:18px;}

/* buttons and phone */
.vhe-sell__actions{display:flex; flex-wrap:wrap; align-items:center; gap:14px 18px; margin-top:28px;}
.vhe-sell a.vhe-sell__button,
.vhe-sell a.vhe-sell__button:visited{
  display:inline-flex; align-items:center; justify-content:center;
  padding:15px 24px !important; border:1px solid var(--accent) !important; border-radius:0 !important;
  background:var(--accent) !important; color:#FFFFFF !important; text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:.18em; text-transform:uppercase; line-height:1 !important;
  transition:background .25s ease, transform .25s ease;
}
.vhe-sell a.vhe-sell__button:hover{background:#98241D !important; border-color:#98241D !important; transform:translateY(-1px);}
.vhe-sell a.vhe-sell__button.is-outline,
.vhe-sell a.vhe-sell__button.is-outline:visited{background:transparent !important; color:var(--ink) !important; border-color:var(--ink) !important;}
.vhe-sell a.vhe-sell__button.is-outline:hover{background:var(--ink) !important; color:#FFFFFF !important;}
.vhe-sell a.vhe-sell__phone,
.vhe-sell a.vhe-sell__phone:visited{
  margin-left:6px; text-decoration:none !important; white-space:nowrap;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:19px !important; font-weight:400 !important; letter-spacing:.02em;
  color:var(--accent) !important;
}
.vhe-sell a:focus-visible{outline:1px solid var(--accent); outline-offset:4px;}

@media (max-width:900px){
  .vhe-sell__wrap{padding:0 28px;}
  .vhe-sell__head, .vhe-sell__grid{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .vhe-sell__wrap{padding:0 22px;}
}


/* =====================================================================
   5. SELECTED HISTORIC SALES
===================================================================== */
.vhe-sales{
  /* ============ EASY SETTINGS — SELECTED SALES ============ */
  --bg:      #FFFFFF;
  --ink:     #2B201A;
  --body:    #4A443D;
  --muted:   #8B8178;
  --accent:  #7F1D18;
  --space:   clamp(56px, 6vw, 96px);
  --shape:   4 / 3;      /* photo shape */
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important;
}
.vhe-sales *{box-sizing:border-box;}
.vhe-sales__wrap{max-width:1200px; margin:0 auto; padding:0 56px;}
.vhe-sales__head{
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:34px;
}
.vhe-sales p.vhe-sales__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--accent) !important;
}
.vhe-sales h2.vhe-sales__title{
  margin:0 !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-sales a.vhe-sales__all,
.vhe-sales a.vhe-sales__all:visited{
  padding-bottom:8px; border-bottom:1px solid var(--accent); white-space:nowrap;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ink) !important; text-decoration:none !important;
}
.vhe-sales a.vhe-sales__all:hover{color:var(--accent) !important;}

.vhe-sales ul.vhe-sales__grid{
  margin:0 !important; padding:0 !important; list-style:none !important;
  display:grid; grid-template-columns:repeat(4, 1fr); gap:clamp(16px, 2vw, 28px);
}
.vhe-sales ul.vhe-sales__grid > li{margin:0 !important; padding:0 !important; list-style:none !important;}
.vhe-sales ul.vhe-sales__grid > li::before{content:none !important;}
.vhe-sales a.vhe-sales__card,
.vhe-sales a.vhe-sales__card:visited{display:block; text-decoration:none !important; color:var(--body) !important;}
.vhe-sales__photo{position:relative; display:block; aspect-ratio:var(--shape); overflow:hidden; background:#e4ded5;}
.vhe-sales__photo img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none;
  object-fit:cover; display:block; border:0 !important;
  transition:transform 1.1s cubic-bezier(.2,.7,.2,1);
}
.vhe-sales a.vhe-sales__card:hover .vhe-sales__photo img{transform:scale(1.05);}
.vhe-sales__card small{
  display:block; margin:16px 0 6px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:10px; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
  color:var(--accent);
}
.vhe-sales__card b{
  display:block;
  font-family:"Playfair Display", Georgia, serif; font-size:19px; font-weight:400;
  line-height:1.3; color:var(--ink);
}
.vhe-sales__card i{
  display:block; margin-top:4px; font-style:normal;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:13px; font-weight:300; line-height:1.6; color:var(--muted);
}
.vhe-sales a.vhe-sales__card:focus-visible{outline:1px solid var(--accent); outline-offset:5px;}

@media (max-width:1000px){ .vhe-sales ul.vhe-sales__grid{grid-template-columns:1fr 1fr;} }
@media (max-width:900px){ .vhe-sales__wrap{padding:0 28px;} }
@media (max-width:560px){
  .vhe-sales__wrap{padding:0 22px;}
  .vhe-sales__head{flex-direction:column; align-items:flex-start;}
}


/* =====================================================================
   6. CLOSING INVITATION (over a photograph)
===================================================================== */
.vhe-close{
  /* ============ EASY SETTINGS — CLOSING INVITATION ============ */
  --height:       clamp(440px, 60vh, 620px);
  --photo-focus:  center 50%;   /* which part of the photo stays in view */
  --shade:        .5;           /* darkening over the photo, 0 = none, 1 = black */
  /* ============ END SETTINGS ============ */
  position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  min-height:var(--height); padding:72px 24px !important; margin:0 !important;
  background:#1a1a1a; color:#FFFFFF; text-align:center;
}
.vhe-close *{box-sizing:border-box;}
.vhe-close img.vhe-close__img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none;
  object-fit:cover; object-position:var(--photo-focus); display:block; border:0 !important;
}
.vhe-close::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:rgba(0,0,0,var(--shade));
}
.vhe-close__inner{position:relative; z-index:1; max-width:720px;}
.vhe-close p.vhe-close__motto{
  margin:0 0 18px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:14px !important; font-weight:400 !important; line-height:1.5 !important;
  letter-spacing:.24em; text-transform:uppercase; color:#FFFFFF !important;
}
.vhe-close h2.vhe-close__title{
  margin:0 0 18px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(28px, 3vw, 42px) !important; line-height:1.18 !important;
  letter-spacing:-.01em; text-transform:none !important; color:#FFFFFF !important;
  text-shadow:0 2px 18px rgba(0,0,0,.35);
}
.vhe-close p.vhe-close__text{
  margin:0 auto !important; max-width:600px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:17px !important; font-weight:400 !important; line-height:1.7 !important;
  color:rgba(255,255,255,.88) !important;
}
.vhe-close__actions{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px 16px; margin-top:30px;}
.vhe-close a.vhe-close__button,
.vhe-close a.vhe-close__button:visited{
  display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;
  padding:15px 24px !important; border:1px solid #7F1D18 !important; border-radius:0 !important;
  background:#7F1D18 !important; color:#FFFFFF !important; text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:.18em; text-transform:uppercase; line-height:1 !important;
  transition:background .25s ease, transform .25s ease;
}
.vhe-close a.vhe-close__button:hover{background:#98241D !important; border-color:#98241D !important; transform:translateY(-1px);}
.vhe-close a.vhe-close__button.is-outline,
.vhe-close a.vhe-close__button.is-outline:visited{background:rgba(0,0,0,.18) !important; border-color:rgba(255,255,255,.85) !important;}
.vhe-close a.vhe-close__button.is-outline:hover{background:rgba(255,255,255,.14) !important; border-color:#FFFFFF !important;}
.vhe-close a.vhe-close__phone,
.vhe-close a.vhe-close__phone:visited{
  display:block; margin-top:22px; text-decoration:none !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:20px !important; letter-spacing:.04em; color:#FFFFFF !important;
}
.vhe-close a:focus-visible{outline:1px solid #FFFFFF; outline-offset:4px;}


/* =====================================================================
   7. PAGE UPDATED DATE
===================================================================== */
.vhe-updated{background:#EDE7DE; padding:26px 24px 28px !important; margin:0 !important; text-align:center;}
.vhe-updated p.vhe-updated__date{
  margin:0 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:500 !important; letter-spacing:.2em; text-transform:uppercase;
  line-height:1.6 !important; color:#857B6D !important;
}
.vhe-updated p.vhe-updated__date span{color:#7F1D18 !important; font-weight:600 !important;}


/* =====================================================================
   8. FOOTER: BRIDGET ARCHER'S SPECIALIZED PROPERTY NETWORK
   (moved here from the <style> block inside the footer)
===================================================================== */
/* footer background: slate green, to match the nav bar.
   Change #2F3E38 here to change the footer color. */
footer.footer-1.vhe-luxury,
footer.footer-1.bg-light.vhe-luxury{
  background:#2F3E38 !important;
  padding:72px 0 0 !important;
}
/* ==========================================
   VHE SPECIALIZED PROPERTY NETWORK
   LIGHTER CARD VERSION
=========================================== */

.vhe-network-footer {
  color:#F3EEE6 !important;
}

.vhe-network-footer * {
  box-sizing:border-box;
}


/* ==========================================
   INTRODUCTION
=========================================== */

.vhe-network-footer .vhe-network-intro {
  max-width:880px;
  margin:0 auto 54px;
  text-align:center;
}

.vhe-network-footer .vhe-network-eyebrow {
  margin:0 0 15px !important;
  letter-spacing:2.8px;
  text-transform:uppercase;
  color:#CDB497 !important;
}

.vhe-network-footer h2 {
  max-width:760px;
  margin:0 auto 22px !important;
  color:#F7F2E9 !important;
}

.vhe-network-footer .vhe-network-intro-text {
  max-width:820px;
  margin:0 auto !important;
  color:#F3EEE6 !important;
}

.vhe-network-footer .vhe-network-rule {
  width:48px;
  height:1px;
  margin:0 auto 52px;
  background:#7F1D18;
}


/* ==========================================
   GRID
=========================================== */

.vhe-network-footer .vhe-network-row {
  display:flex;
  flex-wrap:wrap;
}

.vhe-network-footer .vhe-network-column {
  display:flex;
  margin-bottom:34px;
}


/* ==========================================
   LIGHT CARDS
=========================================== */

.vhe-network-footer .vhe-network-card,
.vhe-network-footer .vhe-network-card.seller {
  width:100%;
  background:#F4F0E8;
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 10px 28px rgba(16,26,22,.18);
}


/* ==========================================
   IMAGES
=========================================== */

.vhe-network-footer .vhe-network-image-link {
  display:block;
  text-decoration:none !important;
}

.vhe-network-footer .vhe-network-image {
  width:100%;
  height:330px;
  overflow:hidden;
  background:#D8CEC0;
}

.vhe-network-footer .vhe-network-image img {
  width:100%;
  height:330px;
  display:block;
  object-fit:cover;
  object-position:center center;
  transition:transform .5s ease;
}

.vhe-network-footer .vhe-network-image-link:hover img {
  transform:scale(1.015);
}


/* ==========================================
   CARD CONTENT
=========================================== */

.vhe-network-footer .vhe-network-content {
  padding:34px 36px 38px;
  text-align:left;
}

.vhe-network-footer .vhe-network-category,
.vhe-network-footer .vhe-network-card.seller .vhe-network-category {
  margin:0 0 11px !important;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:#7F1D18 !important;
  font-weight:600;
}

.vhe-network-footer .vhe-network-content h3 {
  margin:0 0 17px !important;
  color:#1F2A25 !important;
}

.vhe-network-footer .vhe-network-description {
  margin:0 0 26px !important;
  color:#4E5852 !important;
}


/* ==========================================
   LINKS
=========================================== */

.vhe-network-footer .vhe-network-link {
  display:inline-block;
  letter-spacing:1.4px;
  text-transform:uppercase;
  text-decoration:none !important;
  color:#2F3E38 !important;
  font-weight:700;
  transition:color .2s ease;
}

.vhe-network-footer .vhe-network-link::after {
  content:" →";
  margin-left:5px;
  color:#7F1D18;
}

.vhe-network-footer .vhe-network-link:hover,
.vhe-network-footer .vhe-network-link:focus {
  color:#7F1D18 !important;
  text-decoration:underline !important;
  text-underline-offset:4px;
}

.vhe-network-footer .vhe-network-link:hover::after,
.vhe-network-footer .vhe-network-link:focus::after {
  color:#7F1D18;
}


/* ==========================================
   FULL-WIDTH CLOSING BAND
=========================================== */

.vhe-network-closing-band {
  width:100%;
  background:#F1EBDD;
  padding:46px 0 48px;
  margin-top:20px;
  border-top:1px solid rgba(47,62,56,.15);
}

.vhe-network-closing-band .vhe-network-closing {
  max-width:980px;
  margin:0 auto;
  padding:0 24px;
  text-align:center;
}

.vhe-network-closing-band .vhe-network-closing p {
  margin:0 auto !important;
  letter-spacing:.1px;
  color:#2F3E38 !important;
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width:767px) {

  .vhe-network-footer .vhe-network-intro {
    padding:0 14px;
    margin-bottom:42px;
  }

  .vhe-network-footer .vhe-network-rule {
    margin-bottom:40px;
  }

  .vhe-network-footer .vhe-network-column {
    display:block;
  }

  .vhe-network-footer .vhe-network-image,
  .vhe-network-footer .vhe-network-image img {
    height:280px;
  }

  .vhe-network-footer .vhe-network-content {
    padding:28px 27px 32px;
  }

  .vhe-network-closing-band {
    padding:38px 0 40px;
  }

  .vhe-network-closing-band .vhe-network-closing {
    padding:0 24px;
  }

}

/* ==========================================
   LIGHT CARD TEXT OVERRIDE
   MUST STAY AT BOTTOM OF THIS STYLE BLOCK
=========================================== */

footer.vhe-luxury .vhe-network-footer .vhe-network-card,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller {
  background:#F4F0E8 !important;
}


/* CARD CATEGORY */

footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-category,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-category {
  color:#7F1D18 !important;
}


/* CARD HEADINGS */

footer.vhe-luxury .vhe-network-footer .vhe-network-card h3,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller h3 {
  color:#1F2A25 !important;
}


/* CARD BODY COPY */

footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-description,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-description {
  color:#4E5852 !important;
}


/* CARD LINKS */

footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link,
footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link:link,
footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link:visited,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link:link,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link:visited {
  color:#2F3E38 !important;
  font-weight:700 !important;
}


/* LINK ARROWS */

footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link::after,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link::after {
  color:#7F1D18 !important;
}


/* HOVER */

footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link:hover,
footer.vhe-luxury .vhe-network-footer .vhe-network-card .vhe-network-link:focus,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link:hover,
footer.vhe-luxury .vhe-network-footer .vhe-network-card.seller .vhe-network-link:focus {
  color:#7F1D18 !important;
  text-decoration:underline !important;
  text-underline-offset:4px;
}
	  


/* =====================================================================
   9. SITE FOOTER COLORS
   The <footer> tag carries class="vhe-footer"; this section only sets its colors.
===================================================================== */
footer.footer-1.vhe-footer{
  /* ============ EASY SETTINGS — SITE FOOTER ============ */
  --bg:      #1E2B27;    /* deep spruce, a shade darker than the nav green */
  --text:    rgba(237,232,223,.78);
  --heading: #EDE8DF;
  --link:    #CDB497;    /* champagne */
  --rule:    rgba(237,232,223,.18);
  /* ============ END SETTINGS ============ */
  background:var(--bg) !important; color:var(--text) !important;
}
footer.vhe-footer p,
footer.vhe-footer li{color:var(--text) !important;}
footer.vhe-footer strong{color:var(--heading) !important; font-weight:600;}
footer.vhe-footer a,
footer.vhe-footer a:visited{color:var(--link) !important; text-decoration:none !important;}
footer.vhe-footer a:hover,
footer.vhe-footer a:focus{color:#FFFFFF !important; text-decoration:underline !important; text-underline-offset:3px;}
footer.vhe-footer h4,
footer.vhe-footer h6.title{color:var(--heading) !important;}
footer.vhe-footer hr{border:0 !important; border-top:1px solid var(--rule) !important; opacity:1;}

/* back to top button */
footer.vhe-footer a.back-to-top,
footer.vhe-footer a.back-to-top:visited{
  border-color:var(--rule) !important; color:var(--heading) !important; text-decoration:none !important;
}
footer.vhe-footer a.back-to-top:hover{background:var(--link) !important; border-color:var(--link) !important; color:#1E2B27 !important;}


/* =====================================================================
   10. MARKETING EXPERTISE (brochure, three steps, co-listing, brokerage)
===================================================================== */
.vhe-mkt{
  /* ============ EASY SETTINGS — MARKETING EXPERTISE ============ */
  --bg:      #FFFFFF;    /* use #F5F1EA for ivory if the section above is white */
  --ink:     #2B201A;
  --body:    #4A443D;
  --muted:   #8B8178;
  --accent:  #7F1D18;    /* oxblood */
  --olive:   #555430;    /* the co-listing panel */
  --brochure-width: 460px; /* how wide the brochure viewer can grow */
  --space:   clamp(56px, 6vw, 96px);
  /* ============ END SETTINGS ============ */
  background:var(--bg) !important; padding:var(--space) 0 !important; margin:0 !important;
}
.vhe-mkt *{box-sizing:border-box;}
.vhe-mkt__wrap{max-width:1200px; margin:0 auto; padding:0 56px;}
.vhe-mkt__split{display:grid; grid-template-columns:5fr 6fr; gap:24px clamp(40px, 6vw, 96px);}
.vhe-mkt__head{align-items:end; margin-bottom:clamp(44px, 5vw, 64px);}

/* type */
.vhe-mkt p.vhe-mkt__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none; line-height:1.4 !important;
  color:var(--accent) !important;
}
.vhe-mkt h2.vhe-mkt__title{
  margin:0 !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-mkt h3.vhe-mkt__subtitle{
  margin:0 0 16px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(19px, 1.5vw, 22px) !important; line-height:1.3 !important;
  letter-spacing:-.005em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-mkt p.vhe-mkt__lead{
  margin:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-size:16.5px !important; font-weight:400 !important; line-height:1.65 !important;
  color:var(--ink) !important;
}
.vhe-mkt p.vhe-mkt__lead::before{content:""; display:block; width:40px; height:1px; background:var(--accent); margin-bottom:18px;}
.vhe-mkt p.vhe-mkt__text{
  margin:0 0 16px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.85 !important;
  letter-spacing:.01em; color:var(--body) !important;
}
.vhe-mkt p.vhe-mkt__text:last-child{margin-bottom:0 !important;}
.vhe-mkt p.vhe-mkt__text strong{font-weight:500 !important; color:var(--ink) !important;}

/* ---------- 1. the brochure, beside a short introduction ---------- */
.vhe-mkt__feature{align-items:center;}
.vhe-flip{min-width:0; width:100%; max-width:var(--brochure-width); margin:0 auto;}
.vhe-flip-bar{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px 16px; margin:0 0 14px;}
.vhe-mkt button.vhe-flip-btn{
  margin:0 !important; padding:9px 14px !important; border:0 !important; border-radius:0 !important;
  background:var(--accent) !important; color:#fff !important; cursor:pointer;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:600 !important; letter-spacing:.18em !important;
  text-transform:uppercase !important; line-height:1 !important;
  transition:background .25s ease, opacity .25s ease;
}
.vhe-mkt button.vhe-flip-btn:hover{background:#98241D !important;}
.vhe-mkt button.vhe-flip-btn:disabled{opacity:.55; cursor:default; background:var(--accent) !important;}
.vhe-mkt span.vhe-flip-count{
  min-width:110px; text-align:center; line-height:1 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:13.5px !important; font-weight:400 !important; color:var(--body) !important;
}
.vhe-flip-stage{
  position:relative; display:flex; align-items:center; justify-content:center;
  width:100%; aspect-ratio:3 / 2; height:auto; padding:10px; background:#F6F4F0; border:1px solid #E4DED5;
}
.vhe-flip-stage:focus-visible{outline:1px solid var(--accent); outline-offset:4px;}
.vhe-flip-page{display:block; max-width:100%; height:auto; background:#fff; border:1px solid #2B2622; box-shadow:0 14px 30px -18px rgba(28,25,22,.55);}
.vhe-mkt p.vhe-flip-msg{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:24px;
  margin:0 !important; text-align:center;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:13.5px !important; font-weight:300 !important; line-height:1.6 !important; color:var(--muted) !important;
}
.vhe-mkt p.vhe-flip-msg[hidden]{display:none !important;}
.vhe-flip-foot{display:flex; justify-content:center; margin-top:16px;}

/* buttons used in this section */
.vhe-mkt a.vhe-mkt__button,
.vhe-mkt a.vhe-mkt__button:visited{
  display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;
  padding:14px 24px !important; border:1px solid var(--accent) !important; border-radius:0 !important;
  background:var(--accent) !important; color:#FFFFFF !important; text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:600 !important; letter-spacing:.18em; text-transform:uppercase; line-height:1 !important;
  transition:background .25s ease, color .25s ease, border-color .25s ease;
}
.vhe-mkt a.vhe-mkt__button:hover{background:#98241D !important; border-color:#98241D !important;}
.vhe-mkt a:focus-visible{outline:1px solid var(--accent); outline-offset:4px;}

/* ---------- 2. the three steps ---------- */
.vhe-mkt__grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:0 clamp(24px, 3vw, 44px); margin-top:clamp(48px, 5vw, 72px);}
.vhe-mkt__point{padding:24px 0 0; border-top:1px solid rgba(127,29,24,.28);}
.vhe-mkt__point small{
  display:block; margin-bottom:10px;
  font-family:"Playfair Display", Georgia, serif; font-size:15px; font-style:italic; color:var(--accent);
}
.vhe-mkt h3.vhe-mkt__point-title{
  margin:0 0 10px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:21px !important; line-height:1.3 !important; text-transform:none !important; color:var(--ink) !important;
}

/* ---------- 3. co-listing: the highlighted olive panel ---------- */
.vhe-mkt__colist{
  margin-top:clamp(52px, 5.5vw, 80px);
  padding:clamp(36px, 4.5vw, 64px) clamp(26px, 4.5vw, 64px);
  background:var(--olive); color:#F5F1EA;
  display:grid; grid-template-columns:5fr 6fr; gap:24px clamp(32px, 5vw, 80px); align-items:start;
}
.vhe-mkt__colist p.vhe-mkt__eyebrow{color:#CDB497 !important;}
.vhe-mkt__colist h3.vhe-mkt__subtitle{color:#FFFFFF !important; font-size:clamp(24px, 2.2vw, 32px) !important;}
.vhe-mkt__colist p.vhe-mkt__text{color:rgba(245,241,234,.88) !important;}
.vhe-mkt__colist p.vhe-mkt__text strong{color:#FFFFFF !important;}
.vhe-mkt ul.vhe-mkt__offer{margin:6px 0 22px !important; padding:0 !important; list-style:none !important;}
.vhe-mkt ul.vhe-mkt__offer > li{
  margin:0 !important; padding:14px 0 !important; list-style:none !important;
  border-top:1px solid rgba(245,241,234,.22);
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14.5px !important; font-weight:300 !important; line-height:1.7 !important; color:rgba(245,241,234,.88) !important;
}
.vhe-mkt ul.vhe-mkt__offer > li:last-child{border-bottom:1px solid rgba(245,241,234,.22);}
.vhe-mkt ul.vhe-mkt__offer > li::before{content:none !important;}
.vhe-mkt ul.vhe-mkt__offer > li b{
  display:block; margin-bottom:2px;
  font-family:"Playfair Display", Georgia, serif; font-size:18px; font-weight:400; color:#FFFFFF;
}
.vhe-mkt__actions{display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px; margin-top:24px;}
.vhe-mkt__colist a.vhe-mkt__button,
.vhe-mkt__colist a.vhe-mkt__button:visited{background:#F5F1EA !important; border-color:#F5F1EA !important; color:#2B201A !important;}
.vhe-mkt__colist a.vhe-mkt__button:hover{background:transparent !important; color:#FFFFFF !important;}
.vhe-mkt__colist a.vhe-mkt__phone,
.vhe-mkt__colist a.vhe-mkt__phone:visited{
  text-decoration:none !important; white-space:nowrap;
  font-family:"Playfair Display", Georgia, serif !important; font-size:19px !important; color:#FFFFFF !important;
}
.vhe-mkt__colist a:focus-visible{outline-color:#FFFFFF;}
/* the brokerage note, inside the panel's left column */
.vhe-mkt__colist-brokerage{margin-top:28px; padding-top:24px; border-top:1px solid rgba(245,241,234,.22);}
.vhe-mkt__colist h4.vhe-mkt__colist-title{
  margin:0 0 10px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:18px !important; line-height:1.35 !important; text-transform:none !important; letter-spacing:0;
  color:#FFFFFF !important;
}

/* ---------- 4. the brokerage: one quiet line ---------- */
.vhe-mkt__brokerage{
  margin-top:clamp(44px, 4.5vw, 64px); padding-top:28px;
  border-top:1px solid rgba(127,29,24,.28);
  display:grid; grid-template-columns:5fr 6fr; gap:12px clamp(40px, 6vw, 96px); align-items:baseline;
}
.vhe-mkt__brokerage h3.vhe-mkt__subtitle{margin:0 !important; font-size:21px !important;}

@media (max-width:1000px){ .vhe-mkt__grid{grid-template-columns:1fr 1fr; row-gap:28px;} }
@media (max-width:900px){
  .vhe-mkt__wrap{padding:0 28px;}
  .vhe-mkt__split, .vhe-mkt__colist, .vhe-mkt__brokerage{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .vhe-mkt__wrap{padding:0 22px;}
  .vhe-mkt__grid{grid-template-columns:1fr;}
}


/* =====================================================================
   11. HOMEPAGE SECTION HEADINGS (h2): smaller
   Change the last number (28px) to adjust the largest size.
===================================================================== */
.vhe-intro h2.vhe-intro__title,
.vhe-era h2.vhe-era__title,
.vhe-sell h2.vhe-sell__title,
.vhe-sales h2.vhe-sales__title,
.vhe-mkt h2.vhe-mkt__title{
  font-size:clamp(23px, 1.9vw, 28px) !important;
}


/* =====================================================================
   12. PAGE BANNER (a photograph across the top of an interior page)
===================================================================== */
.vhe-banner{
  /* ============ EASY SETTINGS — PAGE BANNER ============ */
  --height:       clamp(300px, 40vh, 440px);
  --photo-focus:  center 45%;   /* which part of the photo stays in view */
  --shade:        .6;           /* darkness behind the words, 0 = none, 1 = black */
  /* ============ END SETTINGS ============ */
  position:relative; overflow:hidden;
  display:flex; align-items:flex-end;
  min-height:var(--height); padding:0 !important; margin:0 !important;
  background:#1E2B27; color:#FFFFFF;
}
.vhe-banner *{box-sizing:border-box;}
.vhe-banner img.vhe-banner__img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none;
  object-fit:cover; object-position:var(--photo-focus); display:block; border:0 !important;
  animation:vheFade 1.4s ease both;
}
/* darkens the lower left, where the words sit */
.vhe-banner::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(0deg, rgba(0,0,0,var(--shade)) 0%, rgba(0,0,0,calc(var(--shade) * .45)) 45%, rgba(0,0,0,.05) 100%),
    linear-gradient(90deg, rgba(0,0,0,calc(var(--shade) * .5)) 0%, rgba(0,0,0,0) 60%);
}
.vhe-banner__wrap{
  position:relative; z-index:1; width:100%;
  max-width:1200px; margin:0 auto; padding:0 56px clamp(36px, 4.5vw, 56px);
  animation:vheRise 1.2s .2s cubic-bezier(.2,.7,.2,1) both;
}
/* small trail of links: Home · Historic Homes · Charlottesville */
.vhe-banner .vhe-banner__trail{
  /* reset any menu-bar styling the theme gives to navigation blocks */
  position:static !important; display:block !important; width:auto !important; height:auto !important; min-height:0 !important;
  margin:0 0 18px !important; padding:0 !important; border:0 !important; box-shadow:none !important;
  background:transparent !important; line-height:1.6 !important; z-index:auto !important;
}
.vhe-banner .vhe-banner__trail ol{margin:0 !important; padding:0 !important; list-style:none !important; display:flex; flex-wrap:wrap; gap:4px 0;}
.vhe-banner .vhe-banner__trail li{
  margin:0 !important; padding:0 !important; list-style:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:500 !important; letter-spacing:.2em; text-transform:uppercase; line-height:1.6 !important;
  color:rgba(255,255,255,.75) !important;
}
.vhe-banner .vhe-banner__trail li::before{content:none !important;}
.vhe-banner .vhe-banner__trail li + li::before{content:"·" !important; margin:0 10px; color:rgba(255,255,255,.5);}
.vhe-banner .vhe-banner__trail a,
.vhe-banner .vhe-banner__trail a:visited{color:rgba(255,255,255,.75) !important; text-decoration:none !important;}
.vhe-banner .vhe-banner__trail a:hover{color:#FFFFFF !important;}
.vhe-banner p.vhe-banner__eyebrow{
  margin:0 0 12px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:16px !important; font-weight:400 !important; line-height:1.4 !important;
  letter-spacing:.01em; text-transform:none; color:#CDB497 !important;
}
.vhe-banner h1.vhe-banner__title{
  margin:0 !important; padding:0 !important; max-width:820px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(32px, 3.4vw, 48px) !important; line-height:1.12 !important;
  letter-spacing:-.01em; text-transform:none !important; color:#FFFFFF !important;
  text-shadow:0 2px 18px rgba(0,0,0,.35);
}
/* no decorative rule under the title */
.vhe-banner__rule{display:none !important;}
/* no stray lines or gaps from the theme around the banner */
section.vhe-banner, section.vhe-banner + section{border:0 !important; margin-top:0 !important; box-shadow:none !important;}
.vhe-banner img.vhe-banner__img{outline:0 !important; box-shadow:none !important;}
.vhe-banner a:focus-visible{outline:1px solid #FFFFFF; outline-offset:4px;}
/* optional photo credit, bottom right of the banner */
.vhe-banner p.vhe-banner__credit{
  position:absolute; z-index:1; right:24px; bottom:16px; max-width:46%; margin:0 !important; text-align:right;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11px !important; font-weight:400 !important; line-height:1.5 !important; letter-spacing:.04em;
  color:rgba(255,255,255,.78) !important; text-shadow:0 1px 8px rgba(0,0,0,.5);
}
@media (max-width:900px){
  .vhe-banner p.vhe-banner__credit{position:relative; right:auto; bottom:auto; max-width:none; text-align:left; margin:14px 0 0 !important;}
}

@media (prefers-reduced-motion:reduce){ .vhe-banner img.vhe-banner__img, .vhe-banner__wrap{animation:none !important;} }
@media (max-width:900px){ .vhe-banner__wrap{padding:0 28px 36px;} }
@media (max-width:560px){ .vhe-banner__wrap{padding:0 22px 30px;} }


/* =====================================================================
   13. BANNER WITH BUTTONS (a taller banner for the Sell page)
   Add "is-feature" to the banner, then a short line and two buttons.
===================================================================== */
.vhe-banner.is-feature{
  /* ============ EASY SETTINGS — SELL PAGE BANNER ============ */
  --height:       clamp(320px, 42vh, 440px);
  --photo-focus:  center 40%;
  --shade:        .66;
  /* ============ END SETTINGS ============ */
}
.vhe-banner.is-feature h1.vhe-banner__title{font-size:clamp(30px, 3vw, 42px) !important; max-width:760px; letter-spacing:.005em;}
.vhe-banner p.vhe-banner__lead{
  margin:20px 0 0 !important; max-width:560px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.8 !important;
  color:rgba(255,255,255,.88) !important; text-shadow:0 1px 10px rgba(0,0,0,.4);
}
.vhe-banner div.vhe-banner__actions{display:flex !important; flex-wrap:wrap; align-items:center; gap:12px 14px; margin-top:30px;}
.vhe-banner a.vhe-banner__button,
.vhe-banner a.vhe-banner__button:visited{
  display:inline-flex; align-items:center; justify-content:center; margin:0 !important;
  padding:14px 22px !important; white-space:nowrap; text-decoration:none !important;
  border:1px solid #7F1D18 !important; border-radius:0 !important; background:#7F1D18 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:10.5px !important; font-weight:600 !important; letter-spacing:.18em; text-transform:uppercase; line-height:1 !important;
  color:#FFFFFF !important; box-shadow:0 10px 26px -14px rgba(0,0,0,.9);
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
}
.vhe-banner a.vhe-banner__button:hover{background:#98241D !important; border-color:#98241D !important; transform:translateY(-1px);}
.vhe-banner a.vhe-banner__button.is-outline,
.vhe-banner a.vhe-banner__button.is-outline:visited{background:rgba(0,0,0,.18) !important; border-color:rgba(255,255,255,.85) !important; box-shadow:none;}
.vhe-banner a.vhe-banner__button.is-outline:hover{background:rgba(255,255,255,.14) !important; border-color:#FFFFFF !important;}
@media (max-width:560px){
  .vhe-banner p.vhe-banner__lead{font-size:15.5px !important;}
  .vhe-banner a.vhe-banner__button{flex:1 1 100%;}
}


/* =====================================================================
   14. ABOUT BRIDGET PAGE, set like a printed folio
   An arched portrait, numbered chapters, hairline rules, quiet type.
   Backgrounds: is-ivory (default), is-stone, is-dark (deep spruce)
===================================================================== */
.vhe-folio{
  /* ============ EASY SETTINGS — ABOUT PAGE ============ */
  --bg:      #F5F1EA;    /* warm ivory */
  --ink:     #2B201A;    /* headings */
  --body:    #57504A;    /* paragraphs */
  --accent:  #7F1D18;    /* oxblood */
  --gold:    #8A6D4B;    /* deep champagne, for small labels on ivory */
  --rule:    rgba(43,32,26,.14);
  --space:   clamp(72px, 8vw, 132px);
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important; border:0 !important;
}
.vhe-folio.is-stone{--bg:#EDE7DE;}
.vhe-folio.is-dark{--bg:#1E2B27; --ink:#F5F1EA; --body:rgba(245,241,234,.9); --accent:#CDB497; --gold:#CDB497; --rule:rgba(205,180,151,.28);}
.vhe-folio *{box-sizing:border-box;}
.vhe-folio__wrap{max-width:1160px; margin:0 auto; padding:0 56px;}
.vhe-folio + .vhe-folio:not(.is-dark):not(.is-stone){padding-top:0 !important;}
.vhe-folio.is-dark + .vhe-folio.is-dark{padding-top:0 !important;}
.vhe-folio.is-dark + .vhe-folio.is-dark .vhe-folio__close{padding-top:clamp(64px, 7vw, 104px); border-top:1px solid var(--rule); max-width:none;}
.vhe-folio.is-dark + .vhe-folio.is-dark .vhe-folio__close > *{max-width:640px; margin-left:auto !important; margin-right:auto !important;}

/* ---------- shared type ---------- */
.vhe-folio p.vhe-folio__kicker{
  margin:0 0 26px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:12px !important; font-weight:400 !important; letter-spacing:.2em; text-transform:uppercase;
  line-height:1.6 !important; color:var(--gold) !important;
}
.vhe-folio h2.vhe-folio__title{
  margin:0 0 26px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(23px, 1.9vw, 28px) !important; line-height:1.32 !important;
  letter-spacing:.005em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-folio p.vhe-folio__lead{
  margin:0 0 20px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-style:normal !important; font-size:16px !important; font-weight:300 !important;
  line-height:1.95 !important; letter-spacing:.01em; color:var(--ink) !important;
}
.vhe-folio p.vhe-folio__text{
  margin:0 0 18px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14.5px !important; font-weight:300 !important; line-height:2 !important;
  letter-spacing:.015em; color:var(--body) !important;
}
.vhe-folio p.vhe-folio__text:last-child{margin-bottom:0 !important;}
.vhe-folio a.vhe-folio__link,
.vhe-folio a.vhe-folio__link:visited{
  display:inline-flex; align-items:center; gap:12px;
  padding-bottom:6px; border-bottom:1px solid var(--accent); text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14px !important; font-weight:300 !important; font-style:normal !important; letter-spacing:.08em; text-transform:none !important; line-height:1.2 !important;
  color:var(--ink) !important; transition:color .3s ease, gap .3s ease;
}
.vhe-folio a.vhe-folio__link::after{content:"\2192"; font-family:"Helvetica Neue", Helvetica, Arial, sans-serif; font-weight:300; letter-spacing:0; font-size:14px;}
.vhe-folio a.vhe-folio__link:hover{color:var(--accent) !important; gap:18px;}
.vhe-folio a:focus-visible{outline:1px solid var(--accent); outline-offset:5px;}

/* ---------- 1. opening: words on the left, arched portrait on the right ---------- */
.vhe-folio.is-opening{padding:clamp(64px, 7vw, 120px) 0 clamp(80px, 9vw, 150px) !important;}
.vhe-folio__opening{display:grid; grid-template-columns:7fr 5fr; gap:56px clamp(56px, 8vw, 128px); align-items:center;}
.vhe-folio h1.vhe-folio__name{
  margin:0 !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(32px, 3vw, 42px) !important; line-height:1.1 !important;
  letter-spacing:.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-folio__opening .vhe-folio__rule{display:block; width:44px; height:1px; background:var(--accent); margin:32px 0 30px;}
.vhe-folio p.vhe-folio__epigraph{
  margin:0 0 26px !important; max-width:520px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-style:normal !important; font-size:clamp(16px, 1.3vw, 18px) !important; font-weight:300 !important;
  line-height:1.95 !important; letter-spacing:.01em; color:var(--ink) !important;
}
.vhe-folio__opening p.vhe-folio__text{max-width:500px;}
.vhe-folio__contact{display:flex; flex-wrap:wrap; align-items:center; gap:18px 36px; margin-top:40px;}
.vhe-folio a.vhe-folio__phone,
.vhe-folio a.vhe-folio__phone:visited{
  text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14.5px !important; font-weight:300 !important; letter-spacing:.14em; color:var(--ink) !important;
  font-variant-numeric:lining-nums;
}
.vhe-folio a.vhe-folio__phone:hover{color:var(--accent) !important;}

/* the arched portrait, like a fanlight window, with a fine outline set just outside it */
.vhe-folio__arch{position:relative; margin:0 !important; padding:0; justify-self:end; width:100%; max-width:400px;}
.vhe-folio__arch::before{
  content:""; position:absolute; inset:-14px; z-index:0; pointer-events:none;
  border:1px solid #CDB497; border-radius:999px 999px 0 0; border-bottom:0;
}
.vhe-folio__arch img{
  position:relative; z-index:1; display:block; width:100%; max-width:none; height:auto;
  aspect-ratio:4 / 5; object-fit:cover; object-position:var(--face, 50% 30%);
  border-radius:999px 999px 0 0; border:0 !important; box-shadow:none !important;
  animation:vheFade 1.6s ease both;
}
.vhe-folio__arch figcaption{
  position:relative; z-index:1; margin-top:30px; text-align:center;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:11.5px !important; font-weight:400; letter-spacing:.18em; text-transform:uppercase; line-height:1.8;
  color:var(--gold) !important;
}

/* ---------- 2. chapters: numeral and label on the left, writing on the right ---------- */
.vhe-folio__chapter{
  display:grid; grid-template-columns:3fr 8fr; gap:32px clamp(48px, 7vw, 112px);
  padding-top:clamp(48px, 5vw, 72px); border-top:1px solid var(--rule);
}
.vhe-folio__side{align-self:start; position:sticky; top:120px;}
.vhe-folio.is-dark .vhe-folio__chapter, .vhe-folio.is-stone .vhe-folio__chapter{border-top:0; padding-top:0;}
.vhe-folio span.vhe-folio__num{
  display:block; margin-bottom:14px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:18px; font-weight:400; letter-spacing:.1em; color:var(--accent);
}
.vhe-folio p.vhe-folio__label{
  margin:0 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:12px !important; font-weight:400 !important; letter-spacing:.18em; text-transform:uppercase;
  line-height:1.8 !important; color:var(--gold) !important;
}
.vhe-folio__body{max-width:700px;}
.vhe-folio__cols{display:grid; grid-template-columns:1fr 1fr; gap:0 48px; margin-top:8px;}
.vhe-folio__note{
  margin-top:36px; padding-top:26px; border-top:1px solid var(--rule);
}
.vhe-folio__note p.vhe-folio__text{font-size:14.5px !important; font-weight:300 !important; color:var(--ink) !important;}

/* ---------- 3. interlude: one sentence alone between rules ---------- */
.vhe-folio__interlude{max-width:760px; margin:0 auto; text-align:center; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:0 28px;}
.vhe-folio__interlude::before, .vhe-folio__interlude::after{content:""; height:1px; background:#CDB497;}
.vhe-folio p.vhe-folio__interlude-text{
  margin:0 !important; max-width:560px;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-style:normal !important; font-size:clamp(16px, 1.3vw, 18px) !important; font-weight:300 !important;
  line-height:1.9 !important; letter-spacing:.02em; color:var(--ink) !important;
}

/* ---------- 4. the three readings of a house ---------- */
.vhe-folio__plates{display:grid; grid-template-columns:repeat(3, 1fr); margin:44px 0 40px; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);}
.vhe-folio__plate{padding:34px 30px 36px;}
.vhe-folio__plate + .vhe-folio__plate{border-left:1px solid var(--rule);}
.vhe-folio__plate:first-child{padding-left:0;}
.vhe-folio__plate:last-child{padding-right:0;}
.vhe-folio__plate p.vhe-folio__label{margin-bottom:14px !important;}
.vhe-folio h3.vhe-folio__plate-title{
  margin:0 0 14px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important; font-size:18px !important; line-height:1.35 !important;
  text-transform:none !important; letter-spacing:.005em; color:var(--ink) !important;
}
.vhe-folio__plate p.vhe-folio__text{font-size:14px !important; line-height:1.9 !important;}

/* ---------- 5. closing invitation ---------- */
.vhe-folio__close{max-width:640px; margin:0 auto; text-align:center;}
.vhe-folio__close h2.vhe-folio__title{font-size:clamp(26px, 2.2vw, 32px) !important;}
.vhe-folio__close p.vhe-folio__text{max-width:520px; margin:0 auto !important;}
.vhe-folio__close .vhe-folio__contact{justify-content:center;}
.vhe-folio a.vhe-folio__button,
.vhe-folio a.vhe-folio__button:visited{
  display:inline-flex; align-items:center; justify-content:center; margin:0 !important;
  padding:15px 32px !important; border:1px solid #CDB497 !important; border-radius:0 !important;
  background:transparent !important; color:#F5F1EA !important; text-decoration:none !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14px !important; font-weight:300 !important; font-style:normal !important; letter-spacing:.08em; text-transform:none !important; line-height:1.2 !important;
  transition:background .3s ease, color .3s ease;
}
.vhe-folio a.vhe-folio__button:hover{background:#CDB497 !important; color:#1E2B27 !important;}
.vhe-folio.is-dark a.vhe-folio__link, .vhe-folio.is-dark a.vhe-folio__link:visited{border-color:#CDB497;}

/* ---------- smaller screens ---------- */
@media (max-width:980px){
  .vhe-folio__wrap{padding-left:32px; padding-right:32px;}
  .vhe-folio__opening{grid-template-columns:1fr;}
  .vhe-folio__arch{justify-self:start; max-width:300px; margin:14px 0 0 14px !important; order:-1;}
  .vhe-folio__chapter{grid-template-columns:1fr; gap:22px;}
  .vhe-folio__side{position:static; display:flex; align-items:baseline; gap:16px;}
  .vhe-folio span.vhe-folio__num{margin:0;}
  .vhe-folio__plates{grid-template-columns:1fr;}
  .vhe-folio__plate{padding:30px 0;}
  .vhe-folio__plate + .vhe-folio__plate{border-left:0; border-top:1px solid var(--rule);}
}
@media (max-width:640px){
  .vhe-folio__wrap{padding-left:22px; padding-right:22px;}
  .vhe-folio__cols{grid-template-columns:1fr;}
  .vhe-folio__interlude{grid-template-columns:1fr; gap:22px;}
  .vhe-folio__interlude::before, .vhe-folio__interlude::after{width:40px; margin:0 auto;}
}
@media (prefers-reduced-motion:reduce){ .vhe-folio__arch img{animation:none !important;} }

/* text on the deep spruce: a touch larger and brighter, for easy reading */
.vhe-folio.is-dark p.vhe-folio__text{font-size:15px !important; font-weight:400 !important;}


/* =====================================================================
   15. PANORAMIC PHOTO WITH TEXT, AND RELATED PAGES
   For the era, county and property-type pages.
   Backgrounds: ivory (default), is-white, is-stone
===================================================================== */
.vhe-pano, .vhe-related{
  /* ============ EASY SETTINGS ============ */
  --bg:      #F5F1EA;
  --ink:     #2B201A;
  --body:    #4A443D;
  --accent:  #7F1D18;
  --space:   clamp(56px, 6vw, 96px);
  --pano-height: 200px;          /* height of the panoramic photo */
  --pano-focus:  center 30%;     /* which part of the photo stays in view */
  /* ============ END SETTINGS ============ */
  background:var(--bg); padding:var(--space) 0 !important; margin:0 !important; border:0 !important;
}
.vhe-pano.is-white, .vhe-related.is-white{--bg:#FFFFFF;}
.vhe-pano.is-stone, .vhe-related.is-stone{--bg:#EDE7DE;}
.vhe-pano *, .vhe-related *{box-sizing:border-box;}
.vhe-pano__wrap, .vhe-related__wrap{max-width:1200px; margin:0 auto; padding:0 56px;}

.vhe-pano p.vhe-pano__eyebrow, .vhe-related p.vhe-related__eyebrow{
  margin:0 0 14px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:italic !important; font-size:15.5px !important; font-weight:400 !important;
  letter-spacing:.01em; text-transform:none !important; line-height:1.4 !important; color:var(--accent) !important;
}
.vhe-pano h2.vhe-pano__title, .vhe-related h2.vhe-related__title{
  margin:0 0 26px !important; padding:0 !important; max-width:860px;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important;
  font-size:clamp(26px, 2.3vw, 34px) !important; line-height:1.2 !important;
  letter-spacing:-.01em; text-transform:none !important; color:var(--ink) !important;
}
.vhe-pano img.vhe-pano__img{
  display:block; width:100%; max-width:none; height:var(--pano-height);
  object-fit:cover; object-position:var(--pano-focus); border:0 !important; box-shadow:none !important;
}
.vhe-pano__body{max-width:780px; margin-top:clamp(32px, 3.5vw, 44px);}
.vhe-pano h3.vhe-pano__subtitle{
  margin:0 0 18px !important; padding:0 !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-style:normal !important; font-weight:400 !important; font-size:clamp(20px, 1.6vw, 24px) !important;
  line-height:1.35 !important; text-transform:none !important; color:var(--ink) !important;
}
.vhe-pano p.vhe-pano__text, .vhe-related p.vhe-related__text{
  margin:0 0 16px !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:15px !important; font-weight:300 !important; line-height:1.9 !important;
  letter-spacing:.01em; color:var(--body) !important;
}
.vhe-pano p.vhe-pano__text:last-child{margin-bottom:0 !important;}

/* related pages: two columns of links */
.vhe-related p.vhe-related__text{max-width:760px; margin-bottom:clamp(30px, 3.5vw, 44px) !important;}
.vhe-related__list{display:grid; grid-template-columns:1fr 1fr; gap:0 clamp(40px, 6vw, 96px); margin:0 !important; padding:0 !important; list-style:none !important;}
.vhe-related__list li{margin:0 !important; padding:22px 0 !important; list-style:none !important; border-top:1px solid rgba(43,32,26,.14);}
.vhe-related__list li::before{content:none !important;}
.vhe-related a.vhe-related__link,
.vhe-related a.vhe-related__link:visited{
  display:inline-flex; align-items:baseline; gap:10px; text-decoration:none !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:19px !important; font-weight:400 !important; line-height:1.4 !important; color:var(--ink) !important;
  transition:color .25s ease, gap .25s ease;
}
.vhe-related a.vhe-related__link::after{content:"\2192"; font-family:"Helvetica Neue", Helvetica, Arial, sans-serif; font-weight:300; font-size:15px; color:var(--accent);}
.vhe-related a.vhe-related__link:hover{color:var(--accent) !important; gap:16px;}
.vhe-related p.vhe-related__desc{
  margin:6px 0 0 !important;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size:14.5px !important; font-weight:300 !important; line-height:1.8 !important; color:var(--body) !important;
}

@media (max-width:900px){
  .vhe-pano__wrap, .vhe-related__wrap{padding:0 28px;}
  .vhe-related__list{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .vhe-pano__wrap, .vhe-related__wrap{padding:0 22px;}
  .vhe-pano{--pano-height:130px;}
}
