/* RHD · Control y Automatización Industrial
   Visual language: system architecture, signal paths and commissioning evidence.
   This page deliberately avoids the generic service-catalog sequence. */
.control-page{--ctrl-dark:#0f1113;--ctrl-panel:#171a1e;--ctrl-soft:#ecece8;--ctrl-line:#c9c9c4;--ctrl-red:#c51319;--ctrl-green:#5b7c63;--ctrl-amber:#9a7337}
.control-page main{overflow:hidden}
.control-page .service-topbar-nav a{position:relative}
.control-page .service-topbar-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--ctrl-red);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.control-page .service-topbar-nav a:hover::after,.control-page .service-topbar-nav a:focus-visible::after{transform:scaleX(1)}

.control-hero{width:min(1180px,calc(100% - 44px));margin:0 auto;padding:68px 0 58px;display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:stretch}
.control-hero-copy{display:flex;flex-direction:column;justify-content:center}
.control-hero h1{margin:0;font-family:"Barlow Condensed",Inter,sans-serif;font-size:clamp(58px,7.1vw,104px);line-height:.86;letter-spacing:-.025em;text-transform:uppercase}
.control-hero h1 span{display:block;color:var(--ctrl-red)}
.control-hero .service-detail-lead{max-width:650px}
.control-hero-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;border-block:1px solid #c8c8c3}
.control-hero-facts div{padding:17px 14px 18px 0}
.control-hero-facts strong{display:block;font-family:"Barlow Condensed";font-size:24px;text-transform:uppercase;color:var(--ctrl-red)}
.control-hero-facts span{display:block;margin-top:5px;color:#666;font-size:11px;line-height:1.45}

.control-architecture-visual{position:relative;min-height:585px;padding:30px;border:1px solid #2b2f34;border-radius:28px;overflow:hidden;background:
  linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
  radial-gradient(circle at 72% 18%,rgba(197,19,25,.16),transparent 32%),var(--ctrl-dark);background-size:30px 30px,30px 30px,auto,auto;box-shadow:0 24px 55px rgba(12,12,12,.16)}
.control-architecture-label{display:flex;justify-content:space-between;gap:18px;color:#8f969d;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.control-architecture-label b{color:#fff}
.control-stack{position:absolute;inset:84px 30px 30px;display:grid;grid-template-rows:repeat(4,1fr);gap:12px}
.control-stack-row{position:relative;display:grid;grid-template-columns:132px 1fr;gap:14px;align-items:stretch}
.control-stack-row::after{content:"";position:absolute;left:65px;top:100%;width:1px;height:12px;background:#4a4f55}
.control-stack-row:last-child::after{display:none}
.control-stack-index{display:grid;place-items:center;border:1px solid #353a40;background:#13161a;color:#8f969d;font-family:"Barlow Condensed";font-size:17px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.control-stack-index span{display:block;color:var(--ctrl-red);font-size:10px;font-family:Inter,sans-serif;letter-spacing:.12em}
.control-stack-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.control-module{position:relative;padding:17px 16px;border:1px solid #343941;background:rgba(25,28,33,.9);color:#fff;overflow:hidden}
.control-module::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#555c65}
.control-module.accent::before{background:var(--ctrl-red)}
.control-module small{display:block;color:#8f969d;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.control-module strong{display:block;margin-top:9px;font-family:"Barlow Condensed";font-size:21px;line-height:1;text-transform:uppercase}
.control-module em{display:block;margin-top:6px;color:#aeb4ba;font-size:10.5px;line-height:1.45;font-style:normal}

.control-section,.control-architecture,.control-commissioning{width:min(1180px,calc(100% - 44px));margin:0 auto;padding:82px 0;border-top:1px solid #d0d0cb}
.control-section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:end;margin-bottom:38px}
.control-section-head h2,.control-architecture-head h2,.control-commissioning-head h2{margin:0;font-family:"Barlow Condensed";font-size:clamp(43px,5vw,68px);line-height:.94;text-transform:uppercase}
.control-section-head p,.control-architecture-head p,.control-commissioning-head p{margin:0;color:#616161;line-height:1.75}

.control-architecture-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:end;margin-bottom:42px}
.control-layer-board{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #bfc0bb;background:#fff}
.control-layer{position:relative;min-height:290px;padding:29px 26px;border-right:1px solid #bfc0bb}
.control-layer:last-child{border-right:0}
.control-layer::after{content:"→";position:absolute;right:-14px;top:50%;z-index:2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#111;color:#fff;font-size:15px}
.control-layer:last-child::after{display:none}
.control-layer small{color:var(--ctrl-red);font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.control-layer h3{margin:30px 0 11px;font-family:"Barlow Condensed";font-size:31px;line-height:.95;text-transform:uppercase}
.control-layer p{margin:0;color:#666;font-size:13px;line-height:1.7}
.control-layer ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.control-layer li{padding-top:8px;border-top:1px solid #e1e1de;color:#555;font-size:11px;line-height:1.45}

.control-signal-lab{background:var(--ctrl-dark);color:#fff;padding:78px max(22px,calc((100vw - 1180px)/2))}
.control-signal-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:50px;align-items:end;margin-bottom:38px}
.control-signal-head h2{margin:0;color:#fff;font-family:"Barlow Condensed";font-size:clamp(43px,5vw,68px);line-height:.94;text-transform:uppercase}
.control-signal-head p{margin:0;color:#aeb3b8;line-height:1.75}
.control-signal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.control-signal-card{min-height:255px;padding:26px;border:1px solid #32363c;background:#16191d}
.control-signal-card small{display:block;color:#7e858c;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.control-signal-card h3{margin:19px 0 10px;color:#fff;font-family:"Barlow Condensed";font-size:29px;text-transform:uppercase}
.control-signal-card p{margin:0;color:#aeb3b8;font-size:12.5px;line-height:1.7}
.control-signal-path{display:flex;align-items:center;gap:8px;margin-top:23px}
.control-signal-path i{display:block;width:9px;height:9px;border-radius:50%;background:#48505a}
.control-signal-path i.on{background:var(--ctrl-red);box-shadow:0 0 0 4px rgba(197,19,25,.12)}
.control-signal-path span{flex:1;height:1px;background:#394047}

.control-project-modes{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.control-project-main{padding:42px;background:#fff;border-top:5px solid var(--ctrl-red)}
.control-project-main small{color:var(--ctrl-red);font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.control-project-main h3{margin:18px 0 13px;font-family:"Barlow Condensed";font-size:43px;line-height:.94;text-transform:uppercase}
.control-project-main>p{margin:0;color:#626262;line-height:1.75}
.control-project-list{display:grid;grid-template-columns:1fr 1fr;margin-top:28px;border-top:1px solid #d2d2ce;border-left:1px solid #d2d2ce}
.control-project-list div{padding:18px;border-right:1px solid #d2d2ce;border-bottom:1px solid #d2d2ce}
.control-project-list b{display:block;font-family:"Barlow Condensed";font-size:21px;text-transform:uppercase}
.control-project-list span{display:block;margin-top:5px;color:#6a6a6a;font-size:11px;line-height:1.5}
.control-project-side{display:grid;gap:18px}
.control-project-side article{padding:31px;background:#17191c;color:#fff}
.control-project-side small{color:#8c939a;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.control-project-side h3{margin:15px 0 8px;color:#fff;font-family:"Barlow Condensed";font-size:29px;text-transform:uppercase}
.control-project-side p{margin:0;color:#aeb3b8;font-size:12.5px;line-height:1.7}

.control-commissioning{border-top:0}
.control-commissioning-head{display:grid;grid-template-columns:.76fr 1.24fr;gap:50px;align-items:end;margin-bottom:38px}
.control-commissioning-board{display:grid;grid-template-columns:.72fr 1.28fr;background:#111;color:#fff}
.control-commissioning-status{padding:40px;border-right:1px solid #343434}
.control-commissioning-status small{color:#858b91;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.control-commissioning-status strong{display:block;margin-top:18px;font-family:"Barlow Condensed";font-size:47px;line-height:.92;text-transform:uppercase}
.control-commissioning-status p{color:#a9a9a9;line-height:1.7}
.control-commissioning-status-note{margin-top:25px;padding:18px;border-left:3px solid var(--ctrl-red);background:#181818;color:#c2c2c2;font-size:11px;line-height:1.6}
.control-checklist{display:grid;grid-template-columns:1fr 1fr}
.control-check{padding:28px;border-right:1px solid #343434;border-bottom:1px solid #343434}
.control-check:nth-child(even){border-right:0}
.control-check:nth-last-child(-n+2){border-bottom:0}
.control-check b{display:flex;align-items:center;gap:10px;color:#fff;font-family:"Barlow Condensed";font-size:23px;text-transform:uppercase}
.control-check b::before{content:"";width:11px;height:11px;border:2px solid var(--ctrl-red);box-shadow:inset 0 0 0 2px #111;background:var(--ctrl-red)}
.control-check p{margin:10px 0 0;color:#aaa;font-size:12px;line-height:1.65}

.control-criterion{width:min(1180px,calc(100% - 44px));margin:0 auto 82px;display:grid;grid-template-columns:.42fr 1.58fr;background:var(--ctrl-red);color:#fff}
.control-criterion-title{padding:36px;border-right:1px solid rgba(255,255,255,.25)}
.control-criterion-title small{font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ffd7d9}
.control-criterion-title strong{display:block;margin-top:13px;font-family:"Barlow Condensed";font-size:34px;line-height:.95;text-transform:uppercase}
.control-criterion-copy{padding:36px;display:flex;align-items:center}
.control-criterion-copy p{margin:0;color:#ffe4e5;font-size:16px;line-height:1.7}

@media(max-width:980px){
  .control-hero{grid-template-columns:1fr}
  .control-architecture-visual{min-height:560px}
  .control-section-head,.control-architecture-head,.control-signal-head,.control-commissioning-head{grid-template-columns:1fr}
  .control-layer-board{grid-template-columns:1fr 1fr}
  .control-layer:nth-child(2){border-right:0}
  .control-layer:nth-child(-n+2){border-bottom:1px solid #bfc0bb}
  .control-layer:nth-child(2)::after{display:none}
  .control-layer:nth-child(3)::after{display:block}
  .control-signal-grid{grid-template-columns:1fr 1fr}
  .control-project-modes,.control-commissioning-board{grid-template-columns:1fr}
  .control-commissioning-status{border-right:0;border-bottom:1px solid #343434}
  .control-criterion{grid-template-columns:1fr}
  .control-criterion-title{border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
}
@media(max-width:640px){
  .control-hero,.control-section,.control-architecture,.control-commissioning,.control-criterion{width:calc(100% - 30px)}
  .control-hero{padding-top:40px;gap:28px}
  .control-hero h1{font-size:58px}
  .control-hero-facts{grid-template-columns:1fr}
  .control-hero-facts div+div{border-top:1px solid #d6d6d2}
  .control-architecture-visual{min-height:690px;padding:20px;border-radius:22px}
  .control-stack{inset:75px 20px 20px;grid-template-rows:repeat(4,auto)}
  .control-stack-row{grid-template-columns:1fr}
  .control-stack-row::after{display:none}
  .control-stack-index{min-height:50px}
  .control-stack-modules{grid-template-columns:1fr}
  .control-module{padding:13px 14px}
  .control-module em{display:none}
  .control-layer-board,.control-signal-grid,.control-project-list,.control-checklist{grid-template-columns:1fr}
  .control-layer{border-right:0;border-bottom:1px solid #bfc0bb}
  .control-layer:last-child{border-bottom:0}
  .control-layer::after{display:none!important}
  .control-signal-lab{padding:60px 15px}
  .control-check{border-right:0!important;border-bottom:1px solid #343434!important}
  .control-check:last-child{border-bottom:0!important}
  .control-criterion-title,.control-criterion-copy{padding:28px 24px}
}
@media(prefers-reduced-motion:reduce){.control-page *{scroll-behavior:auto!important;transition:none!important}}
