:root{--primary-color:#192e5c;--hover-color:#192e5c;--green-light:#aa0a23;--green-mid:#a90b23;--green-dark:#264653;--text-dark:#1b1c1d;--text-medium:#4b4f54;--text-light:#718096;--white:#fff;--bg-light:#f9fafa;--bg-light-alt:#f2f4f5;--border-light:rgba(42,157,143,.15);--shadow-light:0 1px 2px rgba(0,0,0,.04);--shadow-medium:0 2px 4px rgba(0,0,0,.05);--shadow-green:0 1px 4px rgba(42,157,143,.08);--shadow-card:0 1px 3px rgba(0,0,0,.03);--focus-color:#007bff;--base-padding:1.5rem;--base-spacing:.875rem;--max-width:1280px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--font-xs:.7rem;--font-xs-plus:.7625rem;--font-sm:.825rem;--font-sm-plus:.8875rem;--font-base:.95rem;--font-md:1.075rem;--font-lg:1.2rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-heading:1.3;--line-height-subheading:1.4;--line-height-body:1.8;--line-height-small:1.7;--letter-spacing-tight:-.01em;--letter-spacing-normal:.015em;--letter-spacing-wide:.03em;--letter-spacing-half-wide:.015em;--transition-base:200ms ease;--table-tb-mobile:calc(var(--base-spacing)*.59375);--aside-table-desktop-lr:calc(var(--base-spacing)*1.35);--gradient-header: linear-gradient(135deg, #b22234 0%, #3c3b6e 100%);--gradient-aside-header:linear-gradient(to right,#1a2533,#2c3e50);--gradient-footer:linear-gradient(to bottom,#1a2533,#2c3e50)}
html{scroll-behavior:smooth;font-size:100%;height:100%}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:var(--font-base);font-weight:400;line-height:var(--line-height-body);background:var(--bg-light);color:var(--text-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;letter-spacing:var(--letter-spacing-normal);position:relative;overflow-x:hidden;overflow-wrap:anywhere;word-break:normal}
*,:before,:after{margin:0;padding:0;box-sizing:border-box}
img,iframe,embed,object{max-width:100%;height:auto;display:block}
img{aspect-ratio:auto}
.vi-content img{height:auto}
.vi-header{width:100%;background:var(--gradient-header);color:var(--white);box-shadow:var(--shadow-light);border-bottom:1px solid var(--border-light);z-index:1000;position:relative;transition:box-shadow var(--transition-base)}
.vi-header:hover{box-shadow:0 2px 6px rgba(42,157,143,.15)}
.vi-header-content{max-width:var(--max-width);margin:0 auto;padding:calc(var(--base-spacing)*.6) var(--base-padding);display:flex;align-items:center;justify-content:space-between;height:auto;overflow-wrap:anywhere;word-break:normal}
.vi-logo{font-size:clamp(1.35rem,.75vw + 1.05rem,1.6rem);font-weight:700;line-height:1.2;letter-spacing:var(--letter-spacing-tight);color:var(--white);padding:calc(var(--base-spacing)*.5) 0;text-transform:uppercase;text-decoration:none;border-bottom:none;transition:transform var(--transition-base),opacity var(--transition-base);will-change:transform}
.vi-logo:hover,.vi-logo:focus{transform:scale(1.02);opacity:0.95;color:var(--white);text-decoration:none;border-bottom:none}
.vi-desktop-nav{display:none}
.vi-desktop-nav ul{list-style:none;display:flex;gap:calc(var(--base-spacing)*1);margin:0;padding:0}
.vi-desktop-nav li{margin:0}
.vi-desktop-nav a,.vi-mobile-nav a{font-weight:600;line-height:var(--line-height-small);color:var(--white);letter-spacing:var(--letter-spacing-normal);text-transform:capitalize;border-radius:var(--radius-sm);position:relative;will-change:transform,color,background}
.vi-desktop-nav a{font-size:var(--font-base);padding:calc(var(--base-spacing)*.625) calc(var(--base-spacing)*1);transition:color var(--transition-base),background var(--transition-base)}
.vi-desktop-nav a:hover,.vi-desktop-nav a:focus{color:var(--hover-color);background:rgba(42,157,143,.06)}
.vi-desktop-nav a:after,.vi-mobile-nav a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--hover-color);transform:scaleX(0);transform-origin:bottom right;transition:transform var(--transition-base)}
.vi-desktop-nav a:hover:after,.vi-desktop-nav a:focus:after,.vi-mobile-nav a:hover:after,.vi-mobile-nav a:focus:after{transform:scaleX(1);transform-origin:bottom left}
.vi-mobile-nav a{font-size:var(--font-md);padding:calc(var(--base-spacing)*.625) calc(var(--base-spacing)*1);transition:color var(--transition-base),background-color var(--transition-base)}
.vi-mobile-nav a:hover,.vi-mobile-nav a:focus{color:var(--hover-color);background-color:rgba(42,157,143,.06)}
.vi-menu-icon{font-size:clamp(1.3rem,.75vw + .95rem,1.4rem);color:var(--white);cursor:pointer;transition:opacity var(--transition-base);padding:calc(var(--base-spacing)*.5) 0;line-height:1.2;display:block}
.vi-menu-icon:hover,.vi-menu-icon:focus{opacity:.9}
#vi-menu-toggle{display:none}
.vi-mobile-nav{max-width:700px;margin:0 auto;max-height:0;opacity:0;overflow-y:hidden;background:linear-gradient(135deg,var(--green-light),var(--green-mid));width:100%;transition:max-height .3s ease-in-out,opacity .2s ease-in-out}
#vi-menu-toggle:checked+.vi-mobile-nav{max-height:80vh;opacity:1;overflow-y:auto}
.vi-mobile-nav ul{list-style:none;padding:calc(var(--base-spacing)*.75);margin:0}
.vi-mobile-nav li{margin:calc(var(--base-spacing)*1.25) 0}
a{text-decoration:none;color:var(--primary-color);font-weight:600;letter-spacing:var(--letter-spacing-normal);border-bottom:2px solid transparent;padding-bottom:1px;will-change:transform,color,border-bottom;transition:color 150ms ease,transform 150ms ease,border-bottom 150ms ease}
a:hover,a:focus{color:var(--hover-color);transform:scale(1.02);border-bottom:2px solid var(--hover-color)}
:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}
h1,h2,h3,p,li,span,div,article{overflow-wrap:anywhere;word-break:normal}
.vi-hero{width:100%;background:linear-gradient(to bottom,#f0f4f8,var(--bg-light));color:var(--text-dark);border-bottom:1px solid var(--border-light);box-shadow:0 1px 3px rgba(0,0,0,.03)}
.vi-hero:has(.vi-hero-text){padding:calc(var(--base-spacing)*.625) 0}
.vi-hero:has(h1,h2){padding:calc(var(--base-spacing)*1) 0}
.vi-hero-content{max-width:var(--max-width);margin:0 auto;padding:calc(var(--base-spacing)*.625) var(--base-padding);text-align:left;display:flex;flex-direction:column;justify-content:center;overflow-wrap:anywhere;word-break:normal}
.vi-breadcrumbs{font-size:var(--font-sm-plus);font-weight:500;line-height:var(--line-height-small);letter-spacing:var(--letter-spacing-normal);color:var(--text-light);padding:calc(var(--base-spacing)*.0625) 0;margin:1px 0;display:inline-flex;flex-wrap:wrap;position:relative}
.vi-breadcrumbs a,.vi-breadcrumbs span{padding:0 .25rem;font-size:var(--font-sm-plus);font-weight:500;color:var(--text-medium)}
.vi-breadcrumb-separator{padding:0 .25rem;margin:0;color:var(--text-light);font-weight:400;opacity:.7}
.vi-breadcrumbs input[type="checkbox"]{display:none}
.vi-breadcrumbs label{display:none;color:var(--green-mid);font-size:var(--font-sm-plus);font-weight:500;cursor:pointer;padding:calc(var(--base-spacing)*.375) calc(var(--base-padding)*.5);background:rgba(42,157,143,.1);border-radius:2px;letter-spacing:var(--letter-spacing-normal)}
.vi-breadcrumbs a{border-radius:2px;padding-bottom:1px;will-change:transform,color,border-bottom;transition:color 150ms ease,opacity 150ms ease,background 150ms ease,border-bottom 150ms ease}
.vi-breadcrumbs a:hover,.vi-breadcrumbs a:focus{color:var(--primary-color);opacity:.95;background:rgba(42,157,143,.05);border-bottom:1px solid var(--primary-color);padding-bottom:0}
.vi-hero-content h1{font-size:clamp(1.75rem,1.5vw + 1.2rem,2.1rem);font-weight:700;line-height:var(--line-height-heading);color:var(--text-dark);letter-spacing:-.015em;margin:0 auto;text-align:center}
.vi-hero-text{padding:calc(var(--base-spacing)*1.25);background:rgba(255,255,255,.97);border-radius:3px;box-shadow:var(--shadow-medium);max-width:800px;margin:calc(var(--base-spacing)*1.25) auto;text-align:center}
.vi-hero-text h1{font-size:clamp(1.65rem,1.25vw + 1rem,1.9rem);font-weight:700;line-height:var(--line-height-heading);color:var(--text-dark);letter-spacing:-.015em;margin:0;padding:calc(var(--base-spacing)*1.25) 0}
.vi-hero-text h2{font-size:clamp(1.4rem,1vw + .95rem,1.65rem);font-weight:700;line-height:var(--line-height-subheading);color:var(--green-mid);letter-spacing:-.012em;margin:0 0 1rem;position:relative}
.vi-hero-text h2:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);width:60px;height:2px;background:linear-gradient(to right,var(--green-mid),var(--green-dark));border-radius:2px;opacity:.9}
.vi-hero-text p{font-size:var(--font-base);font-weight:400;line-height:var(--line-height-body);color:var(--text-medium);max-width:700px;margin:1rem auto;letter-spacing:var(--letter-spacing-normal)}
.vi-content{width:100%;max-width:var(--max-width);margin:calc(var(--base-spacing)*.75) auto 4rem;padding:var(--base-padding);background:var(--bg-light)}
.vi-content-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:2rem;width:100%;max-width:100%;align-items:start}
.vi-content-grid .vi-full-width{grid-column:1/-1}
.vi-content-grid:has(.vi-full-width){grid-template-columns:minmax(0,1fr)}
.vi-content-grid article,.vi-content-grid aside{max-width:100%;width:100%;margin:calc(var(--base-spacing)*1.25) 0}
.vi-content-grid article.vi-full-width{margin:0;align-self:start}
.vi-content-grid article.vi-full-width>:first-child{margin-top:0}
aside::before{content:none}
.vi-village-meta{margin:2rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:calc(var(--base-spacing)*.875);padding:calc(var(--base-spacing)*.25);background:rgba(42,157,143,.02);border-radius:3px;border:1px solid var(--border-light);box-shadow:none;transition:background var(--transition-base)}
.vi-village-meta:hover{background:rgba(42,157,143,.04)}
.vi-meta-item{padding:calc(var(--base-spacing)*.25);background:var(--white);border-radius:3px;border:1px solid var(--border-light);display:grid;grid-template-columns:40% 60%;align-items:center}
.vi-meta-key{font-size:var(--font-sm);font-weight:600;line-height:var(--line-height-small);letter-spacing:var(--letter-spacing-wide);color:var(--text-medium);text-transform:uppercase;position:relative}
.vi-meta-key::after{content:":";color:var(--green-mid);font-weight:700;position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:14px;text-align:center}
.vi-meta-value{font-size:var(--font-base);font-weight:600;line-height:var(--line-height-small);letter-spacing:var(--letter-spacing-normal);color:var(--primary-color);padding-left:12px}
.vi-content article h1{font-size:clamp(1.75rem,1.5vw + 1.2rem,2.1rem);font-weight:700;line-height:var(--line-height-heading);margin:0 0 calc(var(--base-spacing)*1.25);color:var(--text-dark);letter-spacing:-.015em;text-align:left}
.vi-content article h2{font-size:clamp(1.4rem,1vw + .95rem,1.75rem);font-weight:700;line-height:var(--line-height-subheading);margin:2rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-light);color:var(--green-mid);letter-spacing:-.012em;position:relative}
.vi-content article h2:after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--green-mid);border-radius:2px}
.vi-content article h3,aside h3{font-weight:700;line-height:var(--line-height-subheading);color:var(--text-dark);letter-spacing:var(--letter-spacing-tight);background:linear-gradient(to right,rgba(42,157,143,.08),transparent 80%);border-radius:var(--radius-sm);position:relative;font-size:clamp(1.2rem,.75vw + .95rem,1.4rem);margin:2rem 0 .75rem;padding:.375rem .75rem .375rem .5rem}
.vi-content article h3::before,aside h3::before{content:"";position:absolute;left:0;top:0;width:3x;height:100%;background:var(--green-mid);border-radius:2px}
.vi-content article h2+h3{margin-top:1rem}
.vi-content article p{font-size:var(--font-base);font-weight:400;line-height:var(--line-height-body);margin:1rem 0;text-align:left;letter-spacing:var(--letter-spacing-normal);color:var(--text-dark)}
.vi-content article ul,.vi-content article ol,aside ul,aside ol{margin:1.5rem 0;padding-left:calc(var(--base-spacing)*0.75);list-style:none}
.vi-content article ul li,.vi-content article ol li,aside ul li,aside ol li{position:relative;margin-bottom:.375rem;line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-normal);color:var(--text-dark);padding-left:calc(var(--base-spacing)*1)}
.vi-content article ul li,.vi-content article ol li{font-size:var(--font-base)}
aside ul li,aside ol li{font-size:var(--font-sm)}
.vi-content article ul li::before,aside ul li::before{content:"";position:absolute;left:0;top:.65rem;width:6px;height:6px;background:var(--green-mid);opacity:.7;border-radius:50%}
.vi-content article ul li:hover::before,aside ul li:hover::before{background:var(--hover-color)}
.vi-content article ol,aside ol{counter-reset:list-counter}
.vi-content article ol li,aside ol li{counter-increment:list-counter}
.vi-content article ol li::before,aside ol li::before{content:counter(list-counter) ".";position:absolute;left:0;color:var(--green-mid);font-weight:600}
.vi-content article ol li:hover::before,aside ol li:hover::before{color:var(--hover-color)}
.vi-content img{max-width:100%;width:clamp(50%,80%,100%);margin:2rem auto;border-radius:3px;box-shadow:var(--shadow-green);aspect-ratio:16/9}
.google-maps{width:100%;aspect-ratio:16/9;position:relative;border-radius:3px;margin:2rem 0 1rem;border:1px solid var(--border-light);height:0;padding-bottom:56.25%;isolation:isolate}
.google-maps:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);border-radius:3px;z-index:10}
.google-maps iframe{width:100%;height:100%;position:absolute;top:0;left:0;border:0;max-height:500px}
.vi-map-foot{font-size:var(--font-sm);font-weight:400;line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-normal);color:var(--text-light);margin:1rem 0 2rem;font-style:italic;text-align:center}
.vi-quick-info-wrapper{overflow-x:auto;position:relative;margin-bottom:2rem}
.vi-quick-info{width:100%;table-layout:fixed;min-width:100%;border-radius:4px;background:#fefefe;border-collapse:separate;border-spacing:0;font-size:var(--font-base);border:1px solid var(--border-light);transition:background 200ms ease}
.vi-quick-info thead,.vi-quick-info tbody,.vi-quick-info tr{width:100%}
.vi-quick-info th,.vi-quick-info td{box-sizing:border-box;word-break:normal;overflow-wrap:anywhere;white-space:normal}
.vi-content p+.vi-quick-info{margin-top:1rem}
article .vi-quick-info{border-radius:4px;background:rgba(249,250,251,.98);width:100%;transition:background 200ms ease;position:relative}
article .vi-quick-info::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,rgba(42,157,143,.02),transparent);z-index:0;pointer-events:none}
article .vi-quick-info thead tr{background:var(--gradient-header)}
article .vi-quick-info th{padding:calc(var(--base-spacing)*.75) calc(var(--base-spacing)*.5);border-bottom:1px solid rgba(255,255,255,.15);color:var(--white);font-weight:700;letter-spacing:var(--letter-spacing-wide);font-size:var(--font-sm);text-transform:uppercase;position:relative;text-align:left}
article .vi-quick-info th:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:60%;background:rgba(255,255,255,.2)}
article .vi-quick-info td{padding:calc(var(--base-spacing)*.75) calc(var(--base-spacing)*.5);background:#fff;border-bottom:1px solid rgba(42,157,143,.08);border-right:1px solid rgba(42,157,143,.08);font-size:calc(var(--font-base) - .03125rem);font-weight:400;letter-spacing:var(--letter-spacing-normal);color:var(--text-dark);position:relative;transition:background 200ms ease}
article .vi-quick-info td:last-child{border-right:none}
article .vi-quick-info td.break-all{word-break:break-all}
article .vi-quick-info td a{font-size:var(--font-base);border-bottom:2px solid transparent;padding-bottom:1px;will-change:transform,color,border-bottom;transition:color 150ms ease,transform 150ms ease,border-bottom 150ms ease}
article .vi-quick-info td a:hover,article .vi-quick-info td a:focus{color:var(--hover-color);transform:scale(1.02);border-bottom:2px solid var(--hover-color)}
article .vi-quick-info.vi-quick-info--striped tbody tr:nth-child(odd) td{background:rgba(250,253,253,.98)}
article .vi-quick-info.vi-quick-info--striped tbody tr:nth-child(even) td{background:#fff}
article .vi-quick-info.vi-quick-info--striped tbody tr:hover td{background:rgba(240,246,245,.98)}
aside .vi-quick-info{box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:4px;background:#f9fbfc;width:100%;margin-bottom:2rem;transition:background 200ms ease}
aside .vi-quick-info thead tr{background:var(--gradient-aside-header)}
aside .vi-quick-info th,aside .vi-quick-info th.title{padding:calc(var(--base-spacing)*.75) var(--aside-table-desktop-lr);color:var(--white);border:none;font-size:var(--font-base);font-weight:700;letter-spacing:var(--letter-spacing-wide);text-align:left}
aside .vi-quick-info tbody tr{background:#f9fbfc}
aside .vi-quick-info tbody tr:hover{background:#f0f6f5}
aside .vi-quick-info td{padding:calc(var(--base-spacing)*.75) var(--aside-table-desktop-lr);border-bottom:1px solid rgba(42,157,143,.12);font-size:var(--font-base);font-weight:400;letter-spacing:var(--letter-spacing-normal);color:var(--text-dark);position:relative;transition:background 200ms ease}
aside .vi-quick-info td.break-all{word-break:break-all}
aside .vi-quick-info a{font-weight:600;padding:calc(var(--base-spacing)*.25) 0;border-bottom:2px solid transparent;padding-bottom:1px;will-change:transform,color,border-bottom;transition:color 150ms ease,transform 150ms ease,border-bottom 150ms ease}
aside .vi-quick-info a:hover,aside .vi-quick-info a:focus{color:var(--hover-color);transform:scale(1.02);border-bottom:2px solid var(--hover-color)}
.tab{margin:2rem 0;padding:calc(var(--base-spacing)*.75);display:grid;grid-template-columns:repeat(2,1fr);gap:calc(var(--base-spacing)*.875);background:var(--bg-light-alt);border-radius:2px;border:1px solid var(--border-light);box-shadow:var(--shadow-card);overflow-wrap:anywhere;word-break:normal;transition:background var(--transition-base)}
.tab span{padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.5);font-size:var(--font-base);font-weight:600;line-height:1.5;letter-spacing:var(--letter-spacing-normal);vertical-align:top;white-space:normal}
.tab span a{margin-left:calc(var(--base-spacing)*.125);padding:0;font-weight:600;text-align:left;color:var(--primary-color);border-bottom:2px solid transparent;padding-bottom:1px;will-change:transform,color,border-bottom;transition:color 150ms ease,transform 150ms ease,border-bottom 150ms ease}
.tab span a:hover,.tab span a:focus{color:var(--hover-color);transform:scale(1.02);border-bottom:2px solid var(--hover-color)}
.vi-faqs{margin:1.5rem 0;padding:calc(var(--base-spacing)*.75);border:1px solid var(--border-light);border-radius:3px;box-shadow:var(--shadow-card);position:relative;overflow-wrap:anywhere;word-break:normal;width:100%;transition:background var(--transition-base)}
.vi-faqs:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,rgba(42,157,143,0),rgba(42,157,143,.1) 10%,rgba(42,157,143,.1) 90%,rgba(42,157,143,0));opacity:.2}
.vi-faqs dl{margin:0;padding:0;display:flex;flex-direction:column;gap:calc(var(--base-spacing)*.5)}
.vi-faqs dt{font-size:var(--font-base);font-weight:600;color:var(--text-dark);padding:calc(var(--base-spacing)*.5) 0 calc(var(--base-spacing)*.25) calc(var(--base-spacing)*1);line-height:1.6;letter-spacing:var(--letter-spacing-normal);position:relative;transition:color 150ms ease}
.vi-faqs dt:hover{color:var(--green-mid)}
.vi-faqs dt::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:16px;background:linear-gradient(to bottom,var(--primary-color),var(--green-dark));opacity:.8;border-radius:1px}
.vi-faqs dd{font-size:var(--font-base);font-weight:400;color:var(--text-medium);padding:0 0 calc(var(--base-spacing)*.5) calc(var(--base-spacing)*1);margin:0 0 1rem;line-height:1.7;letter-spacing:var(--letter-spacing-normal)}
.vi-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.viw-7{width:7%}.viw-8{width:8%}.viw-10{width:10%}.viw-11{width:11%}.viw-12{width:12%}.viw-15{width:15%}.viw-20{width:20%}.viw-25{width:25%}.viw-30{width:30%}.viw-32{width:32%}.viw-33{width:33.33%}.viw-35{width:35%}.viw-39{width:39%}.viw-40{width:40%}.viw-50{width:50%}.viw-60{width:60%}.viw-70{width:70%}.viw-75{width:75%}.viw-80{width:80%}.viw-90{width:90%}.viw-100{width:100%}
.vi-footer{width:100%;background:var(--gradient-footer);color:#e2e8f0;padding:calc(var(--base-spacing)*1.375) 0;box-shadow:var(--shadow-green);border-top:1px solid rgba(255,255,255,.08);margin-top:auto;transition:box-shadow var(--transition-base)}
.vi-footer:hover{box-shadow:0 -2px 6px rgba(42,157,143,.15)}
.vi-footer-container{max-width:var(--max-width);margin:0 auto;padding:calc(var(--base-spacing)*1.75);overflow-wrap:anywhere;word-break:normal}
.vi-footer-nav{display:flex;flex-wrap:wrap;gap:calc(var(--base-spacing)*.5) calc(var(--base-spacing)*1);margin:0 0 calc(var(--base-spacing)*.5);padding-bottom:calc(var(--base-spacing)*.5);justify-content:flex-start}
.vi-footer-nav a{font-size:var(--font-base);font-weight:600;line-height:var(--line-height-small);color:#e2e8f0;letter-spacing:var(--letter-spacing-normal);padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.75);text-transform:capitalize;border-radius:var(--radius-sm);transition:color 150ms ease,opacity 150ms ease,background 150ms ease}
.vi-footer-nav a:first-child{padding-left:0}
.vi-footer-nav a:hover,.vi-footer-nav a:focus{color:var(--hover-color);opacity:.95;background:rgba(42,157,143,.06)}
.vi-footer-copy{font-size:var(--font-sm);font-weight:400;line-height:1.7;opacity:.95;text-align:left;letter-spacing:.02em;color:#e2e8f0;margin:0;padding:calc(var(--base-spacing)*.5) 0}
.vi-footer-note-wrapper{margin:calc(var(--base-spacing)*.5) 0 0;border-top:1px solid rgba(255,255,255,.08)}
.vi-footer-note{font-size:var(--font-xs);font-weight:400;line-height:var(--line-height-body);color:#cbd5e0;text-align:left;letter-spacing:var(--letter-spacing-normal);margin-bottom:0;padding-top:calc(var(--base-spacing)*.25)}
@media (hover:none){.vi-footer-nav a,.vi-breadcrumbs a,.vi-quick-info a,.tab span a{padding:calc(var(--base-spacing)*.75);padding-bottom:1px}}
@media (max-width:480px){.vi-header-content{padding:calc(var(--base-spacing)*.6) calc(var(--base-padding)*.5)}
.vi-logo{font-size:1.4rem}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*.5)}
.vi-breadcrumbs{font-size:var(--font-xs-plus);padding:calc(var(--base-spacing)*.0625) 0;margin:1px 0;line-height:1.7;display:inline-flex;flex-wrap:wrap}
.vi-breadcrumbs a,.vi-breadcrumbs span{padding:0 .25rem;font-size:var(--font-xs-plus)}
.vi-breadcrumb-separator{padding:0 .25rem}
.vi-mobile-nav ul{padding:calc(var(--base-spacing)*.5)}
.vi-mobile-nav li{margin:calc(var(--base-spacing)*.5) 0}
.vi-mobile-nav a{padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.75);font-size:var(--font-base)}
.vi-content{padding:calc(var(--base-padding)*.5);margin:calc(var(--base-spacing)*.5) auto 3rem}
.vi-content-grid{gap:2rem}
.vi-content-grid article,.vi-content-grid aside,.vi-content-grid article.vi-full-width{margin:0 0 calc(var(--base-spacing)*1.25) 0;align-self:start}
.vi-village-meta{margin:1.5rem 0;padding:calc(var(--base-spacing)*.25);grid-template-columns:1fr;gap:calc(var(--base-spacing)*.5)}
.vi-meta-item{padding:calc(var(--base-spacing)*.25);border:1px solid var(--border-light)}
.vi-meta-key{font-size:var(--font-xs);padding-left:calc(var(--base-spacing)*.375)}
.vi-meta-value{font-size:var(--font-sm);padding-left:10px}
.vi-content article h1{font-size:clamp(1.55rem,1vw + .95rem,1.75rem);margin:0 0 calc(var(--base-spacing)*1)}
.vi-content article h2{font-size:clamp(1.3rem,.75vw + .825rem,1.4rem);margin:1.5rem 0 .75rem;padding-bottom:calc(var(--base-spacing)*.375)}
.vi-content article h3,aside h3{font-size:clamp(1.075rem,.5vw + .825rem,1.2rem);margin:1.5rem 0 .5rem;padding:calc(var(--base-spacing)*.25) calc(var(--base-spacing)*.5)}
.vi-content article h3::before,aside h3::before{left:0;width:3px}
.vi-content article p{line-height:1.7;margin:1rem 0}
.vi-content article ul,.vi-content article ol,aside ul,aside ol{margin:1.25rem 0;padding-left:calc(var(--base-spacing)*1)}
.vi-content article ul li,.vi-content article ol li,aside ul li,aside ol li{margin-bottom:calc(var(--base-spacing)*.375);line-height:1.7}
article .vi-quick-info th,article .vi-quick-info td,aside .vi-quick-info th,aside .vi-quick-info th.title,aside .vi-quick-info td{padding:var(--table-tb-mobile) calc(var(--base-spacing)*.3515625);font-size:.79rem;letter-spacing:var(--letter-spacing-half-wide)}
article .vi-quick-info td a,aside .vi-quick-info td a{font-size:.81rem}
aside .vi-quick-info{margin-bottom:2rem}
.tab{margin:1.5rem 0;padding:calc(var(--base-spacing)*.75);gap:calc(var(--base-spacing)*.875)}
.tab span{padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.3515625);font-size:var(--font-sm)}
.tab span a{font-size:var(--font-sm);margin-left:calc(var(--base-spacing)*.125);padding:0;padding-bottom:1px}
.vi-faqs{margin:1rem 0;padding:calc(var(--base-spacing)*.5);gap:calc(var(--base-spacing)*.375)}
.vi-faqs:before{left:0}
.vi-faqs dl{gap:calc(var(--base-spacing)*.375)}
.vi-faqs dt{font-size:var(--font-base);padding:calc(var(--base-spacing)*.375) 0 calc(var(--base-spacing)*.2) calc(var(--base-spacing)*.75);line-height:1.5}
.vi-faqs dt::before{left:0;width:3px;height:12px;border-radius:.5px}
.vi-faqs dd{font-size:var(--font-base);padding:0 0 calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.75);margin:0 0 calc(var(--base-spacing)*.75);line-height:1.6}
.vi-content img,.google-maps{margin:1.5rem 0 .75rem}
.vi-map-foot{margin:1rem 0 1.5rem}
.vi-footer-container{padding:calc(var(--base-spacing)*1)}
.vi-footer-nav{gap:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.75);margin:0 0 calc(var(--base-spacing)*.375);padding-bottom:calc(var(--base-spacing)*.375)}
.vi-footer-nav a{padding:calc(var(--base-spacing)*.25) calc(var(--base-spacing)*.5)}
.vi-footer-copy{padding:calc(var(--base-spacing)*.375) 0}
.vi-footer-note-wrapper{margin:calc(var(--base-spacing)*.375) 0 0}
.vi-footer-note{padding-top:calc(var(--base-spacing)*.25)}}
@media (max-width:768px){.vi-hero:has(.vi-hero-text){padding:calc(var(--base-spacing)*.375) 0}
.vi-hero:has(h1,h2){padding:calc(var(--base-spacing)*1) 0}
.vi-header-content{padding:calc(var(--base-spacing)*.6) calc(var(--base-padding)*.5)}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*.5)}
.vi-breadcrumbs{display:inline-flex;flex-wrap:wrap;padding:calc(var(--base-spacing)*.0625) 0;margin:1px 0;line-height:1.7;max-width:100%}
.vi-breadcrumbs label{display:inline-block}
.vi-breadcrumbs a,.vi-breadcrumbs span{padding:0 .25rem}
.vi-breadcrumb-separator{padding:0 .25rem}
.vi-breadcrumbs input[type="checkbox"]:checked~a,.vi-breadcrumbs input[type="checkbox"]:checked~.vi-breadcrumb-separator{padding:calc(var(--base-spacing)*.375) calc(var(--base-padding)*.5)}
.vi-breadcrumbs input[type="checkbox"]:checked~span{display:block;margin-top:calc(var(--base-spacing)*.5);padding:calc(var(--base-spacing)*.375) calc(var(--base-padding)*.5);background:var(--bg-light-alt);border-radius:2px}
.vi-footer-note-wrapper{display:none}
.vi-mobile-nav ul{padding:calc(var(--base-spacing)*.75)}
.vi-content{padding:calc(var(--base-padding)*.5);margin:calc(var(--base-spacing)*.5) auto 3rem}
.vi-content-grid{gap:2rem}
.vi-content-grid article,.vi-content-grid aside,.vi-content-grid article.vi-full-width{margin:0 0 calc(var(--base-spacing)*1.25) 0;align-self:start}
.vi-footer-container{padding:calc(var(--base-spacing)*1)}
.vi-footer-nav,.vi-footer-copy,.vi-footer-note-wrapper{margin:0 0 calc(var(--base-spacing)*.375);padding-bottom:calc(var(--base-spacing)*.375)}
.vi-footer-note{padding-top:calc(var(--base-spacing)*.25)}
.vi-quick-info-wrapper{overflow-x:auto}
article .vi-quick-info th,article .vi-quick-info td,aside .vi-quick-info th,aside .vi-quick-info th.title,aside .vi-quick-info td{padding:var(--table-tb-mobile) calc(var(--base-spacing)*.3515625);font-size:.79rem;letter-spacing:var(--letter-spacing-half-wide)}
article .vi-quick-info td a,aside .vi-quick-info td a{font-size:.81rem}
aside .vi-quick-info{margin-bottom:2rem}
.vi-content article h2{font-size:clamp(1.3rem,.75vw + .825rem,1.55rem)}
.vi-content article h3,aside h3{font-size:clamp(1.075rem,.5vw + .825rem,1.3rem)}
.tab span{padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.3515625)}}
@media (min-width:769px) and (max-width:999px){.vi-logo{font-size:1.5rem}
.vi-header-content{padding:calc(var(--base-spacing)*.6) calc(var(--base-padding)*1)}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*1)}
.vi-breadcrumbs{padding:calc(var(--base-spacing)*.0625) 0;margin:1px 0;display:inline-flex;flex-wrap:wrap}
.vi-breadcrumb-separator{padding:0 .25rem}
.vi-mobile-nav ul{padding:calc(var(--base-spacing)*.875)}
.vi-hero:has(.vi-hero-text){padding:calc(var(--base-spacing)*.375) 0}
.vi-hero:has(h1,h2){padding:calc(var(--base-spacing)*1) 0}
.vi-hero-text{padding:calc(var(--base-spacing)*.875)}
.tab{grid-template-columns:repeat(2,1fr);gap:calc(var(--base-spacing)*.875)}
.tab span{padding:calc(var(--base-spacing)*.375) calc(var(--base-spacing)*.125)}
.vi-content{padding:calc(var(--base-padding)*.875);margin:calc(var(--base-spacing)*.5) auto 3rem}
.vi-content-grid{gap:2rem}
.vi-content-grid article,.vi-content-grid aside,.vi-content-grid article.vi-full-width{margin:0 0 calc(var(--base-spacing)*1.25) 0;align-self:start}
.vi-footer-note-wrapper{display:none}
.vi-breadcrumbs label{display:none}
.vi-breadcrumbs a,.vi-breadcrumbs .vi-breadcrumb-separator{display:inline-block}
.vi-footer-container{padding:calc(var(--base-spacing)*1.75)}
article .vi-quick-info th,article .vi-quick-info td{padding:var(--table-tb-mobile) calc(var(--base-spacing)*.125);font-size:.79rem;letter-spacing:var(--letter-spacing-half-wide)}
article .vi-quick-info td a{font-size:.93rem}
aside .vi-quick-info th,aside .vi-quick-info th.title,aside .vi-quick-info td{padding:var(--table-tb-mobile) calc(var(--base-spacing)*.75);font-size:.79rem;letter-spacing:var(--letter-spacing-half-wide)}
aside .vi-quick-info td a{font-size:.93rem}
aside .vi-quick-info{margin-bottom:2rem}}
@media (min-width:1000px){.vi-desktop-nav{display:block}
.vi-menu-icon,.vi-mobile-nav{display:none}
.vi-content-grid{grid-template-columns:minmax(0,70%) minmax(0,30%);gap:2.5rem}
.vi-content-grid article,.vi-content-grid aside,.vi-content-grid article.vi-full-width{margin:0;align-self:start}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*1.333)}
.vi-hero:has(.vi-hero-text),.vi-hero:has(h1,h2){padding:calc(var(--base-spacing)*.625) 0}
.vi-hero-text{padding:calc(var(--base-spacing)*1.25)}
.vi-content{padding:calc(var(--base-padding)*1.333);margin:calc(var(--base-spacing)*.75) auto 3rem}
.vi-village-meta{margin:2rem 0;padding:calc(var(--base-spacing)*.25);gap:calc(var(--base-spacing)*.875)}
.tab{grid-template-columns:repeat(3,1fr);gap:calc(var(--base-spacing)*.875)}
.vi-faqs:before{left:0}
article .vi-quick-info th,article .vi-quick-info td{padding:calc(var(--base-spacing)*.75) calc(var(--base-spacing)*.75)}
article .vi-quick-info td{font-size:calc(var(--font-base) - .03125rem)}
article .vi-quick-info td a{font-size:var(--font-base)}
aside .vi-quick-info th,aside .vi-quick-info th.title,aside .vi-quick-info td{padding:calc(var(--base-spacing)*.75) calc(var(--base-spacing)*1)}
.vi-content article h3::before,aside h3::before{left:0}
.vi-breadcrumbs a,.vi-breadcrumbs span{font-weight:400}
.vi-faqs{padding:calc(var(--base-spacing)*.75)}}
@media (min-width:1440px){.vi-header-content{padding:calc(var(--base-spacing)*.6) calc(var(--base-padding)*1.5)}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*1.5)}
.vi-content{padding:calc(var(--base-padding)*1.5);margin:calc(var(--base-spacing)*.75) auto 3rem}
.vi-footer-container{padding:calc(var(--base-spacing)*1.75)}}
@media (min-width:1600px){.vi-header-content{padding:calc(var(--base-spacing)*.6) calc(var(--base-padding)*1.667)}
.vi-hero-content{padding:calc(var(--base-spacing)*.625) calc(var(--base-padding)*1.667)}
.vi-content{padding:calc(var(--base-padding)*1.667);margin:calc(var(--base-spacing)*.75) auto 3rem}
.vi-footer-container{padding:calc(var(--base-spacing)*1.75)}}