@font-face{font-family:'Karla';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/karla-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Karla';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/karla-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Karla';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/karla-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Karla';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/karla-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Karla';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/karla-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/newsreader-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/newsreader-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/newsreader-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/newsreader-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
img[width][height] { height: auto; }
/* shared additions (accessibility, footer, waitlist, guide cards) */
p a.link-accent, li a.link-accent { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.mg-footer { border-top: 1px solid rgba(250,247,240,0.12); background: #0F3229; }
.mg-footer a { color: rgba(250,247,240,0.8); text-decoration: none; }
.mg-footer a:hover { color: #F29A73; }
.mg-footer-grid { max-width: 1240px; margin: 0 auto; padding: 56px 32px 40px; display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; }
.mg-footer-col { display: flex; flex-direction: column; gap: 11px; font-size: 15px; }
.mg-footer-label { font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(250,247,240,0.66); margin-bottom: 4px; }
.mg-footer-legal { max-width: 1240px; margin: 0 auto; padding: 0 32px 44px; display: flex; justify-content: space-between; gap: 24px; flex-wrap: wrap; font-size: 13px; line-height: 1.55; color: rgba(250,247,240,0.66); }
.mg-footer-legal small { display: block; margin-top: 8px; font-size: 11px; }
.mg-footer .badge { display: inline-block; align-self: flex-start; padding: 10px 0; line-height: 0; }
.mg-footer .badge img { height: 44px; width: auto; display: block; }
@media (max-width: 860px) {
  .mg-footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; padding-left: 20px; padding-right: 20px; }
  .mg-footer-legal { padding-left: 20px; padding-right: 20px; }
}
.mg-waitlist { max-width: 560px; margin: 0 auto; text-align: center; }
.mg-waitlist form { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 18px; }
.mg-waitlist label.vh, .vh { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mg-waitlist input[type=email] { flex: 1 1 240px; min-width: 0; padding: 14px 16px; border-radius: 12px; border: 1px solid rgba(250,247,240,0.3); background: #0F3229; color: #FAF7F0; font: inherit; font-size: 16px; }
.mg-waitlist input[type=email]:focus-visible { outline: 2px solid #F29A73; outline-offset: 2px; }
.mg-waitlist button { padding: 14px 22px; border-radius: 12px; border: 0; background: #F29A73; color: #0F3229; font: inherit; font-weight: 700; font-size: 15px; cursor: pointer; }
.mg-waitlist button:hover { background: #F7B392; }
.mg-waitlist button:focus-visible { outline: 2px solid #FAF7F0; outline-offset: 2px; }
.mg-waitlist .fine { font-size: 12px; line-height: 1.5; color: rgba(250,247,240,0.66); margin: 12px 0 0; }
.mg-waitlist .status { min-height: 1.4em; font-size: 14px; margin: 10px 0 0; color: #9DC3AB; }
.mg-waitlist .hp { position: absolute; left: -9999px; }
.mg-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.mg-card { display: flex; flex-direction: column; gap: 8px; background: #17483D; border-radius: 16px; padding: 22px; text-decoration: none; color: #FAF7F0; }
.mg-card:hover { outline: 1px solid rgba(242,154,115,0.6); }
.mg-card:focus-visible { outline: 2px solid #F29A73; outline-offset: 2px; }
.mg-card .k { font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: #F29A73; font-weight: 600; }
.mg-card .t { font-family: 'Newsreader', serif; font-size: 21px; line-height: 1.2; }
.mg-card .d { font-size: 14px; line-height: 1.55; color: rgba(250,247,240,0.78); }
@media (max-width: 860px) { .mg-cards { grid-template-columns: 1fr; } }
