:root{--black:#121212;--yellow:#FFC105;--red:#FC241D;--paper:#F5F5F5}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:400 17px/1.55 "Roboto Condensed",Roboto,Arial,sans-serif;color:var(--black);background:#fff}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2{font-family:Bitter,serif;font-weight:700;line-height:1.15;margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.nw{white-space:nowrap}

/* header */
.top{background:var(--black);color:#fff;position:relative;z-index:5}
.bar{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
.logo img{width:176px;height:auto}
.nav{display:flex;align-items:center;gap:28px}
.nav>ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.nav>ul a{display:block;text-decoration:none;text-transform:uppercase;font-weight:700;letter-spacing:.04em;color:var(--yellow);padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.nav>ul a:hover,.nav>ul a[aria-current]{border-bottom-color:var(--yellow)}
.call{background:var(--yellow);color:var(--black);font-weight:700;text-decoration:none;padding:9px 18px;white-space:nowrap}
.call:hover{background:#fff}
.nav-toggle{position:absolute;opacity:0;width:1px;height:1px;right:24px;top:30px}
.nav-button{display:none}

/* hero */
.hero{background:var(--yellow)}
.hero-grid{display:grid;grid-template-columns:5fr 6fr;gap:0 48px;align-items:stretch;padding-top:0;padding-bottom:0}
.hero-text{padding:56px 0}
.sign{display:inline-block;margin:0 0 20px;background:var(--black);color:var(--yellow);font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:6px 14px;font-size:15px}
.hero h1{font-size:50px;margin-bottom:20px}
.hero-text p{margin:0 0 16px}
.actions{margin-top:26px!important}
.hero-photo{position:relative;min-height:380px}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.btn{display:inline-block;text-decoration:none;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:12px 22px;border:2px solid var(--black);margin:0 10px 8px 0}
.btn.dark{background:var(--black);color:var(--yellow)}
.btn.dark:hover{background:#fff;color:var(--black)}
.btn.line:hover{background:var(--black);color:var(--yellow)}
.btn.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.btn.yellow:hover{background:#fff;border-color:#fff}

/* visit */
.visit{background:var(--black);color:#fff;padding:44px 0}
.visit-grid{display:grid;grid-template-columns:auto 1fr auto;gap:24px 56px;align-items:center}
.visit h2{font-size:36px;color:var(--yellow)}
.tag{margin:6px 0 0;color:var(--red);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:15px}
.facts{display:grid;grid-template-columns:repeat(3,auto);gap:24px 48px;margin:0;justify-content:start}
.facts dt{font-family:Bitter,serif;font-weight:700;color:var(--yellow);font-size:18px;margin-bottom:4px}
.facts dd{margin:0;font-size:18px}
.facts a{text-decoration:none;border-bottom:1px solid var(--yellow)}
.visit-link{margin:0}
.visit-link .btn{margin:0}

/* story */
.story{padding:64px 0;background:var(--paper)}
.story-grid{display:grid;grid-template-columns:5fr 6fr;gap:48px;align-items:start}
.story h2{font-size:36px;color:var(--red);margin-bottom:16px;color:#C4130D}
.story-text p{margin:0 0 16px}
.more{font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--yellow);text-decoration:none}
.doors{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:3px solid var(--black)}
.doors a{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 8px;text-decoration:none;border-bottom:1px solid #bbb;align-items:baseline}
.doors a:hover{background:var(--yellow)}
.doors strong{font-family:Bitter,serif;font-size:22px}
.doors span{font-size:17px}

/* footer */
.foot{background:var(--black);color:#fff;padding:36px 0;border-top:4px solid var(--yellow)}
.foot-grid{display:grid;grid-template-columns:auto 1fr auto;gap:24px 48px;align-items:center}
.foot-logo img{width:150px}
.foot address{font-style:normal;font-size:16px}
.foot a{color:#fff}
.foot-nav{display:grid;grid-template-columns:repeat(3,auto);gap:6px 24px}
.foot-nav a{text-decoration:none;text-transform:uppercase;font-weight:700;letter-spacing:.04em;color:var(--yellow);font-size:15px}

@media (max-width:900px){
  .nav-button{display:block;background:var(--yellow);color:var(--black);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:9px 18px;cursor:pointer}
  .nav-toggle:focus-visible+.nav-button{outline:2px solid #fff;outline-offset:2px}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--black);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 20px;border-top:1px solid #333}
  .nav-toggle:checked~.nav{display:flex}
  .nav>ul{flex-direction:column;gap:0}
  .nav>ul a{padding:12px 0;border-bottom:1px solid #333}
  .call{text-align:center;margin-top:14px}
  .hero-grid{grid-template-columns:1fr}
  .hero-text{padding:36px 0 28px}
  .hero h1{font-size:36px}
  .hero-photo{margin:0 -24px;min-height:0;aspect-ratio:4/3}
  .visit-grid{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr 1fr;gap:20px 32px}
  .story-grid{grid-template-columns:1fr;gap:32px}
  .foot-grid{grid-template-columns:1fr}
}
@media (max-width:520px){
  .logo img{width:140px}
  .facts{grid-template-columns:1fr}
  .hero h1{font-size:32px}
  .doors a{grid-template-columns:1fr;gap:4px}
  .visit h2,.story h2{font-size:30px}
}

/* ===== Inner-page parts (see _page.html) ===== */
.page-title{background:var(--yellow);padding:36px 0 32px;border-bottom:4px solid var(--black)}
.page-title h1{font-size:44px}
.page-title p{margin:10px 0 0;max-width:62ch;font-size:18px}

.part{padding:56px 0}
.part.tint{background:var(--paper)}
.part h2{font-size:34px;margin-bottom:16px}

.text-part{display:grid;grid-template-columns:4fr 6fr 3fr;gap:24px 48px;align-items:start}
.text-part h2{margin:0}
.prose p{margin:0 0 16px}
.prose p:last-child{margin-bottom:0}
.note{border-left:4px solid var(--yellow);background:var(--black);color:#fff;padding:16px 18px}
.note strong{display:block;font-family:Bitter,serif;color:var(--yellow);margin-bottom:4px}
.note p{margin:0}
.note a{color:#fff}

.split{display:grid;grid-template-columns:6fr 5fr;gap:48px;align-items:center}
.photo{margin:0}
.photo img{width:100%;height:auto;border-bottom:6px solid var(--yellow)}
.split-text p{margin:0 0 16px}
.photo-part.flip .photo{order:2}
.photo-part.flip .split{grid-template-columns:5fr 6fr}

.items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;border-top:3px solid var(--black)}
.items li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 0;border-bottom:1px solid #bbb;align-content:start}
.items strong{font-family:Bitter,serif;font-size:18px;line-height:1.3}
.items em{font-style:normal;font-weight:700;color:#C4130D;white-space:nowrap}
.items span{grid-column:1/-1;font-size:16px}

.closing{background:var(--black);color:#fff;padding:44px 0;border-top:4px solid var(--yellow)}
.closing-grid{display:grid;grid-template-columns:1fr auto;gap:20px 48px;align-items:center}
.closing h2{font-size:34px;color:var(--yellow);margin-bottom:6px}
.closing p{margin:0}
.closing-actions .btn{margin:0 10px 0 0}
.btn.outline{border-color:#fff;color:#fff}
.btn.outline:hover{background:#fff;color:var(--black)}

@media (max-width:900px){
  .page-title h1{font-size:34px}
  .part{padding:40px 0}
  .part h2{font-size:30px}
  .text-part,.split,.photo-part.flip .split{grid-template-columns:1fr;gap:20px}
  .photo-part.flip .photo{order:0}
  .items{grid-template-columns:1fr 1fr;gap:0 28px}
  .closing-grid{grid-template-columns:1fr}
}
@media (max-width:520px){
  .items{grid-template-columns:1fr}
  .closing-actions .btn{display:block;text-align:center;margin:0 0 10px}
}
