@font-face{font-family:systemserif;src:local("Georgia")} :root{--paper:#eee5d6;--ink:#1e1a16;--muted:#665d53;--terra:#be5b34;--terra2:#7d341e;--line:#d8cbb8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.skip-link{position:absolute;top:-4rem;left:1rem;background:#111;color:white;padding:.7rem 1rem;border-radius:999px}.skip-link:focus{top:1rem}header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:2rem 4vw}.wordmark{text-decoration:none;font:900 clamp(1.7rem,3vw,2.5rem)/1 Georgia,serif;letter-spacing:.16em}nav{justify-self:center;display:flex;gap:clamp(1rem,3vw,2.8rem);text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:.84rem}nav a,.resy,.actions a,.feature-grid a{text-decoration:none;color:inherit}.resy{background:#1b1713;color:#fff;border-radius:999px;padding:1rem 1.7rem;text-transform:uppercase;letter-spacing:.15em;font-weight:850}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(22rem,.85fr);align-items:center;gap:4vw;min-height:68vh;padding:4rem 4vw 2rem}.eyebrow{color:#8a7664;text-transform:uppercase;letter-spacing:.17em;font-weight:850;font-size:.78rem}.hero h1{font-family:Georgia,systemserif,serif;font-size:clamp(4.5rem,9vw,9.5rem);line-height:.9;letter-spacing:-.075em;font-weight:500;margin:.5rem 0}.hero em{color:var(--terra);font-style:italic}.lede{max-width:42rem;color:var(--muted);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.55}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.actions a{border-radius:999px;padding:1.05rem 1.55rem;font-weight:900}.primary{background:var(--terra);color:#fff}.secondary{border:2px solid #27211b}.arch-card{height:min(58vw,42rem);border-radius:50% 50% 0 0;background:linear-gradient(160deg,#e89a66,#8a351e 68%);display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:4rem 2rem 2rem;color:#f7eadb;text-transform:uppercase;letter-spacing:.28em;font-weight:800;box-shadow:0 28px 90px rgba(89,44,24,.18)}.arch-card span{background:rgba(65,31,17,.55);border-radius:999px;padding:.75rem 1.2rem;font-size:.72rem}.arch-card b{font-size:.76rem}.status{margin:2rem 4vw;min-height:5.2rem;background:#1b1713;color:#eaded0;border-radius:1.4rem;display:flex;align-items:center;gap:1.2rem;padding:1rem 1.5rem;flex-wrap:wrap}.status strong{text-transform:uppercase;letter-spacing:.22em;color:#b9aa99;font-size:.74rem}.dot{width:.75rem;height:.75rem;border-radius:999px;box-shadow:0 0 16px currentColor}.green{background:#8bc36f;color:#8bc36f}.amber{background:#efb456;color:#efb456}.powered{margin-left:auto;color:#b9aa99}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.5rem 0;white-space:nowrap;overflow:hidden;font:italic clamp(1.35rem,3vw,2.2rem) Georgia,serif;color:#927c66}.ticker span{margin-right:2rem}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:3rem 4vw 5rem}.feature-grid article{background:#f8f1e6;border:1px solid var(--line);border-radius:1.2rem;padding:1.5rem;min-height:15rem}.feature-grid p{text-transform:uppercase;letter-spacing:.14em;color:var(--terra);font-weight:900;font-size:.75rem}.feature-grid h2{font-family:Georgia,serif;font-size:1.8rem;line-height:1.02;letter-spacing:-.04em}.feature-grid a{font-weight:900;color:var(--terra)}@media(max-width:900px){header,.hero{grid-template-columns:1fr}nav{justify-self:start;flex-wrap:wrap}.feature-grid{grid-template-columns:1fr 1fr}.arch-card{height:24rem}.resy{justify-self:start}}@media(max-width:560px){.feature-grid{grid-template-columns:1fr}.hero h1{font-size:4.3rem}}

/* Mobile repair: readable iPhone layout, no collapsed link strings, no crushed display type. */
@media (max-width: 700px) {
  body { overflow-x: hidden; }
  header { display: flex; flex-direction: column; align-items: flex-start; gap: .85rem; padding: 1rem; }
  .wordmark { font-size: 1.35rem; letter-spacing: .12em; }
  nav { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; font-size: .72rem; letter-spacing: .08em; }
  nav a, .resy { display: block; text-align: center; text-decoration: none; border: 1px solid var(--line); background: rgba(255,250,241,.72); border-radius: 999px; padding: .72rem .55rem; }
  .resy { width: 100%; background: #1b1713; color: #fff; }
  .hero { display: block; min-height: 0; padding: 2.2rem 1rem 1rem; }
  .eyebrow { font-size: .72rem; letter-spacing: .14em; }
  .hero h1 { font-size: clamp(3.2rem, 17vw, 4.8rem); line-height: .95; letter-spacing: -.04em; overflow-wrap: normal; word-break: normal; max-width: 10ch; }
  .lede { font-size: 1.05rem; line-height: 1.48; }
  .actions { display: grid; grid-template-columns: 1fr; gap: .65rem; }
  .actions a { display: block; text-align: center; padding: .95rem 1rem; }
  .arch-card { margin-top: 1.25rem; height: 15rem; width: 100%; border-radius: 8rem 8rem 1.25rem 1.25rem; padding: 2rem 1rem 1rem; }
  .status { margin: 1rem; display: grid; gap: .65rem; align-items: stretch; padding: 1rem; }
  .status strong { display: block; }
  .status-pill { display: flex; gap: .55rem; align-items: center; background: rgba(255,255,255,.06); border-radius: .85rem; padding: .75rem; line-height: 1.25; }
  .powered { margin-left: 0; color: #b9aa99; font-size: .85rem; }
  .ticker { padding: 1rem; white-space: normal; line-height: 1.8; font-size: 1.2rem; }
  .ticker span { display: inline-block; margin: 0 .55rem .25rem 0; }
  .feature-grid { padding: 1.25rem 1rem 3rem; grid-template-columns: 1fr; }
}

/* Mobile contrast assurance */
@media (max-width: 700px) {
  .actions .primary { color: #fff !important; }
}
