:root{--bg:#080908;--panel:#10110f;--gold:#e8b633;--gold2:#ffe294;--text:#f6f0e5;--muted:#b9b09e;--line:#2a261c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}.top{height:84px;display:flex;align-items:center;gap:28px;padding:0 max(5vw,28px);position:sticky;top:0;z-index:20;background:#080908ee;border-bottom:1px solid #282316;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand img{width:48px;height:48px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand small{color:var(--gold);font-size:10px;letter-spacing:2px;font-weight:800}.top nav{display:flex;gap:28px;margin-left:auto}.top nav a,footer a{color:#d2c8b5;text-decoration:none;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid #5d4a19;color:#fff;cursor:pointer}.gold{background:linear-gradient(120deg,#fff0b7,#d9a31e,#ffe9a0);color:#15120a;border:0;box-shadow:0 8px 24px #b9861728}.dark{background:#151513}.hero{min-height:720px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;max-width:1200px;margin:auto;padding:90px 32px;position:relative}.hero:before{content:"";position:absolute;width:500px;height:500px;left:-250px;bottom:-100px;background:#a46d0925;filter:blur(80px);border-radius:50%}.eyebrow,.head>span{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:3px}.hero h1,.finance h2,.head h2,.coverage h2,.contact h2{font-size:clamp(46px,6vw,82px);line-height:.98;margin:26px 0 22px;letter-spacing:-3px}.hero h1 em,.finance h2 em{font-style:normal;color:var(--gold)}.hero-copy>p,.finance>div>p,.coverage p,.contact-copy>p{font-size:19px;line-height:1.6;color:var(--muted);max-width:700px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.proof{display:flex;gap:50px;margin-top:60px}.proof div{display:flex;flex-direction:column;gap:6px}.proof strong{font-size:25px;color:var(--gold)}.proof span{font-size:12px;color:var(--muted)}.hero-art{display:grid;place-items:center;position:relative;min-height:520px}.hero-art:before{content:"";position:absolute;width:430px;height:430px;background:#c7890b25;filter:blur(45px);border-radius:50%}.hero-art img{width:min(420px,90%);z-index:2;filter:drop-shadow(0 25px 45px #000)}.orbit{position:absolute;border:1px solid #b7832e40;border-radius:50%}.o1{width:480px;height:480px}.o2{width:560px;height:560px}.strip{padding:24px 20px;display:flex;justify-content:center;gap:30px;flex-wrap:wrap;background:var(--gold);color:#141108;font-weight:900;letter-spacing:2px}.section{padding:110px max(5vw,28px);max-width:1400px;margin:auto}.head{max-width:760px;margin-bottom:55px}.head h2{font-size:clamp(38px,5vw,62px)}.head p{color:var(--muted);font-size:18px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cards article{padding:34px 28px;background:linear-gradient(145deg,#151612,#0e0f0d);border:1px solid var(--line);border-radius:20px;transition:.25s}.cards article:hover{transform:translateY(-6px);border-color:#8c6922}.ico{font-size:32px;color:var(--gold)}.cards h3{font-size:23px}.cards p,.cards li{color:var(--muted);line-height:1.6}.cards ul{padding-left:18px;min-height:110px}.cards a{color:var(--gold);text-decoration:none;font-weight:800}.finance{max-width:1400px;margin:0 auto 80px;padding:90px max(5vw,28px);display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;background:radial-gradient(circle at 85% 40%,#b879102b,transparent 30%),#0d0e0c;border:1px solid var(--line);border-radius:28px}.finance h2{font-size:clamp(42px,5vw,70px)}.finance-card{padding:48px;background:linear-gradient(145deg,#e0ae31,#6d4b0b);border-radius:24px;color:#100e09;min-height:350px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 70px #0008}.finance-card small{letter-spacing:3px;font-weight:900}.finance-card strong{font-size:42px;line-height:1.05;margin:25px 0}.finance-card .line{height:1px;background:#20170755;margin:10px 0 20px}.finance-card p{line-height:1.5}.alt{border-top:1px solid var(--line)}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.benefits b{color:var(--gold);font-size:13px}.benefits h3{font-size:24px}.benefits p{color:var(--muted);line-height:1.6}.project-section{padding:110px max(5vw,28px);background:#eee8dc;color:#14130f}.project-section .head{max-width:1400px;margin-left:auto;margin-right:auto}.project-section .head>span{color:#8c6813}.project-section .head h2{font-size:clamp(38px,5vw,62px)}.project-section .head p{color:#625c51}.project-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:18px}.project{min-height:380px;border-radius:24px;padding:35px;display:flex;flex-direction:column;justify-content:flex-end;color:white;overflow:hidden;position:relative;background:#121310}.project:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,#d39a224d,transparent 35%),linear-gradient(0deg,#080808,transparent)}.project>*{position:relative}.project span{color:#f3c550;font-size:11px;font-weight:900;letter-spacing:2px}.project h3{font-size:32px;margin:10px 0}.project p{color:#d7d0c2}.p2{background:#171715}.p3{background:#111916}.coverage{max-width:1400px;margin:auto;padding:110px max(5vw,28px);display:grid;grid-template-columns:1fr 1fr;gap:60px}.coverage h2{font-size:clamp(40px,5vw,64px)}.places{display:flex;gap:12px;flex-wrap:wrap;align-content:center}.places span{padding:16px 20px;border:1px solid #56461f;border-radius:999px;color:#e6d8bd}.contact{max-width:1400px;margin:0 auto 80px;padding:90px max(5vw,28px);display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;background:#10110f;border:1px solid var(--line);border-radius:28px}.contact h2{font-size:clamp(42px,5vw,65px)}.contact-data{display:flex;flex-direction:column;gap:8px;margin-top:35px}.contact-data b{font-size:27px;color:var(--gold)}form{display:flex;flex-direction:column;gap:18px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:13px;color:#d4cab7;display:flex;flex-direction:column;gap:8px}input,select,textarea{width:100%;background:#090a09;border:1px solid #393426;border-radius:10px;padding:15px;color:#fff;font:inherit}textarea{resize:vertical}.check{flex-direction:row;align-items:flex-start}.check input{width:auto;margin-top:2px}form .btn{align-self:flex-start;font-size:15px}footer{padding:55px max(5vw,28px);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;color:var(--muted)}footer .brand img{width:42px;height:42px}footer>div:nth-of-type(2){display:flex;gap:20px;justify-content:flex-end}footer>small{grid-column:1/-1;border-top:1px solid #222;padding-top:22px}.social{position:fixed;right:22px;bottom:24px;z-index:30;display:flex;flex-direction:column;gap:10px}.social a{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#171713;border:1px solid #6c531c;color:#f5c44d;text-decoration:none;font-weight:900;font-size:21px;box-shadow:0 8px 22px #0007}.social .wa{background:#18b966;color:white;border-color:#35dd85}@media(max-width:950px){.top nav{display:none}.top .btn{margin-left:auto}.hero,.finance,.coverage,.contact{grid-template-columns:1fr}.hero{padding-top:55px}.hero-art{min-height:360px}.cards,.benefits{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr}.proof{gap:25px}.finance,.contact{border-radius:0;margin-bottom:0}.coverage{gap:20px}}@media(max-width:600px){.top{padding:0 16px}.brand span{display:none}.top>.btn{padding:0 16px}.hero{padding:55px 20px}.hero h1{letter-spacing:-2px}.hero-art{min-height:300px}.hero-art img{width:270px}.o1{width:300px;height:300px}.o2{width:350px;height:350px}.proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.proof strong{font-size:18px}.section,.project-section,.coverage,.contact,.finance{padding:75px 20px}.cards,.benefits,.row{grid-template-columns:1fr}.cards ul{min-height:auto}.finance-card{min-height:280px;padding:32px}.finance-card strong{font-size:35px}.contact{gap:35px}footer{grid-template-columns:1fr;padding:45px 20px}footer>div:nth-of-type(2){justify-content:flex-start}.social{right:12px;bottom:15px}.social a{width:46px;height:46px}}
/* V4: fotografías */
.hero-art.photo{display:block;min-height:0;border-radius:28px;overflow:hidden;border:1px solid #5b471d;box-shadow:0 32px 70px #000a;position:relative}.hero-art.photo:before{display:none}.hero-art.photo>img{width:100%;height:480px;object-fit:cover;display:block;filter:none}.hero-art.photo .hero-badge{position:absolute;left:22px;bottom:22px;display:flex;align-items:center;gap:12px;padding:10px 15px;border-radius:14px;background:#080908db;border:1px solid #80621e;backdrop-filter:blur(10px)}.hero-art.photo .hero-badge img{width:48px;height:48px;object-fit:contain;filter:none}.hero-art.photo .hero-badge span{font-size:12px;font-weight:800;letter-spacing:1px;color:#f3d074}.cards article{padding:0;overflow:hidden}.service-photo{width:100%;height:210px;display:block;object-fit:cover;border-bottom:1px solid var(--line);transition:transform .35s ease}.cards article:hover .service-photo{transform:scale(1.035)}.card-body{padding:26px 28px 32px}.cards .ico{margin-bottom:4px}.p1{background-image:linear-gradient(0deg,#080808e6,#0002),url('paneles-solares.jpg');background-size:cover;background-position:center}.p2{background-image:linear-gradient(0deg,#080808e6,#0002),url('cargador-ev.jpg');background-size:cover;background-position:center}.p3{background-image:linear-gradient(0deg,#080808e6,#0002),url('aire-acondicionado.jpg');background-size:cover;background-position:center}.project:before{background:linear-gradient(0deg,#080808d9,transparent 75%)}
@media(max-width:950px){.hero-art.photo>img{height:420px}}@media(max-width:600px){.hero-art.photo>img{height:280px}.hero-art.photo .hero-badge{left:12px;bottom:12px}.service-photo{height:220px}}

.service-photo-link{display:block;cursor:pointer}.service-photo-link img{display:block;width:100%}.service-photo-link:hover{filter:brightness(1.06)}


/* V5 · Cotizador guiado */
.dynamic-fields{display:flex;flex-direction:column;gap:18px;padding:18px;border:1px solid #2f2a1d;border-radius:14px;background:#0b0c0a}
.dynamic-fields:empty{display:none}
.field-help{font-size:12px;color:var(--muted);margin-top:-3px}
.upload-note{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:12px;background:#15140f;border:1px solid #332b19;color:#e9dec9}
.upload-note span{font-size:12px;color:var(--muted)}
.file-label input[type=file]{padding:11px;background:#090a09}
.submit-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.quote-status{font-size:13px;color:var(--muted)}
.quote-status.ok{color:#7ddf9d}
.quote-status.error{color:#ff9b8e}
.service-mini-title{font-size:12px;font-weight:900;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin:0}
.dynamic-fields .row{margin:0}
@media(max-width:600px){.submit-row .btn{width:100%}.quote-status{width:100%}}


/* V6 · Movimiento sutil y profesional */
html { scroll-behavior: smooth; }

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(26px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes softFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

@keyframes goldPulse {
  0%, 100% { box-shadow: 0 0 0 rgba(232,182,51,0); }
  50% { box-shadow: 0 0 28px rgba(232,182,51,.22); }
}

@keyframes imageZoom {
  from { transform: scale(1.02); }
  to   { transform: scale(1.08); }
}

.reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .7s ease, transform .7s ease;
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.service-card,
.project-card,
.feature-card {
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
@media (hover:hover) and (pointer:fine) {
  .service-card:hover,
  .project-card:hover,
  .feature-card:hover {
    transform: translateY(-7px);
    border-color: rgba(232,182,51,.55);
    box-shadow: 0 18px 45px rgba(0,0,0,.28);
  }

  .service-card:hover img,
  .project-card:hover img {
    transform: scale(1.06);
  }
}

.service-card img,
.project-card img,
.hero img {
  transition: transform .7s ease;
}

.hero img {
  animation: imageZoom 14s ease-in-out infinite alternate;
}

.btn.gold {
  animation: goldPulse 3.2s ease-in-out infinite;
}

.social a {
  transition: transform .2s ease;
}
@media (hover:hover) and (pointer:fine) {
  .social a:hover { transform: scale(1.12) rotate(3deg); }
}

.brand img {
  animation: softFloat 4.8s ease-in-out infinite;
}

.dynamic-fields {
  animation: fadeUp .35s ease both;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}


/* V7 · Parallax y carrusel */
.hero {
  position: relative;
  overflow: hidden;
}
.hero::before {
  content:"";
  position:absolute;
  inset:-8%;
  background:
    radial-gradient(circle at 75% 35%, rgba(232,182,51,.10), transparent 34%),
    radial-gradient(circle at 25% 65%, rgba(232,182,51,.05), transparent 38%);
  transform: translate3d(0, var(--hero-parallax, 0px), 0);
  transition: transform .08s linear;
  pointer-events:none;
}
.hero > * { position: relative; z-index: 1; }

.hero img {
  transform: translate3d(0, var(--hero-img-parallax, 0px), 0) scale(1.04);
  will-change: transform;
}

.project-carousel-section {
  padding: 90px 8%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0)),
    #090a09;
  border-top: 1px solid #2d2618;
}
.section-head {
  max-width: 760px;
  margin-bottom: 34px;
}
.section-head h2 {
  font-size: clamp(34px, 5vw, 64px);
  margin: 8px 0 12px;
}
.section-head p { color: var(--muted); max-width: 700px; }

.project-carousel {
  display: grid;
  grid-template-columns: 52px 1fr 52px;
  gap: 14px;
  align-items: center;
}
.carousel-track-wrap {
  overflow: hidden;
  min-width: 0;
}
.carousel-track {
  display: flex;
  gap: 18px;
  transition: transform .55s cubic-bezier(.2,.8,.2,1);
  will-change: transform;
}
.carousel-card {
  flex: 0 0 calc((100% - 36px)/3);
  min-width: 0;
  border: 1px solid #332b1a;
  border-radius: 20px;
  overflow: hidden;
  background: #11120f;
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
}
.carousel-card img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  display:block;
  transition: transform .6s ease;
}
.carousel-card:hover img { transform: scale(1.05); }
.carousel-copy { padding: 22px; }
.carousel-copy span {
  color: var(--gold);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.carousel-copy h3 { margin: 8px 0 10px; font-size: 24px; }
.carousel-copy p { margin:0; color:var(--muted); line-height:1.55; }

.carousel-btn {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid #4a3a18;
  background: #11120f;
  color: var(--gold);
  font-size: 34px;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}
.carousel-btn:hover { transform: scale(1.06); background:#17170f; }
.carousel-btn:disabled { opacity:.35; cursor:default; transform:none; }

.carousel-dots {
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:20px;
}
.carousel-dots button {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: none;
  padding: 0;
  background: #4e493e;
  cursor: pointer;
}
.carousel-dots button.active { background: var(--gold); }

@media (max-width: 980px) {
  .carousel-card { flex-basis: calc((100% - 18px)/2); }
}
@media (max-width: 700px) {
  .project-carousel { grid-template-columns: 1fr; }
  .carousel-card { flex-basis: 100%; }
  .carousel-btn {
    position: absolute;
    z-index: 2;
    margin-top: 120px;
  }
  .project-carousel { position:relative; }
  .carousel-btn.prev { left: 8px; }
  .carousel-btn.next { right: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero::before, .hero img, .carousel-track { transition:none !important; transform:none !important; }
}


/* V8 · Quiénes somos */
.about-section{
  padding:96px 8%;
  border-top:1px solid #2b2417;
  border-bottom:1px solid #2b2417;
  background:
    radial-gradient(circle at 85% 20%, rgba(232,182,51,.08), transparent 30%),
    linear-gradient(180deg,#0b0c0a,#090a09);
}
.about-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:56px;
  align-items:center;
}
.about-copy h2{
  font-size:clamp(34px,5vw,62px);
  line-height:1.05;
  margin:10px 0 24px;
  max-width:920px;
}
.about-copy p{
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
  max-width:880px;
}
.about-copy p strong{color:#f6f0e5}
.about-stats{
  display:grid;
  gap:16px;
}
.about-stat{
  min-height:132px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px 26px;
  border-radius:18px;
  border:1px solid #3a301d;
  background:linear-gradient(145deg,#13140f,#0d0e0c);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.about-stat strong{
  display:block;
  color:var(--gold);
  font-size:clamp(32px,4vw,52px);
  line-height:1;
  margin-bottom:8px;
}
.about-stat span{
  color:#e7dfcf;
  font-size:15px;
  line-height:1.4;
}
@media (hover:hover) and (pointer:fine){
  .about-stat:hover{
    transform:translateY(-6px);
    border-color:rgba(232,182,51,.55);
    box-shadow:0 18px 45px rgba(0,0,0,.24);
  }
}
@media(max-width:860px){
  .about-grid{grid-template-columns:1fr;gap:34px}
  .about-stats{grid-template-columns:1fr}
}

/* TEMA BLANCO + REDES */
html,body{
  background:#fff !important;
  color:#171717 !important;
}

.top,
.hero,
.section,
.section.alt,
.coverage,
.contact,
.finance,
.project-section,
.project-video-section,
footer{
  background:#fff !important;
  color:#171717 !important;
}

.top{
  background:rgba(255,255,255,.96) !important;
  border-bottom:1px solid #e5e5e5 !important;
}

.top nav a,
footer a{
  color:#222 !important;
}

.hero-copy>p,
.head p,
.coverage p,
.contact-copy>p,
.finance>div>p,
.cards p,
.cards li,
.benefits p,
footer{
  color:#666 !important;
}

.cards{
  grid-template-columns:repeat(3,1fr) !important;
}

.cards article{
  background:#fff !important;
  color:#171717 !important;
  border:1px solid #ddd !important;
  box-shadow:0 10px 30px rgba(0,0,0,.08) !important;
}

.contact{
  border:1px solid #ddd !important;
}

input,select,textarea{
  background:#fff !important;
  color:#171717 !important;
  border:1px solid #bbb !important;
}

label{
  color:#333 !important;
}

.p3{
  background-image:
  linear-gradient(0deg,#080808dd,#0002),
  url('instalacion-electrica.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
}

.social{
  position:fixed !important;
  right:18px !important;
  bottom:22px !important;
  z-index:9999 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
}

.social a{
  width:58px !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  border:0 !important;
  box-shadow:0 8px 22px rgba(0,0,0,.25) !important;
}

.social svg{
  width:30px !important;
  height:30px !important;
  fill:#fff !important;
}

.social .wa{
  background:#25D366 !important;
}

.social .fb{
  background:#1877F2 !important;
}

.social .tt{
  background:#000 !important;
}

@media(max-width:600px){
  .cards{
    grid-template-columns:1fr !important;
  }

  .social{
    right:12px !important;
    bottom:15px !important;
  }

  .social a{
    width:52px !important;
    height:52px !important;
  }
}

/* CONTRASTE FINAL V2 */
.coverage h2,
.head h2,
.cards h3,
.benefits h3,
.about-copy h2,
.contact h2{
  color:#151515 !important;
}

.coverage p,
.head p,
.cards p,
.cards li,
.benefits p,
.about-copy p,
.contact-copy p{
  color:#60646a !important;
}

.places span{
  color:#181818 !important;
  background:#fff !important;
  border-color:#9b8350 !important;
}

.eyebrow,
.head>span{
  color:#b88925 !important;
}

.about-copy p strong{
  color:#171717 !important;
}

.about-stat{
  background:#fff !important;
  border-color:#e2ded5 !important;
}

.about-stat strong{
  color:#b88925 !important;
}

.about-stat span{
  color:#4f5358 !important;
}

.project-section .head h2{
  color:#151515 !important;
}

.project-section .head p{
  color:#60646a !important;
}

/* Dentro de las fotos sí conservamos texto blanco */
.project h3{
  color:#fff !important;
}

.project p{
  color:#eee !important;
}



/* CHATBOT ELÉCTRICOS CORP TP */
.chatbot-btn{
  position:fixed;
  right:22px;
  bottom:92px;
  z-index:1200;
  border:0;
  border-radius:999px;
  background:#c7a443;
  color:#111;
  padding:13px 18px;
  font-weight:800;
  font-size:15px;
  cursor:pointer;
  box-shadow:0 12px 35px rgba(0,0,0,.25);
}
.chatbot-btn span{margin-left:5px}

.chatbot-box{
  display:none;
  position:fixed;
  right:22px;
  bottom:150px;
  z-index:1300;
  width:min(380px,calc(100vw - 28px));
  max-height:620px;
  background:#fff;
  border:1px solid #e5dfd0;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.28);
}
.chatbot-box.open{display:block}

.chatbot-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:15px 16px;
  background:#0b0b0b;
  color:#fff;
}
.chatbot-head strong,
.chatbot-head small{display:block}
.chatbot-head small{
  margin-top:3px;
  color:#d5c790;
}
.chatbot-head button{
  border:0;
  background:transparent;
  color:#fff;
  font-size:28px;
  cursor:pointer;
}

.chatbot-messages{
  min-height:220px;
  max-height:390px;
  overflow:auto;
  padding:16px;
  background:#f7f5ef;
}
.chat-msg{
  max-width:88%;
  margin:0 0 11px;
  padding:11px 13px;
  border-radius:14px;
  line-height:1.4;
  font-size:14px;
}
.chat-msg.bot{
  background:#fff;
  color:#222;
  border:1px solid #e6dfcd;
}
.chat-msg.user{
  margin-left:auto;
  background:#111;
  color:#fff;
}

.chatbot-actions{
  display:grid;
  gap:8px;
  padding:12px;
  background:#fff;
  border-top:1px solid #eee7d8;
}
.chatbot-actions button{
  width:100%;
  border:1px solid #c7a443;
  border-radius:10px;
  padding:11px;
  background:#fff;
  color:#111;
  font-weight:700;
  cursor:pointer;
}
.chatbot-actions button:hover{
  background:#c7a443;
}

@media(max-width:600px){
  .chatbot-btn{
    right:14px;
    bottom:88px;
  }
  .chatbot-box{
    right:14px;
    bottom:145px;
    width:calc(100vw - 28px);
  }
}
/* FIN CHATBOT */

/* POSICION CHATBOT SOBRE WHATSAPP */
.chatbot-btn{
  right:18px !important;
  bottom:160px !important;
}
.chatbot-box{
  right:18px !important;
  bottom:220px !important;
}
@media(max-width:600px){
  .chatbot-btn{
    right:14px !important;
    bottom:158px !important;
  }
  .chatbot-box{
    right:14px !important;
    bottom:218px !important;
  }
}

/* CHATBOT COMPACTO FINAL */
.chatbot-btn{
  right:18px !important;
  bottom:205px !important;
  padding:8px 12px !important;
  font-size:12px !important;
  font-weight:700 !important;
  min-height:0 !important;
  line-height:1.2 !important;
  box-shadow:0 7px 20px rgba(0,0,0,.18) !important;
}

.chatbot-btn span{
  margin-left:3px !important;
}

.chatbot-box{
  right:18px !important;
  bottom:250px !important;
}

@media(max-width:600px){
  .chatbot-btn{
    right:14px !important;
    bottom:200px !important;
    padding:8px 10px !important;
    font-size:11px !important;
  }

  .chatbot-box{
    right:14px !important;
    bottom:245px !important;
  }
}

/* POSICION FINAL ASESORIA TECNICA */
.chatbot-btn{
  right:18px !important;
  bottom:280px !important;
}

.chatbot-box{
  right:18px !important;
  bottom:325px !important;
}

@media(max-width:600px){
  .chatbot-btn{
    right:14px !important;
    bottom:275px !important;
  }

  .chatbot-box{
    right:14px !important;
    bottom:320px !important;
  }
}

/* V5.1 · Mejor contraste formulario solar */
.dynamic-fields label{
    color:#ffffff !important;
    font-weight:600;
}

.dynamic-fields .field-help{
    color:#ffffff !important;
}

.dynamic-fields .upload-note,
.dynamic-fields .upload-note span{
    color:#ffffff !important;
}

/* El título permanece dorado */
.dynamic-fields .service-mini-title{
    color:var(--gold) !important;
}


/* V5.2 · Forzar texto blanco dentro del cotizador dinámico */
#dynamicFields label,
#dynamicFields .field-help,
#dynamicFields .upload-note,
#dynamicFields .upload-note span{
    color:#ffffff !important;
    opacity:1 !important;
}

#dynamicFields label{
    font-weight:700 !important;
}

/* Mantener encabezado en dorado */
#dynamicFields .service-mini-title{
    color:var(--gold) !important;
    opacity:1 !important;
}


/* === POSICION DEFINITIVA CHATBOT === */
.chatbot-btn{
  position:fixed !important;
  left:14px !important;
  right:auto !important;
  bottom:18px !important;
  top:auto !important;
  z-index:9998 !important;
}
.chatbot-box{
  position:fixed !important;
  left:14px !important;
  right:auto !important;
  bottom:62px !important;
  top:auto !important;
  z-index:9999 !important;
}
@media(max-width:600px){
  .chatbot-btn{
    left:10px !important;
    right:auto !important;
    bottom:12px !important;
  }
  .chatbot-box{
    left:10px !important;
    right:auto !important;
    bottom:56px !important;
    width:calc(100vw - 20px) !important;
  }
}
/* === FIN POSICION DEFINITIVA CHATBOT === */

/* FIX 2026-09-29: contraste en Proyectos Destacados */
.project-carousel-section{
  color:#f6f0e5 !important;
}
.project-carousel-section .section-head h2{
  color:#f6f0e5 !important;
  opacity:1 !important;
}
.project-carousel-section .section-head p{
  color:#c9c1b2 !important;
  opacity:1 !important;
}
.project-carousel-section .eyebrow{
  color:#e8b633 !important;
  opacity:1 !important;
}
.project-carousel-section .carousel-copy h3{
  color:#f6f0e5 !important;
  opacity:1 !important;
}
.project-carousel-section .carousel-copy p{
  color:#c9c1b2 !important;
  opacity:1 !important;
}
.project-carousel-section .carousel-copy span{
  color:#e8b633 !important;
  opacity:1 !important;
}
