/* uFound - design polish pass */

/* hero: single column, headline-led */
.hero-in{display:block}
.hero-copy{max-width:860px}
.hero h1{font-size:clamp(40px,6.4vw,84px)}
.hero h1 .wp{color:#fff}
.hero h1 em .wp{color:var(--signal)}

/* stats band: numbers a touch smaller so they never touch the edge */
.stat-num{font-size:clamp(40px,4.6vw,68px)}

/* section rhythm: a hairline between stacked light sections */
.section + .section:not(.section-alt){border-top:1px solid rgba(8,39,31,.06)}

/* cards: crisper hover states and consistent heading height */
.service-card h3{min-height:2.3em;display:flex;align-items:flex-end}
@media(max-width:900px){.service-card h3{min-height:0}}
.why-card .num{display:flex;align-items:center;gap:8px}
.why-card .num::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(183,240,138,.35)}

/* ================= quote section redesign ================= */
.contact-wrap{align-items:stretch;grid-template-columns:5fr 6fr;gap:clamp(16px,2vw,24px)}
.contact-card{position:relative;top:auto;display:flex;flex-direction:column;padding:clamp(28px,3.6vw,52px)}
.contact-card h2{font-size:clamp(30px,3.4vw,46px);line-height:1.05;margin-top:16px}
.contact-card>p{margin-top:16px;max-width:36ch;font-size:16px}

/* "start right away": a light card inside the dark one, so it reads as the fast path */
.start-now{margin-top:clamp(24px,3vw,36px);padding:clamp(20px,2.2vw,26px);border-radius:22px;background:var(--paper);border:0;display:flex;flex-direction:column;gap:16px;position:relative;z-index:1}
.start-now-title{margin:0;color:var(--forest-950);font-size:clamp(19px,1.7vw,22px);font-weight:600;letter-spacing:-.025em;line-height:1.2}
.start-now .btn{width:100%;justify-content:space-between;text-align:left;min-height:56px;padding:12px 14px 12px 22px;background:var(--forest-950);color:#fff;border-radius:999px;font-size:15px;line-height:1.3;box-shadow:0 14px 30px -16px rgba(8,39,31,.7)}
.start-now .btn:hover{background:var(--forest-800)}
.start-now .btn .arr{flex:none;width:34px;height:34px;border-radius:50%;background:var(--signal);color:var(--forest-950);display:grid;place-items:center;font-size:16px}

/* contact details pinned to the bottom so both panels end on the same line */
.contact-list{margin-top:auto;padding-top:clamp(24px,3vw,36px);position:relative;z-index:1}
.contact-list li{align-items:baseline}
.contact-list strong{min-width:92px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--on-dark-soft);font-weight:600}
.contact-list a{color:#fff;font-weight:500}

/* form: roomier, two-up name/email, clearer focus */
form.quote{padding:clamp(26px,3.4vw,48px);gap:20px;border-radius:var(--card);display:grid;grid-template-columns:1fr 1fr;align-content:start}
form.quote>*{grid-column:1/-1}
form.quote>.field:nth-of-type(1),form.quote>.field:nth-of-type(2){grid-column:auto}
.field label{font-size:13.5px;font-weight:600;color:var(--forest-950)}
.field input,.field select,.field textarea{padding:15px 16px;border-radius:14px;border-color:#c9cbc0;background:#fbfbf7}
.field input:focus,.field select:focus,.field textarea:focus{background:#fff}
.field textarea{min-height:140px}
form.quote .btn[type=submit]{min-height:58px;font-size:16px;margin-top:4px;background:var(--forest-950);color:#fff;box-shadow:0 16px 32px -18px rgba(8,39,31,.8)}
form.quote .btn[type=submit]:hover{background:var(--forest-800)}
form.quote .btn[type=submit]::after{content:"\2192";display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--signal);color:var(--forest-950);font-size:15px;margin-left:4px}
@media(max-width:900px){
  .contact-wrap{grid-template-columns:1fr}
  .contact-card>p{max-width:none}
  .contact-list{margin-top:28px}
}
@media(max-width:560px){
  form.quote{grid-template-columns:1fr}
  form.quote>.field:nth-of-type(1),form.quote>.field:nth-of-type(2){grid-column:1/-1}
  .contact-list strong{min-width:80px}
}

/* fixes from review */
.contact-card .start-now-title{color:var(--forest-950)}
#quoteForm{grid-template-rows:auto auto 1fr auto}
#quoteForm>.field:has(textarea){display:flex;flex-direction:column}
#quoteForm>.field:has(textarea) textarea{flex:1;min-height:140px}
@media(max-width:900px){#quoteForm{grid-template-rows:none}}
#partnerForm>.field:nth-of-type(1),#partnerForm>.field:nth-of-type(2),#partnerForm>.field:nth-of-type(3),#partnerForm>.field:nth-of-type(4){grid-column:auto}
@media(max-width:560px){#partnerForm>.field:nth-of-type(-n+4){grid-column:1/-1}}
