/* Gyalux · Desarrollo y alojamiento web · 27/09/2026.
   Exterior canónico de Servicios. Contenido exclusivo para negocios. */
html.gx-dev-root { scroll-behavior:smooth; overflow-y:scroll; max-width:100%; overflow-x:hidden; -webkit-text-size-adjust:100%; text-size-adjust:100%; }
html.gx-dev-root *, html.gx-dev-root *::before, html.gx-dev-root *::after { box-sizing:border-box; }
body.gx-dev-page { margin:0; max-width:100%; overflow-x:hidden; background:#f3f5f8; position:relative; color:#001a3a; font-family:"Inter",sans-serif; font-size:16px; line-height:1.65; }
body.gx-dev-page .bg-master-container { position:fixed; top:0; left:0; width:100vw; height:100vh; z-index:-1; overflow:hidden; background-color:#f3f5f8; }
body.gx-dev-page .bg-architectural { position:absolute; top:0; right:0; width:100%; height:100%; background:url('../img/fondo-circuito.jpg') no-repeat center center; background-image:image-set(url('../img/fondo-circuito.webp') type('image/webp'),url('../img/fondo-circuito.jpg') type('image/jpeg')); background-size:cover; opacity:.10; mask-image:linear-gradient(to bottom,black 0%,transparent 95%),linear-gradient(to left,black 50%,transparent 100%); -webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 95%),linear-gradient(to left,black 50%,transparent 100%); mask-composite:intersect; -webkit-mask-composite:source-in; pointer-events:none; }
body.gx-dev-page .main-wrapper { width:100%; max-width:1200px; margin:0 auto; padding:0; }
body.gx-dev-page img, body.gx-dev-page svg, body.gx-dev-page iframe { max-width:100%; }
body.gx-dev-page .footer-texts { margin-top:auto; padding-top:0; text-align:center; }
body.gx-dev-page .gx-context-bar { width:100%; margin:30px 0; border-top:1px solid rgba(0,26,58,.06); border-bottom:1px solid rgba(0,26,58,.08); background:rgba(255,255,255,.74); }
body.gx-dev-page .gx-context-bar-inner { width:100%; max-width:1200px; min-height:46px; margin:0 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; }
body.gx-dev-page .gx-context-item { min-width:0; display:flex; justify-content:center; align-items:center; gap:8px; padding:9px 18px; color:#536174; font-size:.77rem; line-height:1.3; text-align:center; }
body.gx-dev-page .gx-context-item + .gx-context-item { border-left:1px solid rgba(0,26,58,.08); }
body.gx-dev-page .gx-context-item i { width:13px; min-width:13px; flex:0 0 13px; color:#cba358; font-size:.9rem; text-align:center; }
body.gx-dev-page .gx-dev-main { width:100%; background:#fff; border:1px solid rgba(0,26,58,.07); border-radius:7px; overflow:hidden; box-shadow:0 14px 45px rgba(0,26,58,.035); }
body.gx-dev-page .gx-dev-main h1, body.gx-dev-page .gx-dev-main h2 { color:#001a3a; font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; letter-spacing:-.45px; }
body.gx-dev-page .gx-dev-main h1 { margin:0 0 18px; font-size:35px; line-height:41.3px; }
body.gx-dev-page .gx-dev-main h2 { margin:0 0 14px; font-size:24px; line-height:28.32px; }
body.gx-dev-page .gx-dev-main p { margin:0 0 16px; color:#4a5568; line-height:1.65; }
body.gx-dev-page .gx-dev-main p:last-child { margin-bottom:0; }
body.gx-dev-page .gx-dev-intro { max-width:980px; padding:38px 42px 44px; }
body.gx-dev-page .gx-dev-intro .eyebrow { display:block; margin:0 0 20px; color:#cba358; font-family:"Inter",sans-serif; font-size:12px; font-weight:100; line-height:normal; letter-spacing:2px; text-transform:uppercase; }
body.gx-dev-page .gx-dev-intro .gx-dev-lead { color:#24374e; font-size:18px; font-weight:500; line-height:1.55; }

/* Presencia y venta: dos situaciones de negocio, con escenas diferentes. */
body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce { display:grid; align-items:start; gap:clamp(30px,4vw,58px); padding:40px 42px; border-top:1px solid #e4e8ec; }
body.gx-dev-page .gx-dev-presence { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); }
body.gx-dev-page .gx-dev-commerce { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
body.gx-dev-page .gx-dev-presence > div, body.gx-dev-page .gx-dev-commerce > div { min-width:0; }
body.gx-dev-page .gx-dev-visual { width:100%; max-width:370px; margin:0; justify-self:center; aspect-ratio:4/3; border-radius:4px; overflow:hidden; background:#eee9df; }
body.gx-dev-page .gx-dev-commerce .gx-dev-visual { max-width:320px; }
body.gx-dev-page .gx-dev-visual img { display:block; width:100%; height:100%; object-fit:cover; }
body.gx-dev-page .gx-dev-care { padding:36px 42px; border-top:1px solid #e4e8ec; }
body.gx-dev-page .gx-dev-care p { max-width:990px; }
body.gx-dev-page .gx-dev-link { display:inline-flex; align-items:center; gap:9px; color:#001a3a; font-size:.82rem; font-weight:700; text-decoration:none; }
body.gx-dev-page .gx-dev-link i { color:#cba358; transition:transform 180ms ease; }
body.gx-dev-page .gx-dev-link:hover, body.gx-dev-page .gx-dev-link:focus-visible { color:#9a742f; }
body.gx-dev-page .gx-dev-link:hover i, body.gx-dev-page .gx-dev-link:focus-visible i { transform:translateX(4px); }

/* Puente editorial hacia la oferta mensual, sin duplicar sus modalidades. */
body.gx-dev-page .gx-dev-monthly { margin:0 42px 40px; padding:26px; display:grid; grid-template-columns:36px minmax(0,1fr); gap:20px; background:#f5f7f8; border-left:3px solid #cba358; }
body.gx-dev-page .gx-dev-monthly-mark { color:#001a3a; font-size:28px; line-height:1.2; padding-top:1px; }
body.gx-dev-page .gx-dev-monthly p { font-size:.94rem; max-width:940px; }

/* Cierre de servicio canónico. */
body.gx-dev-page .gx-dev-final { margin:30px 0 80px; padding:34px 36px; display:flex; align-items:center; justify-content:space-between; gap:45px; border-top:2px solid #cba358; border-bottom:1px solid rgba(0,26,58,.12); background:rgba(255,255,255,.66); }
body.gx-dev-page .gx-dev-final > div:first-child { max-width:760px; }
body.gx-dev-page .gx-dev-final h2 { margin:0 0 14px; font-family:"Plus Jakarta Sans",sans-serif; font-size:24px; font-weight:700; line-height:28.32px; letter-spacing:-.45px; }
body.gx-dev-page .gx-dev-final p { max-width:670px; margin:0; color:#4a5568; font-size:.94rem; line-height:1.65; }
body.gx-dev-page .gx-dev-final-actions { display:flex; align-items:center; gap:10px; flex:0 0 auto; }
body.gx-dev-page .gx-dev-button { min-height:44px; padding:0 19px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #cba358; border-radius:8px; background:linear-gradient(135deg,#dfb96e 0%,#b88e45 100%); color:#fff; box-shadow:inset 0 0 0 1px #cba358,0 8px 20px rgba(203,163,88,.30); text-shadow:1px 1px 3px rgba(0,26,58,.60); font-size:.76rem; font-weight:700; line-height:1; letter-spacing:.035em; text-transform:uppercase; text-decoration:none; transition:transform .3s ease; }
body.gx-dev-page .gx-dev-button:hover { transform:translateY(-2px); }
body.gx-dev-page .gx-dev-contact-icon { width:44px; min-width:44px; height:44px; display:grid; place-items:center; padding:0; border:1px solid rgba(0,26,58,.13); border-radius:8px; background:#fff; color:#001a3a; text-decoration:none; transition:color .18s ease,border-color .18s ease; }
body.gx-dev-page .gx-dev-contact-icon:hover { border-color:#cba358; color:#9a742f; }
body.gx-dev-page .gx-dev-contact-icon i { margin:0; padding:0; font-size:1rem; line-height:1; }
body.gx-dev-page .gx-dev-main a:focus-visible, body.gx-dev-page .gx-dev-final a:focus-visible { outline:3px solid rgba(203,163,88,.48); outline-offset:3px; }

@media (max-width:1180px) {
 body.gx-dev-page .main-wrapper { width:calc(100% - 44px); max-width:none; }
 body.gx-dev-page .gx-context-bar-inner { width:calc(100% - 44px); }
}
@media (max-width:992px) { body.gx-dev-page .bg-architectural { width:100vw; opacity:.05; } }
@media (max-width:991px) {
 body.gx-dev-page .bg-architectural { opacity:.075 !important; background-position:center top !important; }
 body.gx-dev-page .main-wrapper { width:calc(100% - 36px); max-width:none; }
 body.gx-dev-page .gx-context-bar-inner { width:100%; grid-template-columns:1fr; }
 body.gx-dev-page .gx-context-item { min-height:39px; justify-content:flex-start; padding-left:22px; padding-right:22px; text-align:left; }
 body.gx-dev-page .gx-context-item + .gx-context-item { border-left:0; border-top:1px solid rgba(0,26,58,.07); }
 body.gx-dev-page .gx-dev-intro, body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce, body.gx-dev-page .gx-dev-care { padding-inline:28px; }
 body.gx-dev-page .gx-dev-intro .eyebrow { font-size:11.52px; line-height:14.976px; letter-spacing:1.5px; }
 body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce { gap:30px; }
 body.gx-dev-page .gx-dev-monthly { margin-inline:28px; }
 body.gx-dev-page .gx-dev-final { padding:30px 28px; align-items:flex-start; flex-direction:column; gap:28px; }
}
@media (max-width:700px) {
 body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce { grid-template-columns:1fr; gap:24px; }
 body.gx-dev-page .gx-dev-commerce .gx-dev-visual { order:2; max-width:370px; }
}
@media (max-width:650px) {
 body.gx-dev-page .gx-dev-final { margin-bottom:50px; padding:28px 20px; }
 body.gx-dev-page .gx-dev-final-actions { width:100%; flex-wrap:wrap; }
 body.gx-dev-page .gx-dev-button { flex:1 1 180px; }
}
@media (max-width:640px) {
 body.gx-dev-page .main-wrapper { width:calc(100% - 32px); }
 body.gx-dev-page .gx-context-bar { margin-top:24px; margin-bottom:24px; }
 body.gx-dev-page .gx-context-item { font-size:.72rem; }
 body.gx-dev-page .gx-dev-main h1, body.gx-dev-page .gx-dev-main h2, body.gx-dev-page .gx-dev-final h2 { font-size:23.2px; line-height:27.376px; }
 body.gx-dev-page .gx-dev-main h1 { margin-bottom:16px; }
 body.gx-dev-page .gx-dev-intro .eyebrow { margin-bottom:11px; }
 body.gx-dev-page .gx-dev-intro { padding:27px 20px 32px; }
 body.gx-dev-page .gx-dev-intro .gx-dev-lead { font-size:16px; }
 body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce, body.gx-dev-page .gx-dev-care { padding:32px 20px; }
 body.gx-dev-page .gx-dev-monthly { margin:0 20px 30px; padding:20px 18px; grid-template-columns:26px minmax(0,1fr); gap:14px; }
 body.gx-dev-page .gx-dev-monthly-mark { font-size:24px; }
}
@media (max-width:360px) {
 body.gx-dev-page .gx-dev-intro, body.gx-dev-page .gx-dev-presence, body.gx-dev-page .gx-dev-commerce, body.gx-dev-page .gx-dev-care { padding-inline:14px; }
 body.gx-dev-page .gx-dev-main h1 { font-size:22.72px; line-height:26.3552px; }
 body.gx-dev-page .gx-dev-main h2, body.gx-dev-page .gx-dev-final h2 { font-size:20.48px; line-height:24.576px; }
 body.gx-dev-page .gx-dev-monthly { margin-inline:14px; }
}
@media (prefers-reduced-motion:reduce) {
 html.gx-dev-root { scroll-behavior:auto; }
 body.gx-dev-page .gx-dev-link i, body.gx-dev-page .gx-dev-button { transition:none; transform:none; }
}
