:root{--vn-red:#791e2d;--vn-green:#183c32;--vn-ivory:#fbf5eb;--vn-gold:#eac990;--vn-ink:#252920;color:var(--vn-ink);background:var(--vn-ivory);font-family:Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:2px solid #be7d35;outline-offset:4px}
.vn-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:20px clamp(16px,5vw,70px);border-bottom:1px solid #dbcdb9;background:var(--vn-ivory)}
.vn-header>a,.vn-footer a{text-decoration:none}
.vn-brand{display:grid;text-align:center;gap:4px;font:28px Georgia,serif;letter-spacing:.17em}
.vn-brand small{font:9px Arial,sans-serif;letter-spacing:.25em}
.vn-back,.vn-cart{font-size:13px}.vn-cart{justify-self:end}
.vn-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);background:var(--vn-green);color:var(--vn-ivory)}
.vn-intro{align-self:center;padding:clamp(36px,7vw,112px) clamp(22px,6vw,100px)}
.vn-eyebrow{font-size:11px;font-weight:bold;letter-spacing:.22em;line-height:1.5;margin:0 0 16px}
.vn-intro .vn-eyebrow,.vn-intro em{color:var(--vn-gold)}
.vn-intro h1,.vn-catalog h2{font:400 clamp(46px,6.4vw,105px)/.96 Georgia,serif;letter-spacing:-.045em;margin:0}
.vn-intro p:not(.vn-eyebrow){font-size:clamp(15px,1.3vw,20px);line-height:1.55;max-width:34ch;margin:24px 0}
.vn-cta{display:inline-block;background:var(--vn-red);color:white;text-decoration:none;border:1px solid #c18178;padding:13px 20px;font-weight:bold;font-size:14px}
.vn-hero-media{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:var(--vn-gold);min-height:100%}
.vn-hero-media img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.vn-catalog{max-width:1510px;margin:auto;padding:clamp(42px,7vw,100px) clamp(14px,4vw,64px);text-align:center;scroll-margin-top:15px}
.vn-catalog .vn-eyebrow{color:var(--vn-red)}
.vn-catalog h2{font-size:clamp(38px,5vw,76px)}
.vn-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:24px 0 34px}
.vn-filters a,.vn-more{color:var(--vn-green);border:1px solid #c9bba6;background:transparent;padding:9px 14px;text-decoration:none;font-size:13px;cursor:pointer}
.vn-filters a[aria-current],.vn-filters a:hover,.vn-more:hover{color:white;background:var(--vn-green);border-color:var(--vn-green)}
.vn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 16px;text-align:left}
.vn-card a{display:block;text-decoration:none}.vn-card a:hover h3{text-decoration:underline}
.vn-card img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;background:#f0ebe3}
.vn-card h3{font:400 clamp(15px,1.5vw,21px)/1.2 Georgia,serif;margin:11px 0 7px}
.vn-card p{font-size:14px;color:var(--vn-red);margin:0}
.vn-pagination,.vn-more{margin-top:30px}.vn-pagination span{display:inline-block;padding:4px}
.vn-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px clamp(16px,5vw,70px);background:var(--vn-green);color:var(--vn-ivory)}
.vn-footer nav{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}
@media(max-width:900px){.vn-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:660px){.vn-hero{grid-template-columns:1fr}.vn-hero-media img{height:235px}.vn-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 10px}.vn-footer{align-items:flex-start;flex-direction:column}.vn-brand{font-size:23px}.vn-header{gap:6px}.vn-back,.vn-cart{font-size:11px}}

.vn-topline{margin:0;padding:10px 16px;background:var(--vn-green);color:white;text-align:center;font-size:13px;letter-spacing:.04em}
.vn-header{grid-template-columns:auto 1fr auto;background:white;padding-block:24px}
.vn-header nav{display:flex;gap:clamp(12px,2vw,30px);margin-inline-start:14px;font-size:14px}
.vn-header nav a{text-decoration:none}.vn-header nav a:hover{text-decoration:underline}
.vn-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(520px,62vw,710px);overflow:hidden}
.vn-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#160e0bec 0%,#1c100ca0 37%,#23170b19 75%)}
.vn-hero-media{position:absolute;z-index:-2;inset:0 0 0 22%;display:block;min-height:0;background:var(--vn-green)}
.vn-hero-media img{height:100%;object-position:center 12%}
.vn-intro{width:min(100%,800px);padding-inline:clamp(24px,5vw,78px)}
.vn-intro h1{font:700 clamp(52px,8vw,106px)/.98 Georgia,serif}
.vn-intro p:not(.vn-eyebrow){max-width:38ch}
.vn-cta{display:inline-flex;gap:14px;align-items:center;border-radius:3px}
.vn-service{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-evenly;text-align:center;background:#fffaf3;border-bottom:1px solid #e3d9cb;padding:22px 18px}
.vn-service a{display:grid;gap:6px;text-decoration:none;font-size:13px}
.vn-service span{color:#59594f;font-size:12px}.vn-service a:hover strong{text-decoration:underline}
.vn-highlight{display:grid;grid-template-columns:1fr 1fr;max-width:1250px;margin:clamp(46px,7vw,94px) auto;padding-inline:clamp(15px,4vw,48px)}
.vn-highlight-media{display:block;min-height:0;background:#e3d9cb;overflow:hidden}
.vn-highlight-media img{display:block;width:100%;height:100%;max-height:520px;aspect-ratio:1/1;object-fit:cover}
.vn-highlight-copy{align-content:center;padding:clamp(24px,5vw,72px);background:#f1e8d9}
.vn-highlight-copy h2,.vn-edits h2{font:400 clamp(34px,5vw,66px)/1.03 Georgia,serif;letter-spacing:-.035em;margin:0}
.vn-highlight-copy p:not(.vn-eyebrow){max-width:37ch;margin:20px 0 24px;line-height:1.6}
.vn-highlight-copy .vn-eyebrow,.vn-edits .vn-eyebrow{color:var(--vn-red)}
.vn-edits{max-width:1250px;margin:auto;padding:0 clamp(15px,4vw,48px) 40px;text-align:center}
.vn-edits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.vn-edits-grid a{display:block;background:white;text-decoration:none;text-align:left}
.vn-edits-grid a>span{display:flex;justify-content:space-between;gap:6px;padding:14px;font-size:14px;font-weight:bold}
.vn-edits-grid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.vn-edits-grid a:hover>span{text-decoration:underline}
@media(max-width:660px){
  .vn-header{gap:10px;grid-template-columns:auto 1fr auto;padding-block:15px}
  .vn-header nav{justify-content:center;gap:10px;margin:0;font-size:11px}
  .vn-hero{align-items:end;min-height:520px}
  .vn-hero::after{background:linear-gradient(0deg,#1a100aee 0%,#21140f94 43%,#21140f14 79%)}
  .vn-hero-media{inset:0}
  .vn-hero-media img{object-position:center 25%}
  .vn-service a{min-width:40%}
  .vn-highlight{grid-template-columns:1fr}
  .vn-highlight-media img{max-height:340px}
  .vn-edits-grid{gap:6px}
  .vn-edits-grid a>span{padding:8px;font-size:12px}
}
