.ctcv-app {
  --ctcv-orange: #f47b20;
  --ctcv-orange-dark: #d95f08;
  --ctcv-navy: #172033;
  --ctcv-blue: #2d5b8e;
  --ctcv-muted: #667085;
  --ctcv-line: #e4e7ec;
  --ctcv-soft: #fff7f0;
  --ctcv-white: #fff;
  color: var(--ctcv-navy);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  margin: 24px auto 64px;
  max-width: 1040px;
}

.ctcv-app *, .ctcv-app *::before, .ctcv-app *::after { box-sizing: border-box; }
.ctcv-app [hidden] { display: none !important; }

.ctcv-hero {
  align-items: center;
  background: linear-gradient(135deg, #172033 0%, #253b5b 72%, #2d5b8e 100%);
  border-radius: 24px;
  box-shadow: 0 24px 70px rgba(23, 32, 51, .18);
  color: #fff;
  display: grid;
  gap: 42px;
  grid-template-columns: 1fr auto;
  margin-bottom: 28px;
  overflow: hidden;
  padding: 48px 54px;
  position: relative;
}

.ctcv-hero::after {
  background: var(--ctcv-orange);
  border-radius: 50%;
  content: "";
  filter: blur(2px);
  height: 210px;
  opacity: .13;
  position: absolute;
  right: -55px;
  top: -90px;
  width: 210px;
}

.ctcv-kicker { color: #ffb47c; font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.ctcv-hero h1 { color: #fff; font-size: clamp(30px, 4vw, 47px); letter-spacing: -.035em; line-height: 1.06; margin: 12px 0 18px; max-width: 690px; }
.ctcv-hero p { color: #e8edf5; font-size: 18px; margin: 0; max-width: 710px; }
.ctcv-trust { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 25px; }
.ctcv-trust span { color: #f6f8fb; font-size: 14px; font-weight: 650; }
.ctcv-trust b { color: #ff9a50; margin-right: 5px; }

.ctcv-price-card {
  align-items: center;
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 18px;
  color: var(--ctcv-navy);
  display: flex;
  flex-direction: column;
  min-width: 190px;
  padding: 25px 23px;
  position: relative;
  text-align: center;
  z-index: 1;
}
.ctcv-price-card span { font-size: 13px; font-weight: 750; }
.ctcv-price-card strong { color: var(--ctcv-orange-dark); font-size: 34px; letter-spacing: -.04em; line-height: 1.2; margin-top: 4px; }
.ctcv-price-card small { color: var(--ctcv-muted); font-size: 12px; }

.ctcv-form, .ctcv-status {
  background: var(--ctcv-white);
  border: 1px solid var(--ctcv-line);
  border-radius: 22px;
  box-shadow: 0 15px 45px rgba(23, 32, 51, .08);
  padding: 38px 46px 42px;
}

.ctcv-progress { margin-bottom: 40px; }
.ctcv-progress__bar { background: #edf0f4; height: 4px; margin: 16px 8.5% -18px; position: relative; }
.ctcv-progress__bar span { background: var(--ctcv-orange); display: block; height: 100%; transition: width .25s ease; width: 0; }
.ctcv-progress ol { display: flex; justify-content: space-between; list-style: none; margin: 0; padding: 0; position: relative; }
.ctcv-progress li { align-items: center; color: #98a2b3; display: flex; flex-direction: column; font-size: 12px; font-weight: 700; gap: 6px; text-align: center; width: 25%; }
.ctcv-progress li span { align-items: center; background: #edf0f4; border: 4px solid #fff; border-radius: 50%; color: #667085; display: flex; height: 36px; justify-content: center; width: 36px; }
.ctcv-progress li.is-active { color: var(--ctcv-navy); }
.ctcv-progress li.is-active span { background: var(--ctcv-orange); color: #fff; }

.ctcv-step { animation: ctcv-in .22s ease both; }
@keyframes ctcv-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.ctcv-step__heading { margin-bottom: 28px; }
.ctcv-step__heading > span { color: var(--ctcv-orange-dark); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ctcv-step__heading h2 { color: var(--ctcv-navy); font-size: 28px; letter-spacing: -.025em; line-height: 1.2; margin: 5px 0 7px; }
.ctcv-step__heading p { color: var(--ctcv-muted); margin: 0; }

.ctcv-grid { display: grid; gap: 20px 22px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ctcv-field { color: #344054; display: flex; flex-direction: column; font-size: 14px; font-weight: 700; gap: 7px; margin: 0; }
.ctcv-field em { color: #d92d20; font-style: normal; }
.ctcv-field > span { color: #98a2b3; font-size: 12px; font-weight: 500; }
.ctcv-field small { color: var(--ctcv-muted); font-size: 12px; font-weight: 400; margin-top: -2px; }
.ctcv-field--full { grid-column: 1 / -1; }
.ctcv-field--standalone { margin-top: 30px; }
.ctcv-field input, .ctcv-field textarea, .ctcv-field select {
  appearance: none;
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
  color: #101828;
  font: inherit;
  font-weight: 450;
  line-height: 1.4;
  min-height: 46px;
  outline: 0;
  padding: 11px 13px;
  transition: border-color .18s, box-shadow .18s;
  width: 100%;
}
.ctcv-field textarea { min-height: 90px; resize: vertical; }
.ctcv-field select { background-image: linear-gradient(45deg,transparent 50%,#667085 50%),linear-gradient(135deg,#667085 50%,transparent 50%); background-position: calc(100% - 18px) 19px,calc(100% - 13px) 19px; background-repeat:no-repeat; background-size:5px 5px,5px 5px; padding-right: 36px; }
.ctcv-field input:focus, .ctcv-field textarea:focus, .ctcv-field select:focus { border-color: var(--ctcv-orange); box-shadow: 0 0 0 4px rgba(244,123,32,.13); }
.ctcv-field input::placeholder, .ctcv-field textarea::placeholder { color: #98a2b3; opacity: 1; }

.ctcv-repeat-list { display: grid; gap: 18px; }
.ctcv-repeat-item { background: #fbfcfd; border: 1px solid var(--ctcv-line); border-radius: 14px; padding: 21px; }
.ctcv-repeat-head { align-items: center; display: flex; justify-content: space-between; margin-bottom: 18px; }
.ctcv-repeat-head strong { font-size: 15px; }
.ctcv-repeat-head button { background: transparent; border: 0; color: #b42318; cursor: pointer; font: inherit; font-size: 12px; font-weight: 700; padding: 4px; }
.ctcv-add { background: var(--ctcv-soft); border: 1px dashed #f0a16a; border-radius: 10px; color: var(--ctcv-orange-dark); cursor: pointer; font: inherit; font-size: 14px; font-weight: 750; margin-top: 14px; padding: 11px 16px; }
.ctcv-paste-box { border-top: 1px solid var(--ctcv-line); margin-top: 32px; padding-top: 28px; }
.ctcv-subtitle { color: var(--ctcv-navy); font-size: 18px; margin: 30px 0 14px; }

.ctcv-mode-picker { border: 0; display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0 0 28px; padding: 0; }
.ctcv-mode-picker legend { color: var(--ctcv-navy); font-size: 16px; font-weight: 800; margin-bottom: 12px; }
.ctcv-mode-picker label { align-items: flex-start; background: #fff; border: 1px solid var(--ctcv-line); border-radius: 13px; cursor: pointer; display: flex; gap: 11px; min-width: 0; padding: 16px; }
.ctcv-mode-picker label:has(input:checked) { background: var(--ctcv-soft); border-color: var(--ctcv-orange); box-shadow: 0 0 0 3px rgba(244,123,32,.08); }
.ctcv-mode-picker input { accent-color: var(--ctcv-orange); flex: 0 0 auto; height: 17px; margin-top: 2px; width: 17px; }
.ctcv-mode-picker span { display: flex; flex-direction: column; gap: 4px; }
.ctcv-mode-picker strong { color: #344054; font-size: 13px; line-height: 1.35; }
.ctcv-mode-picker small { color: var(--ctcv-muted); font-size: 12px; line-height: 1.45; }
.ctcv-info-box { align-items: flex-start; background: #eff8ff; border: 1px solid #b2ddff; border-radius: 12px; color: #175cd3; display: flex; flex-direction: column; gap: 3px; margin-bottom: 20px; padding: 15px 17px; }
.ctcv-info-box strong { color: #1849a9; font-size: 14px; }
.ctcv-info-box span { font-size: 13px; }
.ctcv-paste-box .ctcv-field textarea { min-height: 250px; }
.ctcv-paste-box .ctcv-field--standalone textarea { min-height: 115px; }
.ctcv-confirm-previous { background: #fffcf5; border: 1px solid #fedf89; border-radius: 12px; padding: 15px; }

.ctcv-check { align-items: flex-start; color: #475467; cursor: pointer; display: flex; font-size: 14px; font-weight: 450; gap: 11px; margin-top: 24px; }
.ctcv-check input { accent-color: var(--ctcv-orange); flex: 0 0 auto; height: 18px; margin-top: 1px; width: 18px; }
.ctcv-check a { color: var(--ctcv-blue); }
.ctcv-consent { background: #f8fafc; border-radius: 10px; padding: 15px; }

.ctcv-summary { border: 1px solid var(--ctcv-line); border-radius: 14px; display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 28px; overflow: hidden; }
.ctcv-summary div { display: flex; flex-direction: column; gap: 3px; min-width: 0; padding: 15px 17px; }
.ctcv-summary div:nth-child(odd) { border-right: 1px solid var(--ctcv-line); }
.ctcv-summary div:nth-child(-n+2) { border-bottom: 1px solid var(--ctcv-line); }
.ctcv-summary span { color: var(--ctcv-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; }
.ctcv-summary strong { overflow-wrap: anywhere; }

.ctcv-payment { border: 0; margin: 0; padding: 0; }
.ctcv-payment legend { font-size: 16px; font-weight: 800; margin-bottom: 12px; }
.ctcv-payment-option { align-items: center; border: 1px solid var(--ctcv-line); border-radius: 12px; cursor: pointer; display: flex; gap: 13px; margin-bottom: 10px; padding: 15px; }
.ctcv-payment-option:has(input:checked) { background: var(--ctcv-soft); border-color: var(--ctcv-orange); }
.ctcv-payment-option input { accent-color: var(--ctcv-orange); height: 18px; width: 18px; }
.ctcv-payment-option span { display: flex; flex-direction: column; }
.ctcv-payment-option small { color: var(--ctcv-muted); margin-top: 2px; }
.ctcv-total { align-items: center; border-top: 1px solid var(--ctcv-line); display: flex; justify-content: space-between; margin-top: 24px; padding-top: 20px; }
.ctcv-total span { color: var(--ctcv-muted); font-weight: 700; }
.ctcv-total strong { color: var(--ctcv-orange-dark); font-size: 28px; }

.ctcv-actions { display: flex; gap: 12px; justify-content: flex-end; margin-top: 32px; }
.ctcv-button { align-items: center; background: var(--ctcv-orange); border: 0; border-radius: 10px; box-shadow: 0 8px 16px rgba(217,95,8,.19); color: #fff !important; cursor: pointer; display: inline-flex; font: inherit; font-size: 15px; font-weight: 800; justify-content: center; min-height: 48px; padding: 12px 23px; text-decoration: none !important; transition: background .18s, transform .18s; }
.ctcv-button:hover { background: var(--ctcv-orange-dark); transform: translateY(-1px); }
.ctcv-button:disabled { cursor: wait; opacity: .65; transform: none; }
.ctcv-button--secondary { background: #fff; border: 1px solid #d0d5dd; box-shadow: none; color: #344054 !important; }
.ctcv-button--secondary:hover { background: #f8fafc; }
.ctcv-button.is-loading span::after { animation: ctcv-dots 1s infinite; content: "…"; }
@keyframes ctcv-dots { 0%,20% { opacity:.2 } 50% { opacity:1 } 100% { opacity:.2 } }
.ctcv-alert { background: #fff1f0; border: 1px solid #fecdca; border-radius: 10px; color: #b42318; font-size: 14px; margin-top: 24px; padding: 13px 15px; }
.ctcv-honeypot { left: -9999px; position: absolute; }

.ctcv-status { align-items: flex-start; display: flex; gap: 25px; margin-top: 28px; padding: 45px; }
.ctcv-status h2 { color: var(--ctcv-navy); font-size: 28px; margin: 6px 0; }
.ctcv-status p { color: var(--ctcv-muted); margin: 0 0 18px; }
.ctcv-status__spinner { animation: ctcv-spin .8s linear infinite; border: 4px solid #ffe3ce; border-radius: 50%; border-top-color: var(--ctcv-orange); flex: 0 0 auto; height: 44px; margin-top: 7px; width: 44px; }
@keyframes ctcv-spin { to { transform: rotate(360deg); } }
.ctcv-transfer-box { background: #fffaf5; border: 1px solid #fed7aa; border-radius: 12px; margin: 18px 0; padding: 18px; }
.ctcv-transfer-box pre { color: #344054; font-family: inherit; font-size: 14px; line-height: 1.6; margin: 10px 0; white-space: pre-wrap; }
.ctcv-transfer-box p { font-size: 13px; margin: 0; }
.ctcv-order-code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px !important; margin-top: 18px !important; overflow-wrap: anywhere; }

@media (max-width: 760px) {
  .ctcv-app { margin: 12px auto 40px; }
  .ctcv-hero { gap: 26px; grid-template-columns: 1fr; padding: 34px 25px; }
  .ctcv-hero h1 { font-size: 34px; }
  .ctcv-hero p { font-size: 16px; }
  .ctcv-price-card { align-items: baseline; flex-direction: row; gap: 8px; justify-content: center; min-width: 0; padding: 18px; }
  .ctcv-price-card strong { font-size: 29px; margin: 0; }
  .ctcv-form, .ctcv-status { border-radius: 16px; padding: 27px 19px 30px; }
  .ctcv-grid { grid-template-columns: 1fr; }
  .ctcv-field--full { grid-column: auto; }
  .ctcv-progress li { font-size: 0; }
  .ctcv-progress li span { font-size: 12px; }
  .ctcv-progress__bar { margin-left: 12%; margin-right: 12%; }
  .ctcv-repeat-item { padding: 17px 14px; }
  .ctcv-mode-picker { grid-template-columns: 1fr; }
  .ctcv-mode-picker label { padding: 14px; }
  .ctcv-paste-box .ctcv-field textarea { min-height: 220px; }
  .ctcv-summary { grid-template-columns: 1fr; }
  .ctcv-summary div, .ctcv-summary div:nth-child(odd), .ctcv-summary div:nth-child(-n+2) { border: 0; border-bottom: 1px solid var(--ctcv-line); }
  .ctcv-summary div:last-child { border-bottom: 0; }
  .ctcv-actions { flex-direction: column-reverse; }
  .ctcv-button { width: 100%; }
  .ctcv-status { flex-direction: column; }
}

/* Ajustes 2.1: ancho independiente del tema y pantalla de pedido más limpia. */
.ctcv-app {
  max-width: none;
  width: min(1180px, calc(100vw - 32px));
  margin-left: 50%;
  margin-right: 0;
  transform: translateX(-50%);
}

body.ctcv-service-page main > .page-header,
body.ctcv-service-page main > article > .entry-header,
body.ctcv-service-page main .wp-block-post-title,
body.ctcv-service-page .entry-content > .wp-block-post-title {
  display: none !important;
}

.ctcv-app--status .ctcv-hero { display: none; }
.ctcv-app--status { margin-top: 34px; }

.ctcv-status {
  align-items: flex-start;
  background: #fff;
  border: 1px solid #dfe5ec;
  border-radius: 24px;
  box-shadow: 0 22px 60px rgba(23,32,51,.10);
  display: flex;
  gap: 24px;
  margin: 0 auto 64px;
  max-width: 850px;
  padding: 42px 46px 46px;
  width: 100%;
}
.ctcv-status > div:last-child { min-width: 0; width: 100%; }
.ctcv-status .ctcv-kicker { color: #f47b20; display: block; margin-bottom: 5px; }
.ctcv-status h2 { font-size: clamp(25px, 3vw, 32px); letter-spacing: -.025em; line-height: 1.14; margin: 4px 0 7px; }
.ctcv-status > div > p#ctcv-status-message { font-size: 15px; line-height: 1.55; margin-bottom: 20px; }
.ctcv-status__spinner { height: 42px; margin-top: 6px; width: 42px; }

.ctcv-transfer-box {
  background: #fffaf5 !important;
  border: 1px solid #fdba74 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  color: #172033 !important;
  margin: 20px 0 !important;
  padding: 20px !important;
}
.ctcv-transfer-box__head { align-items: flex-start; display: flex; gap: 22px; justify-content: space-between; margin-bottom: 15px; }
.ctcv-transfer-box__head > div { display: flex; flex-direction: column; gap: 2px; }
.ctcv-transfer-box__head span { color: #d95f08; font-size: 10px; font-weight: 850; letter-spacing: .11em; }
.ctcv-transfer-box__head strong { color: #172033; font-size: 16px; }
.ctcv-transfer-box__head small { color: #667085; font-size: 11px; line-height: 1.4; max-width: 245px; text-align: right; }

.ctcv-bank-details { background: #fff; border: 1px solid #e4e7ec; border-radius: 10px; overflow: hidden; }
.ctcv-bank-row { align-items: baseline; display: grid; gap: 16px; grid-template-columns: minmax(125px, .75fr) minmax(0, 1.6fr); padding: 10px 12px; }
.ctcv-bank-row + .ctcv-bank-row { border-top: 1px solid #edf0f4; }
.ctcv-bank-row span { color: #667085; font-size: 12px; }
.ctcv-bank-row strong { color: #172033; font-size: 13px; font-weight: 750; overflow-wrap: anywhere; }
.ctcv-transfer-note { color: #667085 !important; font-size: 12px !important; line-height: 1.5 !important; margin: 10px 1px 0 !important; }
.ctcv-transfer-order { background: #0b3157; border-radius: 10px; display: flex; flex-direction: column; gap: 3px; margin-top: 14px; padding: 13px 14px; }
.ctcv-transfer-order span { color: #c9d8e8; font-size: 10px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.ctcv-transfer-order strong { color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }
.ctcv-transfer-help { color: #667085 !important; font-size: 12px !important; line-height: 1.5 !important; margin: 9px 1px 0 !important; }
.ctcv-order-code { color: #667085 !important; font-size: 11px !important; }

@media (max-width: 760px) {
  .ctcv-app { width: min(100% - 20px, 1180px); }
  .ctcv-app--status { margin-top: 18px; }
  .ctcv-status { gap: 16px; margin-bottom: 38px; padding: 28px 20px 30px; }
  .ctcv-transfer-box { padding: 16px !important; }
  .ctcv-transfer-box__head { flex-direction: column; gap: 6px; }
  .ctcv-transfer-box__head small { max-width: none; text-align: left; }
  .ctcv-bank-row { gap: 4px; grid-template-columns: 1fr; }
  .ctcv-transfer-order strong { font-size: 11px; }
}


/* Contenido informativo y SEO 2.5 */
.ctcv-seo-content { display:grid; gap:56px; margin:64px 0 0; }
.ctcv-app--status .ctcv-seo-content { display:none; }
.ctcv-seo-intro { margin:0 auto; max-width:900px; text-align:center; }
.ctcv-seo-intro .ctcv-kicker,.ctcv-seo-eyebrow { color:var(--ctcv-orange-dark); display:block; font-size:11px; font-weight:850; letter-spacing:.13em; margin-bottom:8px; text-transform:uppercase; }
.ctcv-seo-intro h2,.ctcv-seo-split h2,.ctcv-keywords-section h2,.ctcv-privacy-block h2,.ctcv-faq h2,.ctcv-bottom-cta h2 { color:var(--ctcv-navy); font-size:clamp(25px,3vw,36px); letter-spacing:-.03em; line-height:1.12; margin:0 0 14px; }
.ctcv-seo-intro p,.ctcv-keywords-section > p,.ctcv-privacy-block p,.ctcv-faq__heading p,.ctcv-bottom-cta p { color:var(--ctcv-muted); font-size:16px; line-height:1.75; margin:0; }
.ctcv-feature-grid { display:grid; gap:18px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ctcv-feature-grid article { background:#fff; border:1px solid var(--ctcv-line); border-radius:18px; box-shadow:0 12px 34px rgba(23,32,51,.055); padding:27px 25px; }
.ctcv-feature-grid article > span { align-items:center; background:var(--ctcv-soft); border-radius:50%; color:var(--ctcv-orange-dark); display:flex; font-size:12px; font-weight:900; height:38px; justify-content:center; margin-bottom:18px; width:38px; }
.ctcv-feature-grid h3 { font-size:19px; letter-spacing:-.02em; margin:0 0 8px; }
.ctcv-feature-grid p { color:var(--ctcv-muted); font-size:14px; line-height:1.65; margin:0; }
.ctcv-seo-split { align-items:start; display:grid; gap:40px; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); }
.ctcv-process-list { display:grid; gap:0; list-style:none; margin:25px 0 0; padding:0; }
.ctcv-process-list li { border-left:2px solid #fed7aa; display:grid; gap:4px; padding:0 0 24px 24px; position:relative; }
.ctcv-process-list li:last-child { padding-bottom:0; }
.ctcv-process-list li::before { background:var(--ctcv-orange); border:4px solid #fff; border-radius:50%; box-shadow:0 0 0 1px #fdba74; content:""; height:13px; left:-7px; position:absolute; top:3px; width:13px; }
.ctcv-process-list strong { color:#26344e; font-size:15px; }
.ctcv-process-list span { color:var(--ctcv-muted); font-size:14px; line-height:1.6; }
.ctcv-seo-card { background:linear-gradient(145deg,#172033,#24476d); border-radius:20px; box-shadow:0 20px 45px rgba(23,32,51,.15); color:#fff; padding:30px; }
.ctcv-seo-card > span { color:#ffb47c; font-size:10px; font-weight:850; letter-spacing:.13em; }
.ctcv-seo-card h3 { color:#fff; font-size:24px; letter-spacing:-.025em; margin:7px 0 17px; }
.ctcv-seo-card ul { display:grid; gap:11px; list-style:none; margin:0; padding:0; }
.ctcv-seo-card li { color:#eaf0f7; font-size:13px; line-height:1.5; padding-left:22px; position:relative; }
.ctcv-seo-card li::before { color:#ff9a50; content:"✓"; font-weight:900; left:0; position:absolute; }
.ctcv-keywords-section,.ctcv-privacy-block { background:#fff; border:1px solid var(--ctcv-line); border-radius:20px; padding:34px 36px; }
.ctcv-keywords-section { display:grid; gap:16px; }
.ctcv-keywords-section h2,.ctcv-privacy-block h2 { font-size:29px; }
.ctcv-keyword-cloud { display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.ctcv-keyword-cloud span { background:#f8fafc; border:1px solid #e4e7ec; border-radius:999px; color:#475467; font-size:12px; font-weight:700; padding:7px 11px; }
.ctcv-privacy-block { align-items:start; display:grid; gap:26px; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr); }
.ctcv-faq { display:grid; gap:28px; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); }
.ctcv-faq__heading { position:sticky; top:90px; }
.ctcv-faq__list { border-top:1px solid var(--ctcv-line); }
.ctcv-faq details { border-bottom:1px solid var(--ctcv-line); padding:0; }
.ctcv-faq summary { color:#26344e; cursor:pointer; font-size:15px; font-weight:800; list-style:none; padding:18px 38px 18px 0; position:relative; }
.ctcv-faq summary::-webkit-details-marker { display:none; }
.ctcv-faq summary::after { color:var(--ctcv-orange-dark); content:"+"; font-size:22px; font-weight:500; position:absolute; right:4px; top:12px; }
.ctcv-faq details[open] summary::after { content:"–"; }
.ctcv-faq details p { color:var(--ctcv-muted); font-size:14px; line-height:1.7; margin:-2px 38px 18px 0; }
.ctcv-bottom-cta { align-items:center; background:linear-gradient(135deg,#172033 0%,#0b3157 100%); border-radius:22px; color:#fff; display:flex; gap:38px; justify-content:space-between; overflow:hidden; padding:38px 42px; position:relative; }
.ctcv-bottom-cta::after { background:var(--ctcv-orange); border-radius:50%; content:""; height:160px; opacity:.12; position:absolute; right:-55px; top:-65px; width:160px; }
.ctcv-bottom-cta > div { max-width:740px; position:relative; z-index:1; }
.ctcv-bottom-cta > div > span { color:#ffb47c; font-size:10px; font-weight:850; letter-spacing:.13em; }
.ctcv-bottom-cta h2 { color:#fff; font-size:30px; margin:7px 0 10px; }
.ctcv-bottom-cta p { color:#dce6f1; font-size:14px; line-height:1.65; }
.ctcv-bottom-cta .ctcv-button { flex:0 0 auto; position:relative; width:auto; z-index:1; }
@media(max-width:900px){.ctcv-feature-grid{grid-template-columns:1fr}.ctcv-seo-split,.ctcv-privacy-block,.ctcv-faq{grid-template-columns:1fr}.ctcv-faq__heading{position:static}.ctcv-bottom-cta{align-items:flex-start;flex-direction:column}.ctcv-bottom-cta .ctcv-button{width:100%}}
@media(max-width:760px){.ctcv-seo-content{gap:42px;margin-top:46px}.ctcv-keywords-section,.ctcv-privacy-block{padding:25px 20px}.ctcv-bottom-cta{padding:29px 22px}.ctcv-feature-grid article{padding:23px 20px}.ctcv-faq summary{padding-right:30px}}
