:root{
  --paper:#fff0d3;
  --paper-light:#fff7e6;
  --paper-deep:#f1cf99;
  --wine:#86231d;
  --wine-dark:#5f1511;
  --wine-soft:#9a3028;
  --gold:#bd8331;
  --gold-light:#e6bd6d;
  --brown:#3f2415;
  --text:#482817;
  --muted:#74523b;
  --line:rgba(151,70,35,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  font-family:Palatino,"Palatino Linotype",Georgia,"Times New Roman",serif;
  line-height:1.58;
  background:
    radial-gradient(circle at 50% -18%,#fff2d6 0,#ead8bd 45%,#d8c7ad 100%);
}
a{color:inherit}
.page{
  width:min(1240px,100%);
  margin:0 auto;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 8%,rgba(255,249,232,.95),rgba(255,239,207,.92) 42%,rgba(242,215,174,.92) 100%),
    linear-gradient(180deg,var(--paper-light),var(--paper));
  box-shadow:0 18px 90px rgba(71,43,24,.24);
}
.page:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.48),transparent 30%),
    radial-gradient(circle at 80% 22%,rgba(191,128,55,.12),transparent 36%);
}
.corner{
  position:absolute;
  z-index:9;
  width:78px;height:78px;
  color:rgba(134,35,29,.7);
  pointer-events:none;
}
.corner:before{
  content:"❧";
  position:absolute;
  font-size:34px;
  line-height:1;
  font-family:Georgia,serif;
}
.corner:after{
  content:"";
  position:absolute;
  width:66px;height:66px;
  border-color:rgba(134,35,29,.35);
  border-style:solid;
}
.corner.tl{top:13px;left:13px}.corner.tl:before{top:0;left:0;transform:rotate(-90deg)}.corner.tl:after{top:10px;left:18px;border-width:1px 0 0 1px;border-radius:14px 0 0 0}
.corner.tr{top:13px;right:13px}.corner.tr:before{top:0;right:0;transform:rotate(0)}.corner.tr:after{top:10px;right:18px;border-width:1px 1px 0 0;border-radius:0 14px 0 0}
.corner.bl{bottom:13px;left:13px}.corner.bl:before{bottom:0;left:0;transform:rotate(180deg)}.corner.bl:after{bottom:10px;left:18px;border-width:0 0 1px 1px;border-radius:0 0 0 14px}
.corner.br{bottom:13px;right:13px}.corner.br:before{bottom:0;right:0;transform:rotate(90deg)}.corner.br:after{bottom:10px;right:18px;border-width:0 1px 1px 0;border-radius:0 0 14px 0}
.container{width:min(1110px,calc(100% - 58px));margin:auto;position:relative;z-index:2}
.topbar{
  position:sticky;top:0;z-index:20;
  background:rgba(255,239,210,.92);
  backdrop-filter:blur(12px);
  box-shadow:0 1px 0 rgba(136,59,31,.14),0 10px 28px rgba(82,44,22,.05);
}
.nav{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:42px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--wine);flex:0 0 auto}
.logo img{width:50px;height:auto;filter:sepia(.22) saturate(1.04) contrast(.98)}
.logoText{display:flex;flex-direction:column;line-height:1.05}.logoText strong{font-family:Georgia,"Times New Roman",serif;font-size:20px;letter-spacing:2.8px;text-transform:uppercase;color:var(--wine);font-weight:700}.logoText span{font-family:"Times New Roman",Georgia,serif;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:#6a3d28;font-weight:700}
.menu{display:flex;gap:34px;align-items:center;margin-left:auto}
.menu a{
  font-family:"Times New Roman",Georgia,serif;
  font-weight:700;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.9px;
  color:#5c3421;
  text-decoration:none;
  padding:12px 0 8px;
  border-bottom:2px solid transparent;
  text-shadow:0 1px 0 rgba(255,255,255,.55);
}
.menu a:hover,.menu a.active{color:var(--wine);border-color:var(--wine)}
.burger{display:none;background:none;border:0;font-size:32px;color:var(--wine)}
.hero{
  display:grid;
  grid-template-columns:36% 64%;
  min-height:500px;
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(134,35,29,.11),inset 0 -1px 0 rgba(134,35,29,.11);
}
.heroText{
  padding:62px 18px 52px 62px;
  display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(90deg,rgba(255,245,224,.98),rgba(255,237,198,.76));
  position:relative;z-index:2;
}
.hero h1{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--wine);
  font-size:70px;
  line-height:.99;
  margin:0 0 20px;
  font-weight:700;
  letter-spacing:-1.4px;
  text-shadow:0 2px 0 rgba(255,255,255,.55);
}
.hero p{max-width:390px;font-size:19px;margin:0 0 18px;color:#4f3020}
.ornament{color:var(--gold);font-size:29px;margin:2px 0 22px;font-family:Georgia,serif;letter-spacing:1px}
.ornament:before,.ornament:after{content:"";display:inline-block;width:44px;border-top:1px solid var(--gold);vertical-align:middle;margin:0 10px 0 0}.ornament:after{margin:0 0 0 10px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 28px;border:2px solid var(--wine);text-decoration:none;text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.75px;color:var(--wine);background:rgba(255,246,225,.7);box-shadow:0 3px 0 rgba(89,26,16,.06);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}
.btn.primary{background:linear-gradient(180deg,var(--wine-soft),var(--wine-dark));color:#fff;border-color:var(--wine-dark)}
.btn:hover{transform:translateY(-1px);background:#fff1d4;border-color:#a53a2f;box-shadow:0 8px 22px rgba(100,36,20,.12)}
.btn.primary:hover{background:linear-gradient(180deg,#a2382e,#6f1914);color:#fff}
.heroImage{position:relative;background:url('../img/hero.jpg') center 48%/cover no-repeat;filter:saturate(1.14) sepia(.03) contrast(1.07)}
.heroImage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0cf 0%,rgba(255,240,207,.56) 14%,rgba(255,240,207,.13) 38%,rgba(255,240,207,0) 76%)}
.heroImage:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 45%,transparent 0 50%,rgba(87,39,17,.10) 100%)}
.infoBand{position:relative;z-index:3;background:#741b17;color:#fff;padding:44px 0;box-shadow:inset 0 1px 0 rgba(255,221,162,.22),inset 0 -1px 0 rgba(66,14,10,.52)}
.infoGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.infoItem{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:flex-start;text-align:center;padding:0 44px;min-height:138px;position:relative}.infoItem:not(:last-child):after{content:"";position:absolute;right:0;top:16px;bottom:16px;width:1px;background:rgba(255,219,164,.24)}.icon{font-family:Georgia,serif;font-size:46px;color:var(--gold-light);line-height:1;flex:0 0 auto;margin-bottom:4px}.infoItem h3{margin:0 0 5px;font-size:14px;letter-spacing:1.25px;text-transform:uppercase;color:#f8d899}.infoItem p{margin:0;font-size:16px;line-height:1.6;color:#fff1d8}.section{padding:72px 0}.sectionTitle{color:var(--wine);font-size:30px;text-transform:uppercase;letter-spacing:.9px;margin:0 0 24px}.sectionTitle:after{content:"";display:block;width:62px;height:1px;background:var(--gold);margin-top:12px}.reviewWrap{display:grid;grid-template-columns:280px 1fr;gap:42px;align-items:center}.rating .num{font-size:76px;color:var(--wine);font-weight:700;text-shadow:0 1px 0 rgba(255,255,255,.75)}.stars{color:#d99b18;font-size:30px;letter-spacing:3px}.rating small{display:block;margin-top:8px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:rgba(255,249,238,.86);border:1px solid rgba(174,118,70,.28);padding:28px;min-height:165px;box-shadow:0 14px 30px rgba(74,35,20,.07);border-radius:2px}.card b{display:block;margin-bottom:8px;color:#4c2a18}.card p{margin:8px 0 0;font-size:13px;color:#5c4636}
.aboutSection{padding:92px 0;background:linear-gradient(180deg,rgba(255,242,218,.38),rgba(255,236,199,.62))}
.aboutContent{max-width:900px;margin:auto;text-align:center}.aboutContent h2{color:var(--wine);font-size:50px;line-height:1.08;margin:0 auto 22px;letter-spacing:-.4px;max-width:660px}.aboutContent h2:after{content:"";display:block;width:70px;height:1px;background:var(--gold);margin:22px auto 0}.aboutContent p{font-size:18px;color:#4d392d;margin:0 auto 18px;max-width:730px}.aboutContent img{width:min(610px,100%);display:block;margin:34px auto 0;box-shadow:0 18px 42px rgba(67,40,25,.20);border:7px solid rgba(255,248,232,.82)}
.galleryTitle{text-align:center}.galleryTitle:after{margin-left:auto;margin-right:auto}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery img{width:100%;height:185px;object-fit:cover;display:block;box-shadow:0 8px 22px rgba(74,35,20,.13);border:4px solid rgba(255,245,225,.68)}.menuBlock{background:linear-gradient(180deg,#fff2d9,#f2d2a0);text-align:center;box-shadow:inset 0 1px 0 rgba(134,35,29,.12),inset 0 -1px 0 rgba(134,35,29,.12)}.menuBlock .sectionTitle:after{margin-left:auto;margin-right:auto}.pdfFrame{width:100%;height:780px;border:1px solid rgba(122,31,24,.22);background:#fff;margin-top:28px}.contact{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px;align-items:stretch}.map{min-height:430px;border:0;width:100%;filter:saturate(.8) sepia(.08)}.footer{background:linear-gradient(135deg,#54110e 0%,#7a1f18 55%,#8d2b22 100%);color:#fff;padding:44px 0 24px}.footerGrid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:34px;border-bottom:1px solid rgba(255,217,160,.2);padding-bottom:30px}.footer img{width:88px;filter:sepia(.55) saturate(1.35) brightness(1.35)}.footer h4{text-transform:uppercase;color:#f4d294;letter-spacing:.8px;margin:0 0 14px}.footer p,.footer a{color:#fff2dd;font-size:14px;text-decoration:none}.bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:18px;font-size:12px;color:#eed8bd}.bottom a{color:#eed8bd;text-decoration:none}.legal{padding:60px 0}.legal h1{color:var(--wine);font-size:46px}.legal h2{color:var(--wine);margin-top:32px}.legal a{color:var(--wine)}
@media(max-width:900px){.corner{display:none}.nav{min-height:auto;padding:16px 0}.logo img{width:48px}.burger{display:block}.menu{display:none;position:absolute;left:0;right:0;top:91px;background:#fff0d0;padding:18px 28px;flex-direction:column;align-items:flex-start;box-shadow:0 14px 28px rgba(80,38,20,.15)}.menu.open{display:flex}.hero{grid-template-columns:1fr}.heroText{padding:55px 28px}.hero h1{font-size:52px}.heroImage{min-height:330px;order:-1}.infoGrid,.cards,.footerGrid,.contact,.reviewWrap{grid-template-columns:1fr}.infoItem{padding:22px 0;justify-content:center;text-align:center;min-height:auto}.infoItem:not(:last-child):after{display:none}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:160px}.pdfFrame{height:520px}.section{padding:42px 0}.aboutContent h2{font-size:40px}}
@media(max-width:540px){.container{width:min(100% - 28px,1100px)}.hero h1{font-size:44px}.hero p{font-size:16px}.actions{flex-direction:column}.btn{width:100%}.gallery{grid-template-columns:1fr}.reviewWrap{gap:16px}.cards{gap:12px}.card{padding:18px}.footerGrid{gap:18px}.legal h1{font-size:34px}.nav{gap:12px}.menu{top:82px}}

/* V7 final polish */
.ratingIntro{margin:16px 0 20px;color:var(--muted);font-size:15px;line-height:1.55;max-width:260px}
.reviewBtn{font-size:12px;padding:0 18px;min-height:42px;background:rgba(255,246,225,.85)}
.footerClaim h4{font-size:18px;letter-spacing:1.1px}
.footerClaim p{font-size:15px;line-height:1.65;max-width:250px}
@media(max-width:900px){
  .reviewBtn{width:100%;max-width:360px}
  .ratingIntro{max-width:100%}
  .footerClaim{padding-top:0}
}
@media(max-width:540px){
  .heroImage{min-height:290px;background-position:center 48%}
  .heroText{padding:46px 28px 48px}
  .hero h1{font-size:47px}
  .rating .num{font-size:64px}
  .sectionTitle{font-size:28px;line-height:1.25}
  .aboutContent h2{font-size:38px}
}
