/* ZATE style guides (/estilo/). Same tokens as the landing. */
:root {
  --bg: #F8F1E9;
  --surface: #FCF8F3;
  --warm: #EFE6DC;
  --ink: #3E2B23;
  --muted: #75604F;
  --caramel: #A67C52;
  --caramel-deep: #8C6440;
  --taupe: #D6C4B4;
  --serif: "Cormorant Garamond", "Times New Roman", serif;
  --sans: Inter, system-ui, sans-serif;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--ink); font-family: var(--sans); font-size: 17px; line-height: 1.65; }
a { color: var(--caramel-deep); }
img { max-width: 100%; height: auto; display: block; }

.g-top { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; max-width: 760px; margin: 0 auto; }
.g-logo img { width: 96px; height: auto; }
.g-top-cta { font-size: 14px; font-weight: 500; text-decoration: none; color: var(--surface); background: var(--ink); padding: 9px 16px; border-radius: 999px; }

.g-main { max-width: 720px; margin: 0 auto; padding: 8px 20px 48px; }
.g-crumbs { font-size: 13px; color: var(--muted); margin: 8px 0 18px; }
.g-crumbs a { color: var(--muted); text-decoration: none; }
.g-eyebrow, .g-cta-eyebrow { font-size: 12px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--caramel-deep); margin: 0 0 8px; }
h1 { font-family: var(--serif); font-weight: 500; font-size: clamp(34px, 7vw, 50px); line-height: 1.08; margin: 0 0 18px; }
h2 { font-family: var(--serif); font-weight: 500; font-size: clamp(25px, 5vw, 32px); line-height: 1.15; margin: 0 0 14px; }
.g-intro p { margin: 0 0 14px; color: var(--ink); }

.g-look { margin: 44px 0 0; }
.g-num { color: var(--caramel); }
.g-board { margin: 0 0 16px; border-radius: 18px; overflow: hidden; background: #FBF6EF; box-shadow: 0 10px 34px rgba(62, 43, 35, 0.07); }
.g-look p { margin: 0 0 10px; }
.g-pieces, .g-when { color: var(--muted); font-size: 15px; }

.g-cta { margin: 52px 0 8px; padding: 28px 24px; border-radius: 22px; background: var(--ink); color: var(--surface); }
.g-cta h2 { color: var(--surface); }
.g-cta p { color: #E9DCCD; margin: 0 0 18px; }
.g-cta .g-cta-eyebrow { color: var(--taupe); }
.g-btn { display: inline-block; background: var(--surface); color: var(--ink); text-decoration: none; font-weight: 500; padding: 13px 22px; border-radius: 999px; }

.g-section { margin: 40px 0 0; }
.g-section ul { padding-left: 20px; margin: 0; }
.g-section li { margin: 0 0 8px; }
.g-faq details { border-top: 1px solid var(--taupe); padding: 14px 0; }
.g-faq details:last-child { border-bottom: 1px solid var(--taupe); }
.g-faq summary { cursor: pointer; font-weight: 500; }
.g-faq details p { margin: 10px 0 0; color: var(--muted); }
.g-related { list-style: none; padding: 0 !important; }

.g-grid { list-style: none; padding: 0; margin: 28px 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 18px; }
.g-grid a { display: block; text-decoration: none; color: var(--ink); }
.g-grid img { border-radius: 14px; background: #FBF6EF; box-shadow: 0 8px 26px rgba(62, 43, 35, 0.07); }
.g-grid span { display: block; font-family: var(--serif); font-size: 22px; line-height: 1.2; margin: 10px 0 0; }

.g-footer { border-top: 1px solid var(--taupe); padding: 22px 20px 34px; text-align: center; font-size: 13px; color: var(--muted); }
.g-footer a { color: var(--muted); }
