/*
Theme Name: Antares Techgroup 2026
Theme URI: https://antatec.com/
Author: Antares Techgroup S.R.L.
Author URI: https://antatec.com/
Description: Tema institucional basado en la identidad Stellar Nexus de Antares Techgroup.
Version: 4.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: antares-stellar
*/

:root {
	--at-red: #d4141d;
	--at-deep-red: #c20c14;
	--at-space: #0d223c;
	--at-space-2: #08182b;
	--at-white: #fafafa;
	--at-gray: #e8e8ea;
	--at-ink: #142033;
	--at-muted: #5f6977;
	--at-line: rgba(13, 34, 60, .14);
	--at-max: 1220px;
	--at-font: Inter, "Segoe UI", Arial, sans-serif;
	--at-brand-font: "Eurostile Extended", "Microgramma D Extended", "Arial Black", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 86px; }
body { margin: 0; background: var(--at-white); color: var(--at-ink); font-family: var(--at-font); font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body.admin-bar .at-header { top: 32px; }
body.at-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; height: auto; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, input[type="submit"] { cursor: pointer; }
::selection { background: var(--at-red); color: #fff; }
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; }
.at-skip-link { background: #fff; color: var(--at-space); left: 16px; padding: 10px 14px; position: fixed; top: -80px; z-index: 10000; }
.at-skip-link:focus { top: 16px; }
.at-site { min-height: 100vh; overflow: clip; }
.at-shell { margin-inline: auto; max-width: var(--at-max); padding-inline: 32px; width: 100%; }

/* Brand */
.at-symbol { display: block; height: 100%; object-fit: contain; width: 100%; }
.at-brand { align-items: center; display: inline-flex; position: relative; z-index: 2; }
.at-brandmark { align-items: center; display: inline-flex; gap: 10px; }
.at-brandmark__symbol { height: 46px; object-fit: contain; width: 40px; }
.at-brandmark__wordmark { height: auto; width: 126px; }

/* Header */
.at-header { background: rgba(250,250,250,.96); border-bottom: 1px solid var(--at-line); left: 0; position: fixed; right: 0; top: 0; transition: box-shadow .2s ease; z-index: 1000; }
.at-header.is-scrolled { box-shadow: 0 12px 34px rgba(13,34,60,.08); }
.at-header__inner { align-items: center; display: flex; height: 78px; justify-content: space-between; }
.at-nav { align-items: center; display: flex; gap: 31px; }
.at-nav > a:not(.at-button) { color: #344052; font-size: 14px; font-weight: 650; position: relative; }
.at-nav > a:not(.at-button)::after { background: var(--at-red); bottom: -8px; content: ""; height: 2px; left: 0; position: absolute; transform: scaleX(0); transform-origin: left; transition: transform .2s ease; width: 100%; }
.at-nav > a:hover::after, .at-nav > a:focus-visible::after { transform: scaleX(1); }
.at-menu-toggle { background: transparent; border: 0; display: none; height: 44px; padding: 8px; width: 44px; }
.at-menu-toggle::before, .at-menu-toggle::after, .at-menu-toggle > span:first-child { background: var(--at-space); content: ""; display: block; height: 2px; margin: 6px 0; transition: transform .2s ease, opacity .2s ease; width: 28px; }
.at-menu-toggle[aria-expanded="true"]::before { transform: translateY(8px) rotate(45deg); }
.at-menu-toggle[aria-expanded="true"]::after { transform: translateY(-8px) rotate(-45deg); }
.at-menu-toggle[aria-expanded="true"] > span:first-child { opacity: 0; }

/* Shared */
.at-button { align-items: center; background: var(--at-red); border: 1px solid var(--at-red); color: #fff; display: inline-flex; font-size: 14px; font-weight: 750; gap: 14px; justify-content: center; letter-spacing: .01em; min-height: 50px; padding: 12px 22px; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.at-button:hover, .at-button:focus-visible { background: var(--at-deep-red); border-color: var(--at-deep-red); transform: translateY(-2px); }
.at-button--small { min-height: 42px; padding: 8px 18px; }
.at-eyebrow { color: var(--at-red); font-size: 12px; font-weight: 800; letter-spacing: .2em; margin: 0 0 20px; }
.at-eyebrow--light { color: #ff747a; }
.at-section { padding: 118px 0; position: relative; }
.at-section--gray { background: #f0f0f2; }
.at-section--deep { background: var(--at-space); color: #fff; overflow: hidden; }
.at-section h2 { color: var(--at-space); font-size: clamp(38px, 5vw, 68px); letter-spacing: -.045em; line-height: 1.03; margin: 0; }
.at-section--deep h2 { color: #fff; }
.at-section-head { align-items: end; display: grid; gap: 70px; grid-template-columns: minmax(0,1.6fr) minmax(280px,.7fr); margin-bottom: 68px; }
.at-section-head > p { color: var(--at-muted); font-size: 18px; margin: 0 0 4px; }
.at-section-head--light > p { color: #c5cfda; }
.at-editorial-grid { display: grid; gap: 56px; grid-template-columns: 170px 1fr; }
.at-section-kicker { border-top: 2px solid var(--at-red); padding-top: 16px; }
.at-section-kicker span { color: var(--at-red); font-weight: 800; }
.at-section-kicker p { color: var(--at-muted); font-size: 14px; margin: 8px 0; }
.at-editorial-copy { max-width: 850px; }
.at-editorial-copy h2 { margin-bottom: 28px; }
.at-editorial-copy p { color: var(--at-muted); font-size: 18px; max-width: 760px; }
.at-editorial-copy .at-lead { color: var(--at-space); font-size: clamp(23px, 3vw, 35px); font-weight: 550; line-height: 1.35; }

/* Hero */
.at-hero { background: var(--at-space); color: #fff; min-height: 820px; overflow: hidden; padding: 152px 0 108px; position: relative; }
.at-hero::before { background: linear-gradient(90deg, rgba(13,34,60,1) 0%, rgba(13,34,60,.93) 53%, rgba(13,34,60,.65) 100%); content: ""; inset: 0; position: absolute; z-index: 0; }
.at-hero__watermark { height: min(78vw, 920px); opacity: .12; pointer-events: none; position: absolute; right: -18%; top: -12%; transform: rotate(2deg); width: min(78vw, 920px); }
.at-hero__grid { align-items: end; display: grid; gap: 70px; grid-template-columns: minmax(0,1.25fr) minmax(280px,.55fr); position: relative; z-index: 1; }
.at-hero h1 { font-size: clamp(60px, 8.2vw, 112px); letter-spacing: -.055em; line-height: .9; margin: 0 0 36px; max-width: 830px; }
.at-hero h1 span { color: #ff4650; }
.at-hero__lead { color: #d4dce6; font-size: clamp(20px, 2vw, 25px); line-height: 1.5; margin: 0; max-width: 710px; }
.at-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 28px; margin-top: 40px; }
.at-link-light { border-bottom: 1px solid rgba(255,255,255,.55); color: #fff; font-size: 14px; font-weight: 650; padding: 8px 0; }
.at-hero__statement { border-left: 1px solid rgba(255,255,255,.25); margin-bottom: 14px; padding: 0 0 0 28px; }
.at-hero__statement p { color: #d4dce6; font-size: 17px; margin: 0; }
.at-rule { background: var(--at-red); display: block; height: 3px; margin-bottom: 26px; width: 52px; }

/* Metrics */
.at-metrics { background: #fff; border-bottom: 1px solid var(--at-line); }
.at-metrics__grid { display: grid; grid-template-columns: repeat(3,1fr); }
.at-metric { border-left: 1px solid var(--at-line); padding: 35px 26px 34px; }
.at-metric:last-child { border-right: 1px solid var(--at-line); }
.at-metric strong { color: var(--at-space); display: block; font-size: 28px; line-height: 1.15; }
.at-metric span { color: var(--at-muted); display: block; font-size: 13px; line-height: 1.35; margin-top: 8px; }

/* Capabilities */
.at-capabilities { border-top: 1px solid rgba(13,34,60,.2); display: grid; grid-template-columns: repeat(2,1fr); }
.at-capability { border-bottom: 1px solid rgba(13,34,60,.2); display: grid; gap: 22px; grid-template-columns: 45px minmax(180px,.65fr) minmax(260px,1fr); padding: 34px 10px; }
.at-capability > span { color: var(--at-red); font-size: 13px; font-weight: 800; }
.at-capability h3 { color: var(--at-space); font-size: 21px; line-height: 1.25; margin: 0; }
.at-capability p { color: var(--at-muted); font-size: 15px; margin: 0; }
.at-capability:nth-child(odd) { padding-right: 36px; }
.at-capability:nth-child(even) { border-left: 1px solid rgba(13,34,60,.2); padding-left: 36px; }

/* Differentials */
.at-deep-watermark { bottom: -34%; height: 760px; opacity: .07; pointer-events: none; position: absolute; right: -10%; width: 760px; }
.at-section--deep > .at-shell { position: relative; z-index: 1; }
.at-differentials { display: grid; grid-template-columns: repeat(4,1fr); }
.at-differential { border-left: 1px solid rgba(255,255,255,.2); padding: 28px 28px 16px; }
.at-differential::before { background: var(--at-red); content: ""; display: block; height: 4px; margin-bottom: 58px; width: 38px; }
.at-differential h3 { font-size: 20px; line-height: 1.25; margin: 0 0 16px; }
.at-differential p { color: #bdc9d6; font-size: 15px; margin: 0; }

/* Cases */
.at-cases { display: grid; gap: 22px; grid-template-columns: repeat(3,1fr); }
.at-case { border: 1px solid var(--at-line); display: flex; flex-direction: column; min-height: 480px; padding: 36px; transition: border-color .2s ease, transform .2s ease; }
.at-case:hover { border-color: rgba(212,20,29,.55); transform: translateY(-4px); }
.at-case__meta { color: var(--at-red); font-size: 11px; font-weight: 800; letter-spacing: .16em; }
.at-case h3 { color: var(--at-space); font-size: 28px; line-height: 1.15; margin: 52px 0 22px; }
.at-case p { color: var(--at-muted); font-size: 15px; margin: 0; }
.at-case strong { border-top: 1px solid var(--at-line); color: var(--at-space); font-size: 14px; line-height: 1.5; margin-top: auto; padding-top: 24px; }

/* Timeline */
.at-timeline { border-top: 2px solid var(--at-space); }
.at-timeline__item { border-bottom: 1px solid rgba(13,34,60,.2); padding: 30px 0; }
.at-timeline__item h3 { color: var(--at-space); font-size: 24px; margin: 0 0 5px; }
.at-timeline__item p { color: var(--at-muted); margin: 0; }

/* Ecosystem */
.at-ecosystem { background: #fff; }
.at-ecosystem__flow { display: grid; grid-template-columns: repeat(4,1fr); position: relative; }
.at-ecosystem__flow::before { background: var(--at-red); content: ""; height: 2px; left: 0; position: absolute; right: 0; top: 25px; }
.at-ecosystem__flow > div { padding-right: 30px; position: relative; }
.at-ecosystem__flow span { align-items: center; background: #fff; border: 2px solid var(--at-red); border-radius: 50%; color: var(--at-red); display: flex; font-size: 11px; font-weight: 800; height: 52px; justify-content: center; position: relative; width: 52px; z-index: 1; }
.at-ecosystem__flow strong { color: var(--at-space); display: block; font-size: 22px; margin-top: 23px; }
.at-ecosystem__flow small { color: var(--at-muted); display: block; font-size: 14px; margin-top: 6px; }
.at-endorsements { border-top: 1px solid var(--at-line); display: flex; flex-wrap: wrap; gap: 18px 42px; margin-top: 72px; padding-top: 28px; }
.at-endorsements span { color: var(--at-muted); font-size: 12px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }

/* Purpose */
.at-purpose__intro { max-width: 910px; }
.at-purpose__grid { border-top: 1px solid rgba(255,255,255,.2); display: grid; grid-template-columns: repeat(3,1fr); margin-top: 68px; }
.at-purpose__grid article { border-left: 1px solid rgba(255,255,255,.2); padding: 34px 34px 56px; }
.at-purpose__grid article:last-child { border-right: 1px solid rgba(255,255,255,.2); }
.at-purpose__grid span, .at-leadership span { color: #ff747a; font-size: 11px; font-weight: 800; letter-spacing: .16em; }
.at-purpose__grid p { color: #d1dae4; font-size: 18px; margin: 28px 0 0; }
.at-leadership { align-items: center; border-top: 1px solid rgba(255,255,255,.2); display: grid; gap: 42px; grid-template-columns: .75fr 1fr auto; padding-top: 44px; }
.at-leadership h3 { font-size: 28px; margin: 7px 0 0; }
.at-leadership p { color: #c5cfda; margin: 0; }
.at-leadership a { border-bottom: 1px solid #fff; font-size: 14px; font-weight: 700; white-space: nowrap; }

/* Contact */
.at-contact-section { background: var(--at-gray); }
.at-contact { display: grid; gap: 80px; grid-template-columns: minmax(0,.8fr) minmax(520px,1fr); }
.at-contact__copy h2 { color: var(--at-space); font-size: clamp(40px,5vw,68px); letter-spacing: -.045em; line-height: 1.03; margin: 0 0 28px; }
.at-contact__copy > p { color: var(--at-muted); font-size: 18px; }
.at-contact__details { border-top: 1px solid rgba(13,34,60,.2); display: flex; flex-direction: column; gap: 8px; margin-top: 38px; padding-top: 24px; }
.at-contact__details a { color: var(--at-space); font-weight: 700; }
.at-form { background: #fff; border-top: 5px solid var(--at-red); box-shadow: 0 24px 70px rgba(13,34,60,.12); padding: 38px; }
.at-form__grid { display: grid; gap: 22px; grid-template-columns: repeat(2,1fr); }
.at-field { display: flex; flex-direction: column; gap: 7px; }
.at-field--full { grid-column: 1 / -1; }
.at-field label { color: var(--at-space); font-size: 12px; font-weight: 750; }
.at-field input, .at-field select, .at-field textarea { background: #f7f7f8; border: 1px solid #cfd2d7; border-radius: 0; color: var(--at-ink); min-height: 48px; padding: 11px 13px; width: 100%; }
.at-field textarea { min-height: 126px; resize: vertical; }
.at-field input:focus, .at-field select:focus, .at-field textarea:focus { border-color: var(--at-red); box-shadow: 0 0 0 3px rgba(212,20,29,.1); outline: none; }
.at-form__privacy { color: var(--at-muted); font-size: 12px; }
.at-hp { height: 0; left: -9999px; opacity: 0; overflow: hidden; position: absolute; }
.at-alert { font-size: 14px; margin-bottom: 22px; padding: 12px 14px; }
.at-alert--success { background: #e7f6ed; color: #156936; }
.at-alert--error { background: #fff0f0; color: #9e151b; }

/* Footer */
.at-footer { background: var(--at-space-2); color: #fff; padding: 72px 0 24px; }
.at-brand--footer { background: #fff; padding: 12px 16px; }
.at-brand--footer .at-brandmark__symbol { height: 54px; width: 47px; }
.at-brand--footer .at-brandmark__wordmark { width: 148px; }
.at-footer__top { align-items: start; display: grid; gap: 60px; grid-template-columns: 1fr auto; }
.at-footer__top p { color: #9eacbc; font-size: 15px; margin: 24px 0 0; }
.at-footer__nav { display: grid; gap: 10px 34px; grid-template-columns: repeat(2,auto); }
.at-footer__nav a { color: #cbd4df; font-size: 14px; }
.at-footer__nav a:hover { color: #fff; }
.at-footer__bottom { border-top: 1px solid rgba(255,255,255,.14); color: #8290a1; display: flex; font-size: 12px; justify-content: space-between; margin-top: 58px; padding-top: 22px; }

/* Generic pages */
.at-page { margin: 0 auto; max-width: 850px; padding: 150px 28px 90px; }
.at-page h1 { color: var(--at-space); font-size: clamp(42px,6vw,70px); line-height: 1; }
.at-page a { color: var(--at-red); text-decoration: underline; }

/* Motion */
.at-reveal { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }
.at-reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 1050px) {
	.at-nav { gap: 20px; }
	.at-hero__grid { grid-template-columns: 1fr; }
	.at-hero__statement { max-width: 600px; }
	.at-capability { grid-template-columns: 38px 1fr; }
	.at-capability p { grid-column: 2; }
	.at-cases { grid-template-columns: 1fr; }
	.at-case { min-height: 0; }
	.at-case strong { margin-top: 42px; }
	.at-differentials { grid-template-columns: repeat(2,1fr); }
	.at-contact { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
	body.admin-bar .at-header { top: 46px; }
	.at-shell { padding-inline: 22px; }
	.at-menu-toggle { display: block; position: relative; z-index: 2; }
	.at-nav { align-items: stretch; background: #fff; border-top: 1px solid var(--at-line); display: flex; flex-direction: column; gap: 0; left: 0; opacity: 0; padding: 20px 22px 30px; pointer-events: none; position: fixed; right: 0; top: 78px; transform: translateY(-10px); transition: opacity .2s ease, transform .2s ease; }
	body.admin-bar .at-nav { top: 124px; }
	.at-nav.is-open { opacity: 1; pointer-events: auto; transform: none; }
	.at-nav > a:not(.at-button) { border-bottom: 1px solid var(--at-line); font-size: 17px; padding: 15px 0; }
	.at-nav > a::after { display: none; }
	.at-nav .at-button { margin-top: 20px; }
	.at-section { padding: 86px 0; }
	.at-section-head { align-items: start; gap: 28px; grid-template-columns: 1fr; }
	.at-editorial-grid { grid-template-columns: 1fr; }
	.at-section-kicker { max-width: 140px; }
	.at-metrics__grid { grid-template-columns: repeat(2,1fr); }
	.at-metric:nth-child(3) { border-top: 1px solid var(--at-line); }
	.at-metric:nth-child(4) { border-top: 1px solid var(--at-line); }
	.at-capabilities { grid-template-columns: 1fr; }
	.at-capability:nth-child(odd), .at-capability:nth-child(even) { border-left: 0; padding-left: 0; padding-right: 0; }
	.at-purpose__grid { grid-template-columns: 1fr; }
	.at-purpose__grid article, .at-purpose__grid article:last-child { border-bottom: 1px solid rgba(255,255,255,.2); border-left: 0; border-right: 0; padding-inline: 0; }
	.at-leadership { align-items: start; grid-template-columns: 1fr; }
	.at-ecosystem__flow { gap: 35px; grid-template-columns: repeat(2,1fr); }
	.at-ecosystem__flow::before { display: none; }
}

@media (max-width: 560px) {
	.at-header__inner { height: 72px; }
	.at-brandmark { gap: 8px; }
	.at-brandmark__symbol { height: 40px; width: 35px; }
	.at-brandmark__wordmark { width: 112px; }
	.at-nav { top: 72px; }
	body.admin-bar .at-nav { top: 118px; }
	.at-hero { min-height: auto; padding: 124px 0 80px; }
	.at-hero h1 { font-size: clamp(54px,18vw,78px); }
	.at-hero__watermark { height: 520px; right: -56%; top: 5%; width: 520px; }
	.at-hero__actions { align-items: stretch; flex-direction: column; }
	.at-button { width: 100%; }
	.at-metrics__grid { grid-template-columns: 1fr; }
	.at-metric { border-bottom: 1px solid var(--at-line); border-right: 1px solid var(--at-line); }
	.at-capability { gap: 14px; grid-template-columns: 32px 1fr; }
	.at-differentials { grid-template-columns: 1fr; }
	.at-differential { border-bottom: 1px solid rgba(255,255,255,.2); }
	.at-differential::before { margin-bottom: 28px; }
	.at-timeline__item { gap: 12px; grid-template-columns: 1fr; }
	.at-ecosystem__flow { grid-template-columns: 1fr; }
	.at-form { padding: 26px 20px; }
	.at-form__grid { grid-template-columns: 1fr; }
	.at-field--full { grid-column: auto; }
	.at-footer__top { grid-template-columns: 1fr; }
	.at-footer__nav { grid-template-columns: 1fr 1fr; }
	.at-footer__bottom { flex-direction: column; gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.at-reveal { opacity: 1; transform: none; transition: none; }
	.at-button { transition: none; }
}
