Preview de mixed.css
/* MIXED CSS PACK */
/* Template: administracionalarcon.com.ar/index.html */
/* Template mtime: 2025-09-15 14:06:47 */
/* external link (no embedded): https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css */
/* external link (no embedded): https://unpkg.com/aos@next/dist/aos.css */
/* ===== INLINE <style> BLOCK #1 ===== */
/* ...tus reglas... */
/* ===== INLINE <style> BLOCK #2 ===== */
:root {
/* Colores principales */
--primary: #0a6e5a;
--primary-dark: #065142;
--primary-light: #e8f5f2;
--secondary: #2fbf71;
--accent: #ff6b35;
--dark: #0f1b1a;
--text: #2a2f2e;
--text-light: #6e7a79;
--light: #f9fbfa;
--white: #ffffff;
/* Sombras */
--shadow-sm: 0 4px 6px rgba(0, 0, 0, 0.04);
--shadow-md: 0 10px 20px rgba(0, 0, 0, 0.08);
--shadow-lg: 0 20px 40px rgba(0, 0, 0, 0.12);
/* Bordes */
--radius-sm: 8px;
--radius-md: 16px;
--radius-lg: 24px;
--radius-xl: 32px;
/* Espaciado */
--space-xs: 0.5rem;
--space-sm: 1rem;
--space-md: 1.5rem;
--space-lg: 2.5rem;
--space-xl: 4rem;
/* Transiciones */
--transition-fast: 0.2s ease;
--transition-normal: 0.3s ease;
--transition-slow: 0.5s ease;
scroll-behavior: smooth;
}
/* Reset y base */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html, body {
font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
color: var(--text);
line-height: 1.6;
background-color: var(--white);
overflow-x: hidden;
}
/* Mejoras de tipografía */
h1, h2, h3, h4, h5, h6 {
font-weight: 700;
line-height: 1.2;
margin-bottom: var(--space-sm);
color: var(--dark);
}
p {
margin-bottom: var(--space-sm);
}
a {
color: var(--primary);
text-decoration: none;
transition: var(--transition-fast);
}
a:hover {
color: var(--primary-dark);
}
img {
max-width: 100%;
height: auto;
display: block;
}
/* Utilidades */
.container {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 var(--space-md);
}
.section {
padding: var(--space-xl) 0;
position: relative;
}
.section-title {
font-size: clamp(2rem, 5vw, 2.8rem);
margin-bottom: var(--space-sm);
position: relative;
display: inline-block;
}
.section-title::after {
content: '';
position: absolute;
bottom: -8px;
left: 0;
width: 60px;
height: 4px;
background: linear-gradient(90deg, var(--primary), var(--secondary));
border-radius: 2px;
}
.text-center {
text-align: center;
}
.text-center .section-title::after {
left: 50%;
transform: translateX(-50%);
}
.lead {
font-size: clamp(1rem, 2.5vw, 1.2rem);
color: var(--text-light);
margin-bottom: var(--space-md);
line-height: 1.6;
}
/* Botones */
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-xs);
padding: 0.8rem 1.8rem;
border-radius: var(--radius-md);
font-weight: 600;
text-decoration: none;
transition: all var(--transition-normal);
cursor: pointer;
border: none;
position: relative;
overflow: hidden;
z-index: 1;
}
.btn::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 0%;
height: 100%;
background: linear-gradient(90deg, var(--primary-dark), var(--primary));
transition: var(--transition-normal);
z-index: -1;
}
.btn:hover::before {
width: 100%;
}
.btn-primary {
background: linear-gradient(90deg, var(--primary), var(--secondary));
color: var(--white);
box-shadow: var(--shadow-md);
}
.btn-primary:hover {
box-shadow: var(--shadow-lg);
transform: translateY(-2px);
color: var(--white);
}
.btn-outline {
background: transparent;
color: var(--primary);
border: 2px solid var(--primary);
}
.btn-outline:hover {
color: var(--white);
border-color: var(--primary-dark);
}
/* Navbar */
.navbar {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 1000;
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
box-shadow: var(--shadow-sm);
transition: var(--transition-normal);
}
.navbar.scrolled {
background: rgba(255, 255, 255, 0.98);
box-shadow: var(--shadow-md);
}
.nav-wrap {
display: flex;
align-items: center;
justify-content: space-between;
height: 80px;
}
.brand {
display: flex;
align-items: center;
gap: var(--space-sm);
text-decoration: none;
color: var(--dark);
font-weight: 700;
font-size: 1.2rem;
}
.brand img {
height: 48px;
width: auto;
border-radius: var(--radius-sm);
transition: var(--transition-normal);
}
.brand:hover img {
transform: scale(1.05);
}
.nav {
display: flex;
gap: var(--space-md);
align-items: center;
}
.nav a {
color: var(--text);
text-decoration: none;
font-weight: 500;
font-size: 0.95rem;
padding: 0.5rem 1rem;
border-radius: var(--radius-md);
transition: var(--transition-fast);
position: relative;
}
.nav a::after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
width: 0;
height: 2px;
background: linear-gradient(90deg, var(--primary), var(--secondary));
transition: var(--transition-normal);
transform: translateX(-50%);
}
.nav a:hover::after,
.nav a.active::after {
width: 70%;
}
.nav a:hover,
.nav a.active {
color: var(--primary);
}
.nav-cta {
display: flex;
gap: var(--space-sm);
align-items: center;
margin-left: var(--space-md);
}
.hamb {
display: none;
font-size: 1.5rem;
background: none;
border: none;
color: var(--dark);
cursor: pointer;
}
/* Hero Section */
.hero {
position: relative;
padding-top: 120px;
padding-bottom: var(--space-xl);
overflow: hidden;
background: linear-gradient(135deg, #f8fdfb 0%, #e6f4f0 100%);
}
.hero::before {
content: '';
position: absolute;
top: -100px;
right: -100px;
width: 500px;
height: 500px;
border-radius: 50%;
background: linear-gradient(45deg, rgba(47, 191, 113, 0.1) 0%, rgba(10, 110, 90, 0.05) 100%);
z-index: 0;
}
.hero::after {
content: '';
position: absolute;
bottom: -150px;
left: -150px;
width: 600px;
height: 600px;
border-radius: 50%;
background: linear-gradient(45deg, rgba(255, 107, 53, 0.05) 0%, rgba(47, 191, 113, 0.1) 100%);
z-index: 0;
}
.hero-inner {
display: grid;
grid-template-columns: 1.1fr 0.9fr;
gap: var(--space-xl);
align-items: center;
position: relative;
z-index: 2;
}
.hero-content {
animation: fadeInUp 1s ease;
}
.hero .tag {
display: inline-block;
background: var(--primary-light);
color: var(--primary);
font-weight: 600;
padding: 0.4rem 1rem;
border-radius: 100px;
font-size: 0.8rem;
margin-bottom: var(--space-md);
box-shadow: var(--shadow-sm);
}
.hero h1 {
font-size: clamp(2.2rem, 5vw, 3.5rem);
line-height: 1.1;
margin-bottom: var(--space-md);
color: var(--dark);
}
.hero h1 span {
background: linear-gradient(90deg, var(--primary), var(--secondary));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.hero p {
font-size: 1.1rem;
color: var(--text-light);
margin-bottom: var(--space-lg);
}
.hero-cta {
display: flex;
gap: var(--space-sm);
flex-wrap: wrap;
}
.hero-figure {
border-radius: var(--radius-xl);
overflow: hidden;
box-shadow: var(--shadow-lg);
aspect-ratio: 4/3;
background: linear-gradient(135deg, #f6fffb, #e9f7f1);
position: relative;
animation: fadeInRight 1s ease;
}
.hero-figure::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(45deg, rgba(10, 110, 90, 0.1) 0%, rgba(47, 191, 113, 0.1) 100%);
z-index: 1;
}
.hero-figure img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: var(--transition-slow);
}
.hero-figure:hover img {
transform: scale(1.05);
}
/* Grid y Cards */
.grid {
display: grid;
gap: var(--space-md);
}
.grid-2 {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.grid-3 {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.card {
background: var(--white);
border-radius: var(--radius-lg);
padding: var(--space-lg);
box-shadow: var(--shadow-md);
transition: all var(--transition-normal);
border: 1px solid rgba(10, 110, 90, 0.05);
height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
position: relative;
}
.card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 5px;
background: linear-gradient(90deg, var(--primary), var(--secondary));
transform: scaleX(0);
transform-origin: left;
transition: transform var(--transition-normal);
}
.card:hover {
transform: translateY(-5px);
box-shadow: var(--shadow-lg);
}
.card:hover::before {
transform: scaleX(1);
}
.icon {
width: 60px;
height: 60px;
border-radius: var(--radius-md);
display: inline-flex;
align-items: center;
justify-content: center;
background: var(--primary-light);
color: var(--primary);
margin-bottom: var(--space-md);
font-size: 1.5rem;
transition: var(--transition-normal);
}
.card:hover .icon {
background: linear-gradient(135deg, var(--primary), var(--secondary));
color: var(--white);
transform: rotateY(180deg);
}
.card h3 {
font-size: 1.3rem;
margin-bottom: var(--space-sm);
}
.card p {
color: var(--text-light);
margin-bottom: 0;
}
/* Lista con check */
.list-check {
list-style: none;
padding: 0;
margin: 0;
display: grid;
gap: var(--space-sm);
}
.list-check li {
display: flex;
gap: var(--space-sm);
align-items: flex-start;
padding: var(--space-xs) 0;
}
.list-check i {
color: var(--secondary);
font-size: 1.2rem;
margin-top: 2px;
flex-shrink: 0;
}
/* Ticker Section */
.ticker-section {
background: linear-gradient(180deg, #fff 0%, #f7fbf8 100%);
position: relative;
overflow: hidden;
}
.ticker-section::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%230a6e5a' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E");
opacity: 0.5;
z-index: 0;
}
.ticker {
position: relative;
border-radius: var(--radius-lg);
overflow: hidden;
box-shadow: var(--shadow-lg);
background: var(--white);
border: 1px solid rgba(10, 110, 90, 0.1);
}
.ticker .viewport {
overflow: auto;
scroll-snap-type: x mandatory;
display: flex;
scrollbar-width: none;
-ms-overflow-style: none;
}
.ticker .viewport::-webkit-scrollbar {
display: none;
}
.ticker .track {
display: flex;
gap: var(--space-md);
padding: var(--space-md);
}
.ticker .tile {
flex: 0 0 300px;
height: 300px;
border-radius: var(--radius-md);
overflow: hidden;
scroll-snap-align: center;
position: relative;
background: #f2f6f4;
box-shadow: var(--shadow-sm);
transition: var(--transition-normal);
}
.ticker .tile:hover {
transform: scale(1.03);
box-shadow: var(--shadow-md);
}
.ticker .tile img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: var(--transition-slow);
}
.ticker .tile:hover img {
transform: scale(1.1);
}
.ticker .ctrl {
position: absolute;
inset: 0;
pointer-events: none;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 var(--space-sm);
}
.ticker .btn-ctrl {
pointer-events: auto;
background: rgba(255, 255, 255, 0.9);
border: 1px solid rgba(10, 110, 90, 0.1);
width: 50px;
height: 50px;
border-radius: 50%;
display: grid;
place-items: center;
box-shadow: var(--shadow-md);
cursor: pointer;
transition: var(--transition-normal);
color: var(--primary);
}
.ticker .btn-ctrl:hover {
transform: translateY(-2px);
background: var(--white);
color: var(--primary-dark);
box-shadow: var(--shadow-lg);
}
/* FAQs */
.faq-container {
max-width: 800px;
margin: 0 auto;
}
details {
background: var(--white);
border: 1px solid rgba(10, 110, 90, 0.1);
border-radius: var(--radius-md);
padding: var(--space-md);
margin-bottom: var(--space-sm);
box-shadow: var(--shadow-sm);
transition: var(--transition-normal);
}
details[open] {
box-shadow: var(--shadow-md);
border-color: rgba(10, 110, 90, 0.2);
}
details[open] summary {
color: var(--primary);
margin-bottom: var(--space-sm);
}
summary {
cursor: pointer;
font-weight: 600;
color: var(--dark);
padding: var(--space-xs) 0;
position: relative;
list-style: none;
transition: var(--transition-fast);
}
summary::-webkit-details-marker {
display: none;
}
summary::after {
content: '+';
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
font-size: 1.2rem;
color: var(--primary);
transition: var(--transition-fast);
}
details[open] summary::after {
content: '-';
}
details p {
color: var(--text-light);
margin: 0;
padding-right: var(--space-lg);
}
/* Contacto */
.contact {
background: linear-gradient(135deg, var(--primary-light) 0%, #e6f4f0 100%);
position: relative;
overflow: hidden;
}
.contact::before {
content: '';
position: absolute;
top: -50%;
right: -50%;
width: 100%;
height: 200%;
background: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%230a6e5a' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
opacity: 0.3;
z-index: 0;
}
.contact .container {
position: relative;
z-index: 1;
}
form {
background: var(--white);
padding: var(--space-lg);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
}
label {
display: block;
font-weight: 600;
font-size: 0.9rem;
margin-bottom: var(--space-xs);
color: var(--dark);
}
input, textarea, select {
width: 100%;
padding: 0.9rem 1.2rem;
border: 1px solid rgba(10, 110, 90, 0.1);
border-radius: var(--radius-md);
background: var(--white);
outline: none;
transition: var(--transition-fast);
font-family: inherit;
font-size: 0.95rem;
}
input:focus, textarea:focus, select:focus {
border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(10, 110, 90, 0.1);
}
.row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--space-md);
margin-bottom: var(--space-md);
}
.row-1 {
grid-template-columns: 1fr;
}
.form-note {
font-size: 0.85rem;
color: var(--text-light);
margin-top: var(--space-xs);
}
.alert {
display: none;
margin-bottom: var(--space-md);
padding: var(--space-md);
border-radius: var(--radius-md);
font-weight: 600;
}
.alert.show {
display: block;
animation: fadeIn 0.5s ease;
}
.alert.ok {
background: #e9f7f1;
color: #0f5132;
border: 1px solid #bcd9c9;
}
.alert.err {
background: #fff3cd;
color: #664d03;
border: 1px solid #ffec99;
}
/* Footer */
footer {
background: var(--dark);
color: #e4f5ef;
position: relative;
overflow: hidden;
}
footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%23ffffff' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E");
opacity: 0.1;
z-index: 0;
}
footer .container {
position: relative;
z-index: 1;
}
footer a {
color: #cdeee2;
text-decoration: none;
transition: var(--transition-fast);
}
footer a:hover {
color: var(--white);
text-decoration: underline;
}
.footer-grid {
display: grid;
grid-template-columns: 1.2fr 0.8fr 0.8fr;
gap: var(--space-xl);
padding: var(--space-xl) 0;
}
.footer-logo {
display: flex;
align-items: center;
gap: var(--space-sm);
margin-bottom: var(--space-md);
}
.footer-logo img {
height: 40px;
width: auto;
border-radius: var(--radius-sm);
}
.footer-logo span {
font-weight: 700;
font-size: 1.2rem;
color: var(--white);
}
footer h3 {
color: var(--white);
margin-bottom: var(--space-md);
font-size: 1.3rem;
}
footer h4 {
color: var(--white);
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}
footer ul {
list-style: none;
padding: 0;
margin: 0;
display: grid;
gap: var(--space-sm);
}
footer ul li {
display: flex;
align-items: center;
gap: var(--space-xs);
}
footer ul li i {
font-size: 1.1rem;
color: var(--secondary);
}
.small {
color: #9bbcb2;
font-size: 0.85rem;
}
.footer-bottom {
border-top: 1px solid rgba(255, 255, 255, 0.1);
padding: var(--space-md) 0;
text-align: center;
}
/* Animaciones */
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInRight {
from {
opacity: 0;
transform: translateX(20px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
.fade-in {
animation: fadeIn 1s ease;
}
/* Media Queries */
@media (max-width: 1024px) {
.footer-grid {
grid-template-columns: 1fr 1fr;
gap: var(--space-lg);
}
.hero-inner {
gap: var(--space-lg);
}
}
@media (max-width: 980px) {
.nav {
position: fixed;
inset: 80px 0 auto 0;
background: var(--white);
border-bottom: 1px solid rgba(10, 110, 90, 0.1);
padding: var(--space-md);
display: none;
flex-wrap: wrap;
box-shadow: var(--shadow-md);
}
.nav.show {
display: flex;
animation: fadeInDown 0.3s ease;
}
.nav a {
width: 100%;
text-align: center;
padding: var(--space-sm);
}
.hamb {
display: block;
}
.nav-cta {
display: none;
}
.hero-inner {
grid-template-columns: 1fr;
}
.hero-content {
order: 1;
text-align: center;
}
.hero-cta {
justify-content: center;
}
.hero-figure {
order: 0;
margin-bottom: var(--space-lg);
}
.row {
grid-template-columns: 1fr;
}
}
@media (max-width: 768px) {
.footer-grid {
grid-template-columns: 1fr;
gap: var(--space-lg);
}
.section {
padding: var(--space-lg) 0;
}
.ticker .tile {
flex: 0 0 250px;
height: 250px;
}
.card {
padding: var(--space-md);
}
}
@media (max-width: 480px) {
.hero-cta {
flex-direction: column;
width: 100%;
}
.hero-cta .btn {
width: 100%;
text-align: center;
}
.brand span {
font-size: 1rem;
}
.brand img {
height: 40px;
}
.ticker .btn-ctrl {
width: 40px;
height: 40px;
}
}
/* Offset para anclas */
#quienes, #servicios, #elegirnos, #galeria, #faqs, #contacto {
scroll-margin-top: 100px;
}
/* ===== INLINE <style> BLOCK #3 ===== */
/* === Hero offset dinámico en mobile según altura real del header === */
@media (max-width: 980px){
:root{ --nav-h: 80px; } /* fallback */
.hero{ padding-top: calc(var(--nav-h) + 28px) !important; }
/* el menú desplegable arranca debajo del header real */
.nav{ inset: var(--nav-h) 0 auto 0 !important; }
}
/* ===== INLINE <style> BLOCK #4 ===== */
/* === Anchor offset global: evita que el header fijo tape el inicio de cada sección === */
html:focus-within { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce){ html:focus-within { scroll-behavior: auto; } }
[id] { scroll-margin-top: calc(var(--nav-h) + 16px); }
/* ===== INLINE <style> BLOCK #5 ===== */
/* === HERO: ver la imagen completa (sin recorte) === */
.hero-figure{
/* anulamos cualquier ratio/altura fija que recorte */
aspect-ratio: auto !important;
height: auto !important;
display: grid;
place-items: center;
background: #fff; /* o un verde muy claro del logo */
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,.08);
padding: 10px; /* leve respiración para que no toque bordes */
overflow: hidden; /* por si alguna vez desborda */
}
.hero-figure img{
/* que se ajuste sin recortarse */
object-fit: contain !important;
width: auto; /* dejamos que el navegador decida el mejor ancho */
height: auto;
max-width: 100%; /* no pasar el ancho del contenedor */
max-height: min(62vh, 520px); /* alto máximo visible (ajustable) */
display: block;
}
/* En mobile permitimos un poquito menos de alto para que no empuje el contenido */
@media (max-width: 980px){
.hero-figure img{
max-height: 48vh;
}
}
/* Opcional: si tu grid fuerza 2 columnas y achica la figura, en mobile la pasamos a 1 */
@media (max-width: 980px){
.hero .hero-inner{
display: grid;
grid-template-columns: 1fr !important;
gap: 24px;
}
}
/* ===== INLINE <style> BLOCK #6 ===== */
/* ---------- Ajustes rápidos ---------- */
.alx-tickers{ --tile-size: 500px; --gap:16px; --radius:16px; --brd:#e8f0ec; --bg:#fff; --shadow:0 10px 30px rgba(0,0,0,.08) }
.alx-tickers .lead{color:#6e7a79}
/* ---------- Ticker ---------- */
.alx-ticker{
position:relative; overflow:hidden; border-radius:18px;
border:1px solid var(--brd); background:var(--bg); box-shadow:var(--shadow); margin-top:10px
}
.alx-viewport{
overflow:auto; scroll-snap-type:x mandatory; display:flex; gap:var(--gap);
padding:16px; scrollbar-width:none; touch-action: pan-y;
}
.alx-viewport::-webkit-scrollbar{display:none}
.alx-track{display:flex; gap:var(--gap)}
.alx-tile{
flex:0 0 var(--tile-size); height:var(--tile-size);
border-radius:var(--radius); overflow:hidden; scroll-snap-align:center; background:#f2f6f4
}
.alx-tile img{width:100%; height:100%; object-fit:cover; object-position:center; cursor:pointer}
.alx-ctrls{
position:absolute; inset:0; display:flex; justify-content:space-between; align-items:center;
pointer-events:none; padding:0 6px
}
.alx-ctrl{
pointer-events:auto; width:42px; height:42px; border-radius:999px; display:grid; place-items:center;
border:1px solid #e8efe9; background:rgba(255,255,255,.9); box-shadow:var(--shadow);
cursor:pointer; transition:.2s
}
.alx-ctrl:hover{transform:translateY(-1px)}
.alx-ctrl svg{width:20px; height:20px}
@media (max-width:640px){
.alx-tile{ flex:0 0 min(86vw, var(--tile-size)); height:min(86vw, var(--tile-size)) }
}
/* ---------- Lightbox / Modal ---------- */
.alx-lightbox[hidden]{display:none !important}
.alx-lightbox{
position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,.86);
display:grid; place-items:center; padding:24px; overscroll-behavior:none
}
.alx-lb-stage{ position:relative; width:100%; height:100%; display:grid; place-items:center }
.alx-lb-img{
max-width:min(96vw, 1400px); max-height:92vh; width:auto; height:auto;
object-fit:contain; background:#111; border-radius:12px; box-shadow:0 20px 60px rgba(0,0,0,.45)
}
.alx-lb-btn{
position:absolute; top:50%; transform:translateY(-50%);
width:48px; height:48px; border-radius:999px; display:grid; place-items:center;
border:1px solid rgba(255,255,255,.25); background:rgba(0,0,0,.45);
color:#fff; cursor:pointer; transition:.2s; backdrop-filter: blur(4px)
}
.alx-lb-btn:hover{ background:rgba(0,0,0,.65) }
.alx-lb-prev{ left:14px } .alx-lb-next{ right:14px }
.alx-lb-close{
position:absolute; top:14px; right:14px; width:44px; height:44px; border-radius:999px;
display:grid; place-items:center; border:1px solid rgba(255,255,255,.25); background:rgba(0,0,0,.45); color:#fff; cursor:pointer;
}
.alx-lb-counter{
position:absolute; bottom:14px; left:50%; transform:translateX(-50%);
color:#fff; font-weight:700; background:rgba(0,0,0,.45);
border:1px solid rgba(255,255,255,.25); padding:.35rem .65rem; border-radius:999px; font-size:14px
}
.alx-lb-backdrop{position:absolute; inset:0}
/* ===== INLINE <style> BLOCK #7 ===== */
.fs-root{
--fs-brand:#1e6f5c; /* verde principal */
--fs-brand-2:#2fbf71; /* acento */
--fs-bg:#ffffff;
--fs-text:#0f1b1a;
--fs-muted:#6e7a79;
--fs-shadow:0 12px 35px rgba(0,0,0,.20);
position:fixed; right:18px; bottom:18px; z-index:9998;
display:grid; gap:10px; place-items:end;
font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif
}
.fs-overlay[hidden]{display:none!important}
.fs-overlay{
position:fixed; inset:0; z-index:9997; background:rgba(0,0,0,.28); backdrop-filter:blur(2px)
}
/* Botón principal “Contactar” (píldora) */
.fs-toggle{
border:0; cursor:pointer; height:56px; border-radius:999px;
color:#fff; background:linear-gradient(135deg,var(--fs-brand),var(--fs-brand-2));
display:flex; align-items:center; gap:10px; padding:0 16px 0 12px;
box-shadow:var(--fs-shadow); transition:transform .18s ease, box-shadow .18s ease
}
.fs-toggle:active{ transform:scale(.97) }
.fs-toggle .ico svg{ width:22px; height:22px }
.fs-toggle .txt{ font-weight:800; letter-spacing:.2px; font-size:15px }
/* Lista desplegable */
.fs-list{
display:grid; gap:10px; transform:translateY(10px); opacity:0; pointer-events:none;
transition:opacity .22s ease, transform .22s ease
}
.fs-root.fs-open .fs-list{ transform:none; opacity:1; pointer-events:auto }
.fs-item{
display:flex; align-items:center; gap:10px;
background:var(--fs-bg); color:var(--fs-text);
border:1px solid #e6efea; border-radius:999px; padding:10px 14px 10px 10px;
text-decoration:none; white-space:nowrap; box-shadow:var(--fs-shadow);
transition:transform .15s ease, background .15s ease, border-color .15s ease
}
.fs-item:hover{ transform:translateY(-1px); background:#f7fbf8; border-color:#dcefe6 }
.fs-ico{ width:28px; height:28px; border-radius:999px; display:grid; place-items:center; flex:0 0 28px }
.fs-ico svg{ width:18px; height:18px }
.fs-wa .fs-ico{ background:#25d366; color:#fff }
.fs-call .fs-ico{ background:#0aa84f; color:#fff }
.fs-mail .fs-ico{ background:#0f6; color:#0b3d2a }
.fs-ig .fs-ico{ background:radial-gradient(circle at 30% 110%, #fdf497 0,#fd5949 45%,#d6249f 60%,#285AEB 90%); color:#fff }
.fs-fb .fs-ico{ background:#1877f2; color:#fff }
.fs-label{ font-weight:700; font-size:14px }
.fs-sub{ font-size:12px; color:var(--fs-muted); margin-left:4px }
/* Viñeta / globo */
.fs-hint[hidden]{display:none!important}
.fs-hint{
position:absolute; right:78px; bottom:70px; /* junto al botón */
background:#fff; color:#0f1b1a; border:1px solid #e6efea; border-radius:14px;
padding:.45rem .7rem; font-weight:800; font-size:14px; box-shadow:var(--fs-shadow);
opacity:0; transform:translateY(6px); transition:.22s ease;
}
.fs-hint.show{ opacity:1; transform:none }
.fs-hint::after{
content:""; position:absolute; right:-7px; bottom:10px;
border:7px solid transparent; border-left-color:#fff;
filter:drop-shadow(0 0 0 #e6efea);
}
.fs-root.fs-open .fs-hint{ display:none }
@media (max-width:520px){
.fs-root{ right:14px; bottom:14px }
.fs-item{ padding:9px 12px 9px 9px }
.fs-hint{ right:72px; bottom:66px }
}
/* ===== INLINE <style> BLOCK #8 ===== */
:root { --nav-h: 72px; } /* valor de respaldo */
[id] { scroll-margin-top: calc(var(--nav-h) + 16px); }
html { scroll-behavior: smooth; }