/* Page-specific design system for the 2026 custom rebuild. */
.rmp-kicker { margin: 0 0 12px; color: var(--orange); font-size: 13px; font-weight: 800; letter-spacing: .13em; line-height: 1.2; text-transform: uppercase; }
.rmp-section-head { margin-bottom: 34px; }
.rmp-section-head h2,
.rmp-definition h2,
.rmp-shipping h2,
.rmp-faq h2,
.rmp-about-team h2,
.rmp-about-quality h2,
.rmp-about-coverage h2,
.rmp-contact-help h2,
.rmp-visit h2,
.rmp-contact-form h2 { margin: 0; font-size: clamp(50px, 4.6vw, 76px); letter-spacing: -.02em; }
.rmp-section-head--inline { display: flex; align-items: end; justify-content: space-between; gap: 40px; }
.rmp-section-head--inline > div { min-width: 0; }
.rmp-section-head--light h2 { color: var(--white); }
.rmp-inline-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 24px; color: var(--orange); font-weight: 800; text-decoration: none; }
.rmp-inline-link .rmp-icon { font-size: 21px; transition: transform 160ms ease; }
.rmp-inline-link:hover .rmp-icon { transform: translateX(4px); }
.button--dark-outline { color: var(--white); background: transparent; border-color: #73787c; }
.button--dark-outline:hover { color: var(--ink); background: var(--white); border-color: var(--white); }

/* Home */
.rmp-home-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--border); background: var(--white); }
.rmp-home-hero::before { content: ''; position: absolute; inset: 24px 0 auto 50%; height: 1px; background: #eef0f1; box-shadow: 0 80px 0 #eef0f1, 0 160px 0 #eef0f1, 0 240px 0 #eef0f1, 0 320px 0 #eef0f1, 0 400px 0 #eef0f1; pointer-events: none; }
.rmp-home-hero__grid { min-height: 610px; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 34px; }
.rmp-home-hero__copy { position: relative; z-index: 2; padding: 68px 0; }
.rmp-home-hero h1 { max-width: 650px; margin: 0 0 24px; font-size: clamp(78px, 7.1vw, 112px); letter-spacing: -.035em; line-height: .88; }
.rmp-home-hero__lead { max-width: 610px; margin-bottom: 30px; color: var(--ink-soft); font-size: 19px; line-height: 1.55; }
.rmp-home-hero__media { position: relative; align-self: stretch; min-width: 0; display: grid; place-items: center; }
.rmp-home-hero__media::before, .rmp-home-hero__media::after { content: ''; position: absolute; background: var(--orange); opacity: .75; }
.rmp-home-hero__media::before { width: 1px; height: 66%; left: 9%; top: 17%; }
.rmp-home-hero__media::after { height: 1px; width: 86%; left: 7%; top: 50%; }
.rmp-home-hero__media img { position: relative; z-index: 1; width: min(820px, 108%); max-width: none; max-height: 570px; object-fit: contain; mix-blend-mode: multiply; filter: contrast(1.05); }
.rmp-dimension { position: absolute; z-index: 2; padding: 4px 8px; color: #656b70; background: var(--white); font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.rmp-dimension--top { top: 12%; right: 4%; }.rmp-dimension--bottom { bottom: 11%; left: 7%; }
.rmp-proof { border-bottom: 1px solid var(--border); background: var(--white); }
.rmp-proof__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.rmp-proof__grid > div { min-height: 118px; display: flex; align-items: center; gap: 16px; padding: 24px 28px; border-left: 1px solid var(--border); }
.rmp-proof__grid > div:last-child { border-right: 1px solid var(--border); }
.rmp-proof strong { color: var(--orange); font-family: var(--heading); font-size: 47px; line-height: 1; white-space: nowrap; }
.rmp-proof span { max-width: 130px; color: #4d5358; font-size: 12px; font-weight: 700; line-height: 1.35; text-transform: uppercase; }
.rmp-finder { padding: 58px 0; border-bottom: 1px solid var(--border); background: var(--surface); }
.rmp-finder .rmp-section-head--inline { display: grid; grid-template-columns: 380px 1fr; align-items: center; }
.rmp-finder .search-control { max-width: none; }
.rmp-finder .featured-products { gap: 18px; }
.rmp-finder .product-card--compact { min-height: 134px; border-radius: 0; }
.rmp-definition { padding: 86px 0; }
.rmp-definition__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(50px, 7vw, 100px); align-items: center; }
.rmp-definition__media { margin: 0; }
.rmp-definition__media img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.rmp-definition__media figcaption { padding: 10px 0; color: #676d72; border-bottom: 1px solid var(--border); font-size: 11px; text-transform: uppercase; }
.rmp-definition__copy > p:not(.rmp-kicker) { color: var(--ink-soft); font-size: 17px; }
.rmp-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 30px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--border); }
.rmp-checks li { position: relative; min-height: 100px; padding: 22px 16px 18px 42px; border-bottom: 1px solid var(--border); }
.rmp-checks li:nth-child(odd) { border-right: 1px solid var(--border); padding-left: 28px; }
.rmp-checks li > .rmp-icon { position: absolute; left: 12px; top: 24px; color: var(--orange); font-size: 15px; }
.rmp-checks li:nth-child(odd) > .rmp-icon { left: 0; }
.rmp-checks strong, .rmp-checks span { display: block; }
.rmp-checks strong { font-family: var(--heading); font-size: 24px; line-height: 1; text-transform: uppercase; }
.rmp-checks span { margin-top: 7px; color: var(--ink-soft); font-size: 12px; }
.rmp-process { padding: 76px 0 66px; border-top: 1px solid var(--border); background: var(--white); }
.rmp-process__grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--orange); }
.rmp-process__grid li { position: relative; min-height: 220px; padding: 28px 30px 24px 0; border-right: 1px solid var(--border); }
.rmp-process__grid li + li { padding-left: 30px; }
.rmp-process__grid li:last-child { border-right: 0; }
.rmp-process__grid li::before { content: ''; position: absolute; width: 12px; height: 12px; top: -7px; left: 0; border: 2px solid var(--orange); background: var(--white); transform: rotate(45deg); }
.rmp-process__grid span { color: var(--orange); font-family: var(--heading); font-size: 55px; line-height: 1; }
.rmp-process__grid h3 { margin: 14px 0 10px; font-size: 30px; }
.rmp-process__grid p { color: var(--ink-soft); font-size: 13px; }
.rmp-comparison { padding: 74px 0 82px; color: var(--white); background: var(--ink); }
.rmp-table-wrap { width: 100%; overflow-x: auto; border: 1px solid #404448; }
.rmp-comparison table { width: 100%; min-width: 720px; border-collapse: collapse; text-align: left; }
.rmp-comparison th, .rmp-comparison td { padding: 20px 24px; border-right: 1px solid #404448; border-bottom: 1px solid #404448; }
.rmp-comparison tr:last-child > * { border-bottom: 0; }
.rmp-comparison th:last-child, .rmp-comparison td:last-child { border-right: 0; }
.rmp-comparison thead th { color: var(--white); font-family: var(--heading); font-size: 26px; font-weight: 700; text-transform: uppercase; }
.rmp-comparison tbody th { color: #c8cccf; font-size: 13px; }
.rmp-comparison td { color: #aeb3b7; font-size: 14px; }
.rmp-comparison .is-featured { color: var(--white); border-right: 2px solid var(--orange); border-left: 2px solid var(--orange); background: #1a1e20; }
.rmp-comparison thead .is-featured { color: var(--orange); border-top: 2px solid var(--orange); }
.rmp-comparison tbody tr:last-child .is-featured { border-bottom: 2px solid var(--orange); }
.rmp-brands { padding: 76px 0; }
.rmp-brands__grid { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid #9da2a6; border-left: 1px solid #9da2a6; }
.rmp-brands__grid span { min-height: 78px; display: grid; place-items: center; padding: 14px; border-right: 1px solid #9da2a6; border-bottom: 1px solid #9da2a6; font-family: var(--heading); font-size: 23px; font-weight: 700; text-align: center; text-transform: uppercase; }
.rmp-shipping { padding: 76px 0; border-top: 1px solid var(--border); background: var(--surface); }
.rmp-shipping__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.rmp-shipping p:not(.rmp-kicker) { max-width: 610px; color: var(--ink-soft); }
.rmp-shipping__facts { display: flex; gap: 0; margin: 34px 0; }
.rmp-shipping__facts strong { min-width: 140px; padding-right: 24px; color: var(--orange); font-family: var(--heading); font-size: 43px; line-height: .9; text-transform: uppercase; }
.rmp-shipping__facts strong + strong { padding-left: 24px; border-left: 1px solid #aeb3b7; }
.rmp-shipping__facts small { display: block; margin-top: 8px; color: var(--ink); font-family: var(--body); font-size: 10px; letter-spacing: .08em; }
.rmp-map { position: relative; min-height: 360px; display: flex; flex-direction: column; justify-content: end; padding: 40px; border: 1px solid #8e9499; background: var(--white); overflow: hidden; }
.rmp-map::before { content: 'ES'; position: absolute; top: -70px; right: 18px; color: #f0f1f2; font-family: var(--heading); font-size: 350px; line-height: 1; }
.rmp-map > strong, .rmp-map > small { position: relative; z-index: 2; display: block; }.rmp-map > strong { font-family: var(--heading); font-size: 47px; text-transform: uppercase; }.rmp-map > small { color: var(--ink-soft); }
.rmp-map__origin { position: absolute; z-index: 3; top: 55%; left: 64%; padding: 7px 10px; color: var(--white); background: var(--orange); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.rmp-map__route { position: absolute; z-index: 1; height: 1px; left: 20%; top: 48%; background: var(--orange); transform-origin: right; }.rmp-map__route--1 { width: 45%; transform: rotate(12deg); }.rmp-map__route--2 { width: 42%; top: 34%; transform: rotate(-6deg); }.rmp-map__route--3 { width: 50%; top: 65%; transform: rotate(25deg); }
.rmp-faq { padding: 78px 0; }
.rmp-faq__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; }
.rmp-faq__grid > div:first-child > p:last-child { max-width: 400px; color: var(--ink-soft); }
.rmp-accordion { border-top: 1px solid var(--ink); }
.rmp-accordion details { border-bottom: 1px solid var(--border); }
.rmp-accordion summary { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; list-style: none; cursor: pointer; font-family: var(--heading); font-size: 25px; font-weight: 700; line-height: 1; text-transform: uppercase; }
.rmp-accordion summary::-webkit-details-marker { display: none; }
.rmp-accordion summary::after { content: '+'; color: var(--orange); font-family: var(--body); font-size: 28px; font-weight: 400; }
.rmp-accordion details[open] summary::after { content: '−'; }
.rmp-accordion details p { max-width: 760px; margin: -4px 0 24px; color: var(--ink-soft); font-size: 14px; }
.rmp-final-cta { color: var(--white); background: var(--ink); border-top: 4px solid var(--orange); }
.rmp-final-cta__inner { min-height: 190px; display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-top: 34px; padding-bottom: 34px; }
.rmp-final-cta h2 { margin: 0; color: var(--white); font-size: clamp(52px, 5vw, 82px); }

/* About */
.rmp-about-hero { border-bottom: 1px solid var(--border); }
.rmp-about-hero__grid { min-height: 600px; display: grid; grid-template-columns: .94fr 1.06fr; align-items: stretch; }
.rmp-about-hero__grid > div { align-self: center; padding: 70px 70px 70px 0; }
.rmp-about-hero h1 { margin: 0 0 28px; font-size: clamp(72px, 6.4vw, 104px); letter-spacing: -.03em; }
.rmp-about-hero p:not(.rmp-kicker) { max-width: 620px; color: var(--ink-soft); font-size: 18px; }
.rmp-about-hero figure { min-height: 600px; margin: 0; overflow: hidden; }
.rmp-about-hero figure img { width: 100%; height: 100%; object-fit: cover; }
.rmp-about-facts { border-bottom: 1px solid var(--border); background: var(--white); }
.rmp-about-facts__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.rmp-about-facts__grid > div { min-height: 135px; display: flex; flex-direction: column; justify-content: center; padding: 22px 30px; border-left: 1px solid var(--border); }.rmp-about-facts__grid > div:last-child { border-right: 1px solid var(--border); }
.rmp-about-facts strong { color: var(--orange); font-family: var(--heading); font-size: 52px; line-height: 1; }.rmp-about-facts span { margin-top: 6px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.rmp-about-team { padding: 90px 0; }
.rmp-about-team__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: start; }
.rmp-about-team__grid > div:first-child > p:not(.rmp-kicker) { color: var(--ink-soft); }
.rmp-about-services { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 2px solid var(--orange); }
.rmp-about-services article { min-height: 280px; padding: 28px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); }.rmp-about-services article:first-child { border-left: 1px solid var(--border); }
.rmp-about-services span { color: var(--orange); font-family: var(--heading); font-size: 48px; }.rmp-about-services h3 { margin: 38px 0 12px; font-size: 32px; }.rmp-about-services p { color: var(--ink-soft); font-size: 13px; }
.rmp-about-method { padding: 78px 0; background: var(--surface); border-top: 1px solid var(--border); }
.rmp-about-method ol, .rmp-contact-process ol { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ink); }
.rmp-about-method li, .rmp-contact-process li { min-height: 220px; padding: 28px; border-right: 1px solid var(--border); }.rmp-about-method li:first-child, .rmp-contact-process li:first-child { border-left: 1px solid var(--border); }
.rmp-about-method li > span, .rmp-contact-process li > span { color: var(--orange); font-family: var(--heading); font-size: 49px; }.rmp-about-method h3, .rmp-contact-process h3 { margin: 28px 0 10px; font-size: 29px; }.rmp-about-method p, .rmp-contact-process p { color: var(--ink-soft); font-size: 13px; }
.rmp-about-quality { padding: 58px 0; color: var(--white); background: var(--ink); }
.rmp-about-quality__grid { display: grid; grid-template-columns: 1.4fr repeat(3, .6fr); align-items: center; }
.rmp-about-quality h2 { color: var(--white); font-size: clamp(46px, 4vw, 66px); }.rmp-about-quality__grid > div { padding: 10px 28px; }.rmp-about-quality__grid > div + div { border-left: 1px solid #555a5e; }.rmp-about-quality strong, .rmp-about-quality span { display: block; }.rmp-about-quality strong { color: var(--orange); font-family: var(--heading); font-size: 46px; line-height: 1; }.rmp-about-quality span { margin-top: 8px; color: #c7cbce; font-size: 11px; text-transform: uppercase; }
.rmp-about-coverage { padding: 90px 0; }
.rmp-about-coverage__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: center; }.rmp-about-coverage p:not(.rmp-kicker) { max-width: 680px; color: var(--ink-soft); }.rmp-about-location { min-height: 330px; display: flex; flex-direction: column; justify-content: end; padding: 42px; color: var(--white); background: var(--ink); border-top: 5px solid var(--orange); }.rmp-about-location strong { margin-bottom: 18px; font-family: var(--heading); font-size: 36px; text-transform: uppercase; }.rmp-about-location span { color: #c4c8cb; }.rmp-about-location a { margin-top: 22px; color: var(--orange); font-family: var(--heading); font-size: 34px; font-weight: 700; text-decoration: none; }

/* Contact */
.rmp-contact-hero { padding: 70px 0 36px; }.rmp-contact-hero h1 { max-width: 1050px; margin: 0 0 20px; font-size: clamp(76px, 7.5vw, 118px); letter-spacing: -.035em; }.rmp-contact-hero > .shell > p:last-child { max-width: 730px; color: var(--ink-soft); font-size: 19px; }
.rmp-contact-strip { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }.rmp-contact-strip__grid { display: grid; grid-template-columns: 1fr 1fr 1.45fr 1fr; }.rmp-contact-strip__grid > * { min-height: 96px; display: flex; flex-direction: column; justify-content: center; padding: 18px 24px; border-left: 1px solid var(--border); text-decoration: none; }.rmp-contact-strip__grid > *:last-child { border-right: 1px solid var(--border); }.rmp-contact-strip span { color: var(--orange); font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }.rmp-contact-strip strong { margin-top: 5px; font-size: 15px; overflow-wrap: anywhere; }
.rmp-contact-main { padding: 68px 0 82px; background: var(--surface); }.rmp-contact-main__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; align-items: stretch; }
.rmp-contact-form { color: var(--white); background: var(--ink); border-top: 5px solid var(--orange); }.rmp-contact-form__head { padding: 32px 36px 24px; border-bottom: 1px solid #454a4e; }.rmp-contact-form h2 { color: var(--white); }.rmp-contact-form .rmp-kicker { margin-bottom: 6px; }
.rmp-contact-form .compatibility-form { padding: 28px 36px 36px; gap: 14px; }.rmp-contact-form .compatibility-form label:not(.consent-control) > span { position: static; width: auto; height: auto; display: block; margin-bottom: 7px; overflow: visible; color: #e1e3e5; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.rmp-contact-form .compatibility-form input:not([type='checkbox']), .rmp-contact-form .compatibility-form textarea { min-height: 50px; padding: 12px 14px; color: var(--white); border-color: #70767b; background: #111416; font-size: 14px; }.rmp-contact-form .compatibility-form textarea { min-height: 110px; }.rmp-contact-form .compatibility-form input::placeholder, .rmp-contact-form .compatibility-form textarea::placeholder { color: #8d9398; }.rmp-contact-form .form-submit-row { margin-top: 8px; }.rmp-contact-form .form-submit-row .button { min-height: 54px; }.rmp-contact-form .consent-control { max-width: 380px; color: #c5c9cc; }
.rmp-contact-help { padding: 38px; border: 1px solid #aeb3b7; background: var(--white); }.rmp-contact-help h2 { margin-bottom: 26px; }.rmp-contact-help ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--border); }.rmp-contact-help li { min-height: 125px; display: grid; grid-template-columns: 62px 1fr; gap: 22px; align-items: center; border-bottom: 1px solid var(--border); }.rmp-contact-help li > span { width: 52px; height: 52px; display: grid; place-items: center; color: var(--white); background: var(--orange); font-family: var(--heading); font-size: 28px; }.rmp-contact-help h3 { margin: 0 0 6px; font-size: 28px; }.rmp-contact-help li p { margin: 0; color: var(--ink-soft); font-size: 12px; }.rmp-contact-whatsapp { margin-top: 26px; padding: 26px; color: var(--white); background: var(--ink); }.rmp-contact-whatsapp strong { font-family: var(--heading); font-size: 29px; text-transform: uppercase; }.rmp-contact-whatsapp p { color: #c8cccf; font-size: 13px; }
.rmp-visit { padding: 80px 0; }.rmp-visit__grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 60px; align-items: stretch; }.rmp-visit address { display: flex; flex-direction: column; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--border); font-style: normal; }.rmp-visit address strong { margin-bottom: 10px; }.rmp-visit address span { color: var(--ink-soft); }.rmp-visit__links { display: flex; flex-direction: column; margin-top: 24px; }.rmp-visit__links a { color: var(--orange); font-weight: 800; text-decoration: none; }
.rmp-contact-map { position: relative; min-height: 400px; border: 1px solid #9da2a6; background: var(--surface); overflow: hidden; }.rmp-contact-map::before, .rmp-contact-map::after { content: ''; position: absolute; width: 130%; height: 46px; left: -15%; top: 43%; border-top: 2px solid #9da2a6; border-bottom: 2px solid #9da2a6; transform: rotate(-11deg); }.rmp-contact-map::after { top: 20%; transform: rotate(27deg); border-color: #c5c9cc; }.rmp-road { position: absolute; z-index: 2; padding: 5px 10px; color: var(--white); background: var(--ink); font-size: 11px; font-weight: 800; text-transform: uppercase; }.rmp-road--a { top: 29%; left: 12%; }.rmp-road--b { top: 18%; right: 14%; }.rmp-contact-pin { position: absolute; z-index: 3; left: 56%; top: 50%; padding: 14px 18px; color: var(--white); background: var(--orange); font-weight: 800; line-height: 1.1; text-transform: uppercase; }.rmp-contact-pin::before { content: ''; position: absolute; left: 18px; bottom: -13px; border: 7px solid transparent; border-top-color: var(--orange); }.rmp-contact-pin small { font-size: 9px; }
.rmp-contact-process { padding: 72px 0; background: var(--surface); border-top: 1px solid var(--border); }

/* SEO / province pages */
.rmp-geo-hero { position: relative; overflow: hidden; color: var(--white); background: var(--ink); }.rmp-geo-hero__grid { min-height: 540px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 34px; }.rmp-geo-hero h1 { max-width: 820px; margin: 0 0 24px; color: var(--white); font-size: clamp(70px, 6.5vw, 104px); letter-spacing: -.03em; }.rmp-geo-hero__grid > div:first-child > p:not(.rmp-kicker) { max-width: 650px; color: #c8cccf; font-size: 18px; }.rmp-geo-hero__media { position: relative; align-self: stretch; display: grid; place-items: center; }.rmp-geo-hero__media::before { content: ''; position: absolute; width: 78%; aspect-ratio: 1; border: 1px solid #3d4246; border-radius: 50%; box-shadow: 0 0 0 52px rgba(255,255,255,.025), 0 0 0 104px rgba(255,255,255,.015); }.rmp-geo-hero__media img { position: relative; z-index: 1; width: 112%; max-width: none; max-height: 510px; object-fit: contain; }.rmp-geo-hero__media span { position: absolute; right: 4%; bottom: 11%; z-index: 2; padding: 7px 11px; color: var(--white); background: var(--orange); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.rmp-geo-proof { border-bottom: 1px solid var(--border); }.rmp-geo-proof__grid { display: grid; grid-template-columns: repeat(4, 1fr); }.rmp-geo-proof__grid > div { min-height: 105px; display: flex; align-items: center; gap: 13px; padding: 20px 28px; border-left: 1px solid var(--border); }.rmp-geo-proof__grid > div:last-child { border-right: 1px solid var(--border); }.rmp-geo-proof strong { color: var(--orange); font-family: var(--heading); font-size: 39px; text-transform: uppercase; }.rmp-geo-proof span { max-width: 90px; color: var(--ink-soft); font-size: 11px; font-weight: 700; text-transform: uppercase; }
.rmp-geo-body { padding: 78px 0 90px; }.rmp-geo-body__grid { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 70px; align-items: start; }.rmp-geo-copy { min-width: 0; font-size: 16px; }.rmp-geo-copy > .wp-block-group:first-child { display: none !important; }.rmp-geo-copy h1 { display: none !important; }.rmp-geo-copy .wp-block-group { width: 100% !important; max-width: none !important; margin: 0 0 56px !important; padding: 0 !important; color: var(--ink) !important; background: transparent !important; border: 0 !important; }.rmp-geo-copy .wp-block-group > div, .rmp-geo-copy .wp-block-group__inner-container { width: 100% !important; max-width: none !important; margin-inline: 0 !important; padding-inline: 0 !important; }.rmp-geo-copy h2 { margin: 64px 0 22px !important; padding-top: 22px; color: var(--ink) !important; border-top: 3px solid var(--orange); font-size: clamp(43px, 4vw, 64px) !important; line-height: .98 !important; }.rmp-geo-copy h3 { margin: 34px 0 14px !important; color: var(--ink) !important; font-size: 32px !important; }.rmp-geo-copy h4 { color: var(--ink) !important; font-family: var(--heading); font-size: 24px; text-transform: uppercase; }.rmp-geo-copy p, .rmp-geo-copy li { color: #454b50 !important; line-height: 1.72 !important; }.rmp-geo-copy a { color: var(--orange) !important; text-underline-offset: 3px; }.rmp-geo-copy .wp-block-columns { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important; gap: 18px !important; margin: 26px 0 42px !important; }.rmp-geo-copy .wp-block-column { min-width: 0 !important; margin: 0 !important; padding: 22px !important; border: 1px solid var(--border) !important; background: var(--white) !important; }.rmp-geo-copy .wp-block-button__link, .rmp-geo-copy .wp-element-button { display: inline-flex !important; min-height: 50px !important; align-items: center !important; padding: 0 22px !important; color: var(--white) !important; border: 1px solid var(--orange) !important; border-radius: 4px !important; background: var(--orange) !important; font-weight: 800 !important; text-decoration: none !important; }.rmp-geo-copy table { width: 100% !important; min-width: 680px; border-collapse: collapse !important; }.rmp-geo-copy .wp-block-table { max-width: 100% !important; margin: 30px 0 !important; overflow-x: auto; }.rmp-geo-copy th, .rmp-geo-copy td { padding: 15px 17px !important; border: 1px solid #c9cdd0 !important; text-align: left !important; }.rmp-geo-copy th { color: var(--white) !important; background: var(--ink) !important; }.rmp-geo-copy img { width: auto; max-width: 100% !important; height: auto !important; }.rmp-geo-copy .has-background { color: var(--ink) !important; background: var(--surface) !important; }.rmp-geo-copy .has-text-color { color: var(--ink) !important; }
.rmp-geo-aside { position: sticky; top: 24px; padding: 32px; color: var(--white); background: var(--ink); border-top: 5px solid var(--orange); }.rmp-geo-aside h2 { margin: 0 0 24px; color: var(--white); font-size: 43px; }.rmp-geo-aside ul { margin: 0 0 28px; padding: 0; list-style: none; border-top: 1px solid #404448; }.rmp-geo-aside li { position: relative; padding: 14px 0 14px 22px; color: #c7cbce; border-bottom: 1px solid #404448; font-size: 13px; }.rmp-geo-aside li::before { content: '✓'; position: absolute; left: 0; color: var(--orange); }.rmp-geo-aside .button { width: 100%; }.rmp-geo-phone { display: block; margin-top: 18px; color: var(--white); font-family: var(--heading); font-size: 35px; font-weight: 700; text-align: center; text-decoration: none; }

@media (max-width: 1100px) {
  .rmp-home-hero__grid, .rmp-about-hero__grid { grid-template-columns: 1fr 1fr; }
  .rmp-home-hero h1, .rmp-about-hero h1 { font-size: 78px; }
  .rmp-brands__grid { grid-template-columns: repeat(4, 1fr); }
  .rmp-proof__grid > div, .rmp-about-facts__grid > div, .rmp-geo-proof__grid > div { padding-inline: 18px; }
  .rmp-about-quality__grid { grid-template-columns: 1fr 1fr; gap: 28px 0; }.rmp-about-quality__grid > div:nth-child(3) { border-left: 0; }
  .rmp-contact-strip__grid { grid-template-columns: 1fr 1fr; }.rmp-contact-strip__grid > *:nth-child(3) { border-top: 1px solid var(--border); }.rmp-contact-strip__grid > *:nth-child(4) { border-top: 1px solid var(--border); }
  .rmp-geo-body__grid { gap: 36px; grid-template-columns: minmax(0, 1fr) 300px; }
}

@media (max-width: 850px) {
  .rmp-section-head--inline, .rmp-finder .rmp-section-head--inline { display: grid; grid-template-columns: 1fr; align-items: start; }
  .rmp-home-hero__grid, .rmp-about-hero__grid, .rmp-definition__grid, .rmp-shipping__grid, .rmp-about-team__grid, .rmp-about-coverage__grid, .rmp-contact-main__grid, .rmp-visit__grid, .rmp-geo-hero__grid, .rmp-geo-body__grid { grid-template-columns: 1fr; }
  .rmp-home-hero__copy { padding-bottom: 0; }.rmp-home-hero__media { min-height: 430px; }.rmp-home-hero__media img { max-height: 430px; }
  .rmp-proof__grid, .rmp-about-facts__grid, .rmp-geo-proof__grid { grid-template-columns: 1fr 1fr; }.rmp-proof__grid > div:nth-child(3), .rmp-proof__grid > div:nth-child(4), .rmp-about-facts__grid > div:nth-child(3), .rmp-about-facts__grid > div:nth-child(4), .rmp-geo-proof__grid > div:nth-child(3), .rmp-geo-proof__grid > div:nth-child(4) { border-top: 1px solid var(--border); }
  .rmp-process__grid, .rmp-about-method ol, .rmp-contact-process ol { grid-template-columns: 1fr 1fr; }.rmp-process__grid li:nth-child(2) { border-right: 0; }.rmp-process__grid li:nth-child(3), .rmp-process__grid li:nth-child(4) { border-top: 1px solid var(--border); }
  .rmp-faq__grid { grid-template-columns: 1fr; gap: 38px; }
  .rmp-final-cta__inner { align-items: flex-start; flex-direction: column; justify-content: center; }
  .rmp-about-hero__grid > div { padding-right: 0; }.rmp-about-hero figure { min-height: 420px; }
  .rmp-about-services { grid-template-columns: 1fr 1fr 1fr; }.rmp-about-quality__grid { grid-template-columns: 1fr 1fr; }
  .rmp-geo-hero__media { min-height: 390px; }.rmp-geo-hero__media img { max-height: 390px; }.rmp-geo-aside { position: static; }.rmp-geo-copy { order: 2; }.rmp-geo-aside { order: 1; }
}

@media (max-width: 620px) {
  .rmp-section-head h2, .rmp-definition h2, .rmp-shipping h2, .rmp-faq h2, .rmp-about-team h2, .rmp-about-quality h2, .rmp-about-coverage h2, .rmp-contact-help h2, .rmp-visit h2, .rmp-contact-form h2 { font-size: 48px; }
  .rmp-home-hero__grid { min-height: 0; }.rmp-home-hero__copy { padding-top: 48px; }.rmp-home-hero h1, .rmp-about-hero h1, .rmp-contact-hero h1, .rmp-geo-hero h1 { font-size: 60px; line-height: .92; }.rmp-home-hero__lead { font-size: 16px; }.rmp-home-hero__media { min-height: 290px; }.rmp-home-hero__media img { max-height: 300px; width: 116%; }.rmp-dimension { display: none; }
  .rmp-proof__grid > div, .rmp-about-facts__grid > div, .rmp-geo-proof__grid > div { min-height: 94px; padding: 16px 12px; }.rmp-proof strong, .rmp-about-facts strong, .rmp-geo-proof strong { font-size: 34px; }.rmp-proof span, .rmp-about-facts span, .rmp-geo-proof span { font-size: 9px; }
  .rmp-finder, .rmp-definition, .rmp-process, .rmp-brands, .rmp-shipping, .rmp-faq, .rmp-about-team, .rmp-about-method, .rmp-about-coverage, .rmp-contact-main, .rmp-visit, .rmp-contact-process, .rmp-geo-body { padding-top: 54px; padding-bottom: 54px; }
  .rmp-definition__grid, .rmp-shipping__grid, .rmp-about-team__grid, .rmp-about-coverage__grid, .rmp-visit__grid { gap: 38px; }
  .rmp-checks { grid-template-columns: 1fr; }.rmp-checks li:nth-child(odd) { border-right: 0; padding-left: 42px; }.rmp-checks li:nth-child(odd)::before { left: 12px; }
  .rmp-process__grid, .rmp-about-method ol, .rmp-contact-process ol { grid-template-columns: 1fr; border-top-width: 2px; }.rmp-process__grid li, .rmp-process__grid li + li, .rmp-about-method li, .rmp-contact-process li { min-height: 0; padding: 24px 0; border-right: 0; border-left: 0; border-bottom: 1px solid var(--border); }.rmp-process__grid li + li { padding-left: 0; }.rmp-process__grid li::before { display: none; }.rmp-process__grid h3, .rmp-about-method h3, .rmp-contact-process h3 { margin-top: 6px; }
  .rmp-brands__grid { grid-template-columns: repeat(2, 1fr); }.rmp-brands__grid span { min-height: 64px; font-size: 20px; }
  .rmp-shipping__facts { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 0; }.rmp-shipping__facts strong { min-width: 0; }.rmp-shipping__facts strong + strong { padding-left: 16px; }.rmp-shipping__facts strong:nth-child(3) { padding-left: 0; border-left: 0; }.rmp-map { min-height: 300px; padding: 24px; }
  .rmp-accordion summary { min-height: 68px; font-size: 22px; }.rmp-final-cta__inner { min-height: 250px; }.rmp-final-cta h2 { font-size: 49px; }
  .rmp-about-hero__grid { min-height: 0; }.rmp-about-hero__grid > div { padding: 50px 0 34px; }.rmp-about-hero figure { min-height: 290px; }.rmp-about-services { grid-template-columns: 1fr; }.rmp-about-services article { min-height: 190px; }.rmp-about-services h3 { margin-top: 14px; }.rmp-about-quality__grid { grid-template-columns: 1fr; }.rmp-about-quality__grid > div + div { border-left: 0; border-top: 1px solid #454a4e; padding-top: 24px; }.rmp-about-location { min-height: 280px; padding: 28px; }
  .rmp-contact-hero { padding-top: 50px; }.rmp-contact-hero > .shell > p:last-child { font-size: 16px; }.rmp-contact-strip__grid { grid-template-columns: 1fr; }.rmp-contact-strip__grid > * { min-height: 76px; padding: 14px 16px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); }.rmp-contact-form__head, .rmp-contact-form .compatibility-form, .rmp-contact-help { padding: 24px 20px; }.rmp-contact-form .form-row { grid-template-columns: 1fr; }.rmp-contact-help li { grid-template-columns: 52px 1fr; gap: 14px; }.rmp-contact-map { min-height: 300px; }.rmp-contact-process li { border-left: 0; }
  .rmp-geo-hero__grid { min-height: 0; padding-top: 50px; }.rmp-geo-hero__media { min-height: 290px; }.rmp-geo-hero__media img { max-height: 290px; }.rmp-geo-copy h2 { font-size: 42px !important; }.rmp-geo-copy h3 { font-size: 29px !important; }.rmp-geo-copy .wp-block-columns { grid-template-columns: 1fr !important; }.rmp-geo-aside { padding: 26px 20px; }
}


/* Fidelity illustrations — process, comparison and Spain coverage. */
.rmp-process__grid li { min-height: 390px; display: flex; flex-direction: column; padding-top: 22px; }
.rmp-process__title { display: flex; align-items: baseline; gap: 18px; min-height: 62px; }
.rmp-process__grid .rmp-process__number { color: var(--orange); font-family: var(--heading); font-size: 55px; line-height: 1; }
.rmp-process__grid .rmp-process__title h3 { margin: 0; }
.rmp-process__grid li > p { min-height: 62px; margin-top: auto; }
.rmp-comparison tbody th { width: 245px; }
.rmp-table-label { display: flex; align-items: center; gap: 13px; color: var(--white); font-family: var(--heading); font-size: 21px; font-weight: 700; text-transform: uppercase; }
.rmp-cell-stack { display: flex; flex-direction: column; gap: 2px; }
.rmp-cell-stack strong { color: var(--white); letter-spacing: .13em; }
.rmp-cell-stack small, .rmp-comparison td small { display: block; margin-top: 4px; color: #aeb3b7; font-size: 11px; }
.rmp-comparison td.is-featured strong { color: var(--orange); }
.rmp-comparison td.is-featured small { color: #d6d9db; }
.rmp-shipping__facts strong { display: grid; grid-template-columns: 38px 1fr; align-items: center; column-gap: 10px; }
.rmp-shipping__facts .rmp-icon { width: 40px; height: 40px; display: grid; place-items: center; grid-row: 1 / span 2; color: var(--orange); border: 1px solid #aeb3b7; background: var(--white); font-size: 22px; }
.rmp-shipping__facts small { grid-column: 2; }
.rmp-map { min-height: 470px; padding: 372px 34px 30px; }
.rmp-map::before { content: none; }
.rmp-map > strong { font-size: 42px; }
@media (max-width: 850px) {
  .rmp-process__grid li { min-height: 370px; }
  .rmp-map { min-height: 450px; }
}
@media (max-width: 620px) {
  .rmp-process__grid li, .rmp-process__grid li + li { min-height: 0; padding: 26px 0; }
  .rmp-process__title { min-height: 54px; }
  .rmp-process__grid li > p { min-height: 0; margin-top: 6px; }
  .rmp-comparison tbody th { width: 190px; }
  .rmp-table-label { font-size: 18px; }
  .rmp-shipping__facts strong { grid-template-columns: 32px 1fr; font-size: 35px; }
  .rmp-shipping__facts .rmp-icon { width: 34px; height: 34px; font-size: 19px; }
  .rmp-map { min-height: 370px; padding: 292px 20px 22px; }
  .rmp-map > strong { font-size: 34px; }
}


/* Flaticon UIcons system and real Spain coverage map. */
.rmp-icon { display: inline-grid; place-items: center; flex: 0 0 auto; line-height: 1; vertical-align: -.08em; }
.rmp-feature-icon { width: 34px; height: 34px; color: var(--orange); border: 1px solid #4a5054; background: #171a1c; font-size: 19px; }
.button .rmp-icon { margin-right: 8px; font-size: 18px; }
.button--phone .rmp-icon { font-size: 18px; }
.filter-trigger { align-items: center; gap: 8px; }
.filter-trigger .rmp-icon, .pagination .rmp-icon { font-size: 18px; }
.site-footer a:has(.rmp-icon) { display: inline-flex; align-items: center; gap: 9px; }
.site-footer a .rmp-icon { color: var(--orange); font-size: 15px; }
.site-footer__credit { font-size: 10px !important; letter-spacing: .04em; text-transform: uppercase; }
.site-footer__credit a { color: #8e9499; }
.rmp-about-services article > span { width: 58px; height: 58px; display: grid; place-items: center; color: var(--orange); border: 1px solid #aeb3b7; background: var(--white); font-size: 29px; }
.rmp-about-services article > span .rmp-icon { font-size: inherit; }
.rmp-about-services h3 { margin-top: 30px; }
.rmp-contact-strip span { display: flex; align-items: center; gap: 8px; }
.rmp-contact-strip span .rmp-icon { font-size: 16px; }
.rmp-contact-help li > span .rmp-icon { font-size: 25px; }
.rmp-geo-aside li { display: flex; align-items: center; gap: 10px; padding-left: 0; }
.rmp-geo-aside li::before { content: none; }
.rmp-geo-aside li .rmp-icon { width: 24px; height: 24px; color: var(--orange); border: 1px solid #4a5054; font-size: 13px; }
.rmp-spain-map { position: absolute; inset: 12px 18px 98px; display: grid; place-items: center; }
.rmp-spain-map img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 8px 12px rgba(13,15,16,.08)); }
.rmp-spain-map__origin, .rmp-spain-map__coverage { position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 7px; padding: 8px 11px; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.rmp-spain-map__origin { top: 36%; right: 12%; color: var(--white); background: var(--orange); box-shadow: 0 4px 14px rgba(255,90,10,.24); }
.rmp-spain-map__coverage { left: 5%; bottom: 4%; color: var(--ink); border: 1px solid #aeb3b7; background: rgba(255,255,255,.94); }
.rmp-spain-map__origin .rmp-icon, .rmp-spain-map__coverage .rmp-icon { font-size: 14px; }
@media (max-width: 620px) {
  .rmp-checks li:nth-child(odd) > .rmp-icon { left: 12px; }
  .rmp-about-services article > span { width: 52px; height: 52px; font-size: 25px; }
  .rmp-spain-map { inset: 10px 10px 78px; }
  .rmp-spain-map__origin { right: 7%; }
  .rmp-spain-map__coverage { left: 1%; bottom: 1%; }
}


/* Map composition fix: keep mainland and both archipelagos visible. */
.rmp-spain-map img { display: block; min-width: 0; min-height: 0; }
.rmp-spain-map__coverage { right: 4%; bottom: 3%; left: auto; }
@media (max-width: 620px) {
  .rmp-spain-map__coverage { right: 1%; bottom: 1%; left: auto; }
}


/* Map label refinement: point to Murcia without covering Baleares. */
.rmp-spain-map__origin { top: 34%; right: 27%; }
.rmp-spain-map__origin::after { content: ''; position: absolute; top: 100%; left: 50%; width: 1px; height: 26px; background: var(--orange); }
@media (max-width: 620px) {
+  .rmp-spain-map__origin { top: 33%; right: 24%; }
+  .rmp-spain-map__origin::after { height: 18px; }
+}
