/* -------------------------------------------------------------
   Página de aguarde — MGK Empreendimentos
   Depende de tokens.css.
   ------------------------------------------------------------- */

body.mgk-aguarde{background:#fff;overflow-x:hidden}

.mgk-shell{min-height:100vh;display:flex;flex-direction:column}

/* ---------- Hero ---------- */

.mgk-hero{
  position:relative;
  min-height:clamp(360px,58vh,640px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:var(--bg-dark);
  overflow:hidden;
}

.mgk-hero__slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 42%;
  opacity:0;
  transition:opacity 900ms var(--ease-standard);
  pointer-events:none;
}
.mgk-hero__slide.is-on{opacity:1}

.mgk-hero__veil{
  position:absolute;
  inset:0;
  background:rgba(0,84,80,.74);
  pointer-events:none;
}

.mgk-hero__pattern{
  position:absolute;
  right:-40px;
  top:0;
  height:100%;
  width:auto;
  max-width:none;
  opacity:.18;
  pointer-events:none;
}

.mgk-wrap{
  position:relative;
  max-width:var(--container);
  margin:0 auto;
  width:100%;
  padding-left:clamp(20px,5vw,64px);
  padding-right:clamp(20px,5vw,64px);
}

.mgk-hero__top{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px 24px;
  padding-top:clamp(20px,3.5vw,40px);
  padding-bottom:clamp(20px,3.5vw,40px);
}
.mgk-hero__logo{display:block;line-height:0}
.mgk-hero__logo img{height:clamp(42px,9vw,62px);width:auto;display:block}
.mgk-hero__place{
  font-family:var(--font-label);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#fff;
  opacity:.85;
  white-space:nowrap;
}

.mgk-hero__copy{padding-bottom:clamp(88px,10vw,140px)}
.mgk-hero__eyebrow{
  display:block;
  font-family:var(--font-brand);
  font-weight:300;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--mgk-light-green);
  margin-bottom:18px;
}
.mgk-hero__title{
  font-size:clamp(30px,5.4vw,58px);
  line-height:1.06;
  font-weight:var(--fw-title);
  letter-spacing:-.02em;
  color:#fff;
  max-width:17ch;
}
.mgk-hero__lede{
  margin-top:20px;
  font-size:clamp(16px,1.5vw,19px);
  line-height:1.55;
  color:#fff;
  max-width:52ch;
}

/* ---------- Corpo ---------- */

.mgk-main{
  flex:1 0 auto;
  max-width:var(--container);
  margin:0 auto;
  width:100%;
  padding:0 clamp(20px,5vw,64px) clamp(56px,7vw,96px);
}
.mgk-cols{
  display:flex;
  flex-direction:row-reverse;
  flex-wrap:wrap;
  gap:clamp(28px,4vw,56px);
  align-items:flex-start;
}

/* ---------- Card do formulário ---------- */

.mgk-card{
  flex:1 1 400px;
  min-width:min(100%,320px);
  margin-top:clamp(-120px,-8vw,-64px);
  position:relative;
  z-index:2;
  background:#fff;
  border:1px solid var(--hairline);
  border-radius:var(--radius-card);
  padding:clamp(24px,3vw,40px);
}
.mgk-card__head h2{
  font-size:clamp(20px,2.2vw,26px);
  font-weight:var(--fw-title);
  letter-spacing:-.01em;
  color:var(--text);
}
.mgk-card__head p{
  margin-top:8px;
  font-size:14px;
  line-height:1.5;
  color:var(--text-muted);
}

.mgk-form{display:flex;flex-direction:column;gap:18px}

.mgk-field{display:flex;flex-direction:column;gap:6px}
.mgk-field label{
  font-size:14px;
  font-weight:var(--fw-medium);
  color:var(--text);
}
.mgk-field input[type="text"],
.mgk-field input[type="email"],
.mgk-field input[type="tel"]{
  height:var(--control-h);
  width:100%;
  padding:0 14px;
  font-family:inherit;
  font-size:var(--fs-body);
  color:var(--text);
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-input);
  transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);
}
.mgk-field input::placeholder{color:var(--mgk-light-gray)}
.mgk-field input:hover{border-color:var(--text-muted)}
.mgk-field input:focus{outline:none;border-color:var(--action);box-shadow:0 0 0 3px rgba(133,221,212,.45)}
.mgk-field.is-invalid input{border-color:var(--negative)}

.mgk-error{font-size:14px;color:var(--negative);min-height:0}
.mgk-error:empty{display:none}

/* Honeypot */
.mgk-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Consentimento */
.mgk-consent{display:flex;flex-direction:column;gap:8px;padding-top:4px}
.mgk-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.mgk-check input{
  appearance:none;
  -webkit-appearance:none;
  flex:0 0 auto;
  width:20px;height:20px;
  margin:1px 0 0;
  border:1px solid var(--border);
  border-radius:4px;
  background:#fff;
  cursor:pointer;
  transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard);
}
.mgk-check input:checked{
  background:var(--action) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;
  border-color:var(--action);
}
.mgk-check span{font-size:14px;line-height:1.5;color:var(--text-muted)}
.mgk-check a{color:var(--action);text-decoration:underline;text-underline-offset:3px}

/* Botão */
.mgk-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  height:var(--control-h);
  padding:0 20px;
  font-family:inherit;
  font-size:15px;
  font-weight:var(--fw-title);
  line-height:1;
  color:#fff;
  background:var(--action);
  border:1px solid var(--action);
  border-radius:var(--radius-input);
  cursor:pointer;
  transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard);
}
.mgk-btn:hover{background:var(--action-hover);border-color:var(--action-hover)}
.mgk-btn:active{background:var(--action-press);border-color:var(--action-press)}
.mgk-btn[disabled]{opacity:.6;cursor:progress}
.mgk-btn__arrow{transition:transform var(--dur-fast) var(--ease-standard)}
.mgk-btn:hover .mgk-btn__arrow{transform:translateX(3px)}

.mgk-btn--ghost{
  width:auto;
  height:auto;
  padding:0;
  color:var(--action);
  background:none;
  border:0;
  font-size:15px;
  text-decoration:underline;
  text-underline-offset:4px;
}
.mgk-btn--ghost:hover{background:none;color:var(--action-hover)}

/* Confirmação */
.mgk-done{display:none;flex-direction:column;gap:14px;padding:clamp(8px,2vw,24px) 0}
.mgk-card[data-state="done"] .mgk-form{display:none}
.mgk-card[data-state="done"] .mgk-card__head{display:none}
.mgk-card[data-state="done"] .mgk-done{display:flex}
.mgk-done__mark{
  width:44px;height:44px;
  border-radius:var(--radius-pill);
  background:var(--green-100);
  display:inline-flex;align-items:center;justify-content:center;
}
.mgk-done h2{font-size:clamp(20px,2.2vw,26px);font-weight:var(--fw-title);letter-spacing:-.01em;color:var(--text)}
.mgk-done p{font-size:16px;line-height:1.55;color:var(--text-muted);max-width:44ch}
.mgk-done__foot{border-top:1px solid var(--hairline);padding-top:16px;margin-top:4px}

/* ---------- Coluna institucional ---------- */

.mgk-side{
  flex:1 1 300px;
  min-width:min(100%,280px);
  padding-top:clamp(32px,4vw,56px);
}
.mgk-side > .mgk-label{display:block;margin-bottom:20px}
.mgk-list{border-top:1px solid var(--hairline)}
.mgk-list__item{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:22px 0;
  border-bottom:1px solid var(--hairline);
}
.mgk-list__name{font-size:22px;font-weight:var(--fw-title);letter-spacing:-.01em;color:var(--text)}
.mgk-list__where{font-size:14px;color:var(--text-muted);margin-top:4px}
.mgk-list__status{font-size:14px;color:var(--text-muted);white-space:nowrap;align-self:flex-end}
.mgk-side__about{margin-top:24px;font-size:16px;line-height:1.6;color:var(--text-muted)}
.mgk-side__address{margin-top:12px;font-size:15px;line-height:1.6;color:var(--action)}

/* ---------- Rodapé ---------- */

.mgk-foot{position:relative;background:var(--bg-dark-deep);color:#fff;overflow:hidden}
.mgk-foot__pattern{
  position:absolute;left:-30px;bottom:-20px;
  height:150%;width:auto;max-width:none;
  opacity:.1;pointer-events:none;
}
.mgk-foot__inner{
  display:flex;
  flex-wrap:wrap;
  gap:28px;
  align-items:flex-end;
  justify-content:space-between;
  padding-top:clamp(36px,5vw,64px);
  padding-bottom:clamp(36px,5vw,64px);
}
.mgk-foot__logo{height:40px;width:auto;display:block}
.mgk-foot__claim{margin-top:18px;font-size:16px;line-height:1.6;color:#fff}
.mgk-foot__links{display:flex;flex-direction:column;gap:12px;font-size:15px}
.mgk-foot__links a{color:#fff;display:inline-flex;align-items:center;gap:8px}
.mgk-foot__copy{color:var(--text-on-dark-muted);font-size:14px}

/* ---------- WhatsApp ---------- */

.mgk-zap{
  position:fixed;
  right:clamp(16px,3vw,28px);
  bottom:clamp(16px,3vw,28px);
  z-index:50;
  display:inline-flex;
  align-items:center;
  gap:10px;
  height:52px;
  padding:0 20px;
  border-radius:var(--radius-pill);
  background:var(--action);
  color:#fff;
  font-size:15px;
  font-weight:var(--fw-title);
  box-shadow:0 8px 24px rgba(0,60,57,.28);
  transition:background var(--dur-fast) var(--ease-standard);
}
.mgk-zap:hover{background:var(--action-hover);color:#fff;text-decoration:none}

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