/* Pawssport · visual foundation. Shared chrome; page content stays in place. */
:root {
  --ink: #203a2e;
  --muted: #626d64;
  --paper: #f7f5ef;
  --surface: #eeeee5;
  --accent: #536a45;
  --line: #dedfd4;
  --forest: #203a2e;
  --lime: #dbe6ad;
  --clay: #dd8f6f;
  --font-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-editorial: Georgia, "Times New Roman", serif;
  --width: 1280px;
  --gutter: clamp(24px, 4.4vw, 72px);
  --space-xs: 8px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 40px;
  --space-xl: 64px;
  --space-section: clamp(64px, 8vw, 112px);
  --radius-card: 24px;
  --radius-control: 999px;
}
body {font-family: var(--font-sans);}
::selection {background: var(--lime); color: var(--forest);}
a:focus-visible, button:focus-visible {outline: 2px solid var(--forest); outline-offset: 5px;}
.site-header {background: var(--paper); border-bottom-color: transparent;}
.header-inner {min-height: 100px;}
.brand {font-family: var(--font-sans); font-size: 29px; letter-spacing: -1.6px; font-weight: 700;}
.brand-dot {color: var(--clay);}
.main-navigation {gap: 32px;}
.main-navigation a {font-size: 13px; font-weight: 500; padding: 8px 0;}
.main-navigation a[aria-current=page]::after {height: 1px; bottom: 5px; background: var(--forest);}
.main-navigation a:hover {color: var(--forest);}
.main-navigation a:last-child {border: 1px solid var(--line); border-radius: var(--radius-control); padding: 9px 22px;}
.main-navigation a:last-child:hover {background: var(--surface);}
.main-navigation a:last-child[aria-current=page]::after {left: 22px; right: 22px;}
.site-footer {background: #eeeee5; border-top: 0;}
.footer-inner {padding-top: 52px; padding-bottom: 48px; grid-template-columns: 2fr 1fr 1.1fr; gap: 48px;}
.footer-brand .brand {font-size: 34px; letter-spacing: -1.8px;}
.footer-brand p {font-size: 13px;}
.footer-navigation {font-size: 13px; gap: 18px 28px;}
.footer-contact h2 {font-weight: 500; font-size: 13px;}
.footer-contact p {font-size: 12px; max-width: 180px;}
.footer-bottom {border-top-color: #d8dbcf; font-size: 11px; padding-top: 22px; padding-bottom: 26px;}
@media (max-width: 760px) {
  .header-inner {min-height: 84px; padding-top: 24px; padding-bottom: 24px; gap: 20px;}
  .brand {font-size: 26px;}
  .main-navigation {gap: 14px 16px; padding-top: 12px;}
  .main-navigation a {flex-basis: calc(50% - 8px); font-size: 14px;}
  .main-navigation a:last-child {padding: 8px 0; border: 0; border-radius: 0;}
  .main-navigation a:last-child:hover {background: none;}
  .main-navigation a:last-child[aria-current=page]::after {left: 0; right: auto;}
  .footer-inner {grid-template-columns: 1fr 1fr; gap: 32px; padding-top: 38px; padding-bottom: 36px;}
  .footer-brand {grid-column: 1/-1;}
  .footer-navigation {grid-template-columns: 1fr; gap: 16px;}
  .footer-brand .brand {font-size: 30px;}
  .footer-bottom {gap: 16px; flex-wrap: wrap;}
}
