html { scroll-padding-top: 100px; }
.site-header { transition: box-shadow .25s ease, background .25s ease; }
.site-header.scrolled { box-shadow: 0 10px 35px rgba(15,23,42,.12); background: rgba(255,255,255,.97); }
.site-brand { min-width: 0; }
.site-brand-symbol { width: 40px; height: 40px; flex-shrink: 0; border-radius: 14px; background: linear-gradient(145deg,#0284c7,#1d4ed8); display: grid; place-items: center; color: white; font-size: 14px; font-weight: 900; letter-spacing: -.04em; box-shadow: 0 7px 20px rgba(2,132,199,.2); }
.site-nav-link { border: none; background: transparent; border-radius: 10px; padding: 11px 10px; color: #475569; font-weight: 650; font-size: 12px; line-height: 1.2; white-space: nowrap; cursor: pointer; transition: color .2s, background .2s; }
.site-nav-link:hover, .site-nav-link:focus-visible { color: #0369a1; background: #f0f9ff; }
.site-nav-link[aria-current="page"] { background: #e0f2fe; color: #0369a1; }
.site-menu-toggle { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #cbd5e1; border-radius: 13px; background: white; color: #0f172a; }
.site-menu-toggle:focus-visible, .site-nav-link:focus-visible, .gallery-filter:focus-visible, .gallery-card:focus-visible, .whatsapp-float:focus-visible { outline: 3px solid #38bdf8; outline-offset: 3px; }
.site-mobile-nav { max-height: calc(100dvh - 80px); overflow-y: auto; border-top: 1px solid #e2e8f0; box-shadow: 0 15px 24px rgba(15,23,42,.08); }
.site-mobile-nav .site-nav-link { display: block; width: 100%; text-align: left; padding: 13px 16px; font-size: 14px; }
.whatsapp-float { position: fixed; right: 22px; bottom: 22px; z-index: 49; display: flex; align-items: center; gap: 10px; padding: 14px 17px; background: #16a34a; color: #fff; border-radius: 999px; font-size: 13px; font-weight: 750; box-shadow: 0 9px 28px rgba(22,163,74,.3); transition: transform .2s, box-shadow .2s; }
.whatsapp-float:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(22,163,74,.4); }
.whatsapp-float svg { width: 24px; height: 24px; flex-shrink: 0; }
.gallery-filters { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 28px; justify-content: center; }
.gallery-filter { padding: 10px 16px; border-radius: 999px; border: 1px solid #bae6fd; color: #0369a1; background: white; font-size: 13px; font-weight: 700; transition: background .2s, color .2s; }
.gallery-filter:hover { background: #f0f9ff; }
.gallery-filter[aria-pressed="true"] { background: #0284c7; color: #fff; border-color: #0284c7; }
.gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.gallery-card { overflow: hidden; text-align: left; background: #fff; border: 1px solid #dbeafe; border-radius: 22px; box-shadow: 0 8px 23px rgba(15,23,42,.06); cursor: zoom-in; transition: transform .25s, box-shadow .25s; }
.gallery-card:hover { transform: translateY(-4px); box-shadow: 0 15px 35px rgba(2,132,199,.18); }
.gallery-card img { display: block; width: 100%; height: 220px; object-fit: cover; transition: transform .45s; background: #e2e8f0; }
.gallery-card:hover img { transform: scale(1.045); }
.gallery-card-copy { display: block; padding: 15px 17px 17px; }
.gallery-card-category { display: block; color: #0284c7; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; margin-bottom: 5px; }
.gallery-card-title { display: block; color: #0f172a; font-size: 14px; line-height: 1.35; font-weight: 750; }
.gallery-lightbox { position: fixed; inset: 0; z-index: 100; background: rgba(2,6,23,.94); display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 65px 64px 45px; }
.gallery-lightbox[hidden] { display: none; }
.gallery-lightbox img { max-width: 100%; max-height: min(72vh,850px); width: auto; height: auto; object-fit: contain; border-radius: 12px; }
.gallery-lightbox figcaption { color: white; margin-top: 14px; font-size: 14px; text-align: center; }
.gallery-lightbox button { position: absolute; background: rgba(255,255,255,.12); color: white; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; width: 42px; height: 42px; display: grid; place-items: center; font-size: 24px; }
.gallery-lightbox button:hover { background: rgba(255,255,255,.26); }
.gallery-close { top: 16px; right: 22px; }
.gallery-prev { left: 14px; top: 50%; }
.gallery-next { right: 14px; top: 50%; }
body.gallery-open { overflow: hidden; }
@media(max-width: 900px) { .gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 590px) { .gallery-grid { grid-template-columns: 1fr; gap: 14px; } .gallery-card img { height: 245px; } .whatsapp-float { right: 16px; bottom: 16px; padding: 14px; } .whatsapp-float span { display: none; } .gallery-lightbox { padding: 64px 16px; } .gallery-prev { left: 6px; } .gallery-next { right: 6px; } }
@media(prefers-reduced-motion:reduce) { .gallery-card, .gallery-card img, .whatsapp-float, .site-nav-link { transition: none; } }


.argo-mobile-hero { padding: 15px 16px 35px; background: radial-gradient(ellipse at 80% 10%, #dbeafe 0, #f8fafc 48%, #f8fafc 100%); }
.argo-mobile-hero-layout { max-width: 580px; margin: 0 auto; }
.argo-mobile-label { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; color: #0369a1; border-radius: 999px; background: #e0f2fe; font-size: 10px; font-weight: 850; letter-spacing: .08em; }
.argo-mobile-label-dot { width: 7px; height: 7px; flex-shrink: 0; background: #0284c7; border-radius: 50%; box-shadow: 0 0 0 4px rgba(2,132,199,.1); }
.argo-mobile-title { font-size: clamp(31px,8vw,45px); line-height: 1.055; font-weight: 850; letter-spacing: -.055em; color: #0f172a; margin: 15px 0 9px; }
.argo-mobile-title span { color: #0284c7; }
.argo-mobile-subtitle { font-size: 13px; color: #475569; line-height: 1.5; margin: 0 0 18px; }
.argo-mobile-photo { position: relative; width: 100%; height: clamp(285px,72vw,420px); border-radius: 24px; overflow: hidden; border: 4px solid white; background: #e2e8f0; box-shadow: 0 22px 45px rgba(15,23,42,.19); }
.argo-mobile-photo > img { width: 100%; height: 100%; object-fit: cover; object-position: center 24%; display: block; }
.argo-mobile-photo-shade { pointer-events: none; position: absolute; inset: 48% 0 0; background: linear-gradient(transparent,rgba(2,6,23,.87)); }
.argo-mobile-photo-caption { position: absolute; left: 20px; bottom: 20px; color: white; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; text-shadow: 0 1px 8px rgba(0,0,0,.3); }
.argo-mobile-photo-caption strong { font-size: 19px; font-weight: 850; letter-spacing: -.02em; }
.argo-mobile-photo-caption small { font-size: 12px; opacity: .92; }
.argo-mobile-photo-chip { padding: 5px 9px; background: rgba(255,255,255,.2); border: 1px solid rgba(255,255,255,.33); backdrop-filter: blur(8px); border-radius: 999px; color: #fff; font-size: 10px; font-weight: 850; letter-spacing: .04em; }
.argo-mobile-actions { display: grid; grid-template-columns: 1.25fr 1fr; gap: 10px; margin: 20px 0; }
.argo-mobile-actions button { min-height: 49px; border-radius: 14px; font-size: 12px; font-weight: 800; padding: 12px 9px; display: flex; justify-content: center; align-items: center; gap: 6px; }
.argo-mobile-primary { color: white; background: #0284c7; box-shadow: 0 8px 23px rgba(2,132,199,.23); }
.argo-mobile-secondary { background: white; color: #0369a1; border: 1px solid #bae6fd; }
.argo-mobile-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 13px 3px 0; border-top: 1px solid #cbd5e1; }
.argo-mobile-metrics div { display: flex; flex-direction: column; gap: 2px; text-align: center; }
.argo-mobile-metrics b { color: #0f172a; font-size: 20px; font-weight: 900; }
.argo-mobile-metrics span { color: #64748b; font-size: 10px; line-height: 1.3; }
.gallery-card[hidden] { display: none !important; }
@media(max-width: 1023px) {
    #tab-home { padding-top: 80px; }
    #tab-home > section:not(.argo-mobile-hero) { padding-top: 32px; padding-bottom: 40px; }
    #tab-home > section:not(.argo-mobile-hero) .text-center.max-w-3xl { margin-bottom: 28px; }
    #tab-home > section:not(.argo-mobile-hero) .text-center.max-w-3xl p { font-size: 27px; }
    #tab-home .tech-card { border-radius: 20px; }
    .tab-content:not(#tab-home) { padding-top: 98px; }
    #tab-galeria { padding-left: 12px; padding-right: 12px; padding-bottom: 65px; }
    #tab-galeria > div { padding: 20px 13px 30px; border-radius: 24px; }
    #tab-galeria > div > .text-center { margin-bottom: 26px; }
    #tab-galeria > div > .text-center > p.text-3xl { font-size: 28px; }
    #tab-galeria > div > .text-center > p.text-slate-600 { font-size: 13px; }
    .gallery-filters { flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; padding: 2px 1px 12px; margin-bottom: 8px; scrollbar-width: thin; }
    .gallery-filter { flex: none; font-size: 12px; padding: 9px 13px; }
    .gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
    .gallery-card { border-radius: 15px; }
    .gallery-card img { height: 165px; }
    .gallery-card-copy { padding: 10px 11px 13px; }
    .gallery-card-title { font-size: 12px; line-height: 1.35; }
    .gallery-card-category { font-size: 9px; letter-spacing: .04em; }
}
@media(max-width: 359px) {
    .argo-mobile-title { font-size: 29px; }
    .argo-mobile-actions { grid-template-columns: 1fr; }
    .gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .gallery-card img { height: 132px; }
}
