/* Measured against arg.tesisymasters.com. Keep responsive overrides together. */
.section-heading h2{line-height:1.3}
.section-cta,.closing-button{font-weight:800;min-height:46px}
.reviews-section{background:#fff}
.reviews-description{font-size:22px;line-height:33px;margin-bottom:0}
.review-image{max-width:768px}
.reviews-section .divider{width:530px}
.faq-section{background:#f7f7f7}
.faq-list{max-width:none;margin-top:20px}
.faq-list details{border:0}
.faq-list summary{padding:15px;min-height:52px;border:1px solid #00000005;font-size:20px;line-height:20px}
.faq-list summary:after{top:15px;right:35px;color:#080e2c;font-weight:800}
.site-footer{background:#fff;color:#000;padding:20px 24px}
.footer-nav{gap:0}
.footer-nav a{color:#000;padding:0 10px;line-height:18px}
.footer-nav a+a{border-left:1px solid #000}
.copyright{margin:16px 0 0;padding:0;border:0;color:#000;font-size:14px;line-height:21px}
.change-icon img{width:52px;height:54px;object-fit:contain}
.step-number{color:#fff;font-family:Gilmer,Arial,sans-serif;font-weight:800}
.step-card h3{font-family:Gilmer,Arial,sans-serif;font-weight:800}
.cookie-notice{font-family:Arial,sans-serif;font-size:12px;font-weight:400;min-height:60px}
@media(min-width:1025px){
 .content-width{padding-left:10px;padding-right:10px}
 .header-inner{padding-left:30px}
 .hero-inner{padding-left:10px;padding-right:0;min-height:757px}
 .hero-copy{padding-top:10px}
 .hero-copy h1{margin-bottom:20px;max-width:830px}
 .hero-description{max-width:820px;margin-bottom:38px}
 .hero-visual{max-width:none}
 .hero-form{background:#fff}
 .progress-container{margin:20px 0}
 .hero-form label:not(.consent){line-height:21px;margin-top:10px}
 #FormPasosPresupuestoStep1>label:first-child{margin-top:24px}
 .hero-form .primary-button{margin-top:18px}
 .pressure-section,.pressure-inner{min-height:597.125px}
 .pressure-inner{padding-left:10px;padding-right:10px}
 .pressure-photo{width:580px;margin-left:-110px;margin-bottom:0}
 .pressure-photo img{width:580px;max-width:none;height:482px;max-height:none}
 .pressure-copy h2{left:calc(30% - 10px);width:540px;white-space:nowrap;line-height:45px}
 .assurance-list{top:108px}
 .assurance-list img{max-width:none}
 .assurance-list img:nth-child(1){left:30%}
 .assurance-list img:nth-child(2){left:47.5%;top:106.375px}
 .assurance-list img:nth-child(3){left:65%;top:212.75px}
 .intro-section .content-width{padding-top:10px;padding-bottom:10px}
 .intro-row{padding:10px 52.8px;border-left-width:24px;min-height:110px}
 .intro-row p{font-size:20px;line-height:30px}
 .intro-section .section-heading{margin-bottom:33px}
 .services-section .content-width{padding-top:10px;padding-bottom:10px}
 .service-grid{max-width:1055px;margin:30px auto;gap:62.5px}
 .service-copy{min-height:138px;padding:10px 20px 20px}
 .service-copy h3{font-weight:800;line-height:39px;margin:0}
 .service-card{background:#f7f7f7}
 .service-card>img{aspect-ratio:auto}
 .service-divider{background:linear-gradient(90deg,#0094ea,#054378)}
 .change-section .content-width{padding-top:10px;padding-bottom:10px}
 .change-section .divider{width:555px}
 .change-grid{max-width:1035px;margin:auto;gap:30px 52.5px}
 .change-card{min-height:232.5px;padding:40px 40px 30px;display:grid;grid-template-columns:60px 1fr;grid-template-rows:auto 2px auto;column-gap:10px;row-gap:8px;align-content:center;align-items:center}
 .change-icon{height:60px}
 .change-card h3{margin:0;text-align:left;font-size:16px;line-height:20px}
 .change-card .card-divider{grid-column:1/-1;width:100%;max-width:none;margin:0}
 .change-card p{grid-column:1/-1;font-size:13px;line-height:15px;margin:0}
 .steps-section .content-width{padding-top:10px;padding-bottom:10px}
 .steps-grid{max-width:966px;margin:33px auto 0;gap:30px}
 .step-card{min-height:251.5px;padding:15px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:115.5px auto;column-gap:10px;align-items:center;text-align:center}
 .step-number{font-size:77px;line-height:115.5px;opacity:1;padding-right:10px}
 .step-card h3{margin:0;border-left:1px solid #fff;padding-left:10px;font-size:23px;line-height:34.5px;text-align:left}
 .step-card p{grid-column:1/-1;font-size:17px;line-height:25.5px}
 .steps-section .section-cta{margin-top:45px}
 .reviews-section .content-width,.faq-section .content-width{padding-top:10px;padding-bottom:10px}
 .reviews-section .section-heading{margin-bottom:10px}
 .closing-cta{padding-top:60px;padding-bottom:60px}
 .closing-cta h2{line-height:45.5px;margin-bottom:20px}
}

@media(min-width:1025px){.service-card>img{aspect-ratio:310/162.5}.hero-form label:not(.consent){margin-top:14px}.hero-form .primary-button{margin-top:22px}}
@media(max-width:767px){
.header-inner{height:73.5px;justify-content:center;padding:20px}.brand img{width:94px}
.promo-bar{height:75px}.promo-slide{font-size:15px}
.hero-inner{padding:50px 20px}
.hero-copy{padding:20px;background:rgba(255,255,255,.9);border-radius:25px;box-shadow:0 4px 4px #0094eacc}
.hero-copy h1{margin-bottom:40px}
.hero-form{padding:0;width:100%;background:transparent;border-radius:0;box-shadow:none}
.progress-container{margin:0 0 20px}
.hero-form label:not(.consent){line-height:24px;margin:4px 0 5px}
.hero-form input:not([type=checkbox]),.phone-field{margin-bottom:12px}
.hero-form .phone-field input{margin-bottom:0}
.primary-button{margin-top:18px}
.pressure-copy h2{margin-bottom:20px;line-height:33px}
.assurance-list{gap:10px}
.section-heading h2{line-height:29.9px}
.intro-section .content-width{padding:10px 30px}
.intro-row{padding:10px 15px;border-left-width:8px}.intro-row p{font-size:14px;line-height:21px}
.intro-rows{gap:30px}.intro-section .section-heading{margin-bottom:30px}
.services-section .content-width{padding:10px 30px}.services-section .section-heading{padding:0}
.mobile-service-track{padding-left:0;padding-right:0;gap:20px}.mobile-service-track .service-card{flex-basis:100%}
.service-copy h3{font-weight:800;line-height:39px}.service-copy{min-height:138px}.service-copy p{line-height:18px}
.change-section .content-width{padding-top:10px;padding-bottom:10px}
.change-grid{margin-top:30px;gap:20px}
.change-card,.change-card:nth-child(4),.change-card:nth-child(5){flex-basis:295px;min-height:260px;padding:35px 35px;display:grid;grid-template-columns:60px 1fr;grid-template-rows:auto 2px auto;gap:8px 10px;align-items:center;align-content:center}
.change-card h3{text-align:left;margin:0}.change-card .card-divider,.change-card p{grid-column:1/-1;margin:0;width:100%}.change-card p{font-size:13px;line-height:15px}
.steps-section .content-width{padding:10px 45px}
.steps-grid{gap:20px;margin-top:30px}
.step-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:77px auto;gap:5px 10px;padding:15px;margin:0;min-height:200px;text-align:center}
.step-number{grid-row:1;line-height:77px;font-size:77px;opacity:1}
.step-card h3{font-size:20px;line-height:30px;border-left:1px solid #fff;padding-left:10px;margin:0}
.step-card p{grid-column:1/-1;font-size:14px;line-height:21px}
.step-card.active{transform:scale(1.05)}
.steps-section .section-cta{width:335px;max-width:calc(100vw - 40px);margin-left:50%;transform:translateX(-50%);margin-top:30px}
.reviews-section .content-width{padding:10px 30px}.reviews-description{font-size:14px;line-height:21px;margin-bottom:0}.review-image{margin-top:15px}
.faq-section .content-width{padding:10px 30px}.faq-list summary{font-size:16px;line-height:16px;padding:15px 34px 15px 15px;min-height:64px}.faq-list summary:after{right:15px}
.closing-cta h2{line-height:29.9px}.closing-button{min-height:46px}
.site-footer{padding:20px}.footer-nav{gap:8px 0}.footer-nav a{font-size:12px}.copyright{font-size:12px}
.cookie-notice{text-align:center;padding:15px 24px;font-size:12px;line-height:18px}.cookie-notice>div{justify-content:center;margin-top:10px}
}

@media(min-width:1025px){
.intro-section .section-heading{margin-bottom:34px}
.service-copy{min-height:129px}
.change-section .section-heading{margin-bottom:21px}
.steps-section .section-cta{margin-top:41px}
.reviews-section .section-heading{margin-bottom:3.5px}
.faq-list{margin-top:24px}
}
@media(max-width:767px){
.hero-copy{padding-bottom:38px}
.intro-row{border-left-width:24px;padding:10px}.intro-row p{line-height:16px}
.steps-grid{gap:10px}.steps-section .section-cta{margin-top:20px}
.faq-list summary{min-height:72px}
.closing-cta{padding-bottom:50px}
}

.section-cta,.closing-button{font-weight:700}
.faq-list summary:after{font-family:Arial,sans-serif;font-size:24px;font-weight:700;line-height:20px}

@media(min-width:1025px){.change-card h3{max-width:147.5px}.change-card:nth-child(3) h3{max-width:133px}.change-card:nth-child(5){grid-template-columns:60px 190px;padding-left:24px;padding-right:24px}.change-card:nth-child(5) h3{max-width:190px}.change-card:nth-child(5) p,.change-card:nth-child(5) .card-divider{max-width:228.8px;justify-self:center}}

/* Sequential emphasis, matching the original one-second cycle. */
.step-card{transform:scale(1);transform-origin:center;transition:transform .5s ease,opacity .5s ease;opacity:.7}
.step-card.active{transform:scale(1.1);opacity:1;position:relative;z-index:1}

/* Interactive states shared by the landing and legal pages. */
.primary-button,.section-cta,.closing-button,.send-msPopup{transition:background-color .3s ease,color .3s ease,box-shadow .3s ease}
.primary-button:focus-visible,.section-cta:focus-visible,.closing-button:focus-visible{outline:3px solid #0094ea;outline-offset:4px}
.faq-list summary{transition:color .3s ease,background-color .3s ease}
.faq-list summary:hover,.faq-list details[open] summary{color:#0094ea}
.faq-list summary:after{transition:color .3s ease}
.faq-list summary:hover:after,.faq-list details[open] summary:after{color:#0094ea}
.faq-list summary:focus-visible{outline:2px solid #0094ea;outline-offset:-3px}
.legal-page{width:min(1200px,100%);margin:auto;padding:50px 25px 70px;color:#080e2c;font:400 16px/1.7 Raleway,Arial,sans-serif;overflow-wrap:anywhere}
.legal-page nav{margin-bottom:30px;font-size:14px}
.legal-page h1{font-size:36px;line-height:1.2;margin:0 0 40px}
.legal-page h2{font-size:25px;line-height:1.3;margin:32px 0 15px}
.legal-page h3{font-size:21px;margin-top:25px}
.legal-page p{margin:0 0 18px}.legal-page ul,.legal-page ol{padding-left:25px;margin-bottom:20px}
.legal-page a{color:#008bd5;text-decoration:underline}.legal-page a:hover{color:#080e2c}
.legal-page table{width:100%;border-collapse:collapse;font-size:14px;margin:20px 0}.legal-page td,.legal-page th{border:1px solid #d4d8df;padding:10px;text-align:left}
@media(max-width:767px){.legal-page{padding:30px 20px 45px;font-size:15px}.legal-page h1{font-size:27px}.legal-page h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.faq-list summary,.primary-button,.section-cta,.closing-button{transition:none}}

/* Aviso Legal: typography, title alignment and spacing from post-195. */
.legal-notice{width:min(1140px,100%);padding:30px 10px 20px;font:400 16px/1.5 Gilmer,Arial,sans-serif;color:#000}
.legal-notice h1{text-align:center;font:800 40px/1.3 Gilmer,Arial,sans-serif;color:#0a0a0a;margin:0 0 20px}
.legal-notice .legal-date{text-align:right;color:#25282a;font:400 16px/1.5 Gilmer,Arial,sans-serif;margin:0 0 20px}
.legal-notice h2,.legal-notice h3,.legal-notice .legal-heading{font:800 32px/1.3 Gilmer,Arial,sans-serif;color:#000;margin:0 0 20px}
.legal-notice p{margin:0 0 20px}.legal-notice ul,.legal-notice ol{margin:0 0 20px;padding-left:10px;list-style-position:outside}
@media(max-width:767px){.legal-notice{padding:30px 20px 20px}.legal-notice h1{font-size:40px}.legal-notice h2,.legal-notice h3,.legal-notice .legal-heading{font-size:32px}.legal-notice .legal-date{font-size:16px}}
