@charset "UTF-8";
/*
Theme Name: Seinin
Theme URI: http://bufeteseinin.com/
Author: Bumerang 180
Author URI: https://bumerang180.com
Description: Web design for Bufete Seinin. Compatible con WP 7.x, PHP 8.4.7 y Bootstrap 5.3.3.
Version: 2026.1
Text Domain: seinin

Cyan #0068A7 rgb(0,104,167)
Green #00ab3d rgb(0,171,61)
Blue #0B2E62 rgb(11,46,109)
*/

/* 1. Carga optimizada de tipografías de Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=IM+Fell+French+Canon&family=Raleway:ital,wght@0,500;0,600;0,700;1,500;1,600;1,700&display=swap');

body {
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
}

img {
	max-width: 100%;
	height: auto;
}

/* 2. Colores y Fondos de Marca */
.bg-transparent-white {
	background: rgba(255, 255, 255, 0.75);
}

.text-green,
.navbar .text-green .nav-link {
	color: #00ab3d;
}
.text-blue,
.navbar .text-blue .nav-link {
	color: #0B2E62;
}
.text-cyan,
.navbar .text-cyan .nav-link { 
	color: #0068A7;
}

.bg-green  {
	background-color: #00ab3d !important;
}
.bg-blue {
	background-color: #0B2E62 !important;
}
.bg-cyan { 
	background-color: #0068A7 !important;
}

/* 3. Botones Personalizados */
.btn-blue,
.btn-blue:hover {
    color: #fff;
    background-color: #0B2E62;
    border-color: #fff;
}
.btn-outline-blue,
.btn-outline-blue:hover {
    color: #0B2E62;
    background-color: #fff;
    border-color: #0B2E62;
}
.btn-cyan,
.btn-cyan:hover {
    color: #fff;
    background-color: #0068A7;
    border-color: #fff;
}
.btn-outline-cyan,
.btn-outline-cyan:hover {
    color: #0068A7;
    background-color: #fff;
    border-color: #0068A7;
}
.btn-green,
.btn-green:hover {
    color: #fff;
    background-color: #00ab3d;
    border-color: #fff;
}
.btn-outline-green,
.btn-outline-green:hover {
    color: #00ab3d;
    background-color: #fff;
    border-color: #00ab3d;
}

/* 4. Navegación y Cabecera */
.navbar .nav-link {
	text-transform: uppercase;
	font-size: 0.8em;
	font-weight: 600;
}

.navbar-brand img {
	width: 200px;
	height: auto;
}

/* 5. Pie de página (Footer) */
footer {
	clear: both;
}

footer #menu-social-menu {
	padding: 0;
	margin: 0;
	list-style: none;
}

footer #menu-social-menu li {
	display: inline-block;
	width: 1.5em;
	font-size: 1.5em;
	color: #FFF;
	overflow: hidden;
	position: relative;
}

footer #menu-social-menu li a {
	display: inline-block;
	width: 1em;
	color: transparent;
	background: transparent;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0; 
}

footer .contact-details ul,
footer .contact-details li {
	margin: 0;
	padding: 0;
	list-style: none;
}

footer .contact-details {
	font-size: 0.8em;
	color: #FFF;
}

footer .contact-details a {
	color: #FFF;	
	font-family: 'Raleway', sans-serif;
	padding-left: 0.5em;
	text-decoration: none;
}

footer .contact-details a:hover {
	text-decoration: underline;
}

/* 6. Entradas de blog y Páginas */
.entry {
	padding-bottom: 1em;
}

.entry h2.title {
	font-weight: 700;
	color: #0B2E62;
	padding-top: 1em;
	padding-bottom: 1em;
}

.entry h4 {
	font-weight: 600;
}

.logo img {
	width: 120px;
	height: auto;
}

/* 7. Separadores y Citas */
.article-divider {
	border-top: 3px solid #00ab3d;
}

ul.list {
	padding: 0;
	list-style-type: none;
}

ul.list li {
	border-left: solid 3px #0068A7;
	padding: 0.25em 0em 0.25em 1em;
	margin: 0 0 0.5em 0;
	background: #f8f9fa;
}

.quotation {
	background:	#0B2E62;
	color: #FFF;
	padding: 1em 1.5em;
	position: relative;
}

.quotation p::before {
	content: "\201c";
	font-family: 'IM Fell French Canon', serif;
	font-size: 15em;
	line-height: 1;
	color: rgba(255, 255, 255, 0.1);
	position: absolute;
	top: -10px;
	left: 5px;
}

.quotation cite {
	display: block;
	text-align: right;
	font-size: 0.8em;
}

/* 8. Integración con WooCommerce */
.woocommerce ul.products li.product .woocommerce-loop-category__title, 
.woocommerce ul.products li.product .woocommerce-loop-product__title, 
.woocommerce ul.products li.product h3 {
    text-align: center;
}

/* 9. MetaSlider y Diapositivas */
.slideshow .metaslider .flexslider .slides .msHtmlOverlay .layer a,
.slideshow .metaslider .flexslider .slides .msHtmlOverlay .layer a:hover {
	color: #FFF;
	text-decoration: none;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .description {
	color: #FFF;
	text-shadow: 0.1em 0.1em 0.2em rgba(0,0,0,1);
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .description h2 strong {
	font-size: 2.5rem;
	font-weight: 700;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .description h2,
.metaslider .flexslider .slides .msHtmlOverlay .layer .description h3 strong { 
	font-size: 1.6rem;
	font-weight: 700;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .description h3 {
	font-size: 1.1rem;
	font-weight: 600;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .description p {
	font-size: 1rem;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .btn {
	font-size: 1rem;
	padding: 0.375rem 0.75rem;
	margin: 1em 0;
	color: #FFF;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .btn-outline-light:hover {
	background: transparent;
	color: #FFF;
}

.metaslider .flexslider .slides .msHtmlOverlay .layer .sello img {
	opacity: 0.5;
}

.metaslider .flex-control-nav {
	bottom: 80px;
}

.slideshow .flex-control-paging li a,
.slideshow .flex-control-paging li a:hover {
	background: rgba(255, 255, 255, 0);
	border: solid 1px rgba(255, 255, 255, 1);
}

.slideshow .flex-control-paging li a.flex-active {
	background: rgba(255, 255, 255, 1);
	border: solid 1px rgba(255, 255, 255, 1);
}

/* 10. Google Maps */
.google-maps {
    position: relative;
    padding-bottom: 45%;
    height: 0;
    overflow: hidden;
}

.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/* 11. Adaptabilidad y Responsive (Bootstrap 5 Breakpoints) */
@media (max-width: 991.98px) {
	.slideshow .metaslider .flex-control-nav {
		bottom: 30px;
	}
	.slideshow .metaslider .flexslider .slides .msHtmlOverlay .layer .btn {
		margin: 0 10% 1rem; 
	}
} 

@media (max-width: 767.98px) {
	body {
		padding-top: 70px;
	}
	.navbar-contact {
		display: none;
	}
	footer #menu-social-menu li {
		width: 1.2em;
	}
	.slideshow .metaslider .flex-control-nav {
		bottom: -30px;
	}
	.slideshow .flex-control-paging li a {
		background: rgba(36, 57, 124, 0.9);
		border: solid 1px rgb(36, 57, 124);
	}
	.slideshow .flex-control-paging li a.flex-active {
		background: rgba(0, 171, 61, 0.9);
		border: solid 1px rgb(0, 171, 61);
	} 
	.slideshow .metaslider .flexslider .slides .msHtmlOverlay .layer .btn { 
		margin: 0;
		display: none;
	}
	.slideshow .metaslider .msHtmlOverlay .layer .content {
		overflow: visible;
	}
	.metaslider .flexslider .slides .msHtmlOverlay .layer .description p,
	.metaslider .flexslider .slides .msHtmlOverlay .layer .description .btn {
		font-size: 0.6rem;
	}
	.metaslider .flexslider .slides .msHtmlOverlay .layer .description h2 strong {
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 1;
	}
	.metaslider .flexslider .slides .msHtmlOverlay .layer .description h2,
	.metaslider .flexslider .slides .msHtmlOverlay .layer .description h3 strong { 
		font-size: 1rem;
		font-weight: 700;
		line-height: 1;
	}
}