/* Shared layout for TAGKTOTO and the Za Rodinu project. */
:root { --terracotta:#aa5b40; --clay-dark:#713b2b; --line: #b9775a; --line-strong:#934b34; }
body { background:#fff; }
.shell { width:min(1188px,calc(100% - 48px)); padding:24px 0 32px; }
.site-header { padding-top:76px; gap:20px; margin-bottom:28px; }
.home-corner-button { top:0; left:0; width:56px; height:52px; padding:10px; background:#aa5b40; border:2px solid #d49a79; border-radius:3px; box-shadow:0 3px 8px #21100966; }
.project-switch { position:absolute; top:0; left:70px; min-height:52px; display:flex; align-items:center; padding:10px 22px; border:2px solid #d49a79; background:#aa5b40; color:white; text-decoration:none; font-weight:800; border-radius:3px; box-shadow:0 3px 8px #21100966; }
.project-switch:hover,.home-corner-button:hover { background:#8f452f; color:white; }
.mini-version-btn { left:auto; right:186px; height:52px; background:#aa5b40; border-color:#d49a79; border-radius:3px; }
.language-switch { position:absolute; top:0; right:0; bottom:auto; width:170px; height:52px; padding:0; border:0; background:transparent; box-shadow:none; }
.language-switch select { height:52px; border:2px solid #d49a79; border-radius:3px; background:#fff7ed; color:#4d2b20; }
.masthead { margin:0; width:100%; }
.brand-block,.brand-home-button:hover,.brand-home-button:focus-visible {
  position:relative; width:100%; min-height:230px; padding:48px 24px; border:3px solid #c28764; border-radius:3px;
  background:repeating-linear-gradient(0deg,#ffffff0a 0 1px,#00000012 1px 3px),linear-gradient(0deg,#00000032,#00000032),linear-gradient(0deg,#d4882e 0 20%,#171513 20% 40%,#d4882e 40% 60%,#171513 60% 80%,#d4882e 80%);
  color:white; box-shadow:inset 0 0 32px #00000055,0 8px 20px #1b0c0866;
}
.brand-mark { margin:0; text-align:center; font-size:clamp(3rem,8.5vw,7rem); font-weight:800; letter-spacing:.08em; line-height:1.15; text-shadow:0 3px 8px #000; }
.project-caption { display:block; margin-bottom:12px; font-size:15px; letter-spacing:.24em; font-weight:700; text-shadow:0 2px 4px #000; }
.motto-bar { width:100%; margin:14px 0 0; padding:14px 24px; border:2px solid #d49a79; background:#985035; color:#fff; font-size:.9rem; border-radius:3px; box-shadow:0 3px 8px #21100966; }
.header-side { width:100%; margin:0; }
.main-nav { width:100%; gap:10px; grid-template-columns:repeat(5,minmax(0,1fr)); background:transparent; border:0; }
.main-nav .nav-button { min-height:50px; padding:10px 8px; border:2px solid #cf9675; border-radius:3px; background:#a4553a; color:white; font-size:.8rem; box-shadow:0 3px 8px #21100944; }
.main-nav .nav-button:hover,.main-nav .nav-button.is-active { background:#713b2b; border-color:#f0c4a2; }
.home-search-stage { margin:0 0 20px; }
.search-hero,.manifest-card { border:2px solid #c28764; border-radius:3px; background:#fff8ed; box-shadow:0 5px 16px #21100944; }
.search-hero { width:100%; max-width:none; padding:22px; }
.search-hero .search-row { width:100%; border:2px solid #aa5b40; border-radius:3px; background:#fff; }
.search-hero .search-row input { min-width:0; color:#34231d; background:#fff; font-size:1rem; }
.search-hero .search-row button { background:#aa5b40; color:#fff; }
.search-hero .search-row button:hover { background:#713b2b; }
.home-panels { display:block; margin:0; }
.manifest-card { width:100%; max-width:none; padding:26px; }
.manifest-list { gap:18px; }
.manifest-item { color:#382a23; }
.card,.results-card { border-color:#c28764; }
.site-footer { width:100%; margin-left:0; margin-right:0; color:#4e4e4e; text-shadow:none; }
body.project-rodina .project-switch { background:#fff8ed; color:#713b2b; letter-spacing:.06em; }
body.project-rodina .brand-mark { font-size:clamp(2.7rem,7.5vw,6rem); letter-spacing:.05em; }
.nav-toggle { background:#a4553a; border-color:#d49a79; }
@media(max-width:768px) {
  .shell { width:calc(100% - 24px); padding:14px 0 24px; }
  .site-header { padding:126px 0 0; gap:14px; margin-bottom:18px; }
  .home-corner-button { position:absolute; top:0; bottom:auto; left:0; width:48px; height:48px; }
  .home-corner-button svg { width:28px; height:28px; }
  .project-switch { top:0; left:58px; min-height:48px; padding:10px 14px; font-size:.9rem; }
  .mini-version-btn { position:absolute; top:62px; bottom:auto; left:0; right:auto; height:48px; padding:0 12px; }
  .language-switch { position:absolute; top:62px; right:0; bottom:auto; left:auto; width:calc(100% - 140px); max-width:190px; height:48px; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; z-index:2; }
  .language-switch select { height:48px; width:100%; padding:8px 28px 8px 10px; font-size:.85rem; }
  .nav-toggle { top:0; right:0; width:48px; height:48px; border-radius:3px; box-shadow:none; }
  .brand-block,.brand-home-button:hover,.brand-home-button:focus-visible { min-height:174px; padding:32px 12px; border:2px solid #c28764; }
  .brand-mark { font-size:clamp(2rem,9vw,4rem); text-align:center; letter-spacing:.035em; }
  body.project-rodina .brand-mark { font-size:clamp(1.8rem,8vw,3.6rem); }
  .project-caption { font-size:12px; margin-bottom:12px; }
  .motto-bar { margin:12px 0 0; padding:12px; font-size:.76rem; border:2px solid #d49a79; }
  .header-side { display:none; }
  .header-side.is-open { display:block; }
  .main-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .main-nav .nav-button { border:2px solid #cf9675; min-height:48px; }
  .search-hero { padding:14px; }
  .search-hero .search-row input { font-size:.85rem; padding:12px 10px; }
  .manifest-card { padding:18px; }
  .manifest-item { font-size:.88rem; }
}
