@font-face {font-family: 'light'; font-style: normal; font-weight: 300; font-display: swap; src: url('../fonts/light.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face {font-family: 'regular'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/regular.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face {font-family: 'bold'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/bold.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root{
    --color-primary: #566051;
    --color-secondary: #566051;
    --color-hover: #3f483b;

    --color-verde-oscuro: #566051;
    --color-verde-claro: #adb9a3;
    --color-beige: #beb1a1;
    --color-header-bg: #adb9a3f2;
    --color-dark-bg: #1c1f1a;
    --color-text-dark: #111311;
    --color-text-muted: #5a5f57;
    --color-border-light: #adb9a34d;

    --font-heading: 'Montserrat', sans-serif;
    --font-body: 'Plus Jakarta Sans', sans-serif;
}

/*HEADER*/
header.header-mokki{ background: var(--color-header-bg); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid #9ba791; position: sticky; top: 0; z-index: 1000; }
header.header-mokki .header-mokki-container{ max-width: 1320px; margin: 0 auto; padding: 12px 48px; display: flex; align-items: center; justify-content: space-between; }
header.header-mokki .logo{ max-width: 120px; height: auto; }
header.header-mokki .navbar-brand{ margin-right: 48px; }
header.header-mokki .navbar-nav{ align-items: center; gap: 36px; }
header.header-mokki .navbar-nav .nav-link{ font-family: var(--font-body); font-size: 14px; font-weight: 500; letter-spacing: 0.35px; color: var(--color-text-dark); padding: 4px 0; border-bottom: 1px solid transparent; }
header.header-mokki .navbar-nav .nav-link:hover{ color: var(--color-verde-oscuro); }
header.header-mokki .navbar-nav .nav-link.active{ font-weight: 700; border-bottom: 2px solid var(--color-text-dark); }
header.header-mokki .header-mokki-actions{ display: flex; align-items: center; gap: 24px; margin-left: 36px; }
header.header-mokki .btn-pedir-cita{ display: inline-flex; align-items: center; justify-content: center; background: var(--color-verde-oscuro); color: #fff; font-family: var(--font-body); font-size: 12px; font-weight: 500; letter-spacing: 1.2px; text-transform: uppercase; text-decoration: none; padding: 10px 24px; border-radius: 999px; box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); transition: background-color .2s ease; }
header.header-mokki .btn-pedir-cita:hover{ background: var(--color-hover); color: #fff; }
header.header-mokki .lang-switcher{ display: flex; align-items: center; gap: 6px; padding-left: 12px; border-left: 1px solid var(--color-border-light); font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 0.6px; }
header.header-mokki .lang-switcher .lang-active{ color: var(--color-text-dark); text-decoration: underline; text-decoration-color: var(--color-text-dark); text-decoration-thickness: 2px; text-underline-offset: 4px; }
header.header-mokki .lang-switcher .lang-link{ color: rgba(17,19,17,0.75); text-decoration: none; }
header.header-mokki .lang-switcher .lang-link:hover{ color: var(--color-text-dark); }
header.header-mokki .lang-switcher .lang-sep{ color: rgba(86,96,81,0.4); }
header.header-mokki button.btn-mobile {color:#fff; background:transparent; padding:6px 10px; margin-top:8px; margin-bottom:8px; border-radius: 0; outline:none !important; border:none !important; box-shadow:none !important; }
header.header-mokki button.btn-mobile i {padding:0; margin:0; font-size:21px; }
header.header-mokki .btn-mobile .icon-bar {background-color: var(--color-text-dark); transition: .4s cubic-bezier(0.68, -0.6, 0.32, 1.6); }
header.header-mokki .btn-mobile .icon-bar { display: block; height: 3px; width: 22px; margin: 4px 0; }
header.header-mokki .btn-mobile.open .icon-bar:nth-child(1){ transform:rotate(45deg) translateY(5px) translateX(5px)}
header.header-mokki .btn-mobile.open .icon-bar:nth-child(2){ transform:rotate(-45deg); }
header.header-mokki .btn-mobile.open .icon-bar:nth-child(3){ transform:rotate(45deg) translateY(-7px) translateX(-7px); opacity:0}
@media (min-width:992px){
    header.header-mokki .navbar-collapse{ justify-content: flex-end; }
}
header.header-mokki .header-mokki-mobile-actions{ display: none; }
@media (max-width:991px){
    header.header-mokki .header-mokki-container{ padding: 10px 20px; }
    header.header-mokki .navbar-collapse{ background: var(--color-header-bg); margin-top: 10px; padding: 15px 5px; border-radius: 8px; }
    header.header-mokki .navbar-nav{ align-items: flex-start; gap: 0; width: 100%; }
    header.header-mokki .navbar-nav .nav-item{ width: 100%; padding: 8px 10px; }
    header.header-mokki .header-mokki-actions{ flex-direction: column; align-items: flex-start; gap: 15px; margin-left: 0; padding: 10px; }
    header.header-mokki .header-mokki-actions .btn-pedir-cita{ display: none; }
    header.header-mokki .navbar-brand{ margin-right: 0; }
    header.header-mokki .lang-switcher{ border-left: none; padding-left: 0; }
    header.header-mokki .header-mokki-mobile-actions{ display: flex; align-items: center; gap: 12px; }
    header.header-mokki .btn-pedir-cita-mobile{ padding: 8px 16px; font-size: 11px; }
}
/*END HEADER*/


/*END HEADER*/
*{line-height: 136%; } 
html{ width:100%;  scroll-behavior: smooth;}
body{background: #fff; overflow-x:hidden; scroll-behavior: smooth; }
p{ font-size: 12px; line-height: 140%; max-height: 999999px;}
li{ font-size: 12px; line-height: 140%; max-height: 999999px;}
.general{height: auto; margin: 0 auto; }
#menu{ margin: 0 auto; height: 113px; overflow: visible; position: relative; }
.seccion { height:auto; background:#fff; }
.seccion .text_descripciones{font-size: 12px; color:#7b7070; }
.seccion .text-center{ text-align: center !important }
.seccion .text-left{ text-align: left !important }
.seccion .h100{ height: 100%;}
.noselect {-webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
table.table-middle tr, table.table-middle td{ vertical-align: middle !important; }
@media screen and (min-width: 992px){
    .seccion .row-table{ display: table; }
    .seccion .row-table .col{ display: table-cell; float:none; vertical-align: middle; text-align: center;  }
}

.swal2-html-container{ height:auto; max-height: calc( 100vh - 150px); overflow: auto; }
.swal2-popup #swal2-content{ overflow: hidden;}
.swal2-html-container li,.swal2-html-container p{ font-size:17px; }
.swal2-popup.large{ width: 800px; }
.swal2-popup.legal #swal2-content{ text-align: left;}
.swal2-styled.swal2-confirm{ background-color:var(--color-primary) !important; color:#fff !important;}

.LSSI{height: auto; display: none; overflow: hidden; background: rgba(0,0,0,0.6); padding: 0 0 12px; position: fixed; bottom: 0; z-index:10; }
.LSSI .centered{min-height: 40px; margin: 0 auto; padding: 10px 0; width:auto; max-width: 1100px; }
.LSSI p{color:#fff; font-size:16px; margin: 10px; position: relative; font-family: 'regular', sans-serif; } 
.LSSI a{color:#fff; text-decoration: underline; cursor:pointer; }
.LSSI .text-link{color:#fff; text-decoration: underline; cursor:pointer; }
.LSSI .btn{background: var(--color-verde-oscuro); cursor: pointer; margin: 0 5px 5px 5px; padding: 5px 15px; text-align: center; width: auto; position: relative; border-radius: 5px; text-decoration: none; }
.LSSI .btn:hover{ background: var(--color-hover); }
.LSSI .btn span{color: #FFFFFF; font-family: 'regular', sans-serif; font-size: 14px; }
	

.easing{transition: all 400ms cubic-bezier(0.250, 0.460, 0.450, 0.940); transition-timing-function: cubic-bezier(0.250, 0.460, 0.450, 0.940); }
.easingMedium{transition: all 700ms cubic-bezier(0.000, 0.090, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.090, 0.000, 0.995); }
.easingMediumFast{transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995); }
.easingFast{transition: all 200ms cubic-bezier(0.250, 0.460, 0.450, 0.940); transition-timing-function: cubic-bezier(0.250, 0.460, 0.450, 0.940); }

img.responsive{ width:100%; height:auto; }
img.max-responsive{ max-width:100%; height:auto; }
img.max-responsive-centered{ max-width:100%; height:auto; margin:0 auto; display: block; }

.mt0{ margin-top: 0px !important; } .mt-10{ margin-top: -10px !important; } .mt-20{ margin-top: -20px !important; } .mt10{ margin-top: 10px !important; } .mt20{ margin-top: 20px !important; } .mt30{ margin-top: 30px !important; } .mt40{ margin-top: 40px !important; } .mt50{ margin-top: 50px !important; } .mt100{ margin-top: 100px !important; } .mb0{ margin-bottom: 0 !important; } .mb5{ margin-bottom: 5px !important; } .mb10{ margin-bottom: 10px !important; } .mb20{ margin-bottom: 20px !important; } .mb30{ margin-bottom: 30px !important; } .mb40{ margin-bottom: 40px !important; } .mb50{ margin-bottom: 50px !important; } .ml10{ margin-left: 10px !important; } .ml20{ margin-left: 20px !important; } .ml30{ margin-left: 30px !important; } .mr10{ margin-right: 10px !important;} .mr15{ margin-right: 15px !important;} .mr20{ margin-right: 20px !important;} .mr30{ margin-right: 30px !important;} .pt0{ padding-top: 0 !important;} .pt10{ padding-top: 10px !important;} .pt20{ padding-top: 20px !important;} .pt30{ padding-top: 30px !important;} .pt40{ padding-top: 40px !important;} .pt50{ padding-top: 50px !important;} .pb0{ padding-bottom: 0 !important;} .pb10{ padding-bottom: 10px !important;} .pb20{ padding-bottom: 20px !important;} .pb30{ padding-bottom: 30px !important;} .pb40{ padding-bottom: 40px !important;} .pb50{ padding-bottom: 50px !important;}
.pl20{ padding-left: 20px !important;} .pl40{ padding-left: 40px !important;} .pr20{ padding-right: 20px !important;} .pr40{ padding-right: 40px !important;}
.delay01{ animation-delay: 0.1s; -webkit-animation-delay: 0.1s; } .delay02{ animation-delay: 0.2s; -webkit-animation-delay: 0.2s; } .delay03{ animation-delay: 0.3s; -webkit-animation-delay: 0.3s; } .delay04{ animation-delay: 0.4s; -webkit-animation-delay: 0.4s; } .delay05{ animation-delay: 0.5s; -webkit-animation-delay: 0.5s; } .delay06{ animation-delay: 0.6s; -webkit-animation-delay: 0.6s; } .delay07{ animation-delay: 0.7s; -webkit-animation-delay: 0.7s; } .delay08{ animation-delay: 0.8s; -webkit-animation-delay: 0.8s; } .delay09{ animation-delay: 0.9s; -webkit-animation-delay: 0.9s; } .delay10{ animation-delay: 1s; -webkit-animation-delay: 1s; } .delay11{ animation-delay: 1.1s; -webkit-animation-delay: 1.1s; } .delay12{ animation-delay: 1.2s; -webkit-animation-delay: 1.2s; } .delay13{ animation-delay: 1.3s; -webkit-animation-delay: 1.3s; } .delay14{ animation-delay: 1.4s; -webkit-animation-delay: 1.4s; } .delay15{ animation-delay: 1.5s; -webkit-animation-delay: 1.5s; } .delay16{ animation-delay: 1.6s; -webkit-animation-delay: 1.5s; } .delay17{ animation-delay: 1.7s; -webkit-animation-delay: 1.5s; } .delay18{ animation-delay: 1.8s; -webkit-animation-delay: 1.5s; } .delay19{ animation-delay: 1.9s; -webkit-animation-delay: 1.5s; } .delay2{ animation-delay: 2s; -webkit-animation-delay: 2s; } .delay21{ animation-delay: 2.1s; -webkit-animation-delay: 2s; } .delay22{ animation-delay: 2.2s; -webkit-animation-delay: 2s; } .delay23{ animation-delay: 2.3s; -webkit-animation-delay: 2s; } .delay24{ animation-delay: 2.4s; -webkit-animation-delay: 2s; } .delay25{ animation-delay: 2.5s; -webkit-animation-delay: 2.5s; } .delay3{ animation-delay: 3s; -webkit-animation-delay: 3s; } .delay4{ animation-delay: 4s; -webkit-animation-delay: 4s; } .delay5{ animation-delay: 5s; -webkit-animation-delay: 5s; } .delay6{ animation-delay: 6s; -webkit-animation-delay: 6s; }
.text-clamp2{ -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
.text-clamp3{ -webkit-line-clamp:3; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
ul{ padding-left: 0; list-style: outside none; }
.badge-success{ background: #00A93E; white-space: normal; }
.badge-info{ background: #57b0c9; white-space: normal; }
.badge-danger{ background: #D03A3A; white-space: normal; }
.badge-orange{ background: #E7C03A; white-space: normal; }
.badge-purple{ background: #B25EFD; white-space: normal; }
.badge-blue {color: white; background:#4A7AF5 ; }
.badge-light{ background: #FFFFFF; white-space: normal; color:#5E5E5E; border:1px solid rgba(0,0,0,0.1); }

.manage-admin-content.cke_editable{ outline: 1px dashed white; box-shadow: 0 0 1px #000; }
.manage-admin-content.cke_focus{ outline: 2px solid white; box-shadow: 0 0 3px #000; }

.btn{ border-radius: 8px; border:none; white-space: normal; padding:5px 20px;}
.btn-primary{ background-color: var(--color-primary); font-family: 'regular'; font-size: 16px; color: white; }
.btn-primary:hover{ background-color: var(--color-primary); }
.btn-primary.btn-lg{ padding:5px 25px; font-size: 26px;  }
.btn-block{ width: 100%;}
.contentSection a.btn{ color:#fff; font-size: 18px; }
.btn-center{ display: table; margin:0 auto; }
.seccion .btn-primary.transparent {margin: 28px 8px 0 0; padding: 6px 75px 6px 63px; border: solid 2px black; background-color: transparent; font-family: 'regular'; font-size: 26px; color: #000; }

.contentSection h3{ font-weight: bold; }
.seccion{ font-family: 'regular',sans-serif; }
.seccion .slide-big{ position: relative; width: 100%; overflow: hidden;} 
.seccion .relative { position: relative; }
.seccion .absolute { position: absolute; }
.seccion .slide-big p.text-slide {position: absolute; font-family: 'bold'; font-size: 50px; line-height: 42px; transform: translate(-50%); left: 50%; top: 50%; text-shadow:0 0 5px rgba(0,0,0,0.8) }
.seccion .slide-big img{ min-height:50vh; object-fit: cover; }
.seccion .text-white {color: white;}
.seccion .title{font-size: 40px; font-family: 'bold'; text-align: center;}
.seccion .subtitle {font-family: 'bold'; font-size: 30px; }
.seccion .subtitle2 {font-family: 'bold'; font-size: 20px; }
.seccion .subtitle3 {font-size: 18px; }
/*TIPOGRAFÍA POR CLASES (fase 1: home; ampliar a .seccion al migrar el resto de secciones)*/
.seccion-home .title, .seccion-informacion .title{ font-family: var(--font-heading); font-weight: 300; font-size: 48px; line-height: 1; text-align: inherit; }
.seccion-home .title2, .seccion-quienes-somos .title2{ font-family: var(--font-heading); font-weight: 300; font-size: 36px; line-height: 1.11; }
.seccion-home .subtitle, .seccion-informacion .subtitle{ font-family: var(--font-heading); font-weight: 300; font-size: 24px; line-height: 1.2; }
.seccion-home .subtitle2, .seccion-quienes-somos .subtitle2, .seccion-informacion .subtitle2{ display: block; font-family: var(--font-body); font-weight: 600; font-size: 12px; letter-spacing: 1.2px; }
.seccion-home p, .seccion-quienes-somos .studio-section p, .seccion-informacion p{ font-family: var(--font-body); font-weight: 300; font-size: 14px; line-height: 1.625; }
.seccion-home p.text-small, .seccion-informacion p.text-small{ font-size: 12px; line-height: 1.33; }
@media (max-width: 600px){
    .seccion-home .title{ font-size: 34px; }
}
.seccion .text-xl {font-size: 30px; font-family: 'regular'; }
.seccion .text-lg {font-size: 25px; font-family: 'regular'; }
.seccion .text-md {font-size: 18px; font-family: 'regular'; }
.seccion .text {font-size: 18px; font-family: 'regular'; }
.seccion .separator {height: 4px; width: 100%;background-color: var(--color-primary);}
.seccion .separator-small {width: 267px; height: 4px; margin: 30px auto; background-color: var(--color-primary); }
.seccion .checkbox label {font-size: 15px; font-family: 'regular';margin: 0 auto 10px auto; padding-left: 5px; display:block;}
.seccion .google-maps {margin-top: 20px; }
.seccion #map {width: 100%; height: auto; }
.seccion .checkbox {position: relative; }
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {position: relative; float:left; width: 30px; height: 20px; margin-top: 0; }
.seccion .background-gray{background: rgb(233 233 233 / 90%); ; padding: 50px 0 20px 0;;}
.seccion ul.list.checked {padding-left: 15px; } 
.seccion ul.list li {font-size: 20px; font-family: 'regular'; line-height: 32px; }
.seccion ul.list.checked li::before {content: "\f00c"; font-family: 'FontAwesome'; color: var(--color-primary); margin-right: 10px; margin-left: -30px; }
.seccion textarea{ resize:none; }
.seccion .w800{ max-width: 800px; display:table; margin:0 auto; }
.seccion .w1000{ max-width: 1000px; display:table; margin:0 auto; }
.row-parallax {position: relative; padding: 15px 15px; overflow: hidden; -webkit-transform-style: preserve-3d; transform-style: preserve-3d;} 
.row-parallax:before {content: ""; position: absolute; z-index: 1; top: 0; width: 100%; height: 58px; }
.parallax  {transform: translateY(-57.9271px) translateX(-50%); }
.row-parallax .container{ position:relative; z-index: 1;}
.row-parallax img.parallax {position: absolute; left: 50%; top: -20%; bottom: 20px; height: 150%; min-width:100%; z-index: 0; filter: brightness(0.5); }
.visible-sm{ display:none !important;} .visible-xs{ display:none !important;}
@media (max-width:992px){
    .hidden-sm{ display:none !important}
    .visible-sm{ display:block !important}
    .hidden-sm{ display:none}
}
@media (max-width:768px){
    .hidden-xs{ display:none}
    .hidden-xs{ display:none !important}
    .visible-xs{ display:block !important}
}

.swiper-pagination-bullets .swiper-pagination-bullet-active-main{ background:white; }

.seccion ul.special-links li{ font-size:16px; font-family: 'bold'; margin-bottom: 10px; }
.seccion ul.special-links li a{ text-decoration: none; color:#00133A;}
.seccion ul.special-links li a:hover{ text-decoration: underline;}

.seccion .img-cover{ width: 100%; height:100%; object-fit: cover;}
@media (max-width:992px){
    .seccion .img-cover{ width: 100%; height:auto; object-fit: unset;}
}

img.products {width: 80%;}
.box-white-ul {background: white; padding: 30px 15px; box-shadow: 0 3px 50px 0 rgb(0 0 0 / 16%); }
.box-white-ul ul.list {padding-left: 25px; margin-top: 30px; }
i.fa { font-size: 20px;}
.nav-logotipos {padding-left: 0; margin-bottom: 0; list-style: none; }
.nav-logotipos .logo.active {opacity: 1; }
.nav-logotipos .logo {width: 20%; padding: 0 15px; float: left; opacity: 0.5; transition: ease all 0.3s; outline: none; }
.portfolio .categorias {display: block;}
.portfolio .fusion-filters {display: none; overflow: hidden; list-style: none; margin-bottom: 55px; padding: 0; line-height: 34px; border-top: 1px solid #e7e6e6; border-bottom: 1px solid #e7e6e6; }
.portfolio .fusion-filters li{float: left; margin-right: 30px; line-height: 34px; font-size: 20px; font-family: regular;}
.portfolio .trabajos {margin: -10px; position: relative; }


@media screen and (max-width: 992px){
	.seccion .slide-big p.text-slide {font-size: 35px; }
	.seccion h1{font-size: 50px;}
	.row-parallax::before{ left:0;}
    .row-parallax::after{ left:0;}
    .row-parallax img.parallax{position: absolute; left:50%; top:0; min-width: 100%; width:auto; height: 150%; }
    .seccion .row-galeria-1 .col .overlay .title{ font-size: 19px; }
    .seccion .galeria2 .featured-services a:hover .glyphicon { opacity: 1; font-size: 12px; padding: 0px;}
}


/*MODAL center in middle*/
.modal {text-align: center; padding: 0!important; }
.modal:before {content: ''; display: inline-block; height: 100%; vertical-align: middle; margin-right: -4px; }
.modal-dialog {display: inline-block; text-align: left; vertical-align: middle; }

.row-table-price { margin-top: 40px; }
.row-table-price .bakground-top {object-fit: contain; background: #063064; border-top-left-radius: 20px; border-top-right-radius: 20px; margin-bottom: 0px; padding: 20px; }
.row-table-price .box-content {box-shadow: 0 5px 15px 0 rgb(6 48 100 / 26%); min-height: 990px; }
.row-table-price p.price {font-size: 60px; font-family: 'bold'; color: #063064; text-align: center; font-weight: bold; margin-bottom: 0; }
.row-table-price p.ahorra {font-size: 18px; font-family: 'bold'; color: #063064; text-align: center; font-weight: bold; }
.row-table-price .btn-primary.blue {background-color: var(--color-primary); padding: 15px 20px; border-radius: 9px; font-size: 20px; }
.row-table-price .box-content {border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; }
.row-table-price .box-content {padding: 52px; }
.row-table-price .box-content {background: #ebf8fb; padding: 31px;}
.swiper-container {margin-left: auto; margin-right: auto; position: relative; overflow: hidden; list-style: none; padding: 0; z-index: 1; }
.swiper-wrapper {position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; }
.swiper-slide {flex-shrink: 0; width: 100%; height: 100%; position: relative; transition-property: transform; }
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {left: 50%; transform: translateX(-50%); white-space: nowrap; }
.swiper-container .swiper-notification {position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; }

@media screen and (max-width: 1200px){
	.row-table-price .box-content {padding: 12px;}

}
@media screen and (max-width: 992px){
	.row-table-price .box-content {padding: 40px;}
}

.row-white{ padding:40px 15px; }

/*SLIDER HOME*/
.seccion .slider-home{ position: relative; }
.seccion-home .slider-home{ background: var(--color-dark-bg); }
.seccion-home .slider-home .hero-video{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none; }
.seccion.seccion-home .slider-home .swiper-slide{ background: transparent; }
.seccion-home .slider-home .swiper-slide picture{ display: none; }
.seccion-home .slider-home .hero-video-mute{ position: absolute; right: 24px; bottom: 24px; z-index: 5; width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.5); background: rgba(28,31,26,0.45); color: #fff; font-size: 20px; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; backdrop-filter: blur(3.5px); -webkit-backdrop-filter: blur(3.5px); transition: background-color .2s ease; }
.seccion-home .slider-home .hero-video-mute:hover{ background: rgba(28,31,26,0.75); }
.seccion-home .slider-home .hero-video-mute svg{ display: block; }
.seccion-home .slider-home .hero-video-mute .icon-sound{ display: none; }
.seccion-home .slider-home .hero-video-mute.is-unmuted .icon-sound{ display: block; }
.seccion-home .slider-home .hero-video-mute.is-unmuted .icon-muted{ display: none; }
@media (max-width: 600px){
    .seccion-home .slider-home .hero-video-mute{ right: 16px; bottom: 16px; width: 40px; height: 40px; font-size: 18px; }
}
.seccion .slider-home .swiper-slide { height: 80vh; min-height: 600px; max-height: 760px; overflow: hidden; position: relative; background: var(--color-dark-bg); }
.seccion .slider-home .swiper-slide img.responsive { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
.seccion .slider-home .swiper-slide::before{ content: ''; position: absolute; inset: 0; z-index: 2; background: linear-gradient(100deg, rgba(28,31,26,0.88) 0%, rgba(28,31,26,0.55) 45%, rgba(28,31,26,0.15) 100%); pointer-events: none; }
.seccion .slider-home .swiper-slide::after{ content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(86,96,81,0.2); pointer-events: none; }
.seccion .slider-home .container-caption{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 3; }
.seccion .slider-home .carousel-caption { position: absolute; z-index: 3; top: 50%; transform: translateY(-50%); width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 48px; left: 0; right: 0; bottom: auto; }

.seccion .slider-home .carousel-caption p{ font-family: var(--font-body); font-size: 20px; font-weight: 300; line-height: 1.4; max-width: 576px; margin: 24px 0 0 0; color: #d4d4d4; text-shadow: none; }
.seccion .slider-home .carousel-caption p:first-of-type{ font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: var(--color-verde-claro); border-left: 2px solid var(--color-verde-claro); padding-left: 12px; max-width: none; margin-top: 0; }

.seccion .slider-home .carousel-caption .title{ font-family: var(--font-heading); font-weight: 300; font-size: 72px; letter-spacing: -1.8px; line-height: 1; margin: 24px 0 0 0; color: #fff; max-width: 672px; text-shadow: none; }
.seccion .slider-home .carousel-caption .title strong{ font-weight: 600; color: inherit; }

.seccion .slider-home .carousel-caption a.btn{ display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; border-radius: 2px; padding: 16px 32px; margin: 24px 16px 0 0; border: 2px solid transparent; box-shadow: 0 8px 16px rgba(0,0,0,0.15); vertical-align: top; }
.seccion .slider-home .carousel-caption a.btn:first-of-type{ background: var(--color-verde-claro); color: var(--color-dark-bg); }
.seccion .slider-home .carousel-caption a.btn:not(:first-of-type){ background: rgba(28,31,26,0.15); color: #fff; border: 2px solid rgba(255,255,255,0.7); backdrop-filter: blur(3.5px); -webkit-backdrop-filter: blur(3.5px); box-shadow: none; margin-right: 0; }

.seccion .slider-home .carousel-caption.left { align-items: flex-start; text-align: left; }
.seccion .slider-home .carousel-caption.left p{text-align: left; }
.seccion .slider-home .carousel-caption.left .title{text-align: left; }

.seccion .slider-home .carousel-caption.right { align-items: flex-end; text-align: right; }
.seccion .slider-home .carousel-caption.right p{ text-align: right; margin-left: auto; }
.seccion .slider-home .carousel-caption.right .title{ text-align: right; margin-left: auto; }

.seccion .slider-home .carousel-caption.center{ align-items: center; text-align: center; }
.seccion .slider-home .carousel-caption.center p{ text-align: center; margin-left: auto; margin-right: auto; }
.seccion .slider-home .carousel-caption.center p.title{text-align: center;}
.seccion .slider-home .carousel-caption.center p:first-of-type{ border-left: none; padding-left: 0; }

.seccion .slider-home .swiper-pagination{ z-index: 4; bottom: 24px; }
.seccion .slider-home .swiper-pagination-bullet{ background: #fff; opacity: 0.5; }
.seccion .slider-home .swiper-pagination-bullet-active{ opacity: 1; background: var(--color-verde-claro); }

@media screen and (max-width: 992px){
	.seccion .slider-home .swiper-slide { height: 600px; max-height: none; }
	.seccion .slider-home .carousel-caption .title{ font-size: 48px; }
	.seccion .slider-home .carousel-caption{ padding: 0 20px; gap: 18px; }
}
@media (max-width:768px){
    .seccion .slider-home .carousel-caption .title{ font-size:9vw; }
    .seccion .slider-home .carousel-caption p{ font-size: 15px; }
    .seccion .slider-home .carousel-caption a.btn{ padding: 13px 24px; }
}
/*END SLIDER HOME*/

/*groups for faqs*/
.seccion .group{ background:#fff; font-size:20px; color:var(--color-black); padding:10px 15px; font-family:'bold'; font-weight:700; border-bottom:1px solid rgba(30,30,30,0.18); box-shadow: 0 2px 10px 0 rgb(0 0 0 / 6%); }
.seccion .group:after{ content:"\f107"; font-family: 'FontAwesome'; float:right; position:relative; margin-right: 0; color:var(--color-secondary); }

.seccion .group-faqs .accordion{ border-radius:8px; overflow: hidden; background: white; border:1px solid rgba(30,30,30,0.12); box-shadow: 0 3px 18px 0 rgb(0 0 0 / 8%); }
.seccion .group-faqs .accordion-item{ border: none; background:transparent; }
.seccion .group-faqs .accordion-button{ background: #fff; color:var(--color-black); outline:0; box-shadow:none; border-bottom:1px solid rgba(30,30,30,0.18); padding-left: 15px; padding-right: 15px; font-size:18px; }
.seccion .group-faqs .accordion-button:not(.collapsed){ background: #fff; color:var(--color-secondary); border-bottom:1px solid var(--color-secondary); }
.seccion .group-faqs .accordion-button::after{ filter:none; }
.seccion .group-faqs .accordion-body{ background-color:#fff; color:var(--color-gray); border:none; padding:15px; }
.seccion .group-faqs .accordion-body p,.seccion .group-faqs .accordion-body li{ color:var(--color-gray); }
.seccion .group-faqs .accordion-body a{ color:var(--color-secondary); }
.seccion .group-faqs .accordion-body a:hover{ color:var(--color-primary); }
.seccion .group-faqs .faq-question{ font-family: 'bold'; font-weight: 700; color: var(--color-black); line-height: 1.2; }
.seccion .group-faqs .accordion-button:not(.collapsed) .faq-question{ color: var(--color-secondary); }

/*HOME*/
.seccion-home .gallery-slider .swiper-slide{ width:28%; position:relative; }
.seccion-home .gallery-slider .swiper-slide img{ transition:ease filter .3s; }
.seccion-home .gallery-slider .swiper-button-next {color: white!important; text-shadow:0 0 5px rgba(0,0,0,0.3),0 0 10px black,0 0 15px black;}
.seccion-home .gallery-slider .swiper-button-prev{color: white!important;opacity: 1.35; text-shadow:0 0 5px rgba(0,0,0,0.3),0 0 10px black,0 0 15px black;}
.seccion-home .text-carousel{position: absolute; display:none; left:5%; top:0; width: 90%; height: 100%; padding:15px;}
.seccion-home .text-carousel p{position: absolute; top:50%; transform: translateY(-50%); color: white; margin: auto 0; line-height: 1.3;}
.seccion-home .swiper-slide:hover .text-carousel{ display:block; }

/*END HOME*/

/*CONTACTO*/
.contact-2 .form-group input {display: block; width: 100%; height: 50px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: black; background-color: transparent; background-image: none; border: 3px solid #707070; border-radius: 10px; }
.contact-2 textarea.form-control {display: block; width: 100%; height: 300px; padding: 25px 12px; font-size: 14px; line-height: 1.42857143; color: black; background-color: transparent; background-image: none; border: 3px solid #707070; border-radius: 15px; border-color: var(--color-primary); font-size: 22px; } 
.contact-2 .form-group .form-control {border-color: var(--color-primary); font-size: 15px; }
.contact-3 .pie-slider {background-color: var(--color-primary); position: relative; width: 100%; display: inline-block; padding: 30px 10px; }
.contact-3 .pie-slider h1{ margin:0; font-family: 'bold'; }
.contact-3 .fa-map-marker{ font-size:40px; }
/*END CONTACTO*/

/*QUIENES SOMOS*/
.seccion-quienes-somos .linea {position: relative; }
.seccion-quienes-somos .linea p {display: table; margin-left: auto; margin-right: auto; background: white; z-index: 1; position: relative; padding-right: 16px; padding-left: 16px; }
.seccion-quienes-somos .linea::after {content: ''; height: 2px; width: 100%; background: var(--color-primary); display: block; position: absolute; top: 50%; }
.seccion-quienes-somos .title-first {font-size: 40px; margin-top: 30px; font-weight: normal; }
.seccion-quienes-somos .fa{font-size: 25px;}
.seccion-quienes-somos .box-blue {padding: 30px 100px; border-radius: 37px; background-color: rgb(233 233 233 / 90%); }
.seccion-quienes-somos .box-blue.pequeña {padding: 20px 30px; border-radius: 37px; background-color: rgb(233 233 233 / 90%); }
.seccion-quienes-somos .col-text-special {padding-left: 100px; padding-right: 60px; }
.seccion-quienes-somos .background-gray.pasos-a-seguir span.number{background-color: #099ECE; color: white; border-radius: 50%; padding: 10px 18px; font-family: 'bold'; margin-right: 10px; margin-left: -55px; float: left;}
.seccion-quienes-somos .background-gray.pasos-a-seguir ul.list {padding-left: 55px;}
.seccion-quienes-somos .background-gray.pasos-a-seguir ul.list li{margin-bottom: 25px;}

@media screen and (max-width: 992px){
	.seccion-quienes-somos .col-text-special {padding-left: 20px; padding-right: 20px; }
	.seccion-quienes-somos .box-blue {padding: 20px 30px; }

}
/*END QUIENES SOMOS*/



/*BLOG*/
.sidebar-blog { margin-top: 20px; width: 100%; box-sizing: border-box; background-color: transparent; border:none; }
.sidebar-blog .containerSidebar { position: relative; margin-bottom: 40px; }
.sidebar-blog .title { margin-bottom: 0; font-weight: normal; font-family: 'bold'; font-size: 25px; text-align:left; }

.sidebar-blog ul{  padding-left:0; list-style: outside none none; margin-bottom: 0; }
.sidebar-blog ul li{ display: block; margin-top: 10px;}
.sidebar-blog ul li:hover{ background-color:#fff; }
.sidebar-blog .latestPosts ul li:hover a{ color:#1A1916; }
.sidebar-blog ul li a{ color:#1A1916; text-decoration: none; display: block; width: 100%; font-size:20px; font-family: 'light'; line-height: 150%}
.sidebar-blog ul li a:hover{ text-decoration: underline; }
.sidebar-blog .popularTags ul li{ display: inline-block; float:left; }
.sidebar-blog .popularTags ul li a{ padding:5px 15px; background-color:#008cd0; color:#fff; text-decoration: none; display: inline-block; width: auto; font-size: 14px;}
.sidebar-blog .btn{ color:#30394D !important }
.sidebar-blog .row-icons img{ width: 50px; margin:0 3px 30px 3px; }

.seccion-blog .row-top{ background-color: #000; padding:30px 15px; }
.seccion-blog .title{ color:#c3c3c4; }
.seccion-blog .subtitle{ color:#c3c3c4; font-size:28px; }
.seccion-blog p,.seccion-blog a,.seccion-blog li{ color:#1A1916; }
.seccion-blog .text-orange {color: #ff6501; }
.seccion-blog .banner{display: block; width: 950px; height: auto; }
.seccion-blog .postContainer { box-sizing: border-box; display: block; height: auto; position:relative; overflow: hidden; margin-top: 20px; margin-bottom: 30px; padding-bottom: 15px; }
.seccion-blog .postDate {background-color: transparent; box-sizing: border-box; display:block; padding: 9px; }
.seccion-blog .glyphicon-time{ color:#666666; font-size:12px; }
.seccion-blog .postContent{ text-decoration: none; display: block; position: relative; height: 100%;}
.seccion-blog .postContent .time{font-size:12px;}
.seccion-blog .postContent .imgPost{width: 100%;}
.seccion-blog .postContent .textPost{ color: #363636; font-size:18px; display: block; margin-bottom: 10px; }
.seccion-blog .postContent .textPost b{ color: #1C1C1C; font-size:18px; }
.seccion-blog .postContent .textPost h3{ color: #008cd0;  }
.seccion-blog .postContent .textPost h4{ color: #000; }
.seccion-blog .postContent .textPost strong{ color: #1C1C1C; }
.seccion-blog .postContent .textPost .orange{ color: #ff6501; }
.seccion-blog .postContent .textPost .blue{ color: #008cd0; }
.seccion-blog .postContent .textPost pre{ font-weight: bold; border-radius: 0; border:0; border-bottom: 1px solid #008cd0; }
.seccion-blog .postContent .textPost pre:before{ content:"\E044"; display: inline; font-family: "Glyphicons Halflings"; float:left; margin-right: 10px; color:#008cd0;  }
.seccion-blog .postContent .readmore:after{ content: "\e161"; font-family: "Glyphicons Halflings"; display: inline; margin-left: 10px; font-size:13px ;}
.seccion-blog .postContent .readmore{ float: right; font-weight: bold; color:#ff5e00;  margin-top: 15px; text-decoration: none;}
.seccion-blog .postContent .readmore:hover{ color:black;}
.seccion-blog .postContainer  .btn{ color:#30394D;}
.seccion-blog .postDate span {border-bottom: 1px solid #E1E1E1; display: inline-block; font-size: 60px; line-height: 50px; text-align: center; width: 100%; padding-bottom: 5px; }
.seccion-blog .postDate small { display:block; color: #7F7F7F; width: 100%; text-align: center; margin-top: 5px; }
.seccion-blog .titlePost{ margin-top:0; font-weight: bold; margin-bottom: 10px; font-family: 'regular'; font-size:28px; color:#c3c3c4; height: 26px; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; display: -webkit-box; display: box; display: -ms-flexbox; }
.seccion-blog .titlePost a{ text-decoration: none; font-size: 18px; font-weight: normal; color:#c3c3c4; font-family: 'regular'; line-height: 100%; text-transform: uppercase; }
.seccion-blog .btnLoadMore{ color:white; }


.seccion-blog .postContainer .separator{ margin-top: 0}
.seccion-blog .tagConnected li{ display: inline; margin-right: 5px; }
.seccion-blog .tagConnected li a{ color:#777; font-size: 18px; font-weight: normal; text-transform: uppercase; font-family: 'light'; white-space: nowrap;}
.seccion-blog .tagConnected li a:hover{ text-decoration: underline; }
.seccion-blog p.shareTitle{ width: 100%; display:block; font-size: 25px; }
.seccion-blog .socialButtons {box-sizing: border-box; height: auto; min-height: 40px; padding: 10px 0 0 10px; width: 100%; background-color: #F7F7F7;}
.seccion-blog h1 span .glyphicon{ font-size:24px;}
.seccion-blog .pagination li.active a{ background: #008cd0; border:1px solid #008cd0; }
.seccion-blog .extra{ transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995);}
.seccion-blog .postContainer .subtitle2{ padding:8px; }
.seccion-blog .postContainer .postDate{ padding:8px; }
.seccion-blog .postContainer .textPost{ padding:8px; }
.seccion-blog .postContainer .tags-connected{ padding:8px; }
.seccion-blog .postContainer .tags-connected .badge{ background:#000; }
.seccion-blog .postContainer .over-layer{ display:block; opacity:0; transition:ease all .3s; position:absolute; top:50%; left:50%; transform:translateX(-50%) translatey(-50%); }
.seccion-blog .postContainer .over-layer img{ position:absolute; top:80%; left:50%; transform:translateX(-50%) translateY(-50%); transition:ease-out all .3s; }
.seccion-blog .postContainer:hover .over-layer{ background:rgba(91, 120, 199, 0.4); color:white;  font-size:100px; font-family: 'bold'; width: 100%; height:100%; z-index: 10; opacity:1;}
.seccion-blog .postContainer:hover .over-layer img{ top:50%; }
.seccion-blog .fixed{ position: relative; margin-top: 100px; }

.seccion-blog-detail .postContainer .title{ color:#222; }
.seccion-blog-detail .postContainer .subtitle{ color:#222; font-size:28px; }
.seccion-blog-detail p,.seccion-blog-detail a,.seccion-blog-detail li{ font-family:'regular'; }
.seccion-blog-detail h2,.seccion-blog-detail h3,.seccion-blog-detail h4{ font-family:'regular'; font-weight: normal; }
.seccion-blog-detail .contentSection .breadcrumbs{ margin:-15px -15px 0 -15px; background-image: linear-gradient(#4d4d4f, #000); }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb{ background-image: linear-gradient(#4d4d4f, #000); color:white; margin-bottom: 0; }
.seccion-blog-detail .text-orange {color: #ff6501; }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb a{ color:#E9E5D3; font-size:14px; }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb span{ font-size:14px; }
.seccion-blog-detail .postContainer { box-sizing: border-box; display: block; height: auto; overflow: hidden; }
.seccion-blog-detail .postDate {background-color: #F7F7F7; box-sizing: border-box; float: left; padding: 9px; }
.seccion-blog-detail .postContent .imgPost{width: 100%; margin-bottom: 0; }
.seccion-blog-detail .postContent .textPost{ color: #666666; font-size: 20px; font-family: 'regular'; color: #555555; text-align: left }
.seccion-blog-detail .postContent .textPost a{ font-size: 18px; color:#666666;  }
.seccion-blog-detail .postContent .textPost a:hover{ color:#222;  }
.seccion-blog-detail .postContent .textPost b{ font-family: 'regular'; font-weight: normal; color:#222; }
.seccion-blog-detail .postContent .textPost strong{ font-family: 'regular'; font-weight: normal; color:#222; }
.seccion-blog-detail .postContent .textPost p{ color: #666666; }
.seccion-blog-detail .postContent .textPost h3{ color: #008cd0;  }
.seccion-blog-detail .postContent .textPost h4{ color: #000; }
.seccion-blog-detail .postContent .textPost .big{ font-size: 27px !important; font-weight: normal; margin-top: 5px; color:#008cd0; line-height: 120%; }
.seccion-blog-detail .postContent .time span{font-size:14px; }
.seccion-blog-detail .postContent .time{font-size:14px; text-align: right; color:rgba(0,0,0,0.5);}
.seccion-blog-detail .postContent .textPost .bold{ color:#444; }
.seccion-blog-detail .postContent .textPost strong{ color:#444; font-weight: bold; }
.seccion-blog-detail .postContent li{ font-size: 18px; }
.seccion-blog-detail .postContent ul{ padding-left: 0; list-style: outside none; margin-top: 10px; margin-bottom: 10px; }
.seccion-blog-detail .postContent ul li::before{ content:"\e046"; font-size:12px; font-family: 'Glyphicons Halflings'; float:left; margin-right: 10px; color:#999; }
.seccion-blog-detail .postContent ol{ padding-left: 0; margin-top: 10px; margin-bottom: 10px; list-style:outside none; counter-reset: item; }
.seccion-blog-detail .postContent ol li::before{ color:#444; font-size:15px; content: counter(item) ". "; counter-increment: item; font-weight: bold; }
.seccion-blog-detail .postContent .textPost .orange{ color: #e35a17; }
.seccion-blog-detail .postContent .textPost .blue{ color: #008cd0; }
.seccion-blog-detail .postContent .textPost pre{ font-weight: bold; border-radius: 0; border:0; border-bottom: 1px solid #62a217; }
.seccion-blog-detail .postContent .textPost pre:before{ content:"\E044"; display: inline; font-family: "Glyphicons Halflings"; float:left; margin-right: 10px; color:#444;  }
.seccion-blog-detail .postContent .readmore:after{ content: "\e161"; font-family: "Glyphicons Halflings"; display: inline; margin-left: 10px; }
.seccion-blog-detail .postContent .readmore{ float: right; font-weight: bold; color:#ff5e00; margin-top: 15px; text-decoration: none;}
.seccion-blog-detail .postContent .readmore:hover{ color:black;}
.seccion-blog-detail .postContent table{ border-color: #ccc; width: 100%;  }
.seccion-blog-detail .postContent table th{ padding:4px 10px; border-color: #ccc; border-bottom: 3px #ccc solid; }
.seccion-blog-detail .postContent table td{ padding:4px 10px; border-color: #ccc; }
.seccion-blog-detail .postContent .btn{ margin-bottom: 10px; }
.seccion-blog-detail .postContent a{ color:#008cd0;}
.seccion-blog-detail .postContent a.btn{ text-decoration: none; color:white; }
.seccion-blog-detail .postContent a.btn.yellow{ color:#30394D; }
.seccion-blog-detail .postContent a.btn.blue{ color:white; }
.seccion-blog-detail .postContent a.btn.orange{ color:white; }
.seccion-blog-detail .postDate span {border-bottom: 1px solid #E1E1E1; display: inline-block; font-size: 60px; line-height: 50px; text-align: center; width: 100%; padding-bottom: 5px;}
.seccion-blog-detail .postDate small { display:block; color: #7F7F7F; width: 100%; text-align: center; margin-top: 5px; }
.seccion-blog-detail .titlePost{ margin-top:0; text-align: left; font-weight: normal; }
.seccion-blog-detail .titlePost a{ text-decoration: none; color: #008cd0; font-size: 20px; }
.seccion-blog-detail .postContainer .separator{ margin-top: 0}
.seccion-blog-detail ul.tagConnected li::before{ content:''; }
.seccion-blog-detail .tagConnected { display: inline-block; list-style: outside none none; padding-top: 15px; padding-bottom: 20px; width: 100%; }
.seccion-blog-detail .bottom p.big{ color:white !important; padding-top: 10px; }
.seccion-blog-detail .tagConnected li{ display: inline; padding:0 7px 0 7px; }
.seccion-blog-detail .tagConnected li+li{ border-left:3px solid #008cd0; }
.seccion-blog-detail .tagConnected li a{ background: var(--color-primary); padding:10px 15px; border-radius: 5px; color:white; font-size: 16px; font-weight: normal; font-family: 'light'; text-decoration: none; }
.seccion-blog-detail .tagConnected li a:hover{ text-decoration: underline; }
.seccion-blog-detail p.shareTitle{ width: 100%; display:block; font-size: 25px; }
.seccion-blog-detail .socialButtons {box-sizing: border-box; height: auto; min-height: 40px; padding: 10px 0 0 10px; width: 100%; background-color: #F7F7F7;}
.seccion-blog-detail h1 span .glyphicon{ font-size:24px;}
.seccion-blog-detail blockquote p{ color:white; font-size:25px; }
.seccion-blog-detail .postContent blockquote{ margin:0; border:none; padding:20px 15px; color:white; font-size:25px; font-family:'regular'; font-style: normal; background: rgb(35,180,176);
background: -moz-linear-gradient(left,  rgba(35,180,176,1) 0%, rgba(10,103,139,1) 100%);
background: -webkit-linear-gradient(left,  rgba(35,180,176,1) 0%,rgba(10,103,139,1) 100%);
background: linear-gradient(to right,  rgba(35,180,176,1) 0%,rgba(10,103,139,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#23b4b0', endColorstr='#0a678b',GradientType=1 );
}
.seccion-blog-detail .postContent blockquote p{ color:white !important; margin-top: 0; font-size:25px; font-family:'regular'}
.seccion-blog-detail .textPost .bottom{ background-image: linear-gradient(#4d4d4f, #000); color:white; }
.seccion-blog-detail .textPost a{ text-decoration: underline; }
.seccion-blog-detail .extra{ transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995);}
.seccion-blog-detail .fixed{ position: relative; margin-top: 100px; }
.seccion-blog-detail .share-box .big{ display: inline-block; }
.seccion-blog-detail .share-box #st-1{ display: inline-block; }
.seccion-blog-detail .share-box p.text-info{ font-size:18px; color:#1978f2; margin-top: 15px; }
.seccion-blog-detail .share-box .likefb{ display: inline-block; margin-top: -20px; }
@media screen and (max-width: 1200px){
    .seccion-blog-detail .share-box{ margin-bottom: 100px; }
}
@media screen and (max-width: 992px){
    .seccion-blog-detail .share-box{ margin-bottom: 20px; text-align: center; }
  .seccion-blog-detail .container > div{ padding:0; }
  .seccion-blog-detail .postContent .textPost{ font-size: 20px; line-height: 150%; }
  .seccion-blog-detail .postContent .textPost a{ font-size: 20px; }
  .seccion-blog-detail .sidebar-blog{ margin-bottom: 100px; }
  .seccion-blog-detail .sidebar ul li a{ font-size: 18px;}
  .seccion-blog-detail .container-caption{ width: 100%; height: 100%; position: absolute; left:0; top:0; }
  .seccion-blog-detail .carousel-caption{ top:0; transform:initial; }
  .seccion-blog-detail .carousel-caption h2{ overflow: hidden; font-size:38px; top:50%; transform:translateY(-50%); }
}
/*END BLOG*/

.login-layer{ position:fixed; top:0; left:0; width:100%; height:100%; z-index: 10; overflow:auto; }
.login-layer .backdrop{ top:0; left:0; width: 100%; height: 100%; position:fixed; background-color: rgba(0,0,0,0.5) }
.login-layer .layer{ background-color: white; top:50%; left:50%; transform:translateX(-50%) translateY(-50%); position:absolute; padding:15px 20px; width: 100%; max-width: 470px; font-family: 'light'; font-size:15px; -webkit-animation: custom-login 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; animation: custom-login 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; max-height:calc(100% - 15px); overflow: auto; }
.login-layer .layer p{ font-family: 'light'; font-size:15px; z-index: 1; }
.login-layer .btn-primary{ padding:6px 15px !important; }
.login-layer .btn-primary i{ font-size: 25px; }
.login-layer .form-control {box-shadow: none; border-bottom: 1px solid rgba(0,0,0,.075); font-family: 'regular'; margin-bottom: 10px; }
.login-layer .close {margin-top: 5px; font-family: serif; font-size: 35px; position: absolute; z-index: 10; top: 0; right: 12px; opacity:1; color:white; text-shadow:0 0 3px black; cursor:pointer; }
.login-layer p.subtitle{ font-family: 'light'; font-size:28px; margin-top: 20px; color:#5d4e42; }
.login-layer p.subtitle b{ color:#5d4e42; font-family: 'bold';  }
.login-layer p.subtitle2{ font-family: 'bold'; color:#212121; font-size:18px; margin-bottom: 20px; }
.login-layer .pass{ float:right; margin-top: 30px; font-size:14px; color:#212121;}
.login-layer .checkbox label{ font-family: 'light'; color:#5d4e42; font-size: 14px; }
.login-layer .checkbox a{ font-family: 'bold'; color:#5d4e42; font-size: 14px; text-decoration: underline; }
.login-layer .header{ position:relative; margin:-15px -20px 0 -20px; }
.login-layer .header .btn {position: absolute; bottom: 10px; left: 50%; z-index: 1; transform: translateX(-50%); background:rgba(255,255,255,0.9); color: #3e2e24; border-radius: 0; font-size: 20px;}
.login-layer .header .btn:hover{ background:rgba(255,255,255,0.7); }

.login-layer .header .logo-label{ position:absolute; top:0; left:0; z-index: 1; }
.login-layer .header .background{ position:relative; }
.login-layer .badge-light{ display: table; margin: 14px auto; background-color: white; border: 1px solid #5d4e42; color: black; padding: 8px 10px; font-family: 'bold'; font-weight: bold; font-size: 14px; }
@media screen and (max-width: 992px) {
    .login-layer .form-control{ font-size:18px; }
}

/*footer*/
#pie{position: relative; height:auto; padding: 0; color:#e5e5e5; background: var(--color-verde-oscuro); }
#pie h4,#pie h3,#pie h5{ font-family: var(--font-body); }
#pie a{ color:#e5e5e5; text-decoration: none; }
#pie a:hover{ color:#fff; }

#pie .footer-mokki-container{ max-width: 1320px; margin: 0 auto; padding: 48px 48px 0; }
#pie .footer-mokki-top{ display: flex; flex-wrap: wrap; gap: 64px; justify-content: space-between; padding-bottom: 64px; border-bottom: 1px solid #ffffff1a; }

#pie .footer-brand-col{ width: 480px; max-width: 100%; }
#pie .footer-brand-col .logo{ max-width: 120px; height: auto; filter: brightness(0) invert(1) sepia(1) saturate(0) hue-rotate(0deg) brightness(1.6); }
#pie .footer-desc{ font-family: var(--font-body); font-size: 14px; font-weight: 300; line-height: 1.625; color: #e5e5e5; margin-top: 24px; max-width: 420px; }
#pie .footer-address{ font-family: var(--font-body); font-size: 12px; color: #d4d4d4; margin-top: 16px; }
#pie .footer-social{ display: flex; gap: 10px; margin-top: 20px; }
#pie .footer-social-icon{ width: 38px; height: 38px; border-radius: 999px; background: #ffffff14; border: 1px solid #ffffff1f; display: flex; align-items: center; justify-content: center; font-size: 16px; transition: background-color .2s ease; }
#pie .footer-social-icon:hover{ background: #ffffff26; color: #fff; }

#pie .footer-nav-col{ width: 260px; }
#pie .footer-heading{ font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 2.4px; color: var(--color-verde-claro); margin: 0 0 24px 0; }
#pie .footer-nav-list{ list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 15px; }
#pie .footer-nav-list li a{ font-family: var(--font-body); font-size: 14px; font-weight: normal; letter-spacing: 0.2px; }
#pie .footer-nav-list li.footer-nav-cta{ padding-top: 14px; border-top: 1px solid #ffffff1f; }
#pie .footer-nav-list li.footer-nav-cta a{ color: var(--color-verde-claro); font-weight: 500; }

#pie .footer-mokki-subbar{ background: #495245; }
#pie .footer-mokki-subbar-inner{ max-width: 1320px; margin: 0 auto; padding: 20px 48px; display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; align-items: center; }
#pie .footer-copyright{ font-family: var(--font-body); font-size: 12px; font-weight: 300; color: #d4d4d4; margin: 0; }
#pie .footer-legal-links{ display: flex; gap: 24px; }
#pie .footer-legal-links a{ font-family: var(--font-body); font-size: 12px; font-weight: 300; color: #d4d4d4; }
#pie .footer-legal-links a:hover{ color: #fff; }

@media (max-width:768px){
    #pie .footer-mokki-container{ padding: 40px 20px 0; }
    #pie .footer-mokki-top{ gap: 40px; padding-bottom: 40px; }
    #pie .footer-brand-col, #pie .footer-nav-col{ width: 100%; }
    #pie .footer-mokki-subbar-inner{ padding: 20px 20px; flex-direction: column; align-items: flex-start; }
}

.container-pils{ padding: 5px 25px; border-bottom: 1px solid #F5F5F5;  }
.container-pils .nav-pills{ border-radius: 0; }
.container-pils .nav-pills > li.active > a{ background-color: #008cd0; }
.container-pils .nav-pills > li a{ border-radius: 0; }

/*google reviews*/
.google-reviews-strip{ padding: 96px 48px; background: #f4f6f2; border-top: 1px solid #adb9a34d; border-bottom: 1px solid #adb9a34d; }
.google-reviews-strip .container{ max-width: 1320px; }
.google-badge-bar{ display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; align-items: center; border-bottom: 1px solid #adb9a34d; padding-bottom: 48px; margin-bottom: 48px; }
.google-badge-summary{ display: flex; align-items: center; gap: 16px; }
.google-badge-logo{ font-size: 28px; color: #4285f4; }
.google-badge-row{ display: flex; align-items: center; gap: 8px; }
.google-badge-rating{ font-family: var(--font-body); font-size: 18px; font-weight: 600; color: var(--color-text-dark); }
.google-badge-stars{ color: #f59e0b; font-size: 13px; }
.google-reviews-strip .google-badge-caption{ font-family: var(--font-body); font-size: 12px; font-weight: 400; line-height: 140%; color: #525252; margin: 4px 0 0 0; }
.google-badge-link{ font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 0.6px; color: var(--color-verde-oscuro); text-decoration: none; border-bottom: 1px solid var(--color-verde-oscuro); padding-bottom: 2px; }
.google-badge-link:hover{ color: var(--color-hover); }
.google-reviews-swiper{ padding-bottom: 48px; }
.google-reviews-swiper .swiper-slide{ height: auto; display: flex; }
.google-review-row{ display: flex; flex-direction: column; justify-content: space-between; width: 100%; background: #fff; border: 1px solid #e5e5e599; border-radius: 2px; box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); padding: 28px; gap: 24px; color: inherit; text-decoration: none; }
a.google-review-row:hover{ text-decoration: none; color: inherit; border-color: #d8d8d8; }
.google-review-stars{ color: #f59e0b; font-size: 12px; }
.google-reviews-strip .google-review-comment{ font-weight: 400; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 10; overflow: hidden; text-overflow: ellipsis; height: 230px; font-family: var(--font-heading); font-style: italic; font-size: 14px; line-height: 1.625; color: #404040; margin: 10px 0 0 0; }
.google-review-footer{ display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid #f5f5f5; padding-top: 16px; }
.google-review-author{ font-family: var(--font-body); font-size: 12px; font-weight: 500; color: var(--color-text-dark); }
.google-review-badge{ font-family: var(--font-body); font-size: 11px; color: #a3a3a3; }
.google-reviews-swiper .swiper-pagination-bullet{ background: var(--color-verde-oscuro); opacity: 0.3; }
.google-reviews-swiper .swiper-pagination-bullet-active{ opacity: 1; }
@media screen and (max-width: 768px) {
    .google-reviews-strip{ padding: 64px 20px; }
}

/*ARTISTIC DIVIDER*/
.seccion-home .artistic-divider{ display: flex; align-items: center; justify-content: center; padding: 40px 48px; }
.seccion-home .artistic-divider img{ width: 100%; max-width: 520px; height: auto; display: block; }
@media (max-width: 600px){
    .seccion-home .artistic-divider{ padding: 32px 0; }
    .seccion-home .artistic-divider img{ max-width: 100%; }
}

/*PILLARS SECTION*/
.seccion-home .pillars-section{ background: var(--color-verde-oscuro); border-top: 1px solid #ffffff1a; border-bottom: 1px solid #ffffff1a; padding: 86px 48px 96px; }
.seccion-home .pillars-section .section-header{ max-width: 1320px; margin: 0 auto; display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; border-bottom: 1px solid #ffffff1a; padding-bottom: 24px; margin-bottom: 44px; }
.seccion-home .pillars-section .section-header h2{ color: #fff; margin: 0; }
.seccion-home .pillars-grid{ max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.seccion-home .pillar-card{ background: var(--color-dark-bg); border: 1px solid #ffffff1a; border-radius: 12px; padding: 32px; display: flex; flex-direction: column; justify-content: space-between; min-height: 392px; box-shadow: 0 8px 8.75px rgba(0,0,0,0.1), 0 20px 21.875px rgba(0,0,0,0.1); }
.seccion-home .pillar-icon{ width: 48px; height: 48px; border-radius: 999px; background: #ffffff14; border: 1px solid #ffffff1f; display: flex; align-items: center; justify-content: center; font-size: 20px; color: var(--color-verde-claro); }
.seccion-home .pillar-card h3{ color: #fff; margin: 12px 0 0 0; }
.seccion-home .pillar-card p{ color: #d4d4d4; margin: 12px 0 0 0; max-height: none; }
.seccion-home .pillar-footer{ display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #ffffff1a; padding-top: 24px; margin-top: 24px; }
.seccion-home .pillar-footer > :first-child{ font-family: 'Liberation Mono', monospace; font-size: 11px; letter-spacing: 1.1px; color: var(--color-verde-claro); }
.seccion-home .pillar-footer > :last-child{ font-family: 'Liberation Mono', monospace; font-size: 12px; color: #737373; }
@media (max-width: 992px){
    .seccion-home .pillars-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
    .seccion-home .pillars-section{ padding: 64px 0 72px; }
    .seccion-home .pillars-section .section-header{ padding-left: 20px; padding-right: 20px; }
    .seccion-home .pillar-card{ min-height: auto; }
    .seccion-home .pillars-grid{ display: flex; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 20px; gap: 16px; padding: 0 20px; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
    .seccion-home .pillars-grid::-webkit-scrollbar{ display: none; height: 0; }
    .seccion-home .pillars-grid .pillar-card{ flex: 0 0 85%; scroll-snap-align: start; }
    .seccion-home .pillars-section .section-header{ flex-direction: column; align-items: flex-start; }
}

/*PORTFOLIO SECTION*/
.seccion-home .portfolio-section{ background: #fbfaf8; padding: 16px 48px 96px; }
.seccion-home .portfolio-section .portfolio-header{ max-width: 1320px; margin: 0 auto 48px; display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.seccion-home .portfolio-section .subtitle2{ color: var(--color-verde-oscuro); margin-bottom: 8px; text-transform: lowercase; }
.seccion-home .portfolio-header h2{ color: var(--color-dark-bg); margin: 0; }
.seccion-home .portfolio-filters{ display: flex; flex-wrap: wrap; gap: 8px; }
.seccion-home .portfolio-filters button{ font-family: var(--font-body); font-size: 12px; font-weight: 500; letter-spacing: 0.6px; padding: 8px 16px; border-radius: 999px; border: 1px solid #e5e5e5; background: #fff; color: #525252; cursor: pointer; }
.seccion-home .portfolio-filters button.active{ background: var(--color-beige); border-color: var(--color-beige); color: var(--color-dark-bg); box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); }
.seccion-home .portfolio-grid{ max-width: 1320px; margin: 0 auto; position: relative; }
.seccion-home .portfolio-grid .portfolio-item{ margin-bottom: 24px; border-radius: 12px; overflow: hidden; position: relative; background: #262626; }
.seccion-home .portfolio-grid .portfolio-item.is-hidden{ display: none; }
.seccion-home .portfolio-grid .portfolio-item img{ display: block; width: 100%; height: auto; opacity: 0.9; transition: transform .4s ease; cursor: pointer; }
.seccion-home .portfolio-grid .portfolio-item:hover img{ transform: scale(1.04); }
@media (max-width: 600px){
    .seccion-home .portfolio-section{ padding: 16px 20px 64px; }
    .seccion-home .portfolio-section .portfolio-header{ flex-direction: column; align-items: flex-start; }
    .seccion-home .portfolio-grid{ display: flex; align-items: flex-start; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 20px; gap: 16px; padding: 0 20px; margin: 0 -20px; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
    .seccion-home .portfolio-grid::-webkit-scrollbar{ display: none; height: 0; }
    .seccion-home .portfolio-grid .portfolio-item{ flex: 0 0 85%; scroll-snap-align: start; margin-bottom: 0; height: 430px; }
    .seccion-home .portfolio-grid .portfolio-item img{ width: 100%; height: 100%; object-fit: cover; }
}

/*ARTISTS TEAM SECTION*/
.seccion-home .team-section{ background: #fff; border-top: 1px solid #f5f5f5; padding: 16px 48px 96px; }
.seccion-home .team-section .section-header{ max-width: 672px; margin: 0 auto 64px; text-align: center; }
.seccion-home .team-section .subtitle2{ font-family: 'Liberation Mono', monospace; font-weight: 700; letter-spacing: 3px; color: var(--color-verde-oscuro); }
.seccion-home .team-section .section-header h2{ color: var(--color-dark-bg); margin: 8px 0 0 0; }
.seccion-home .team-section .section-header p{ color: #737373; max-width: 576px; margin: 16px auto 0; line-height: 1.43; }
.seccion-home .team-section .section-header .divider{ width: 64px; height: 2px; background: var(--color-verde-oscuro); margin: 24px auto 0; }
.seccion-home .team-grid{ max-width: 1320px; margin: 32px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.seccion-home .team-card{ background: #fbfaf8; border: 1px solid #e5e5e5b2; border-radius: 12px; box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); overflow: hidden; display: flex; flex-direction: column; }
.seccion-home .team-card .team-photo{ width: 100%; height: 366px; object-fit: cover; display: block; }
.seccion-home .team-card .team-body{ padding: 32px; display: flex; flex-direction: column; flex: 1; justify-content: space-between; }
.seccion-home .team-specialty{ display: block; font-family: var(--font-body); font-size: 12px; font-weight: 500; letter-spacing: 1.2px; color: var(--color-verde-oscuro); }
.seccion-home .team-card h3{ color: var(--color-dark-bg); margin: 4px 0 0 0; }
.seccion-home .team-card .team-bio{ font-family: var(--font-body); font-weight: 300; font-size: 15px; line-height: 1.625; color: #525252; margin: 8px 0 0 0; }
.seccion-home .team-card .team-bio p{ margin: 0; font-size: 15px; }
.seccion-home .team-instagram{ display: flex; align-items: center; gap: 8px; margin-top: 24px; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; color: var(--color-dark-bg); text-decoration: none; }
.seccion-home .team-instagram i{ font-size: 16px; }
@media (max-width: 992px){
    .seccion-home .team-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
    .seccion-home .team-section{ padding: 16px 20px 64px; }
    .seccion-home .team-grid{ grid-template-columns: 1fr; }
}

/*CARE GUIDE SECTION*/
.seccion-home .care-section{ background: var(--color-verde-oscuro); border-top: 1px solid #ffffff1a; padding: 96px 48px; }
.seccion-home .care-section .section-header{ max-width: 672px; margin: 0 auto 64px; text-align: center; }
.seccion-home .care-section .subtitle2{ font-family: 'Liberation Mono', monospace; font-weight: 700; letter-spacing: 3px; color: var(--color-verde-claro); }
.seccion-home .care-section .section-header h2{ color: #fff; margin: 8px 0 0 0; }
.seccion-home .care-section .section-header p{ color: #a3a3a3; max-width: 576px; margin: 16px auto 0; line-height: 1.43; }
.seccion-home .care-section .section-header .divider{ width: 64px; height: 2px; background: var(--color-verde-claro); margin: 24px auto 0; }
.seccion-home .care-grid{ max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.seccion-home .care-card{ background: var(--color-dark-bg); border: 1px solid #ffffff1a; border-radius: 12px; padding: 32px; box-shadow: 0 8px 8.75px rgba(0,0,0,0.1), 0 20px 21.875px rgba(0,0,0,0.1); }
.seccion-home .care-number{ font-family: 'Liberation Mono', monospace; font-size: 48px; color: var(--color-verde-claro); line-height: 1; }
.seccion-home .care-card h3{ color: #fff; margin: 12px 0 0 0; }
.seccion-home .care-card > p{ color: #d4d4d4; margin: 8px 0 0 0; max-height: none; }
.seccion-home .care-list{ list-style: none; margin: 16px 0 0 0; padding: 16px 0 0 0; border-top: 1px solid #ffffff1a; display: flex; flex-direction: column; gap: 10px; }
.seccion-home .care-list li{ font-family: var(--font-body); font-weight: 300; font-size: 12px; line-height: 1.33; color: #a3a3a3; padding-left: 14px; position: relative; max-height: none; }
.seccion-home .care-list li::before{ content: '•'; color: var(--color-verde-claro); position: absolute; left: 0; }
@media (max-width: 992px){
    .seccion-home .care-grid{ grid-template-columns: 1fr; }
}
@media (max-width: 600px){
    .seccion-home .care-section{ padding: 64px 0; }
    .seccion-home .care-section .section-header{ padding-left: 20px; padding-right: 20px; }
    .seccion-home .care-grid{ display: flex; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 20px; gap: 16px; padding: 0 20px; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
    .seccion-home .care-grid::-webkit-scrollbar{ display: none; height: 0; }
    .seccion-home .care-card{ flex: 0 0 85%; scroll-snap-align: start; }
}

/*CONTACT AND LOCATION SECTION*/
.seccion-home .contact-location-section{ background: #f4f6f2; border-top: 1px solid #adb9a34d; padding: 96px 48px; scroll-margin-top: 96px; }
.seccion-home .contact-location-grid{ max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: stretch; }
.seccion-home .contact-card{ background: #fff; border: 1px solid #e5e5e5cc; border-radius: 12px; box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); padding: 48px; display: flex; flex-direction: column; justify-content: space-between; }
.seccion-home .contact-card .subtitle2{ color: var(--color-verde-oscuro); }
.seccion-home .contact-card h2{ color: var(--color-dark-bg); margin: 8px 0 0 0; }
.seccion-home .contact-card .contact-lead{ color: #525252; margin: 15px 0 0 0; }
.seccion-home .contact-info-list{ display: flex; flex-direction: column; gap: 20px; margin: 24px 0 32px; }
.seccion-home .contact-info-row{ display: flex; gap: 8px; }
.seccion-home .contact-info-row > :first-child{ font-family: var(--font-body); font-size: 14px; font-weight: 600; color: var(--color-dark-bg); width: 112px; flex-shrink: 0; }
.seccion-home .contact-info-row span, .seccion-home .contact-info-row a{ font-family: var(--font-body); font-size: 14px; color: #404040; text-decoration: none; }
.seccion-home .contact-info-row small{ display: block; font-family: var(--font-body); font-size: 12px; font-weight: 500; color: var(--color-verde-oscuro); margin-top: 3px; }
.seccion-home .contact-channels{ border-top: 1px solid #f5f5f5; padding-top: 24px; margin-bottom: 32px; }
.seccion-home .contact-channels-label{ display: block; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 0.6px; color: #a3a3a3; margin-bottom: 16px; }
.seccion-home .contact-channels-links{ display: flex; flex-wrap: wrap; gap: 16px; }
.seccion-home .contact-channels-links a{ display: flex; align-items: center; gap: 8px; border: 1px solid #e5e5e5; border-radius: 999px; padding: 8px 14px; font-family: var(--font-body); font-size: 12px; font-weight: 500; color: #404040; text-decoration: none; }
.seccion-home .contact-channels-links a:hover{ border-color: var(--color-verde-oscuro); color: var(--color-verde-oscuro); }
.seccion-home .contact-cta-btn{ display: block; width: 100%; text-align: center; background: var(--color-verde-oscuro); color: #fff; border-radius: 2px; padding: 16px 0; font-family: var(--font-body); font-size: 12px; font-weight: 500; letter-spacing: 1.2px; text-decoration: none; box-shadow: 0 2px 3.5px rgba(0,0,0,0.1), 0 4px 5.25px rgba(0,0,0,0.1); }
.seccion-home .contact-cta-btn:hover{ background: var(--color-hover); color: #fff; }
.seccion-home .map-card{ background: #fff; border: 1px solid #e5e5e5cc; border-radius: 12px; box-shadow: 0 1px 1.75px rgba(0,0,0,0.05); padding: 16px; position: relative; }
.seccion-home .map-card .map-frame{ width: 100%; height: 100%; min-height: 460px; border-radius: 8px; border: 1px solid #adb9a34d; display: block; }
.seccion-home .map-directions-btn{ position: absolute; bottom: 32px; right: 32px; display: inline-flex; align-items: center; gap: 6px; background: #ffffffe5; border: 1px solid #e5e5e5; border-radius: 2px; padding: 8px 16px; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 0.6px; color: var(--color-dark-bg); text-decoration: none; box-shadow: 0 2px 3.5px rgba(0,0,0,0.1), 0 4px 5.25px rgba(0,0,0,0.1); }
@media (max-width: 992px){
    .seccion-home .contact-location-grid{ grid-template-columns: 1fr; }
    .seccion-home .map-card .map-frame{ min-height: 360px; }
}
@media (max-width: 600px){
    .seccion-home .contact-location-section{ padding: 64px 20px; }
    .seccion-home .contact-card{ padding: 32px; }
    .seccion-home .contact-info-row{ flex-direction: column; gap: 2px; }
    .seccion-home .contact-info-row > :first-child{ width: auto; }
}

/*HERO SECUNDARIO (páginas interiores: Nosotros, Servicios, Información, Galería...) - banner reducido, mismo slider/CMS que home pero más bajo*/
.seccion .slider-secondary .swiper-slide{ height: 500px; min-height: 500px; max-height: 500px; }
.seccion .slider-secondary .carousel-caption .title{ font-size: 64px; }
.seccion .slider-secondary .carousel-caption p:first-of-type{ font-size: 15px; font-weight: 300; letter-spacing: normal; text-transform: none; color: #d4d4d4; border-left: none; padding-left: 0; max-width: 576px; margin-top: 20px; }
.seccion .slider-secondary .swiper-pagination{ display: none; }
.about-hero-divider{ height: 3px; width: 100%; background: var(--color-verde-claro); }
@media (max-width: 768px){
    .seccion .slider-secondary .swiper-slide{ height: 500px; min-height: 500px; max-height: 500px; }
    .seccion .slider-secondary .carousel-caption .title{ font-size: 44px; }
}

/*ABOUT - TEAM ROWS*/
.seccion-quienes-somos .team-row{ padding: 56px 48px; border-top: 1px solid #e8e6e0; }
.seccion-quienes-somos .team-row.bg-alt{ background: #e8ede0; }
.seccion-quienes-somos .team-row-inner{ max-width: 1320px; margin: 0 auto; display: flex; align-items: center; gap: 48px; }
.seccion-quienes-somos .team-row.reverse .team-row-inner{ flex-direction: row-reverse; }
.seccion-quienes-somos .team-row .team-photo{ flex: 0 0 360px; width: 360px; height: 460px; border-radius: 12px; overflow: hidden; box-shadow: 0 24px 45px -10px rgba(0,0,0,0.4), 0 10px 18px -8px rgba(0,0,0,0.3); }
.seccion-quienes-somos .team-row .team-photo img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-quienes-somos .team-row .team-content{ flex: 1 1 auto; min-width: 0; }
.seccion-quienes-somos .team-quote{ font-family: var(--font-heading); font-style: italic; font-weight: 300; font-size: 27px; line-height: 1.3; color: #3f4a3a; margin: 0; }
.seccion-quienes-somos .team-accent{ width: 32px; height: 3px; background: var(--color-verde-oscuro); margin: 16px 0; }
.seccion-quienes-somos .team-name{ font-family: var(--font-heading); font-weight: 300; font-size: 38px; color: var(--color-dark-bg); margin: 0 0 16px 0; letter-spacing: 0.2px; }
.seccion-quienes-somos .team-desc{ font-family: var(--font-body); font-weight: 300; font-size: 15px; line-height: 1.6; color: #525252; margin: 0; }
.seccion-quienes-somos .team-desc p{ margin: 0; font-size: 15px; }
.seccion-quienes-somos .team-styles-label{ display: block; font-family: var(--font-body); font-size: 11px; font-weight: 600; letter-spacing: 1.2px; color: var(--color-verde-claro); margin: 20px 0 8px; }
.seccion-quienes-somos .team-styles-row{ display: flex; flex-wrap: wrap; gap: 8px; }
.seccion-quienes-somos .team-tag{ background: #f4f6f2; border: 1px solid #e8e6e0; border-radius: 999px; padding: 6px 14px; font-family: var(--font-body); font-size: 12px; color: #3f443d; }
.seccion-quienes-somos .team-buttons{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.seccion-quienes-somos .team-buttons a{ display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 10px 18px; font-family: var(--font-body); font-size: 12px; font-weight: 500; text-decoration: none; }
.seccion-quienes-somos .team-buttons a.ig{ border: 1px solid var(--color-verde-oscuro); color: var(--color-verde-oscuro); }
.seccion-quienes-somos .team-buttons a.veure{ background: var(--color-dark-bg); color: #fff; font-weight: 600; letter-spacing: 0.6px; }
@media (max-width: 900px){
    .seccion-quienes-somos .team-row{ padding: 40px 20px; }
    .seccion-quienes-somos .team-row-inner, .seccion-quienes-somos .team-row.reverse .team-row-inner{ flex-direction: column; }
    .seccion-quienes-somos .team-row .team-photo{ width: 100%; flex-basis: auto; height: 340px; }
    .seccion-quienes-somos .team-name{ font-size: 30px; }
    .seccion-quienes-somos .team-quote{ font-size: 22px; }
}

/*ABOUT - STUDIO SECTION*/
.seccion-quienes-somos .studio-section{ background: #141613; padding: 96px 48px; }
.seccion-quienes-somos .studio-grid{ max-width: 1320px; margin: 0 auto; display: flex; align-items: center; gap: 64px; }
.seccion-quienes-somos .studio-text{ flex: 0 0 460px; width: 460px; display: flex; flex-direction: column; gap: 20px; }
.seccion-quienes-somos .studio-section .subtitle2{ letter-spacing: 2.4px; color: var(--color-verde-claro); }
.seccion-quienes-somos .studio-text h2{ line-height: 1.15; color: #fbfaf8; margin: 0; }
.seccion-quienes-somos .studio-text p{ line-height: 1.7; color: #d4d4d4; margin: 0; }
.seccion-quienes-somos .studio-photo{ flex: 1 1 auto; height: 520px; border-radius: 12px; overflow: hidden; }
.seccion-quienes-somos .studio-photo img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-quienes-somos .studio-gallery{ max-width: 1320px; margin: 48px auto 0; }
.seccion-quienes-somos .studio-gallery .service-photos{ display: flex; gap: 12px; }
.seccion-quienes-somos .studio-gallery .service-photos .swiper-slide{ height: 320px; border-radius: 12px; overflow: hidden; }
.seccion-quienes-somos .studio-gallery .service-photos img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-quienes-somos .studio-gallery .service-photos-dots{ position: static; display: flex; justify-content: center; gap: 6px; margin-top: 16px; }
.seccion-quienes-somos .studio-gallery .service-photos-dots .swiper-pagination-bullet{ width: 6px; height: 6px; background: #ffffff40; opacity: 1; }
.seccion-quienes-somos .studio-gallery .service-photos-dots .swiper-pagination-bullet-active{ width: 16px; border-radius: 3px; background: var(--color-verde-claro); }
@media (max-width: 992px){
    .seccion-quienes-somos .studio-grid{ flex-direction: column; gap: 40px; }
    .seccion-quienes-somos .studio-text{ width: 100%; flex-basis: auto; }
    .seccion-quienes-somos .studio-photo{ width: 100%; height: 360px; }
}
@media (max-width: 600px){
    .seccion-quienes-somos .studio-section{ padding: 64px 20px; }
    .seccion-quienes-somos .studio-gallery{ margin-top: 32px; }
    .seccion-quienes-somos .studio-gallery .service-photos .swiper-slide{ height: 220px; }
}

/*SERVICIOS - LISTADO*/
.seccion-servicios .services-list-section{ background: #fff; padding: 48px 48px 96px; }
.seccion-servicios .services-list{ max-width: 1320px; margin: 0 auto; }
.seccion-servicios .service-row{ display: flex; gap: 40px; padding: 48px 0; border-top: 1px solid #e8e6e0; }
.seccion-servicios .service-row:first-child{ border-top: none; }
.seccion-servicios .service-head{ flex: 0 0 320px; width: 320px; display: flex; align-items: center; gap: 20px; }
.seccion-servicios .service-icon{ flex: 0 0 56px; width: 56px; height: 56px; border-radius: 999px; background: #f4f6f2; border: 1px solid #e8e6e0; display: flex; align-items: center; justify-content: center; font-size: 24px; color: var(--color-verde-claro); }
.seccion-servicios .service-number{ display: block; font-family: 'Liberation Mono', monospace; font-size: 12px; font-weight: 700; letter-spacing: 1.2px; color: var(--color-verde-oscuro); }
.seccion-servicios .service-title{ font-family: var(--font-body); font-size: 22px; font-weight: 500; color: #1f241d; margin: 4px 0 0 0; }
.seccion-servicios .service-body{ flex: 1 1 auto; min-width: 0; padding-top: 4px; }
.seccion-servicios .service-desc{ font-family: var(--font-body); font-size: 15px; font-weight: 300; line-height: 1.6; color: #5a5f57; margin: 0; }
.seccion-servicios .service-photos{ display: flex; gap: 12px; margin-top: 16px; }
.seccion-servicios .service-photos .swiper-slide{ height: 310px; border-radius: 10px; overflow: hidden; }
.seccion-servicios .service-row-featured .service-photos .swiper-slide{ height: 310px; }
.seccion-servicios .service-photos img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-servicios .service-photos-dots{ position: static; display: flex; justify-content: center; gap: 6px; margin-top: 14px; }
.seccion-servicios .service-photos-dots .swiper-pagination-bullet{ width: 6px; height: 6px; background: #c8ccc3; opacity: 1; }
.seccion-servicios .service-photos-dots .swiper-pagination-bullet-active{ width: 16px; border-radius: 3px; background: var(--color-verde-oscuro); }
@media (max-width: 900px){
    .seccion-servicios .service-row{ flex-direction: column; gap: 16px; }
    .seccion-servicios .service-head{ width: 100%; flex-basis: auto; }
}
@media (max-width: 600px){
    .seccion-servicios .services-list-section{ padding: 32px 20px 64px; }
    .seccion-servicios .service-photos .swiper-slide{ height: 220px; }
    .seccion-servicios .service-row-featured .service-photos .swiper-slide{ height: 350px; }
}

/*INFORMACION*/
.seccion-informacion .info-intro .subtitle2, .seccion-informacion .info-cures-intro .subtitle2, .seccion-informacion .info-faq-intro .subtitle2{ letter-spacing: 2.4px; color: var(--color-verde-oscuro); margin-bottom: 16px; }
.seccion-informacion .info-cures-intro .subtitle2{ color: var(--color-verde-claro); }
.seccion-informacion .title{ font-size: 40px; line-height: 1.2; color: #1c1f1a; margin: 0; }
.seccion-informacion .info-cures-intro .title{ color: #fbfaf8; }

.seccion-informacion .info-abans-section{ background: #fff; padding: 96px 48px; }
.seccion-informacion .info-intro{ max-width: 1320px; margin: 0 auto; }
.seccion-informacion .info-definition{ font-size: 15px; line-height: 1.6; color: #525252; max-width: 720px; margin: 16px 0 0 0; }
.seccion-informacion .info-two-columns{ max-width: 1320px; margin: 40px auto 0; display: flex; gap: 32px; }
.seccion-informacion .info-card{ flex: 1 1 0; border-radius: 10px; border: 1px solid #e8e6e0; padding: 32px; box-shadow: 0 6px 18px -6px rgba(0,0,0,0.08); }
.seccion-informacion .info-card-warn{ background: #fdf3e7; border-color: #f0d9b5; }
.seccion-informacion .info-card-ok{ background: #eef4ef; border-color: #cfe0d2; }
.seccion-informacion .info-icon-badge{ width: 44px; height: 44px; border-radius: 999px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 20px; }
.seccion-informacion .info-icon-badge-warn{ background: #f3d9ae; color: #b45309; }
.seccion-informacion .info-icon-badge-ok{ background: #c9e0ce; color: #3f6b4a; }
.seccion-informacion .subtitle{ font-family: var(--font-body); font-size: 18px; font-weight: 600; color: #1c1f1a; margin: 0 0 20px 0; }
.seccion-informacion .info-card ul, .seccion-informacion .info-precautions-list ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.seccion-informacion .info-card li, .seccion-informacion .info-precautions-list li{ position: relative; padding-left: 24px; font-family: var(--font-body); font-size: 13px; font-weight: 300; line-height: 1.5; color: #404040; }
.seccion-informacion .info-card li::before, .seccion-informacion .info-precautions-list li::before{ font-family: bootstrap-icons !important; font-size: 13px; line-height: 1; position: absolute; left: 0; top: 2px; }
.seccion-informacion .info-card li > i, .seccion-informacion .info-precautions-list li > i{ display: none; }
.seccion-informacion .info-card-warn li::before{ content: "\f623"; color: #b45309; }
.seccion-informacion .info-card-ok li::before{ content: "\f26b"; color: #3f6b4a; }
.seccion-informacion .info-precautions-list ul{ flex: 1 1 0; }
.seccion-informacion .info-precautions-list li{ color: #d4d4d4; }
.seccion-informacion .info-precautions-list li::before{ content: "\f52f"; color: var(--color-verde-claro); }
.seccion-informacion .info-risks-block{ max-width: 1320px; margin: 32px auto 0; display: flex; gap: 20px; background: #f5f5f4; border: 1px solid #e5e5e0; border-radius: 10px; padding: 32px; }
.seccion-informacion .info-risks-icon{ flex: 0 0 48px; width: 48px; height: 48px; border-radius: 999px; background: #e8e8e3; color: #6b6b63; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.seccion-informacion .info-risks-text{ flex: 1 1 auto; }
.seccion-informacion .info-risks-text .subtitle2{ color: #3f3f3a; margin-bottom: 10px; }
.seccion-informacion .info-risks-text p{ font-size: 13px; line-height: 1.6; color: #6b6b63; margin: 0; }

.seccion-informacion .info-cures-section{ background: #141613; padding: 96px 48px; }
.seccion-informacion .info-cures-intro{ max-width: 1320px; margin: 0 auto; text-align: center; }
.seccion-informacion .info-steps-grid{ max-width: 1320px; margin: 40px auto 0; display: flex; flex-direction: column; gap: 20px; }
.seccion-informacion .info-steps-row{ display: flex; gap: 20px; }
.seccion-informacion .info-steps-row-3 .info-step{ flex-basis: 0; }
.seccion-informacion .info-step{ flex: 1 1 0; background: #1f241d; border: 1px solid rgba(255,255,255,0.1); border-radius: 4px; padding: 24px; }
.seccion-informacion .info-step-number{ display: block; font-family: var(--font-heading); font-size: 28px; font-weight: 400; color: var(--color-verde-claro); margin-bottom: 12px; }
.seccion-informacion .info-step p{ line-height: 1.5; color: #d4d4d4; margin: 0; }
.seccion-informacion .info-precautions{ max-width: 1320px; margin: 32px auto 0; padding-top: 32px; border-top: 1px solid rgba(255,255,255,0.1); }
.seccion-informacion .info-precautions .subtitle2{ color: var(--color-verde-claro); margin-bottom: 16px; }
.seccion-informacion .info-precautions-list{ display: flex; gap: 40px; }

.seccion-informacion .info-faq-section{ background: #f4f6f2; padding: 96px 48px; display: flex; flex-direction: column; align-items: center; }
.seccion-informacion .info-faq-intro{ text-align: center; margin-bottom: 40px; }
.seccion-informacion .info-faq-list{ width: 100%; max-width: 800px; display: flex; flex-direction: column; gap: 12px; }
.seccion-informacion .info-faq-list .group-faqs .accordion{ display: flex; flex-direction: column; gap: 12px; border: none; box-shadow: none; background: transparent; border-radius: 0; overflow: visible; }
.seccion-informacion .group-faqs .accordion-item{ background: #fff; border: 1px solid #e5e5e5; border-radius: 6px; overflow: hidden; }
.seccion-informacion .group-faqs .accordion-item:has(.accordion-button:not(.collapsed)){ border-color: var(--color-verde-claro); }
.seccion-informacion .group-faqs .accordion-button{ padding: 20px 24px; background: #fff; box-shadow: none; border-bottom: none; }
.seccion-informacion .group-faqs .accordion-button:not(.collapsed){ background: #fff; color: #1c1f1a; border-bottom: 1px solid #e8e6e0; }
.seccion-informacion .group-faqs .accordion-button:not(.collapsed) .faq-question{ color: #1c1f1a; }
.seccion-informacion .group-faqs .accordion-button:not(.collapsed)::after{ filter: grayscale(1) brightness(.4); }
.seccion-informacion .group-faqs .faq-question{ display: block; font-family: var(--font-body); font-size: 15px; font-weight: 600; letter-spacing: normal; color: #1c1f1a; }
.seccion-informacion .group-faqs .accordion-body{ padding: 16px 24px 24px; color: #525252; }
.seccion-informacion .group-faqs .accordion-body p{ margin: 0; line-height: 1.6; color: #525252; }

@media (max-width: 900px){
    .seccion-informacion .info-two-columns{ flex-direction: column; }
    .seccion-informacion .info-steps-row{ flex-wrap: wrap; }
    .seccion-informacion .info-steps-row .info-step{ flex: 1 1 45%; }
    .seccion-informacion .info-precautions-list{ flex-direction: column; gap: 20px; }
}
@media (max-width: 600px){
    .seccion-informacion .info-abans-section,
    .seccion-informacion .info-cures-section,
    .seccion-informacion .info-faq-section{ padding: 48px 20px; }
    .seccion-informacion .info-risks-block{ flex-direction: column; }
    .seccion-informacion .info-steps-row .info-step{ flex: 1 1 100%; }
}

/*PORTFOLIO*/
.seccion-portfolio .portfolio-grid-section{ background: #fbfaf8; padding: 72px 48px 96px; }
.seccion-portfolio .portfolio-grid-intro{ max-width: 1320px; margin: 0 auto 48px; text-align: center; }
.seccion-portfolio .portfolio-eyebrow{ display: block; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 2.4px; color: var(--color-verde-oscuro); margin-bottom: 12px; }
.seccion-portfolio .portfolio-title{ font-family: var(--font-heading); font-size: 40px; font-weight: 300; color: #1c1f1a; margin: 0 0 12px 0; }
.seccion-portfolio .portfolio-subtitle{ font-family: var(--font-body); font-size: 15px; font-weight: 300; color: #5a5f57; max-width: 560px; margin: 0 auto; }
.seccion-portfolio .portfolio-grid{ max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.seccion-portfolio .portfolio-card{ display: block; border-radius: 12px; overflow: hidden; background: #00000010; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.seccion-portfolio .portfolio-card:hover{ transform: translateY(-4px); box-shadow: 0 12px 28px -10px rgba(0,0,0,0.18); }
.seccion-portfolio .portfolio-card-photo{ position: relative; width: 100%; height: 300px; overflow: hidden; }
.seccion-portfolio .portfolio-card-photo img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-portfolio .portfolio-card-photo::after{ content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(28,31,26,0) 0%, rgba(28,31,26,0.8) 100%); }
.seccion-portfolio .portfolio-card-label{ position: absolute; left: 20px; bottom: 20px; z-index: 1; display: flex; flex-direction: column; gap: 4px; }
.seccion-portfolio .portfolio-card-name{ font-family: var(--font-heading); font-size: 26px; font-weight: 400; color: #fff; }
.seccion-portfolio .portfolio-card-styles{ font-family: var(--font-body); font-size: 11px; font-weight: 500; letter-spacing: 0.8px; color: #e5e5e5; }
.seccion-portfolio .portfolio-card-footer{ display: flex; justify-content: space-between; align-items: center; background: #fff; padding: 16px 20px; }
.seccion-portfolio .portfolio-card-footer span{ font-family: var(--font-body); font-size: 11px; font-weight: 600; letter-spacing: 1px; color: var(--color-verde-oscuro); }
.seccion-portfolio .portfolio-card-footer i{ color: var(--color-verde-oscuro); font-size: 14px; transition: transform .2s ease; }
.seccion-portfolio .portfolio-card:hover .portfolio-card-footer i{ transform: translateX(4px); }
@media (max-width: 900px){
    .seccion-portfolio .portfolio-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
    .seccion-portfolio .portfolio-grid-section{ padding: 48px 20px 64px; }
    .seccion-portfolio .portfolio-grid{ grid-template-columns: 1fr; }
}

/*PORTFOLIO - GALERIA INDIVIDUAL*/
.seccion-portfolio-detail .artist-bio-section{ background: #f4f6f2; padding: 72px 48px; }
.seccion-portfolio-detail .artist-bio-inner{ max-width: 1320px; margin: 0 auto; display: flex; align-items: center; gap: 48px; }
.seccion-portfolio-detail .artist-portrait{ flex: 0 0 220px; width: 220px; height: 220px; border-radius: 999px; overflow: hidden; border: 4px solid var(--color-verde-claro); box-shadow: 0 16px 32px -10px rgba(0,0,0,0.25); }
.seccion-portfolio-detail .artist-portrait img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.seccion-portfolio-detail .artist-bio-text{ flex: 1 1 auto; max-width: 900px; }
.seccion-portfolio-detail .artist-role{ display: block; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: 1.2px; color: var(--color-verde-claro); margin-bottom: 10px; }
.seccion-portfolio-detail .artist-name{ font-family: var(--font-heading); font-size: 52px; font-weight: 400; color: #1c1f1a; margin: 0 0 14px 0; }
.seccion-portfolio-detail .artist-bio{ font-family: var(--font-body); font-size: 15px; font-weight: 300; line-height: 1.6; color: #525252; margin: 0; }
.seccion-portfolio-detail .artist-bio p{ margin: 0; font-size: 15px; }
.seccion-portfolio-detail .artist-social-row{ display: flex; gap: 12px; padding-top: 12px; }
.seccion-portfolio-detail .artist-social-pill{ display: inline-flex; align-items: center; gap: 8px; background: #1c1f1a; color: #fff; font-family: var(--font-body); font-size: 13px; font-weight: 600; text-decoration: none; padding: 12px 22px; border-radius: 999px; }
.seccion-portfolio-detail .artist-social-pill:hover{ background: var(--color-verde-oscuro); }
.seccion-portfolio-detail .artist-photo-grid-section{ background: #fff; padding: 48px; }
.seccion-portfolio-detail .artist-photo-grid{ max-width: 1320px; margin: 0 auto; position: relative; }
.seccion-portfolio-detail .artist-photo{ margin-bottom: 16px; border-radius: 12px; overflow: hidden; background: #00000010; }
.seccion-portfolio-detail .artist-photo img{ display: block; width: 100%; height: auto; cursor: pointer; }
.seccion-portfolio-detail .artist-photo-empty{ max-width: 1320px; margin: 0 auto; text-align: center; font-family: var(--font-body); color: #737373; padding: 32px 0; }
.seccion-portfolio-detail .artist-not-found{ padding: 96px 20px; text-align: center; font-family: var(--font-body); }
.seccion-portfolio-detail .artist-not-found a{ color: var(--color-verde-oscuro); font-weight: 600; }
@media (max-width: 900px){
    .seccion-portfolio-detail .artist-bio-inner{ flex-direction: column; text-align: center; }
    .seccion-portfolio-detail .artist-social-row{ justify-content: center; }
}
@media (max-width: 600px){
    .seccion-portfolio-detail .artist-bio-section,
    .seccion-portfolio-detail .artist-photo-grid-section{ padding: 48px 20px; }
}

/*PORTFOLIO LIGHTBOX*/
body.portfolio-lightbox-open{ overflow: hidden; }
.portfolio-lightbox{
    position: fixed; inset: 0; z-index: 9999;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0,0,0,0.9);
    opacity: 0; visibility: hidden; pointer-events: none;
    transition: opacity .3s ease;
    padding: 24px;
}
.portfolio-lightbox.is-open{ opacity: 1; visibility: visible; pointer-events: auto; }
.portfolio-lightbox img{
    height: 100%; width: auto; max-width: 100%;
    object-fit: contain;
    display: block; border-radius: 4px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}
.portfolio-lightbox-close{
    position: fixed; top: 24px; right: 24px;
    width: 44px; height: 44px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,0.1); color: #fff; border: none;
    font-size: 18px; cursor: pointer;
    transition: background .2s ease;
}
.portfolio-lightbox-close:hover{ background: rgba(255,255,255,0.25); }
.portfolio-lightbox-nav{
    position: fixed; top: 50%; transform: translateY(-50%);
    width: 52px; height: 52px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,0.1); color: #fff; border: none;
    font-size: 22px; cursor: pointer;
    transition: background .2s ease;
}
.portfolio-lightbox-nav:hover{ background: rgba(255,255,255,0.25); }
.portfolio-lightbox-prev{ left: 24px; }
.portfolio-lightbox-next{ right: 24px; }
@media (max-width: 600px){
    .portfolio-lightbox{ padding: 16px; }
    .portfolio-lightbox-close{ top: 12px; right: 12px; }
    .portfolio-lightbox-nav{ width: 40px; height: 40px; font-size: 18px; }
    .portfolio-lightbox-prev{ left: 8px; }
    .portfolio-lightbox-next{ right: 8px; }
}
