/* 2DATE_HOME_PAGESPEED_MARKER_20260515_V20_CSS_SPLIT */
    .td-hero { padding: 48px 0 34px; position: relative; }
    .td-hero__inner { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(390px, .94fr); gap: 42px; align-items: center; }
    .td-hero__content { position: relative; z-index: 2; }
    .td-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 18px; }
    .td-badge {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 12px 20px;
      border-radius: 999px;
      font-weight: 950;
      font-size: clamp(22px, 3vw, 38px);
      line-height: 1;
      box-shadow: var(--td-shadow-sm);
    }
    .td-badge img { width: 30px; height: 30px; filter: brightness(0) invert(1); }
    .td-badge--free { color: #fff; background: linear-gradient(135deg, var(--td-coral), #ff3d52); }
    .td-badge--blue { color: #fff; background: linear-gradient(135deg, #1f7ce5, #155eb9); font-size: clamp(18px, 2.1vw, 30px); }
    .td-hero h1 {
      margin: 0;
      color: var(--td-navy);
      font-size: clamp(42px, 6vw, 78px);
      line-height: 1.04;
      letter-spacing: -.04em;
      font-weight: 950;
    }
    .td-hero h1 strong { color: var(--td-coral); }
    .td-hero__lead {
      max-width: 650px;
      margin: 20px 0 0;
      color: var(--td-text);
      font-size: clamp(18px, 1.8vw, 23px);
      font-weight: 650;
    }
    .td-hero__lead small { display: block; margin-top: 8px; color: var(--td-muted); font-size: 17px; font-weight: 600; }
    .td-hero__buttons { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
    .td-hero__micro { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 16px; color: var(--td-muted); font-weight: 800; font-size: 14px; }
    .td-hero__micro span { display: inline-flex; align-items: center; gap: 6px; }
    .td-hero__visual { min-height: 430px; position: relative; isolation: isolate; }
    .td-hero__visual:before {
      content: '';
      position: absolute;
      inset: 28px 10px 22px 10px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(255,91,104,.10), rgba(255,240,244,.06) 46%, transparent 70%);
      z-index: 0;
      pointer-events: none;
    }
    .td-doodles {
      position: absolute;
      z-index: 1;
      top: -34px;
      right: -22px;
      width: min(620px, calc(100% + 80px));
      height: calc(100% + 72px);
      object-fit: contain;
      opacity: 1;
      pointer-events: none;
      filter: drop-shadow(0 10px 18px rgba(255, 91, 104, .08));
    }
    .td-doodles--inline { display: block; }
    .td-hero-cards { position: relative; z-index: 2; width: min(480px, 100%); height: 420px; margin-inline-start: auto; }
    .td-hero-card {
      position: absolute;
      width: 250px;
      padding: 10px;
      border-radius: 24px;
      background: #fff;
      box-shadow: 0 22px 45px rgba(20, 33, 61, .18);
      transform-origin: center;
    }
    .td-hero-card--woman { right: 56px; top: 10px; transform: rotate(-7deg); z-index: 3; }
    .td-hero-card--man { right: 232px; top: 82px; transform: rotate(8deg); z-index: 2; }
    .td-hero-card__photo, .td-hero-placeholder { height: 270px; width: 100%; border-radius: 18px; object-fit: cover; background: linear-gradient(145deg, #ffe8ec, #eaf3ff); }
    .td-hero-placeholder { display: flex; align-items: center; justify-content: center; color: var(--td-coral); font-size: 54px; font-weight: 950; }
    .td-hero-card__info {
      position: absolute;
      right: 22px;
      bottom: 74px;
      color: #fff;
      font-weight: 900;
      text-shadow: 0 2px 8px rgba(0,0,0,.32);
      font-size: 18px;
    }
    .td-hero-card__info small { display: block; font-size: 14px; }
    .td-online-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: #34c759; margin-inline-start: 5px; box-shadow: 0 0 0 3px rgba(52, 199, 89, .2); }
    .td-hero-card__actions { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 12px 0 2px; }
    .td-swipe { width: 42px; height: 42px; border-radius: 50%; background: #fff; box-shadow: var(--td-shadow-sm); display: inline-flex; align-items: center; justify-content: center; color: var(--td-coral); font-weight: 950; font-size: 20px; }
    .td-swipe img { width: 22px; height: 22px; }

    .td-trust-strip {
      margin-top: 26px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      background: rgba(255,255,255,.86);
      border: 1px solid var(--td-border);
      border-radius: var(--td-radius);
      box-shadow: var(--td-shadow-sm);
      overflow: hidden;
    }
    .td-trust-item { display: flex; gap: 14px; align-items: center; padding: 22px 24px; border-inline-start: 1px solid var(--td-border); }
    .td-trust-item:first-child { border-inline-start: 0; }
    .td-trust-item img { width: 38px; height: 38px; flex: 0 0 38px; }
    .td-trust-item strong { display: block; color: var(--td-navy); font-size: 18px; line-height: 1.2; }
    .td-trust-item span { display: block; color: var(--td-muted); font-weight: 700; font-size: 14px; margin-top: 4px; }

    .td-section { padding: 38px 0; }
    .td-section--tight { padding-top: 22px; }
    .td-section-head { text-align: center; margin-bottom: 24px; }
    .td-section-head h2 { margin: 0; color: var(--td-navy); font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; font-weight: 950; }
    .td-section-head p { margin: 8px auto 0; max-width: 760px; color: var(--td-muted); font-size: 17px; font-weight: 650; }
    .td-divider { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 10px; }
    .td-divider:before, .td-divider:after { content: ''; width: 54px; height: 2px; background: #ffd0d5; border-radius: 99px; }
    .td-divider img { width: 18px; height: 18px; }

    .td-benefits { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
    .td-card {
      background: rgba(255,255,255,.88);
      border: 1px solid var(--td-border);
      border-radius: var(--td-radius-sm);
      box-shadow: var(--td-shadow-sm);
      padding: 24px;
    }
    .td-benefit-card { min-height: 190px; }
    .td-benefit-card img { width: 52px; height: 52px; margin-bottom: 14px; }
    .td-benefit-card h3 { margin: 0 0 8px; font-size: 21px; color: var(--td-navy); font-weight: 950; }
    .td-benefit-card p { margin: 0; color: var(--td-muted); font-weight: 650; }

    .td-profiles-wrap { position: relative; }
    .td-profile-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
    .td-profile-card { background: #fff; border: 1px solid var(--td-border); border-radius: 18px; overflow: hidden; box-shadow: var(--td-shadow-sm); min-width: 0; }
    .td-profile-photo-link { position: relative; display: block; aspect-ratio: 1 / 1.08; overflow: hidden; background: #eef3fb; }
    .td-profile-photo { width: 100%; height: 100%; object-fit: cover; transition: transform .28s ease; }
    .td-profile-card:hover .td-profile-photo { transform: scale(1.04); }
    .td-profile-online { position: absolute; top: 12px; right: 12px; width: 13px; height: 13px; border-radius: 50%; background: #32d47d; border: 2px solid #fff; box-shadow: 0 0 0 4px rgba(50,212,125,.22); }
    .td-profile-vip { position: absolute; top: 10px; left: 10px; background: #ffd86b; color: #664400; border-radius: 999px; padding: 4px 8px; font-size: 11px; font-weight: 950; }
    .td-profile-photo-count { position: absolute; bottom: 10px; left: 10px; display: inline-flex; align-items: center; gap: 4px; background: rgba(255,255,255,.9); color: var(--td-navy); border-radius: 999px; padding: 4px 8px; font-weight: 900; font-size: 12px; }
    .td-profile-photo-count img { width: 14px; height: 14px; }
    .td-profile-info { padding: 14px 12px 16px; text-align: center; }
    .td-profile-name { display: inline-flex; align-items: center; justify-content: center; gap: 4px; color: var(--td-navy); font-size: 17px; font-weight: 950; }
    .td-profile-name svg, .td-profile-name img { width: 16px; height: 16px; display: inline-block; }
    .td-profile-city { color: var(--td-muted); font-weight: 700; margin-top: 2px; min-height: 22px; }
    .td-profile-more { display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: var(--td-coral); font-weight: 900; margin-top: 8px; font-size: 14px; }
    .td-profile-more img { width: 16px; height: 16px; }
    .td-section-cta { text-align: center; margin-top: 22px; }

    .td-categories { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
    .td-category { text-align: center; padding: 22px 14px; }
    .td-category img { width: 56px; height: 56px; margin: 0 auto 12px; }
    .td-category strong { display: block; color: var(--td-navy); font-size: 19px; font-weight: 950; }
    .td-category span { display: block; color: var(--td-muted); margin-top: 4px; font-weight: 650; font-size: 14px; }

    .td-discovery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .td-discovery-card { display: grid; grid-template-columns: 58px 1fr; gap: 16px; align-items: start; padding: 24px; min-height: 190px; }
    .td-discovery-card img { width: 54px; height: 54px; }
    .td-discovery-card h3 { margin: 0 0 8px; color: var(--td-navy); font-size: 22px; font-weight: 950; }
    .td-discovery-card p { margin: 0; color: var(--td-muted); font-weight: 650; }
    .td-discovery-card span { display: inline-flex; margin-top: 12px; color: var(--td-coral); font-weight: 950; }
    .td-love-copy { padding: 34px; }
    .td-love-copy p { margin: 0 auto; max-width: 980px; text-align: center; color: var(--td-text); font-size: 18px; font-weight: 650; }
    .td-love-copy p + p { margin-top: 14px; }
    .td-love-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 24px; }
    .td-love-mini { padding: 18px; border-radius: 16px; background: linear-gradient(135deg, #fff, #fff6f7); border: 1px solid #ffdce1; text-align: center; }
    .td-love-mini strong { display:block; color: var(--td-navy); font-size: 18px; font-weight: 950; }
    .td-love-mini span { display:block; color: var(--td-muted); font-size: 14px; font-weight: 700; margin-top: 5px; }

    .td-intent-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .td-intent { position: relative; overflow: hidden; padding: 26px; min-height: 190px; }
    .td-intent:after { content: ''; position: absolute; left: -46px; bottom: -46px; width: 120px; height: 120px; border-radius: 50%; background: rgba(255,91,104,.10); }
    .td-intent img { width: 48px; height: 48px; margin-bottom: 14px; }
    .td-intent h3 { margin: 0 0 8px; color: var(--td-navy); font-size: 22px; font-weight: 950; }
    .td-intent p { margin: 0; color: var(--td-muted); font-weight: 650; }

    .td-region-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .td-region-card {
      position: relative;
      min-height: 142px;
      border-radius: 22px;
      overflow: hidden;
      color: #fff;
      box-shadow: var(--td-shadow-sm);
      display: flex;
      align-items: flex-end;
      padding: 24px;
      background-size: cover;
      background-position: center;
      isolation: isolate;
    }
    .td-region-card:before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20,33,61,.06), rgba(20,33,61,.72)); z-index: 0; }
    .td-region-card > span { position: relative; z-index: 1; }
    .td-region-card--north { background-image: url('/assets/img/region-north.webp'), linear-gradient(135deg, #4a9f6c, #85c999); }
    .td-region-card--center { background-image: url('/assets/img/region-center.webp'), linear-gradient(135deg, #2876c9, #6bb4ff); }
    .td-region-card--south { background-image: url('/assets/img/region-south.webp'), linear-gradient(135deg, #c18443, #e8b77b); }
    .td-region-card strong { display: block; font-size: 27px; font-weight: 950; }
    .td-region-card span { display: block; font-weight: 750; opacity: .95; }

    .td-free-box {
      position: relative;
      overflow: hidden;
      padding: 34px 34px 34px 240px;
      background:
        linear-gradient(135deg, rgba(255,255,255,.97), rgba(255,240,244,.98)),
        url('/assets/img/heart-illustration-free.webp');
      background-repeat: no-repeat, no-repeat;
      background-position: center center, left 34px center;
      background-size: auto, 150px auto;
      min-height: 280px;
    }
    .td-free-box:before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 18% 50%, rgba(255,91,104,.08), transparent 26%);
      pointer-events: none;
    }
    .td-free-box__content { position: relative; z-index: 1; max-width: 880px; }
    .td-free-box h3 { margin: 0 0 12px; color: var(--td-navy); font-size: 34px; font-weight: 950; }
    .td-free-box p { margin: 0; color: var(--td-text); font-size: 18px; font-weight: 650; }
    .td-free-box strong { color: var(--td-coral); }
    .td-free-points { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 22px; }
    .td-free-point { background: rgba(255,255,255,.78); border: 1px solid rgba(255,214,220,.9); border-radius: 16px; padding: 16px 18px; box-shadow: 0 8px 24px rgba(20,33,61,.05); }
    .td-free-point strong { display: block; color: var(--td-navy); font-size: 18px; margin-bottom: 6px; }
    .td-free-point span { display: block; color: var(--td-muted); font-size: 14px; font-weight: 700; }
    .td-how-works-wrap { display: block; }
    .td-how-intro { max-width: 880px; margin: 0 auto 24px; text-align: center; color: var(--td-muted); font-size: 17px; font-weight: 700; }
    .td-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
    .td-step { position: relative; text-align: center; padding: 28px 22px 28px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; min-height: 260px; }
    .td-step-number { position: static; width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--td-coral); color: #fff; font-weight: 950; margin: 0 auto 12px; box-shadow: 0 8px 18px rgba(255,91,104,.25); font-size: 18px; }
    .td-step img { width: 58px; height: 58px; margin: 0 auto 14px; }
    .td-step strong { display: block; color: var(--td-navy); font-size: 22px; font-weight: 950; }
    .td-step span { display: block; margin-top: 8px; color: var(--td-muted); font-weight: 700; font-size: 15px; line-height: 1.6; }
    .td-step small { display:block; margin-top:10px; color: var(--td-text); font-size: 14px; font-weight: 700; }
    .td-how-note { max-width: 950px; margin: 22px auto 0; text-align: center; color: var(--td-text); font-size: 16px; font-weight: 700; }

    .td-tips { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .td-tip { display: grid; grid-template-columns: 110px 1fr; gap: 14px; align-items: center; padding: 12px; }
    .td-tip-media { height: 100px; border-radius: 14px; background: linear-gradient(135deg, #ffe7eb, #e8f3ff); overflow: hidden; display: block; }
    .td-tip-media img { width: 100%; height: 100%; object-fit: cover; opacity: 1; }
    .td-tip h3 { margin: 0; color: var(--td-navy); font-size: 18px; line-height: 1.25; font-weight: 950; }
    .td-tip p { margin: 5px 0 0; color: var(--td-muted); font-size: 13px; font-weight: 650; }
    .td-tip a { display: inline-flex; color: var(--td-coral); font-weight: 950; margin-top: 8px; font-size: 13px; }

    .td-faq { display: grid; gap: 8px; }
    .td-faq-item {
      display: block;
      padding: 0;
      border-radius: 14px;
      background: #fff;
      border: 1px solid var(--td-border);
      color: var(--td-navy);
      font-weight: 850;
      overflow: hidden;
    }
    .td-faq-item summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 14px 18px;
      cursor: pointer;
      list-style: none;
    }
    .td-faq-item summary::-webkit-details-marker { display: none; }
    .td-faq-item summary:after {
      content: '';
      width: 18px;
      height: 18px;
      flex: 0 0 18px;
      background: url('/assets/icons/icon-chevron-down.svg') center / contain no-repeat;
      transition: transform .18s ease;
      opacity: .75;
    }
    .td-faq-item[open] summary:after { transform: rotate(180deg); }
    .td-faq-item > div {
      display: block;
      padding: 0 18px 16px;
      color: var(--td-muted);
      font-weight: 650;
      line-height: 1.7;
      border-top: 1px solid rgba(233,237,245,.8);
    }
    .td-faq-item img { width: 18px; height: 18px; }
    .td-city-links { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
    .td-city-links a { display: inline-flex; align-items: center; gap: 7px; padding: 10px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--td-border); color: var(--td-navy); font-weight: 850; box-shadow: 0 5px 14px rgba(20,33,61,.05); }
    .td-city-links a:hover { color: var(--td-coral); border-color: #ffc2ca; }
    .td-city-links img { width: 17px; height: 17px; }

    .td-seo-guide { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: 22px; align-items: stretch; }
    .td-seo-guide__main { padding: 30px; }
    .td-seo-guide__main h2 { margin: 0 0 12px; color: var(--td-navy); font-size: clamp(28px, 3vw, 42px); line-height: 1.15; font-weight: 950; letter-spacing: -.02em; }
    .td-seo-guide__main p { margin: 0; color: var(--td-text); font-size: 17px; font-weight: 650; }
    .td-seo-guide__main p + p { margin-top: 14px; }
    .td-seo-guide__main strong { color: var(--td-coral); }
    .td-seo-guide__grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
    .td-seo-guide__item { display: grid; grid-template-columns: 54px 1fr; gap: 14px; align-items: start; padding: 18px; }
    .td-seo-guide__item img { width: 48px; height: 48px; }
    .td-seo-guide__item h3 { margin: 0 0 5px; color: var(--td-navy); font-size: 19px; font-weight: 950; }
    .td-seo-guide__item p { margin: 0; color: var(--td-muted); font-size: 14px; font-weight: 700; }

    .td-bottom-banner { margin: 28px 0 0; border-radius: 22px 22px 0 0; background: linear-gradient(135deg, #fff, #ffe0e5); border: 1px solid #ffd6dc; padding: 28px; color: var(--td-navy); display: flex; align-items: center; justify-content: space-between; gap: 22px; }
    .td-bottom-banner strong { font-size: 24px; font-weight: 950; display: block; }
    .td-bottom-banner span { display: block; margin-top: 6px; color: var(--td-muted); font-weight: 750; }
    .td-bottom-banner .td-btn { flex: 0 0 auto; }


    .td-empty { text-align: center; padding: 28px; color: var(--td-muted); font-weight: 800; }

    @media (max-width: 1060px) {
      .td-hero__inner { grid-template-columns: 1fr; gap: 24px; }
      .td-hero__visual { order: -1; min-height: 330px; }
      .td-doodles { top: -24px; right: 50%; transform: translateX(50%); width: 520px; height: 390px; }
      .td-hero-cards { margin: 0 auto; height: 330px; width: 420px; }
      .td-hero-card { width: 220px; }
      .td-hero-card__photo, .td-hero-placeholder { height: 226px; }
      .td-hero-card--woman { right: 42px; }
      .td-hero-card--man { right: 200px; top: 64px; }
      .td-trust-strip, .td-benefits { grid-template-columns: repeat(2, 1fr); }
      .td-profile-grid { grid-template-columns: repeat(4, 1fr); }
      .td-categories { grid-template-columns: repeat(3, 1fr); }
    }

    @media (max-width: 760px) {
      .td-hero { padding: 24px 0 22px; }
      .td-hero__visual { min-height: 280px; }
      .td-doodles { width: 390px; height: 320px; top: -20px; }
      .td-hero-cards { width: 320px; height: 280px; }
      .td-hero-card { width: 172px; border-radius: 20px; padding: 8px; }
      .td-hero-card__photo, .td-hero-placeholder { height: 178px; border-radius: 15px; }
      .td-hero-card--woman { right: 8px; top: 8px; }
      .td-hero-card--man { right: 138px; top: 58px; }
      .td-hero-card__info { bottom: 60px; right: 17px; font-size: 15px; }
      .td-swipe { width: 32px; height: 32px; font-size: 16px; }
      .td-swipe img { width: 17px; height: 17px; }
      .td-badges { justify-content: center; }
      .td-badge { font-size: 25px; padding: 11px 18px; }
      .td-badge--blue { font-size: 19px; }
      .td-hero h1 { text-align: center; font-size: 42px; }
      .td-hero__lead { text-align: center; font-size: 17px; }
      .td-hero__buttons { justify-content: center; }
      .td-hero__micro { justify-content: center; text-align: center; }
      .td-trust-strip { grid-template-columns: 1fr; }
      .td-trust-item { border-inline-start: 0; border-top: 1px solid var(--td-border); }
      .td-trust-item:first-child { border-top: 0; }
      .td-section { padding: 28px 0; }
      .td-benefits, .td-profile-grid, .td-categories, .td-region-grid, .td-tips, .td-intent-grid, .td-discovery-grid, .td-love-grid { grid-template-columns: 1fr 1fr; }
      .td-profile-grid .td-profile-card:nth-child(n+7) { display: none; }
      .td-region-grid { grid-template-columns: 1fr; }
      .td-free-box { padding: 24px 22px 22px; background-position: center center, left 18px top 18px; background-size: auto, 92px auto; min-height: unset; }
      .td-free-box__content { max-width: 100%; }
      .td-free-points { grid-template-columns: 1fr; }
      .td-steps { grid-template-columns: 1fr; }
      .td-tips { grid-template-columns: 1fr; }
      .td-tip { grid-template-columns: 96px 1fr; }
      .td-discovery-grid, .td-love-grid { grid-template-columns: 1fr; }
      .td-discovery-card { grid-template-columns: 46px 1fr; padding: 20px; }
      .td-love-copy { padding: 24px 20px; }
      .td-seo-guide { grid-template-columns: 1fr; }
      .td-seo-guide__main { padding: 24px 20px; }
      .td-seo-guide__item { grid-template-columns: 46px 1fr; }
      .td-seo-guide__item img { width: 42px; height: 42px; }
      .td-bottom-banner { flex-direction: column; text-align: center; }
    }

    @media (max-width: 420px) {
      .td-benefits, .td-profile-grid, .td-categories, .td-intent-grid { grid-template-columns: 1fr; }
      .td-profile-grid .td-profile-card:nth-child(n+5) { display: none; }
      .td-hero-cards { transform: scale(.92); transform-origin: top center; }
      .td-hero__visual { min-height: 255px; }
    }
