@import url('servicios.css?v=3');
/* Portada V3: composición de las capturas del usuario. */
:root{--navy:#031133;--blue:#044cd7;--yellow:#f3b612;--heading:#082864}
.brand-panel{position:relative;isolation:isolate;background:transparent;padding-right:70px}.brand-panel:before{content:'';position:absolute;inset:0;background:var(--navy);clip-path:polygon(0 0,100% 0,80% 100%,0 100%);z-index:-1}.brand-panel img{position:relative;z-index:1}.site-header{isolation:isolate}.header-main{height:150px}.header-right{padding-top:10px}.header-contact{min-height:68px}.quote-button{padding:9px 35px}.notice-strip{min-height:46px;padding:10px 20px}main{padding-top:196px}
.home-hero{position:relative;isolation:isolate;min-height:620px;height:clamp(620px,38vw,740px);color:white;overflow:hidden;background:var(--navy)}.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;z-index:-2}.home-hero:after{content:'';position:absolute;inset:0;background:rgba(3,29,78,.56);z-index:-1}.hero-content{height:100%;max-width:1520px;margin:auto;display:flex;flex-direction:column;align-items:center;padding:27px 30px 73px;text-align:center}.home-hero h1{font-family:Montserrat,Arial,sans-serif;font-size:44px;line-height:1.2;font-weight:600;letter-spacing:0;color:white;margin:0;max-width:1450px}.hero-subtitle{font-family:Montserrat,Arial,sans-serif;font-size:36px;font-weight:600;line-height:1.25;color:white;margin:46px 0 0;max-width:1300px}.hero-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:54px;width:1026px;max-width:100%;margin-top:auto}.hero-tile{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--yellow);border:4px solid var(--navy);color:var(--navy);padding:17px 8px 12px;text-transform:uppercase;text-align:center;transition:transform .18s ease}.hero-tile svg{display:block;width:80px;height:80px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hero-tile span{font-family:'Source Sans 3',Arial,sans-serif;font-size:22px;font-weight:750;line-height:1.7}.hero-tile:hover{transform:translateY(-5px);color:var(--navy);text-decoration:none;background:#ffc82c}.photo-label{position:absolute;right:14px;bottom:8px;font-size:11px;color:white;background:#03113388;padding:2px 7px}
.appointment-band{background:var(--blue);color:white;padding:48px 25px 30px;scroll-margin-top:196px}.appointment-wrap{max-width:1120px;margin:auto}.appointment-band h2{font-family:'Source Sans 3',Arial,sans-serif;font-size:25px;font-weight:750;line-height:1.35;color:white;margin:0 0 25px;text-align:center}.appointment-band h2 a{color:white;white-space:nowrap}.appointment-band form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 205px;gap:17px;align-items:start}.appointment-band input{height:43px;min-height:43px;background:white;border:1px solid #d3d6dc;border-radius:3px;font-family:'Source Sans 3',Arial,sans-serif;font-size:15px;padding:9px 12px;width:100%}.appointment-band form>button{height:43px;border:0;border-radius:2px;background:var(--yellow);color:var(--navy);font-size:20px;font-weight:750;padding:5px 15px;margin-left:18px;white-space:nowrap}.appointment-band form>button:hover{background:#ffca30}.appointment-note{font-size:13px;line-height:1.5;text-align:center;color:#e9eeff;margin:15px 0 0}
.home-services{background:var(--navy);color:white;padding:80px 0 72px;scroll-margin-top:196px}.services-intro{max-width:1100px;margin:0 auto 23px;padding:0 25px}.services-intro h2{color:white;font-family:Montserrat,Arial,sans-serif;font-size:37px;font-weight:800;text-align:center;line-height:1.3;margin:0 0 36px}.services-intro>p,.services-intro>#more-services{max-width:810px;margin:0 auto 18px;color:white;font-size:18px;line-height:1.6}.services-intro>#more-services p{margin-bottom:18px}.read-more{display:block;width:244px;min-height:46px;background:var(--yellow);color:var(--navy);font-family:Montserrat,Arial,sans-serif;font-size:21px;font-weight:700;text-transform:uppercase;padding:7px 25px;border:0;margin:16px 0 0 max(0px,calc((100% - 810px)/2))}.read-more:hover{background:#ffca30}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;width:min(1640px,calc(100% - 80px));margin:auto}.category-card{border:4px solid var(--yellow);border-radius:25px;background:white;color:var(--navy);padding:35px 16px 24px;scroll-margin-top:214px;min-width:0}.category-card h2{text-align:center;text-transform:uppercase;font-family:Montserrat,Arial,sans-serif;font-size:29px;font-weight:700;line-height:1.55;color:var(--navy);margin:5px 0 32px;min-height:90px}.category-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:30px;align-items:start}.category-content figure{position:relative;margin:0;min-width:0;overflow:hidden;border-radius:22px;height:475px}.category-content img{width:100%;height:100%;object-fit:cover}.category-card:first-child .category-content img{object-position:72% 50%}.category-card:nth-child(2) .category-content img{object-position:49% 48%}.category-content figcaption{position:absolute;bottom:0;right:0;padding:3px 8px;background:#03113399;color:white;font-size:10px}.category-links{display:flex;flex-direction:column;gap:10px;padding-right:12px}.category-links a{min-height:45px;border:1.5px solid var(--yellow);border-radius:15px;display:flex;align-items:center;justify-content:center;text-align:center;padding:6px 10px;font-family:'Source Sans 3',Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.25;color:var(--navy);background:white}.category-links a:hover{text-decoration:none;background:#fff6d9}.category-links a.all-services{border:3px solid var(--navy);border-radius:0;background:var(--yellow);font-size:18px;min-height:60px;text-transform:uppercase;font-weight:750;padding:9px 12px}.category-links a.all-services:hover{background:#ffca30}
.home-coverage{background:white;padding:65px 30px;scroll-margin-top:196px}.coverage-wrap{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.home-coverage h2{font-family:Montserrat,Arial,sans-serif;font-size:34px;text-transform:uppercase;color:var(--navy);line-height:1.25;margin:0 0 25px}.home-coverage p{font-size:18px;color:#50626e}.coverage-contact{display:inline-block;padding:12px 30px;background:var(--blue);border:2px solid var(--yellow);font-weight:700;font-size:18px;color:white;margin-top:5px}.coverage-contact:hover{background:var(--navy);text-decoration:none}.commune-box h3{font-family:Montserrat,Arial,sans-serif;font-size:24px;color:var(--heading);margin:0 0 25px}.commune-box ul{display:grid;grid-template-columns:1fr 1fr;list-style:none;gap:10px 25px;padding:0;margin:0 0 25px;color:var(--heading);font-size:20px}.commune-box li{border-bottom:1px solid #e6e9ee;padding-bottom:6px}.commune-box p{font-size:14px}.site-footer{border-top:5px solid var(--yellow)}
@media(max-width:1400px){.home-hero h1{font-size:39px}.hero-subtitle{font-size:31px}.category-card h2{font-size:25px;min-height:78px}.category-content{gap:20px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.category-links{padding-right:4px}.category-links a{font-size:17px}.category-links a.all-services{font-size:16px}.category-content figure{height:440px}.category-grid{gap:30px}.services-intro h2{font-size:34px}}
@media(max-width:1100px){.hero-tiles{width:940px;gap:25px}.hero-tile span{font-size:21px}.appointment-band form{grid-template-columns:repeat(4,minmax(0,1fr)) 180px;gap:12px}.appointment-band form>button{margin-left:0;font-size:18px}.category-grid{width:calc(100% - 48px);gap:24px}.category-card{padding:25px 15px 20px}.category-card h2{font-size:21px;min-height:66px;margin-bottom:25px}.category-content{grid-template-columns:1fr;gap:20px}.category-content figure{height:300px}.category-card:first-child .category-content img{object-position:64% 38%}.category-links{padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.category-links a.all-services{grid-column:1/-1}.coverage-wrap{gap:40px}.home-coverage h2{font-size:29px}}
@media(max-width:991px){.header-main{height:124px;min-height:124px}.brand-panel{padding-right:48px}.header-right{padding-top:18px}.header-contact{min-height:0}.notice-strip{min-height:38px;padding:6px 12px}.header-contact .quote-button{padding:6px 20px}main{padding-top:162px}.home-hero{height:590px;min-height:590px}.hero-content{padding:36px 24px 45px}.home-hero h1{font-size:34px}.hero-subtitle{font-size:26px;max-width:760px;margin-top:32px}.hero-tiles{gap:16px}.hero-tile{min-height:175px;padding:15px 6px 10px}.hero-tile svg{width:64px;height:64px}.hero-tile span{font-size:18px;line-height:1.5}.appointment-band{padding:34px 25px 25px;scroll-margin-top:178px}.appointment-band h2{font-size:23px}.appointment-band form{grid-template-columns:1fr 1fr}.appointment-band form>button{grid-column:1/-1;justify-self:center;width:244px;margin-top:5px}.appointment-band input{font-size:16px}.home-services{padding:55px 0;scroll-margin-top:178px}.services-intro h2{font-size:31px;margin-bottom:28px}.category-card,.home-coverage{scroll-margin-top:178px}.category-grid{margin-top:28px}.home-coverage{padding:50px 25px}.home-coverage h2{font-size:27px}.commune-box ul{font-size:18px}.coverage-wrap{gap:30px}}
@media(max-width:600px){.header-main{height:105px;min-height:105px}.brand-panel{padding:13px 25px 13px 9px}.brand-panel:before{clip-path:polygon(0 0,100% 0,87% 100%,0 100%)}.header-right{padding:8px 12px 8px 8px}.header-contact .quote-button{font-size:12px;padding:5px 11px}.notice-strip{min-height:35px;padding:8px}.notice-strip .notice-region{display:none}main{padding-top:140px}.home-hero{height:auto;min-height:670px}.hero-content{padding:32px 20px 35px;min-height:670px}.hero-background{object-position:61% 50%}.home-hero:after{background:rgba(3,29,78,.62)}.home-hero h1{font-size:29px;line-height:1.25}.hero-subtitle{font-size:21px;line-height:1.45;margin:25px 0 30px}.hero-tiles{grid-template-columns:1fr 1fr;gap:16px;max-width:375px;margin-top:auto}.hero-tile{min-height:160px;padding:13px 8px 12px;border-width:3px;gap:6px}.hero-tile svg{width:59px;height:59px}.hero-tile span{font-size:18px;line-height:1.45}.photo-label{font-size:9px}.appointment-band{padding:30px 20px 22px;scroll-margin-top:155px}.appointment-band h2{font-size:23px;line-height:1.45;margin-bottom:22px}.appointment-band form{grid-template-columns:1fr;gap:12px}.appointment-band input{height:46px;min-height:46px;font-size:16px}.appointment-band form>button{width:100%;height:46px;min-height:46px;font-size:20px}.appointment-note{font-size:12px;line-height:1.5}.home-services{padding:44px 0;scroll-margin-top:155px}.services-intro{padding:0 20px}.services-intro h2{font-size:28px;line-height:1.3;margin:0 0 25px}.services-intro>p,.services-intro>#more-services{font-size:17px;line-height:1.65}.read-more{font-size:18px;width:210px;margin:17px 0 0;min-height:44px}.category-grid{grid-template-columns:1fr;gap:25px;width:calc(100% - 32px);margin-top:25px}.category-card{border-width:3px;border-radius:22px;padding:26px 15px 20px;scroll-margin-top:157px}.category-card h2{font-size:24px;line-height:1.4;min-height:0;margin:0 0 25px}.category-content{grid-template-columns:1fr;gap:20px}.category-content figure{height:330px;border-radius:17px}.category-card:first-child .category-content img{object-position:69% 44%}.category-card:nth-child(2) .category-content img{object-position:50% 38%}.category-links{grid-template-columns:1fr}.category-links a{font-size:18px;min-height:45px}.category-links a.all-services{font-size:18px;min-height:57px}.home-coverage{padding:40px 20px;scroll-margin-top:155px}.coverage-wrap{display:block}.home-coverage h2{font-size:27px}.home-coverage p{font-size:17px}.commune-box{margin-top:35px}.commune-box h3{font-size:23px}.commune-box ul{font-size:18px;gap:8px 18px}.commune-box p{font-size:13px}.coverage-contact{font-size:17px;padding:11px 25px}}
@media(max-width:360px){.home-hero h1{font-size:26px}.hero-subtitle{font-size:19px}.hero-content{padding-left:16px;padding-right:16px}.hero-tile span{font-size:16px}.hero-tile{min-height:152px}.hero-tiles{gap:12px}.category-card h2{font-size:21px}.header-contact .quote-button{font-size:11px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.hero-tile{transition:none}.hero-tile:hover{transform:none}}

/* La cabecera fija se compensa una sola vez al navegar a secciones. */
html{scroll-padding-top:0}#contenido{scroll-margin-top:196px}input[type="hidden"],[hidden]{display:none!important}
@media(max-width:991px){#contenido{scroll-margin-top:162px}}
@media(max-width:600px){#contenido{scroll-margin-top:140px}}
