.sfh-landing,
.sfh-auth-page,
.sfh-landing *,
.sfh-auth-page * { box-sizing: border-box; }
.sfh-landing,
.sfh-auth-page { background: #f8fbff; color: #08224b; font-family: Tahoma, Arial, sans-serif; min-height: 100vh; }
.sfh-site-header { align-items: center; background: rgba(255,255,255,.94); border-bottom: 1px solid #e2ebf4; display: flex; gap: 24px; justify-content: space-between; padding: 18px clamp(20px, 7vw, 96px); position: sticky; top: 0; z-index: 3; }
.sfh-site-brand { align-items: center; display: flex; gap: 12px; }
.sfh-site-brand span { align-items: center; background: linear-gradient(135deg, #24c7a8, #1bb6de); border-radius: 12px; color: #fff; display: inline-flex; font-size: 24px; font-weight: 900; height: 44px; justify-content: center; width: 44px; }
.sfh-site-brand strong { font-size: 30px; }
.sfh-site-header nav { display: flex; gap: 24px; }
.sfh-site-header a { color: #08224b; font-weight: 900; text-decoration: none; }
.sfh-auth-button { align-items: center; background: linear-gradient(180deg,#27cdb0,#12ac8e); border: 0; border-radius: 10px; color: #fff !important; display: inline-flex; font-weight: 900; justify-content: center; min-height: 50px; padding: 0 22px; text-decoration: none; }
.sfh-hero { align-items: center; display: grid; gap: 42px; grid-template-columns: minmax(0, 1fr) 360px; padding: 56px clamp(20px, 7vw, 96px); }
.sfh-hero h1 { font-size: clamp(42px, 6vw, 76px); line-height: 1.15; margin: 0 0 20px; }
.sfh-hero p { color: #1c3154; font-size: 20px; line-height: 1.8; margin: 0 0 28px; max-width: 640px; }
.sfh-hero-preview { display: flex; justify-content: center; }
.sfh-phone-demo { background: #fff; border: 1px solid #d8e5f1; border-radius: 26px; box-shadow: 0 28px 70px rgba(8,34,75,.12); overflow: hidden; padding: 0 22px 22px; text-align: center; width: 300px; }
.sfh-phone-demo div { background: linear-gradient(135deg,#26c4a8,#d9f7f0); height: 108px; margin: 12px -14px 0; }
.sfh-phone-demo img { border: 4px solid #fff; border-radius: 999px; box-shadow: 0 10px 22px rgba(8,34,75,.18); height: 78px; margin-top: -42px; object-fit: cover; width: 78px; }
.sfh-phone-demo h2 { margin: 8px 0 4px; }
.sfh-phone-demo p { color: #60718a; font-size: 13px; margin: 0 0 14px; }
.sfh-phone-demo a { border: 1px solid #e2ebf4; border-radius: 12px; display: block; font-weight: 900; margin: 9px 0; min-height: 42px; padding: 12px; }
.sfh-features,
.sfh-plans,
.sfh-contact { padding: 42px clamp(20px, 7vw, 96px); }
.sfh-features { display: grid; gap: 16px; grid-template-columns: repeat(3, 1fr); }
.sfh-features article,
.sfh-plans article,
.sfh-auth-card { background: #fff; border: 1px solid #e2ebf4; border-radius: 16px; padding: 24px; }
.sfh-features strong,
.sfh-plans h3 { font-size: 24px; }
.sfh-features p,
.sfh-plans p,
.sfh-contact p { color: #60718a; line-height: 1.8; }
.sfh-plans h2,
.sfh-contact h2 { font-size: 36px; margin: 0 0 18px; text-align: center; }
.sfh-plans > div { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 auto; max-width: 860px; }
.sfh-plans .featured { border-color: #24c7a8; box-shadow: 0 20px 50px rgba(36,199,168,.12); }
.sfh-auth-page { align-items: center; display: grid; gap: 22px; grid-template-columns: repeat(2, minmax(0, 420px)); justify-content: center; padding: 30px; }
.sfh-auth-card h1 { margin: 0 0 20px; }
.sfh-auth-card label { color: #1f3556; display: grid; font-weight: 900; gap: 8px; margin-bottom: 16px; }
.sfh-auth-card input { border: 1px solid #e2ebf4; border-radius: 10px; min-height: 50px; padding: 0 14px; width: 100%; }
.sfh-auth-card .sfh-auth-button { width: 100%; }
@media (max-width: 850px) {
  .sfh-site-header,
  .sfh-site-header nav { align-items: center; flex-direction: column; }
  .sfh-hero,
  .sfh-features,
  .sfh-plans > div,
  .sfh-auth-page { grid-template-columns: 1fr; }
  .sfh-hero { text-align: center; }
}
