:root{--wine:#a51141;--wine-d:#7d0c31;--ink:#241a1d;--paper:#f6f0e6;--line:rgba(36,26,29,.2)}
img{max-width:100%;height:auto}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{font-family:'Public Sans',sans-serif;color:var(--ink);background:var(--paper);font-size:1.02rem;line-height:1.65}
h1,h2,h3,.serif{font-family:'Young Serif',serif;font-weight:400;line-height:1.12;color:var(--ink)}
h2{font-size:clamp(1.9rem,4vw,2.8rem);margin-bottom:1rem}
a{color:var(--wine)}
.sc{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--wine)}
.navbar{background:var(--paper);border-bottom:1px solid var(--line);padding:.45rem 0}
.navbar-brand{display:flex;align-items:center;gap:.6rem;font-family:'Young Serif',serif;color:var(--ink);font-size:1.15rem;line-height:1.05}
.navbar-brand img{width:44px;height:44px}
.navbar-brand small{display:block;font-family:'Public Sans',sans-serif;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--wine);font-weight:600}
.nav-link{color:var(--ink);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.nav-link:hover{color:var(--wine)}
.btn{border-radius:2px;font-weight:600;letter-spacing:.06em;font-size:.82rem;text-transform:uppercase;padding:.7rem 1.4rem}
.btn-wine{background:var(--wine);color:#fff;border:1px solid var(--wine)}
.btn-wine:hover{background:var(--wine-d);color:#fff}
.btn-line{border:1px solid var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff}
.hero{padding:2.5rem 0 3rem;border-bottom:1px solid var(--line)}
.hero h1{font-size:clamp(2.3rem,5.2vw,4rem);margin:.6rem 0 1rem}
.hero h1 em{color:var(--wine);font-style:normal}
.hero .lead{max-width:34rem;font-size:1.1rem}
.hero-photo{width:100%;aspect-ratio:3/2;max-height:min(66vh,480px);object-fit:cover;object-position:60% 50%;border-radius:3px;display:block}
.decl{border:1px solid var(--ink);margin-top:-2.2rem;margin-left:1rem;margin-right:1rem;background:var(--paper);position:relative}
.decl div{display:flex;justify-content:space-between;gap:1rem;padding:.45rem .9rem;border-bottom:1px solid var(--line);font-size:.86rem}
.decl div:last-child{border:0}
.decl span:first-child{letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:600;color:var(--wine);align-self:center}
.decl b{font-weight:600;text-align:right}
.quick{background:var(--ink);color:var(--paper)}
.quick a{display:block;padding:1.1rem 1rem;color:var(--paper);text-decoration:none;border-right:1px solid rgba(255,255,255,.15);height:100%}
.quick .col-6:last-child a,.quick .col-lg-3:last-child a{border-right:0}
.quick a:hover{background:var(--wine)}
.quick b{display:block;font-family:'Young Serif',serif;font-weight:400;font-size:1.2rem}
.quick small{letter-spacing:.14em;text-transform:uppercase;font-size:.66rem;opacity:.75}
section{padding:4.5rem 0}
.rule{border-top:1px solid var(--ink);padding-top:1.2rem}
.prod{border-top:3px solid var(--wine);background:#fff;padding:1.4rem;height:100%}
.prod .n{font-family:'Young Serif',serif;color:var(--wine);font-size:2.2rem;line-height:1}
.prod h3{font-size:1.4rem;margin:.6rem 0 .4rem}
.prod ul{padding-left:1.1rem;margin:0;font-size:.94rem}
.tiles img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px;display:block}
.tiles figcaption{margin-top:.5rem}
.wine-band{background:var(--wine);color:#fff}
.wine-band h2,.wine-band .sc{color:#fff}
.wine-band a{color:#fff}
.num{font-family:'Young Serif',serif;font-size:clamp(4rem,12vw,8rem);line-height:.9;color:var(--wine)}
.about-logo{width:100%;max-width:360px}
.badges img{height:70px;width:auto}
.q{border-left:3px solid var(--wine);padding:.3rem 0 .3rem 1.1rem;margin:0 0 1.6rem}
.q p{margin:0 0 .3rem;font-size:1.02rem}
.q cite{font-style:normal;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:600;color:var(--wine)}
.phones{width:100%;border-collapse:collapse;font-size:.95rem}
.phones td{padding:.4rem 0;border-bottom:1px solid var(--line)}
.phones td:last-child{text-align:right;font-weight:600}
.phones a{text-decoration:none;color:var(--ink)}
.map iframe{width:100%;height:340px;border:0;filter:saturate(.8)}
footer{background:var(--ink);color:#d9d0d2;padding:3rem 0 1.5rem;font-size:.92rem}
footer a{color:#fff}
footer img{width:64px;height:64px}
@media(max-width:991px){.decl{margin-top:1rem;margin-left:0;margin-right:0}.quick a{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}section{padding:3.2rem 0}}
