/*
gris fort: #5f5b58
gris clar: #b0a8a6
verd: #747637
taronja: #c1823f
marro clar: #ae9988



Salmó: #d98d76
verd oliva: #868a3e
carn: #eccbac
negre: #433b39


#fee4cb
#bed538cc
*/


/* La tipografia Cambria (títols) es declara a css/tipografies.css */

h1, h2, h3, h4, h5, h6{
	font-family: Cambria !important;
}


::selection {
  background: #eaa68b;
  color: white; /* WebKit/Blink Browsers */
}
::-moz-selection {
  background: #eaa68b;
  color: white; /* Gecko Browsers */
}

a:hover{
	transition: all 0.2s;
	color: #eaa68b !important;
}

.txtupper{
	text-transform: uppercase;
}

.tright{
	text-align: right;
}

.posab{position: absolute;}
.posre{position: relative;}
.disnone{display: none;}
.disblo{display: block;}
.disinblo{display: inline-block;}

.w100{width: 100%;}
.w-auto{width: auto;}

.cwhite{color: white;}
.cblack{color: black;}
.cgray{color: #54595F;}

.fs17{font-size: 17px;}
.fs19{font-size: 19px;}
.fs22{font-size: 22px;}
.fs24{font-size: 24px;}
.fs29{font-size: 29px;}
.fs33{font-size: 33px;}
.fs39{font-size: 39px !important;}
.fs44{font-size: 44px;}


.mb0{margin-bottom: 0px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.mb50{margin-bottom: 50px;}
.mb60{margin-bottom: 60px;}
.mb70{margin-bottom: 70px;}
.mb80{margin-bottom: 80px;}
.mb90{margin-bottom: 90px;}
.mb100{margin-bottom: 100px;}

.mt0{margin-top: 0px;}
.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mt60{margin-top: 60px;}
.mt70{margin-top: 70px;}
.mt80{margin-top: 80px;}
.mt90{margin-top: 90px;}
.mt100{margin-top: 100px;}

.pb0{padding-bottom: 0px;}
.pb5{padding-bottom: 5px;}
.pb10{padding-bottom: 10px;}
.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.pb40{padding-bottom: 40px;}
.pb50{padding-bottom: 50px;}
.pb60{padding-bottom: 60px;}
.pb70{padding-bottom: 70px;}
.pb80{padding-bottom: 80px;}
.pb90{padding-bottom: 90px;}
.pb100{padding-bottom: 100px;}

.pt0{padding-top: 0px;}
.pt10{padding-top: 10px;}
.pt20{padding-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.pt50{padding-top: 50px;}
.pt60{padding-top: 60px;}
.pt70{padding-top: 70px;}
.pt80{padding-top: 80px;}
.pt90{padding-top: 90px;}
.pt100{padding-top: 100px;}

.pl40{
	padding-left: 40px;
}

.p-20{padding: 20px;}

.bgbottom{background-position: bottom !important;}
.bgcenter{background-position: center !important;}



.contactbtn .theme-btn-one{
	font-size: 23px;
	padding: 22px 35px;
}



.h1title{
	color: white;
	font-size: 3.5rem;
}

a.btn-line:hover{
	background-color: white !important;
}

a.menu-item:hover{
	color: white !important;
}

.bannercontact2 a:hover a.btn-main:hover{
	color: #6c737b !important;
}

#sc-carousel a:hover{
	color: white !important;
}

.serveisllistats h3{
	font-size: 2.2rem;
	line-height: 1em;
	color: #eaa68b;
}

.serveisllistats .hover:hover h3{
	color: #414b5a;
}

.serveisllistats {
    border: 1px solid #eaa68b;
    text-align: center;
}

a.menu-item.nohovermenu:hover{
	color: #363F4B !important;
}

span.btn-line{
	border: 1px solid;
    border-radius: 20px;
    padding: 10px 20px;
}

.transport{
    background-color: rgb(235 171 154 / 60%);
    padding: 30px 20px;
    border-radius: 35px;
    color: #414b5a;
    text-align: left;
}

.ctaonatenc{
	font-size: 1rem;
}

.colorsalmo{
	color: #eaa68b;
}


/* RGPD */
.skin-light-theme #bpx-rgpd-cookie-accept, .skin-light-theme #bpx-rgpd-cookie-change-settings, .skin-light-theme #bpx-rgpd-cookie-read-more{
  padding: 7px;
  font-family:Montserrat;
}
#bpx-rgpd-cookie-popup .ct-skin-light-icon{
  display: none !important;
}
.ct-container{
  padding: 0px 15px 60px;
}
#bpx-rgpd-cookie-popup .ct-header-popup h2{
  margin-top: 10px;
  padding-left: 15px;
}

.skin-light-theme h2.ct-header-popup{
  margin-top: 10px;
  margin-bottom: 5px;
}
/* RGPD END*/



/*Tot més gran de mobil*/
@media only screen and  (min-width : 767px) {

}

/*Mes gran de tablet vertical*/
@media only screen and (min-width: 992px){


}


/*Entre tablet vertical i horitzontal*/
@media only screen and (min-width: 991px) and (max-width : 1200px){

}

/*Tablet Horitzontal*/
@media only screen and (max-device-width : 1024px) and (orientation : landscape) {
	.cc-revoke.cc-left{
	    display: none;
	}

	.copyrights .pull-left, .copyrights .pull-right{
		float: none !important;
	}
}



/* Tablet (Vertical) */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {


}


/*Mes petit de tablet vertical*/
@media only screen and (max-width: 992px){
	.cc-revoke.cc-left{
	    display: none;
	}

	.copyrights .pull-left, .copyrights .pull-right{
		float: none !important;
	}

	.bgcustom{
		background-position: center !important;
	}
}



/*Tots els mobils*/
@media only screen and  (max-width : 767px) {
	.cc-revoke.cc-left{
	    display: none;
	}

	.copyrights .pull-left, .copyrights .pull-right{
		float: none !important;
	}

	#back-to-top-2{
		    bottom: 20px;
	}
}

/*Mobil horitzontal*/
@media only screen  and (min-device-width: 375px)  and (max-device-width: 812px) and (orientation: landscape) { 

}





















/* =====================================================================
 * AFEGITS WEBSDEN (octubre 2026): no modifiquen el disseny aprovat
 * ===================================================================== */

/* Les imatges porten width/height (evita salts de disseny en carregar);
 * l'alçada real continua sent proporcional, com abans. */
:where(img[width][height]){ height: auto; }

/* Enllaç "Vés al contingut": invisible fins que s'hi arriba amb el teclat */
.lh-skip{
	position: absolute;
	left: 16px;
	top: -100px;
	z-index: 30000;
	background: #fff;
	color: #363F4B;
	padding: 10px 16px;
	border-radius: 6px;
	box-shadow: 0 2px 10px rgba(0,0,0,.15);
}
.lh-skip:focus{ top: 16px; }

/* Focus visible per a la navegació amb teclat */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, [tabindex]:focus-visible{
	outline: 2px solid #c1623f;
	outline-offset: 3px;
}

/* Etiquetes amb aspecte de títol però sense ser encapçalaments */
.lh-titol{
	font-family: Cambria !important;
	color: var(--heading-font-color);
}
.text-light .lh-titol{ color: #ffffff; }
label.lh-titol{ display: block; }

/* Selector d'idioma dins del menú */
#mainmenu li.lh-idioma a{ letter-spacing: 1px; }

/* Acordions (preguntes freqüents): el títol és un botó accessible */
.lh-acordio-h{
	margin: 0;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: normal;
}
button.accordion-section-title{
	background: none;
	border: 0;
	border-bottom: solid 1px #dddddd;
	border-radius: 0;
	text-align: left;
	font-size: var(--body-font-size);
	line-height: var(--body-font-line-height);
	letter-spacing: 0;
	color: var(--heading-font-color);
	padding: 15px 0;
}
.accordion-section-content p:last-child{ margin-bottom: 0; }

/* Bloc de testimonis (només si MOSTRAR_TESTIMONIS = true) */
.lh-testimoni{ margin: 0; }
.lh-testimoni p{ font-family: Cambria !important; color: #ffffff; }

/* Ajuda i informació bàsica del formulari */
.lh-ajuda{ display: block; font-size: 14px; line-height: 1.5; margin-top: 6px; opacity: .85; }
.lh-info-rgpd{ font-size: 13px; line-height: 1.5; margin-top: 10px; opacity: .85; }

/* Pàgina legal */
#lh-legal h2{ margin-top: 50px; }
#lh-legal h3{ font-size: 22px; margin-top: 28px; }
#lh-legal ul{ padding-left: 20px; }
.lh-legal-index{ list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 30px; }

/* Animacions d'entrada (WOW): mentre esperen, el contingut queda transparent
 * en lloc d'ocult, perquè els lectors de pantalla i els cercadors el puguin
 * llegir sense haver de fer scroll. L'efecte visual és el mateix. */
.wow[style*="visibility: hidden"]{ visibility: visible !important; opacity: 0; }

/* Moviment reduït: sense animacions d'entrada (el contingut es veu igual) */
@media (prefers-reduced-motion: reduce){
	.wow, .wow.char{ visibility: visible !important; opacity: 1 !important; animation: none !important; -webkit-animation: none !important; }
	*{ scroll-behavior: auto !important; }
}

/* =====================================================================
 * "El meu camí cap a la sexologia" (Sobre mi)
 * Línia ondulada amb tres fites, segons la imatge de referència.
 * ===================================================================== */
.lh-cami{ overflow: hidden; }
.lh-cami-titol{ margin-bottom: 18px; }
.lh-cami-sep{
	display: block;
	width: 46px;
	height: 2px;
	margin: 0 auto 50px;
	background: var(--primary-color);
}
.lh-cami-recorregut{ position: relative; }
.lh-cami-ona{ display: none; }
.lh-cami-fites{
	list-style: none;
	margin: 0;
	padding: 0;
}
.lh-cami-fita{
	position: relative;
	padding: 0 0 0 0;
	margin-bottom: 44px;
}
.lh-cami-fita:last-child{ margin-bottom: 0; }
.lh-cami-num{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #df9b7d;
	color: #ffffff;
	font-family: Cambria, Georgia, serif;
	font-size: 20px;
	line-height: 1;
	box-shadow: 0 0 0 6px rgba(234,166,139,.18);
}
.lh-cami-punts{
	display: block;
	position: relative;
	width: 2px;
	height: 34px;
	margin: 6px 0 14px 21px;
	background-image: linear-gradient(to bottom, #df9b7d 40%, rgba(255,255,255,0) 0%);
	background-size: 2px 6px;
	background-repeat: repeat-y;
}
.lh-cami-punts:after{
	content: "";
	position: absolute;
	left: -2px;
	bottom: -8px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #df9b7d;
}
.lh-cami-fita h3{
	font-size: 24px;
	line-height: 1.3;
	letter-spacing: -0.2px;
	margin: 0 0 14px;
}
.lh-cami-fita p{
	font-size: 15px;
	line-height: 1.85;
	margin: 0;
}

@media (min-width: 992px){
	.lh-cami-recorregut{ padding-top: 0; }
	.lh-cami-ona{
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 120px;
		overflow: visible;
		pointer-events: none;
	}
	.lh-cami-ona path{
		fill: none;
		stroke: #e3a68b;
		stroke-width: 1.5px;
	}
	.lh-cami-fites{
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		padding: 0 2% 0 4%;
	}
	.lh-cami-fita{
		margin: 0;
		padding: 0;
	}
	.lh-cami-fita h3, .lh-cami-fita p{ max-width: 86%; }
	/* Cada fita baixa fins a l'alçada on la línia passa pel cercle
	 * (centres a 40, 88 i 58 px de la línia: vegeu el <path> de nosaltres.php) */
	.lh-cami-fita-1{ margin-top: 18px; }
	.lh-cami-fita-2{ margin-top: 66px; }
	.lh-cami-fita-3{ margin-top: 36px; }
	/* Cercles al 38% de cada columna (coincideix amb la línia ondulada) */
	.lh-cami-num{ margin-left: calc(38% - 22px); position: relative; z-index: 1; }
	.lh-cami-punts{ margin: 6px 0 22px calc(38% - 1px); }
}

/* Menú mòbil obert: fons opac perquè el títol de la portada no es vegi
 * a través de les opcions del menú (abans se superposaven). */
@media (max-width: 991px){
	header.menu-open{ background: #ffffff !important; }
}

/* Menú d'escriptori en pantalles just per sobre de 993 px: en castellà els
 * textos són més llargs i el menú passava a dues línies. */
@media (min-width: 993px) and (max-width: 1099px){
	#mainmenu > li > a{ letter-spacing: 0; }
}

/* D3 · Franja de contacte (Sobre mi, Vic, Ripoll) en tauleta i mòbil
 * (refeta el 28/10/2026; abans el tema n'amagava el contingut i quedava
 * una franja buida). Tauleta: dues columnes i la tercera a tot l'ample.
 * Mòbil: una columna amb icones més petites. */
@media only screen and (max-width: 991.98px){
	section.bannercontact2{ padding-top: 36px !important; padding-bottom: 36px !important; }
	.bannercontact2 .fs-60{ font-size: 40px; width: 44px; text-align: center; flex: none; }
	.bannercontact2 .row{ --bs-gutter-y: 1.5rem; }
	.bannercontact2 .hs-4{ font-size: 1.15rem; }
	.bannercontact2 a{ overflow-wrap: anywhere; }
}
