/* Feature pages and the landing's import / content / advertising sections. */
.feature-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:24px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.feature-header .logo { gap:10px; }
.feature-header nav,.feature-footer nav { display:flex; align-items:center; flex-wrap:wrap; gap:24px; font-size:14px; font-weight:600; }
.feature-header a:hover,.feature-footer a:hover { color:var(--brand-light); }
.feature-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; color:var(--ink-muted); font-size:13px; margin-bottom:46px; }
.feature-hero { padding-top:28px; padding-bottom:72px; }
.feature-hero-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr); gap:64px; align-items:center; }
.feature-hero h1 { font-size:clamp(34px,4.3vw,60px); line-height:1.12; letter-spacing:-.045em; margin:20px 0 24px; max-width:800px; }
.feature-hero .lead { font-size:19px; line-height:1.7; max-width:720px; }
.feature-hero .hero-ctas { margin-top:26px; }
.feature-text-link { font-size:15px; font-weight:700; color:var(--brand); align-self:center; }
.feature-route { border-radius:24px; padding:30px; background:#eef5ff; border:1px solid #dbe7f7; }
.feature-route-tag { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; color:var(--brand); margin:0 0 20px; }
.feature-route>div { position:relative; padding:20px 0 20px 44px; border-top:1px solid #d7e3f4; }
.feature-route strong { display:block; font-size:20px; letter-spacing:-.02em; }
.feature-route div>span { position:absolute; left:0; top:24px; color:#4c6890; font-size:12px; font-weight:800; }
.feature-route p:not(.feature-route-tag) { margin:4px 0 0; font-size:14px; color:#526683; }
.feature-band { background:var(--bg-alt); border-block:1px solid var(--line); padding:54px 0; }
.feature-band h2 { font-size:28px; margin:0 0 30px; letter-spacing:-.03em; }
.feature-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.feature-number { font-size:12px; color:var(--brand); font-weight:800; }
.feature-benefits h3 { margin:12px 0; font-size:20px; line-height:1.4; }
.feature-benefits p { color:var(--ink-secondary); margin:0; line-height:1.8; }
.feature-body { display:grid; grid-template-columns:minmax(0,760px) minmax(220px,1fr); gap:80px; padding-top:68px; padding-bottom:60px; align-items:start; }
.feature-copy section { margin-bottom:48px; scroll-margin-top:28px; }
.feature-copy h2 { font-size:clamp(25px,2.5vw,32px); line-height:1.25; letter-spacing:-.025em; margin:0 0 20px; }
.feature-copy p { font-size:17px; line-height:1.85; color:var(--ink-secondary); margin:0; }
.feature-steps { list-style:none; counter-reset:steps; padding:0; margin:30px 0; }
.feature-steps li { position:relative; padding:0 0 28px 56px; counter-increment:steps; }
.feature-steps li:before { content:counter(steps); position:absolute; left:0; top:0; display:grid; place-items:center; width:34px; height:34px; border:1px solid #cdddf1; border-radius:50%; font-weight:800; color:var(--brand); background:#f4f8fd; }
.feature-steps h3 { margin:0 0 8px; font-size:19px; }
.feature-sidebar { position:sticky; top:28px; font-size:14px; }
.feature-sidebar nav,.feature-sidebar>div { display:grid; gap:15px; border-top:1px solid var(--line); padding:24px 0; }
.feature-sidebar b { margin-bottom:5px; }
.feature-sidebar a { color:var(--ink-muted); line-height:1.6; }
.feature-sidebar a:hover { color:var(--brand); }
.feature-notice { padding:24px; background:#f3f7fb; border-left:3px solid #416b9e; margin:0 0 52px; }
.feature-notice p { margin-top:8px; font-size:15px; }
.feature-faq details { border-bottom:1px solid var(--line); padding:20px 0; }
.feature-faq summary { cursor:pointer; font-size:17px; font-weight:700; line-height:1.6; }
.feature-faq details p { padding-top:14px; font-size:16px; }
.feature-bottom-cta { border-radius:24px; padding:48px; margin-bottom:56px; background:#eef5ff; }
.feature-bottom-cta h2 { font-size:clamp(28px,3.5vw,42px); line-height:1.2; letter-spacing:-.035em; margin:16px 0; }
.feature-bottom-cta>p { max-width:650px; color:var(--ink-secondary); }
.feature-bottom-cta .btn { margin:16px 0; }
.feature-small { font-size:13px; line-height:1.8; }
.feature-small a { text-decoration:underline; }
.feature-footer { border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:30px; justify-content:space-between; align-items:center; padding-top:28px; padding-bottom:32px; }
.feature-footer>span { font-size:12px; color:var(--ink-muted); }
.feature-page a:focus-visible,.new-features a:focus-visible { outline:3px solid #2175d9; outline-offset:5px; border-radius:4px; }
.new-features .section-head { max-width:850px; }
.source-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.source-card { border:1px solid var(--line); border-radius:20px; padding:27px; display:flex; flex-direction:column; gap:12px; background:#fff; transition:border-color .15s; }
.source-card:hover { border-color:#8faacd; }
.source-card.source-card-main { grid-column:span 2; background:#edf5ff; border-color:#d4e4f8; }
.source-card .source-kicker { color:var(--brand); font-size:11px; letter-spacing:.06em; font-weight:800; text-transform:uppercase; }
.source-card h3 { font-size:22px; line-height:1.3; letter-spacing:-.025em; margin:0; }
.source-card p { color:var(--ink-secondary); font-size:15px; line-height:1.75; margin:0 0 12px; }
.source-card>a { color:var(--brand); font-size:14px; font-weight:750; margin-top:auto; }
.feature-home-note { color:var(--ink-muted); font-size:13px; margin:24px 0 0; line-height:1.8; }
.feature-home-split { display:grid; grid-template-columns:1.2fr 1fr; gap:60px; align-items:center; }
.feature-home-split h2 { font-size:clamp(30px,3.5vw,46px); line-height:1.15; letter-spacing:-.035em; margin:18px 0 24px; }
.feature-home-split p { color:var(--ink-secondary); line-height:1.8; }
.feature-home-split .btn { margin-top:12px; }
.feature-flow { list-style:none; padding:0; margin:0; border-top:1px solid var(--line); }
.feature-flow li { padding:22px 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:32px 1fr; gap:12px; }
.feature-flow li>span { font-size:12px; font-weight:800; color:var(--brand); padding-top:5px; }
.feature-flow b { font-size:19px; }
.feature-flow p { font-size:14px; margin:6px 0 0; }
.advertising-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.advertising-grid .source-card { padding:36px; }
.advertising-grid .source-card:first-child { background:#f6f9fe; }
.feature-tools-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.feature-tools-grid h3 { font-size:19px; margin:12px 0; }
.feature-tools-grid p { font-size:15px; color:var(--ink-secondary); line-height:1.8; }
.feature-tools-grid a { color:var(--brand); font-size:14px; font-weight:700; }
@media(min-width:761px) { .source-card:last-child { grid-column:span 2; } .advertising-grid .source-card:last-child { grid-column:auto; } }
@media(max-width:1000px) {
  .feature-hero-grid { gap:30px; grid-template-columns:1.5fr 1fr; }
  .feature-body { gap:36px; grid-template-columns:minmax(0,1fr) 220px; }
  .feature-home-split { gap:32px; }
}
@media(max-width:760px) {
  .feature-header { gap:16px; flex-wrap:wrap; padding-top:18px; padding-bottom:18px; }
  .feature-header nav { gap:18px; font-size:13px; }
  .feature-hero-grid,.feature-body,.feature-home-split { grid-template-columns:1fr; }
  .feature-hero { padding-bottom:40px; }
  .feature-breadcrumb { margin-bottom:30px; }
  .feature-hero .lead { font-size:17px; }
  .feature-route { padding:22px; }
  .feature-route>div { padding-top:16px; padding-bottom:16px; }
  .feature-benefits,.source-grid,.feature-tools-grid { grid-template-columns:1fr 1fr; gap:22px; }
  .feature-benefits article:last-child { grid-column:span 2; }
  .feature-body { padding-top:44px; padding-bottom:24px; }
  .feature-sidebar { position:static; }
  .feature-copy p { font-size:16px; }
  .feature-bottom-cta { padding:28px; border-radius:0; }
  .feature-footer { gap:24px; }
  .advertising-grid { grid-template-columns:1fr; }
}
@media(max-width:480px) {
  .hero-grid,.seo-highlight-box { grid-template-columns:minmax(0,1fr); }
  .hero-grid>*,.seo-highlight-box>* { min-width:0; }
  .hero .btn,.seo-highlight-box .btn { white-space:normal; text-align:center; }
  .hero h1 { overflow-wrap:anywhere; }
  .feature-benefits,.source-grid,.feature-tools-grid { grid-template-columns:1fr; }
  .feature-benefits article:last-child,.source-card.source-card-main { grid-column:auto; }
  .source-card,.advertising-grid .source-card { padding:24px; }
  .feature-steps li { padding-left:46px; }
  .feature-page .hero-ctas { align-items:stretch; }
  .feature-page .btn { white-space:normal; text-align:center; }
  .feature-page .feature-text-link { padding:12px 0; }
}
@media(prefers-reduced-motion:reduce) { .source-card { transition:none; } }
