/* ==========================================================================
   Evidence Company / Contact - Full Elevate brand, lime (the umbrella brand).
   Copy from "Root Evidence Web Copy (5).docx". Shared chrome from ../../site.css.
   4px spacing grid. Inputs separate by FILL, not hairline borders, per brand.
   NOTE: the form is confirmation-only for now - no backend is wired. contact.js
   shows the sent state on submit; swap in a POST when an endpoint exists.
   ========================================================================== */
body{overflow-x:hidden;}

.cf .hl{position:relative;z-index:-1;background:var(--lime-300);color:var(--forest);font-family:var(--font-display);font-weight:700;font-size:inherit;line-height:1.5;border-radius:8px;padding:4px 12px;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.r{opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-silk),transform .6s var(--ease-silk);}
.r.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.r{opacity:1;transform:none;transition:none;}}

.cf-in{max-width:1100px;margin:0 auto;padding:0 24px;}

/* 1 hero */
.cf-hero{padding:var(--space-2xl) 0 var(--space-md);text-align:center;}
.cf-hero__h{font-family:var(--font-display);font-weight:700;font-size:clamp(36px,5.4vw,72px);line-height:1.06;letter-spacing:-0.035em;color:var(--ink);margin:0 auto;max-width:16em;}
.cf-hero__lead{font-size:20px;line-height:1.6;color:var(--ink);max-width:40em;margin:24px auto 0;}

/* 2 form: the focal element, centered */
.cf-formsec{padding:var(--space-md) 24px var(--space-xl);}
.cf-formwrap{max-width:560px;margin:0 auto;}

/* 3 what happens after you send this (below the form) */
.cf-after{padding:var(--space-lg) 24px var(--space-md);text-align:center;}
.cf-after__in{max-width:640px;margin:0 auto;}
.cf-after__h{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,2.8vw,34px);line-height:1.15;letter-spacing:-0.02em;color:var(--ink);margin:0;}
.cf-after__lead{font-family:var(--font-display);font-weight:700;font-size:20px;line-height:1.3;color:var(--ink);margin:12px 0 0;}
.cf-after__p{font-size:16px;line-height:1.6;color:var(--ink);margin:16px 0 0;}

/* 4 what we handle - 2x2 icon tiles */
.cf-types-sec{padding:0 24px var(--space-2xl);}
.cf-types{max-width:880px;margin:0 auto;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media(max-width:680px){.cf-types{grid-template-columns:1fr;}}
.cf-type{background:var(--fill-1);border-radius:var(--radius-card);padding:32px;transition:transform .25s var(--ease-silk);}
.cf-type:hover{transform:translateY(-4px);}
.cf-type__ic{display:inline-flex;width:52px;height:52px;border-radius:16px;background:var(--forest);color:var(--lime-300);align-items:center;justify-content:center;margin-bottom:16px;}
.cf-type__ic svg{width:28px;height:28px;stroke-width:2.4;}
.cf-type h3{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:-0.01em;color:var(--ink);margin:0 0 8px;}
.cf-type p{font-size:15px;line-height:1.55;color:var(--ink);margin:0;}

/* form card */
.cf-formcard{background:var(--fill-1);border-radius:var(--radius-card);padding:40px;}
@media(max-width:480px){.cf-formcard{padding:28px;}}
.cf-form{display:flex;flex-direction:column;gap:20px;}
.cf-field{display:flex;flex-direction:column;gap:8px;}
.cf-label{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--ink);}
.cf-input,.cf-select,.cf-textarea{font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--fill-2);border:0;border-radius:var(--radius-input);padding:16px;width:100%;}
.cf-input::placeholder,.cf-textarea::placeholder{color:var(--slate-400);}
.cf-input:focus,.cf-select:focus,.cf-textarea:focus{outline:none;box-shadow:0 0 0 2px var(--lime);}
.cf-textarea{min-height:120px;resize:vertical;}
.cf-consent{display:flex;gap:12px;align-items:flex-start;}
.cf-consent input{flex:none;width:18px;height:18px;margin-top:4px;accent-color:var(--lime);}
.cf-consent label{font-size:14px;line-height:1.5;color:var(--ink);}
.cf-submit{width:100%;justify-content:center;margin-top:4px;}

/* sent state (swaps in for the form) */
.cf-done{display:none;text-align:center;padding:16px 0;}
.cf-formcard.is-sent .cf-form{display:none;}
.cf-formcard.is-sent .cf-done{display:block;}
.cf-done__ic{display:inline-flex;width:64px;height:64px;border-radius:9999px;background:var(--lime-300);color:var(--forest);align-items:center;justify-content:center;margin:0 0 16px;}
.cf-done__ic svg{width:34px;height:34px;stroke-width:2.4;}
.cf-done__h{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,3vw,34px);line-height:1.1;letter-spacing:-0.02em;color:var(--ink);margin:0;}
.cf-done__p{font-size:16px;line-height:1.6;color:var(--ink);margin:16px auto 0;max-width:40em;}
.cf-done__p a{color:var(--green-700);font-weight:600;text-decoration:underline;}
