.elementor-6942 .elementor-element.elementor-element-2b0f9df{--display:flex;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6942 .elementor-element.elementor-element-69db645{--display:flex;--min-height:778px;--justify-content:center;}.elementor-6942 .elementor-element.elementor-element-69db645:not(.elementor-motion-effects-element-type-background), .elementor-6942 .elementor-element.elementor-element-69db645 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F4;}.elementor-6942 .elementor-element.elementor-element-79dc4dc{--display:flex;--min-height:860px;--justify-content:center;}.elementor-6942 .elementor-element.elementor-element-79dc4dc:not(.elementor-motion-effects-element-type-background), .elementor-6942 .elementor-element.elementor-element-79dc4dc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F4;}.elementor-6942 .elementor-element.elementor-element-31aa505{text-align:center;}.elementor-6942 .elementor-element.elementor-element-31aa505 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;}.elementor-6942 .elementor-element.elementor-element-dc7bf02 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-6942 .elementor-element.elementor-element-c431339{--display:flex;}.elementor-6942 .elementor-element.elementor-element-c431339:not(.elementor-motion-effects-element-type-background), .elementor-6942 .elementor-element.elementor-element-c431339 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F4;}:root{--page-title-display:none;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(min-width:768px){.elementor-6942 .elementor-element.elementor-element-2b0f9df{--content-width:1162px;}}/* Start custom CSS for container, class: .elementor-element-2b0f9df */*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--naranja:#D68552}

.hi-alf{
  position:relative;
  width:100vw;
  max-width:100vw;
  height:55vh;
  min-height:480px;
  margin:0;
  margin-top:-30px !important;
  margin-left:calc(-50vw + 50%);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:'Montserrat',sans-serif;
  background:#0a0a0a;
}
.hi-alf::before{
  content:'';position:absolute;top:-35px;left:0;right:0;
  height:40px;background:#0a0a0a;z-index:10;
}

/* ── Breadcrumb + título arriba centrado ── */
.hi-alf-header{
  position:absolute;top:0;left:0;right:0;
  z-index:20;
  display:flex;flex-direction:column;align-items:center;
  padding-top:40px;
  pointer-events:none;
  transition:opacity 0.4s ease, transform 0.4s ease;
}
.hi-alf-panels:hover ~ .hi-alf-header,
.hi-alf:hover .hi-alf-header{
  opacity:0;
  transform:translateY(-12px);
}
.hi-alf-bread{
  font-size:0.52rem;font-weight:700;
  letter-spacing:0.3em;text-transform:uppercase;
  color:rgba(255,255,255,0.45);margin-bottom:10px;
  opacity:0;animation:fadeUp 0.8s ease 0.3s forwards;
}
.hi-alf-bread span{color:var(--naranja);}
.hi-alf-tag{
  font-size:0.65rem;font-weight:800;
  letter-spacing:0.35em;text-transform:uppercase;
  color:rgba(255,255,255,0.9);margin-bottom:14px;
  opacity:0;animation:fadeUp 0.8s ease 0.5s forwards;
}
.hi-alf-titulo{
  font-size:clamp(2rem,5vw,3.4rem);font-weight:900;
  color:#fff;letter-spacing:-0.02em;line-height:0.95;
  text-shadow:0 10px 30px rgba(0,0,0,0.5);
  opacity:0;animation:fadeUp 0.8s ease 0.7s forwards;
  margin-bottom:12px;
}
.hi-alf-linea{
  width:0;height:3px;
  background:linear-gradient(90deg,var(--naranja),#fff);
  border-radius:2px;margin:0 auto;
  animation:lineaExpand 0.8s ease 1s forwards;
}

/* ── Paneles ── */
.hi-alf-panels{
  position:absolute;inset:0;
  display:flex;z-index:5;
}
.hi-panel{
  flex:1;position:relative;overflow:hidden;
  cursor:pointer;
  transition:flex 0.7s cubic-bezier(0.23,1,0.32,1);
}
.hi-alf-panels:hover .hi-panel{ flex:0.6; }
.hi-alf-panels:hover .hi-panel:hover{ flex:2.2; }

/* Foto fondo */
.hi-panel-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center top;
  transform:scale(1.08);
  transition:transform 0.7s cubic-bezier(0.23,1,0.32,1),
             filter 0.5s ease;
  filter:brightness(0.45) saturate(0.6);
}
.hi-panel:hover .hi-panel-bg{
  transform:scale(1.0);
  filter:brightness(0.75) saturate(1);
}

/* Overlay por panel */
.hi-panel-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to bottom, transparent 30%, rgba(0,0,0,0.85) 100%);
  opacity:0.6;
  transition:opacity 0.5s ease;
}
.hi-panel:hover .hi-panel-overlay{ opacity:1; }

/* Separador vertical */
.hi-panel:not(:last-child)::after{
  content:'';
  position:absolute;top:10%;bottom:10%;right:0;
  width:1px;
  background:rgba(255,255,255,0.1);
  z-index:2;
  transition:opacity 0.4s;
}
.hi-alf-panels:hover .hi-panel:not(:last-child)::after{ opacity:0; }

/* Info del alfarero */
.hi-panel-info{
  position:absolute;bottom:0;left:0;right:0;
  padding:0 28px 32px;z-index:3;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;
}

/* Nombre siempre visible (pequeño) */
.hi-panel-nombre-mini{
  font-size:0.75rem;font-weight:900;
  color:rgba(255,255,255,0.6);
  letter-spacing:0.15em;text-transform:uppercase;
  transition:opacity 0.4s ease, transform 0.4s ease;
}
.hi-panel:hover .hi-panel-nombre-mini{
  opacity:0;transform:translateY(10px);
}

/* Bloque expandido — aparece en hover */
.hi-panel-expand{
  position:absolute;bottom:28px;left:0;right:0;
  padding:0 28px;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;
  opacity:0;transform:translateY(24px);
  transition:opacity 0.5s ease 0.1s, transform 0.5s ease 0.1s;
}
.hi-panel:hover .hi-panel-expand{
  opacity:1;transform:translateY(0);
}
.hi-panel-linea-naranja{
  width:0;height:2px;
  background:linear-gradient(90deg,var(--naranja),rgba(214,133,82,0));
  border-radius:2px;margin-bottom:12px;
  transition:width 0.5s ease 0.2s;
}
.hi-panel:hover .hi-panel-linea-naranja{ width:50px; }
.hi-panel-nombre{
  font-size:clamp(1.4rem,2.5vw,2rem);font-weight:900;
  color:#fff;letter-spacing:-0.01em;
  text-shadow:0 4px 16px rgba(0,0,0,0.5);
  margin-bottom:5px;
}
.hi-panel-oficio{
  font-size:0.6rem;font-weight:800;
  letter-spacing:0.25em;text-transform:uppercase;
  color:var(--naranja);margin-bottom:12px;
}
.hi-panel-desc{
  font-size:0.75rem;font-weight:500;
  color:rgba(255,255,255,0.75);
  line-height:1.7;max-width:240px;margin:0 auto 16px;
}
.hi-panel-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 22px;border-radius:50px;
  border:1.5px solid rgba(255,255,255,0.5);
  color:#fff;text-decoration:none;
  font-family:'Montserrat',sans-serif;
  font-size:0.6rem;font-weight:800;
  letter-spacing:0.12em;text-transform:uppercase;
  backdrop-filter:blur(8px);
  transition:background 0.25s,border-color 0.25s,transform 0.25s;
}
.hi-panel-btn:hover{
  background:var(--naranja);
  border-color:var(--naranja);
  transform:translateY(-2px);
}
.hi-panel-btn svg{
  width:12px;height:12px;fill:none;
  stroke:#fff;stroke-width:2.5;
  stroke-linecap:round;stroke-linejoin:round;
  transition:transform 0.25s;
}
.hi-panel-btn:hover svg{ transform:translateX(3px); }

/* Número decorativo */
.hi-panel-num{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  font-size:clamp(5rem,12vw,9rem);font-weight:900;
  color:rgba(255,255,255,0.04);
  letter-spacing:-0.05em;
  pointer-events:none;z-index:1;
  transition:opacity 0.4s;
  user-select:none;
}
.hi-panel:hover .hi-panel-num{ opacity:0; }

/* ── Hint ── */
.hi-alf-hint {
  position: absolute;
  bottom: 5px;
  left: 38%;
  transform: translateX(-50%);
  z-index: 20;
  font-size: 0.5rem; font-weight: 700;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: rgba(255,255,255,0.25);
  display: flex; align-items: center; gap: 8px;
  opacity: 0; animation: fadeUp 0.7s ease 1.5s forwards;
  white-space: nowrap;
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.hi-alf:hover .hi-alf-hint { opacity: 0 !important; }
.hi-alf-hint svg {
  width: 14px; height: 14px; fill: none;
  stroke: rgba(255,255,255,0.25); stroke-width: 2;
  stroke-linecap: round;
}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes lineaExpand{from{width:0}to{width:70px}}

@media(max-width:600px){
  .hi-alf{ height:auto;min-height:500px;flex-direction:column; }
  .hi-alf-panels{ position:relative;flex-direction:column;height:100%; }
  .hi-panel{ flex:1!important; min-height:160px; }
  .hi-alf-panels:hover .hi-panel{ flex:1!important; }
  .hi-alf-panels:hover .hi-panel:hover{ flex:2!important; }
  .hi-alf-header{ padding-top:60px; }
  .hi-panel-expand{ bottom:16px; }
  .hi-panel-desc{ display:none; }
}

.hi-alf-titulo,
.hi-panel-nombre,
.hi-panel-oficio,
.hi-panel-desc,
.hi-panel-nombre-mini,
.hi-alf-tag,
.hi-alf-bread {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 900 !important;
}

.hi-panel-oficio,
.hi-panel-desc,
.hi-panel-nombre-mini {
  font-weight: 700 !important;
}

.hi-panel-desc {
  font-weight: 500 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-69db645 */.opc-a{
  width:100vw;
  position:relative;
  left:50%;
  margin-left:-50vw;
  margin-right:-50vw;
  padding:100px 24px;
  background:#F7F5F4;
  text-align:center;
  font-family:'Montserrat',sans-serif;
  box-sizing:border-box;
}
.opc-a-inner{
  max-width:820px;
  margin:0 auto;
}
.alf-tag{
  font-family:'Montserrat',sans-serif!important;
  font-size:.55rem!important;font-weight:800!important;
  letter-spacing:.35em!important;text-transform:uppercase!important;
  color:#D68552!important;display:block!important;
  margin-bottom:16px!important;
  opacity:0;transform:translateY(12px);
  transition:opacity .5s ease,transform .5s ease;
}
.alf-h{
  font-family:'Montserrat',sans-serif!important;
  font-size:clamp(1.9rem,4vw,3rem)!important;
  font-weight:900!important;color:#111!important;
  line-height:1.1!important;letter-spacing:-.03em!important;
  display:inline-block!important;position:relative!important;
  padding-bottom:22px!important;
  margin-bottom:36px!important;
  opacity:0;transform:translateY(18px);
  transition:opacity .6s ease .1s,transform .6s cubic-bezier(.23,1,.32,1) .1s;
}
.alf-h::after{
  content:'';position:absolute;
  bottom:0;left:50%;transform:translateX(-50%);
  width:0;height:4px;border-radius:2px;
  background:#D68552;
  box-shadow:0 3px 10px rgba(214,133,82,.5);
  transition:width .5s cubic-bezier(.23,1,.32,1);
}
.opc-a.vis .alf-h::after{width:48px;}
.opc-a:hover .alf-h::after{width:120px!important;}
.alf-p{
  font-family:'Montserrat',sans-serif!important;
  font-size:.95rem!important;font-weight:500!important;
  color:#555!important;line-height:1.95!important;
  margin-bottom:20px!important;
  opacity:0;transform:translateY(14px);
  transition:opacity .6s ease,transform .6s ease;
}
.alf-p:last-of-type{margin-bottom:0!important;}
.alf-p strong{font-weight:700!important;color:#03586A!important;}
.opc-a.vis .alf-tag{opacity:1;transform:translateY(0);}
.opc-a.vis .alf-h{opacity:1;transform:translateY(0);}
.opc-a.vis .alf-p{opacity:1;transform:translateY(0);}
.alf-p:nth-child(1){transition-delay:.2s;}
.alf-p:nth-child(2){transition-delay:.32s;}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-dc7bf02 */:root {
  --color-panel: #03586A;
  --color-texto: #03586A;
  --sombra:      rgba(0,0,0,0.14);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

.vic-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
  justify-content: center;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
  font-family: 'Montserrat', sans-serif;
}

/* ── Tarjeta: más alta para caber más info ── */
.vic-card {
  position: relative;
  width: 320px;
  height: 480px;
  border-radius: 18px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 6px 24px var(--sombra);
  transition: transform 0.4s cubic-bezier(0.23,1,0.32,1), box-shadow 0.4s ease;
}
.vic-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 22px 55px rgba(0,0,0,0.24);
}

.vic-card img {
  width: 100%; height: 100%;
  object-fit: cover; display: block;
  transition: transform 0.6s ease;
}
.vic-card:hover img { transform: scale(1.07); }

/* ── Header arriba ── */
.vic-header {
  position: absolute;
  top: 0; left: 0; right: 0;
  padding: 18px 20px;
  background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%, transparent 100%);
  display: flex; align-items: center; gap: 8px;
  z-index: 3;
  transition: opacity 0.3s ease;
}
.vic-header .gad {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.44rem; font-weight: 700;
  color: rgba(255,255,255,0.9); line-height: 1.3;
  text-transform: uppercase;
  border-right: 1.5px solid rgba(255,255,255,0.4);
  padding-right: 8px; letter-spacing: 0.05em;
}
.vic-header .nombre {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.95rem; font-weight: 900; color: #fff;
}
.vic-card:hover .vic-header { opacity: 0; }

/* ── Nombre visible en la imagen (parte baja) ── */
.vic-name-tag {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 48px 22px 20px;
  background: linear-gradient(to top, rgba(0,0,0,0.78) 0%, transparent 100%);
  z-index: 3;
  transition: opacity 0.3s ease;
}
.vic-name-tag h3 {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.4rem; font-weight: 900; color: #fff;
  text-transform: uppercase; letter-spacing: 0.03em;
  line-height: 1.15;
}
.vic-card:hover .vic-name-tag { opacity: 0; }

/* ── Overlay — sube desde abajo ── */
.vic-overlay {
  position: absolute;
  inset: 0; z-index: 5;
  background: var(--color-panel);
  display: flex; flex-direction: column;
  align-items: center; justify-content: flex-start;
  padding: 28px 26px 24px;
  text-align: center;
  transform: translateY(100%);
  transition: transform 0.48s cubic-bezier(0.23,1,0.32,1);
  overflow-y: auto; /* scroll interno si hay mucho texto */
}
.vic-card:hover .vic-overlay { transform: translateY(0%); }

/* Nombre en el overlay */
.vic-overlay h3 {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.55rem; font-weight: 900; color: #fff;
  text-transform: uppercase; letter-spacing: 0.04em;
  line-height: 1.1; margin-bottom: 4px;
  opacity: 0; transform: translateY(14px);
  transition: opacity 0.3s ease 0.22s, transform 0.3s ease 0.22s;
  flex-shrink: 0;
}
.vic-card:hover .vic-overlay h3 { opacity: 1; transform: translateY(0); }

/* Línea divisora */
.vic-linea {
  width: 0; height: 2px;
  background: rgba(255,255,255,0.35);
  margin: 10px auto 14px;
  border-radius: 1px;
  transition: width 0.38s ease 0.3s;
  flex-shrink: 0;
}
.vic-card:hover .vic-linea { width: 44px; }

/* Texto principal — más espacio y tamaño legible */
.vic-overlay p {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.8rem; font-weight: 500;
  color: rgba(255,255,255,0.92);
  line-height: 1.85; margin-bottom: 10px;
  opacity: 0; transform: translateY(12px);
  transition: opacity 0.3s ease 0.33s, transform 0.3s ease 0.33s;
  text-align: left;
  width: 100%;
}
.vic-card:hover .vic-overlay p { opacity: 1; transform: translateY(0); }

/* Datos extra — lista de info */
.vic-datos {
  width: 100%;
  margin-bottom: 10px;
  opacity: 0; transform: translateY(12px);
  transition: opacity 0.3s ease 0.38s, transform 0.3s ease 0.38s;
  flex-shrink: 0;
}
.vic-card:hover .vic-datos { opacity: 1; transform: translateY(0); }

.vic-dato {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  border-bottom: 1px solid rgba(255,255,255,0.1);
  font-family: 'Montserrat', sans-serif;
  font-size: 0.72rem; font-weight: 600;
  color: rgba(255,255,255,0.85);
  text-align: left;
}
.vic-dato:last-child { border-bottom: none; }
.vic-dato span.label {
  font-size: 0.6rem; font-weight: 700;
  color: rgba(255,255,255,0.45);
  text-transform: uppercase; letter-spacing: 0.1em;
  min-width: 64px; flex-shrink: 0;
}

/* Botón */
.vic-overlay a {
  font-family: 'Montserrat', sans-serif;
  display: inline-block;
  margin-top: 10px;
  padding: 9px 26px;
  border: 2px solid rgba(255,255,255,0.75);
  border-radius: 30px; color: #fff;
  font-size: 0.65rem; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase;
  text-decoration: none; flex-shrink: 0;
  opacity: 0; transform: translateY(12px);
  transition: opacity 0.3s ease 0.44s, transform 0.3s ease 0.44s,
              background 0.2s, color 0.2s;
}
.vic-card:hover .vic-overlay a { opacity: 1; transform: translateY(0); }
.vic-overlay a:hover { background: #fff; color: var(--color-texto); }

@media (max-width: 700px) {
  .vic-card { width: 290px; height: 460px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-79dc4dc */:root {
  --naranja: #D68552;
  --teal: #03586A;
}

/* ── H2 título ── */
.elementor-6942 .elementor-element.elementor-element-79dc4dc h2.elementor-heading-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(1.8rem, 3vw, 2.5rem) !important;
  font-weight: 900 !important;
  color: #111 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.03em !important;
  text-transform: none !important;
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 18px !important;
  margin-bottom: 20px !important;
}

/* ── Línea teal CENTRADA con animación ── */
.elementor-6942 .elementor-element.elementor-element-79dc4dc h2.elementor-heading-title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 44px !important;
  height: 4px !important;
  background: var(--teal) !important;
  border-radius: 2px !important;
  box-shadow: 0 3px 10px rgba(3,88,106,0.5) !important;
  transition: width 0.4s cubic-bezier(0.23,1,0.32,1) !important;
}

/* ── Crece al pasar el cursor ── */
.elementor-6942 .elementor-element.elementor-element-79dc4dc:hover h2.elementor-heading-title::after {
  width: 110px !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .elementor-6942 .elementor-element.elementor-element-79dc4dc h2.elementor-heading-title {
    font-size: 1.7rem !important;
    text-align: center !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c431339 */.vic-bloque{width:100%;padding:80px 24px;text-align:center;font-family:'Montserrat',sans-serif;position:relative;overflow:hidden;box-sizing:border-box;}
.vic-bloque .vic-inner{max-width:780px;margin:0 auto;position:relative;z-index:1;}
.vic-bloque .vic-tag{font-size:.5rem;font-weight:800;letter-spacing:.35em;text-transform:uppercase;display:block;margin-bottom:14px;opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
.vic-bloque.visible .vic-tag{opacity:1;transform:translateY(0);}
.vic-bloque h2{font-family:'Montserrat',sans-serif!important;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:900!important;line-height:1.1;letter-spacing:-.03em;display:inline-block;position:relative;padding-bottom:16px;margin-bottom:20px;opacity:0;transform:translateY(22px);transition:opacity .7s ease .1s,transform .7s ease .1s;}
.vic-bloque.visible h2{opacity:1;transform:translateY(0);}
.vic-bloque h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:4px;border-radius:2px;transition:width .7s cubic-bezier(.23,1,.32,1) .5s;}
.vic-bloque.visible h2::after{width:60px;}
.vic-bloque:hover h2::after{width:90px;}
.vic-bloque p{font-size:.95rem;font-weight:500;line-height:1.85;max-width:640px;margin:0 auto 36px;opacity:0;transform:translateY(18px);transition:opacity .7s ease .18s,transform .7s ease .18s;}
.vic-bloque.visible p{opacity:1;transform:translateY(0);}
.vic-bloque p strong{font-weight:700;}
.vic-bloque .vic-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;opacity:0;transform:translateY(14px);transition:opacity .7s ease .28s,transform .7s ease .28s;}
.vic-bloque.visible .vic-btns{opacity:1;transform:translateY(0);}
.vic-bloque .vic-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 36px;border-radius:50px;font-family:'Montserrat',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important;position:relative;overflow:hidden;transition:background .25s,transform .3s cubic-bezier(.23,1,.32,1),box-shadow .25s;}
.vic-bloque .vic-btn::before{content:'';position:absolute;top:-60%;left:-80%;width:55%;height:220%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:skewX(-15deg);opacity:0;}
.vic-bloque .vic-btn:hover::before{animation:vic-shine .6s ease forwards;}
.vic-bloque .vic-btn:hover{transform:translateY(-4px)!important;}
.vic-bloque .vic-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s;flex-shrink:0;}
.vic-bloque .vic-btn:hover svg{transform:translateX(4px);}
.vic-bloque .vic-btn-out{display:inline-flex;align-items:center;gap:10px;padding:13px 34px;border-radius:50px;font-family:'Montserrat',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important;background:transparent;transition:background .25s,border-color .25s,transform .25s;}
.vic-bloque .vic-btn-out:hover{transform:translateY(-3px);}
.vic-bloque .vic-btn-out svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s;flex-shrink:0;}
.vic-bloque .vic-btn-out:hover svg{transform:translateX(4px);}
@keyframes vic-shine{0%{opacity:0;transform:skewX(-15deg) translateX(0);}15%{opacity:1;}100%{opacity:0;transform:skewX(-15deg) translateX(450%);}}
/* ── Blanco teal ── */
.vic-h{background:#F7F5F4;border-top:1px solid rgba(0,0,0,.06);}
.vic-h .vic-tag{color:#03586A;}
.vic-h h2{color:#111;}
.vic-h h2::after{background:#03586A;}
.vic-h p{color:#666;}
.vic-h .vic-btn{background:#03586A;color:#fff!important;box-shadow:0 6px 22px rgba(3,88,106,.35);}
.vic-h .vic-btn:hover{background:#024a5a!important;box-shadow:0 14px 32px rgba(3,88,106,.45);}
.vic-h .vic-btn-out{border:2px solid rgba(3,88,106,.28)!important;color:#03586A!important;}
.vic-h .vic-btn-out:hover{border-color:#03586A!important;background:rgba(3,88,106,.05)!important;}
@media(max-width:600px){.vic-bloque{padding:60px 20px;}.vic-bloque h2{font-size:1.75rem!important;}.vic-bloque p{font-size:.88rem;}.vic-btns{flex-direction:column;align-items:center;}.vic-bloque .vic-btn,.vic-bloque .vic-btn-out{width:100%;max-width:320px;justify-content:center;}}/* End custom CSS */