:root { --ink:#285756; --deep:#285756; --accent:#ed8b60; --cream:#fff8f0; --line:#e7e4dd; --text:#334947; }
.brand-mark { border-radius:50%; }
.header-cta,.button { border-radius:100px; }
.hero { background:#fff8f0; }
.hero:before { content:'HOME'; color:#f5e8d8; font-size:clamp(170px,28vw,360px); }
.hero-visual { background-position:center 44%; }
.hero-visual:after { background:linear-gradient(0deg,rgba(17,50,49,.48),transparent 43%); }
.intro-strip { background:#4b9288; }
.intro-number { color:#d9f0e8; }
.intro-inner>a { color:#fff5dc; }
.fields { background:#fef3e9; }
.field-card { border-radius:12px; }
.field-card:hover { border-bottom-color:#ed8b60; }
.faq { background:#f7faf7; }
.closing { background:#347c76; }
.closing:after { color:#4a8f88; }
.closing-note { margin:0 0 22px; font-size:16px; }
.button-line { margin-top:14px; min-width:0; background:#0c7a3a; color:#fff; }
.button-line:hover { background:#09642f; color:#fff; }
.hero-actions { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.hero-line-cta { min-width:280px; }
.hero-secondary-link { display:inline-flex; align-items:center; gap:9px; padding:11px 2px; color:var(--ink); font-size:14px; font-weight:800; border-bottom:1px solid currentColor; }
.hero-secondary-link:hover { color:#bd6841; }
.hero-cta-note { max-width:430px; margin:13px 0 0; color:#56706d; font-size:13px; line-height:1.7; }
.mobile-line-cta { display:none; }
@media (max-width:720px) {
  body { padding-bottom:78px; }
  .hero:before { font-size:180px; bottom:220px; }
  .hero-actions { align-items:stretch; gap:12px; }
  .hero-line-cta { width:100%; min-width:0; }
  .hero-secondary-link { justify-content:center; width:100%; border:0; padding:6px 2px; }
  .hero-cta-note { margin-top:9px; font-size:12px; }
  .mobile-line-cta { display:flex; position:fixed; z-index:30; left:12px; right:12px; bottom:max(10px,env(safe-area-inset-bottom)); min-height:56px; align-items:center; justify-content:center; gap:18px; padding:13px 20px; border-radius:100px; background:#0c7a3a; color:#fff; font-size:15px; font-weight:800; box-shadow:0 10px 30px rgba(12,82,48,.28); }
  .mobile-line-cta:focus-visible { outline:3px solid #fff; outline-offset:-5px; }
}
