@charset "utf-8";
@font-face { font-family: 'DegularVariable'; src: url('../fonts/degular-variable.ttf') format('truetype'); font-weight: 100 900; font-style: normal; }

:root {
    --max-width:       1400px;
    --content-width:    900px;
    --content-width-02: 550px;
    --header-height:     70px;
    --padding:           12px;
    --border-radius:      5px;
    --lines-width:        3px;
    --color-01:     #000000;
    --color-02:     #ffffff;
    --color-03:     #1D1D1C;
    --color-04:     #f2eddf;
}

* { margin: 0; padding: 0; position: relative; min-width: 0; box-sizing: border-box; font-family: 'DegularVariable', Sans-serif, Arial, Helvetica, Verdana; line-height: 140%; font-size: 1.2rem; }
html { scroll-behavior: smooth; font-size: 100%; height: 100%; min-height: 100%; }
body { height: 100%; min-height: 100dvh; background-color: #fff; }

a, span, label, strong { color: inherit; font-size: inherit; font-weight: inherit; }
strong { font-weight: 700; }
ul, ol { margin: 15px 20px; }
img, iframe, article { max-width: 100%; }
h1, h2, h3, h4, h5, h6 { line-height: 120%; text-wrap: balance; }
p  { line-height: 140%; }
section, article, header, footer { width: 100%; }
picture, source { font-size: 0; }
button {appearance: none; -moz-appearance: none; -moz-appearance: none; }

.display-none { display: none!important; }
.noselect { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.cover-bg, .cover-bg::before, .cover-bg::after  { background-repeat: no-repeat; background-position: center center; background-size: cover; }
.before::before, .after::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.ronin-section   { width: 100%; max-width: 100vw; margin:0 auto; padding: 12.5px 0; }
.ronin-container { max-width: var(--max-width); margin: 0 auto; }
.ronin-content   { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--padding); transition: padding 0.3s; }

.page-title    { font-size: clamp(2.6rem, 4dvw, 3.4rem); line-height: 120%; font-weight: 600; margin: 0 auto 25px; color: var(--color-03); text-align: left; }
.title         { font-size: 2.0rem; line-height: 120%; font-weight: 700; margin: 0 auto 25px; color: var(--color-03); text-align: left; }
.pretitle      { font-size: 1.8rem; line-height: 120%; font-weight: 700; margin: 0 auto 25px; color: var(--color-03); text-align: left; }
.subtitle      { font-size: 1.4rem; line-height: 120%; font-weight: 700; margin: 0 auto 15px; color: var(--color-03); text-align: left; }
.description   { margin: 0 auto; text-align: left; }
.description p { font-size: 1.2rem; line-height: 30px; font-weight: 500; margin: 0 auto 25px; color: var(--color-03); text-align: left; }
.blockquote .description p { font-size: 1.3rem; line-height: 28px; font-weight: 700; margin: 0 auto 25px; color: var(--color-03); text-align: left; }
.button        { text-align: center; margin: 0; }
.image         { background-repeat: no-repeat; background-position: center center; background-size: cover; }
.image::before { background-repeat: no-repeat; background-position: center center; background-size: cover; }
.image::after  { background-repeat: no-repeat; background-position: center center; background-size: cover; }

#ronin_page   { max-width: 100vw; min-height: 100%; display: grid; grid-template-rows: auto 1fr auto; }
#ronin_header { max-width: 100%; background-color: var(--color-04); padding: 15px 0; z-index: 90; }
#ronin_body   { max-width: 100%; background-color: var(--color-04); }
#ronin_footer { max-width: 100%; background-color: var(--color-01); }

.ronin-debug { display: block; position: fixed; top: 15px; right: 15px; background-color: #eee; padding: 15px; border-radius: 10px; z-index: 90; width: 180px; height: auto; }
.ronin-debug h3 { font-size: 0.9rem; margin: 0 0 5px; }
.ronin-debug p { font-size: 0.8rem; margin: 0 0 5px; text-align: right; }
.ronin-debug .value { display: inline-block; text-align: right; min-width: 50px; }

*[class^='button-'] { border-radius: var(--border-radius); cursor: pointer; transition: all 0.3s; display: inline-block; padding: 14px 46px; text-decoration: none; background-color: #000; color: #fff; font-size: 1.0rem; text-transform: uppercase; letter-spacing: 0.5px; line-height: 100%; font-weight: 400; }
*[class^='button-'] > span { transition: all 0.5s; display: inline-block; vertical-align: middle; color: #fff; margin-left: 5px; }
*[class^='button-']:hover { transition: all 0.3s; background-color: #ccc; color: #000; }
*[class^='button-'].small { padding: 8px 15px; font-size: 0.8rem; }
*[class^='button-'].small > span { font-size: 0.9rem; }

.button-01 { border-radius: 0; border: 1px solid #000; background-color: #000; color: #fff; }
.button-01:hover { background-color: #888; border-color: #888;}

.rsl .ronin-container { height: 100%; }
.rsl .ronin-content   { height: 100%; }

.rsl-00 { position: absolute; bottom: 0; right: 0; width: 0; height: calc(100% - 100vh); z-index: 90; }

@keyframes rsaBottomFadeIn {
    0% { opacity: 0; transform: translate(0,50px); }
    80% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 1; }
}
@keyframes rsaBottomFadeOut {
    0% { opacity: 1; }
    20% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 0; transform: translate(0,50px); }
}
@keyframes rsaBottomFadeInImg {
    0% { opacity: 0; }
    80% { opacity: 1; }
    100% { opacity: 1; }
}
@keyframes rsaBottomFadeOutImg {
    0% { opacity: 1; }
    20% { opacity: 1; }
    100% { opacity: 0; }
}

/*============================================================================*/

@keyframes raiTopFadeIn {
    0% { opacity: 0; transform: translate(0,-50px); }
    80% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 1; }
}
@keyframes raiBottomFadeIn {
    0% { opacity: 0; transform: translate(0,50px); }
    80% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 1; }
}
@keyframes raiLeftFadeIn {
    0% { opacity: 0; transform: translate(-50px,0); }
    80% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 1; }
}
@keyframes raiRightFadeIn {
    0% { opacity: 0; transform: translate(50px,0); }
    80% { opacity: 1; transform: translate(0,0); }
    100% { opacity: 1; }
}
*[class*='rai-'] { opacity: 0; }
.rai-bottom.item-on { animation: raiBottomFadeIn 2s; opacity: 1; animation-fill-mode: both; }
.rai-top.item-on { animation: raiTopFadeIn 2s; opacity: 1; animation-fill-mode: both; }
.rai-left.item-on { animation: raiLeftFadeIn 2s; opacity: 1; animation-fill-mode: both; }
.rai-right.item-on { animation: raiRightFadeIn 2s; opacity: 1; animation-fill-mode: both; }

@keyframes float {
    0% { transform: translatey(0px); }
    50% { transform: translatey(-20px); }
    100% { transform: translatey(0px); }
}
@keyframes floater {
    0% { transform: translateY(-5px); transition: ease 0.5s; }
    50% { transform: translateY(5px); transition: ease 0.5s; }
    100% { transform: translateY(-5px); transition: ease 0.5s; }
}

.ancla { top: -90px; }

/*============================================================================*/

.rs-item:not(.active):not(.ronin-container) { opacity: 0!important; }
.rs-item.rsa-item-on.active:not(.ronin-container) { animation: rsaBottomFadeIn 2s; opacity: 1; animation-fill-mode: both; }
.rs-item.rsa-item-off.active:not(.ronin-container) { animation: rsaBottomFadeOut 2s; opacity: 1; animation-fill-mode: both; }
.rs-item-img.rs-item.rsa-item-on.active:not(.ronin-container) { animation: rsaBottomFadeInImg 1s; opacity: 1; animation-fill-mode: both; }
.rs-item-img.rs-item.rsa-item-off.active:not(.ronin-container) { animation: rsaBottomFadeOutImg 1s; opacity: 1; animation-fill-mode: both; }

#ronin_header { transition: margin-top 0.5s, top 0.5s; border-bottom: var(--lines-width) solid var(--color-03); position: absolute; width: 100%; top: -200px; margin: 200px 0 -200px; }
#ronin_header.mini { transition: margin-top 0s, top 0.5s 0.2s; position: fixed; margin: 0; top: 0; padding: 10px 0; width: 100%; }
#ronin_header .ronin-header-content { text-align: center; }
#ronin_header .home-link { display: block; line-height: 0; }
#ronin_header .home-link img { max-width: 180px; height: auto; }
#ronin_header.mini .home-link img { max-width: 100px; }

#ronin_body { padding-top: 126px; }

#ronin_footer { padding: clamp(50px, 10dvw, 90px) 0; }
#ronin_footer * { color: var(--color-04); font-weight: 300; }
#ronin_footer .ronin-footer-container { max-width: var(--max-width); margin: 0 auto; }
#ronin_footer .ronin-footer-content { padding: 0 15px; display: grid; grid-template-columns: 5fr 2fr 2fr; gap: clamp(25px, 10dvw, 50px); }
#ronin_footer .ronin-block { display: flex; align-items: center; }
#ronin_footer .home-link { display: block; line-height: 0; }
#ronin_footer .home-link img { max-width: 240px; height: auto; }
#ronin_footer .ronin-block p { line-height: 175%; font-size: 1.1rem; opacity: 0.7; }
#ronin_footer .ronin-block a:not(.home-link) { transition: 0.5s; font-size: 1.1rem; opacity: 0.7; }
#ronin_footer .ronin-block a:hover { transition: 0.5s; opacity: 1; }
#ronin_footer .ronin-block ul { margin: 0; list-style-type: none; }
#ronin_footer .ronin-block ul li:not(:last-child) { margin: 0 0 5px; }

.pps-reservar .button-01 { display: block; }

.accordion-items .title { font-family: 'Roboto'; font-weight: 700; letter-spacing: 0px; text-transform: uppercase; text-align: left; font-size: clamp(1.4rem, 6vw, 2.4rem); margin: 0 auto 70px; }
.accordion-items .group-title { text-align: left; font-size: clamp(1.2rem, 4vw, 1.4rem); margin: 70px auto 30px; font-weight: 600; text-transform: uppercase; }
.accordion-items .ronin-content { max-width: 1000px; }
.accordion-items .item:first-child { border-top: 3px solid var(--color-03) }
.accordion-items .item { margin: 0; padding: 5px; border-radius: 0; border-bottom: 3px solid var(--color-03) }
.accordion-items .item-top { padding: 25px 15px 25px 50px; cursor: pointer; }
.accordion-items .arrow-container { position: absolute; width: 25px; left: 0; top: 18px; }
.accordion-items .arrow-container span { transition: all 0.5s; display: inline-block; font-size: 2.8rem; }
.accordion-items .item .arrow-container span { transition: all 0.5s; transform: rotate(0deg); }
.accordion-items .item.visible .arrow-container span { transition: all 0.5s; transform: rotate(-180deg); }
.accordion-items .item .arrow-container span.add { transition: all 0.5s; opacity: 1; }
.accordion-items .item .arrow-container span.remove { transition: all 0.5s; opacity: 0; }
.accordion-items .item.visible .arrow-container span.add { transition: all 0.5s; opacity: 0; }
.accordion-items .item.visible .arrow-container span.remove { transition: all 0.5s; opacity: 1; }
.accordion-items .item-title { text-align: left; margin: 0; font-weight: 600; text-transform: uppercase; text-wrap: unset; font-size: clamp(1.3rem, 4dvw, 1.4rem); line-height: 130%; }
.accordion-items .item-description { transition: max-height 1.1s, opacity 0.7s, padding 1.1s; padding: 0 0 0 50px; margin: 0; max-height: 0; opacity: 0; overflow: hidden; }
.accordion-items .item.visible .item-description { transition: max-height 0.7s, opacity 1.1s, padding 1.1s; padding: 0 0 25px 50px; max-height: 1800px; opacity: 1; }
.accordion-items .item-description p { opacity: 0.9; font-size: clamp(1.0rem, 3dvw, 1.2rem); margin: 0 0 10px; }
.accordion-items .item-description li { opacity: 0.9; font-size: clamp(1.0rem, 3dvw, 1.2rem); margin: 0 0 10px; }
.accordion-items .item-description a { transition: 0.5s; text-decoration: underline; }
.accordion-items .item-description a:hover { transition: 0.5s; opacity: 1; color: var(--pf-color-04); }
.accordion-items .item-description p:not(:last-child) { margin: 0 0 15px; }
.accordion-items .item-description strong { font-weight: 700; color: var(--color-06); }

.pps-top { padding: 25px 0 clamp(25px, 12dvw, 120px); background-image: url('../img/pps-top.webp'); background-size: auto 100%; background-position: left top; }
.pps-top .ronin-content { padding: clamp(50px, 10dvw, 140px) 15px 0; }
.pps-top .flag { transition: all 0.5s; z-index: 100; position: absolute; top: 0; right: 15px; }
/*
.pps-top .flag { transition: all 0.5s; z-index: 100; position: fixed; top: 145px; left: clamp(0px, calc(100dvw - 340px), 1200px); }
*/
.pps-top .flag-content { transition: all 0.5s; transform: rotate(15deg); padding: 30px; min-width: 320px; background-image: url('../img/flag-bg.webp'); background-size: 100% 100%; }
#ronin_header.mini + #ronin_body .pps-top .flag-content { transition: 0.5s; opacity: 0; }
.pps-top .flag-title { color: #fff; font-size: 1.4rem; font-weight: 600; text-align: center; }
.pps-top .flag-subtitle { color: #fff8; font-style: italic; font-size: 1.2rem; text-align: center; }
.pps-top .page-title { text-transform: uppercase; letter-spacing: 1px; text-align: center; margin: 0 auto clamp(15px, 5dvw, 30px); }
.pps-top .title { letter-spacing: 1px; text-align: center; margin: 0 auto clamp(15px, 5dvw, 30px); }
.pps-top .description { max-width: 900px; margin: 0 auto clamp(15px, 5dvw, 30px); }
.pps-top .description p { text-align: center; }
.pps-top .button {  margin: clamp(20px, 5dvw, 40px) auto 0; }

.pps-nav { padding: 0 0 clamp(25px, 10dvw, 70px); }
.pps-nav .ronin-container { max-width: 100%; }
.pps-nav .ronin-content { max-width: 100%; padding: 0; }
.pps-nav .ronin-blocks { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0; border-top: 3px solid var(--color-03); border-bottom: var(--lines-width) solid var(--color-03); }
.pps-nav .ronin-block:not(:last-child) { border-right: 3px solid var(--color-03); }
.pps-nav .block-top { padding: 35px 25px; display: flex; justify-content: center; max-height: 110px; border-bottom: var(--lines-width) solid var(--color-03); align-items: center; }
.pps-nav .block-top-content { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; }
.pps-nav .block-image { font-size: 2.4rem; }
.pps-nav .block-title { font-size: 1.4rem; text-transform: uppercase; font-weight: 600; line-height: 100%; }
.pps-nav .block-bottom { padding: 35px 25px; text-align: center; }
.pps-nav .block-bottom a { text-decoration: underline; text-transform: uppercase; font-weight: 600; }

.pps-reservar { padding: 0 0 clamp(25px, 10dvw, 70px); }
.pps-reservar .reservas-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(25px, 10dvw, 70px); padding: 0; max-width: 1000px; margin: 0 auto; }
.pps-reservar .reservas-block { padding: 0; }
.pps-reservar .reservas-block:nth-child(2) .reservas-block-content { max-width: 400px; margin: 0 auto; }
.pps-reservar .button-01 { width: 100%; }

.pps-diseno { padding: 0; border-top: 3px solid var(--color-03); border-bottom: var(--lines-width) solid var(--color-03); overflow: hidden; }
.pps-diseno .ronin-content { padding: 0; }
.pps-diseno .ronin-blocks { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.pps-diseno .ronin-block-content { height: 100%; }
.pps-diseno .ronin-block-content-text { padding: clamp(25px, 10dvw, 70px) 15px clamp(25px, 10dvw, 70px) 50px; }
.pps-diseno .ronin-block-content-text > * { max-width: var(--content-width-02); }
.pps-diseno .ronin-block-content-top::before { content: ''; position: absolute; top: 0; left: 25px; width: 3px; height: 100%; background-color: var(--color-03); }
.pps-diseno .ronin-block-content-top::after { content: ''; position: absolute; bottom: 0; right: 0; width: 100dvw; height: 3px; background-color: var(--color-03); }
.pps-diseno .title { margin: 0 auto 25px; }
.pps-diseno .subtitle { margin: 0 auto; }
.pps-diseno .description p { margin: 0 auto; }
.pps-diseno .description p:not(:last-child) { margin: 0 auto 15px; }
.pps-diseno .image { background-color: #0002; height: 100%; min-height: 800px; background-image: url('../img/pps-diseno.webp'); }

.pps-calidades { padding: 0; border-bottom: var(--lines-width) solid var(--color-03); }
.pps-calidades .ronin-content { padding: clamp(50px, 10dvw, 120px) 0 clamp(50px, 10dvw, 120px) 50px; }
.pps-calidades .ronin-content::before { content: ''; position: absolute; top: 0; left: 25px; width: 3px; height: 100%; background-color: var(--color-03); }
.pps-calidades .ronin-blocks { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(25px, 10dvw, 70px); }
.pps-calidades .ronin-block:nth-child(1) { max-width: var(--content-width-02); margin: 0 auto; }
.pps-calidades .ronin-block:nth-child(2) .ronin-block-content { padding: 0 15px; }
.pps-calidades .image { margin: 50px 0 0; background-color: #0002; aspect-ratio: 1.4; background-image: url('../img/pps-calidades.webp'); }
.pps-calidades .eficiencia-image { display: inline-block; aspect-ratio: 1.5; width: 50px; top: -4px; vertical-align: middle; margin: 0 0 0 10px; background-image: url('../img/eficiencia-energetica-a.webp'); background-size: contain; }
.pps-calidades .accordion-items { margin: clamp(25px, 8dvw, 90px) 0 0 0; }

.pps-incluye { padding: 0; border-bottom: var(--lines-width) solid var(--color-03); overflow: hidden; }
.pps-incluye .ronin-container { max-width: 100%; }
.pps-incluye .ronin-content { max-width: 100%; padding: clamp(15px, 4dvw, 25px) 0 0 0; }
.pps-incluye .ronin-blocks { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.pps-incluye .ronin-block-content { height: 100%; }
.pps-incluye .ronin-block:nth-child(1) .ronin-block-content { padding: clamp(25px, 10dvw, 90px) 0 clamp(25px, 10dvw, 90px) 15px; max-width: 700px; margin: 0 0 0 auto; }
.pps-incluye .ronin-block:nth-child(2) .ronin-block-content { padding: clamp(25px, 10dvw, 70px) 0 0 0; }
.pps-incluye .image { background-color: #0002; height: 100%; background-image: url('../img/pps-incluye.webp'); }
.pps-incluye .items { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; margin: 50px 0 0; padding: 0 15px 0 0; }
.pps-incluye .item { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; padding: 18px 15px 25px; }
.pps-incluye .item-image > span { font-size: 2.4rem; }
.pps-incluye .item-title { font-size: 1.4rem; font-weight: 600; line-height: 120%; padding: 0 15px 0 0; }
.pps-incluye .item:nth-child(2n+2):not(:last-child)::before { content: ''; position: absolute; bottom: 0; right: -15px; width: 100dvw; height: 3px; background-color: var(--color-03); }

.pps-configura { padding: clamp(25px, 10dvw, 120px) 0 clamp(25px, 10dvw, 90px); border-bottom: var(--lines-width) solid var(--color-03); overflow: hidden; }
.pps-configura .ronin-container { max-width: 100%; }
.pps-configura .ronin-content { max-width: 100%; padding: 0; }
.pps-configura .title { margin: 0 auto clamp(25px, 8dvw, 50px); padding: 0 15px; max-width: var(--max-width); }
.pps-configura .subtitle { margin: 0 auto; padding: 0 15px 25px; text-transform: uppercase; max-width: var(--max-width); }
.pps-configura .subtitle::after { content: ''; position: absolute; bottom: 0; left: 15px; width: 100dvw; height: 3px; background-color: var(--color-03); }
.pps-configura .ronin-block-container { padding: clamp(25px, 8dvw, 50px) 15px; }
.pps-configura .ronin-block:not(:last-child) { margin: 0 0 clamp(25px, 8dvw, 50px); }

.pps-configura .ronin-block:nth-child(1) .ronin-block-container { max-width: var(--max-width); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(25px, 8dvw, 90px); }
.pps-configura .ronin-block:nth-child(1) .ronin-block-content { display: flex; align-items: center; }
.pps-configura .ronin-block:nth-child(1) .block-content-image { background-color: #0002; width: 100%; height: 100%; min-height: 450px; background-image: url('../img/pps-configura-1.webp'); }
.pps-configura .rbc-items { max-width: 570px; margin: 0 auto; width: 100%; }
.pps-configura .rbc-item { padding: 25px 0; display: grid; grid-template-columns: 1fr auto; }
.pps-configura .rbc-item .item-title { font-size: 1.4rem; font-weight: 600; text-transform: uppercase; line-height: 1.4rem; }
.pps-configura .rbc-item .item-title-flag { font-size: 1.1rem; letter-spacing: 1px; font-weight: 500; padding: 7px 15px 6px; display: inline-block; vertical-align: middle; margin: -5px 0 -5px 15px; color: #fffA; text-transform: uppercase; line-height: 1.4rem; background-color: #111; }
.pps-configura .rbc-item .item-value { font-size: 1.2rem; font-weight: 800; line-height: 1.4rem; }
.pps-configura .rbc-item:not(:last-child) { border-bottom: var(--lines-width) solid var(--color-03); }
.pps-configura .ronin-block:nth-child(2) .ronin-block-container { padding: clamp(25px, 8dvw, 50px) 0; }
.pps-configura .block-tabs-top { padding: 0 15px; }
.pps-configura .block-tabs-selector { border: var(--lines-width) solid var(--color-03); width: 400px; max-width: 100%; margin: 0 auto; }

.pps-configura .block-tabs-selector { display: none; }
.pps-configura .bts-item { z-index: 20; display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; padding: 5px 5px 5px 15px; cursor: pointer; user-select: none; }
.pps-configura .bts-title { display: block; text-align: left; font-size: 1.4rem; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; }
.pps-configura .bts-item .icon { font-size: 2.4rem; }
.pps-configura .block-tabs-nav { margin: 0 0 clamp(25px, 8dvw, 50px); display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; }
.pps-configura .btn-item { transition: 0.5s; cursor: pointer; user-select: none; }
.pps-configura .btn-item:not(:last-child)::after { content: ''; position: absolute; top: 0; right: -1px; width: var(--lines-width); height: 100%; background-color: var(--color-03); }
.pps-configura .btn-item.active { transition: 0.5s; background-color: var(--color-03); }
.pps-configura .btn-item.active .btn-title { color: #fffC; }
.pps-configura .btn-title { display: block; text-align: center; font-size: 1.4rem; padding: 20px; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; }
.pps-configura .block-tabs-container { max-width: var(--max-width); margin: 0 auto; padding: 0 15px; aspect-ratio: 2; }
.pps-configura .block-tabs-content { transition: opacity 1.0s; opacity: 0; z-index: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; height: 100%; }
.pps-configura .block-tabs-content.visible { transition: opacity 1.5s 0.5s; opacity: 1; z-index: 10; }
.pps-configura .btc-image { position: absolute; top: 0; left: 0; width: 100%; height: 100%; height: 100%; background-size: contain; }
.pps-configura .block-tabs-content:nth-child(1) .btc-image { background-image: url('../img/pps-configura-2-item-01.webp'); }
.pps-configura .block-tabs-content:nth-child(2) .btc-image { background-image: url('../img/pps-configura-2-item-02.webp'); }
.pps-configura .block-tabs-content:nth-child(3) .btc-image { background-image: url('../img/pps-configura-2-item-03.webp'); }
.pps-configura .block-tabs-content:nth-child(4) .btc-image { background-image: url('../img/pps-configura-2-item-04.webp'); }
.pps-configura .block-tabs-content:nth-child(5) .btc-image { background-image: url('../img/pps-configura-2-item-05.webp'); }

.pps-configura .ronin-block:nth-child(3) .ronin-block-container { padding: clamp(25px, 8dvw, 50px) 0; }
.pps-configura .ronin-block:nth-child(3) .block-items { margin: clamp(25px, 8dvw, 70px) 0 0 auto; max-width: calc(100dvw - ((100dvw - var(--max-width)) / 2) - 15px); width: 100%; display: grid; grid-template-columns: 45fr 60fr 50fr; gap: clamp(5px, 4dvw, 25px); min-height: 500px; }
.pps-configura .ronin-block:nth-child(3) .block-description { max-width: var(--max-width); margin: 0 auto; padding: 0 15px; }
.pps-configura .ronin-block:nth-child(3) .block-item-image { background-color: #0002; height: 100%; }
.pps-configura .ronin-block:nth-child(3) .block-item:nth-child(1) .block-item-image { background-image: url('../img/pps-configura-3-item-01.webp'); }
.pps-configura .ronin-block:nth-child(3) .block-item:nth-child(2) .block-item-image { background-image: url('../img/pps-configura-3-item-02.webp'); }
.pps-configura .ronin-block:nth-child(3) .block-item:nth-child(3) .block-item-image { background-image: url('../img/pps-configura-3-item-03.webp'); }

.pps-centro { padding: 0; border-bottom: var(--lines-width) solid var(--color-03); overflow: hidden; }
.pps-centro .ronin-container { max-width: 100%; }
.pps-centro .ronin-content { max-width: 100%; padding: 0; }
.pps-centro .ronin-blocks { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.pps-centro .ronin-block:nth-child(1) { border-right: 3px solid var(--color-03); min-height: 550px; }
.pps-centro .ronin-block:nth-child(2) { padding: clamp(25px, 10dvw, 120px) 15px; }
.pps-centro .ronin-block:nth-child(2) .ronin-block-content { max-width: var(--content-width-02); margin: 0 auto; }
.pps-centro .ronin-block-content { height: 100%; }
.pps-centro .title { margin: 0 0 50px; }
.pps-centro .subtitle { margin: 0 0 10px; }
.pps-centro .info { font-style: italic; margin: 0 0 25px; font-weight: 500; }
.pps-centro .image { background-color: #0002; height: 100%; background-image: url('../img/pps-centro.webp'); }

.materiales-faqs { padding: clamp(25px, 10dvw, 120px) 0 clamp(25px, 10dvw, 70px); border-bottom: var(--lines-width) solid var(--color-03); overflow: hidden; }
.materiales-faqs .title { margin: 0 0 50px; }
.materiales-faqs .materiales-faqs-content { max-width: var(--max-width); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(25px, 10dvw, 120px); margin: 0 auto; padding: 0 15px; }
.materiales-faqs .ronin-section-container-image { background-color: #0002; height: 100%; max-height: 800px; max-width: var(--content-width-02); background-image: url('../img/materiales-faqs.webp'); }

.pps-materiales { padding: 0 0 clamp(25px, 10dvw, 90px); }
.pps-materiales::after { content: ''; position: absolute; bottom: 0; right: 0; width: 100dvw; height: 3px; background-color: var(--color-03); }
.pps-materiales .ronin-content { max-width: 570px; padding: 0; }

.pps-faqs { padding: clamp(25px, 10dvw, 70px) 0; }
.pps-faqs .ronin-content { max-width: 570px; padding: 0; }

.pps-reserva { padding: clamp(25px, 10dvw, 90px) 0; }

@media only screen and (max-width: 769px) {
    .pps-top .flag { z-index: 10; position: relative; top: 0; left: 0; }
    .pps-top .flag.rai-right.item-on { animation: raiTopFadeIn 2s; opacity: 1; animation-fill-mode: both; }
    .pps-top .flag-content { transform: rotate(0); width: fit-content; max-width: 100%; margin: 0 auto; }
    #ronin_footer .ronin-footer-content { grid-template-columns: 1fr; }
    #ronin_footer .ronin-block { display: flex; justify-content: center; }
    #ronin_footer .ronin-block p { text-align: center; }
    #ronin_footer .ronin-block li { text-align: center; }
    .pps-nav .ronin-blocks { grid-template-columns: 1fr; }
    .pps-nav .block-top { border-bottom: none; padding: 35px 25px 5px; }
    .pps-nav .block-bottom { border-bottom: none; padding: 5px 25px 35px; }
    .pps-nav .ronin-block:not(:last-child) { border-bottom: var(--lines-width) solid var(--color-03); }
    .pps-reservar .reservas-grid { grid-template-columns: 1fr; }
    .pps-diseno .ronin-blocks { grid-template-columns: 1fr; }
    .pps-calidades .ronin-blocks { grid-template-columns: 1fr; }
    .pps-incluye .ronin-content { padding: 0 0 25px; }
    .pps-incluye .ronin-blocks { grid-template-columns: 1fr; }
    .pps-incluye .ronin-block:nth-child(1) { order: 2; }
    .pps-incluye .ronin-block:nth-child(2) .ronin-block-content { padding-top: 0; }
    .pps-incluye .items { grid-template-columns: 1fr; }
    .pps-incluye .item { padding: 0 15px; }
    .pps-incluye .item:nth-child(2n+2):not(:last-child)::before { display: none; }
    .pps-incluye .image { aspect-ratio: 1.4; }
    .pps-configura .block-tabs-selector { display: block; }
    .pps-configura .block-tabs-container { margin-top: 50px; }
    .pps-configura .ronin-block:nth-child(1) .ronin-block-container { grid-template-columns: 1fr; }
    .pps-configura .block-tabs-top { max-width: 400px; margin: 0 auto;  }
    .pps-configura .block-tabs-nav { transition: 0.5s; grid-template-columns: 1fr; position: absolute; border: 1px solid #0008; max-height: 0; overflow: hidden; top: 50px; opacity: 0; z-index: 0; background-color: var(--color-04); width: 370px; }
    .pps-configura .block-tabs-nav.open {  transition: opacity 0.5s, top 0.5s; top: 53px; opacity: 1; z-index: 20; max-height: 500px; }
    .pps-configura .bts-current { display: block; }
    .pps-configura .btn-item .btn-title { text-align: left; }
    .pps-configura .btn-item.active { background-color: transparent; }
    .pps-configura .btn-item.active .btn-title { color: var(--color-03); }
    .pps-configura .btn-item::after { display: none; }
    .pps-configura .btn-title:hover { transition: 0.5s; background-color: #0002; }
    .pps-configura .ronin-block:nth-child(3) .block-items { grid-template-columns: 1fr; padding: 15px; }
    .pps-configura .ronin-block:nth-child(3) .block-item:nth-child(1) { aspect-ratio: 0.8; }
    .pps-configura .ronin-block:nth-child(3) .block-item:nth-child(2) { aspect-ratio: 1; }
    .pps-configura .ronin-block:nth-child(3) .block-item:nth-child(3) { aspect-ratio: 0.9; }
    .pps-configura .rbc-item { grid-template-columns: 1fr; }
    .pps-configura .rbc-item .item-title { display: grid; grid-template-columns: 1fr auto; margin: 0 0 10px; }
    .pps-centro .ronin-blocks { grid-template-columns: 1fr; }
    .pps-centro .ronin-block:nth-child(1) { order: 2; border-top: var(--lines-width) solid var(--color-03); }
    .materiales-faqs .materiales-faqs-content { grid-template-columns: 1fr; gap: 25px; }
    .materiales-faqs .ronin-section-container-image { aspect-ratio: 0.8; margin: 0 auto; }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
    .pps-top .flag { z-index: 10; position: relative; top: 0; left: 0; }
    .pps-top .flag.rai-right.item-on { animation: raiTopFadeIn 2s; opacity: 1; animation-fill-mode: both; }
    .pps-top .flag-content { transform: rotate(0); width: fit-content; max-width: 100%; margin: 0 auto; }
    .pps-calidades .ronin-blocks { gap: 15px; }
    .pps-incluye .items { grid-template-columns: 1fr; }
    .pps-incluye .item { padding: 0 15px; }
    .pps-incluye .item:nth-child(2n+2):not(:last-child)::before { display: none; }
    .pps-configura .block-tabs-selector { display: block; }
    .pps-configura .block-tabs-container { margin-top: 50px; }
    .pps-configura .ronin-block:nth-child(1) .ronin-block-container { grid-template-columns: 1fr; }
    .pps-configura .block-tabs-top { max-width: 400px; margin: 0 auto;  }
    .pps-configura .block-tabs-nav { transition: 0.5s; grid-template-columns: 1fr; position: absolute; border: 1px solid #0008; max-height: 0; overflow: hidden; top: 50px; opacity: 0; z-index: 0; background-color: var(--color-04); width: 370px; }
    .pps-configura .block-tabs-nav.open {  transition: opacity 0.5s, top 0.5s; top: 53px; opacity: 1; z-index: 20; max-height: 500px; }
    .pps-configura .bts-current { display: block; }
    .pps-configura .btn-item .btn-title { text-align: left; }
    .pps-configura .btn-item.active { background-color: transparent; }
    .pps-configura .btn-item.active .btn-title { color: var(--color-03); }
    .pps-configura .btn-item::after { display: none; }
    .pps-configura .btn-title:hover { transition: 0.5s; background-color: #0002; }
    .pps-configura .ronin-block:nth-child(3) .block-items { min-height: 400px; }
    .pps-centro .ronin-blocks { grid-template-columns: 1fr; }
    .pps-centro .ronin-block:nth-child(1) { order: 2; border-top: var(--lines-width) solid var(--color-03); }
    .materiales-faqs .materiales-faqs-content { grid-template-columns: 1fr; gap: 25px; }
    .materiales-faqs .ronin-section-container-image { aspect-ratio: 0.8; margin: 0 auto; }
}

@media only screen and (min-width: 1024px) and (max-width: 1216px) {
    .pps-configura .block-tabs-selector { display: block; }
    .pps-configura .block-tabs-container { margin-top: 50px; }
    .pps-configura .ronin-block:nth-child(1) .ronin-block-container { grid-template-columns: 1fr; }
    .pps-configura .block-tabs-top { max-width: 400px; margin: 0 auto;  }
    .pps-configura .block-tabs-nav { transition: 0.5s; grid-template-columns: 1fr; position: absolute; border: 1px solid #0008; max-height: 0; overflow: hidden; top: 50px; opacity: 0; z-index: 0; background-color: var(--color-04); width: 370px; }
    .pps-configura .block-tabs-nav.open {  transition: opacity 0.5s, top 0.5s; top: 53px; opacity: 1; z-index: 20; max-height: 500px; }
    .pps-configura .bts-current { display: block; }
    .pps-configura .btn-item .btn-title { text-align: left; }
    .pps-configura .btn-item.active { background-color: transparent; }
    .pps-configura .btn-item.active .btn-title { color: var(--color-03); }
    .pps-configura .btn-item::after { display: none; }
    .pps-configura .btn-title:hover { transition: 0.5s; background-color: #0002; }
}

@media only screen and (min-width: 1216px) and (max-width: 1408px) {
}

@media only screen and (min-width: 1408px) {
} 
