:root {
  --orange: #ff5b12;
  --orange-soft: #fff0e7;
  --ink: #111318;
  --muted: #62666d;
  --line: #e8e8e8;
  --surface: #f7f7f7;
}

*{box-sizing:border-box}
body{margin:0;background:var(--surface);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}
a{color:inherit}
.page-shell{min-height:100vh}
.page-hero{padding:clamp(54px,8vw,110px) clamp(28px,7vw,120px);background:radial-gradient(circle at 88% 15%,rgba(255,91,18,.17),transparent 26%),linear-gradient(135deg,#fff 0%,#fff8f4 100%);border-bottom:1px solid var(--line)}
.eyebrow{margin:0 0 12px;color:var(--orange);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.page-hero h1{max-width:850px;margin:0;font-size:clamp(38px,5vw,72px);line-height:1.02;letter-spacing:-.04em}
.page-lead{max-width:720px;margin:22px 0 0;color:var(--muted);font-size:clamp(16px,1.5vw,20px);line-height:1.65}
.page-content{padding:clamp(36px,5vw,72px) clamp(28px,7vw,120px)}
.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,32px)}
.content-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.base-card{min-height:190px;padding:clamp(24px,3vw,38px);border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(15,18,22,.05)}
.card-number{display:grid;width:42px;height:42px;margin-bottom:20px;border-radius:50%;background:var(--orange-soft);color:var(--orange);font-weight:850;place-items:center}
.base-card h2{margin:0 0 12px;font-size:clamp(20px,2vw,28px)}
.base-card p{margin:0;color:var(--muted);line-height:1.65}
.service-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:24px 28px;border-radius:16px;background:#111820;color:#fff}
.service-cta p{margin:0;color:#d9dde0}
.button{flex:0 0 auto;padding:12px 20px;border-radius:999px;background:var(--orange);color:#fff;font-weight:800;text-decoration:none}

/* Estructura variable de cada servicio */
.service-variable{background:#fff}
.service-hero{display:grid;min-height:520px;grid-template-columns:38% 62%}
.service-hero-background{background-color:#fff;background-position:right center;background-size:auto 100%;background-repeat:no-repeat}
.service-hero-service-1{background-image:url("../assets/servicio1_1.png")}
.service-hero-service-2{background-image:url("../assets/servicio2_1.png")}
.service-hero-service-3{background-image:url("../assets/servicio3_1.png")}
.service-hero-service-4{background-image:url("../assets/servicio4_1.png")}
.service-hero-service-5{background-image:url("../assets/servicio5_1.png")}
.service-hero-service-6{background-image:url("../assets/servicio6_1.png")}
.service-hero-service-7{background-image:url("../assets/servicio7_1.png")}
.service-hero-service-8{background-image:url("../assets/servicio8_1.png")}
.service-hero-service-9{background-image:url("../assets/servicio9_1.png")}
.service-hero-copy{display:flex;padding:clamp(48px,7vw,110px) clamp(28px,5vw,88px);flex-direction:column;justify-content:center}
.service-hero-copy h1{margin:0;font-size:clamp(44px,5.3vw,82px);line-height:.98;letter-spacing:-.045em}
.service-hero-copy h1 span{color:var(--orange)}
.service-hero-copy p{max-width:470px;margin:24px 0;color:var(--muted);font-size:17px;line-height:1.65}
.service-hero-copy .button{align-self:flex-start}
.service-visual-placeholder{display:grid;min-height:520px;border-left:1px dashed #ffb995;background:linear-gradient(135deg,#fff8f4,#f1f1f1);color:#b86a43;font-weight:750;place-items:center;text-align:center}
.service-visual-placeholder span{padding:12px 18px;border:1px dashed #ff8d54;border-radius:10px;background:rgba(255,255,255,.78)}
.service-hero-background .service-visual-background{border:0;background:transparent}
.service-overview{position:relative;display:grid;width:calc(100% - clamp(56px,10vw,190px));max-width:1500px;min-height:260px;margin:-42px auto 54px;padding:clamp(30px,4vw,58px);border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(15,18,22,.08);grid-template-columns:26% 74%;align-items:center}
.service-overview-visual{display:grid;min-height:170px;margin-right:clamp(24px,4vw,58px);border-right:1px solid var(--line);color:var(--orange);font-size:18px;font-weight:800;place-items:center;text-align:center}
.service-overview-icon{display:block;width:min(170px,78%);height:135px;object-fit:contain}
.service-overview-content h2{margin:0 0 12px;font-size:clamp(27px,3vw,42px)}
.service-overview-content p{margin:0 0 10px;color:var(--muted);line-height:1.65}
.service-overview-content ul{margin:12px 0 20px;padding-left:20px;color:var(--muted);line-height:1.6}
.service-overview-content li::marker{color:var(--orange)}
.shared-services-frame{display:block;width:100%;height:1px;overflow:hidden;border:0;background:#fff}

/* Tres bloques globales de servicios.html */
.shared-services{background:#fff}
.shared-section{padding:clamp(54px,7vw,110px) clamp(28px,5vw,96px)}
.shared-heading{display:grid;margin-bottom:38px;grid-template-columns:30% 70%;align-items:start;gap:30px}
.shared-heading h2{margin:0;padding-left:20px;border-left:4px solid var(--orange);font-size:clamp(34px,4vw,58px);line-height:1.05}
.shared-heading h2 span{display:block;color:var(--orange)}
.shared-heading p{max-width:850px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature-card,.technology-card{padding:30px 24px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 9px 25px rgba(15,18,22,.07);text-align:center}
.feature-card-media{display:block;width:250px;max-width:100%;height:auto;aspect-ratio:3/2;margin:0 auto 20px;border:0;border-radius:10px;object-fit:contain}
.feature-card h3,.technology-card h3{margin:0 0 10px;color:var(--orange);font-size:22px}
.feature-card p,.technology-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.conversion-section{background:#fafafa}
.conversion-grid{display:grid;grid-template-columns:58% 42%;gap:24px}
.faq-panel,.quote-panel{padding:clamp(28px,4vw,48px);border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 9px 25px rgba(15,18,22,.06)}
.panel-heading{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.panel-heading-media{display:block;width:clamp(64px,6vw,92px);height:auto;aspect-ratio:1;flex:0 0 auto;object-fit:contain}
.panel-heading h2{margin:0;font-size:clamp(27px,3vw,40px)}
.panel-heading p{margin:7px 0 0;color:var(--muted);line-height:1.5}
.faq-panel details{margin-top:10px;padding:16px;border:1px solid var(--line);border-radius:9px}
.faq-panel summary{font-weight:750;cursor:pointer}
.faq-panel details p{margin:12px 0 0;color:var(--muted);line-height:1.55}
.quote-form{display:grid;gap:12px}
.quote-form label{font-size:13px;font-weight:750}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #dfe1e4;border-radius:8px;background:#fff;color:#555;font:inherit}
.quote-form input,.quote-form select{height:48px;padding:0 14px}
.quote-form textarea{min-height:140px;padding:14px;line-height:1.55;resize:vertical}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,91,18,.12);outline:0}
.quote-form button{height:50px;border:0;border-radius:8px;background:var(--orange);color:#fff;font:inherit;font-weight:850;cursor:pointer}
.quote-form button:disabled{cursor:wait;opacity:.7}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{margin:0;font-size:14px;font-weight:700;text-align:center}
.form-status.is-success{color:#267326}
.form-status.is-error{color:#b42318}
.technology-section{text-align:center}
.technology-section>h2{margin:0 0 42px;font-size:clamp(34px,4vw,58px)}
.technology-section>h2 span{color:var(--orange)}
.technology-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.technology-media{display:block;width:100%;height:auto;min-height:0;margin:0 0 24px;border:0;border-radius:12px;background:transparent;object-fit:contain}
.technology-card .button{display:block;margin-top:22px}

@media(max-width:820px){
  .content-grid,.content-grid.two-columns{grid-template-columns:1fr}
  .service-cta{align-items:center;flex-direction:column;text-align:center}
  .service-hero{grid-template-columns:1fr}
  .service-hero-background{background-position:right bottom;background-size:auto 330px}
  .service-hero-copy{align-items:center;text-align:center}
  .service-hero-copy h1{font-size:clamp(34px,10.5vw,48px);overflow-wrap:anywhere}
  .service-hero-copy p{margin-inline:auto}
  .service-hero-copy .button{align-self:center}
  .service-visual-placeholder{min-height:330px;border-top:1px dashed #ffb995;border-left:0}
  .service-overview{width:calc(100% - 28px);margin-top:-22px;grid-template-columns:1fr;text-align:center}
  .service-overview-visual{min-height:100px;margin:0 0 24px;border-right:0;border-bottom:1px solid var(--line)}
  .service-overview-icon{width:min(130px,60%);height:90px}
  .service-overview-content ul{display:inline-block;text-align:left}
  .service-overview-content .button{display:flex;width:max-content;max-width:100%;margin-inline:auto;justify-content:center}
  .shared-heading,.conversion-grid{grid-template-columns:1fr}
  .shared-heading{text-align:center}
  .shared-heading h2{padding-left:0;border-left:0}
  .feature-grid,.technology-grid{grid-template-columns:1fr}
  .panel-heading{align-items:center;flex-direction:column;text-align:center}
  .faq-panel,.quote-panel{text-align:center}
  .quote-form label{text-align:center}
}
