:root{
  --arch-navy:#082849;
  --arch-navy-deep:#041a31;
  --arch-blue:#0f4775;
  --arch-orange:#ff7900;
  --arch-orange-soft:#ff9a3d;
  --arch-cyan:#1e9dc2;
  --arch-ink:#102942;
  --arch-muted:#587086;
  --arch-line:#dbe4ec;
  --arch-surface:#ffffff;
  --arch-soft:#f3f6f9;
  --arch-dark:#061e36;
  --arch-max:1240px;
  --arch-radius:20px;
  --arch-shadow:0 20px 60px rgba(7,37,64,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.arch-site{margin:0;background:#fff;color:var(--arch-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
.arch-page-main{position:relative;isolation:isolate}.arch-page-main>section{position:relative;z-index:1}.arch-content-background{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--arch-navy-deep)}.arch-content-background:after{content:"";position:absolute;inset:0;background:rgba(4,26,49,var(--arch-content-overlay,.35));pointer-events:none}.arch-content-background-media{position:sticky;top:0;display:block;width:100%;height:100vh;object-fit:cover;object-position:var(--arch-content-position,center);border:0}.arch-content-background-image{background-position:var(--arch-content-position,center);background-size:cover;background-repeat:no-repeat}
.arch-page-has-background .arch-intro-section,.arch-page-has-background .arch-sector-section,.arch-page-has-background .arch-matrix-section,.arch-page-has-background .arch-control-section,.arch-page-has-background .arch-deliverables-section,.arch-page-has-background .arch-products-section,.arch-page-has-background .arch-model-section,.arch-page-has-background .arch-paths-section,.arch-page-has-background>.arch-section:not(.arch-journey-section):not(.arch-cross-section):not(.arch-architecture-section):not(.arch-principles-section):not(.arch-process-section):not(.arch-cta){background:rgba(255,255,255,.92)}
.arch-page-has-background .arch-capability-section,.arch-page-has-background .arch-system-section,.arch-page-has-background .arch-lifecycle-section,.arch-page-has-background .arch-bid-journey-section{background:rgba(245,248,251,.92)}
.arch-page-has-background .arch-journey-section,.arch-page-has-background .arch-cross-section,.arch-page-has-background .arch-architecture-section,.arch-page-has-background .arch-principles-section,.arch-page-has-background .arch-process-section{background:rgba(8,40,73,.94)}
body.arch-site a{text-decoration:none;color:inherit}
body.arch-site img{max-width:100%;display:block}
body.arch-site button,body.arch-site input,body.arch-site select,body.arch-site textarea{font:inherit}
.arch-wrap{width:min(calc(100% - 48px),var(--arch-max));margin-inline:auto}
.skip{position:fixed!important;top:-100px!important;left:16px!important;z-index:9999!important;background:#fff!important;color:#061e36!important;padding:10px 14px!important}.skip:focus{top:12px!important}

/* Header and protected brand presentation */
.arch-header.header{position:fixed;inset:0 0 auto 0;z-index:100;height:88px!important;min-height:88px!important;max-height:88px!important;overflow:visible!important;background:rgba(255,255,255,.96)!important;color:var(--arch-ink)!important;border-bottom:1px solid rgba(8,40,73,.09)!important;box-shadow:0 4px 22px rgba(8,40,73,.06)!important;backdrop-filter:blur(18px);transition:.25s}
.arch-header.scrolled{background:rgba(255,255,255,.985)!important;box-shadow:0 8px 28px rgba(8,40,73,.12)!important}
.arch-nav{height:88px;display:flex;align-items:center;gap:26px}
.arch-brand{width:190px;flex:0 0 190px;align-self:stretch;display:flex;align-items:center}
.arch-logo-curtain{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:4px 14px;border-radius:0 0 18px 18px;background:radial-gradient(ellipse at center,rgba(255,255,255,.98) 0,rgba(255,255,255,.82) 52%,rgba(255,255,255,0) 78%)}
.arch-logo-curtain img{width:138px!important;height:72px!important;max-width:138px!important;max-height:72px!important;object-fit:contain!important;animation:none!important;filter:none!important;transform:scale(var(--global-logo-scale,1))!important;transform-origin:center!important}
.arch-navlinks{display:flex!important;align-items:center;justify-content:center;gap:24px;margin-left:auto;position:static!important;background:transparent!important;padding:0!important;flex-direction:row!important}
.arch-navlinks a{position:relative;color:var(--arch-ink)!important;font-size:14px;font-weight:750;white-space:nowrap}
.arch-navlinks a:not(.arch-nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:2px;background:var(--arch-orange);transition:.22s}
.arch-navlinks a:hover:after,.arch-navlinks a.active:after{right:0}
.arch-navlinks a:hover,.arch-navlinks a.active{color:var(--arch-navy)!important}
.arch-navlinks .arch-nav-cta{padding:12px 16px;border-radius:9px;background:var(--arch-orange);color:#fff!important;box-shadow:0 10px 20px rgba(255,121,0,.18)}
.arch-navlinks .arch-nav-cta:hover{background:#e96d00;color:#fff!important;transform:translateY(-1px)}
.arch-language.language-switch{display:flex;order:3;gap:3px;padding:3px;border:2px solid #b8c8d6;border-radius:11px;overflow:visible;margin-left:4px;background:#edf3f7;box-shadow:0 4px 14px rgba(8,40,73,.1)}
.arch-language a{display:grid;place-items:center;min-width:40px;height:34px;padding:0 9px;border-radius:7px;color:var(--arch-navy)!important;font-weight:900;font-size:13px;line-height:1;letter-spacing:.04em;background:#fff;border:1px solid transparent}
.arch-language a:hover{border-color:var(--arch-orange);color:#a94f00!important}
.arch-language a.active{background:var(--arch-navy);color:#fff!important;border-color:var(--arch-navy);box-shadow:0 4px 10px rgba(8,40,73,.22)}
.arch-language a:focus-visible{outline:3px solid rgba(255,121,0,.42);outline-offset:2px}
.arch-menu.menu{display:none!important;color:var(--arch-navy)!important;border:1px solid var(--arch-line)!important;border-radius:8px!important;background:#fff!important;margin-left:auto!important}

/* Common typography and buttons */
.arch-eyebrow{margin:0 0 14px;color:var(--arch-orange);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.arch-site h1,.arch-site h2,.arch-site h3,.arch-site p{max-width:none}
.arch-site h1{margin:0;font-size:clamp(42px,5vw,72px);line-height:1.03;letter-spacing:-.045em;color:inherit}
.arch-site h2{margin:0;font-size:clamp(32px,4vw,54px);line-height:1.08;letter-spacing:-.035em;color:var(--arch-navy)}
.arch-site h3{line-height:1.18}
.arch-lead{margin:24px 0 0;font-size:clamp(17px,1.7vw,21px);line-height:1.55;color:inherit;opacity:.94}
.arch-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}
.arch-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:50px;padding:13px 20px;border-radius:9px;font-weight:850;font-size:14px;transition:.2s;border:1px solid transparent}
.arch-button span{font-size:19px;line-height:1}
.arch-button-primary{background:var(--arch-orange);color:#fff!important;box-shadow:0 13px 26px rgba(255,121,0,.2)}
.arch-button-primary:hover{background:#e96d00;transform:translateY(-2px);box-shadow:0 17px 32px rgba(255,121,0,.28)}
.arch-button-outline{border-color:rgba(255,255,255,.68);color:#fff!important;background:rgba(4,26,49,.18);backdrop-filter:blur(8px)}
.arch-button-outline:hover{background:#fff;color:var(--arch-navy)!important}
.arch-button-outline-dark{border-color:var(--arch-navy);color:var(--arch-navy)!important;background:#fff}
.arch-button-outline-dark:hover{background:var(--arch-navy);color:#fff!important}
.arch-button-light{background:#fff;color:var(--arch-navy)!important;min-width:220px}
.arch-button-light:hover{background:var(--arch-orange);color:#fff!important;transform:translateY(-2px)}
.arch-icon{width:28px;height:28px;display:block}
.arch-icon-circle{width:62px;height:62px;border:1.5px solid rgba(8,40,73,.22);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--arch-navy);background:#fff;flex:0 0 auto}
.arch-icon-circle .arch-icon{width:31px;height:31px}
.arch-icon-circle-light{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:#fff}
.arch-section{padding:105px 0;position:relative;overflow:hidden}
.arch-section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.75fr);gap:70px;align-items:end;margin-bottom:54px}
.arch-section-head>p{margin:0;color:var(--arch-muted);font-size:17px;line-height:1.65}
.arch-section-head-light h2{color:#fff}
.arch-section-head-light>p{color:#c8d7e4}

/* Hero carousel */
.arch-hero{position:relative;min-height:780px;background:var(--arch-dark);color:#fff;overflow:hidden;margin-top:0!important;padding:0!important}
.arch-hero .slides{position:relative;min-height:780px}
.arch-hero .slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;min-height:780px;overflow:hidden}
.arch-hero .slide.active{opacity:1;visibility:visible;z-index:2}
.arch-hero-media{position:absolute;inset:0;overflow:hidden;background:#061e36}
.arch-hero-media img,.arch-hero-media video,.arch-hero-media iframe{width:100%;height:100%;object-fit:cover;object-position:var(--arch-position,center);border:0;transform:scale(1.02)}
.arch-hero .slide.active .arch-hero-media img{animation:archKen 9s ease-out both}
@keyframes archKen{from{transform:scale(1.08)}to{transform:scale(1.02)}}
.arch-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,49,.98) 0%,rgba(4,26,49,.89) 39%,rgba(4,26,49,var(--arch-overlay,.54)) 63%,rgba(4,26,49,.12) 100%)}
.arch-hero-overlay:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,26,49,.1),rgba(4,26,49,.55) 100%);mix-blend-mode:multiply}
.arch-hero-content{position:relative;z-index:4;min-height:780px;display:flex;align-items:center;padding-top:92px}
.arch-hero-copy{width:min(720px,65%)}
.arch-hero-copy h1{color:#fff;text-wrap:balance}
.arch-hero-copy .arch-lead{width:min(650px,100%);color:#e7f0f7}
.arch-hero-index{position:absolute;right:0;bottom:72px;display:flex;align-items:baseline;gap:8px;padding:14px 18px;border-left:3px solid var(--arch-orange);background:rgba(4,26,49,.56);backdrop-filter:blur(10px)}
.arch-hero-index strong{font-size:32px}.arch-hero-index span{font-size:14px;color:#aec4d5}
.arch-carousel-controls{position:absolute;z-index:7;left:50%;bottom:42px;transform:translateX(-50%);display:flex;align-items:center;gap:14px}
.arch-carousel-controls button{border:0;cursor:pointer}
.arch-carousel-controls .carousel-prev,.arch-carousel-controls .carousel-next{width:42px;height:42px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(4,26,49,.55);color:#fff;font-size:26px;line-height:1;backdrop-filter:blur(8px)}
.arch-carousel-controls .carousel-prev:hover,.arch-carousel-controls .carousel-next:hover{background:var(--arch-orange);border-color:var(--arch-orange)}
.arch-carousel-controls .carousel-dots{display:flex;gap:8px}
.arch-carousel-controls .dot{width:9px;height:9px;border-radius:50%;padding:0;background:rgba(255,255,255,.42);transition:.2s}
.arch-carousel-controls .dot.active{width:28px;border-radius:8px;background:var(--arch-orange)}
.arch-hero-rail{position:absolute;z-index:6;right:30px;top:50%;display:flex;align-items:center;gap:13px;transform:rotate(90deg) translateX(50%);transform-origin:right center;color:rgba(255,255,255,.7);font-size:11px;text-transform:uppercase;letter-spacing:.17em}
.arch-hero-rail i{width:60px;height:1px;background:rgba(255,255,255,.55)}

/* Metrics */
.arch-metrics{position:relative;z-index:8;margin-top:-1px;background:var(--arch-navy);color:#fff}
.arch-metric-grid{display:grid;grid-template-columns:repeat(var(--arch-metric-columns,4),minmax(0,1fr))}
.arch-metric{display:flex;align-items:center;gap:16px;min-height:116px;padding:24px 28px;border-right:1px solid rgba(255,255,255,.13)}
.arch-metric:last-child{border-right:0}
.arch-metric .arch-icon{width:38px;height:38px;color:var(--arch-orange)}
.arch-metric strong{display:block;font-size:clamp(24px,2.4vw,34px);line-height:1.05;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.arch-metric span{display:block;margin-top:7px;color:#cbd9e5;font-size:13px;line-height:1.35}.arch-counter{white-space:nowrap}

/* Home intro */
.arch-intro-section{background:#fff}
.arch-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.arch-intro-statement{position:relative;padding:12px 0 0 40px;border-left:1px solid var(--arch-line)}
.arch-intro-statement p{margin:0;font-size:22px;line-height:1.6;color:#324e66}
.arch-statement-rule{width:72px;height:4px;background:var(--arch-orange);margin-top:32px}

/* Capacidades integradas — lenguaje de estructura y coordinación técnica */
.arch-capability-section{background:linear-gradient(180deg,#f5f7f9 0,#fff 100%)}
.arch-capability-map{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(14px,2vw,28px);min-height:520px;padding:54px clamp(24px,3.2vw,48px) 150px;border:1px solid #d5dce2;border-radius:4px;background:#fbfaf7;box-shadow:0 18px 45px rgba(7,37,64,.08);overflow:hidden}
.arch-capability-map:before{content:"";position:absolute;inset:18px;z-index:0;border:1px solid rgba(31,64,91,.12);background-image:linear-gradient(rgba(31,64,91,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,64,91,.035) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}
.arch-capability-map:after{content:"";position:absolute;left:34px;right:34px;bottom:24px;height:1px;background:#aeb9c2;box-shadow:0 -438px 0 rgba(31,64,91,.08);pointer-events:none}
.arch-capability-node{position:relative;z-index:3;align-self:start;display:grid;grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:14px;min-width:0;min-height:238px;padding:20px 10px 18px;border-top:2px solid var(--arch-navy);border-bottom:1px solid #c6cfd7;color:var(--arch-navy);background:rgba(251,250,247,.96);transition:background-color .2s ease,border-color .2s ease,transform .2s ease}
.arch-capability-node:before{content:"";position:absolute;z-index:-1;left:50%;top:100%;width:1px;height:78px;background:var(--arch-navy);transform:translateX(-50%)}
.arch-capability-node:after{content:"";position:absolute;left:50%;top:calc(100% + 72px);width:11px;height:11px;border:2px solid #fbfaf7;background:var(--arch-orange);box-shadow:0 0 0 1px var(--arch-navy);transform:translate(-50%,-50%)}
.arch-capability-node:hover,.arch-capability-node:focus-visible{border-top-color:var(--arch-orange);background:#fff;transform:translateY(-3px)}
.arch-capability-node .arch-icon-circle{grid-column:1;grid-row:1/3;width:52px;height:52px;border:0;border-radius:0;color:var(--arch-navy);background:transparent}
.arch-capability-node .arch-icon{width:38px;height:38px;stroke-width:1.35}
.arch-node-index{grid-column:2;grid-row:1;align-self:start;margin-bottom:8px;color:var(--arch-orange);font-size:19px;font-weight:900;line-height:1;letter-spacing:.02em}
.arch-node-copy{grid-column:2;grid-row:2;display:block;min-width:0}
.arch-capability-node strong{display:block;color:var(--arch-navy);font-size:clamp(13px,1.15vw,16px);line-height:1.28;text-transform:uppercase}
.arch-capability-node small{display:block;margin-top:8px;color:#52677a;font-size:11.5px;line-height:1.45}
.arch-structural-framework{position:absolute;z-index:1;left:34px;right:34px;bottom:24px;height:126px;pointer-events:none}
.arch-structural-beam{position:absolute;left:0;right:0;top:0;height:56px;border:2px solid #061f39;border-radius:2px;background:linear-gradient(180deg,#0b355b 0,#082b4d 48%,#061f39 50%,#092f51 100%);box-shadow:inset 0 4px 0 rgba(255,255,255,.08),0 5px 0 rgba(6,31,57,.08)}
.arch-structural-beam:before,.arch-structural-beam:after{content:"";position:absolute;left:-8px;right:-8px;height:6px;border-radius:2px;background:#061f39}
.arch-structural-beam:before{top:-5px}.arch-structural-beam:after{bottom:-5px}
.arch-structural-framework i{position:absolute;top:56px;width:2px;height:58px;background:#0b355b;transform:translateX(-50%)}
.arch-structural-framework i:before{content:"";position:absolute;left:50%;top:0;width:15px;height:11px;border:2px solid #fbfaf7;background:var(--arch-orange);box-shadow:0 0 0 1px #061f39;transform:translate(-50%,-50%)}
.arch-structural-framework i:after{content:"";position:absolute;left:50%;bottom:0;width:28px;height:7px;border-radius:1px 1px 0 0;background:#061f39;transform:translateX(-50%)}
.arch-structural-framework i:nth-of-type(1){left:10%}.arch-structural-framework i:nth-of-type(2){left:30%}.arch-structural-framework i:nth-of-type(3){left:50%}.arch-structural-framework i:nth-of-type(4){left:70%}.arch-structural-framework i:nth-of-type(5){left:90%}

/* Journey */
.arch-journey-section{background:linear-gradient(135deg,var(--arch-navy-deep),var(--arch-navy));color:#fff}
.arch-journey{list-style:none;margin:0;padding:10px 0 0;display:grid;grid-template-columns:repeat(6,1fr);gap:0}
.arch-journey li{position:relative;padding:0 20px 10px;text-align:center;min-width:0}
.arch-step-number{font-size:12px;color:var(--arch-orange);font-weight:900;letter-spacing:.15em;margin-bottom:12px}
.arch-journey h3{font-size:16px;color:#fff;margin:17px 0 9px}.arch-journey p{font-size:12px;color:#c7d7e3;margin:0;line-height:1.5}
.arch-step-arrow{position:absolute;right:-11px;top:70px;color:var(--arch-orange);font-size:26px;font-weight:300}

/* Sectors */
.arch-sector-section{background:#fff}
.arch-sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.arch-sector-card{position:relative;min-height:340px;border-radius:18px;overflow:hidden;background:var(--arch-navy);box-shadow:0 16px 36px rgba(7,37,64,.13)}
.arch-sector-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.55s}
.arch-sector-card:hover img{transform:scale(1.055)}
.arch-sector-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,26,49,.05) 15%,rgba(4,26,49,.92) 83%)}
.arch-sector-copy{position:absolute;inset:auto 0 0;padding:28px;color:#fff}
.arch-sector-copy>span{display:inline-flex;width:50px;height:50px;align-items:center;justify-content:center;border-radius:14px;border:1px solid rgba(255,255,255,.33);background:rgba(4,26,49,.55);color:#fff;backdrop-filter:blur(8px)}
.arch-sector-copy>span .arch-icon{width:28px;height:28px}
.arch-sector-copy h3{margin:15px 0 7px;font-size:22px}.arch-sector-copy p{margin:0;color:#d5e2ea;font-size:13px}.arch-sector-copy a{display:inline-block;margin-top:15px;color:var(--arch-orange);font-weight:850;font-size:13px}

/* Software home */
.arch-software-section{background:var(--arch-soft)}
.arch-software-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}
.arch-software-copy>p:not(.arch-eyebrow){color:var(--arch-muted);font-size:17px;line-height:1.65}
.arch-product-stack{display:grid;gap:16px}
.arch-product-card{display:flex;gap:20px;padding:25px;border:1px solid var(--arch-line);border-radius:18px;background:#fff;box-shadow:0 10px 25px rgba(7,37,64,.06)}
.arch-product-card>div>p:first-child{margin:0;color:var(--arch-orange);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.arch-product-card h3{margin:4px 0 8px;color:var(--arch-navy);font-size:23px}.arch-product-card p:last-child{margin:0;color:var(--arch-muted);font-size:13px}
.arch-layer-diagram{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px;perspective:900px}
.arch-layer-diagram div{position:relative;min-height:108px;padding:22px;background:linear-gradient(145deg,#fff,#f0f5f9);border:1px solid var(--arch-line);border-radius:15px;transform:translateY(calc(var(--layer) * -8px));box-shadow:0 calc(8px + var(--layer) * 3px) 18px rgba(7,37,64,.08)}
.arch-layer-diagram strong{display:block;color:var(--arch-navy);font-size:18px}.arch-layer-diagram span{display:block;margin-top:6px;color:var(--arch-muted);font-size:13px}

/* CTA and form */
.arch-cta{padding:70px 0;background:linear-gradient(110deg,var(--arch-orange),#ff9332);color:#fff}
.arch-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
.arch-cta h2{color:#fff;max-width:830px;font-size:clamp(30px,3.2vw,48px)}.arch-cta p{margin:14px 0 0;color:#fff4e8;font-size:17px}
.arch-contact-block{padding:105px 0;background:#fff}
.arch-contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:75px;align-items:start}
.arch-contact-copy>p:not(.arch-eyebrow){font-size:17px;color:var(--arch-muted)}
.arch-contact-lines{display:grid;gap:12px;margin-top:32px}.arch-contact-lines a{display:flex;gap:13px;align-items:center;color:var(--arch-navy);font-weight:750}.arch-contact-lines .arch-icon{color:var(--arch-orange)}
.arch-form{padding:32px;border:1px solid var(--arch-line);border-radius:20px;background:var(--arch-soft);box-shadow:var(--arch-shadow)}
.arch-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.arch-fields label{font-size:12px;font-weight:850;color:var(--arch-navy)}
.arch-fields input,.arch-fields select,.arch-fields textarea{width:100%;display:block;margin-top:7px;padding:13px 14px;border:1px solid #c9d6e0;border-radius:8px;background:#fff;color:var(--arch-ink);outline:none}
.arch-fields input:focus,.arch-fields select:focus,.arch-fields textarea:focus{border-color:var(--arch-cyan);box-shadow:0 0 0 3px rgba(30,157,194,.12)}
.arch-field-full{grid-column:1/-1}.arch-consent{display:flex;gap:10px;align-items:flex-start;margin:17px 0;color:var(--arch-muted);font-size:12px}.arch-consent input{margin-top:3px}.form-status{font-weight:750;font-size:13px}.form-status[data-state=success]{color:#187a42}.form-status[data-state=error]{color:#a22929}

/* Footer */
.arch-footer{padding:70px 0 24px!important;background:var(--arch-navy-deep)!important;color:#c8d7e3!important}
.arch-footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:70px}
.arch-footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.arch-logo-curtain-footer{border-radius:14px;margin-bottom:8px}.arch-logo-curtain-footer img{width:128px!important;height:66px!important}
.arch-footer h3{color:#fff;margin:0 0 12px}.arch-footer p{max-width:370px}.arch-footer a:hover{color:var(--arch-orange)}
.arch-legal{margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.13);font-size:12px;color:#8ea5b7}

/* Inner page hero */
.arch-page-hero{position:relative;min-height:610px;padding-top:88px;color:#fff;background:var(--arch-navy-deep);overflow:hidden}
.arch-page-hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:var(--arch-page-position,center);border:0;background:var(--arch-navy-deep)}
.arch-page-hero-image{display:block;object-fit:cover;object-position:var(--arch-page-position,center)}
.arch-page-hero:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(4,26,49,.98) 0,rgba(4,26,49,.88) 42%,rgba(4,26,49,var(--arch-page-overlay,.55)) 75%,rgba(4,26,49,.08))}
.arch-page-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,26,49,.08),rgba(4,26,49,.45));z-index:2}
.arch-page-hero-grid{position:relative;z-index:3;min-height:522px;display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,430px);gap:64px;align-items:center}
.arch-page-hero-copy{max-width:760px}.arch-page-hero-copy h1{color:#fff}.arch-page-hero-symbol{display:none!important}
.arch-page-side-media{position:relative;justify-self:end;width:100%;max-width:430px;aspect-ratio:4/3;border:1px solid rgba(255,255,255,.48);border-radius:20px;overflow:hidden;background:#041a31;box-shadow:0 24px 56px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.08)}
.arch-page-side-media:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 7px rgba(255,255,255,.055)}
.arch-page-side-media img,.arch-page-side-media video,.arch-page-side-media iframe{display:block;width:100%;height:100%;border:0;object-fit:cover;object-position:var(--arch-side-position,center);background:#041a31}
.arch-page-side-media video{position:relative;z-index:1}.arch-page-side-media iframe{position:absolute;inset:0;z-index:1}
.arch-page-side-media-empty{border-color:rgba(255,255,255,.28);background:linear-gradient(145deg,rgba(9,42,72,.38),rgba(4,26,49,.16));box-shadow:0 24px 56px rgba(0,0,0,.2),inset 0 0 0 1px rgba(255,255,255,.035)}
.arch-page-side-media-empty:before{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px}
.arch-page-side-media-empty span:before,.arch-page-side-media-empty span:after{content:"";position:absolute;z-index:2;width:38px;height:38px}
.arch-page-side-media-empty span:before{left:16px;top:16px;border-left:2px solid rgba(238,139,22,.62);border-top:2px solid rgba(238,139,22,.62);border-radius:10px 0 0}
.arch-page-side-media-empty span:after{right:16px;bottom:16px;border-right:2px solid rgba(238,139,22,.62);border-bottom:2px solid rgba(238,139,22,.62);border-radius:0 0 10px}

/* Services system */
.arch-system-section{background:#f5f8fb}.arch-service-system{position:relative;min-height:700px;border:1px solid var(--arch-line);border-radius:28px;background:#fff;overflow:hidden;box-shadow:var(--arch-shadow)}
.arch-service-system:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(15,71,117,.08),transparent 36%)}
.arch-system-core{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:215px;height:215px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--arch-navy);color:#fff;box-shadow:0 20px 50px rgba(8,40,73,.26)}
.arch-system-core img{width:110px;height:74px;object-fit:contain;background:radial-gradient(circle,#fff 0,rgba(255,255,255,.88) 48%,transparent 75%);padding:4px}.arch-system-core strong{font-size:13px;margin-top:4px}
.arch-system-node{position:absolute;z-index:4;width:255px;padding:17px;border:1px solid var(--arch-line);border-radius:16px;background:#fff;text-align:center;box-shadow:0 12px 26px rgba(7,37,64,.08)}
.arch-system-node h3{margin:10px 0 5px;color:var(--arch-navy);font-size:16px}.arch-system-node p{margin:0;color:var(--arch-muted);font-size:12px}.arch-system-node .arch-icon-circle{width:52px;height:52px}.arch-system-node .arch-icon{width:25px;height:25px}
.arch-system-node:nth-of-type(1){left:45px;top:55px}.arch-system-node:nth-of-type(2){left:50%;top:35px;transform:translateX(-50%)}.arch-system-node:nth-of-type(3){right:45px;top:55px}.arch-system-node:nth-of-type(4){left:45px;bottom:55px}.arch-system-node:nth-of-type(5){left:50%;bottom:35px;transform:translateX(-50%)}.arch-system-node:nth-of-type(6){right:45px;bottom:55px}
.arch-system-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1}.arch-system-lines path{fill:none;stroke:rgba(8,40,73,.2);stroke-width:2;stroke-dasharray:6 7;vector-effect:non-scaling-stroke}
.arch-matrix-section{background:#fff}.arch-matrix{border:1px solid var(--arch-line);border-radius:18px;overflow:hidden}.arch-matrix-head,.arch-matrix-row{display:grid;grid-template-columns:.55fr 1.2fr 1fr;gap:0}.arch-matrix-head{background:var(--arch-navy);color:#fff;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.arch-matrix-head span,.arch-matrix-row>*{padding:17px 20px;border-right:1px solid rgba(255,255,255,.13)}.arch-matrix-row{border-top:1px solid var(--arch-line);align-items:center}.arch-matrix-row strong{color:var(--arch-orange);font-size:15px}.arch-matrix-row span{color:var(--arch-muted);font-size:14px}

/* Sector page cross capabilities */
.arch-sector-grid-page{grid-template-columns:repeat(2,1fr)}.arch-sector-grid-page .arch-sector-card{min-height:390px}
.arch-cross-section{background:var(--arch-navy);color:#fff}.arch-cross-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.arch-cross-grid article{padding:26px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(255,255,255,.04)}.arch-cross-grid h3{margin:17px 0 8px;color:#fff}.arch-cross-grid p{margin:0;color:#c5d5e1;font-size:13px}

/* Project page diagrams */
.arch-lifecycle-section{background:#f5f8fb}.arch-lifecycle{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.arch-lifecycle li{position:relative;min-height:280px;padding:25px 18px;border:1px solid var(--arch-line);border-radius:16px;background:#fff;text-align:center}.arch-lifecycle-index{display:block;margin-bottom:14px;color:var(--arch-orange);font-size:12px;font-weight:900}.arch-lifecycle h3{margin:16px 0 8px;color:var(--arch-navy);font-size:16px}.arch-lifecycle p{margin:0;color:var(--arch-muted);font-size:12px}.arch-lifecycle li>i{position:absolute;right:-17px;top:50%;z-index:3;color:var(--arch-orange);font-size:23px;font-style:normal}
.arch-control-section{background:#fff}.arch-control-wheel{position:relative;width:min(840px,100%);height:700px;margin:0 auto;border-radius:50%;background:radial-gradient(circle,rgba(15,71,117,.08),transparent 55%)}.arch-control-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;width:220px;height:220px;border-radius:50%;display:grid;place-items:center;padding:30px;background:var(--arch-navy);color:#fff;text-align:center;box-shadow:0 20px 55px rgba(8,40,73,.25)}.arch-control-core strong{font-size:24px}.arch-control-wheel article{position:absolute;z-index:3;width:210px;padding:18px;border:1px solid var(--arch-line);border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(7,37,64,.08);text-align:center}.arch-control-wheel article h3{margin:0;color:var(--arch-navy)}.arch-control-wheel article p{margin:6px 0 0;color:var(--arch-muted);font-size:12px}.arch-control-wheel article:nth-of-type(1){left:50%;top:0;transform:translateX(-50%)}.arch-control-wheel article:nth-of-type(2){right:10px;top:150px}.arch-control-wheel article:nth-of-type(3){right:10px;bottom:110px}.arch-control-wheel article:nth-of-type(4){left:50%;bottom:0;transform:translateX(-50%)}.arch-control-wheel article:nth-of-type(5){left:10px;bottom:110px}.arch-control-wheel article:nth-of-type(6){left:10px;top:150px}.arch-wheel-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px dashed rgba(8,40,73,.22);border-radius:50%}.arch-wheel-ring-one{width:490px;height:490px}.arch-wheel-ring-two{width:610px;height:610px}

/* Bidding page */
.arch-bid-journey-section{background:#f5f8fb}.arch-bid-journey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}.arch-bid-journey li{display:grid;grid-template-columns:36px 62px 1fr;gap:15px;align-items:center;padding:20px;border:1px solid var(--arch-line);border-radius:16px;background:#fff}.arch-bid-index{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--arch-orange);color:#fff;font-weight:900}.arch-bid-journey h3{margin:0;color:var(--arch-navy)}.arch-bid-journey p{margin:5px 0 0;color:var(--arch-muted);font-size:13px}
.arch-deliverables-section{background:#fff}.arch-deliverable-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.arch-deliverable-grid article{padding:26px;border:1px solid var(--arch-line);border-radius:16px;background:#fff;box-shadow:0 10px 25px rgba(7,37,64,.05)}.arch-deliverable-grid article>span{color:var(--arch-orange);font-size:12px;font-weight:900}.arch-deliverable-grid h3{margin:14px 0 8px;color:var(--arch-navy)}.arch-deliverable-grid p{margin:0;color:var(--arch-muted);font-size:13px}.arch-notice{display:flex;align-items:center;gap:18px;margin-top:24px;padding:22px 25px;border-radius:14px;background:#fff7ef;border-left:4px solid var(--arch-orange);color:#714018}.arch-notice .arch-icon{width:36px;height:36px;flex:0 0 auto}.arch-notice p{margin:0;font-size:13px}

/* Software page */
.arch-products-section{background:#fff}.arch-products-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.arch-products-grid article{padding:32px;border:1px solid var(--arch-line);border-radius:20px;background:linear-gradient(145deg,#fff,#f4f7fa);box-shadow:0 14px 34px rgba(7,37,64,.08)}.arch-product-top{display:flex;gap:18px;align-items:center}.arch-product-top p{margin:0;color:var(--arch-orange);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.arch-product-top h3{margin:4px 0 0;color:var(--arch-navy);font-size:28px}.arch-products-grid article>p{color:var(--arch-muted)}.arch-product-bars{display:flex;gap:6px;margin-top:25px}.arch-product-bars i{height:5px;border-radius:4px;background:var(--arch-navy);flex:1}.arch-product-bars i:nth-child(2){background:var(--arch-blue)}.arch-product-bars i:nth-child(3){background:var(--arch-cyan)}.arch-product-bars i:nth-child(4){background:var(--arch-orange)}
.arch-architecture-section{background:var(--arch-navy);color:#fff}.arch-architecture-layers{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.arch-architecture-layers article{position:relative;display:flex;align-items:center;gap:16px;min-height:150px;padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,calc(.035 + var(--layer) * .015));transform:translateY(calc(var(--layer) * -8px))}.arch-architecture-layers article>span{color:var(--arch-orange)}.arch-architecture-layers .arch-icon{width:38px;height:38px}.arch-architecture-layers h3{margin:0;color:#fff}.arch-architecture-layers p{margin:5px 0 0;color:#c5d6e3;font-size:12px}.arch-use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.arch-use-grid article{padding:25px;border-top:3px solid var(--arch-orange);background:#f5f8fb}.arch-use-grid h3{margin:0;color:var(--arch-navy)}.arch-use-grid p{margin:8px 0 0;color:var(--arch-muted);font-size:13px}

/* About page */
.arch-model-section{background:#f5f8fb}.arch-model-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.arch-model-flow article{position:relative;display:flex;gap:15px;padding:24px;border:1px solid var(--arch-line);border-radius:16px;background:#fff}.arch-model-flow article>div>span{color:var(--arch-orange);font-size:11px;font-weight:900}.arch-model-flow h3{margin:4px 0 7px;color:var(--arch-navy);font-size:17px}.arch-model-flow p{margin:0;color:var(--arch-muted);font-size:12px}.arch-model-flow i{position:absolute;right:-15px;top:50%;color:var(--arch-orange);font-style:normal;font-size:22px}
.arch-principles-section{background:var(--arch-navy);color:#fff}.arch-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}.arch-principle-grid article{padding:27px;background:var(--arch-navy)}.arch-principle-grid article>span{color:var(--arch-orange);font-size:12px;font-weight:900}.arch-principle-grid h3{margin:18px 0 8px;color:#fff}.arch-principle-grid p{margin:0;color:#c8d7e2;font-size:13px}.arch-experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.arch-experience-grid article{padding:25px;border:1px solid var(--arch-line);border-radius:14px;background:#fff}.arch-experience-grid h3{margin:0;color:var(--arch-navy)}.arch-experience-grid p{margin:8px 0 0;color:var(--arch-muted);font-size:13px}

/* Contact page */
.arch-paths-section{background:#f5f8fb}.arch-path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.arch-path-grid article{padding:26px;border:1px solid var(--arch-line);border-radius:16px;background:#fff}.arch-path-grid h3{margin:17px 0 8px;color:var(--arch-navy)}.arch-path-grid p{margin:0;color:var(--arch-muted);font-size:13px}.arch-process-section{background:var(--arch-navy);color:#fff}.arch-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.arch-process-grid article{padding:25px;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:rgba(255,255,255,.04)}.arch-process-grid h3{margin:0;color:#fff}.arch-process-grid p{margin:8px 0 0;color:#c6d6e2;font-size:13px}

/* Pía integration: keep original avatar and behavior while fitting the new UI */
.arch-pia .ai-toggle{z-index:140!important}.arch-pia .ai{z-index:141!important}.arch-site .pia-teaser{z-index:139!important}
.arch-site .ai{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important}
.arch-site .ai header{background:var(--arch-navy)!important}.arch-site .ai form{background:#fff!important}.arch-site .ai-log{background:#f1f5f8!important}.arch-site .ai-log p.bot{background:#fff!important;color:var(--arch-ink)!important}.arch-site .ai-log p.user{background:var(--arch-navy)!important;color:#fff!important}.arch-site .ai input{background:#fff!important;color:var(--arch-ink)!important;border-color:#cad7e1!important}.arch-site .ai form button{background:var(--arch-orange)!important;color:#fff!important}

/* Responsive */
@media(max-width:1180px){
  .arch-navlinks{gap:16px}.arch-navlinks a{font-size:13px}.arch-brand{width:160px;flex-basis:160px}.arch-logo-curtain img{width:122px!important;max-width:122px!important}
  .arch-service-system .arch-system-node{width:225px}
}
@media(max-width:980px){
  .arch-wrap{width:min(calc(100% - 32px),var(--arch-max))}
  .arch-nav{height:78px}.arch-brand{width:145px;flex-basis:145px}.arch-logo-curtain img{width:110px!important;height:62px!important;max-width:110px!important;max-height:62px!important}
  .arch-menu.menu{display:block!important;order:2}.arch-language{order:3}.arch-navlinks{display:none!important;position:absolute!important;left:16px!important;right:16px!important;top:78px!important;padding:18px!important;border:1px solid var(--arch-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:var(--arch-shadow)!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}.arch-navlinks.open{display:flex!important}.arch-navlinks a{padding:11px 7px!important}.arch-navlinks a:after{display:none}.arch-navlinks .arch-nav-cta{text-align:center;margin-top:7px}
  .arch-hero,.arch-hero .slides,.arch-hero .slide,.arch-hero-content{min-height:720px}.arch-hero-content{padding-top:100px}.arch-hero-copy{width:min(760px,88%)}.arch-hero-rail{display:none}.arch-hero-index{right:16px}
  .arch-metric-grid{grid-template-columns:1fr 1fr}.arch-metric:nth-child(2){border-right:0}.arch-metric:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.13)}
  .arch-intro-grid,.arch-software-grid,.arch-contact-grid,.arch-section-head,.arch-page-hero-grid{grid-template-columns:1fr;gap:35px}.arch-page-side-media{justify-self:center;max-width:650px;aspect-ratio:16/9}.arch-intro-statement{padding-left:25px}
  .arch-journey,.arch-lifecycle{grid-template-columns:repeat(3,1fr);gap:14px}.arch-step-arrow,.arch-lifecycle li>i{display:none}
  .arch-sector-grid{grid-template-columns:1fr 1fr}.arch-layer-diagram,.arch-architecture-layers{grid-template-columns:1fr 1fr}.arch-layer-diagram div,.arch-architecture-layers article{transform:none}
  .arch-footer-grid{grid-template-columns:1fr 1fr}.arch-footer-grid>div:first-child{grid-column:1/-1}
  .arch-service-system{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px;min-height:0}.arch-system-core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;justify-self:center}.arch-system-node{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:auto!important}.arch-system-lines{display:none}
  .arch-control-wheel{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}.arch-control-core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;justify-self:center;margin-bottom:10px}.arch-control-wheel article{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:auto}.arch-wheel-ring{display:none}
  .arch-cross-grid,.arch-model-flow,.arch-experience-grid,.arch-path-grid,.arch-process-grid{grid-template-columns:1fr 1fr}.arch-model-flow i{display:none}
}
@media(max-width:680px){
  .arch-site h1{font-size:42px}.arch-site h2{font-size:34px}.arch-section{padding:72px 0}.arch-section-head{margin-bottom:36px}.arch-language{margin-left:0}.arch-language a{min-width:36px;height:32px;padding:0 7px;font-size:12px}.arch-brand{width:130px;flex-basis:130px}
  .arch-hero,.arch-hero .slides,.arch-hero .slide,.arch-hero-content{min-height:750px}.arch-hero-content{align-items:flex-end;padding:115px 0 100px}.arch-hero-copy{width:100%}.arch-hero-overlay{background:linear-gradient(180deg,rgba(4,26,49,.3) 0%,rgba(4,26,49,.96) 62%,rgba(4,26,49,.99) 100%)}.arch-hero-index{display:none}.arch-carousel-controls{bottom:36px}.arch-actions{align-items:stretch}.arch-actions .arch-button{width:100%}
  .arch-site .arch-hero .arch-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:18px}.arch-site .arch-hero .arch-actions .arch-button{position:relative;width:100%;min-height:30px;max-height:30px;padding:2px 8px;border-radius:6px;gap:5px;font-size:11.5px;line-height:1;white-space:nowrap;box-shadow:none}.arch-site .arch-hero .arch-actions .arch-button:before{content:"";position:absolute;inset:-7px 0}.arch-site .arch-hero .arch-actions .arch-button span{font-size:13px}
  .arch-site .arch-page-hero .arch-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;margin-top:18px!important}.arch-site .arch-page-hero .arch-actions .arch-button{position:relative!important;width:100%!important;min-height:30px!important;max-height:30px!important;padding:2px 8px!important;border-radius:6px!important;gap:5px!important;font-size:10.5px!important;line-height:1!important;white-space:nowrap!important;box-shadow:none!important}.arch-site .arch-page-hero .arch-actions .arch-button:before{content:"";position:absolute;inset:-7px 0}.arch-site .arch-page-hero .arch-actions .arch-button span{font-size:12px}
  .arch-metric-grid{grid-template-columns:1fr}.arch-metric{border-right:0;border-bottom:1px solid rgba(255,255,255,.13);min-height:90px}.arch-metric:last-child{border-bottom:0}
  .arch-intro-grid{gap:28px}.arch-intro-statement p{font-size:18px}.arch-service-system{grid-template-columns:1fr}.arch-system-core{grid-column:1;width:180px;height:180px}
  .arch-journey,.arch-lifecycle{grid-template-columns:1fr}.arch-journey li{display:grid;grid-template-columns:50px 60px 1fr;text-align:left;gap:12px;align-items:center;padding:15px;border-bottom:1px solid rgba(255,255,255,.13)}.arch-step-number{margin:0}.arch-journey h3{margin:0 0 5px}.arch-journey p{grid-column:3;margin:0}.arch-sector-grid,.arch-sector-grid-page{grid-template-columns:1fr}.arch-sector-card{min-height:315px}.arch-software-grid{gap:35px}.arch-product-card{flex-direction:column}.arch-layer-diagram,.arch-products-grid,.arch-architecture-layers,.arch-use-grid,.arch-cross-grid,.arch-model-flow,.arch-principle-grid,.arch-experience-grid,.arch-path-grid,.arch-process-grid,.arch-deliverable-grid,.arch-bid-journey{grid-template-columns:1fr}
  .arch-cta-inner{flex-direction:column;align-items:flex-start}.arch-button-light{width:100%}.arch-fields{grid-template-columns:1fr}.arch-field-full{grid-column:auto}.arch-form{padding:22px}.arch-footer-grid{grid-template-columns:1fr;gap:35px}.arch-footer-grid>div:first-child{grid-column:auto}
  .arch-page-hero{min-height:620px}.arch-page-hero-grid{min-height:532px;padding-block:56px}.arch-page-side-media{width:100%;aspect-ratio:16/10;border-radius:16px}.arch-matrix-head{display:none}.arch-matrix-row{grid-template-columns:1fr;padding:17px}.arch-matrix-row>*{padding:7px 0;border-right:0}.arch-control-wheel{grid-template-columns:1fr}.arch-control-core{grid-column:1}.arch-bid-journey li{grid-template-columns:36px 52px 1fr;padding:15px}.arch-notice{align-items:flex-start}.arch-product-top{align-items:flex-start}.arch-architecture-layers article{transform:none}.arch-principle-grid{background:transparent;border:0;gap:12px}.arch-principle-grid article{border:1px solid rgba(255,255,255,.14);border-radius:14px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.arch-hero .slide.active .arch-hero-media img{animation:none}.arch-sector-card img,.arch-button,.arch-capability-node{transition:none}}
.arch-reveal{opacity:0;translate:0 22px;transition:opacity .58s ease var(--arch-delay,0ms),translate .58s ease var(--arch-delay,0ms)}.arch-reveal.arch-visible{opacity:1;translate:none}@media(prefers-reduced-motion:reduce){.arch-reveal{opacity:1;translate:none;transition:none}}

/*
 * v2.1 — traducción responsive de la estructura aprobada.
 * La viga horizontal de escritorio pasa a ser una columna técnica en móvil.
 */
@media(max-width:980px){
  .arch-site .arch-capability-section,
  .arch-site .arch-system-section{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  .arch-site .arch-capability-section .arch-section-head,
  .arch-site .arch-system-section .arch-section-head{
    gap:14px!important;
    margin-bottom:22px!important;
  }
  .arch-site .arch-capability-map{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    min-height:0!important;
    padding:24px 18px 24px 104px!important;
    border:1px solid #d5dce2!important;
    border-radius:4px!important;
    background:#fbfaf7!important;
    box-shadow:0 15px 34px rgba(7,37,64,.075)!important;
    overflow:hidden!important;
  }
  .arch-site .arch-capability-map::before{
    display:block!important;
    inset:12px!important;
    border-color:rgba(31,64,91,.12)!important;
    background-image:linear-gradient(rgba(31,64,91,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(31,64,91,.032) 1px,transparent 1px)!important;
    background-size:32px 32px!important;
  }
  .arch-site .arch-capability-map::after{
    left:84px!important;
    right:auto!important;
    top:24px!important;
    bottom:24px!important;
    width:1px!important;
    height:auto!important;
    background:#9caab6!important;
    box-shadow:none!important;
  }
  .arch-site .arch-structural-framework{
    display:block!important;
    left:76px!important;
    right:auto!important;
    top:24px!important;
    bottom:24px!important;
    width:17px!important;
    height:auto!important;
  }
  .arch-site .arch-structural-beam{
    left:3px!important;
    right:auto!important;
    top:0!important;
    bottom:0!important;
    width:11px!important;
    height:auto!important;
    border:1px solid #061f39!important;
    background:linear-gradient(90deg,#061f39 0,#0b355b 50%,#061f39 100%)!important;
    box-shadow:inset 2px 0 0 rgba(255,255,255,.1)!important;
  }
  .arch-site .arch-structural-beam:before,
  .arch-site .arch-structural-beam:after{
    left:-4px!important;
    right:auto!important;
    width:17px!important;
    height:6px!important;
    background:#061f39!important;
  }
  .arch-site .arch-structural-beam:before{top:-1px!important}
  .arch-site .arch-structural-beam:after{top:auto!important;bottom:-1px!important}
  .arch-site .arch-structural-framework i{
    display:none!important;
  }
  .arch-site .arch-capability-node,
  .arch-site .arch-capability-node-5{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    grid-column:1!important;
    display:grid!important;
    grid-template-columns:52px minmax(0,1fr)!important;
    grid-template-rows:auto 1fr!important;
    column-gap:14px!important;
    width:100%!important;
    min-height:118px!important;
    padding:20px 8px 19px 28px!important;
    border:0!important;
    border-bottom:1px dashed #c7d0d7!important;
    border-radius:0!important;
    color:var(--arch-navy)!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .arch-site .arch-capability-node:last-of-type{
    border-bottom:0!important;
  }
  .arch-site .arch-capability-node:before{
    z-index:2!important;
    left:-20px!important;
    top:50%!important;
    width:28px!important;
    height:1px!important;
    background:#0b355b!important;
    transform:none!important;
  }
  .arch-site .arch-capability-node:after{
    z-index:3!important;
    left:-24px!important;
    top:50%!important;
    width:11px!important;
    height:11px!important;
    border:2px solid #fbfaf7!important;
    border-radius:0!important;
    background:var(--arch-orange)!important;
    box-shadow:0 0 0 1px #061f39!important;
    transform:translate(-50%,-50%)!important;
  }
  .arch-site .arch-capability-node:hover,
  .arch-site .arch-capability-node:focus-visible,
  .arch-site .arch-capability-node-5:hover{
    background:rgba(255,255,255,.7)!important;
    transform:none!important;
  }
  .arch-site .arch-capability-node .arch-icon-circle{
    grid-column:1!important;
    grid-row:1/3!important;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    border:0!important;
    border-radius:0!important;
    color:var(--arch-navy)!important;
    background:transparent!important;
  }
  .arch-site .arch-capability-node .arch-icon{
    width:36px!important;
    height:36px!important;
    stroke-width:1.35!important;
  }
  .arch-site .arch-capability-node .arch-node-index{
    grid-column:2!important;
    grid-row:1!important;
    display:block!important;
    margin:0 0 6px!important;
    color:var(--arch-orange)!important;
    font-size:17px!important;
    line-height:1!important;
  }
  .arch-site .arch-capability-node .arch-node-copy{
    grid-column:2!important;
    grid-row:2!important;
  }
  .arch-site .arch-capability-node strong{
    color:var(--arch-navy)!important;
    font-size:13.5px!important;
    line-height:1.24!important;
  }
  .arch-site .arch-capability-node small{
    margin-top:5px!important;
    color:#52677a!important;
    font-size:11px!important;
    line-height:1.38!important;
  }
  .arch-site .arch-service-system{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    min-height:0!important;
    padding:16px!important;
  }
  .arch-site .arch-service-system .arch-system-lines{display:none!important}
  .arch-site .arch-system-core{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    grid-column:1!important;
    justify-self:stretch!important;
    width:100%!important;
    height:auto!important;
    min-height:58px!important;
    margin:0 0 3px!important;
    padding:8px 14px!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    gap:10px!important;
    border-radius:10px!important;
    border-left:4px solid var(--arch-orange)!important;
    box-shadow:none!important;
  }
  .arch-site .arch-system-core img{
    width:62px!important;
    height:38px!important;
    padding:0!important;
    background:#fff!important;
    border-radius:5px!important;
  }
  .arch-site .arch-system-core strong{margin:0!important;font-size:13px!important}
  .arch-site .arch-system-node{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    grid-column:1!important;
    width:100%!important;
    min-height:76px!important;
    padding:10px 12px!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:11px!important;
    row-gap:2px!important;
    align-items:center!important;
    text-align:left!important;
    border-radius:11px!important;
    box-shadow:0 3px 10px rgba(8,40,73,.045)!important;
  }
  .arch-site .arch-system-node .arch-icon-circle{grid-column:1!important;grid-row:1/3!important;width:40px!important;height:40px!important;margin:0!important}
  .arch-site .arch-system-node h3{grid-column:2!important;grid-row:1!important;margin:0!important;font-size:13px!important;line-height:1.22!important}
  .arch-site .arch-system-node p{grid-column:2!important;grid-row:2!important;margin:0!important;font-size:10.5px!important;line-height:1.35!important}
}

@media(max-width:420px){
  .arch-site .arch-capability-map{
    padding:16px 10px 16px 78px!important;
  }
  .arch-site .arch-capability-map::after{left:62px!important;top:16px!important;bottom:16px!important}
  .arch-site .arch-structural-framework{left:54px!important;top:16px!important;bottom:16px!important}
  .arch-site .arch-capability-node,
  .arch-site .arch-capability-node-5{
    min-height:106px!important;
    padding:15px 3px 14px 23px!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    column-gap:10px!important;
  }
  .arch-site .arch-capability-node:before{left:-16px!important;width:22px!important}
  .arch-site .arch-capability-node:after{left:-20px!important}
  .arch-site .arch-capability-node .arch-icon-circle{width:42px!important;height:42px!important;min-width:42px!important}
  .arch-site .arch-capability-node .arch-icon{width:31px!important;height:31px!important}
  .arch-site .arch-capability-node strong{font-size:12px!important}
  .arch-site .arch-capability-node small{font-size:10.25px!important}
}

@media(prefers-reduced-motion:reduce){.arch-capability-node{transition:none!important}}

/* v2.2: versión visible y Pía sin invadir el medio lateral de la portada */
.arch-footer .arch-legal{display:flex;align-items:center;justify-content:space-between;gap:18px}
.arch-version{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#b8c8d2;font-size:11px;font-weight:800;letter-spacing:.05em;white-space:nowrap}
@media(min-width:981px){
  .arch-site .pia-teaser{right:170px!important;bottom:42px!important;max-width:300px!important}
  .arch-site .pia-teaser__copy{align-items:flex-end!important}
  .arch-site .pia-teaser__line{max-width:300px!important}
  .arch-site .pia-teaser__line--question:after{right:-7px!important;left:auto!important;bottom:50%!important;top:auto!important;transform:translateY(50%)!important;border-width:7px 0 7px 8px!important;border-color:transparent transparent transparent rgba(26,35,50,.78)!important}
}
@media(max-width:560px){
  .arch-footer .arch-legal{align-items:flex-start;flex-direction:column}
}

/* v2.9.0 · soporte del logo de pie con forma de túnel minero y contraste protegido */
.arch-footer .arch-logo-curtain-footer{position:relative!important;isolation:isolate!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:150px!important;min-height:92px!important;margin:0 0 10px!important;padding:10px 11px 4px!important;border:1px solid rgba(255,255,255,.72)!important;border-bottom-color:rgba(255,255,255,.28)!important;border-radius:75px 75px 14px 14px / 62px 62px 14px 14px!important;background:linear-gradient(180deg,#fff 0%,#f7fafc 78%,#e6eef3 100%)!important;box-shadow:0 10px 26px rgba(0,0,0,.24),inset 0 -5px 10px rgba(6,29,53,.08)!important;overflow:hidden!important}
.arch-footer .arch-logo-curtain-footer:before{content:""!important;position:absolute!important;z-index:-1!important;inset:7px 8px 4px!important;border:2px solid rgba(6,29,53,.12)!important;border-bottom:0!important;border-radius:68px 68px 10px 10px / 55px 55px 10px 10px!important}
.arch-footer .arch-logo-curtain-footer:after{content:""!important;position:absolute!important;left:50%!important;bottom:0!important;width:82%!important;height:6px!important;transform:translateX(-50%)!important;border-radius:999px 999px 0 0!important;background:linear-gradient(90deg,transparent,rgba(6,29,53,.18),transparent)!important}
.arch-footer .arch-logo-curtain-footer img{position:relative!important;z-index:2!important;width:132px!important;height:73px!important;max-width:132px!important;max-height:73px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px rgba(6,29,53,.18))!important}
.arch-footer,.arch-footer h3,.arch-footer p,.arch-footer a,.arch-footer span{color:#fff!important}.arch-footer .arch-legal,.arch-footer .arch-version{color:#c8d7e3!important}.arch-footer .social-link{color:#eef7fa!important}
@media(max-width:560px){.arch-footer .arch-logo-curtain-footer{width:136px!important;min-height:84px!important;border-radius:68px 68px 12px 12px / 56px 56px 12px 12px!important}.arch-footer .arch-logo-curtain-footer img{width:119px!important;height:66px!important;max-width:119px!important;max-height:66px!important}}

/* v2.9.0 · soporte del logo de pie con forma de túnel minero y contraste protegido */
.arch-footer .arch-logo-curtain-footer{position:relative!important;isolation:isolate!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:150px!important;min-height:92px!important;margin:0 0 10px!important;padding:10px 11px 4px!important;border:1px solid rgba(255,255,255,.72)!important;border-bottom-color:rgba(255,255,255,.28)!important;border-radius:75px 75px 14px 14px / 62px 62px 14px 14px!important;background:linear-gradient(180deg,#fff 0%,#f7fafc 78%,#e6eef3 100%)!important;box-shadow:0 10px 26px rgba(0,0,0,.24),inset 0 -5px 10px rgba(6,29,53,.08)!important;overflow:hidden!important}
.arch-footer .arch-logo-curtain-footer:before{content:""!important;position:absolute!important;z-index:-1!important;inset:7px 8px 4px!important;border:2px solid rgba(6,29,53,.12)!important;border-bottom:0!important;border-radius:68px 68px 10px 10px / 55px 55px 10px 10px!important}
.arch-footer .arch-logo-curtain-footer:after{content:""!important;position:absolute!important;left:50%!important;bottom:0!important;width:82%!important;height:6px!important;transform:translateX(-50%)!important;border-radius:999px 999px 0 0!important;background:linear-gradient(90deg,transparent,rgba(6,29,53,.18),transparent)!important}
.arch-footer .arch-logo-curtain-footer img{position:relative!important;z-index:2!important;width:132px!important;height:73px!important;max-width:132px!important;max-height:73px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px rgba(6,29,53,.18))!important}
.arch-footer,.arch-footer h3,.arch-footer p,.arch-footer a,.arch-footer span{color:#fff!important}.arch-footer .arch-legal,.arch-footer .arch-version{color:#c8d7e3!important}.arch-footer .social-link{color:#eef7fa!important}
@media(max-width:560px){.arch-footer .arch-logo-curtain-footer{width:136px!important;min-height:84px!important;border-radius:68px 68px 12px 12px / 56px 56px 12px 12px!important}.arch-footer .arch-logo-curtain-footer img{width:119px!important;height:66px!important;max-width:119px!important;max-height:66px!important}}
