
:root{
  --ink:#17313f;
  --dark:#263748;
  --dark2:#1f2d3a;
  --cyan:#46bfd4;
  --cyan2:#2aaac0;
  --pale:#edf9fb;
  --soft:#f7fafb;
  --line:#d8e7eb;
  --muted:#617682;
  --white:#fff;
  --warn:#fff2e8;
  --orange:#d97725;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}
.wrap{width:min(1180px,92%);margin:auto}

/* Header */
.header{
  position:sticky;top:0;z-index:9000;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px)
}
.disclaimer-bar{background:#ffce31;color:#0d1b2e;text-align:center;font-size:12.5px;font-weight:800;padding:8px 16px}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{height:50px;max-width:315px;object-fit:contain}
.links{display:flex;gap:16px;align-items:center;font-size:13.5px;font-weight:850}
.links a{white-space:nowrap}
.links a:hover{color:var(--cyan2)}
.form-nav{padding:11px 16px;border-radius:999px;background:var(--dark);color:#fff!important}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;color:var(--dark);border-radius:11px;padding:10px 14px;font-weight:900;font:inherit;cursor:pointer}

/* Hero */
.hero{
  position:relative;overflow:hidden;padding:78px 0 84px;
  background:
    radial-gradient(circle at 82% 20%,rgba(70,191,212,.16),transparent 24%),
    linear-gradient(135deg,#fbfeff 0 58%,#edf8fa 58% 100%);
}
.hero::before{
  content:"";position:absolute;inset:0;
  background:
    repeating-radial-gradient(circle at 18% 28%,rgba(38,55,72,.045) 0 1px,transparent 1px 22px);
  mask-image:linear-gradient(to right,black 0 52%,transparent 90%);
}
.hero::after{
  content:"CECOTEC · ROBOT · ASPIRACIÓN · MADRID";
  position:absolute;left:-20px;bottom:12px;
  font-size:72px;font-weight:950;letter-spacing:8px;
  color:transparent;-webkit-text-stroke:1px rgba(38,55,72,.07);
  white-space:nowrap;pointer-events:none
}
.hero-wave{
  position:absolute;right:-190px;top:-170px;width:520px;height:520px;
  border:74px solid rgba(70,191,212,.09);
  border-radius:42% 58% 64% 36% / 44% 39% 61% 56%;
  transform:rotate(20deg)
}
.hero-chip{
  position:absolute;right:7%;bottom:19%;
  padding:10px 17px;border-radius:999px;
  background:#fff;border:1px solid #ccebef;
  color:var(--cyan2);font-weight:900;transform:rotate(-6deg)
}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.18fr .82fr;gap:56px;align-items:start}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--cyan2);font-size:12px;font-weight:950;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px}
.eyebrow::before{content:"";width:34px;height:4px;border-radius:20px;background:var(--cyan)}
h1{font-size:clamp(46px,5.6vw,74px);line-height:1.03;letter-spacing:-2.4px;margin:0 0 24px;max-width:790px}
.accent{color:var(--cyan2)}
.diagnosis{
  display:inline-flex;align-items:center;gap:12px;margin:8px 0 26px;
  padding:13px 17px;border-radius:16px;background:var(--warn);border:1px solid #efc39f
}
.diagnosis span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--orange);color:#fff;font-weight:950}
.diagnosis strong{color:var(--orange);font-size:18px}
.hero-cta{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:60px;padding:14px 22px;border-radius:999px;
  background:var(--dark);color:#fff;font-weight:950;
  transition:background-color .2s ease,transform .15s ease
}
.hero-cta:hover{background:#1c2a38;transform:translateY(-1px)}

/* Info box: no phone */
.info{
  background:rgba(255,255,255,.96);
  border:1px solid var(--line);
  border-radius:30px;padding:28px;
  box-shadow:0 28px 70px rgba(38,55,72,.16);
  position:relative;overflow:hidden
}
.info::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--cyan),var(--dark))}
.info .label{font-size:12px;color:var(--cyan2);font-weight:950;letter-spacing:2px;text-transform:uppercase}
.info h2{font-size:28px;line-height:1.05;margin:10px 0 20px}
.info-row{padding:13px 0;border-top:1px solid var(--line)}
.info-row small{display:block;color:#748791;margin-bottom:3px}
.reference{margin-top:14px;padding:16px;border-radius:17px;background:#f1f7f9}
.reference p{margin:5px 0}
.maplink{display:inline-block;margin-top:16px;color:var(--cyan2);font-weight:900}
.privacy-link{color:var(--cyan2);text-decoration:underline}
.privacy-check{display:flex;align-items:flex-start;gap:8px;font-size:14px}
.privacy-check input{width:auto;margin-top:3px}

/* Sections */
section{padding:82px 0}
.kicker{color:var(--cyan2);font-size:12px;letter-spacing:2px;font-weight:950;text-transform:uppercase}
.title{font-size:clamp(34px,4vw,52px);line-height:1.04;letter-spacing:-1.8px;margin:10px 0 15px}
.lead{font-size:18px;color:var(--muted);max-width:820px}

/* Problems */
.problems{background:var(--dark);color:#fff;position:relative;overflow:hidden}
.problems::after{content:"CECOTEC";position:absolute;right:-38px;bottom:-80px;font-size:175px;font-weight:950;color:#2d4052}
.problem-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}
.problem{background:#304456;border:1px solid #405a70;border-radius:23px;padding:24px;min-height:185px}
.problem .num{color:var(--cyan);font-weight:950}
.problem h3{font-size:22px;margin:24px 0 8px}
.problem p{color:#d2dbe1;margin:0}

/* Brand-related section replacing "data" */
.care{background:#fff}
.care-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}
.care-art{
  min-height:390px;border-radius:36px;
  background:linear-gradient(145deg,var(--cyan2),var(--dark));
  position:relative;overflow:hidden
}
.care-art::before{
  content:"LIMPIEZA";position:absolute;left:24px;top:28px;
  font-size:86px;font-weight:950;color:transparent;
  -webkit-text-stroke:2px rgba(255,255,255,.28);
  transform:rotate(-5deg)
}
.care-art::after{
  content:"SUCCIÓN · CEPILLOS · SENSORES · BATERÍA";
  position:absolute;left:35px;right:35px;bottom:35px;
  background:#fff;color:var(--dark);padding:19px;border-radius:15px;
  font-weight:950;letter-spacing:.6px
}
.ticks{display:grid;gap:14px;margin-top:24px}
.tick{display:flex;gap:12px}
.tick i{width:27px;height:27px;border-radius:50%;background:var(--pale);color:var(--cyan2);display:grid;place-items:center;font-style:normal;font-weight:950;flex:0 0 auto}

/* Steps */
.steps{background:var(--soft)}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:30px}
.step{background:#fff;border:1px solid var(--line);border-bottom:5px solid var(--cyan2);border-radius:20px;padding:24px;min-height:205px}
.step strong{display:block;font-size:44px;color:#d5e2e6}
.cost-note{margin-top:26px;padding:18px 20px;border-radius:16px;background:var(--warn);border:1px solid #efc39f}
.cost-note strong{color:var(--orange)}

/* Trust */
.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.trust{border-radius:28px;padding:30px;color:#fff;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end}
.google{background:#2a6075}
.youtube{background:#c9161d}
.trust h3{font-size:28px;margin:8px 0}

/* SEO content */
.seo-content{background:var(--soft)}
.seo-text{max-width:880px}
.seo-text p{color:var(--muted);font-size:16px;line-height:1.7;margin:0 0 18px}

/* FAQ */
.faq{background:#f5f9fa}
details{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 20px;margin:10px 0}
summary{font-weight:900;cursor:pointer}
details p{color:var(--muted)}

/* Form-only contact */
.contact{
  background:linear-gradient(180deg,#fff 0,#f4fafb 100%)
}
.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:48px;align-items:start}
.form-card{
  background:#fff;border:1px solid var(--line);border-radius:28px;
  padding:30px;box-shadow:0 22px 60px rgba(38,55,72,.09)
}
form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.full{grid-column:1/-1}
input,textarea,select{
  width:100%;padding:15px;border:1px solid #cbdce1;
  border-radius:11px;font:inherit;background:#fff
}
textarea{min-height:155px;resize:vertical}
.submit{
  border:0;background:var(--dark);color:#fff;padding:16px;
  border-radius:999px;font-weight:950;font-size:16px;cursor:pointer;
  transition:background-color .2s ease
}
.submit:hover{background:#1c2a38}
#form-status{min-height:24px;margin:0;font-weight:800}

/* Map */
.map{width:100%;height:340px;border:0;border-radius:22px}

/* Footer */
footer{background:var(--dark);color:#fff;padding:34px 0}
.footer{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer img{height:38px;max-width:260px;background:#fff;padding:6px 10px;border-radius:10px}

@media(max-width:920px){
  .menu-btn{display:block}
  .links{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;padding:18px 20px 22px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .links.open{display:flex}
  .hero-grid,.care-grid,.contact-grid{grid-template-columns:1fr}
  .problem-grid{grid-template-columns:repeat(2,1fr)}
  .steps-grid{grid-template-columns:repeat(2,1fr)}
  .trust-grid{grid-template-columns:1fr}
  .problems::after{font-size:100px}
  .care-art::before{font-size:56px}
}
@media(max-width:600px){
  .wrap{width:min(100% - 28px,1180px)}
  .hero{padding-top:46px}
  h1{font-size:48px;letter-spacing:-1.5px}
  .problem-grid,.steps-grid,form{grid-template-columns:1fr}
  .full{grid-column:auto}
  .hero::after,.hero-chip{display:none}
  .problems::after{font-size:56px}
  .care-art::before{font-size:40px}
  .footer{flex-direction:column;align-items:flex-start}
}
