:root {
  --arca-paper: #F5F2EC;
  --arca-ink: #292824;
  --arca-muted: #77736B;
  --arca-line: #DDD7CE;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body {
  margin: 0;
  background: var(--arca-paper);
  color: var(--arca-ink);
  font-family: "Lexend", "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
.arca-skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 999;
  padding: 12px 16px; background: var(--arca-paper); color: var(--arca-ink);
}
.arca-skip-link:focus { left: 12px; top: 12px; }
.arca-header {
  position: relative; z-index: 100; background: var(--arca-paper);
  border-bottom: 1px solid var(--arca-line);
}
.arca-header__inner {
  position: relative; display: flex; align-items: center; justify-content: space-between;
  min-height: 88px; padding: 0 5.5%;
}
.arca-nav {
  display: flex;
  align-items: center;
  min-width: 0;
  max-width: calc(50% - 130px);
}
.arca-menu {
  display: flex; align-items: center; gap: clamp(14px, 2vw, 28px);
  margin: 0; padding: 0; list-style: none;
}
.arca-menu li { position: relative; list-style: none; }
.arca-menu a, .arca-contact {
  color: var(--arca-ink); font-family: "Lexend", "Helvetica Neue", Arial, sans-serif;
  font-size: 10px; font-weight: 500; letter-spacing: .12em; text-decoration: none;
  text-transform: uppercase; transition: opacity 180ms ease;
}
.arca-menu a:hover, .arca-contact:hover { opacity: .55; }
.arca-menu .sub-menu {
  position: absolute; top: calc(100% + 8px); left: 0; min-width: 190px;
  margin: 0; padding: 12px 0; background: var(--arca-paper);
  border: 1px solid var(--arca-line); list-style: none; opacity: 0; visibility: hidden;
  transform: translateY(6px); transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
}
.arca-menu .sub-menu a { display: block; padding: 12px 16px; white-space: nowrap; letter-spacing: .06em; }
.arca-menu li:hover > .sub-menu, .arca-menu li:focus-within > .sub-menu {
  opacity: 1; visibility: visible; transform: translateY(0);
}
.arca-menu .menu-item-has-children > a::after { content: "⌄"; margin-left: 7px; }
.arca-logo {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  max-width: 120px;
  margin: 0;
  z-index: 2;
  text-decoration: none;
}
.arca-logo img, .arca-logo .custom-logo, .arca-logo .custom-logo-link img {
  display: block;
  width: 100px;
  max-width: 100px;
  height: auto;
  max-height: 48px;
  object-fit: contain;
}
.arca-contact { display: inline-flex; align-items: center; gap: 10px; margin-left: auto; white-space: nowrap; }

.arca-toggle {
  display: none;
  width: 40px;
  height: 40px;
  padding: 10px 7px;
  border: 0;
  background: transparent;
  cursor: pointer;
  flex-shrink: 0;
}
.arca-toggle span {
  display: block; width: 25px; height: 1px; margin: 6px 0; background: var(--arca-ink);
  transition: transform 180ms ease;
}
.arca-footer {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  min-height: 76px; padding: 18px 5.5%; background: var(--arca-paper);
  border-top: 1px solid var(--arca-line);
}
.arca-footer__brand {
  display: inline-flex; align-items: center; color: var(--arca-ink);
  font-size: 11px; font-weight: 600; letter-spacing: .2em; text-decoration: none; text-transform: uppercase;
}
.arca-footer__brand img { display: block; width: auto; max-width: 140px; max-height: 36px; object-fit: contain; }
.arca-footer__copyright { margin: 0; color: var(--arca-muted); font-size: 9px; letter-spacing: .08em; text-align: right; }
.arca-content { width: min(100% - 11%, 1100px); min-height: 55vh; margin: 0 auto; padding: 90px 0; }
.arca-entry { max-width: 820px; margin: 0 auto; }
.arca-entry__header { margin-bottom: 32px; }
.arca-eyebrow { color: var(--arca-muted); font-size: 10px; letter-spacing: .2em; }
.arca-entry h1 { margin: 18px 0; font-family: Georgia, serif; font-size: clamp(42px, 6vw, 72px); font-weight: 400; letter-spacing: -.04em; line-height: 1.02; }
.arca-entry__content { line-height: 1.9; }
.arca-entry__content img { max-width: 100%; height: auto; }
.arca-pagination { margin-top: 40px; }
@media (max-width: 900px) {
  .arca-header__inner { min-height: 76px; padding: 0 5%; }
  .arca-toggle { display: block; flex-shrink: 0; }
  .arca-contact { margin-left: auto; margin-right: 12px; font-size: 9px; }
  .arca-nav {
    position: absolute; top: 100%; left: 0; right: 0; display: none;
    max-width: none; padding: 20px 5% 28px; background: var(--arca-paper);
    border-bottom: 1px solid var(--arca-line);
  }
  .arca-nav.is-open { display: block; }
  .arca-menu { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .arca-menu > li { border-bottom: 1px solid var(--arca-line); }
  .arca-menu > li > a { display: block; padding: 17px 0; }
  .arca-menu .sub-menu {
    position: static; display: none; min-width: 0; padding: 0 0 10px 14px;
    border: 0; opacity: 1; visibility: visible; transform: none; transition: none;
  }
  .arca-menu li.submenu-open > .sub-menu { display: block; }
  .arca-menu .sub-menu a { padding: 12px 0; }
  .arca-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .arca-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
}
@media (max-width: 480px) {
  .arca-header__inner { padding: 0 18px; }
  .arca-logo { width: 90px; max-width: 90px; }
  .arca-logo img, .arca-logo .custom-logo, .arca-logo .custom-logo-link img { width: 80px; max-width: 80px; max-height: 40px; }
  .arca-contact { font-size: 8px; gap: 4px; margin-right: 6px; }
  .arca-toggle { width: 34px; }
  .arca-footer { min-height: 68px; padding: 18px; gap: 12px; }
  .arca-footer__brand { font-size: 9px; }
  .arca-footer__brand img { max-width: 112px; max-height: 30px; }
  .arca-footer__copyright { max-width: 58%; font-size: 8px; line-height: 1.7; }
  .arca-content { width: calc(100% - 36px); padding: 56px 0; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
