@font-face{font-family:SolmiInter2026;src:url('/img/portada-2026/Inter-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:SolmiMontserrat2026;src:url('/img/portada-2026/Montserrat-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--solmi-blue:#2D4858;--solmi-gold:#B38743;--solmi-gold-light:#F0D5A0;--solmi-gray:#878786;--solmi-paper:#f3f5f4;--solmi-line:#d9dfdf;--solmi-ink:#263d4b}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:SolmiInter2026,Inter,Arial,sans-serif;line-height:1.65;color:var(--solmi-ink);background:var(--solmi-paper);min-height:100vh}
body::before{display:none!important}
header{background:#fff!important;padding:8px 20px!important;box-shadow:0 5px 20px rgba(20,38,48,.10)!important}
header nav{min-height:96px}
header nav ul li a{color:var(--solmi-blue)!important;border-radius:2px!important;font:650 .83rem SolmiInter2026,Arial,sans-serif!important;letter-spacing:.02em}
header nav ul li a:hover{background:var(--solmi-gold-light)!important;color:var(--solmi-blue)!important}
header nav ul li a[href*="reservaonline.support/solmirooms/reservas.html"]{background:#ff9900!important;color:#fff!important;border:1px solid #ff9900!important;border-radius:2px!important;padding:10px 14px!important;font-weight:800!important}
header nav ul li a[href*="reservaonline.support/solmirooms/reservas.html"]:hover{background:#fbb64f!important;color:var(--solmi-blue)!important;border-color:#fbb64f!important}
header .logo img{object-fit:contain;max-width:140px;height:108px}
header .menu-btn{border:1px solid var(--solmi-gold)!important;background:#fff!important;color:var(--solmi-blue)!important;border-radius:2px}
@media(max-width:768px){header nav ul{top:104px!important;background:#fff!important;padding:12px 0!important}header nav ul li a{display:block;color:var(--solmi-blue)!important}}
#loader{background:rgba(255,255,255,.8)}
.spinner{border-color:#e6e8e7;border-top-color:var(--solmi-gold)!important}
.main-content,.page-container{width:min(1160px,calc(100% - 36px));margin:42px auto 64px!important;padding:0!important;background:transparent!important}
.main-content.sr26-search-intro,.main-content.sr26-property-page{background:#fff!important;border:1px solid var(--solmi-line);border-top:4px solid var(--solmi-gold);padding:clamp(22px,4vw,48px)!important;box-shadow:0 12px 38px rgba(45,72,88,.07)}
.sr26-doc-label{font:800 .68rem SolmiMontserrat2026,Arial,sans-serif;letter-spacing:.15em;color:var(--solmi-gold);text-transform:uppercase;margin-bottom:10px}
.main-content>.about-us,.main-content>.membership-info,.main-content>.contact-container,.main-content>.datos-generales-container,.main-content>.gallery,.page-container>.content-wrapper{background:#fff;border:1px solid var(--solmi-line);border-top:4px solid var(--solmi-gold);padding:clamp(22px,4vw,48px);box-shadow:0 12px 38px rgba(45,72,88,.07)}
.main-content h1,.page-container h1{font:850 clamp(1.8rem,3.2vw,2.8rem)/1.13 SolmiMontserrat2026,Arial,sans-serif!important;color:var(--solmi-blue)!important;letter-spacing:-.035em;margin:0 0 20px!important}
.main-content h2,.page-container h2{font:780 clamp(1.1rem,2vw,1.5rem)/1.25 SolmiMontserrat2026,Arial,sans-serif!important;color:var(--solmi-blue)!important;margin:30px 0 10px!important}
.main-content p,.main-content li,.page-container p{font-size:.98rem;color:#3b505a;max-width:82ch}
.main-content li{margin:.55rem 0}
.main-content a:not(.reserve-button),.page-container a:not(.reserve-button){color:var(--solmi-blue);text-underline-offset:3px;text-decoration-color:var(--solmi-gold)}
.reserve-button,.submit-button,.ver-mas-btn,.main-content button,.search-bar1 button,.search-container button,.page-container button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 20px!important;background:var(--solmi-gold-light)!important;color:var(--solmi-blue)!important;border:1px solid var(--solmi-gold)!important;border-radius:2px!important;text-decoration:none!important;font:800 .76rem SolmiMontserrat2026,Arial,sans-serif!important;letter-spacing:.035em;cursor:pointer}
.reserve-button,.sr26-button--reserve,.search-bar1 button,.search-container button{background:#ff9900!important;color:#fff!important;border-color:#ff9900!important}
.reserve-button:hover,.sr26-button--reserve:hover,.search-bar1 button:hover,.search-container button:hover{background:#fbb64f!important;color:var(--solmi-blue)!important;border-color:#fbb64f!important}
.submit-button:hover,.ver-mas-btn:hover,.main-content button:hover,.page-container button:hover{background:var(--solmi-blue)!important;color:#fff!important}
.about-us{max-width:none;padding:clamp(22px,4vw,48px)!important}
.about-us h1:after,.membership-info h1:after{content:'';display:block;width:70px;height:3px;background:var(--solmi-gold);margin-top:17px}
.sr26-hero{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch;background:var(--solmi-blue);color:white;padding:clamp(24px,5vw,58px);margin-bottom:24px;min-height:360px}
.sr26-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.sr26-eyebrow{font:800 .7rem SolmiMontserrat2026,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--solmi-gold-light)}
.sr26-hero h1{font:900 clamp(2rem,4.2vw,3.6rem)/1.05 SolmiMontserrat2026,Arial,sans-serif;color:white;margin:15px 0!important;text-transform:uppercase;letter-spacing:-.04em}
.main-content .sr26-hero h1{color:#fff!important}
.sr26-hero p{color:#fff!important;font-size:1rem;max-width:55ch}
.sr26-hero-img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.sr26-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.sr26-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;background:var(--solmi-gold-light);border:1px solid var(--solmi-gold);color:var(--solmi-blue)!important;text-decoration:none!important;font:800 .74rem SolmiMontserrat2026,Arial,sans-serif;letter-spacing:.035em}
.sr26-button--outline{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.65)}
.sr26-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px;margin-top:24px}
.sr26-card{background:white;border:1px solid var(--solmi-line);border-top:3px solid var(--solmi-gold);padding:clamp(20px,3vw,34px);box-shadow:0 10px 28px rgba(45,72,88,.06)}
.sr26-card h2{margin-top:0!important}
.sr26-contact-detail{padding:13px 0;border-bottom:1px solid var(--solmi-line)}
.sr26-contact-detail:last-child{border:0}
.sr26-map{width:100%;height:270px;border:0;display:block;margin-top:18px}
.contact-container{display:block!important}
.company-logo{display:none!important}
.contact-form-container{width:100%!important;padding:0!important}
.contact-form-container form{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-top:20px}
.contact-form-container .form-group{margin:0}
.contact-form-container .form-group:nth-child(3),.contact-form-container .form-group:nth-child(4){grid-column:1/-1}
.form-group label{display:block;color:var(--solmi-blue);font-weight:700;font-size:.82rem;margin-bottom:6px}
.form-group input,.form-group textarea,.main-content input,.main-content select,.page-container select{width:100%;min-height:44px;padding:10px 12px!important;border:1px solid #cbd4d6!important;border-radius:2px!important;background:white!important;color:var(--solmi-ink)!important;font:500 .92rem SolmiInter2026,Arial,sans-serif!important}
.form-group textarea{min-height:145px;resize:vertical}
.form-group input:focus,.form-group textarea:focus,.main-content select:focus{outline:2px solid rgba(179,135,67,.32);border-color:var(--solmi-gold)!important}
.contact-info{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px}
.sr26-photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.sr26-photo-row img{width:100%;height:220px;object-fit:cover;display:block}
.search-bar1,.search-container{width:min(1160px,calc(100% - 36px));margin:38px auto 22px;padding:24px;background:white;border:1px solid var(--solmi-line);border-top:4px solid var(--solmi-gold);box-shadow:0 8px 26px rgba(45,72,88,.06)}
.search-bar1 form,.search-container form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.search-bar1 select,.search-container select{flex:1 1 240px}
.portfolio-inner{height:100%;overflow:hidden;background:#fff;border:1px solid var(--solmi-line);box-shadow:0 10px 28px rgba(45,72,88,.07);transition:transform .2s,box-shadow .2s}
.portfolio-inner:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(45,72,88,.13)}
.portfolio-inner>img{height:260px;object-fit:cover}
.portfolio-inner .text-center{color:var(--solmi-blue)}
.portfolio-text{background:#fff!important;border-top:1px solid var(--solmi-line);color:var(--solmi-blue)}
.portfolio-item{margin-bottom:24px}
.datos-generales-container{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-top:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}
.datos-generales{background:#fff;border:1px solid var(--solmi-line);border-top:3px solid var(--solmi-gold);padding:24px;box-shadow:0 7px 22px rgba(45,72,88,.05)}
.gallery{margin-top:24px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.gallery img,.img-thumbnail{border:1px solid var(--solmi-line)!important;border-radius:2px!important}
.page-container>.content-wrapper{border-top:4px solid var(--solmi-gold)}
footer{background:var(--solmi-blue)!important;color:#fff!important;padding:28px 18px!important}
footer .footer-links a{color:var(--solmi-gold-light)!important;text-decoration:underline!important;text-underline-offset:3px}
footer p,footer a{color:#fff}
footer .social-links a{color:var(--solmi-gold-light)!important}
@media(max-width:760px){.sr26-hero{grid-template-columns:1fr}.sr26-hero-img{min-height:240px;max-height:340px}.sr26-contact-grid,.datos-generales-container{grid-template-columns:1fr}.sr26-photo-row{grid-template-columns:1fr 1fr}.contact-form-container form{grid-template-columns:1fr}.contact-form-container .form-group:nth-child(n){grid-column:1}.main-content,.page-container{margin:24px auto 40px!important}}
@media(max-width:480px){.sr26-photo-row{grid-template-columns:1fr}.sr26-photo-row img{height:220px}.search-bar1,.search-container{padding:17px}.main-content,.page-container{width:calc(100% - 24px)}}
