/* Shared navigation: use compact header until all desktop links fit. */
.gr-menu-toggle{border:0;background:transparent;cursor:pointer;padding:10px;display:grid;place-items:center;min-width:44px;min-height:44px}
.gr-menu-toggle img{width:24px;height:auto}
:where(a,button,input):focus-visible{outline:3px solid #d8560b;outline-offset:4px}
.container-header{position:relative;z-index:100}
.menu{max-height:calc(100dvh - 80px);overflow-y:auto;box-shadow:0 10px 24px #0002}
@media(max-width:1279px){
 .container-header{display:flex!important;align-items:center;justify-content:space-between;padding:10px 20px;background:#fff}
 .container-header-full,.header-full{display:none!important}
 .container-header .img-icon-menu{width:180px;max-width:60%;height:auto}
 .menu{top:100%;left:0;width:100%;background:white}
}
@media(min-width:1280px){
 .container-header{display:none!important}
 .container-header-link{flex-wrap:nowrap!important;gap:clamp(12px,1.4vw,28px);max-width:1440px;margin-inline:auto!important}
 .container-header-link>a:first-child{flex:0 0 190px}
 .container-header-link>a:first-child img{width:190px}
 .container-header-link>div{min-width:0}
 .header-link-button{display:inline-block;white-space:nowrap;margin:0!important}
}
/* Home layout: allow columns to shrink instead of clipping information. */
.container-desktop{max-width:100%}
.container-section1-full>*,.section-2>*,.section-full>*,.newSection3-container-main>*{min-width:0}
@media(min-width:920px) and (max-width:1279px){
 .container-section1{padding-left:24px;flex:1 1 58%;max-width:640px}
 .container-section1-div{flex:1 1 35%;width:auto}
 .container-section1-main{padding-bottom:90px}
 .section-2{padding:60px 32px;gap:24px;flex-wrap:wrap}
 .description-section2-full{flex:1 1 420px;max-width:100%;margin:0}
 .section2-img{flex:1 1 380px;justify-content:center}
 .img-secion2-1{margin-left:0}
 .newSection3-container-main{margin:32px;flex-wrap:wrap}
 .newSection3-container{min-width:0;flex:1 1 420px;max-width:100%}
 .section-full{padding:48px 32px;flex-wrap:wrap;gap:24px}
 .section-full-img,.description-section-full{flex:1 1 380px;min-width:0}
}
@media(max-width:600px){.section2-map-resp svg{max-width:100%;height:auto}.newSection4-container-text2{flex-wrap:wrap}.container-section1-bot{height:auto;min-height:130px;padding-block:24px}}
.gr-calc-banner{display:flex;align-items:center;justify-content:space-between;gap:32px;margin:36px auto 0;padding:32px 40px;width:calc(100% - 48px);max-width:1180px;background:#fff7f1;border:1px solid #f6d6bf;border-radius:16px;color:#292b30}
.gr-eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#9d450f;margin-bottom:8px}
.gr-calc-banner h2{font-size:clamp(22px,2vw,28px);line-height:1.3;margin-bottom:8px}
.gr-calc-banner p:not(.gr-eyebrow){font-size:15px;line-height:1.6}
.gr-primary{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:#fd7017;color:#fff;border:0;border-radius:28px;padding:14px 24px;font-size:15px;font-weight:600;cursor:pointer;min-height:48px;flex-shrink:0}
.gr-primary:hover{background:#ec6109}.gr-primary:disabled{opacity:.6;cursor:wait}
#gr-calculator{margin:auto;border:0;border-radius:20px;padding:36px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;color:#292b30;box-shadow:0 24px 80px #0004}
#gr-calculator::backdrop{background:#15171c99}
#gr-calculator h2{font-size:26px;line-height:1.25;padding-right:15px;margin:8px 0 16px}
.gr-close{position:absolute;right:10px;top:8px;background:transparent;font-size:30px;cursor:pointer;width:44px;height:44px}
.gr-intro{font-size:15px;line-height:1.6;margin-bottom:24px}
#gr-calc-form label{display:block;font-size:15px;font-weight:600;margin-bottom:8px}
.gr-money{display:flex;align-items:center;border:1px solid #a5a5a5;border-radius:10px;padding:0 14px;gap:10px}
.gr-money:focus-within{outline:2px solid #fd7017}.gr-money input{min-width:0;width:100%;border:0;padding:14px 0;background:transparent;font-size:20px;outline:none}
.gr-money span:last-child{font-size:12px;color:#5d6066}#gr-rent-help{font-size:12px;margin-top:6px;color:#5d6066}
#gr-calc-error{color:#a42520;font-size:14px;margin:10px 0}#gr-calc-form>.gr-primary{width:100%}
#gr-calc-result{margin-top:20px;padding:20px;background:#fff2e7;border-radius:12px}#gr-calc-result p{font-size:14px}#gr-tax{display:block;font-size:32px;line-height:1.5;overflow-wrap:anywhere}
.gr-calc-note,.gr-source{font-size:12px;line-height:1.6;margin-top:18px;color:#5d6066}.gr-source a{text-decoration:underline}
@media(max-width:640px){.gr-calc-banner{flex-direction:column;align-items:stretch;padding:24px;margin-top:24px;gap:20px}.gr-calc-banner .gr-primary{width:100%}#gr-calculator{padding:28px 22px}#gr-calculator h2{font-size:23px}}
@media(min-width:920px) and (max-width:1279px){
 .section2-img{flex:1 1 100%;max-width:100%;gap:10px}
 .section2-img img{max-width:48%;object-fit:contain;height:auto;margin-left:0}
 .section2-map-full svg{max-width:100%;height:auto}
 .container-NewSection7{width:100%;padding:32px;min-width:0}
 .swiper-full1{flex-wrap:wrap;justify-content:center}
 .newSection-container-card{min-width:0;flex:1 1 260px}
}
@media(max-width:600px){.img-investigacion2{max-width:100%;margin-left:0;margin-right:0}}

/* Comfortable calculator access on phones and portrait tablets. */
#gr-open-calc{gap:12px}
#gr-open-calc .img-arrow-icon{margin:0;width:20px;height:20px;object-fit:contain;flex:none}
@media(max-width:900px){
 .gr-calc-banner{flex-direction:column;align-items:stretch;gap:20px}
 .gr-calc-banner .gr-primary{width:100%}
}
