:root {
  color-scheme: dark;
  --background: #151411;
  --paper: #f3edde;
  --muted: #bcb5a7;
  --gold: #d9b978;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--background);
  color: var(--paper);
  -webkit-text-size-adjust: 100%;
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 280px; }
.ambience { position: absolute; inset: 0 0 auto; height: 430px; overflow: hidden; pointer-events: none; }
.ambience img { width: 100%; height: 100%; object-fit: cover; object-position: center 43%; opacity: .38; }
.ambience::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #15141126, #151411b3 55%, var(--background) 100%); }
.home { position: relative; width: min(100%, 476px); margin: 0 auto; padding: 32px 24px max(28px, env(safe-area-inset-bottom)); }
.welcome { text-align: center; padding: 0 0 26px; }
.brand { display: block; width: 202px; height: auto; margin: 0 auto 19px; }
.eyebrow { margin: 0 0 12px; color: var(--gold); text-transform: uppercase; letter-spacing: .19em; font-size: 11px; font-weight: 650; line-height: 1.6; }
h1 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(26px, 6.9vw, 32px); font-weight: 400; line-height: 1.25; letter-spacing: -.035em; }
.intro { color: var(--muted); font-size: 14px; line-height: 1.6; margin: 10px 0 0; }
.links { padding: 0; margin: 0; display: grid; gap: 11px; list-style: none; }
.link { display: flex; align-items: center; gap: 17px; min-height: 82px; padding: 17px 19px; color: var(--paper); background: #211f1a; border: 1px solid #484133; border-radius: 12px; text-decoration: none; -webkit-tap-highlight-color: transparent; transition: background-color .18s ease, border-color .18s ease, transform .18s ease; }
.link-featured { color: #211c12; background: #dec28d; border-color: #e6cc9d; }
.link-copy { display: block; min-width: 0; flex: 1; }
.link-title, .link-detail { display: block; }
.link-title { font-size: 17px; font-weight: 650; line-height: 1.4; }
.link-detail { margin-top: 3px; font-size: 13px; line-height: 1.5; color: var(--muted); }
.link-featured .link-detail { color: #4c3f29; }
.icon, .arrow { display: block; flex-shrink: 0; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; }
.icon { width: 25px; height: 25px; stroke-width: 1.5; color: var(--gold); }
.link-featured .icon { color: #4b3920; }
.arrow { width: 15px; height: 15px; stroke-width: 1.5; color: var(--gold); }
.link-featured .arrow { color: #4b3920; }
.link:focus-visible { outline: 3px solid #f6d897; outline-offset: 4px; }
.link:active { transform: scale(.987); }
.footer { text-align: center; padding-top: 27px; }
.footer-rule { display: block; width: 30px; height: 1px; margin: 0 auto 18px; background: #8b7347; }
address { font-size: 14px; font-style: normal; color: #ded5c5; line-height: 1.8; }
address span { color: var(--muted); }
.signature { margin: 15px 0 0; color: var(--muted); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.signature span { color: var(--gold); padding: 0 5px; }
@media (hover: hover) {
  .link:hover { background: #2d2921; border-color: #9b8256; transform: translateY(-2px); }
  .link-featured:hover { background: #ecd3a5; border-color: #ecd3a5; }
}
@media (min-width: 700px) {
  .home { padding-top: 44px; padding-bottom: 36px; }
  .ambience { height: 470px; }
  .ambience img { object-position: center 48%; opacity: .28; }
}
@media (max-width: 350px) {
  .home { padding-left: 17px; padding-right: 17px; }
  .link { gap: 12px; padding-left: 14px; padding-right: 14px; }
  .link-title { font-size: 16px; }
  .link-detail { font-size: 12.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .link { transition: none; }
  .link:hover, .link:active { transform: none; }
}
