/* HedefLot - giriş gerektirmeyen sayfalar için ortak mobil uyum katmanı. */
@media (max-width: 820px) {
  html, body { max-width: 100%; overflow-x: hidden; }
  body { -webkit-text-size-adjust: 100%; }
  .container { width: calc(100% - 32px) !important; max-width: none !important; min-width: 0; }

  /* Ortak üst menü */
  .site-header { position: relative; z-index: 500; }
  .site-nav { position: relative; display: flex !important; min-height: 66px; gap: 10px !important; }
  .site-nav .brand { min-width: 0; margin-right: auto; }
  .site-nav .brand-logo-image { width: 34px !important; height: 34px !important; }
  .site-nav .brand-logo-name { font-size: 21px !important; }
  .nav-toggle { display: inline-flex !important; align-items: center; justify-content: center; width: 42px; height: 40px; padding: 0 !important; border: 1px solid #cbd5e1; border-radius: 10px; background: #fff; color: #1e3a5f; font-size: 21px; line-height: 1; cursor: pointer; }
  .public-nav { display: none !important; position: absolute !important; z-index: 510; top: calc(100% + 7px); left: 0; right: 0; width: auto !important; margin: 0 !important; padding: 9px !important; border: 1px solid #dbe4f0; border-radius: 14px; background: #fff; box-shadow: 0 18px 40px rgba(15, 23, 42, .18); }
  .public-nav.open { display: grid !important; grid-template-columns: 1fr 1fr; gap: 4px; }
  .public-nav a { display: flex !important; align-items: center; min-height: 42px; padding: 9px 11px !important; border-radius: 9px; white-space: normal !important; font-size: 13px !important; line-height: 1.25; }
  .public-nav .mobile-public-action { display: flex !important; }
  .public-nav .mobile-public-primary { color: #fff !important; background: #2563eb !important; }
  .nav-actions { display: none !important; }

  /* Genel içerik ölçeği ve taşmaları önleme */
  .page-main, .home-pro-main, .demo-main { overflow: hidden; }
  .page-intro { padding-top: 42px !important; padding-bottom: 28px !important; }
  .page-intro h1, .home-hero h1, .demo-hero h1, .mobile-install-hero h1 { font-size: clamp(30px, 9vw, 42px) !important; line-height: 1.13 !important; }
  .page-intro > p, .article-lead, .home-lead, .demo-lead, .mobile-install-hero p { font-size: 15px !important; line-height: 1.65 !important; }
  .page-main h2, .home-pro-main h2, .demo-main h2 { font-size: clamp(23px, 6.5vw, 31px) !important; line-height: 1.22 !important; }
  img, svg, video, canvas { max-width: 100%; height: auto; }
  pre, code { overflow-wrap: anywhere; white-space: pre-wrap; }

  /* Ürün / Premium / Demo kartları */
  .details-grid, .pricing-grid, .membership-grid, .article-list, .comparison-grid, .feature-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 14px !important; }
  .details-grid > article, .pricing-grid > article, .membership-grid > article, .article-card, .contact-box { min-width: 0; }
  .premium-pricing-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .premium-plan-card, .article-card, .details-grid > article { padding: 20px !important; }
  .plan-heading h2, .premium-plan-card h2 { font-size: 25px !important; }
  .plan-price strong { font-size: 29px !important; }
  .button { min-height: 44px; padding: 11px 16px !important; text-align: center; }
  .pricing-comparison, .feature-comparison, .comparison-table-wrap, .table-responsive { overflow-x: auto !important; -webkit-overflow-scrolling: touch; }
  .pricing-comparison table, .feature-comparison table, .comparison-table, .page-main table { min-width: 620px; }

  /* Ana sayfa */
  .home-hero { padding-top: 38px !important; }
  .home-hero-grid, .home-scenario-grid, .home-premium, .home-final > .container, .demo-hero-grid, .mobile-install-hero-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 28px !important; }
  .home-hero-copy { min-width: 0; }
  .home-actions, .mobile-install-actions, .demo-hero-actions { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 10px; align-items: stretch !important; }
  .home-actions > *, .mobile-install-actions > *, .demo-hero-actions > * { width: 100%; text-align: center; }
  .home-trust, .home-value-grid, .home-steps { grid-template-columns: minmax(0, 1fr) !important; gap: 10px !important; }
  .home-hero-visual { min-height: 355px; transform: scale(.94); transform-origin: top center; margin-bottom: -22px; }
  .home-preview { width: min(100%, 390px) !important; }
  .home-float { max-width: 190px; font-size: 11px; }
  .home-float.add { left: 0 !important; }
  .home-float.date { right: 0 !important; }
  .scenario-shift { grid-template-columns: minmax(0, 1fr) !important; }
  .scenario-shift > i { transform: rotate(90deg); justify-self: center; }
  .premium-mini { grid-template-columns: minmax(0, 1fr) !important; }
  .home-final > .container { padding: 28px 0 !important; }
  .home-final > .container > div:last-child { display: grid; gap: 11px; }
  .home-final > .container > div:last-child a { width: 100%; text-align: center; }

  /* Rehber, kurumsal ve yasal metinler */
  .article-page { width: calc(100% - 32px) !important; padding: 32px 0 42px !important; }
  .article-page h1 { font-size: clamp(29px, 8vw, 39px) !important; line-height: 1.15 !important; }
  .article-page h2 { margin-top: 30px !important; font-size: 23px !important; }
  .article-page p, .article-page li { font-size: 15px !important; line-height: 1.7 !important; }
  .article-callout, .article-cta { padding: 18px !important; }
  .article-cta { display: grid !important; gap: 16px; }
  .article-cta .button { width: 100%; }
  .article-list { margin-bottom: 38px !important; }
  .article-card h2 { font-size: 21px !important; }
  .legal-page, .legal-content, .policy-page, .content-card { width: calc(100% - 32px) !important; max-width: none !important; }

  /* Mobil kullanım rehberi ve iletişim */
  .phone-mockup { margin: 0 auto; transform: scale(.86); transform-origin: top center; margin-bottom: -48px; }
  .mobile-install-content { padding-bottom: 40px !important; }
  .mobile-install-steps > article { grid-template-columns: 42px minmax(0, 1fr) !important; gap: 13px !important; padding: 16px !important; }
  .mobile-install-steps > article span { width: 34px !important; height: 34px !important; }
  .mobile-install-faq > div { grid-template-columns: minmax(0, 1fr) !important; }
  .contact-box { padding: 20px !important; }
  .contact-box form, .contact-box input, .contact-box textarea, .contact-box select { max-width: 100% !important; box-sizing: border-box; }

  /* Footer */
  .site-footer { margin-top: 0 !important; }
  .footer-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 28px !important; }
  .footer-grid > div { min-width: 0; }
  .footer-grid a { padding: 4px 0; }
  .footer-bottom { display: grid !important; gap: 16px; text-align: left; }
  .footer-bottom img { width: min(260px, 100%) !important; }
}

@media (max-width: 430px) {
  .container { width: calc(100% - 24px) !important; }
  .site-nav .brand-logo-name { font-size: 19px !important; }
  .public-nav.open { grid-template-columns: minmax(0, 1fr) !important; }
  .public-nav a { min-height: 40px; }
  .home-hero-visual { transform: scale(.84); margin-bottom: -54px; }
  .home-preview-body { padding: 15px !important; }
  .home-float { display: none !important; }
  .article-page, .legal-page, .legal-content, .policy-page, .content-card { width: calc(100% - 24px) !important; }
}
