/* Vibe Journeys · Libro de Reclamaciones · v1.2 · styles scoped to this plugin */
.lrv-root {
  --lrv-ink: #0b2e47;
  --lrv-deep: #003e56;
  --lrv-mid: #09637a;
  --lrv-soft: #eff6fa;
  --lrv-border: #d4e0e9;
  --lrv-muted: #61768c;
  color: var(--lrv-ink);
  font: inherit;
  line-height: 1.55;
  box-sizing: border-box;
  width: min(1220px, calc(100vw - 32px));
  max-width: 1220px !important;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin: 26px 0 52px;
  isolation: isolate;
}
.lrv-root *, .lrv-root *::before, .lrv-root *::after { box-sizing: border-box; }
.lrv-root .lrv-icon { width: 20px; height: 20px; display: inline-block; flex: 0 0 auto; vertical-align: middle; }
.lrv-design-v2 { filter: drop-shadow(0 12px 28px rgba(2, 34, 51, 0.08)); }
.lrv-design-v2 .lrv-header {
  position: relative; overflow: hidden; min-height: 310px;
  padding: 48px 56px 90px;
  border-radius: 20px 20px 0 0;
  background: linear-gradient(115deg, #0a3854 5%, #13526a 85%);
  color: #fff;
}
.lrv-design-v2 .lrv-header::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(4,43,67,.50) 0%, rgba(4,43,67,.18) 42%, rgba(4,43,67,0) 77%);
}
.lrv-design-v2 .lrv-hero-photo {
  position: absolute; display: block !important; right: 0; top: 0;
  width: 63%; height: 100%; max-width: none; min-width: 0;
  object-fit: cover; object-position: center center;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 38%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 38%);
}
.lrv-design-v2 .lrv-header-content { position: relative; z-index: 1; max-width: 760px; }
.lrv-design-v2 .lrv-eyebrow { display:block; margin: 0 0 12px; font-size:11px; font-weight:700; line-height:1.5; letter-spacing: .15em; color: #d0e5f2; }
.lrv-design-v2 .lrv-header h2 { margin: 0 0 14px !important; max-width: 760px; font-size:clamp(30px,3.6vw,49px); font-weight:800; line-height:1.18; letter-spacing: -.035em; color: #fff !important; }
.lrv-design-v2 .lrv-header p { margin: 0 !important; max-width: 690px; font-size: clamp(15px,1.45vw,18px); line-height: 1.63; color: #f0f7fb !important; }
.lrv-design-v2 .lrv-form-shell {
  background: white; position: relative; z-index: 2;
  margin: -41px 24px 0; border: 1px solid #e3eaf0;
  border-radius: 18px; box-shadow: 0 13px 36px rgba(7, 39, 57, .10);
  padding: 24px 26px 4px;
}
.lrv-design-v2 .lrv-company {
  display: flex; align-items: center; gap: 20px;
  border-radius: 12px; border: 1px solid #e0ecf3;
  background: linear-gradient(120deg, #edf6fb 0%, #f1f7fb 100%);
  padding: 22px 24px; color: #0b304b;
}
.lrv-design-v2 .lrv-company-icon, .lrv-design-v2 .lrv-legal-icon {
  display: grid; place-items: center; flex: 0 0 auto;
  width: 63px; height: 63px; border-radius: 50%;
  background: #dcecf5; color: #024765;
}
.lrv-design-v2 .lrv-company-icon .lrv-icon { width: 29px; height: 29px; }
.lrv-design-v2 .lrv-company-text { flex: 1 1 0; min-width: 0; }
.lrv-design-v2 .lrv-overline, .lrv-design-v2 .lrv-company-folio small {
  display: block; font-size:11px; font-weight:700; line-height:1.4; letter-spacing: .10em; color: #516f85;
}
.lrv-design-v2 .lrv-company-text strong { display:block; font-size: clamp(19px,2.4vw,25px); line-height: 1.25; font-weight: 800; margin: 2px 0 8px; color: #073251; }
.lrv-design-v2 .lrv-company-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 17px; font-size: 13px; }
.lrv-design-v2 .lrv-company-address { display: inline-flex; align-items: center; gap: 5px; overflow-wrap: anywhere; }
.lrv-design-v2 .lrv-company-address .lrv-icon { width:16px; height:16px; }
.lrv-design-v2 .lrv-company-folio {
  border-left: 1px solid #c4d5e1; padding: 10px 0 10px 20px;
  min-width: 193px; display:flex; gap: 11px; align-items: center;
}
.lrv-design-v2 .lrv-company-folio > .lrv-icon { width: 31px; height: 31px; color: #0a4765; }
.lrv-design-v2 .lrv-company-folio strong { display:block; font-size: 16px; font-weight: 800; color: #073251; }
.lrv-design-v2 .lrv-form { padding: 2px 5px 30px; background: #fff; }
.lrv-design-v2 .lrv-section {
  display: flex; align-items: center; gap: 17px;
  padding: 27px 0 13px; margin: 22px 0 11px;
  border-bottom: 1px solid #d5e1e9;
}
.lrv-design-v2 .lrv-section-icon {
  flex:none; width: 48px; height:48px; display: grid; place-items: center;
  border-radius: 50%; background: var(--lrv-deep); color: #fff;
  box-shadow: 0 3px 10px rgba(0, 62, 86, .11);
}
.lrv-design-v2 .lrv-section-icon .lrv-icon { width: 22px; height:22px; }
.lrv-design-v2 .lrv-section-kicker { display: block; font-size: 10px; letter-spacing: .14em; font-weight: 800; color: #5f8394; }
.lrv-design-v2 .lrv-section h3 { margin: 0 !important; color: #0a304c; font-size: clamp(20px, 2.3vw, 27px); font-weight: 800; line-height: 1.35; }
.lrv-design-v2 .lrv-section-help { font-size: 13px; color: #687c8f; margin: 0 0 22px !important; padding-left: 65px; }
.lrv-design-v2 .lrv-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap: 17px 22px; }
.lrv-design-v2 .lrv-field { min-width:0; margin: 0 0 16px; }
.lrv-design-v2 .lrv-field--wide { grid-column:1/-1; }
.lrv-design-v2 .lrv-field label { display:block; margin:0 0 7px; font-size: 13px; font-weight: 700; line-height: 1.6; color:#183b56; }
.lrv-design-v2 .lrv-input-wrap { position:relative; width:100%; }
.lrv-design-v2 .lrv-input-icon { position:absolute; z-index: 1; inset:0 auto 0 15px; display:grid; place-items:center; color: #446881; pointer-events:none; }
.lrv-design-v2 .lrv-input-icon .lrv-icon { width: 19px; height: 19px; }
.lrv-design-v2 .lrv-field input:not([type="checkbox"]), .lrv-design-v2 .lrv-field select, .lrv-design-v2 .lrv-field textarea {
  display:block; width: 100%; max-width: 100%; min-width:0;
  margin: 0 !important; box-shadow: none !important;
  min-height: 51px; padding: 12px 15px;
  border: 1px solid #c8d6e1 !important; border-radius: 9px !important;
  background:#fff !important; color: #163e58 !important;
  font-size:14px!important; font-weight:400; line-height:1.6;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.lrv-design-v2 .lrv-field .lrv-has-icon input, .lrv-design-v2 .lrv-field .lrv-has-icon select { padding-left: 46px !important; }
.lrv-design-v2 .lrv-field input::placeholder,.lrv-design-v2 .lrv-field textarea::placeholder { color:#8c9eae; opacity:1; }
.lrv-design-v2 .lrv-field textarea { min-height: 122px; resize:vertical; padding: 13px 15px; }
.lrv-design-v2 .lrv-field input:focus, .lrv-design-v2 .lrv-field select:focus, .lrv-design-v2 .lrv-field textarea:focus {
  outline: 2px solid #9ed8e6 !important; outline-offset: 1px; border-color:#167b94 !important;
  box-shadow: 0 0 0 4px rgba(28,130,156,.10) !important;
}
.lrv-design-v2 .lrv-field small { display:block; margin:6px 0 0; color:var(--lrv-muted); font-size:12px; }
.lrv-design-v2 .lrv-required { color: #db3f3b; }
.lrv-design-v2 .lrv-check { display:inline-flex; align-items:center; gap:10px; padding:5px 0; font-size:13px; color:#31516a; cursor:pointer; }
.lrv-design-v2 .lrv-check input { flex:none; width:18px; height:18px; accent-color:var(--lrv-deep); }
.lrv-design-v2 .lrv-guardian { margin:17px 0 6px; padding:19px; border-radius:12px; border:1px solid #d9e5eb; background:#f5f9fb; }
.lrv-design-v2 .lrv-guardian[hidden],.lrv-design-v2 .lrv-honey[hidden] { display:none!important; }
.lrv-design-v2 .lrv-guardian h4 { margin:0 0 15px; font-size:17px; color:var(--lrv-ink); }
.lrv-design-v2 .lrv-guardian .lrv-field { margin-bottom: 6px; }
.lrv-design-v2 .lrv-radio-group { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:4px 0 24px; }
.lrv-design-v2 .lrv-radio-group label { display:flex; align-items:center; gap:13px; cursor:pointer; border:1px solid #d1e0e8; border-radius:11px; padding:16px 19px; color:var(--lrv-ink); background:#fff; }
.lrv-design-v2 .lrv-radio-group label:has(input:checked) { background:#eff8fa; border-color:#17738a; box-shadow:0 0 0 1px #17738a inset; }
.lrv-design-v2 .lrv-radio-group input { flex:none; width:18px;height:18px;margin:0; accent-color:var(--lrv-deep); }
.lrv-design-v2 .lrv-radio-group strong { display:block;font-size:15px;font-weight:800; }
.lrv-design-v2 .lrv-radio-group small { display:block;font-size:12px;color:#627e90; }
.lrv-design-v2 .lrv-legal {
  display:flex; align-items:flex-start; gap:14px; margin:27px 0 22px; padding:18px;
  background:#f0f7fa; border:1px solid #dce9ee; border-radius:11px;
  color:#4d6c80; font-size:12px;
}
.lrv-design-v2 .lrv-legal-icon { width:43px;height:43px; background:#e0eef5; }
.lrv-design-v2 .lrv-legal-icon .lrv-icon { width:24px;height:24px; }
.lrv-design-v2 .lrv-legal p { margin:0 0 7px; }
.lrv-design-v2 .lrv-legal p:last-child { margin:0; }
.lrv-design-v2 .lrv-legal a { color:#065c78; font-weight:700; text-decoration:underline; }
.lrv-design-v2 .lrv-submit-row { display:flex;align-items:center;gap:24px;justify-content:space-between; padding-top:17px; border-top:1px solid #d6e3eb; }
.lrv-design-v2 .lrv-footnote { max-width:450px;font-size:12px;color:#687f90;margin:0 !important; }
.lrv-design-v2 .lrv-submit, .lrv-receipt-toolbar button {
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  background:linear-gradient(115deg,#00445c,#006781) !important;
  color:#fff !important; border:0!important; border-radius:10px!important;
  min-height:49px; padding:13px 22px!important;
  font-size:14px!important; line-height:1.5; font-weight:700!important;
  text-decoration:none!important;cursor:pointer;
  box-shadow:0 5px 13px rgba(0,68,92,.16);
  transition:transform .15s ease,filter .15s ease;
}
.lrv-design-v2 .lrv-submit .lrv-icon { width:19px;height:19px; }
.lrv-design-v2 .lrv-submit:hover,.lrv-receipt-toolbar button:hover { filter:brightness(1.12);transform:translateY(-1px); }
.lrv-design-v2 .lrv-submit:focus-visible { outline:3px solid #73cadb;outline-offset:4px; }
.lrv-root .lrv-honey { position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important; }
.lrv-aviso { display:inline-block;max-width:280px;text-decoration:none!important; }
.lrv-aviso img { display:block;width:100%;height:auto;max-width:280px; }
.lrv-aviso-fallback { display:flex;align-items:center;gap:8px;background:#f7fafc;border:1px solid #a4c9de;padding:13px 16px;color:#127aaf;font-size:15px;border-radius:6px; }
/* Receipt and print layout retained from the previous edition. */
.lrv-receipt { filter:none; max-width:900px!important; width:min(900px, calc(100vw - 32px)); }
.lrv-receipt-toolbar { display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 20px;padding:17px;border:1px solid #a9d5e2;border-radius:9px;background:#f0fafc; }
.lrv-notice { background:#fffae9;border-left:4px solid #c98a15;padding:12px; }
.lrv-sheet { background:#fff;color:#1e3340;border:1px solid #b8c7cf;padding:26px;box-shadow:0 3px 20px #153a5310; }
.lrv-sheet-header { display:flex;justify-content:space-between;gap:20px;align-items:start; }
.lrv-sheet-header h2 { font-size:21px;margin:0 0 4px;color:#164462; }
.lrv-sheet-header strong { font-size:14px; }
.lrv-sheet-code { text-align:right;font-size:13px;white-space:nowrap; }
.lrv-sheet-code strong { font-size:17px; }
.lrv-provider { margin:18px 0;border:1px solid #d0dde4;background:#f7fafc;padding:14px;font-size:13px; }
.lrv-sheet h3 { margin:24px 0 12px;font-size:14px;background:#e5f0f4;color:#164462;padding:9px 11px; }
.lrv-sheet-grid { margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.lrv-sheet-item { min-width:0;overflow-wrap:anywhere; }
.lrv-sheet-item dt { font-size:11px;font-weight:800;text-transform:uppercase;color:#5b7684; }
.lrv-sheet-item dd { font-size:13px;margin:2px 0 3px;white-space:normal; }
.lrv-sheet-footer { font-size:11px;color:#455e6b;border-top:1px solid #b6cad4;margin:22px 0 0;padding-top:12px; }
@media (max-width:900px) {
  .lrv-design-v2 .lrv-header { padding:40px 32px 82px; }
  .lrv-design-v2 .lrv-header h2 { max-width:560px; }
  .lrv-design-v2 .lrv-header p { max-width:520px; }
  .lrv-design-v2 .lrv-form-shell { margin: -36px 13px 0; padding:17px 17px 3px; }
  .lrv-design-v2 .lrv-company { padding:17px;gap:13px; }
  .lrv-design-v2 .lrv-company-folio { min-width:150px; padding-left:12px; }
}
@media (max-width:680px) {
  .lrv-root { width:calc(100vw - 22px); margin:18px 0 40px; }
  .lrv-design-v2 .lrv-header { min-height:275px;padding:30px 21px 75px;border-radius:14px 14px 0 0; }
  .lrv-design-v2 .lrv-hero-photo { width:86%;opacity:.30; -webkit-mask-image:linear-gradient(90deg,transparent,#000 70%);mask-image:linear-gradient(90deg,transparent,#000 70%); }
  .lrv-design-v2 .lrv-header::after { background:linear-gradient(90deg,rgba(1,39,63,.40),rgba(1,39,63,.15)); }
  .lrv-design-v2 .lrv-header h2 { font-size:clamp(26px,7vw,35px); }
  .lrv-design-v2 .lrv-header p { font-size:14px; }
  .lrv-design-v2 .lrv-form-shell { margin:-28px 7px 0;padding:12px 11px 0; border-radius:14px; }
  .lrv-design-v2 .lrv-company { flex-wrap:wrap;gap:10px;padding:14px; }
  .lrv-design-v2 .lrv-company-icon { width:42px;height:42px; }
  .lrv-design-v2 .lrv-company-icon .lrv-icon { width:23px;height:23px; }
  .lrv-design-v2 .lrv-company-text strong { font-size:20px; }
  .lrv-design-v2 .lrv-company-meta { font-size:12px;gap:4px 10px; }
  .lrv-design-v2 .lrv-company-folio { flex-basis:100%;padding:10px 0 0;border-top:1px solid #c7d8e2;border-left:0; }
  .lrv-design-v2 .lrv-company-folio .lrv-icon { width:22px;height:22px; }
  .lrv-design-v2 .lrv-form { padding: 0 4px 22px; }
  .lrv-design-v2 .lrv-section { gap:11px;padding-top:23px; }
  .lrv-design-v2 .lrv-section-icon { width:41px;height:41px; }
  .lrv-design-v2 .lrv-section h3 { font-size:20px; }
  .lrv-design-v2 .lrv-section-help { padding-left:0; }
  .lrv-design-v2 .lrv-grid,.lrv-design-v2 .lrv-radio-group,.lrv-sheet-grid { grid-template-columns:1fr;gap:5px; }
  .lrv-design-v2 .lrv-field { margin-bottom:12px; }
  .lrv-design-v2 .lrv-field--wide { grid-column:auto; }
  .lrv-design-v2 .lrv-radio-group { gap:9px; }
  .lrv-design-v2 .lrv-legal { padding:12px;gap:9px; }
  .lrv-design-v2 .lrv-legal-icon { width:35px;height:35px; }
  .lrv-design-v2 .lrv-submit-row { flex-direction:column-reverse;align-items:stretch;gap:11px; }
  .lrv-design-v2 .lrv-submit { width:100%; }
  .lrv-sheet { padding:16px; }
  .lrv-sheet-header { flex-direction:column;gap:7px; }
  .lrv-sheet-code { text-align:left; }
  .lrv-receipt-toolbar { flex-direction:column;align-items:stretch; }
  .lrv-receipt-toolbar button { width:100%; }
}
/* Version 1.2: colors adjustable from WordPress admin.
   These variables are scoped to .lrv-root, so the rest of the theme stays unchanged. */
.lrv-design-v2 .lrv-header { background:linear-gradient(115deg,var(--lrv-deep),var(--lrv-mid)); }
.lrv-design-v2 .lrv-header::after { background:linear-gradient(90deg,color-mix(in srgb,var(--lrv-deep) 68%,transparent) 0%,color-mix(in srgb,var(--lrv-deep) 28%,transparent) 65%,transparent 100%); }
.lrv-design-v2 .lrv-eyebrow { color:#fff; opacity:.88; }
.lrv-design-v2 .lrv-company { background:var(--lrv-soft);border-color:color-mix(in srgb,var(--lrv-deep) 15%,#fff);color:var(--lrv-deep); }
.lrv-design-v2 .lrv-company-icon,.lrv-design-v2 .lrv-legal-icon { background:color-mix(in srgb,var(--lrv-deep) 12%,#fff);color:var(--lrv-deep); }
.lrv-design-v2 .lrv-company-text strong { color:var(--lrv-deep); }
.lrv-design-v2 .lrv-overline { color:var(--lrv-deep);opacity:.85; }
.lrv-design-v2 .lrv-company-meta .lrv-icon {width:16px;height:16px;}
.lrv-design-v2 .lrv-company-meta {gap:6px 17px;}
.lrv-design-v2 .lrv-legal-name { flex-basis:100%; }
.lrv-design-v2 .lrv-company-contact {display:inline-flex;align-items:center;gap:5px;overflow-wrap:anywhere;}
.lrv-design-v2 .lrv-section h3 {color:var(--lrv-deep);}
.lrv-design-v2 .lrv-section-kicker {color:var(--lrv-mid);}
.lrv-design-v2 .lrv-field label {color:var(--lrv-deep);}
.lrv-design-v2 .lrv-field input:focus,.lrv-design-v2 .lrv-field select:focus,.lrv-design-v2 .lrv-field textarea:focus {
    border-color:var(--lrv-mid)!important;outline:2px solid var(--lrv-mid)!important;outline-offset:2px;
}
.lrv-design-v2 .lrv-radio-group label:has(input:checked) {background:var(--lrv-soft);border-color:var(--lrv-mid);box-shadow:0 0 0 1px var(--lrv-mid) inset;}
.lrv-design-v2 .lrv-legal {background:var(--lrv-soft);}
.lrv-design-v2 .lrv-legal a {color:var(--lrv-deep);}
.lrv-design-v2 .lrv-submit,.lrv-receipt-toolbar button {background:linear-gradient(115deg,var(--lrv-deep),var(--lrv-mid))!important;}
.lrv-tracking { display:flex; flex-wrap:wrap; gap:14px 32px; align-items:center; padding:14px 18px; margin:0 0 15px;border-radius:9px;background:var(--lrv-soft);border:1px solid #cedee7;color:var(--lrv-deep); }
.lrv-receipt-toolbar p {font-size:13px;margin:4px 0 0;}
.lrv-receipt .lrv-sheet h3 {background:var(--lrv-soft);color:var(--lrv-deep);}
@media(max-width:680px){.lrv-tracking{flex-direction:column;align-items:flex-start}}
@media print {
  body { background:#fff!important; }
  .lrv-root { max-width:none!important;width:auto!important;left:auto!important;transform:none!important;margin:0;padding:0;filter:none!important; }
  .lrv-receipt-toolbar,.lrv-tracking,.lrv-notice,header.site-header,footer.site-footer,nav,.site-footer,#wpadminbar { display:none!important; }
  .lrv-sheet { box-shadow:none;border:0;padding:0;color:#000; }
  .lrv-sheet h3 { print-color-adjust:exact;-webkit-print-color-adjust:exact; }
  .lrv-sheet-item { break-inside:avoid; }
  .lrv-sheet { font-family:Arial,sans-serif;font-size:11px; }
  .lrv-sheet-footer { font-size:10px; }
}
