@font-face { font-family: 'Bodoni Moda'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/bodoni-moda-regular.ttf') format('truetype'); }
@font-face { font-family: 'Bodoni Moda'; font-style: italic; font-weight: 400; font-display: swap; src: url('fonts/bodoni-moda-italic.ttf') format('truetype'); }
:root { --paper: #f8f7f4; --ink: #1c1c1b; --muted: #66645f; --line: #cecac3; --rule: var(--line); --wash: #eeece7; --serif: 'Bodoni Moda', Didot, 'Times New Roman', serif; --sans: Arial, Helvetica, sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 14px/1.7 var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-underline-offset: 5px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
h1, h2, h3 { font-family: var(--serif); font-weight: 400; }
img { max-width: 100%; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.site-header { border-bottom: 1px solid var(--line); }
.header-inner { max-width: 1536px; min-height: 102px; margin: auto; padding: 25px 7%; display: flex; align-items: center; gap: 60px; }
.brand { font: 400 42px/1 var(--serif); letter-spacing: -.06em; text-decoration: none; }
.header-inner nav { display: flex; gap: 32px; align-items: center; }
.header-inner nav a, .account-nav { font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.header-inner nav a { text-decoration: none; padding: 7px 0; border-bottom: 1px solid transparent; }
.header-inner nav a:hover, .header-inner nav a[aria-current] { border-color: var(--ink); }
.account-nav { margin-left: auto; display: flex; gap: 26px; align-items: center; }
.account-nav a { text-decoration: none; }
.account-name { color: var(--muted); max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.site-footer { max-width: 1320px; margin: 0 auto; border-top: 1px solid var(--line); padding: 30px 0; display: flex; gap: 32px; align-items: center; }
.site-footer .brand { font-size: 36px; }
.site-footer > span { font: italic 20px var(--serif); }
.site-footer > span:last-child { margin-left: auto; font: 9px var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.skip-link { position: absolute; top: -100px; left: 20px; z-index: 100; background: var(--paper); color: var(--ink); padding: 12px; }
.skip-link:focus { top: 10px; }
@media (max-width: 1536px) { .site-footer { margin-left: 7%; margin-right: 7%; } }
@media (max-width: 760px) {
  .header-inner { padding: 23px 24px; min-height: 82px; gap: 25px; }
  .brand { font-size: 36px; }
  .header-inner nav { gap: 20px; }
  .header-inner nav a, .account-nav { font-size: 9px; letter-spacing: .08em; }
  .account-nav { gap: 12px; }
  .account-name { display: none; }
  .site-footer { margin: 0 24px; gap: 22px; flex-wrap: wrap; }
  .site-footer > span { font-size: 17px; }
  .site-footer > span:last-child { display: none; }
}
@media (max-width: 400px) { .header-inner { gap: 18px; padding: 22px 20px; } .header-inner nav { gap: 14px; } }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
