:root {
  color-scheme: light;
  --mc-green:#173f2f;
  --mc-green-2:#245b43;
  --mc-gold:#c58a25;
  --mc-wood:#a95225;
  --mc-cream:#f5f1e8;
  --mc-ink:#20342b;
  --mc-muted:#66756e;
  --mc-line:#e5ded0;
}

* { box-sizing:border-box; }
html, body { min-height:100%; }
body.cloud-public {
  margin:0;
  background:var(--mc-cream);
  color:var(--mc-ink);
  font-family:Arial, Helvetica, sans-serif;
}
body.cloud-public a { color:var(--mc-green-2); }
body.cloud-public .public-shell { max-width:1180px; margin:0 auto; padding:34px 22px 24px; }
body.cloud-public .public-brand { display:grid; grid-template-columns:150px 1fr; column-gap:28px; align-items:center; padding:10px 0 34px; }
body.cloud-public .public-brand img { grid-row:span 3; width:150px; height:150px; object-fit:contain; }
body.cloud-public .public-kicker { margin:0 0 10px; color:var(--mc-gold); font-size:12px; font-weight:bold; letter-spacing:.16em; text-transform:uppercase; }
body.cloud-public h1, body.cloud-public h2, body.cloud-public p { margin-top:0; }
body.cloud-public h1 { margin-bottom:12px; color:var(--mc-green); font-size:clamp(30px, 5vw, 54px); line-height:1.05; }
body.cloud-public h2 { margin-bottom:10px; color:var(--mc-green); font-size:25px; }
body.cloud-public .public-brand > p:not(.public-kicker) { max-width:720px; margin-bottom:0; color:var(--mc-muted); font-size:17px; line-height:1.6; }
body.cloud-public .public-pill-row { grid-column:2; display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
body.cloud-public .public-pill-row span { padding:7px 10px; border:1px solid #dbc58d; border-radius:999px; background:#fff8e7; color:var(--mc-green); font-size:12px; font-weight:bold; }
body.cloud-public .public-alert { margin:0 0 20px; padding:13px 15px; border:1px solid #e4b5ad; border-radius:8px; background:#fff0ed; color:#8d2d22; font-weight:bold; }
body.cloud-public .public-grid { display:grid; grid-template-columns:minmax(0, 1.35fr) minmax(300px, .8fr); gap:20px; }
body.cloud-public .public-card { padding:28px; border:1px solid var(--mc-line); border-radius:14px; background:#fff; box-shadow:0 10px 30px rgba(23,63,47,.08); }
body.cloud-public .public-card-featured { border-top:5px solid var(--mc-gold); }
body.cloud-public .public-card > p:not(.public-kicker) { color:var(--mc-muted); line-height:1.55; }
body.cloud-public .public-form { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:20px; }
body.cloud-public .public-form-single { grid-template-columns:1fr; }
body.cloud-public .public-form label { display:flex; flex-direction:column; gap:6px; color:var(--mc-green); font-size:13px; font-weight:bold; }
body.cloud-public .public-form input { width:100%; padding:12px; border:1px solid #d6cbb9; border-radius:7px; background:#fffdf8; color:var(--mc-ink); font:inherit; }
body.cloud-public .public-form input:focus { border-color:var(--mc-gold); outline:0; box-shadow:0 0 0 3px rgba(197,138,37,.18); }
body.cloud-public .public-form button { grid-column:1 / -1; padding:13px 16px; border:0; border-radius:7px; background:var(--mc-green); color:#fff; font:inherit; font-weight:bold; cursor:pointer; }
body.cloud-public .public-form button:hover { background:var(--mc-green-2); }
body.cloud-public .public-form button span { color:#f5d68b; }
body.cloud-public .public-small { margin-top:20px; color:var(--mc-muted); font-size:12px; line-height:1.5; }
body.cloud-public .public-footer { display:flex; justify-content:space-between; gap:18px; margin-top:24px; padding-top:20px; border-top:1px solid var(--mc-line); color:var(--mc-muted); font-size:12px; }
body.cloud-public .public-footer a { color:var(--mc-green-2); font-weight:bold; }

@media (max-width:760px) {
  body.cloud-public .public-shell { padding:22px 14px; }
  body.cloud-public .public-brand { display:block; text-align:center; }
  body.cloud-public .public-brand img { width:130px; height:130px; margin-bottom:14px; }
  body.cloud-public .public-brand > p:not(.public-kicker) { margin-right:auto; margin-left:auto; font-size:15px; }
  body.cloud-public .public-pill-row { justify-content:center; }
  body.cloud-public .public-grid { grid-template-columns:1fr; }
  body.cloud-public .public-footer { display:block; text-align:center; }
  body.cloud-public .public-footer a { display:block; margin-top:10px; }
}

@media (max-width:480px) {
  body.cloud-public .public-card { padding:20px 16px; }
  body.cloud-public .public-form { grid-template-columns:1fr; }
  body.cloud-public .public-form button { grid-column:auto; }
}
