/* Public vegan-dating guides (ds-): /vegan-dating[/…], /vegan-dating-apps, extra /dating landing sections. inc/datingseo.php · 2026-11-07 */
.ds{padding-top:0}
.ds-hero{background:radial-gradient(900px 380px at 90% -20%,#FFD9E4 0,transparent 60%),radial-gradient(700px 360px at -10% 120%,#D9F7E2 0,transparent 55%),#FFF8F5;border-bottom:1px solid var(--line-2);padding:22px 0 30px}
.ds-hero .crumbs{margin-bottom:14px}
.ds-hero h1{font-size:clamp(30px,4.6vw,48px);line-height:1.06;letter-spacing:-.02em;margin:6px 0 12px}
.ds-hero .lead{font-size:17px;color:var(--ink-2);max-width:640px}
.ds-cta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 12px}
.ds-stat{font-weight:650;color:var(--dt-h2);margin:6px 0 0}
.ds-stats{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 10px;padding:0}
.ds-stats li{background:#fff;border:1px solid #FBCFDC;border-radius:16px;padding:10px 16px;min-width:120px}
.ds-stats b{display:block;font-size:22px;line-height:1.1;color:var(--dt-ink)}
.ds-stats b i{color:var(--dt-h);font-size:18px}
.ds-stats span{font-size:13px;color:var(--ink-2)}
.ds-stats-hero{margin-top:4px}
.ds-sec{padding-top:34px}
.ds-sec h2{margin-bottom:14px}
.ds-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ds-sec-h a{font-weight:650;white-space:nowrap}
.ds-chips{display:flex;flex-wrap:wrap;gap:8px}
.ds-chips a{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-weight:600;font-size:14px;color:var(--ink)}
.ds-chips a:hover{border-color:#FBCFDC;background:var(--dt-hp);color:var(--dt-h2)}
.ds-chips-local{margin-bottom:10px}
.ds-chips-local a{border-color:#FBCFDC;background:var(--dt-hp)}
.ds-ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ds-ideas>div{background:#fff;border:1px solid var(--line);border-radius:var(--r-l);padding:18px}
.ds-ideas i{font-size:20px;color:var(--dt-h);display:block;margin-bottom:10px}
.ds-ideas b{display:block;margin-bottom:4px}
.ds-ideas p{margin:0;font-size:14.5px;color:var(--ink-2)}
.ds-pick .ds-ideas{grid-template-columns:repeat(2,1fr)}
.ds-more{margin:16px 0 0;color:var(--ink-2)}
.ds-more a{font-weight:600}
.ds-answer{margin-top:26px;background:var(--dt-hp);border:1px solid #FBCFDC;border-left:4px solid var(--dt-h);border-radius:14px;padding:16px 18px}
.ds-answer b{display:block;margin-bottom:4px;color:var(--dt-h2)}
.ds-answer p{margin:0 0 8px}
.ds-answer small{color:var(--ink-2)}
.ds-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ds-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;font-size:14.5px}
.ds-table th,.ds-table td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-2)}
.ds-table thead th{background:#FBF7F8;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2)}
.ds-table tbody tr:last-child>*{border-bottom:0}
.ds-table tr.ds-ours{background:#FFF8FA}
.ds-table .ds-y{color:var(--forest);font-weight:650}
.ds-table .ds-y i,.ds-table td i.fa-check{color:#16A34A}
.ds-table td i.fa-xmark{color:#B91C1C}
.ds-table-2 td,.ds-table-2 th{text-align:center}.ds-table-2 tbody th{text-align:left}
.ds-feature>div{background:var(--forest);color:#E7F5EC;border-radius:var(--r-l);padding:24px}
.ds-feature h2{color:#fff}
.ds-ticks{list-style:none;margin:0 0 6px;padding:0}
.ds-ticks li{position:relative;padding:6px 0 6px 28px}
.ds-ticks li:before{content:"\f004";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:7px;color:#FDA4BC;font-size:14px}
.ds-faq{margin-top:34px}
.ds-datespots ul{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:8px}
.ds-datespots li a{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;color:var(--ink)}
.ds-datespots li a:hover{border-color:#FBCFDC;background:var(--dt-hp)}
.ds-datespots small{color:var(--ink-2)}
.ds-datespots h2 i{color:var(--dt-h);margin-right:4px}
.ds-datespots-more{font-weight:650;font-size:14px}
@media (max-width:760px){
  .ds-hero{padding:14px 0 22px}
  .ds-hero .lead{font-size:15.5px}
  .ds-cta .btn{flex:1 1 100%;justify-content:center}
  .ds-stats li{flex:1 1 0;min-width:0;padding:8px 10px}
  .ds-stats b{font-size:19px}
  .ds-ideas,.ds-pick .ds-ideas{grid-template-columns:1fr;gap:10px}
  .ds-ideas>div{padding:14px;display:grid;grid-template-columns:30px 1fr;column-gap:10px}
  .ds-ideas>div i{grid-row:span 2;margin:2px 0 0}
  .ds-sec{padding-top:26px}
  /* comparison table → stacked cards on phones */
  .ds-table:not(.ds-table-2) thead{display:none}
  .ds-table:not(.ds-table-2),.ds-table:not(.ds-table-2) tbody,.ds-table:not(.ds-table-2) tr,.ds-table:not(.ds-table-2) th,.ds-table:not(.ds-table-2) td{display:block}
  .ds-table:not(.ds-table-2) tr{border-bottom:1px solid var(--line)}
  .ds-table:not(.ds-table-2) tbody tr:last-child{border-bottom:0}
  .ds-table:not(.ds-table-2) th[scope=row]{font-size:16px;padding:14px 14px 4px;border:0}
  .ds-table:not(.ds-table-2) td{border:0;padding:3px 14px}
  .ds-table:not(.ds-table-2) td:last-child{padding-bottom:14px}
  .ds-table:not(.ds-table-2) td:before{content:attr(data-l);display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3,#888);font-weight:700}
  .ds-table-2{font-size:13.5px}.ds-table-2 th,.ds-table-2 td{padding:10px 8px}
}
