/* ============================================================
   Aligned with the a dough cookie storefront design tokens
   (warm cream + floral pattern, amber→orange brand, Cabin /
   Hanken Grotesk type). Aribau Grotesk is trial-only, so this
   uses the production-safe Google fonts the main site loads.
   ============================================================ */
:root{
  --amber-500:#F29F05; --amber-600:#D9890A;
  --orange-500:#EF7507; --orange-600:#D2620A;
  --cream-50:#FFFCF8; --cream-100:#FFF8F1;
  --page:#EFE1CC;
  --ink-900:#2B1D12; --ink-700:#4A3525; --ink-500:#7A6353; --ink-400:#9C8676;
  --whatsapp:#25D366; --whatsapp-dark:#1EAE54;
  --border:rgba(43,29,18,.10);
  --shadow-md:0 8px 24px rgba(58,37,26,.08),0 2px 6px rgba(58,37,26,.05);
  --shadow-brand:0 12px 30px rgba(242,159,5,.34),0 4px 10px rgba(239,117,7,.22);
  --gradient-warm:linear-gradient(135deg,var(--amber-500) 0%,var(--orange-500) 100%);
  --font-display:'Hanken Grotesk',system-ui,Arial,sans-serif;
  --font-body:'Cabin',system-ui,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:var(--font-body);color:var(--ink-700);background:var(--page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Floral pattern background — same asset/feel as the main site */
body::before{content:'';position:fixed;inset:0;z-index:-1;background:var(--page) url('floral-pattern-only.png') repeat;background-size:620px auto;opacity:.4;pointer-events:none}

.center{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;text-align:center;gap:20px}
.logo{max-width:190px;width:44%;height:auto}
h1{font-family:var(--font-display);color:var(--ink-900);font-weight:800;letter-spacing:-.01em;font-size:clamp(26px,5vw,40px);line-height:1.1;margin:0}
.lead{color:var(--ink-500);margin:0;max-width:520px;font-size:1.0625rem;line-height:1.6}

/* Cards */
.card{width:100%;max-width:460px;background:var(--cream-50);border:1px solid var(--border);border-radius:28px;padding:28px;text-align:center;box-shadow:var(--shadow-md)}
.card h2{font-family:var(--font-display);margin:0 0 16px;font-size:1.5rem;color:var(--ink-900);font-weight:700}

/* Contact card */
.phone{margin:0 0 18px;font-size:1.55rem;font-weight:700;font-family:var(--font-display)}
.phone a{color:var(--ink-900);text-decoration:none}
.actions{display:flex;justify-content:center}
.email-line{margin:18px 0 0;font-size:.95rem;color:var(--ink-500)}
.email-line a{color:var(--orange-600);font-weight:600}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 26px;border-radius:999px;font-size:1rem;font-weight:700;font-family:var(--font-display);text-decoration:none;border:0;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}
.btn:hover{transform:translateY(-1px)}
.btn-whatsapp{background:var(--whatsapp);color:#fff;box-shadow:0 8px 20px rgba(37,211,102,.32)}
.btn-whatsapp:hover{background:var(--whatsapp-dark)}
.btn-submit{width:100%;margin-top:6px;background:var(--gradient-warm);color:#fff;font-size:1.05rem;padding:15px;box-shadow:var(--shadow-brand)}
.btn-submit:disabled{opacity:.65;cursor:default;transform:none}

/* Form */
.form-intro{margin:0 0 18px;font-size:.95rem;color:var(--ink-500)}
.field{display:block;text-align:left;margin-bottom:16px}
.field>span{display:block;font-size:.85rem;color:var(--ink-500);margin-bottom:7px;font-weight:600}
.field em{font-style:normal;opacity:.7;font-weight:400}
.field input,.field textarea{width:100%;padding:13px 15px;border-radius:16px;border:1px solid var(--border);background:#fff;color:var(--ink-900);font:inherit;font-size:1rem}
.field input::placeholder,.field textarea::placeholder{color:var(--ink-400)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--amber-500);box-shadow:0 0 0 3px rgba(242,159,5,.20)}
.field textarea{resize:vertical;min-height:96px}
.hidden{display:none}
.form-status{margin:14px 0 0;font-size:.95rem;min-height:18px;font-weight:600}
.form-status.ok{color:#1F8A4C}
.form-status.err{color:#C7372D}

@media (max-width:420px){.logo{max-width:150px;width:52%}.card{padding:22px;border-radius:24px}}
