:root,:root[data-theme]{--color-base-100:#f5f0e6;--color-base-200:#ebe3d3;--color-base-300:#d6cab3;--color-base-content:#1a1f27;--color-primary:#c8963e;--color-primary-content:#14202f;--color-accent:#9e2b25;--color-accent-content:#fff;--color-neutral:#14202f;--color-neutral-content:#f5f0e6;--radius-box:.375rem;--radius-field:.375rem;--radius-selector:.375rem;--font-display:"Big Shoulders Display",system-ui,sans-serif;--font-sans:"Source Sans 3",system-ui,sans-serif;--ink-soft:#4a4f57;--step--1:clamp(.875rem,.86rem + .1vw,.94rem);--step-0:clamp(1.0625rem,1rem + .2vw,1.15rem);--step-1:clamp(1.25rem,1.15rem + .5vw,1.5rem);--step-2:clamp(1.6rem,1.35rem + 1.2vw,2.1rem);--step-3:clamp(2.1rem,1.6rem + 2.2vw,3rem);--step-4:clamp(2.6rem,1.8rem + 3.6vw,4.2rem);--step-5:clamp(3.2rem,2rem + 6vw,6.5rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--section:clamp(3.5rem,2.5rem + 4vw,6rem);--container:72rem;--measure:62ch}
body{font-family:var(--font-sans);font-size:var(--step-0);line-height:1.55;background:var(--color-base-100);color:var(--color-base-content);overflow-wrap:break-word}
h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:1;letter-spacing:.01em;text-transform:uppercase}
.vb-wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--sp-5)}
.vb-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:48px;padding:0 var(--sp-5);border-radius:var(--radius-field);font-weight:700;font-size:var(--step-0);text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.vb-btn svg{width:1.15em;height:1.15em}
.vb-btn--main{background:var(--color-primary);color:var(--color-primary-content)}
.vb-btn--main:hover{background:#dcaa52}
.vb-btn--ghost{border:2px solid currentColor;color:inherit}
.vb-btn--ghost:hover{background:rgba(245,240,230,.12)}
:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}
.vb-head{position:sticky;top:0;z-index:40;background:var(--color-neutral);color:var(--color-neutral-content);border-bottom:3px solid var(--color-primary)}
.vb-head .vb-wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);min-height:60px}
.vb-logo{font-family:var(--font-display);font-weight:800;font-size:var(--step-1);text-transform:uppercase;letter-spacing:.04em;color:inherit;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:var(--sp-2)}
.vb-logo svg{width:1.1em;height:1.1em;color:var(--color-primary)}
.vb-nav{display:none;gap:var(--sp-6)}
.vb-nav a{color:inherit;text-decoration:none;font-weight:600}
.vb-nav a:hover{color:var(--color-primary)}
.vb-head .vb-btn{min-height:44px;padding:0 var(--sp-4)}
@media (min-width:768px){.vb-nav{display:flex}}
.vb-hero{position:relative;min-height:min(88svh,46rem);display:flex;align-items:flex-end;color:#fff;background:var(--color-neutral);overflow:hidden}
.vb-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vb-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,18,28,.92) 0%,rgba(10,18,28,.6) 45%,rgba(10,18,28,.1) 80%)}
.vb-hero .vb-wrap{position:relative;z-index:1;padding-block:var(--sp-8) var(--sp-7)}
.vb-kicker{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:700;font-size:var(--step--1);text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);margin-bottom:var(--sp-3)}
.vb-kicker svg{width:1.1em;height:1.1em}
.vb-hero h1{font-size:var(--step-5);max-width:12ch}
.vb-hero p{font-size:var(--step-1);max-width:34ch;margin-top:var(--sp-4);color:#f1ece2}
.vb-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-6)}
.vb-stars{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-5);font-weight:600;color:#f1ece2}
.vb-stars span{display:inline-flex;color:var(--color-primary)}
.vb-stars svg{width:1.1em;height:1.1em;fill:currentColor}
.vb-sec{padding-block:var(--section)}
.vb-label{font-weight:700;font-size:var(--step--1);text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent);margin-bottom:var(--sp-2)}
.vb-sec h2{font-size:var(--step-4);margin-bottom:var(--sp-4)}
.vb-lead{max-width:var(--measure);color:var(--ink-soft);font-size:var(--step-1);line-height:1.45}
.vb-cuts{display:grid;gap:var(--sp-5);margin-top:var(--sp-7)}
.vb-cut{background:#fff;border-radius:var(--radius-box);overflow:hidden;border:1px solid var(--color-base-300)}
.vb-cut img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.vb-cut div{padding:var(--sp-5)}
.vb-cut h3{font-size:var(--step-2);margin-bottom:var(--sp-2)}
.vb-cut p{color:var(--ink-soft)}
@media (min-width:768px){.vb-cuts{grid-template-columns:repeat(3,1fr)}}
.vb-revs{background:var(--color-neutral);color:var(--color-neutral-content)}
.vb-revs .vb-label{color:var(--color-primary)}
.vb-revs-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--sp-5)}
.vb-score{display:flex;align-items:baseline;gap:var(--sp-3)}
.vb-score b{font-family:var(--font-display);font-size:var(--step-5);font-weight:800;line-height:1;color:var(--color-primary)}
.vb-score span{color:#d9d2c4}
.vb-quotes{display:grid;gap:var(--sp-5);margin-top:var(--sp-7)}
.vb-q{border-left:3px solid var(--color-primary);padding:var(--sp-2) 0 var(--sp-2) var(--sp-5)}
.vb-q blockquote{font-size:var(--step-1);line-height:1.4;color:#fff}
.vb-q figcaption{margin-top:var(--sp-3);color:#d9d2c4;font-size:var(--step--1);font-weight:600;text-transform:uppercase;letter-spacing:.08em}
@media (min-width:768px){.vb-quotes{grid-template-columns:repeat(2,1fr);gap:var(--sp-7) var(--sp-8)}}
.vb-revs-link{margin-top:var(--sp-7)}
.vb-revs .vb-btn--ghost{color:var(--color-neutral-content)}
.vb-visit{display:grid;gap:var(--sp-7);align-items:start}
.vb-addr{display:flex;gap:var(--sp-3);font-size:var(--step-1);font-weight:600;line-height:1.35;margin-top:var(--sp-5)}
.vb-addr svg{flex:none;width:1.3em;height:1.3em;color:var(--color-accent);margin-top:.1em}
.vb-note{margin-top:var(--sp-4);color:var(--ink-soft);max-width:var(--measure)}
.vb-visit .vb-actions .vb-btn--ghost{color:var(--color-base-content)}
.vb-map{width:100%;aspect-ratio:4/3;border:0;border-radius:var(--radius-box)}
@media (min-width:900px){.vb-visit{grid-template-columns:1fr 1.2fr}}
.vb-contact{background:var(--color-base-200)}
.vb-form{margin-top:var(--sp-6);max-width:44rem}
.vb-form .input,.vb-form .textarea{background:#fff;font-size:1rem}
.vb-form .btn{background:var(--color-neutral);color:var(--color-neutral-content);border:0;min-height:48px}
.vb-form .btn:hover{background:#22344b}
.vb-foot{background:var(--color-neutral);color:#d9d2c4;padding-block:var(--sp-7)}
.vb-foot .vb-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-5)}
.vb-foot strong{font-family:var(--font-display);font-size:var(--step-2);text-transform:uppercase;color:var(--color-neutral-content);display:block;margin-bottom:var(--sp-2)}
.vb-foot a{color:var(--color-neutral-content)}
.vb-foot nav{display:flex;gap:var(--sp-5);align-items:flex-end}
.vb-legal{padding-block:var(--section)}
.vb-legal h1{font-size:var(--step-4);margin-bottom:var(--sp-6)}
.legal{max-width:65ch}
.ginta-legal-text h2{font-size:var(--step-2);margin:var(--sp-6) 0 var(--sp-3)}
.ginta-legal-text p{margin-bottom:var(--sp-4);color:var(--ink-soft)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}