:root{--wine:#5d0714;--wine2:#250108;--gold:#e2b348;--gold2:#f5d77c;--ink:#0d0d0d;--cream:#f7f1e7;--muted:#726b62;--line:rgba(226,179,72,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#16120f;background:#0b0807;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{position:fixed;inset:0 0 auto;z-index:40;background:rgba(8,7,6,.78);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}.nav-wrap{height:86px;display:flex;align-items:center;gap:28px}.brand{width:160px;height:76px;display:flex;align-items:center}.brand img{height:72px;width:auto;object-fit:contain}.main-nav{display:flex;gap:26px;margin-left:auto}.main-nav a{font-size:14px;color:#eee8df;position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--gold);transition:.25s}.main-nav a:hover:after{right:0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:800;font-size:14px;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#241703;box-shadow:0 12px 28px rgba(226,179,72,.18)}.btn-outline{border:1px solid rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.03)}.nav-cta{min-height:44px;padding:0 18px}.menu-btn{display:none;background:none;border:0;padding:10px}.menu-btn span{display:block;width:25px;height:2px;background:#fff;margin:5px}
.hero{min-height:780px;position:relative;color:white;display:flex;flex-direction:column;justify-content:flex-end;padding-top:86px}.hero-media{position:absolute;inset:0;background:url('assets/mariachis-kadistu-hero-portada-santiago.png') center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,3,4,.92) 0%,rgba(8,3,4,.77) 31%,rgba(8,3,4,.18) 63%,rgba(8,3,4,.38) 100%),linear-gradient(0deg,rgba(10,4,5,.9) 0%,transparent 35%)}.hero-content{position:relative;z-index:2;flex:1;display:flex;align-items:center;padding-top:60px;padding-bottom:150px}.hero-copy{max-width:660px}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.25em;font-size:12px;font-weight:900;color:var(--gold2);margin-bottom:14px}.eyebrow.dark{color:#9c6a09}.hero h1,.section h2{font-family:Georgia,"Times New Roman",serif;line-height:1.03;margin:0}.hero h1{font-size:clamp(46px,6vw,82px);font-weight:500;max-width:700px}.hero h1 em{font-style:normal;color:var(--gold2)}.hero-copy>p{font-size:20px;max-width:600px;color:#eee7df;margin:22px 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-meta{display:flex;gap:14px;align-items:center;margin-top:28px;color:#d5ccc4;font-size:13px}.hero-meta i{width:5px;height:5px;border-radius:50%;background:var(--gold)}.hero-bottom{position:absolute;left:0;right:0;bottom:0;z-index:3;background:rgba(7,7,7,.78);border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px)}.feature-strip{min-height:118px;display:grid;grid-template-columns:repeat(4,1fr)}.feature-strip article{display:flex;align-items:center;gap:14px;padding:22px 26px;border-right:1px solid rgba(255,255,255,.1)}.feature-strip article:last-child{border:0}.feature-strip b{font-size:28px;color:var(--gold2)}.feature-strip strong,.feature-strip small{display:block}.feature-strip strong{font-size:15px}.feature-strip small{color:#b7aea6;font-size:12px}
.section{padding:100px 0}.light{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section h2{font-size:clamp(40px,5vw,60px);color:#1e1713}.copy .lead{font-size:20px;color:#2d2925}.copy p{color:#686058}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:28px 0}.check-grid span{font-weight:700;color:#392d25}.text-link{display:inline-block;color:#7e101c;font-weight:800;border-bottom:1px solid #7e101c;padding-bottom:4px}.about-card{position:relative}.about-card img{width:100%;height:500px;object-fit:cover;border-radius:24px}.floating-card{position:absolute;right:-24px;bottom:28px;background:#fff;padding:18px 22px;border-radius:16px;box-shadow:0 18px 45px rgba(55,30,10,.16);border-left:4px solid var(--gold)}.floating-card strong,.floating-card span{display:block}.floating-card span{font-size:13px;color:#756b60}
.dark-section{background:radial-gradient(circle at 80% 10%,rgba(106,16,28,.45),transparent 34%),#100c0b;color:white}.section-head{max-width:720px;margin-bottom:46px}.section-head h2{color:#fff}.section-head p{color:#bbb1aa}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{min-height:300px;padding:30px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.035);transition:.25s}.service-card:hover{transform:translateY(-6px);border-color:rgba(226,179,72,.6);background:rgba(255,255,255,.055)}.service-card .num{font-family:Georgia,serif;color:var(--gold);font-size:38px}.service-card h3{font-family:Georgia,serif;font-size:27px;margin:45px 0 10px}.service-card p{color:#bfb5ae;font-size:14px}
.gallery-section{background:#fff}.row-head{max-width:none;display:grid;grid-template-columns:1fr .7fr;align-items:end;gap:80px}.row-head h2{color:#1e1713}.row-head p{margin:0;color:#716960}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:260px 260px;gap:16px}.gallery-grid figure{position:relative;margin:0;overflow:hidden;border-radius:18px;background:#222}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-grid figure:hover img{transform:scale(1.05)}.gallery-grid figcaption{position:absolute;left:18px;bottom:16px;color:white;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.7)}.gallery-grid figure:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65));pointer-events:none}.gallery-grid figcaption{z-index:2}.g1{grid-row:1/3}.g4{grid-column:2/4}
.cta-band{background:linear-gradient(90deg,#42050e,#7a101e);color:#fff;padding:72px 0;position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;right:-80px;top:-150px;width:420px;height:420px;border:1px solid rgba(226,179,72,.15);border-radius:50%}.cta-inner{display:flex;justify-content:space-between;gap:50px;align-items:center;position:relative}.cta-inner h2{color:#fff;font-size:50px}.cta-inner p{margin-bottom:0;color:#e8d8d8}.btn.large{min-width:190px;min-height:56px}
.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:start}.contact-card{background:#15100d;border-radius:22px;padding:12px}.contact-card a{display:block;padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.08);transition:.2s}.contact-card a:last-child{border:0}.contact-card a:hover{background:rgba(255,255,255,.04);border-radius:12px}.contact-card span,.contact-card strong{display:block}.contact-card span{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#c9b9a7}.contact-card strong{font-size:20px;color:#fff;margin-top:5px}
footer{background:#070605;color:#8f8880;padding:30px 0;border-top:1px solid rgba(255,255,255,.06)}.footer-inner{display:flex;align-items:center;gap:24px}.footer-inner img{width:110px;height:70px;object-fit:contain}.footer-inner p{margin:0;color:#ddd}.footer-inner>span{margin-left:auto;font-size:12px}.wa-float{position:fixed;right:22px;bottom:22px;z-index:50;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:28px;font-weight:900;box-shadow:0 14px 35px rgba(0,0,0,.28)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:980px){.nav-cta{display:none}.main-nav{position:fixed;top:86px;left:16px;right:16px;display:none;flex-direction:column;padding:22px;background:#110c0b;border:1px solid rgba(255,255,255,.08);border-radius:16px}.main-nav.open{display:flex}.menu-btn{display:block;margin-left:auto}.hero{min-height:760px}.hero-content{padding-bottom:210px}.feature-strip{grid-template-columns:1fr 1fr}.feature-strip article:nth-child(2){border-right:0}.split,.contact-grid{grid-template-columns:1fr;gap:44px}.service-grid{grid-template-columns:1fr 1fr}.row-head{grid-template-columns:1fr;gap:10px}.cta-inner{align-items:flex-start;flex-direction:column}.floating-card{right:18px}}
@media (max-width:640px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:74px}.site-header .brand{width:122px;height:64px}.brand img{height:60px}.main-nav{top:74px}.hero{padding-top:74px;min-height:770px}.hero-media{background-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(8,3,4,.92),rgba(8,3,4,.55)),linear-gradient(0deg,rgba(7,2,3,.95),transparent 50%)}.hero-content{align-items:flex-end;padding-bottom:205px}.hero h1{font-size:46px}.hero-copy>p{font-size:17px}.hero-actions .btn{width:100%}.hero-meta{font-size:11px;flex-wrap:wrap}.feature-strip{grid-template-columns:1fr 1fr;min-height:160px}.feature-strip article{padding:16px 12px}.feature-strip b{font-size:22px}.feature-strip strong{font-size:13px}.feature-strip small{font-size:10px}.section{padding:72px 0}.section h2{font-size:40px}.about-card img{height:360px}.check-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-card{min-height:240px}.service-card h3{margin-top:25px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:240px 200px 220px}.g1{grid-row:auto;grid-column:1/3}.g4{grid-column:1/3}.cta-inner h2{font-size:38px}.footer-inner{flex-direction:column;align-items:flex-start}.footer-inner>span{margin:0}.wa-float{width:54px;height:54px;right:14px;bottom:14px}}
/* Refinements v2 */
.btn-wa{background:#25D366;color:#fff;box-shadow:0 12px 30px rgba(37,211,102,.22);gap:10px}.btn-wa:hover{background:#20bd5a}.btn-wa svg{width:22px;height:22px;flex:none}.btn-wa span{display:flex;flex-direction:column;line-height:1.05}.btn-wa small{font-size:10px;font-weight:700;opacity:.92;margin-top:3px}.btn-wa.big{min-height:54px}.hero-logo{width:225px;max-height:140px;object-fit:contain;object-position:left center;margin:0 0 10px}.service-grid.six{grid-template-columns:repeat(3,1fr)}.why-section{background:#f8f3ea}.section-head.center{text-align:center;max-width:760px;margin:0 auto 45px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.why-grid article{background:#fff;border:1px solid #eadfcd;border-radius:18px;padding:30px 24px;text-align:center}.why-grid b{font-size:30px;color:#a06a0b}.why-grid h3{font-family:Georgia,serif;font-size:23px;margin:14px 0 8px}.why-grid p{color:#756b61;font-size:14px;margin:0}.testimonials{background:#fff8ec}.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.test-grid article{background:#fff;border:1px solid #eadbc4;border-radius:18px;padding:28px;font-family:Georgia,serif;font-size:20px;line-height:1.55;color:#4a382c;box-shadow:0 10px 30px rgba(70,40,15,.05)}.contact-btn{margin-top:20px}.contact-card .location{padding:22px 24px}.contact-card .location span,.contact-card .location strong{display:block}.contact-card .location span{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#c9b9a7}.contact-card .location strong{font-size:18px;color:#fff;margin-top:5px}.wa-float svg{width:30px;height:30px}.about-card img{height:470px;object-position:center}.gallery-grid .g4 img{object-position:center 35%}
@media (max-width:980px){.service-grid.six{grid-template-columns:1fr 1fr}.why-grid{grid-template-columns:1fr 1fr}.test-grid{grid-template-columns:1fr}.hero-logo{width:190px}}
@media (max-width:640px){.hero-logo{width:160px}.service-grid.six,.why-grid{grid-template-columns:1fr}.btn-wa.nav-cta{display:none}.about-card img{height:330px}.test-grid article{font-size:18px}}

/* Contrast + responsive fixes */
.why-section .section-head h2,.gallery-section .section-head h2,.testimonials .section-head h2,.light .section-head h2{color:#1e1713}
.why-section .section-head p,.gallery-section .section-head p,.testimonials .section-head p,.light .section-head p{color:#6f675f}
.why-section .section-head,.testimonials .section-head{margin-bottom:40px}
.why-section .section-head h2,.testimonials .section-head h2{font-size:clamp(36px,4.6vw,58px)}
.why-grid article,.test-grid article,.contact-card,.service-card{box-shadow:0 10px 28px rgba(40,22,9,.05)}
@media (max-width:980px){.why-section .section-head h2,.testimonials .section-head h2{font-size:clamp(32px,6vw,44px)}.cta-inner .btn.large{width:100%;max-width:420px}.contact-card{width:100%}}
@media (max-width:640px){.main-nav a{padding:8px 0}.hero-copy{width:100%}.hero h1{font-size:40px}.hero-copy>p{font-size:16px}.why-grid article,.service-card,.test-grid article{padding:22px 18px}.contact-card a,.contact-card .location{padding:18px}.cta-inner .btn.large,.contact-btn{width:100%}.section-head.center{margin-bottom:28px}.why-section .section-head h2,.testimonials .section-head h2{font-size:34px}.row-head p{font-size:15px}}

/* Project update v3: real images + better mobile */
.hero-media{background-image:url('assets/mariachis-kadistu-hero-portada-santiago.png');background-position:center 28%}
.about-card img,.gallery-grid img{background:#120b09}
.gallery-grid figure{box-shadow:0 12px 28px rgba(36,18,7,.12)}
.footer-inner{justify-content:space-between}
@media (max-width:980px){.hero{min-height:690px}.hero-content{padding-top:40px;padding-bottom:180px}.feature-strip article{min-height:92px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px 240px}.g1{grid-row:auto;grid-column:1/3}.g4{grid-column:1/3}.footer-inner{gap:14px}}
@media (max-width:640px){.site-header{backdrop-filter:blur(10px)}.nav-wrap{gap:12px}.menu-btn{padding:8px 6px}.hero{min-height:640px}.hero-content{padding-top:24px;padding-bottom:185px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(34px,10vw,42px);line-height:1.05}.hero-copy>p{max-width:100%;font-size:15px;line-height:1.55;margin:18px 0 22px}.hero-actions{gap:10px}.hero-actions .btn{min-height:50px}.feature-strip{grid-template-columns:1fr;min-height:auto}.feature-strip article{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding:14px 10px}.feature-strip article:last-child{border-bottom:0}.split,.contact-grid{gap:30px}.section{padding:64px 0}.about-card img{height:280px;border-radius:18px}.floating-card{position:static;margin-top:12px;width:100%}.service-card{min-height:unset}.gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:14px}.gallery-grid figure,.g1,.g4{grid-column:auto;grid-row:auto}.gallery-grid figure{height:230px}.gallery-grid figure img{height:100%}.section-head.row-head{gap:16px}.section-head.row-head p{max-width:none}.test-grid article{font-size:17px;line-height:1.45}.contact-card strong{font-size:18px}.footer-inner{align-items:center;text-align:center}.footer-inner p,.footer-inner>span{width:100%}.wa-float{right:12px;bottom:12px;width:52px;height:52px}}


/* =======================================================
   NUEVAS SECCIONES: GALERÍAS Y MODALES MULTIMEDIA (PHP/CMS)
   ======================================================= */

/* Galería de Videos */
.video-gallery-section {
  background: radial-gradient(circle at 20% 80%, rgba(93, 7, 20, 0.45), transparent 45%), #0c0908;
  color: #fff;
}

.video-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.video-card {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}

.video-card:hover {
  transform: translateY(-6px);
  border-color: rgba(226, 179, 72, 0.65);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45);
}

.video-thumb-wrap {
  position: relative;
  aspect-ratio: 16 / 9;
  background-color: #000;
  overflow: hidden;
}

.video-thumb-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.video-card:hover .video-thumb-wrap img {
  transform: scale(1.06);
}

.video-play-btn {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: rgba(93, 7, 20, 0.85);
  border: 2px solid var(--gold2);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
  transition: transform 0.25s ease, background 0.25s ease;
}

.video-play-btn svg {
  width: 24px;
  height: 24px;
  margin-left: 3px;
  fill: var(--gold2);
  transition: transform 0.25s ease;
}

.video-card:hover .video-play-btn {
  transform: scale(1.12);
  background: var(--wine);
}

.video-card:hover .video-play-btn svg {
  fill: #fff;
}

.video-card-body {
  padding: 22px 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.video-card-body h3 {
  font-family: Georgia, serif;
  font-size: 21px;
  color: #fff;
  margin: 0 0 10px;
  line-height: 1.25;
}

.video-card-body p {
  color: #bfb5ae;
  font-size: 14px;
  margin: 0 0 16px;
  line-height: 1.5;
  flex: 1;
}

.video-watch-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--gold2);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Galería Fotográfica Dinámica */
.photos-grid-dynamic {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 20px;
}

.photos-grid-dynamic figure {
  position: relative;
  margin: 0;
  height: 280px;
  border-radius: 18px;
  overflow: hidden;
  background: #140d0c;
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

.photos-grid-dynamic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.photos-grid-dynamic figure:hover img {
  transform: scale(1.07);
}

.photos-grid-dynamic figure:after {
  content: "";
  position: absolute;
  inset: 35% 0 0;
  background: linear-gradient(transparent, rgba(12, 5, 6, 0.85));
  pointer-events: none;
}

.photos-grid-dynamic figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 18px;
  z-index: 2;
  color: #fff;
}

.photos-grid-dynamic figcaption strong {
  display: block;
  font-size: 16px;
  font-weight: 700;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8);
}

.photos-grid-dynamic figcaption small {
  display: block;
  font-size: 12px;
  color: var(--gold2);
  margin-top: 2px;
}

/* Modales Multimedia */
.media-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.88);
  backdrop-filter: blur(8px);
}

.media-modal.open {
  display: flex;
}

.media-modal-dialog {
  position: relative;
  width: 100%;
  max-width: 900px;
  border-radius: 16px;
  overflow: hidden;
  background: #100b0a;
  border: 1px solid rgba(226, 179, 72, 0.35);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.8);
}

.media-modal-close {
  position: absolute;
  top: 14px;
  right: 16px;
  z-index: 10;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
}

.media-modal-close:hover {
  background: var(--wine);
  transform: scale(1.1);
}

.video-frame-container {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
  overflow: hidden;
}

.video-frame-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.photo-modal-img-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  max-height: 75vh;
}

.photo-modal-img-wrap img {
  max-height: 75vh;
  width: auto;
  object-fit: contain;
}

.photo-modal-caption {
  padding: 16px 22px;
  background: #16100f;
  color: #fff;
}

.photo-modal-caption h4 {
  margin: 0;
  font-size: 17px;
  color: #fff;
}

.photo-modal-caption p {
  margin: 4px 0 0;
  font-size: 13px;
  color: var(--gold2);
}

/* Optimización Responsive para Móviles */
@media (max-width: 980px) {
  .video-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .video-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .video-card-body {
    padding: 18px 16px;
  }
  .video-card-body h3 {
    font-size: 19px;
  }
  .photos-grid-dynamic {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .photos-grid-dynamic figure {
    height: 240px;
  }
  .media-modal {
    padding: 10px;
  }
  .media-modal-close {
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
    font-size: 20px;
  }
  /* Floating WhatsApp safe area spacing */
  .wa-float {
    bottom: max(16px, env(safe-area-inset-bottom));
    right: 16px;
  }
}


/* =======================================================
   REFINAMIENTO DE BOTONES Y WHATSAPP OFICIAL
   ======================================================= */
.wa-icon-brand {
  width: 20px;
  height: 20px;
  flex: none;
  fill: currentColor;
}

.btn-gold.nav-cta {
  min-height: 46px;
  padding: 0 20px;
  gap: 12px;
  color: #1f1404;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.btn-gold.nav-cta span {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
  text-align: left;
}

.btn-gold.nav-cta strong {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: -0.2px;
}

.btn-gold.nav-cta small {
  font-size: 10px;
  font-weight: 700;
  opacity: 0.88;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.btn-gold.large {
  font-size: 16px;
  padding: 0 32px;
  min-height: 54px;
  gap: 10px;
}

.wa-float {
  background: #25D366 !important;
  color: #fff !important;
  box-shadow: 0 10px 28px rgba(37, 211, 102, 0.45) !important;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease !important;
}

.wa-float:hover {
  transform: scale(1.1) !important;
  box-shadow: 0 16px 36px rgba(37, 211, 102, 0.65) !important;
}

.wa-float svg {
  width: 32px !important;
  height: 32px !important;
  fill: #fff !important;
}


/* =======================================================
   REFINAMIENTOS PROFESIONALES: SERVICIOS CON FOTOS, 
   ICONOS FORMALES Y CONTRASTE EN GALERÍA DE VIDEO
   ======================================================= */

/* 1. Sección Servicios más compacta y visual */
.services-section {
  padding: 68px 0 !important;
}

.services-section .section-head {
  margin-bottom: 34px !important;
}

.service-card {
  padding: 0 !important;
  min-height: auto !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  background: rgba(22, 16, 15, 0.85) !important;
  border: 1px solid rgba(226, 179, 72, 0.28) !important;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.service-card:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(226, 179, 72, 0.75) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.5) !important;
}

.service-card-media {
  height: 155px;
  position: relative;
  overflow: hidden;
  background-color: #0b0706;
}

.service-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.service-card:hover .service-card-media img {
  transform: scale(1.07);
}

.service-card-media:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(18, 12, 11, 0.95) 100%);
  pointer-events: none;
}

.service-card-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  background: rgba(9, 3, 5, 0.85);
  border: 1px solid var(--gold);
  color: var(--gold2);
  font-weight: 800;
  font-size: 12px;
  padding: 3px 10px;
  border-radius: 999px;
  backdrop-filter: blur(4px);
  z-index: 2;
}

.service-card-body {
  padding: 18px 22px 22px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.service-card-body h3 {
  font-family: Georgia, serif;
  font-size: 20px;
  margin: 0 0 8px;
  color: #fff;
  line-height: 1.25;
}

.service-card-body p {
  color: #bfb5ae;
  font-size: 13.5px;
  line-height: 1.5;
  margin: 0;
}

/* 2. Contraste de título en Galería de Videos */
.video-gallery-section .section-head h2,
.video-gallery-section .row-head h2,
.video-head-dark h2 {
  color: #ffffff !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.85) !important;
}

.video-gallery-section .section-head .eyebrow,
.video-head-dark .eyebrow {
  color: var(--gold2) !important;
}

.video-gallery-section .section-head p,
.video-gallery-section .row-head p,
.video-head-dark p {
  color: #dfd5cb !important;
}

/* 3. Iconos formales vectoriales (sin emojis) */
.feat-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(226, 179, 72, 0.12);
  border: 1px solid rgba(226, 179, 72, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold2);
  flex-shrink: 0;
  transition: transform 0.2s ease, background 0.2s ease;
}

.feature-strip article:hover .feat-icon-wrap {
  transform: translateY(-2px);
  background: rgba(226, 179, 72, 0.22);
}

.feat-icon-wrap svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}

.why-icon-wrap {
  width: 60px;
  height: 60px;
  margin: 0 auto 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(226, 179, 72, 0.18), rgba(93, 7, 20, 0.12));
  border: 1px solid rgba(226, 179, 72, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #a06a0b;
  transition: transform 0.25s ease, background 0.25s ease;
}

.why-grid article:hover .why-icon-wrap {
  transform: scale(1.08);
  background: linear-gradient(135deg, rgba(226, 179, 72, 0.26), rgba(93, 7, 20, 0.18));
}

.why-icon-wrap svg {
  width: 28px;
  height: 28px;
  fill: currentColor;
}

.check-item-formal {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
  color: #392d25;
}

.check-icon-svg {
  width: 18px;
  height: 18px;
  fill: #9c6a09;
  flex-shrink: 0;
}

/* Responsividad para Servicios y Galerías en Celulares */
@media (max-width: 640px) {
  .services-section {
    padding: 48px 0 !important;
  }
  .service-card-media {
    height: 140px;
  }
}
