:root {
  --mitt-deep: #06152e;
  --mitt-navy: #0d2145;
  --mitt-blue: #173a63;
  --mitt-sky: #75c7f6;
  --mitt-gold: #c6ad7d;
  --mitt-gold-dark: #9f8556;
  --mitt-paper: #f4f0e6;
  --mitt-white: #fffdf8;
  --mitt-ink: #101e36;
  --mitt-muted: #657083;
  --mitt-line: rgba(16, 30, 54, .14);
  --mitt-serif: "Playfair Display", Georgia, serif;
  --mitt-sans: "DM Sans", "Manrope", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.mitt-checklist-page { max-width: 100%; margin: 0; overflow-x: hidden; background: var(--mitt-paper); color: var(--mitt-ink); font-family: var(--mitt-sans); -webkit-font-smoothing: antialiased; }
body.mitt-checklist-page.admin-bar .mitt-header { top: 32px; }
.mitt-checklist-page a { color: inherit; text-decoration: none; }
.mitt-skip { position: fixed; z-index: 1000; top: 8px; left: 8px; padding: 11px 16px; background: var(--mitt-gold); color: var(--mitt-deep); transform: translateY(-180%); }
.mitt-skip:focus { transform: none; }

.mitt-header { position: fixed; z-index: 100; inset: 0 0 auto; height: 84px; padding: 0 clamp(24px, 5vw, 84px); display: grid; grid-template-columns: 190px 1fr auto; align-items: center; gap: 30px; color: var(--mitt-paper); background: rgba(6, 21, 46, .96); border-bottom: 1px solid rgba(198, 173, 125, .22); backdrop-filter: blur(18px); }
.mitt-logo img { display: block; width: 152px; height: auto; filter: brightness(0) invert(1); }
.mitt-nav { display: flex; justify-content: center; align-items: center; gap: clamp(18px, 2.3vw, 38px); }
.mitt-nav a, .mitt-solutions-trigger, .mitt-talk { font: 600 10px/1 var(--mitt-sans); letter-spacing: .15em; text-transform: uppercase; }
.mitt-nav a, .mitt-solutions-trigger { color: rgba(244, 240, 230, .76); }
.mitt-nav a:hover, .mitt-solutions-trigger:hover { color: var(--mitt-gold); }
.mitt-solutions-trigger { border: 0; padding: 16px 0; background: transparent; cursor: pointer; }
.mitt-solutions-trigger span { margin-left: 4px; }
.mitt-talk { padding: 14px 20px; border: 1px solid rgba(198, 173, 125, .65); color: var(--mitt-paper); }
.mitt-talk:hover { background: var(--mitt-gold); color: var(--mitt-deep); }
.mitt-menu-toggle { display: none; width: 42px; height: 42px; border: 1px solid rgba(198, 173, 125, .4); background: transparent; padding: 12px; }
.mitt-menu-toggle span { display: block; height: 1px; margin: 5px 0; background: var(--mitt-paper); }

.mitt-solutions { position: fixed; z-index: 90; top: 84px; left: 0; width: 100%; padding: 42px clamp(24px, 7vw, 112px); color: var(--mitt-paper); background: rgba(6, 21, 46, .98); border-bottom: 1px solid rgba(198, 173, 125, .25); transform: translateY(-110%); visibility: hidden; transition: transform .35s ease, visibility .35s; }
.admin-bar .mitt-solutions { top: 116px; }
.mitt-solutions.is-open { transform: none; visibility: visible; }
.mitt-solutions-grid { max-width: 1180px; margin: auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 64px; }
.mitt-solutions h2 { margin: 0 0 20px; color: var(--mitt-gold); font: 600 10px/1.2 var(--mitt-sans); letter-spacing: .28em; text-transform: uppercase; }
.mitt-solutions a { display: block; padding: 11px 0; border-bottom: 1px solid rgba(244, 240, 230, .1); font-size: 14px; color: rgba(244, 240, 230, .76); }
.mitt-solutions a:hover { color: var(--mitt-paper); }
.mitt-solutions em { margin-right: 12px; color: var(--mitt-gold); font-style: normal; font-size: 9px; }

.mitt-intro { min-height: 610px; padding: 175px clamp(24px, 9vw, 150px) 90px; display: grid; align-items: end; color: var(--mitt-paper); background: radial-gradient(circle at 78% 35%, rgba(117, 199, 246, .16), transparent 30%), linear-gradient(135deg, #06152e, #0c284d 72%, #133a62); position: relative; overflow: hidden; }
.mitt-intro::before { content: ""; position: absolute; inset: 84px clamp(18px, 4vw, 66px) 42px; border: 1px solid rgba(198, 173, 125, .22); pointer-events: none; }
.mitt-intro::after { content: "MEDICAL RISK"; position: absolute; right: 3vw; bottom: 105px; color: rgba(244, 240, 230, .06); font: 600 clamp(52px, 9vw, 140px)/.8 var(--mitt-sans); letter-spacing: -.08em; writing-mode: vertical-rl; }
.mitt-intro-inner { position: relative; z-index: 1; width: min(820px, 100%); }
.mitt-eyebrow { margin: 0 0 24px; color: var(--mitt-gold); font: 600 10px/1.4 var(--mitt-sans); letter-spacing: .32em; text-transform: uppercase; }
.mitt-intro h1 { margin: 0; max-width: 720px; font: 500 clamp(58px, 8.4vw, 118px)/.84 var(--mitt-serif); letter-spacing: -.055em; }
.mitt-intro h1 em { color: var(--mitt-gold); font-weight: 500; }
.mitt-intro-copy { max-width: 650px; margin: 32px 0 40px; color: rgba(244, 240, 230, .72); font-size: clamp(16px, 1.5vw, 20px); line-height: 1.7; }
.mitt-intro-meta { display: flex; gap: 34px; color: rgba(244, 240, 230, .62); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
.mitt-intro-meta strong { margin-right: 8px; color: var(--mitt-gold); }

.mitt-form-section { padding: clamp(70px, 9vw, 130px) clamp(18px, 7vw, 110px); background: var(--mitt-paper); }
.mitt-form-heading { width: min(1180px, 100%); margin: 0 auto 46px; display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: 70px; }
.mitt-eyebrow-dark { color: var(--mitt-gold-dark); }
.mitt-form-heading h2 { max-width: 720px; margin: 0; font: 500 clamp(38px, 5vw, 70px)/1 var(--mitt-serif); letter-spacing: -.045em; }
.mitt-form-heading > p { margin: 0; color: var(--mitt-muted); font-size: 15px; line-height: 1.75; }
.mitt-form-card { width: min(1180px, 100%); margin: auto; padding: clamp(24px, 4vw, 60px); background: var(--mitt-white); border: 1px solid var(--mitt-line); box-shadow: 0 28px 80px rgba(16, 30, 54, .08); }
.mitt-form-warning { padding: 28px; border-left: 4px solid var(--mitt-gold); background: rgba(198, 173, 125, .13); }
.mitt-form-warning strong { font-family: var(--mitt-serif); font-size: 24px; }
.mitt-form-warning p { margin: 8px 0 0; color: var(--mitt-muted); }

/* Forminator: mantem toda a logica do formulario 3387 e aplica apenas o tema visual da Mitt. */
.mitt-form-card .forminator-ui.forminator-custom-form { margin: 0 !important; font-family: var(--mitt-sans) !important; }
.mitt-form-card .forminator-ui .forminator-row,
.mitt-form-card .forminator-ui .forminator-col { min-width: 0 !important; }
.mitt-form-card .forminator-ui .forminator-row { margin-bottom: 24px !important; }
.mitt-form-card .forminator-ui .forminator-label { margin-bottom: 9px !important; color: var(--mitt-ink) !important; font: 600 10px/1.4 var(--mitt-sans) !important; letter-spacing: .14em !important; text-transform: uppercase !important; }
.mitt-form-card .forminator-ui .forminator-input,
.mitt-form-card .forminator-ui .forminator-textarea,
.mitt-form-card .forminator-ui .forminator-select2 + .forminator-select .selection .select2-selection--single,
.mitt-form-card .forminator-ui select.forminator-select--field { width: 100% !important; min-width: 0 !important; min-height: 54px !important; padding: 13px 16px !important; color: var(--mitt-ink) !important; background: #f8f6f0 !important; border: 1px solid rgba(16, 30, 54, .25) !important; border-radius: 2px !important; font: 400 15px/1.4 var(--mitt-sans) !important; box-shadow: none !important; }
.mitt-form-card .forminator-ui .forminator-textarea { min-height: 130px !important; }
.mitt-form-card .forminator-ui .forminator-input:focus,
.mitt-form-card .forminator-ui .forminator-textarea:focus { border-color: var(--mitt-gold-dark) !important; box-shadow: 0 0 0 3px rgba(198, 173, 125, .18) !important; }
.mitt-form-card .forminator-ui .forminator-description,
.mitt-form-card .forminator-ui .forminator-error-message { font-family: var(--mitt-sans) !important; }
.mitt-form-card .forminator-ui .forminator-radio-label,
.mitt-form-card .forminator-ui .forminator-checkbox-label { color: var(--mitt-ink) !important; font-family: var(--mitt-sans) !important; }
.mitt-form-card .forminator-ui .forminator-radio-bullet,
.mitt-form-card .forminator-ui .forminator-checkbox-box { border-color: rgba(16, 30, 54, .45) !important; }
.mitt-form-card .forminator-ui .forminator-button,
.mitt-form-card .forminator-ui .forminator-button-submit,
.mitt-form-card .forminator-ui .forminator-button-next,
.mitt-form-card .forminator-ui .forminator-button-back { min-height: 50px !important; padding: 14px 26px !important; border: 1px solid var(--mitt-navy) !important; border-radius: 0 !important; background: var(--mitt-navy) !important; color: var(--mitt-paper) !important; font: 600 10px/1 var(--mitt-sans) !important; letter-spacing: .18em !important; text-transform: uppercase !important; box-shadow: none !important; }
.mitt-form-card .forminator-ui .forminator-button:hover,
.mitt-form-card .forminator-ui .forminator-button-submit:hover,
.mitt-form-card .forminator-ui .forminator-button-next:hover { background: var(--mitt-gold) !important; border-color: var(--mitt-gold) !important; color: var(--mitt-deep) !important; }
.mitt-form-card .forminator-ui .forminator-button-back { background: transparent !important; color: var(--mitt-navy) !important; }
.mitt-form-card .forminator-ui .forminator-pagination-progress { background: rgba(16, 30, 54, .12) !important; }
.mitt-form-card .forminator-ui .forminator-pagination-progress .forminator-progress-bar span { background: var(--mitt-gold-dark) !important; }
.mitt-form-card .forminator-ui .forminator-pagination-steps .forminator-step .forminator-step-label { color: var(--mitt-muted) !important; font-family: var(--mitt-sans) !important; }
.mitt-form-card .forminator-ui .forminator-pagination-steps .forminator-step .forminator-step-dot { background: rgba(16, 30, 54, .15) !important; }
.mitt-form-card .forminator-ui .forminator-pagination-steps .forminator-step.forminator-current .forminator-step-dot { background: var(--mitt-gold-dark) !important; }

.mitt-guidance { padding: clamp(80px, 10vw, 145px) clamp(24px, 10vw, 160px); color: var(--mitt-paper); background: var(--mitt-navy); text-align: center; }
.mitt-guidance h2 { max-width: 850px; margin: 0 auto 24px; font: 500 clamp(42px, 6vw, 82px)/1 var(--mitt-serif); letter-spacing: -.045em; }
.mitt-guidance > p:not(.mitt-eyebrow) { max-width: 620px; margin: 0 auto 34px; color: rgba(244, 240, 230, .66); line-height: 1.75; }
.mitt-guidance a { display: inline-block; padding: 16px 24px; border: 1px solid var(--mitt-gold); color: var(--mitt-paper); font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.mitt-guidance a span { margin-left: 16px; color: var(--mitt-gold); }

.mitt-whatsapp { position: fixed; z-index: 85; right: 24px; bottom: 24px; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: #25d366; color: #fff; box-shadow: 0 16px 35px rgba(6, 21, 46, .28); }
.mitt-whatsapp svg { width: 31px; }
.mitt-footer { padding: 76px clamp(24px, 7vw, 110px) 28px; color: var(--mitt-paper); background: var(--mitt-deep); }
.mitt-footer-grid { max-width: 1240px; margin: auto; display: grid; grid-template-columns: 1.8fr repeat(3, 1fr); gap: 56px; }
.mitt-footer img { width: 150px; filter: brightness(0) invert(1); }
.mitt-footer-brand p { max-width: 280px; color: rgba(244, 240, 230, .5); line-height: 1.7; }
.mitt-footer strong { display: block; margin-bottom: 18px; color: var(--mitt-gold); font-size: 9px; letter-spacing: .25em; text-transform: uppercase; }
.mitt-footer a, .mitt-footer span { display: block; margin: 10px 0; color: rgba(244, 240, 230, .58); font-size: 13px; line-height: 1.6; }
.mitt-footer a:hover { color: var(--mitt-paper); }
.mitt-footer-base { max-width: 1240px; margin: 64px auto 0; padding-top: 20px; display: flex; justify-content: space-between; border-top: 1px solid rgba(244, 240, 230, .1); }
.mitt-footer-base span, .mitt-footer-base a { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }

@media (max-width: 900px) {
  body.mitt-checklist-page.admin-bar .mitt-header { top: 46px; }
  .mitt-header { height: 72px; grid-template-columns: 1fr auto; padding: 0 20px; }
  .mitt-logo img { width: 134px; }
  .mitt-nav { position: fixed; top: 72px; right: 0; left: 0; padding: 26px 24px; display: none; align-items: stretch; flex-direction: column; gap: 0; background: var(--mitt-deep); border-bottom: 1px solid rgba(198, 173, 125, .25); }
  .admin-bar .mitt-nav { top: 118px; }
  .mitt-nav.is-open { display: flex; }
  .mitt-nav a, .mitt-solutions-trigger { padding: 15px 0; border-bottom: 1px solid rgba(244, 240, 230, .1); text-align: left; }
  .mitt-talk { display: none; }
  .mitt-menu-toggle { display: block; }
  .mitt-solutions { top: 72px; max-height: calc(100vh - 72px); overflow: auto; }
  .admin-bar .mitt-solutions { top: 118px; }
  .mitt-solutions-grid { grid-template-columns: 1fr; gap: 32px; }
  .mitt-intro { min-height: 600px; padding: 145px 28px 70px; }
  .mitt-intro::before { top: 94px; }
  .mitt-intro h1 { font-size: clamp(54px, 16vw, 82px); }
  .mitt-intro-meta { flex-wrap: wrap; gap: 14px 24px; }
  .mitt-form-heading { grid-template-columns: 1fr; gap: 24px; }
  .mitt-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
  .mitt-intro { min-height: 560px; }
  .mitt-intro::after { display: none; }
  .mitt-intro h1 { font-size: 55px; }
  .mitt-intro-copy { font-size: 15px; }
  .mitt-form-section { padding-inline: 14px; }
  .mitt-form-card { padding: 22px 16px; }
  .mitt-form-heading { padding: 0 8px; }
  .mitt-form-heading h2 { font-size: 42px; }
  .mitt-footer-grid { grid-template-columns: 1fr; gap: 34px; }
  .mitt-footer-base { align-items: flex-start; flex-direction: column; }
  .mitt-whatsapp { right: 16px; bottom: 16px; width: 52px; height: 52px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
