@font-face {
  font-family: "IconSet";
  local("»");
  src:url("/uploads/fonts/residenciacumlaude.eot");
  src:url("/uploads/fonts/residenciacumlaude.eot?#iefix") format("embedded-opentype"),
	url("/uploads/fonts/residenciacumlaude.woff2") format("woff2"),
    url("/uploads/fonts/residenciacumlaude.woff") format("woff"),
    url("/uploads/fonts/residenciacumlaude.ttf") format("truetype"),
    url("/uploads/fonts/residenciacumlaude.svg#webiconset") format("svg");
  font-weight: normal;
  font-style: normal;
}

.georama-000 {
  font-family: "Georama", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

*	{ margin:0; padding:0 }
a { text-decoration: none; color: rgb(159, 63, 6); }
a:hover { color: rgb(225, 160, 5); }
.ico { font-family: IconSet!important }
div.container { width: 85%; margin: 0 auto }
.justify { text-align: justify }
.center { text-align: center!important }
.flexclear { flex: 1 0 100% }
.maxw { max-width: 100% }
.flex { display: flex }
.w100 { width: 100%!important}
p.w100 img { width: 100%!important}
.center { text-align: center }
.link { color: orange; cursor: pointer }
.link:hover { color: red }
img.imgR { float: right; margin: 0.1rem 1rem }
img.imgL { float: left; margin: 0.1rem 1rem }
.w33 { width: 33% }
.container { width: 85%; margin: 0 auto }
span.vf { font-weight:bold!important; color: rgb(11,57,48)!important}
.f100 { flex: 1 0 100% }
.mw100 {max-width: 100% }
div.band { padding: 2rem 0}
div.band.greenlight { background-color: #c8d2b0 }
div.boxed { box-sizing: border-box; padding: 0.5rem 0.4rem }
div.boxed.greenlight { background-color: #c8d2b0; color: #000000; font-family: Geroma, Arial; font-weight: bold; font-size: clamp(1.02rem,1.8vw,1.6rem); text-align:center }
img.border {border: 0.6em solid #822f06; border-radius: 0.8rem}
img.floatR { float: right; margin-left: 1.4rem; margin-bottom: 0.5rem}
.grande { font-size: clamp(1.25rem,2vw,1.7rem)}

/* Estructura general centrada */
main {
  display: inline-block;
  width: 100%;
}

header.main div.top { display: flex; flex-wrap: wrap; }
header.main div.logo { display: flex; width: 100%; flex: 0 1 22%; padding-top: 1rem;}
header.main div.logo img { width: 100%; min-height: 96px;max-width: 400px;}
div.lang-sel { flex: 0 1 30%;text-align: right;margin-bottom: 0.8rem;}
div.lang-sel a { display: inline-block; margin: 0.1rem 0.35rem }
div.lang-sel a img { max-width: 30px; padding: 0.1rem 0.3rem; border-radius: 0.6rem}
header.main div.menuTop { flex: 1 0 auto; display: flex;flex-direction: column;justify-content: space-between;padding-top: 2.2rem;flex-wrap: wrap;}
ul.menu { list-style-type: none; display: flex; flex: 0 1 auto;align-self: end;flex-wrap: wrap;}
ul.menu li { display: inline-flex;  flex: 0 1 auto;}
ul.menu li a { display: inline-block; padding: 0.2rem 0.86rem; cursor: pointer }
ul.menu li span.ico { font-size: clamp(1.3rem,2vw,1.7rem); vertical-align: middle; padding-bottom: 0.7rem}

/*header.main div.menuTop */
ul.menu li a { color: rgb(157, 73, 12); }
ul.menu li a:hover  { color: rgb(238, 121, 36); text-decoration: none }
ul.menu li a span.txt { font-family: Georama, sans-serif; font-size: clamp(1.11rem,1.9vw,1.18rem); margin-left: 0.5rem;}

div.menu-clone { flex: 1 0 100%; text-align: center; display: flex; justify-content: center }
div.menu-clone ul.menu { margin: 0.5rem auto; display: flex; flex-wrap: wrap; justify-content: center }
div.menu-clone ul.menu li { margin: 0.7rem 0}
div.menu-clone ul.menu li a { color: rgb(244, 217, 188); }
div.menu-clone ul.menu li a:hover { color: #FFFFFF; text-decoration: none }

div.language-sel { flex: 1 0 auto; text-align: right;display: none;}
div.language-sel ul { list-style-type: none }
div.language-sel ul li { display: inline-block; margin: 0 0.3rem; color: #A0A0A0 }
div.language-sel ul li a { display: inline-block; padding: 0.2rem 0.4rem; color: rgb(11,57,48); font-family: Georama, sans-serif;}
div.language-sel ul li a:hover { color: rgb(159,197,36) }

div.slider { width: 100%; position: relative; overflow: hidden; height: calc(100vw * 9 / 16); max-height: 960px}

div.gradTop:before {
  content: '';
  display: inline-block; width: 100%; background: #FFFFFF;
  height: 3rem;
  position:absolute;top:0;left:0;right:0;
  background: #FFFFFF;
background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 45%, rgba(255, 255, 255, 1) 100%);
  z-index: 99;
}
div.slider img { width:100%}

div.phrase { font-family: Georama, Arial; font-size: clamp(1.8rem,4vw,2.6rem); color: #FFFFFF; text-shadow: 2px 2px 4px rgba(0,0,0,0.7)}
div.slide div.txt { position:absolute; top: 25%; left: 12%; width: auto; max-width: 40%; padding: 1.2rem 1.5rem }
div.slide div.txt span.reservar { box-shadow: 2px 2px 7px rgba(0,0,0,0.45); padding: 0.6rem 0.9rem; border-radius: 0.33rem; color: #FFFFFF; font-weight: bold; font-family: Georama, Arial; font-size: clamp(1.22rem,2vw,1.38rem); display: inline-block; margin: 1.2rem 0;
background: #E4CA21; background: linear-gradient(135deg, #E4CA21, #D56F04); cursor: pointer}
div.slide div.txt span.reservar:hover { filter: brightness(1.11); filter: hue(21deg)} 
div.txt p.head1 { font-family: Georama, Arial; font-size: clamp(1.85rem, 3.7vw, 3.4em); color: #FFFFFF; text-shadow: 2px 3px 5px rgba(0,0,0,0.6); font-weight: bold}
div.txt p.sub1 { font-family: Georama, Arial; font-size: clamp(1.62rem, 3vw, 2.7em); color: #FFFFFF; text-shadow: 2px 3px 5px rgba(0,0,0,0.6); }
div.txt p.sub1.plazo { color: orange}

body.contact div.slider {height: calc(100vw * 9 / 18)}

div.h1 { width: 100%; margin: 0; padding: 2rem 0; text-align: center; background-color: rgb(206, 112, 43); color: #FFFFFF; font-family: Georama; border-bottom: 1rem solid rgb(102, 54, 12); }
div.h1 h1 { font-weight: normal; font-size: clamp(1.23rem, 2.3vw, 2.7rem);}

div.headlines { background-color: #FFFFFF; }
div.headlines div.container { display: flex; flex-wrap: wrap; margin: 4rem auto; justify-content: center;}
div.headlines div.box { flex: 1 0 30%; box-sizing: border-box; margin: 0.5rem;}
div.headlines div.ico { color: rgb(236, 126, 46); font-size: clamp(4.5rem,5vw,6.2rem); text-align:center;margin-bottom: 1.5rem;}
div.headlines div.ico img { border-radius: 100%; border: 0.65rem solid #d97103;}
div.headlines div.title { font-family: Geroma, sans-serif; font-weight: bold; text-align: center; font-size: clamp(1.3rem, 2vw, 1.5rem); color: rgb(108, 46, 1);}
div.headlines div.txt { padding: 1rem 0.5rem; font-family: Georama, Arial; color: #4a1d01; line-height: 150% }
div.headlines div.txt p { margin-bottom: 1.4rem; text-align: justify;font-size: clamp(1.12rem,1.23vw,1.2rem);}
div.headlines div.txt p strong { color: #823f04;}

section { margin: 5rem auto; }
section div.title { font-size: clamp(1.2rem, 3vw, 1.7rem); color: rgb(219, 119, 47); text-align: center; margin-bottom: 2rem }
section h2 span.ico { margin-right: 0.7rem}
section div.title div.ico { display: inline-block; margin-right: 0.7rem}
section div.title span.title{ font-family: Georama, Arial; font-weight: bold }
section div.title p.sub { font-family: Georama, Arial; font-weight: normal; color: #73973e; }
section div.txt { font-family: Georama, Arial; font-size: clamp(1.05rem, 1.8vw, 1.3rem); color: #3e1f0d;text-align: justify;line-height: 145%;}
section div.txt blockquote { padding-left: 2rem; margin-bottom: 1.5rem }
section div.txt p { margin-bottom: 2rem }
section div.picture { width: 100%; text-align: center }
section div.picture img { width: 100%; max-width: 1024px;}
section div.txt>ul { display: flex;  justify-content: stretch; flex-wrap: wrap;}

div.headlines.challengeboxes { display: flex; flex-wrap: wrap;width: 100%;background-color: transparent;justify-content: center;}
div.headlines.challengeboxes div.box { flex 0 1 33%; border: 2px solid; color: rgb(11,57,48); border-radius: 0.6rem; box-sizing: border-box; padding: 2rem 1.3rem; margin: 0.5rem 0.6rem;flex: 0 1 30%;background-color: #FFFFFF;box-shadow: 4px 5px 6px #0000004a;}
div.challengeboxes p.stage { font-family: Georama, Arial; font-weight: bold; color: rgb(11,57,48); font-size: clamp(1.2rem,2vw,1.8rem); text-align: center;background-color: #d8e6b3;border-radius: 0.4rem;padding: 0.3rem 0;}
div.challengeboxes div.txt ul li { list-style-type: none; padding: 0.6rem 0;  flex: 1 0 100%;width: 100%;}
div.challengeboxes div.txt ul li.bottom { flex: 1 0 auto }
div.challengeboxes div.txt ul li span.img img { max-width: 72px; float: left; margin-right: 0.9rem }
div.challengeboxes div.txt ul li.line { border-top: 1px dashed green }
div.challengeboxes div.txt ul li div p { font-weight: bold; color: rgb(11,57,48); font-size: clamp(1.3rem,2vw,1.1rem);}

body.science section div.challengeboxes div.box div.txt ul { padding-left:0 }
body.science section div.challengeboxes div.box div.txt ul li { padding-left: 0 }

section.challenge img.arrow.down { max-width: 110px; margin: 2rem auto }
section.challenge div.band.greenlight { background-image: url(/uploads/images/logo-bg-lighter.webp); background-size: 155%; background-position: left center;  background-position: 65% 20%; background-blend-mode: multiply; background-repeat: no-repeat; background-clip: border-box }


section p { font-family: Georama, Arial; font-size: clamp(1.04rem, 1.3vw, 1.6rem); color: #441c0d; margin-bottom: 1.5rem; line-height: 135% }

div.headlines.challengesbad { display: flex; justify-content: center; width: auto; background-color: transparent }
div.headlines.challengesbad div.box { flex: 0 1 auto; box-sizing: border-box; padding: 2rem 1.5rem; border: 2px solid; color: rgb(11,57,48); border-radius: 0.6rem; box-sizing: border-box; padding: 2rem 1.9rem; margin: 0.5rem 0.6rem;flex: 0 1 30%;background-color: #FFFFFF;box-shadow: 4px 5px 6px #0000004a; }
div.headlines.challengesbad div.box ul { list-style-type: none }
div.headlines.challengesbad div.box ul li { width: 100%; display: flex; justify-content: space-between }
div.headlines.challengesbad div.box ul li.line { border-top: 1px dashed green }
div.headlines.challengesbad div.box ul li span.img { flex: 0 1 auto  }
div.headlines.challengesbad div.box ul li span.img img { max-width: 100px }
div.headlines.challengesbad div.box ul li div { }
div.headlines.challengesbad div.box ul li div p { font-weight: bold; color: rgb(11,57,48); font-size: clamp(1.3rem,2vw,1.1rem);font-family: Geroma, Arial;}

div.headlines.tech { display: flex; flex-wrap: wrap }
div.headlines.tech div.box { flex: 1 0 50%; box-sizing: border-box; padding: 1.1rem }
body.science section div.box div.txt ul { padding-left: 1.5rem; }
body.science section div.box div.txt ul li { padding-left: 1.4rem }


body.science section.challenge>div.title {
  margin: 3rem 0;
	font-size: clamp(1.2rem, 2vw, 1.6rem);
	color: rgb(11,57,48);
	text-align: center;
	margin-bottom: 2rem;
}

section.team div.band.greenlight { background-image: url(/uploads/images/biotech-virofend-team-bg0.webp); background-size: cover;  }

section.team div.team { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between }
section.team div.team div.box { background-image: url(/uploads/images/logo-bg-lighter.webp); background-size: 63%; background-position: left center;  font-family: Geroma, Arial; flex: 1 0 48%; box-sizing: border-box; padding: 2rem; background-color: #FFFFFF; margin: 0.7rem; border-radius: 0.5rem; background-position: -15% -10%;box-shadow: 2px 3px 12px rgba(0,0,0,0.5);background-blend-mode: multiply;background-repeat: no-repeat;background-clip: border-box; width: 100%;}
section.team div.team div.box>div { width: 100% }
section.team div.team div.box div.person { font-weight:bold; font-size: clamp(1.1rem,2.1vw,1.6rem);display: inline;}
section.team div.team div.box div.work { margin: 0.4rem 0; font-style: italic }
section.team div.team div.box div.txt { margin-top: 1.5rem; line-height: 140%; text-align: justify } 
section.team div.team div.box div.txt p { margin-bottom: 1.5rem } 
section.team div.team div.box div.img { width: 39%; float: right;margin: 0 0 0.2em 2rem;}
section.team div.team div.box div.img img { max-width: 100%;border-radius: 1.5rem;}

div.sep { position:relative; margin: 1.5rem auto; width: 100% }
div.sep>img { width: 100% }
div.sep.highlights { height: calc(100vw * 9 / 32); overflow: hidden }
div.sep.highlights>img { margin-top: -5% }

div.sep.highlights:after {
	content: '';
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 0.8rem;
	background-color: #FFFFFF;
	margin-bottom: 0.45rem;
}



ul.libretaPrecios	{ background-image: url(/uploads/images/libreta-precios-residencia.webp); width: 584px; height: 399px; margin: 30px auto; text-align: center; list-style-type: none; }
ul.libretaPrecios li	{ text-align: center; font-family: Cabin, Arial; font-size: clamp(1.27rem,2vw, 2.1rem); color: #656565; margin: 1px auto; padding-left: 100px; transform:rotate(-3deg);
-ms-transform:rotate(-3deg);
-webkit-transform:rotate(-3deg);
text-shadow: 5px 0px 2px rgba(140, 140, 140, 0.26); }
ul.libretaPrecios li:first-child	{ padding-top: 51% }
ul.libretaPrecios li:last-child	{ margin-top: -14% }
ul.libretaPrecios li strong	{ font-weight: bold; font-size: clamp(1.4rem, 2.9vw, 2.8rem); color: #090909; display: inline-block; padding-left: 22px }



form.frm {background-color: #FFFFFF;padding: 2rem;box-sizing: border-box;border-radius: 0.8rem;box-shadow: 2px 2px 7px #646464;z-index: 1999; box-sizing: border-box;width: 85%; margin: 4rem auto; }
form.frm h2 { font-family: Lato, Arial; font-size: clamp(1.32rem,2.7vw,2.7rem); margin-bottom: 2.4rem;}
form.frm div.input-field { margin: 0.8rem auto; display: flex; flex-wrap: wrap }
form.frm label, form.frm span.ico { flex: 0 0 auto; color: #401605;  }
form.frm label {font-family: Lato, Arial;font-size: clamp(1.1rem,2.4vw,2rem);}
form.frm label[for='lopd'] {font-size: clamp(1rem,1.34vw,1.4rem);padding-left: 0.4rem}
form.frm span.ico {font-size: clamp(1.7rem,2.8vw,2.4rem);margin-right: 0.9rem}
form.frm div.input-field input, form.frm div.input-field textarea {width: 100%;flex: 1 0 100%;border: 1px solid #787878;box-sizing: border-box;padding: 0.4rem;border-top: none;border-left: none;border-right: none;border-color: #DADADA;font-family: Raleway, Arial;font-size: clamp(1.2rem,2.2vw,2.1rem);color: #a85913;}
form.frm input[type='button'], form.frm input[type='submit'] {border: none;border-radius: 0.3rem;padding: 0.3rem 0.9rem;box-sizing: border-box;font-family: Lato, Arial;font-size: clamp(1.2rem,1.9vw,2.2rem);margin-right: 0.8rem;color: #FFFFFF;background-color: #e32828;cursor: pointer}
form.frm div.botonera { margin-top: 2rem; text-align: center }
form.frm div.botonera input:hover { filter: brightness(114%)}
form.frm input[type='submit'] { background-color: #78a613; }
form.frm div.close {position: absolute;top: 1.5rem;right: 1rem;}
form.frm div.close span.ico { background-color: #e63333; color: #FFFFFF; border-radius: 100%; padding: 0.4rem; cursor:pointer }
form.frm div.close span.ico:hover { background-color: #f74b39 }

div.sent { text-align: center; padding: 1.5rem 5rem; box-sizing: border-box }
div.sent p, div.sent span.ico { color: #7dbd51 !important }
div.sent span.ico { font-size: calc(6rem + 0.9vw)!important }
div.sent p { font-family: 'HP Simplified', Arial; font-size: calc(0.9rem + 0.8vw) }


iframe.map { width: 100%!important;; height: calc(100vw * 9 / 29)!important;}

footer { background-color: #693712; color: #FBD4AD; padding: 5rem 0; padding-bottom: 0; position: relative;display: flex;flex-direction: column;justify-content: flex-end;justify-content: center;}
footer:before {
  content: '';
  width: 100%; 
  position:absolute;
  top:0;
  left:0;
  right:0;
  height: 0.22rem;
  background-color: #FFFFFF;
  margin-top: 0.6rem;
}
footer div.box { flex: 0 1 auto; box-sizing: border-box; padding: 0.7rem 1rem; border-right: 1px dashed rgb(55, 15, 2);}
footer div.box:last-child { border-right: none}
footer div.container.flex { align-items: stretch; justify-content: center;margin-bottom: 1rem; flex-wrap: wrap;width: 95%;}
footer div.box.info { display: flex;  flex: 0 1 40% }
footer div.box.info div.logo { flex: 0 1 auto; width: 100%;max-width: 400px;}
footer div.box.info div.txt { flex: 0 1 auto; box-sizing: border-box; padding: 0.2rem 1rem; text-align: justify;font-family: Georama, sans-serif;line-height: 135%;color: #FFFFFF;}
footer div.box.info div.txt strong { color: #FFFFFF;}
footer div.box.info p.sep { text-align: center; margin-top: 1rem}
footer div.box.info p.sep img { max-width: 4rem }

footer div.box.address a { color: #f7cda3; }
footer div.box.address a span { color: #FBD4AD}
footer div.box.address a:hover span { color: #f7f1de; }

footer div.copyright { background-color: rgb(91, 43, 8); text-align: center; flex: 1 0 100% }
footer div.copyright div.container ul { display: flex; justify-content: center; }
footer div.copyright ul li { flex: 0 1 auto; display: inline-block;  color: rgb(236, 222, 179); font-family: Georama, sans-serif; padding: 0.7rem 0.8rem; }
footer div.copyright ul li a { color:rgb(236, 222, 179); }
footer div.copyright ul li a:hover { color:#FFFFFF; }

footer div.headquarters img { max-width: 340px}

footer div.logo img { filter: brightness(100) saturate(0); max-width: 12rem; }
footer div.box ul { list-style-type: none }
footer div.box ul li span.txt, footer div.box ul li>strong { font-family: Georama, sans-serif}
footer div.box ul li>strong { margin-bottom: 0.8rem; display: inline-block}

footer div.box ul li span.ico { font-size: clamp(1.4rem,2vw,3.8rem);padding-top: 0.5rem;}
footer div.footer-data li.flex { margin-bottom: 1rem}
footer div.rrss span.rs { margin: 0 0.5rem }
footer div.rrss span.rs a:hover { color: rgb(249, 228, 207); }

footer div.box.headquarters ul li.flex { flex-wrap:wrap}

footer div.footer-data i { color: #dd844e;}

div.kit { margin: 1.5rem auto; text-align: center }
div.kit img { max-width: 20% }

#lssi {width: 85%;border: 1px solid #6a3108;border-radius: 0.7rem;background: url('/uploads/images/logo-bg-lighter.webp') rgb(251, 230, 215);box-sizing: border-box;padding: 2rem;margin: 0 auto;position: fixed;box-shadow: 3px 5px 17px rgba(0,0,0,0.55); top: 50%; left: 50%; transform: translate(-50%, -50%);max-height: 85vh;overflow-y: auto;font-family: Roboto, Arial;background-size: 23%;background-repeat: no-repeat;background-blend-mode: multiply;background-position: center left;z-index: 100;}
#lssi div.info p { font-size: clamp(1rem,1.1vw,1.5rem); margin-bottom: 1.25rem; color: #585858; text-align: justify;}
#lssi div.info p:first-child { font-size: clamp(1.1rem,1.35vw,1.9rem); margin-bottom: 1.5rem; color: #121212; text-align: center;}
#lssi #viewExtCookies { cursor:pointer; color: #1863d9; }
#lssi #viewExtCookies:hover { cursor:pointer; color: orange }
#lssi #listExtCookies>p:first-child { font-weight: bold; text-align: center; background-color: #D5A486;padding: 0.56rem 0;border-radius: 0.3rem;color: #F2F2ED;}
#lssi #listExtCookies table { width: 90%; margin: 0 auto }
#lssi #listExtCookies div.tipoTxt { padding: 0.2rem 0 0.8rem 0;font-family: Roboto, Arial; font-size: clamp(0.9rem,0.82vw,1.4rem); color: #646464}
#lssi #listExtCookies table tr:not(.colspan) td:first-child { padding-left: 2.5rem }
#lssi #listExtCookies table tr.colspan>td { padding-top: 1.5rem}
#lssi #listExtCookies table tr td p.nombre, #lssi #listExtCookies table tr td p.nombre a { color: #1755e6; }
#lssi #listExtCookies table tr td p.nombre a:hover { color: #ea6e00; }
#lssi #listExtCookies table tr td div.txt { color: #454545; font-size: clamp(0.95rem,1.05vw,1.3rem);}
#lssi div.botonera { width:100%; margin-top: 1.3rem; display: flex; flex-wrap: wrap; justify-content: center; }
#lssi div.botonera>span.btn { border-radius: 0.4rem}
#lssi div.botonera span.cookieSel { border: 1px solid #515050; }
#lssi div.botonera span.cookieSel { font-family: Tahoma, Arial; color: #353535; font-size: clamp(1.1rem,1.4vw,1.9rem); margin: 0.5rem 0.8rem; box-sizing: border-box; padding: 0.35rem 0.85rem;cursor: pointer;}
#lssi div.botonera span.cookieSel span.ico { padding-right: 0.6rem; vertical-align: middle }
#lssi div.botonera #lssiBtnAll { background-color: #d0570e; color: #FAFAFA}
#lssi div.botonera #lssiBtnAll:hover {background-color: #f48b1b; color: #FFFFFF }
#lssi div.botonera #lssiBtnOK { background-color: #6B7094; color: #FAFAFA}
#lssi div.botonera #lssiBtnOK:hover {background-color: #6B7094; color: #FFFFFF }
#lssi div.botonera #lssiBtnKO { background-color: #aa6a7c; color: #FAFAFA }
#lssi div.botonera #lssiBtnKO:hover { background-color: #945a6c; color: #FFFFFF }



@media (max-width:1300px){
  div.slider { height: calc(100vw * 9 / 18); }
  header.main div.menuTop { width: 100%; flex-wrap: wrap;justify-content: center;flex-direction: row;}
  header.main div.menuTop div.lang-sel { flex: 1 0 100%; width: 100%; box-sizing: border-box; text-align: center;}
  header.main div.logo { display: flex; width: 100%; flex: 1 0 100%; text-align: center; justify-content: center }
  div.language-sel { text-align: center; margin: 0.8rem auto;display: none;}
  header.main ul.menu { display: flex; justify-content: center; width: 100%;flex: 1 0 100%;}
  header.main ul.menu li { margin: 0.6rem auto; text-align: center }
  
  
  
	footer div.box.info { flex: 1 0 100%; border-bottom: 1px dashed rgb(159,197,36); border-right: none }
	footer div.box { margin: 0.4rem 0 }
	
}

@media (max-width:960px){
  div.slider { height: calc(100vw * 9 / 13) }
  div.slider div.slide img { min-height: calc(100vw * 9 / 12); }
  div.container { width: 95% }
  div.headlines div.box { flex: 1 0 100% }
  div.menu-clone ul.menu { margin: 0 auto }
  
  div.headlines.challengeboxes div.box { flex: 1 0 100% }
  section.team div.team div.box { background-size: 120%; background-position: 140% 10%; background-repeat: no-repeat }
  section.team div.team div.box div.img {	width: 100%;float: none; margin: 0 auto; text-align: center;margin-bottom: 1.5rem;}
  section.team div.team div.box div.person, section.team div.team div.box div.work { text-align:center; display: inline-block;font-size: clamp(1.3rem,2.4vw,1.8rem);}
  section.team div.team div.box div.person { font-size: clamp(1.5rem,2.4vw,2rem) }
  section div.txt img.floatR, section div.txt img.floatL { float: none; margin: 1rem auto; display: block;}
	footer div.box.info { flex: 1 0 100%; border-bottom: 1px dashed rgb(236, 195, 171); border-right: none; flex-wrap: wrap }
	footer div.box.info div.logo { flex: 1 0 100%; text-align: center;margin-bottom: 1.2rem;}
	footer div.box { flex: 0 0 auto; width: auto; border: none }
	div.kit img { max-width: 40% }
  form.frm { width: 97%}
  
  div.phrase { font-size: clamp(1.34rem,4vw,2.6rem) }
  div.slide div.txt {top: 10%; left: 5%; max-width: 50% }  
  div.txt p.head1 { font-size: clamp(1.56rem, 3.7vw, 3.4em)}
  div.txt p.sub1 { font-size: clamp(1.38rem, 3vw, 2.7em) }
  
  ul.libretaPrecios {	width: 95%; height: calc(95vw * 9 / 8.96); background-position:center; background-size: contain; background-repeat: no-repeat; background-position-x: -1rem }
  ul.libretaPrecios li { font-size: clamp(1.47rem,2vw, 2.1rem);	padding-left: 10% }
  ul.libretaPrecios li strong { font-size: clamp(1.8rem, 2.9vw, 2.8rem) }
}


div.phContainer { position:absolute; top: 30%; width: 45%; padding: 2rem; background-color: rgba(255,255,255,0.6); border-radius: 0.3rem; box-shadow: 2px 3px 6px rgba(128,128,128,0.3) }
div.phContainer.left { left: 15% }
div.phContainer.right { left: 15% }


.kenburns-slider {
  position: relative; 
  width: 100%; 
  height: 100vh; 
  overflow: hidden;
}
.kenburns-slider .slide {
  position: absolute; 
  top: 0; left: 0; 
  width: 100%; 
  height: 100%; 
  object-fit: cover; 
  opacity: 0; 
  transition: opacity 1s ease-in-out;
}
.kenburns-slider .slide.active {
  opacity: 1; 
  z-index: 1;
}
.kbSlider .play-button {
  position: absolute; 
  top: 50%; 
  left: 50%; 
  transform: translate(-50%, -50%); 
  z-index: 3; 
  background: #c60b1e9F!important;
  box-shadow: 2px 3px 4px rgba(0,0,0,0.6);
  color: white; 
  padding: 20px 40px; 
  cursor: pointer; 
  font-size: 1.5em; 
  border-radius: 10px;
}
.kbSlider .play-button:hover{
  background: #c60b1e!important;
}
.text-overlay {
  position: absolute; 
  top: 0; bottom: 0; 
  width: 50%; 
  padding: 2em; 
  color: #fff; 
  font-size: 1.2em; 
  display: flex; 
  flex-direction: column; 
  justify-content: center; 
  pointer-events: none; 
  z-index: 2; 
  opacity: 1; 
  background: rgba(0,0,0,0.3);
}
.text-overlay.left { left: 0; text-align: left; }
.text-overlay.right { right: 0; text-align: right; }
