/* Cerrajería Electrónica Coquimbo — site.css */

:root{
	--navy:#16202C;
	--crema:#F7F5EF;
	--blanco:#FFFFFF;
	--dorado:#007AFF;         /* 2026-09-12: el dorado sale del sitio, lo reemplaza el azul de marca de la maqueta del cliente */
	--dorado-texto:#0B5FD0;   /* variante oscura para TEXTO/links (AA en chico); #007AFF queda para íconos, rellenos de botón y el h1 */
	--verde:#22C55E;
	--azul:#1E7FD4;
	--teal:#0E6E7C;
	--texto:#0E1726;
	--texto-sec:#55617A;
	--radius:16px;
	--shadow:0 6px 24px rgba(16,23,38,.08);
	--maxw:1180px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ overflow-x:hidden; scroll-behavior:smooth; }
body.ce-body{
	overflow-x:hidden;
	margin:0;
	font-family:'Inter',sans-serif;
	color:var(--texto);
	background:var(--crema);
	font-size:16px;
	line-height:1.6;
}
img{ max-width:100%; height:auto; display:block; }
video{ max-width:100%; }
table{ max-width:100%; }
a{ color:var(--azul); text-decoration:none; }
h1,h2,h3{ font-family:'Sora',sans-serif; font-weight:800; color:var(--texto); margin:0 0 .5em; }
p{ margin:0 0 1em; color:var(--texto-sec); }
ul,ol{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; cursor:pointer; }

.ce-skip-link{ position:absolute; left:-9999px; top:0; background:var(--dorado); color:#fff; padding:12px 16px; z-index:9999; }
.ce-skip-link:focus{ left:12px; top:12px; }

.ce-container{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }
.ce-container--angosto{ max-width:820px; }

.ce-section{ padding:64px 0; }
@media (min-width:761px){ .ce-section{ padding:88px 0; } }
.ce-section--crema{ background:var(--crema); }
.ce-section--blanco{ background:var(--blanco); }
.ce-section--centrada{ text-align:center; }

.ce-section__head{ margin-bottom:40px; max-width:720px; }
.ce-section--centrada .ce-section__head,
.ce-section--centrada > .ce-container > h2,
.ce-section--centrada > .ce-container > .ce-section__lead{ margin-left:auto; margin-right:auto; }
.ce-text-centrado{ text-align:center; }
.ce-section__head h2{ font-size:clamp(34px,4vw,52px); line-height:1.08; }
.ce-section__lead{ font-size:17px; }

.ce-section__head--barra-azul{ border-left:4px solid var(--dorado); padding-left:20px; }
.ce-section__head--barra-dorada{ border-left:4px solid var(--dorado); padding-left:20px; }

.ce-pill-cat{
	display:inline-block; background:rgba(14,110,124,.1); color:var(--teal);
	font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
	padding:6px 14px; border-radius:999px; margin-bottom:14px;
}
.ce-pill-cat--centrada{ display:block; width:fit-content; margin:0 auto 14px; }
.ce-pill-cat--azul{ background:rgba(0,122,255,.1); color:var(--dorado-texto); }

.ce-text-dorado{ color:var(--dorado); }

.ce-icon{ width:1em; height:1em; font-size:20px; flex:none; }
.ce-icon--check{ color:var(--dorado); font-size:18px; }
.ce-icon--linea{ color:var(--dorado); font-size:26px; margin-bottom:12px; }

.ce-hr{ border:0; border-top:1px solid rgba(85,97,122,.2); margin:28px 0; }

/* ---------- Botones ---------- */
.ce-btn{
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	font-family:'Sora',sans-serif; font-weight:700; font-size:15px;
	padding:14px 24px; border-radius:12px; border:2px solid transparent;
	transition:transform .15s ease, filter .15s ease; white-space:nowrap;
}
.ce-btn:hover{ filter:brightness(1.05); transform:translateY(-1px); }
.ce-btn--lg{ padding:16px 28px; font-size:16px; }
.ce-btn--sm{ padding:10px 18px; font-size:14px; }
.ce-btn--verde{ background:var(--verde); color:#08320f; }
.ce-btn--dorado{ background:var(--dorado); color:#fff; }
.ce-btn--dorado-suave{ background:rgba(0,122,255,.12); color:var(--dorado-texto); }
.ce-btn--outline{ background:var(--blanco); color:var(--texto); border-color:rgba(22,32,44,.16); }

/* ---------- Header ---------- */
.ce-header{
	position:sticky; top:0; z-index:1000; background:var(--navy);
	height:86px; display:flex; align-items:center;
	box-shadow:0 2px 12px rgba(0,0,0,.18);
}
.ce-header__inner{ display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; }
.ce-header__logo{ display:flex; align-items:center; flex:none; }
.ce-header__logo img{ height:60px; width:auto; }
@media (max-width:480px){ .ce-header__logo img{ height:48px; } }

.ce-nav{ display:flex; align-items:center; gap:28px; flex:1; justify-content:center; }
.ce-nav a{ color:#fff; font-weight:600; font-size:15px; opacity:.88; }
.ce-nav a:hover{ opacity:1; }

.ce-header__actions{ display:flex; align-items:center; gap:16px; flex:none; }

.ce-hamburger{
	display:none; flex-direction:column; justify-content:center; gap:5px;
	width:40px; height:40px; background:transparent; border:0; padding:0;
}
.ce-hamburger span{ display:block; width:24px; height:2px; background:#fff; margin:0 auto; border-radius:2px; }

@media (max-width:1040px){
	.ce-nav{
		position:fixed; inset:86px 0 0 0; background:var(--navy);
		flex-direction:column; justify-content:flex-start; align-items:flex-start;
		gap:0; padding:12px 24px 24px; transform:translateX(-100%);
		transition:transform .25s ease; overflow-y:auto;
	}
	.ce-nav.is-open{ transform:translateX(0); }
	.ce-nav a{ width:100%; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); opacity:1; }
	.ce-hamburger{ display:flex; }
	.ce-header__actions .ce-btn--sm{ display:none; }
}
@media (max-width:520px){
	.ce-header__actions .ce-btn--sm{ display:none; }
}

/* ---------- Marca de agua (2026-09-12) ---------- */
.ce-hero,
.ce-section--watermarked{ position:relative; overflow:hidden; }
.ce-watermark{
	position:absolute; z-index:0; pointer-events:none; user-select:none;
	width:auto; max-width:none; object-fit:contain;
}
.ce-hero > .ce-container,
.ce-hero > .ce-hero__strip,
.ce-section--watermarked > .ce-container{ position:relative; z-index:1; }
.ce-watermark--hero{
	top:50%; right:-80px; height:min(560px, 55%); transform:translateY(-50%); opacity:.05;
}
.ce-watermark--servicios{
	bottom:-40px; left:-60px; height:380px; opacity:.04;
}
.ce-watermark--contacto{
	top:-40px; right:-60px; height:380px; opacity:.04;
}
@media (max-width:767px){
	.ce-watermark--hero{ opacity:.03; height:340px; }
	.ce-watermark--servicios,
	.ce-watermark--contacto{ opacity:.03; height:220px; }
}

/* ---------- Hero ---------- */
.ce-hero{ background:var(--crema); padding-top:56px; }
.ce-hero__grid{ display:grid; grid-template-columns:1fr; gap:48px; align-items:center; padding-bottom:56px; }
@media (min-width:960px){ .ce-hero__grid{ grid-template-columns:55fr 45fr; gap:56px; } }

.ce-hero__title{ font-size:clamp(44px,6vw,72px); line-height:1.02; letter-spacing:-.01em; margin-bottom:20px; }
.ce-hero__lead{ font-size:18px; max-width:520px; margin-bottom:28px; }
.ce-hero__ctas{ display:flex; flex-wrap:wrap; gap:16px; margin-bottom:32px; }

.ce-hero__checks{ display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; margin-bottom:8px; }
@media (min-width:560px){ .ce-hero__checks{ grid-template-columns:repeat(3,1fr); } }
.ce-hero__checks li{ display:flex; align-items:center; gap:10px; font-weight:600; font-size:15px; }

.ce-hero__micro{ display:flex; flex-direction:column; gap:14px; }
@media (min-width:640px){ .ce-hero__micro{ flex-direction:row; flex-wrap:wrap; gap:24px; } }
.ce-hero__micro > div{ display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:var(--texto-sec); }
.ce-hero__micro .ce-icon{ color:var(--dorado); }

.ce-hero__media{ position:relative; }
.ce-hero__badge{
	position:absolute; top:-14px; left:16px; z-index:2; background:#fff;
	border-radius:12px; box-shadow:var(--shadow); padding:10px 16px;
	font-size:13px; font-weight:700; line-height:1.4;
}
.ce-hero__badge small{ font-weight:500; color:var(--texto-sec); }

.ce-hero__mosaic{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ce-hero__tile{ margin:0; position:relative; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); background:#fff; }
.ce-hero__tile--big{ grid-column:1 / -1; }
.ce-hero__tile img{ width:100%; height:100%; object-fit:cover; aspect-ratio:4/3; }
.ce-hero__tile--big img{ aspect-ratio:16/10; }
.ce-hero__tile figcaption{
	position:absolute; left:0; right:0; bottom:0; padding:12px 14px;
	background:linear-gradient(0deg, rgba(22,32,44,.86), rgba(22,32,44,0));
	color:#fff; font-size:12.5px; font-weight:600; letter-spacing:.02em;
}

.ce-hero__strip{ background:#f0e6d0; padding:16px 0; font-size:14px; color:var(--texto); }
.ce-hero__strip strong{ color:var(--navy); }

/* ---------- Grids de tarjetas ---------- */
.ce-grid{ display:grid; gap:24px; }
.ce-grid--servicios{ grid-template-columns:1fr; }
@media (min-width:560px){ .ce-grid--servicios{ grid-template-columns:1fr 1fr; } }
@media (min-width:820px){ .ce-grid--servicios{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:1120px){ .ce-grid--servicios{ grid-template-columns:repeat(5,1fr); } }

.ce-grid--trabajos{ grid-template-columns:1fr; }
@media (min-width:700px){ .ce-grid--trabajos{ grid-template-columns:1fr 1fr; } }
@media (min-width:1000px){ .ce-grid--trabajos{ grid-template-columns:repeat(3,1fr); } }

.ce-card{ background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; display:flex; flex-direction:column; }
.ce-card__media{ aspect-ratio:16/9; overflow:hidden; }
.ce-card__media img{ width:100%; height:100%; object-fit:cover; }
.ce-card__body{ padding:20px; flex:1; display:flex; flex-direction:column; }
.ce-card__body h3{ font-size:17px; margin-bottom:8px; }
.ce-card__body p{ font-size:14.5px; margin-bottom:0; }
.ce-card--trabajo .ce-pill-cat{ margin-bottom:10px; }
.ce-card--trabajo h3{ font-size:16px; }
.ce-card--trabajo p{ font-size:14px; }

/* ---------- Proceso ---------- */
.ce-proceso{ display:grid; grid-template-columns:1fr; gap:32px; position:relative; }
@media (min-width:860px){
	.ce-proceso{ grid-template-columns:repeat(4,1fr); gap:24px; }
	.ce-proceso li{ position:relative; }
	.ce-proceso li:not(:last-child)::after{
		content:''; position:absolute; top:24px; left:calc(50% + 34px); right:calc(-50% + 34px);
		height:2px; background:repeating-linear-gradient(90deg, rgba(85,97,122,.35) 0 8px, transparent 8px 16px);
	}
}
.ce-proceso li{ text-align:left; }
.ce-proceso__num{
	display:flex; align-items:center; justify-content:center; width:48px; height:48px;
	border-radius:50%; background:var(--navy); color:#fff; font-family:'Sora',sans-serif;
	font-weight:800; font-size:18px; margin-bottom:16px; position:relative; z-index:1;
}
.ce-proceso h3{ font-size:18px; margin-bottom:8px; }
.ce-proceso p{ font-size:14.5px; }

/* ---------- Masonry taller ---------- */
.ce-masonry{ column-count:1; column-gap:16px; margin-bottom:48px; }
@media (min-width:640px){ .ce-masonry{ column-count:2; } }
@media (min-width:1000px){ .ce-masonry{ column-count:3; } }
.ce-masonry__item{ margin:0 0 16px; break-inside:avoid; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); }
.ce-masonry__item img{ width:100%; height:auto; }

.ce-videos{ display:grid; grid-template-columns:1fr; gap:24px; }
@media (min-width:760px){ .ce-videos{ grid-template-columns:1fr 1fr; } }
.ce-video{ background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; }
.ce-video video{ width:100%; display:block; aspect-ratio:16/9; background:#000; object-fit:cover; }
.ce-video p{ margin:0; padding:14px 16px; font-weight:700; color:var(--texto); font-size:15px; }

/* ---------- Tabs ubicación ---------- */
.ce-tabs{ margin-top:40px; text-align:left; }
.ce-tabs__nav{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:28px; }
.ce-tabs__btn{
	background:#fff; border:1px solid rgba(22,32,44,.14); color:var(--texto);
	font-family:'Sora',sans-serif; font-weight:700; font-size:14px;
	padding:10px 20px; border-radius:999px;
}
.ce-tabs__btn:hover{ border-color:var(--dorado); color:var(--dorado-texto); }
.ce-tabs__btn.is-active{ background:var(--dorado); border-color:var(--dorado); color:#fff; }
.ce-tabs__btn.is-active:hover{ color:#fff; }

.ce-tabs__pane{ display:none; background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; grid-template-columns:1fr; }
.ce-tabs__pane.is-active{ display:grid; }
@media (min-width:820px){ .ce-tabs__pane.is-active{ grid-template-columns:1fr 1fr; } }
.ce-tabs__media{ min-height:220px; }
.ce-tabs__media img{ width:100%; height:100%; object-fit:cover; }
.ce-tabs__info{ padding:32px; }
.ce-tabs__info h3{ font-size:22px; margin-bottom:10px; }
.ce-tabs__ctas{ display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.ce-map{ margin-top:16px; }
.ce-map iframe{ display:block; }

/* ---------- FAQ ---------- */
.ce-faq__item{
	background:#fff; border-radius:14px; box-shadow:var(--shadow);
	padding:18px 22px; margin-bottom:14px;
}
.ce-faq__item summary{
	cursor:pointer; font-family:'Sora',sans-serif; font-weight:700; font-size:16px;
	list-style:none; display:flex; align-items:center; justify-content:space-between;
}
.ce-faq__item summary::-webkit-details-marker{ display:none; }
.ce-faq__item summary::after{ content:'+'; font-size:22px; color:var(--dorado); margin-left:16px; }
.ce-faq__item[open] summary::after{ content:'–'; }
.ce-faq__item p{ margin:14px 0 0; font-size:15px; }
.ce-faq__cierre{ text-align:center; margin-top:24px; font-weight:600; }

/* ---------- Contacto ---------- */
.ce-contacto{ display:grid; grid-template-columns:1fr; gap:40px; }
@media (min-width:900px){ .ce-contacto{ grid-template-columns:1fr 1fr; } }

.ce-contacto__form{ background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:36px; }
.ce-form__nota{ display:flex; align-items:center; gap:10px; font-size:13.5px; margin-top:16px; color:var(--texto-sec); }
.ce-form__nota .ce-icon{ color:var(--teal); flex:none; }

.ce-contacto__info{ display:flex; flex-direction:column; gap:24px; }
.ce-info-card{ background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:28px; display:flex; flex-direction:column; gap:20px; }
.ce-info-row{ display:flex; gap:16px; align-items:flex-start; }
.ce-info-icon{
	display:flex; align-items:center; justify-content:center; width:44px; height:44px;
	border-radius:50%; background:rgba(14,110,124,.12); color:var(--teal); flex:none;
}
.ce-info-row strong{ display:block; font-family:'Sora',sans-serif; font-size:15px; margin-bottom:2px; }
.ce-info-row p{ margin:0; font-size:14.5px; }

.ce-contacto__foto{ position:relative; margin:0; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); }
.ce-contacto__foto img{ width:100%; aspect-ratio:16/9; object-fit:cover; }
.ce-contacto__foto figcaption{
	position:absolute; left:0; right:0; bottom:0; padding:14px 18px;
	background:linear-gradient(0deg, rgba(22,32,44,.88), rgba(22,32,44,0));
	color:#fff; font-weight:700; font-size:14px;
}

.ce-features4{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:56px; }
@media (min-width:760px){ .ce-features4{ grid-template-columns:repeat(4,1fr); } }
.ce-features4 > div{ display:flex; align-items:center; gap:10px; font-weight:600; font-size:14.5px; color:var(--texto); }
.ce-features4 .ce-icon{ color:var(--azul); }

/* ---------- WPForms: alinear al diseño ---------- */
.wpforms-container{ margin:0 !important; }
.wpforms-container .wpforms-field{ padding:0 0 18px !important; }
.wpforms-container input.wpforms-field-medium,
.wpforms-container textarea.wpforms-field-medium,
.wpforms-container select.wpforms-field-medium{
	width:100% !important; max-width:100% !important;
	border:1.5px solid rgba(22,32,44,.14) !important; border-radius:10px !important;
	padding:13px 16px !important; font-family:'Inter',sans-serif !important; font-size:15px !important;
}
.wpforms-container label.wpforms-field-label{
	font-family:'Sora',sans-serif !important; font-weight:700 !important; font-size:14px !important; color:var(--texto) !important;
}
.wpforms-container button[type=submit],
.wpforms-container .wpforms-submit{
	width:100% !important; background:var(--dorado) !important; color:#fff !important;
	border:0 !important; border-radius:12px !important; font-family:'Sora',sans-serif !important;
	font-weight:700 !important; padding:15px !important; font-size:16px !important;
}
.wpforms-container textarea.wpforms-field-medium{ min-height:120px !important; }

/* Ícono adentro de cada campo (brief) */
#wpforms-4-field_1-container,
#wpforms-4-field_2-container,
#wpforms-4-field_3-container,
#wpforms-4-field_4-container{ position:relative; }
#wpforms-4-field_1-container::before,
#wpforms-4-field_2-container::before,
#wpforms-4-field_3-container::before,
#wpforms-4-field_4-container::before{
	content:''; position:absolute; left:14px; width:18px; height:18px;
	background-color:var(--texto-sec); opacity:.55; pointer-events:none;
	-webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
	-webkit-mask-position:center; mask-position:center;
	-webkit-mask-size:contain; mask-size:contain;
}
#wpforms-4-field_1-container::before{
	top:41px;
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm-7 9a7 7 0 0 1 14 0Z'/%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm-7 9a7 7 0 0 1 14 0Z'/%3E%3C/svg%3E");
}
#wpforms-4-field_2-container::before{
	top:41px;
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.24 11.4 11.4 0 0 0 3.6.58 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1 11.4 11.4 0 0 0 .58 3.6 1 1 0 0 1-.25 1Z'/%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.24 11.4 11.4 0 0 0 3.6.58 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1 11.4 11.4 0 0 0 .58 3.6 1 1 0 0 1-.25 1Z'/%3E%3C/svg%3E");
}
#wpforms-4-field_3-container::before{
	top:41px;
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2.4V17h14V6.4l-7 5.2Zm.5-.4L12 10.5 18.5 6Z'/%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2.4V17h14V6.4l-7 5.2Zm.5-.4L12 10.5 18.5 6Z'/%3E%3C/svg%3E");
}
#wpforms-4-field_4-container::before{
	top:41px;
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16v12H7l-3 3Z'/%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16v12H7l-3 3Z'/%3E%3C/svg%3E");
}
#wpforms-4-field_1-container input,
#wpforms-4-field_2-container input,
#wpforms-4-field_3-container input{ padding-left:42px !important; }
#wpforms-4-field_4-container textarea{ padding-left:42px !important; }

/* ---------- Footer ---------- */
.ce-footer{ background:var(--navy); color:rgba(255,255,255,.78); padding:64px 0 0; }
.ce-footer__grid{ display:grid; grid-template-columns:1fr; gap:40px; padding-bottom:40px; border-bottom:1px solid rgba(255,255,255,.08); }
@media (min-width:760px){ .ce-footer__grid{ grid-template-columns:1.3fr 1fr 1fr; } }
.ce-footer__brand img{ height:64px; width:auto; margin-bottom:14px; }
.ce-footer__tagline{ font-size:14px; max-width:320px; color:rgba(255,255,255,.65); }
.ce-footer h3{ color:#fff; font-size:15px; margin-bottom:16px; }
.ce-footer__nav{ display:flex; flex-direction:column; gap:10px; }
.ce-footer__nav a,
.ce-footer__col a{ color:rgba(255,255,255,.78); font-size:14.5px; }
.ce-footer__nav a:hover,
.ce-footer__col a:hover{ color:#fff; }
.ce-footer__col p{ font-size:14.5px; color:rgba(255,255,255,.72); margin-bottom:10px; }
.ce-footer__legal{ padding:22px 24px; text-align:center; font-size:13px; color:rgba(255,255,255,.55); }

/* ---------- Widgets flotantes ---------- */
.ce-floating{ position:fixed; right:20px; bottom:20px; z-index:1200; display:flex; flex-direction:column; align-items:flex-end; gap:12px; }
.ce-floating__btn{
	display:flex; align-items:center; justify-content:center; width:60px; height:60px;
	border-radius:50%; background:var(--verde); color:#fff; box-shadow:0 8px 24px rgba(34,197,94,.4);
}
.ce-floating__btn .ce-icon{ font-size:32px; }
.ce-floating__pill{
	display:flex; align-items:center; gap:10px; padding:12px 18px; border-radius:999px;
	font-weight:700; font-size:13.5px; box-shadow:var(--shadow);
	opacity:0; transform:translateY(10px) scale(.96); pointer-events:none;
	transition:opacity .25s ease, transform .25s ease;
}
.ce-floating.is-visible .ce-floating__pill{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }
.ce-floating__pill--dark{ background:var(--navy); color:#fff; }
.ce-floating__pill--dorado{ background:var(--dorado); color:#fff; }

@media (max-width:480px){
	.ce-floating{ right:14px; bottom:14px; }
	.ce-floating__pill span{ display:none; }
	.ce-floating__pill{ padding:12px; border-radius:50%; width:44px; height:44px; justify-content:center; }
}
