martinamoralesseguros.com
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.csshttps://unpkg.com/[email protected]/dist/aos.csshttps://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&family=Playfair+Display:wght@800&display=swap:root{
--brand:#243c84; --brand2:#4c72d8; --accent:#d60064;
--text:#0b1220; --muted:#64748b; --soft:#f7f9fb;
--radius:16px; --radius-lg:22px; --line:#e9eef4;
--shadow:0 10px 30px rgba(15,23,42,.08); --shadow2:0 16px 48px rgba(15,23,42,.12);
}
/* base */
*{box-sizing:border-box}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6;overflow-x:hidden}
h1,h2,h3,h4{font-weight:800;line-height:1.2}
.display-title{font-family:'Playfair Display',serif}
/* navbar */
.navbar{--bs-navbar-padding-y:1rem;background:rgba(15,23,42,.08);backdrop-filter:saturate(160%) blur(10px);transition:.3s}
.navbar.scrolled{background:rgba(15,23,42,.96);box-shadow:0 6px 24px rgba(0,0,0,.15)}
.navbar-brand{color:#fff;font-weight:900}.navbar-brand span{color:var(--accent)}
.nav-link{color:#fff!important;font-weight:600}
/* hero */
#hero{min-height:78vh;display:flex;align-items:center;color:#fff;position:relative;background:
linear-gradient(135deg, rgba(36,60,132,.92) 0%, rgba(76,114,216,.82) 100%),
url('img/hero-seguros.jpg') center 35%/cover no-repeat}
#hero:after{content:'';position:absolute;inset:auto 0 0 0;height:90px;background:linear-gradient(to top,#fff,transparent)}
.hero-eyebrow{display:inline-block;background:rgba(255,255,255,.15);padding:.5rem 1rem;border-radius:999px;font-weight:700;margin-bottom:.8rem}
.hero-title{font-size:clamp(2.4rem,6vw,4rem)}
.hero-sub{max-width:780px;color:#eef3ff}
.btn-brand{background:var(--accent);border:none;color:#fff;font-weight:800;border-radius:12px;padding:.9rem 1.4rem;box-shadow:var(--shadow)}
.btn-brand:hover{filter:brightness(.95)}
/* sections */
.section{padding:84px 0}
.section-title{font-size:clamp(2rem,5vw,3rem);position:relative;display:inline-block;margin-bottom:.8rem}
.section-title:after{content:'';position:absolute;left:0;bottom:-10px;width:60px;height:4px;background:var(--accent);border-radius:3px}
.sub{color:var(--muted);max-width:900px}
/* service cards (texto izq, carrusel der) */
.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.6rem}
.service-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}
@media(max-width:992px){ .service-grid{grid-template-columns:1fr;gap:16px} }
.pill{display:inline-block;background:linear-gradient(135deg,#243c84,#4c72d8);color:#fff;border-radius:999px;padding:.42rem .85rem;font-weight:700;font-size:.82rem;margin-bottom:.6rem}
.service-card h3{font-size:1.35rem;margin:.2rem 0 .6rem}
.service-card ul{margin:0 0 .6rem 1.1rem}
.service-card li::marker{color:var(--accent)}
.mini{font-size:.95rem;color:#334155;border-top:1px dashed var(--line);padding-top:.8rem;margin-top:.4rem}
/* carousel PRO: sin dots, cover, fade, barra de progreso y contador */
.carousel-wrap{border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);background:#fff;position:relative}
.carousel.carousel-fade .carousel-item{transition:opacity .55s ease-in-out}
/* IMÁGENES DEL CARRUSEL: que NO recorten texto */
.carousel-img{
width: 100%;
height: 430px; /* podés bajar/subir este alto si querés */
object-fit: contain; /* << clave: no recorta, muestra completa */
object-position: center;
background: #fff; /* marco blanco */
padding: 10px; /* respirito alrededor para que no “toque” el borde */
}
@media (min-width: 1200px){
.carousel-img{ height: 480px; }
}
/* opcional: si alguna vez querés “cover” solo en un carrusel puntual */
.fit-cover{ object-fit: cover !important; padding: 0 !important; }
/* flechas minimal */
.carousel-control-next,.carousel-control-prev{
width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.9);
top:12px;bottom:auto;transform:none;opacity:.85;filter:none;box-shadow:0 4px 16px rgba(0,0,0,.08)
}
.carousel-control-prev{left:12px}
.carousel-control-next{right:12px}
.carousel-control-next-icon,.carousel-control-prev-icon{filter:invert(0);}
/* contador 1/N */
.carousel-counter{
position:absolute;right:14px;bottom:12px;background:rgba(17,24,39,.72);color:#fff;
font-weight:700;font-size:.78rem;letter-spacing:.3px;padding:.25rem .5rem;border-radius:8px;z-index:3
}
/* barra de progreso */
.progress-track{
position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(0,0,0,.06);z-index:2
}
.progress-bar{
height:100%;width:0;background:linear-gradient(90deg,#243c84,#4c72d8);transition:width .1s linear
}
/* other blocks */
.benefit{display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow);margin-bottom:1rem}
.benefit .ico{width:46px;height:46px;display:grid;place-items:center;background:#eef2ff;color:#243c84;border-radius:10px}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.6rem;box-shadow:var(--shadow);height:100%}
/* footer + wa */
footer{background:#0f172a;color:#cbd5e1;padding:70px 0 40px}
.footer-logo{color:#fff;text-decoration:none;font-weight:900;font-size:1.8rem}.footer-logo span{color:var(--accent)}
.wapp-float{position:fixed;right:22px;bottom:22px;z-index:9999;display:flex;align-items:center;gap:.6rem;text-decoration:none}
.wapp-bubble{width:60px;height:60px;border-radius:999px;background:#25D366;display:grid;place-items:center;box-shadow:0 12px 35px rgba(37,211,102,.45)}
.wapp-bubble svg{width:30px;height:30px;fill:#fff}
.wapp-label{background:#111827;color:#fff;padding:.6rem .9rem;border-radius:10px;font-weight:700;box-shadow:var(--shadow);display:none}
.wapp-float:hover .wapp-label{display:block}
/* === Fixes HERO & mobile overflow === */
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
.container,.container-fluid{overflow-x:clip}
/* Navbar spacing so hero no quede debajo */
@media (max-width:576px){
header{min-height:56px}
}
/* HERO base */
.hero{position:relative;padding-top:88px}
@media (max-width:576px){
.hero{min-height:100dvh;display:flex;align-items:center;justify-content:center;text-align:center;padding-top:72px}
}
/* Tipografías seguras (no cortan) */
.hero-title{font-weight:800;font-size:clamp(1.9rem,7vw,3.2rem);line-height:1.15;margin-bottom:.75rem}
.hero-sub{font-size:clamp(1rem,3.6vw,1.125rem);margin-bottom:1rem}
/* CTAs centradas en phone */
@media (max-width:576px){
.cta-group{justify-content:center}
.cta-group .btn{min-width:220px}
.text-lg-start{text-align:center!important}
.justify-content-lg-start{justify-content:center!important}
}
/* Imagen del hero contenida (no empuja) */
.hero-illustration{width:clamp(200px,60vw,420px);max-width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 10px 30px rgba(0,0,0,.15))}
/* picture wrapper ajusta en mobile y no desborda */
.hero-media picture{ display:inline-block; max-width:100%; }
colmenaquilmes.com.ar
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.csshttps://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Montserrat:wght@400;500;600;700&family=Playfair+Display:wght@700&display=swaphttps://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css:root {
--primary: #173378;
--primary-dark: #1e4bbf;
--primary-light: #e8f0fe;
--secondary: #ff6b35;
--secondary-light: #fff0e8;
--light: #f8f9fa;
--dark: #212529;
--dark-light: #495057;
--success: #28a745;
--info: #17a2b8;
--gradient-primary: linear-gradient(135deg, var(--primary), #4a89dc);
--gradient-secondary: linear-gradient(135deg, var(--secondary), #ff8e53);
--shadow-sm: 0 2px 8px rgba(0,0,0,0.08);
--shadow-md: 0 4px 12px rgba(0,0,0,0.12);
--shadow-lg: 0 8px 24px rgba(0,0,0,0.16);
--transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.1);
}
body {
font-family: 'Poppins', sans-serif;
color: var(--dark);
line-height: 1.7;
overflow-x: hidden;
background-color: #f8fafc;
scroll-behavior: smooth;
}
html, body {
height: 100%;
}
h1, h2, h3, h4, h5, h6 {
font-family: 'Montserrat', sans-serif;
font-weight: 700;
line-height: 1.3;
}
.display-title {
font-family: 'Playfair Display', serif;
font-weight: 700;
}
/* Navbar */
.navbar {
padding: 20px 0;
transition: var(--transition);
box-shadow: var(--shadow-md);
background-color: rgba(255, 255, 255, 0.98) !important;
backdrop-filter: blur(10px);
z-index: 1000;
}
.navbar.scrolled {
padding: 12px 0;
box-shadow: var(--shadow-md);
}
.navbar-brand {
font-weight: 700;
font-size: 1.6rem;
color: var(--primary) !important;
display: flex;
align-items: center;
transition: var(--transition);
}
.navbar-brand i {
margin-right: 10px;
font-size: 1.8rem;
color: var(--secondary);
}
.navbar-brand:hover {
transform: scale(1.02);
}
.nav-link {
font-weight: 600;
padding: 8px 15px !important;
color: var(--dark) !important;
transition: var(--transition);
position: relative;
font-size: 0.95rem;
}
.nav-link:hover, .nav-link.active {
color: var(--primary) !important;
}
.nav-link:after {
content: '';
position: absolute;
width: 0;
height: 3px;
bottom: 0;
left: 15px;
background: var(--gradient-primary);
transition: var(--transition);
border-radius: 3px;
}
.nav-link:hover:after, .nav-link.active:after {
width: calc(100% - 30px);
}
.hero {
position: relative;
width: 100%;
height: auto;
min-height: 100vh;
background: none;
overflow: hidden;
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-start;
padding: 0;
}
.hero::before {
content: "";
display: block;
width: 100%;
height: 60vh;
background: url('img/hero.png') top center/cover no-repeat;
background-size: cover;
background-position: center;
}
.hero-content {
position: relative;
z-index: 2;
text-align: center;
padding: 40px 20px;
max-width: 800px;
margin-top: -20px;
background: rgba(255,255,255,0.95);
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}
.hero h1 {
font-size: 2.5rem;
font-weight: 700;
margin-bottom: 20px;
color: var(--dark);
}
.hero p {
font-size: 1.2rem;
margin-bottom: 30px;
color: #444;
}
/* Buttons */
.btn {
font-weight: 600;
padding: 14px 32px;
border-radius: 50px;
transition: var(--transition);
text-transform: uppercase;
letter-spacing: 0.5px;
font-size: 0.95rem;
border: none;
box-shadow: var(--shadow-md);
position: relative;
overflow: hidden;
}
.btn-primary {
background: var(--gradient-primary);
border: none;
position: relative;
z-index: 1;
}
.btn-primary:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, var(--primary-dark), #3a79d4);
opacity: 0;
z-index: -1;
transition: var(--transition);
}
.btn-primary:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(42, 91, 215, 0.3);
}
.btn-primary:hover:before {
opacity: 1;
}
.btn-outline-light[href="#planes"] {
border: 2px solid #ffffff;
color: #ffffff;
background-color: transparent;
transition: all 0.3s ease;
}
.btn-outline-light[href="#planes"]:hover {
background-color: #ffffff;
color: #000000;
border-color: #ffffff;
}
.btn-outline-light {
border: 2px solid rgba(255,255,255,0.3);
background: transparent;
color: white;
}
.btn-outline-light:hover {
background: white;
color: var(--primary);
border-color: white;
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(255,255,255,0.2);
}
.btn-wsp {
background-color: #25d366;
color: white;
margin: 5px;
position: relative;
overflow: hidden;
}
.btn-wsp:hover {
background-color: #1ebe5b;
color: white;
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(37, 211, 102, 0.3);
}
.btn-wsp i {
margin-right: 8px;
}
/* Section Titles */
.section-title {
font-size: 2.8rem;
margin-bottom: 30px;
font-weight: 700;
color: var(--primary);
position: relative;
display: inline-block;
}
.section-title:after {
content: '';
position: absolute;
width: 80px;
height: 5px;
bottom: -15px;
left: 0;
background: var(--gradient-primary);
border-radius: 5px;
}
.text-center .section-title:after {
left: 50%;
transform: translateX(-50%);
}
.section-subtitle {
font-size: 1.2rem;
color: var(--dark-light);
margin-bottom: 60px;
max-width: 700px;
margin-left: auto;
margin-right: auto;
}
/* Cards */
.card {
border: none;
border-radius: 16px;
overflow: hidden;
transition: var(--transition);
box-shadow: var(--shadow-md);
height: 100%;
border: 1px solid rgba(0, 0, 0, 0.05);
}
.card:hover {
transform: translateY(-10px) scale(1.02);
box-shadow: 0 12px 36px rgba(0,0,0,0.25);
}
.card-header {
background: var(--gradient-primary);
color: white;
padding: 25px;
border-bottom: none;
}
.card-body {
padding: 35px;
}
.card-title {
font-weight: 700;
margin-bottom: 20px;
color: var(--primary);
font-size: 1.5rem;
}
/* Benefit Icons */
.benefit-icon {
font-size: 1.3rem;
color: var(--success);
margin-right: 12px;
width: 28px;
text-align: center;
}
/* Features */
.feature-box {
text-align: center;
padding: 40px 30px;
border-radius: 16px;
transition: var(--transition);
background: white;
box-shadow: var(--shadow-md);
height: 100%;
border: 1px solid rgba(0, 0, 0, 0.05);
}
.feature-box:hover {
transform: translateY(-10px);
box-shadow: 0 12px 36px rgba(0,0,0,0.25);
}
.feature-box i {
font-size: 3rem;
margin-bottom: 25px;
color: var(--primary);
background:
/* ...cortado... */
gmzabogadosyasoc.com
https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@300;400;500;600;700&display=swaphttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css/* Variables CSS Mejoradas */
:root {
--primary: #0a1f3a;
--secondary: #c9a96e;
--accent: #8b0000;
--light: #f8f9fa;
--dark: #121212;
--gray: #6c757d;
--transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
--shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
--shadow-hover: 0 20px 40px rgba(0, 0, 0, 0.15);
--radius: 12px;
--gradient: linear-gradient(135deg, var(--primary) 0%, #1a3a5f 100%);
--gradient-gold: linear-gradient(135deg, var(--secondary) 0%, #e0c070 100%);
}
/* Reset y estilos base mejorados */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
font-family: 'Inter', sans-serif;
line-height: 1.7;
color: var(--dark);
background-color: #fff;
overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
font-family: 'Playfair Display', serif;
font-weight: 700;
line-height: 1.2;
margin-bottom: 1.5rem;
}
p {
margin-bottom: 1.5rem;
font-weight: 400;
color: #444;
}
a {
text-decoration: none;
color: inherit;
transition: var(--transition);
}
ul {
list-style: none;
}
img {
max-width: 100%;
height: auto;
display: block;
}
.container {
width: 100%;
max-width: 1320px;
margin: 0 auto;
padding: 0 20px;
}
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 16px 32px;
border-radius: var(--radius);
font-weight: 600;
text-align: center;
cursor: pointer;
transition: var(--transition);
border: none;
font-size: 1rem;
position: relative;
overflow: hidden;
z-index: 1;
}
.btn:before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
transition: left 0.7s;
z-index: -1;
}
.btn:hover:before {
left: 100%;
}
.btn-primary {
background: var(--gradient-gold);
color: var(--primary);
box-shadow: var(--shadow);
}
.btn-primary:hover {
transform: translateY(-5px);
box-shadow: var(--shadow-hover);
}
.btn-secondary {
background-color: transparent;
color: var(--light);
border: 2px solid rgba(255, 255, 255, 0.7);
backdrop-filter: blur(10px);
}
.btn-secondary:hover {
background-color: var(--light);
color: var(--primary);
transform: translateY(-5px);
box-shadow: var(--shadow);
}
.btn-whatsapp {
background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
color: white;
box-shadow: 0 10px 20px rgba(37, 211, 102, 0.3);
}
.btn-whatsapp:hover {
transform: translateY(-5px);
box-shadow: 0 15px 30px rgba(37, 211, 102, 0.4);
}
.section {
padding: 100px 0;
position: relative;
}
.section-title {
text-align: center;
margin-bottom: 60px;
position: relative;
font-size: 2.5rem;
}
.section-title:after {
content: '';
display: block;
width: 100px;
height: 4px;
background: var(--gradient-gold);
margin: 20px auto 0;
border-radius: 2px;
}
.text-center {
text-align: center;
}
/* Animaciones personalizadas */
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInLeft {
from {
opacity: 0;
transform: translateX(-30px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes fadeInRight {
from {
opacity: 0;
transform: translateX(30px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes pulse {
0% {
box-shadow: 0 0 0 0 rgba(201, 169, 110, 0.7);
}
70% {
box-shadow: 0 0 0 15px rgba(201, 169, 110, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(201, 169, 110, 0);
}
}
@keyframes float {
0% {
transform: translateY(0px);
}
50% {
transform: translateY(-10px);
}
100% {
transform: translateY(0px);
}
}
.animate-fade-in-up {
animation: fadeInUp 0.8s ease-out forwards;
}
.animate-fade-in-left {
animation: fadeInLeft 0.8s ease-out forwards;
}
.animate-fade-in-right {
animation: fadeInRight 0.8s ease-out forwards;
}
.animate-float {
animation: float 5s ease-in-out infinite;
}
/* Navbar Mejorada */
.navbar {
position: fixed;
top: 0;
left: 0;
width: 100%;
background: rgba(0,0,0,0.95);
backdrop-filter: blur(15px);
z-index: 1000;
transition: var(--transition);
padding: 20px 0;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}
.navbar.scrolled {
padding: 15px 0;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}
.navbar-container {
display: flex;
justify-content: space-between;
align-items: center;
}
.logo {
display: flex;
align-items: center;
}
.logo-text {
font-family: 'Playfair Display', serif;
font-size: 1.8rem;
font-weight: 700;
color: var(--light);
letter-spacing: 0.5px;
}
.logo-text span {
color: var(--secondary);
}
.nav-menu {
display: flex;
gap: 35px;
}
.nav-link {
color: var(--light);
font-weight: 500;
position: relative;
padding: 5px 0;
font-size: 1.05rem;
}
.nav-link:after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 2px;
background: var(--gradient-gold);
transition: var(--transition);
}
.nav-link:hover {
color: var
/* ...cortado... */
/* Header logo */
.logo-text{
display:flex;
align-items:center;
gap:.55rem;
line-height:1;
white-space:nowrap; /* evita salto raro en el header */
}
.logo-text .brand-mark{
height:30px; /* ajustá a tu navbar */
width:auto;
object-fit:contain;
display:block;
}
.logo-text span{
font-weight:700;
letter-spacing:.4px;
font-size:1.05rem;
color:inherit;
}
/* Opcional si el header es oscuro y el logo es oscuro: */
/* .header-dark .logo-text .brand-mark{ filter: brightness(0) invert(1); } */
:root{
--accent:#c5a15d; /* cambiá si querés otro acento */
--hero-min-h:78vh; /* altura mínima del hero */
}
.hero-pro{
position:relative; min-height:var(--hero-min-h);
display:grid; place-items:center;
padding:96px 0 88px; isolation:isolate; color:#fff; overflow:hidden;
background:#0f0f0f; /* fallback si no carga la imagen */
}
/* Imagen de fondo (1 sola) */
.hero-pro .hero-img{
position:absolute; inset:-8% -8% -8% -8%; z-index:-2; display:block;
}
.hero-pro .hero-img img{
width:100%; height:100%;
object-fit:cover; object-position:center center; /* ajustá foco si querés */
filter: saturate(.9) contrast(1.05) brightness(.8);
transform: scale(1.04);
}
/* Overlay para legibilidad */
.hero-pro .hero-overlay{
position:absolute; inset:0; z-index:-1;
background:
linear-gradient(180deg, rgba(0,0,0,.58) 0%, rgba(0,0,0,.38) 40%, rgba(0,0,0,.58) 100%),
radial-gradient(120% 90% at 10% 0%, rgba(0,0,0,.35), transparent 60%),
radial-gradient(90% 70% at 90% 100%, rgba(0,0,0,.35), transparent 60%);
mix-blend-mode: multiply;
}
.hero-pro .hero-content{ text-align:center; max-width:980px; }
.hero-pro .hero-title{
font-weight:900; line-height:1.08; letter-spacing:-.02em; margin:0 0 10px;
font-size: clamp(2rem, 3.8vw, 3.2rem);
position:relative; display:inline-block;
text-wrap:balance;
text-shadow:0 2px 14px rgba(0,0,0,.25);
}
.hero-pro .title-underline{
position:absolute; left:8px; right:8px; bottom:-10px; height:4px; border-radius:999px;
background: linear-gradient(90deg, rgba(255,255,255,0), var(--accent), rgba(255,255,255,0));
transform:scaleX(0); transform-origin:left; animation: underline-in .7s .25s forwards;
}
@keyframes underline-in{ to{ transform:scaleX(1);} }
.hero-pro .hero-subtitle{
margin:18px auto 6px; font-size: clamp(1.05rem, 2.2vw, 1.25rem);
color: rgba(255,255,255,.92);
}
.hero-pro .hero-support{
margin:0 auto 22px; color: rgba(255,255,255,.8); max-width:760px;
}
.hero-pro .hero-cta{
display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-top:10px;
}
.hero-pro .btn{ font-weight:700; padding:12px 16px; border-radius:14px; border:1px solid transparent; }
.hero-pro .btn-accent{ background:var(--accent); color:#111; border-color:var(--accent); }
.hero-pro .btn-accent:hover{ opacity:.92; color:#111; }
.hero-pro .btn-outline-light{ background:transparent; color:#fff; border-color:rgba(255,255,255,.6); }
.hero-pro .btn-outline-light:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
.hero-pro .btn-ghost{ background:rgba(255,255,255,.08); color:#fff; border-color:transparent; }
.hero-pro .btn-ghost:hover{ background:rgba(255,255,255,.14); }
.hero-pro .hero-trust{
display:flex; gap:14px; flex-wrap:wrap; justify-content:center;
margin:26px auto 0; padding-top:16px;
border-top:1px solid rgba(255,255,255,.22);
}
.hero-pro .hero-trust li{
list-style:none; display:flex; gap:8px; align-items:center;
padding:8px 12px; border:1px solid rgba(255,255,255,.16); border-radius:999px;
background: rgba(0,0,0,.18); backdrop-filter: blur(4px);
font-size:.95rem; color:#fff;
}
.hero-pro .hero-trust i{ color:var(--accent); }
/* Marco sutil */
.hero-pro .hero-frame{
position:absolute; inset:18px; border-radius:26px; pointer-events:none;
box-shadow: inset 0 0 0 1px rgba(255,255,255,.14), inset 0 0 0 2px rgba(0,0,0,.2);
mix-blend-mode: screen;
}
/* Indicador de scroll */
.hero-pro .scroll-cue{
position:absolute; bottom:22px; left:50%; transform:translateX(-50%);
width:36px; height:54px; border-radius:999px; border:1px solid rgba(255,255,255,.35);
background: transparent; display:grid; place-items:center; opacity:.9;
}
.hero-pro .scroll-cue:hover{ border-color:#fff; }
.hero-pro .scroll-cue span{
width:6px; height:10px; border-radius:6px; background:#fff; display:block;
animation: cue .9s infinite ease-in-out;
}
@keyframes cue{ 0%{ transform: translateY(-6px); opacity:.3;} 50%{opacity:1;} 100%{ transform: translateY(6px); opacity:.3;} }
/* Responsive */
@media (max-width: 576px){
.hero-pro{ min-height: 82vh; padding:84px 0 96px; }
.hero-pro .hero-trust{ gap:10px; }
}
@media (prefers-reduced-motion: reduce){
.hero-pro .title-underline, .hero-pro .scroll-cue span{ animation:none; transform:none; }
}
/* ====== ABOUT (QUÉNES SOMOS) ====== */
.section.about { padding: clamp(40px, 6vw, 80px) 0; }
.about .container{
/* asegura un ancho razonable y evita “estirar” la grilla */
max-width: 1180px;
}
.about-content{
display: grid;
/* texto flexible + columna de imagen acotada */
grid-template-columns: minmax(0,1fr) min(460px, 34vw);
align-items: center;
gap: clamp(20px, 4vw, 56px);
}
.about-text{ min-width: 0; } /* evita overflow de títulos/líneas largas */
.about-image{
justify-self: end;
width: 100%;
max-width: min(460px, 34vw);
/* tarjeta para la imagen */
background: #faf7ef;
border-radius: 18px;
box-shadow: 0 12px 28px rgba(0,0,0,.12);
padding: clamp(6px, 1.2vw, 12px);
overflow: hidden; /* clave para que no se “salga” del contenedor */
}
.about-image img{
display: block;
width: 100%;
height: auto; /* mantiene proporción real del logo */
max-width: 100%;
border-radius: 14px;
}
/* tipografía y listita de contacto */
.about .section-title{ margin-bottom: .35em; }
.about-contact{
margin-top: 18px;
display: grid;
gap: 10px;
}
.about-contact .contact-item{
display: grid;
grid-template-columns: 22px 1fr;
align-items: start;
gap: 10px;
font-size: 0.98rem;
line-height: 1.35rem;
word-break: break-word; /* por si algún dato es largo */
}
.contact-icon{ margin-top: 2px; opacity: .9; }
/* Responsive: stack en mobile/tablet */
@media (max-width: 992px){
.about-content{
grid-template-columns: 1fr;
}
.about-image{
justify-self: center;
max-width: 520px;
}
}
/* ==== Why Us Pro (clean + animaciones) ==== */
:root{
--accent:#c5a15d; /* acento (cambiable) */
--ink:#121212; /* texto */
--muted:#6f6f6f; /* texto secundario */
--line:#e9e9e9; /* bordes suaves */
--card:#ffffff; /* fondo card */
--bg:#fafafa; /* fondo sección */
--radius:16px;
--shadow:0 6px 24px rgba(0,0,0,.08);
--t:.25s cubic-bezier(.2,.7,.2,1);
}
.why-us-pro{
position:relative; overflow:hidden;
background: var(--bg);
padding-top:64px; padding-bottom:72px;
color:var(--ink);
}
.wu3-head{ text-align:center; margin-bottom:26px; }
.wu3-title{
position:relative; display:inline-block; margin:0;
font-weight:800; letter-spacing:-.02em;
}
.wu3-underline{
position:absolute; left:8px; right:8px; bottom:-8px; height:4px;
background: linear-gradient(90deg, rgba(0,0,0,0), var(--accent), rgba(0,0,0,0));
border-radius:999px; transform:scaleX(0); transform-origin:left; animation: underline-in .6s .25s forwards;
}
@keyframes underline-in{ to{ transform:scaleX(1);} }
.wu3-sub{ color:var(--muted); margin:14px auto 0; max-width:720px; }
.wu3-grid{
display:grid; gap:18px; margin-top:28px;
grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 992px){ .wu3-grid{ grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 576px){ .wu3-grid{ grid-template-columns:1fr; } }
.wu3-card{
position:relative; background:var(--card); border:1px solid var(--line);
border-radius:var(--radius); padding:22px 18px 20px; box-shadow:var(--shadow);
transform: translateY(14px) scale(.98); opacity:0;
transition: transform var(--t), box-shadow var(--t), border-color var(--t), opacity var(--t);
}
.wu3-card.in{ transform: translateY(0) scale(1); opacity:1; }
.wu3-card:hover{ box-shadow:0 10px 30px rgba(0,0,0,.12); border-color:#dcdcdc; }
.wu3-icon{
width:56px; height:56px; border-radius:14px; display:grid; place-items:center;
/* anillo con acento y glow sutil */
background:
radial-gradient(120% 120% at 30% 20%, rgba(197,161,93,.16), transparent 60%),
#fff;
border:1px solid #eee;
box-shadow: inset 0 0 0 2px rgba(197,161,93,.25), 0 4px 16px rgba(197,161,93,.12);
margin-bottom:12px;
transition: transform var(--t), box-shadow var(--t);
}
.wu3-card:hover .wu3-icon{ transform: translateY(-2px) scale(1.03); box-shadow: inset 0 0 0 2px rgba(197,161,93,.35), 0 6px 22px rgba(197,161,93,.18); }
.wu3-icon i{
font-size:1.35rem; color:var(--accent); /* ¡no negro! */
filter: drop-shadow(0 1px 0 rgba(0,0,0,.05));
}
.wu3-card h3{ font-size:1.05rem; margin:4px 0 6px; font-weight:800; letter-spacing:.2px; }
.wu3-card p{ color:var(--muted); margin:0; line-height:1.55; }
/* barra de confianza */
.wu3-trust{
margin-top:26px; padding-top:18px; border-top:1px solid var(--line);
display:flex; flex-wrap:wrap; gap:12px; justify-content:center; color:var(--muted);
}
.wu3-trust i{ color:var(--accent); margin-right:6px; }
.wu3-trust .dot{ width:6px; height:6px; border-radius:50%; background:#d6d6d6; align-self:center; }
/* botón acento */
.wu3-btn-accent{
background: var(--accent); border-color: var(--accent); color:#111; font-weight:700;
padding-inline:18px;
}
.wu3-btn-accent:hover{ opacity:.92; color:#111; }
/* fondo decorativo sutil (sin recargar) */
.wu3-bg{
position:absolute; inset:auto -10% -20% -10%; height:46%;
background:
radial-gradient(60% 60% at 20% 40%, rgba(197,161,93,.10) 0, transparent 70%),
radial-gradient(70% 70% at 80% 10%, rgba(0,0,0,.035) 0, transparent 75%);
pointer-events:none;
}
/* entrada escalonada */
.wu3-card{ --delay: 0ms; }
.wu3-card:nth-child(1){ --delay: 40ms; }
.wu3-card:nth-child(2){ --delay: 80ms; }
.wu3-card:nth-child(3){ --delay: 120ms; }
.wu3-card:nth-child(4){ --delay: 160ms; }
.wu3-card:nth-child(5){ --delay: 200ms; }
.wu3-card:nth-child(6){ --delay: 240ms; }
.wu3-card.in{ transition-delay: var(--delay); }
/* ==== Marco sutil de la sección ==== */
:root{
--accent:#c5a15d; /* tu acento actual */
}
.why-us-pro{
background: #fafafa; /* ya lo tenías */
padding-top: 72px; padding-bottom: 80px;
}
.wu3-frame{
--r: 22px;
position: relative;
max-width: 1200px;
margin: 0 auto;
border-radius: var(--r);
/* “borde de doble capa” ultra sutil con background-clip */
background:
linear-gradient(#ffffff,#ffffff) padding-box,
linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.02)) border-box;
border: 1px solid transparent;
/* luz muy discreta, nada burdo */
box-shadow:
0 10px 28px rgba(0,0,0,.06),
0 1px 0 rgba(255,255,255,.7) inset;
padding: 28px 22px;
}
/* Una línea interior hiper-fina para darle “profundidad” */
.wu3-frame::after{
content:"";
position:absolute; inset: 10px;
border-radius: calc(var(--r) - 10px);
box-shadow: inset 0 0 0 1px rgba(0,0,0,.04);
pointer-events:none;
}
/* micro detalle: subrayado del título toma el acento pero más suave */
.wu3-title .wu3-underline{
background: linear-gradient(90deg, rgba(0,0,0,0), color-mix(in oklab, var(--accent) 70%, #fff), rgba(0,0,0,0));
}
/* iconos ya tenían color de acento; bajamos un toque la saturación al hover del card */
.wu3-card:hover .wu3-icon{
box-shadow: inset 0 0 0 2px color-mix(in oklab, var(--accent) 40%, #fff), 0 6px 22px rgba(0,0,0,.12);
}
/* responsive: respiración sin perder el marco */
@media (max-width: 992px){
.wu3-frame{ padding: 22px 16px; }
}
@media (max-width: 576px){
.wu3-frame{ padding: 18px 12px; }
}
/* Footer logo */
.footer-logo{
display:flex;
align-items:center;
gap:.6rem;
line-height:1;
}
.footer-logo .brand-mark{
height:28px; /* ajustá si querés más grande */
width:auto;
object-fit:contain;
display:block;
}
/* Tipografía de “Abogados” */
.footer-logo span{
font-weight:700;
letter-spacing:.4px;
font-size:1.05rem;
color:inherit; /* usa el color del footer */
}
/* Opcional: si tu footer es oscuro y el logo es negro, descomentá: */
/* .footer.is-dark .brand-mark{ filter: brightness(0) invert(1); } */
casasmodulosmodulex.com.ar
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.csshttps://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap:root {
--mx-bg: #ffffff;
--mx-text: #111111;
--mx-muted: #6b7280;
--mx-accent: #e11d2d;
--mx-accent-600: #c81e27;
--mx-soft: #f6f7f9;
--mx-border: #eaecef;
--mx-gradient: linear-gradient(135deg, #e11d2d 0%, #b91c1c 100%);
--mx-gradient-light: linear-gradient(135deg, rgba(225, 29, 45, 0.05) 0%, rgba(185, 28, 28, 0.05) 100%);
--mx-shadow: 0 10px 30px rgba(17, 17, 17, 0.06);
--mx-shadow-lg: 0 20px 60px rgba(17, 17, 17, 0.1);
--mx-radius: 1.25rem;
--mx-radius-lg: 2rem;
}
* {
box-sizing: border-box;
}
html, body {
background: var(--mx-bg);
color: var(--mx-text);
scroll-behavior: smooth;
font-family: 'Inter', sans-serif;
line-height: 1.6;
}
a {
color: var(--mx-accent);
text-decoration: none;
transition: all 0.3s ease;
}
a:hover {
color: var(--mx-accent-600);
}
.btn-accent {
background: var(--mx-gradient);
color: #fff;
border: 0;
padding: 0.8rem 1.8rem;
font-weight: 600;
border-radius: 12px;
transition: all 0.3s ease;
box-shadow: 0 4px 12px rgba(225, 29, 45, 0.2);
}
.btn-accent:hover {
background: var(--mx-accent-600);
color: #fff;
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(225, 29, 45, 0.3);
}
.btn-outline-dark {
border: 2px solid #111;
color: #111;
font-weight: 600;
padding: 0.8rem 1.8rem;
border-radius: 12px;
transition: all 0.3s ease;
}
.btn-outline-dark:hover {
background: #111;
color: #fff;
transform: translateY(-2px);
}
.text-muted {
color: var(--mx-muted) !important;
}
.badge-accent {
background: var(--mx-accent);
}
.section {
padding: 100px 0;
}
.section-title {
font-weight: 800;
letter-spacing: -0.02em;
margin-bottom: 1rem;
line-height: 1.2;
}
.section-sub {
color: var(--mx-muted);
max-width: 720px;
font-size: 1.1rem;
}
.shadow-soft {
box-shadow: var(--mx-shadow);
}
.shadow-lg-soft {
box-shadow: var(--mx-shadow-lg);
}
.card-border {
border: 1px solid var(--mx-border);
}
.rounded-2xl {
border-radius: var(--mx-radius);
}
.rounded-3xl {
border-radius: var(--mx-radius-lg);
}
/* Navbar */
.navbar {
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
border-bottom: 1px solid rgba(234, 236, 239, 0.8);
padding: 1rem 0;
transition: all 0.3s ease;
}
.navbar.scrolled {
padding: 0.7rem 0;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
}
.navbar .navbar-brand {
font-weight: 800;
letter-spacing: -0.02em;
font-size: 1.5rem;
}
.navbar .nav-link {
font-weight: 600;
padding: 0.5rem 1rem;
border-radius: 8px;
transition: all 0.3s ease;
}
.navbar .nav-link:hover {
color: var(--mx-accent);
background: var(--mx-gradient-light);
}
/* Hero */
.hero {
padding: 150px 0 80px;
background: linear-gradient(135deg, #f6f7f9 0%, #ffffff 100%);
position: relative;
overflow: hidden;
}
.hero::before {
content: '';
position: absolute;
top: 0;
right: 0;
width: 50%;
height: 100%;
background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M0,0 L100,0 L100,100 Z" fill="rgba(225, 29, 45, 0.03)"/></svg>');
background-size: cover;
}
.hero .bullets i {
width: 28px;
text-align: center;
}
.hero-cta .btn {
padding: 0.8rem 1.8rem;
}
/* Servicios grid */
.feature {
height: 100%;
border: 1px solid var(--mx-border);
background: #fff;
transition: all 0.3s ease;
border-radius: var(--mx-radius);
padding: 2rem;
}
.feature:hover {
transform: translateY(-5px);
box-shadow: var(--mx-shadow-lg);
border-color: var(--mx-accent);
}
.feature .icon {
width: 60px;
height: 60px;
border-radius: 16px;
display: grid;
place-items: center;
background: var(--mx-gradient-light);
color: var(--mx-accent);
margin-bottom: 1.5rem;
font-size: 1.5rem;
}
/* Por qué elegirnos */
.tick i {
color: var(--mx-accent);
background: var(--mx-gradient-light);
width: 40px;
height: 40px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
/* Ticker / Trabajos */
.ticker-wrap {
position: relative;
}
.ticker-viewport {
overflow: hidden;
border: 1px solid var(--mx-border);
background: #fff;
border-radius: 20px;
padding: 10px;
}
.ticker-track {
display: flex;
gap: 20px;
align-items: center;
width: max-content;
animation: mx-marquee 28s linear infinite;
}
.ticker-track.paused {
animation-play-state: paused;
}
@keyframes mx-marquee {
0% {
transform: translateX(0);
}
100% {
transform: translateX(-50%);
}
}
.work {
flex: 0 0 auto;
width: 400px;
height: 400px;
border-radius: 16px;
overflow: hidden;
border: 1px solid var(--mx-border);
background: #f3f4f6;
transition: all 0.3s ease;
position: relative;
}
.work:hover {
transform: scale(1.03);
box-shadow: var(--mx-shadow-lg);
}
.work img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.5s ease;
}
.work:hover img {
transform: scale(1.1);
}
/* Responsive sizes */
@media (max-width: 992px) {
.work {
width: 320px;
height: 320px;
}
.hero {
padding: 120px 0 60px;
}
}
@media (max-width: 768px) {
.section {
padding: 80px 0;
}
.hero {
padding: 100px 0 40px;
}
.hero::before {
width: 100%;
opacity: 0.2;
}
}
@media (max-width: 576px) {
.work {
width: 280px;
height: 280px;
}
.ticker-track {
gap: 15px;
}
}
/* Ticker controls */
.ticker-controls {
position: absolute;
inset: 0;
pointer-events: none;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 15px;
}
.ticker-btn {
pointer-events: auto;
border: 1px solid var(--mx-border);
background: #fff;
width: 50px;
height: 50px;
border-radius: 50%;
display: grid;
place-items: center;
transition: all 0.3s ease;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.ticker-btn:hover {
border-color: var(--mx-accent);
color: var(--mx-accent);
transform: scale(1.1);
}
/* FAQs */
.faq .accordion-button {
font-weight: 600;
padding: 1.25rem 1.5rem;
border: 1px solid var(--mx-border);
margin-bottom: 10px;
border-radius: 12px !important;
transition: all 0.3s ease;
}
.faq .accordion-button:not(.collapsed) {
color: var(--mx-accent);
background: var(--mx-gradient-light);
border-color: var(--mx-accent);
box-shadow: none;
}
.faq .
/* ...cortado... */
:root{
--navH: 64px; /* alto aprox de tu navbar fixed-top */
--accent:#d61f1f;
}
/* separa el hero de la navbar fija y evita que quede tapado */
#inicio{ padding-top: var(--navH); scroll-margin-top: var(--navH); }
/* contenedor sin recortes */
#inicio .hero-wrap{
width:100%;
display:block;
overflow:visible !important; /* <- evita cortes heredados */
background:#fff;
}
/* frame responsivo: no fija altura dura; se adapta y nunca recorta */
#inicio .hero-frame{
width:100%;
display:grid;
place-items:center;
background:#fff;
}
/* IMAGEN: entra completa, sin recortes ni deformación */
#inicio .hero-media{
display:block;
max-width:100%;
width:100%;
height:auto; /* mantiene proporción */
object-fit:contain !important;
object-position:center;
}
/* Opcional: asegura una altura mínima visible en phone
sin recortar (la imagen sigue siendo contain) */
@media (max-width: 576px){
#inicio .hero-frame{
min-height: 180px; /* ajustá si querés más alto */
}
}
/* botones/acentos como venías usando */
.btn-accent{ background:var(--accent); border-color:var(--accent); color:#fff; }
.btn-accent:hover{ filter:brightness(.92); color:#fff }
.bullets i{ color:var(--accent) }
#trabajos .section-title{margin-bottom:.25rem}
#trabajos .section-sub{max-width:820px;color:#6b7280}
/* -------- Ticker -------- */
#trabajos .ticker-wrap{position:relative}
#trabajos .ticker-viewport{
overflow:hidden;
mask-image:linear-gradient(to right, transparent 0, #000 var(--edge), #000 calc(100% - var(--edge)), transparent 100%);
-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--edge), #000 calc(100% - var(--edge)), transparent 100%);
}
#trabajos .ticker-track{
display:flex; align-items:center; gap:var(--gap);
will-change:transform;
animation:tickerScroll var(--speed) linear infinite;
}
@keyframes tickerScroll{
from{ transform:translateX(0) }
to { transform:translateX(calc(-50% - var(--gap)/2)) }
}
#trabajos .ticker-wrap:hover .ticker-track,
#trabajos .ticker-wrap[data-paused="1"] .ticker-track{ animation-play-state:paused }
/* -------- Ítems: altura fija, ANCHO PROPORCIONAL (JS setea --w) -------- */
#trabajos .work{
flex:0 0 auto; display:grid; place-items:center;
height:var(--h-mob);
width:var(--w-min); /* fallback hasta que JS calcule */
width:var(--w, var(--w-min)); /* JS escribe --w px en línea */
background:#fff; border:1px solid rgba(0,0,0,.06);
border-radius:18px; box-shadow:0 12px 28px rgba(0,0,0,.08);
overflow:hidden;
}
#trabajos .work img{
width:100%; height:100%;
object-fit:contain; object-position:center; display:block;
}
/* -------- Controles: laterales, fuera del centro -------- */
#trabajos .ticker-controls{
position:absolute; inset:0;
pointer-events:none; z-index:3; /* capa no capta eventos, sólo los botones */
}
#trabajos .ticker-btn{
position:absolute; top:50%; transform:translateY(-50%);
pointer-events:auto;
width:46px; height:46px; border-radius:14px;
border:1px solid #e5e7eb; background:#fff;
box-shadow:0 10px 24px rgba(0,0,0,.12); cursor:pointer;
transition:opacity .2s ease, transform .12s ease;
opacity:.9;
}
#trabajos .ticker-btn:hover{ opacity:1 }
#trabajos .ticker-btn:active{ transform:translateY(-50%) scale(.98) }
#tprev{ left:10px; }
#tnext{ right:10px; }
@media (max-width:576px){
#tprev{ left:6px }
#tnext{ right:6px }
}
/* -------- Lightbox -------- */
#trabajos .lb{ position:fixed; inset:0; background:rgba(0,0,0,.86); display:none; z-index:1055 }
#trabajos .lb.open{ display:grid; place-items:center }
#trabajos .lb-inner{ position:relative; max-width:min(96vw,1200px); width:100%; height:min(88vh,820px); display:grid; place-items:center }
#trabajos .lb-img{ max-width:100%; max-height:100%; object-fit:contain; border-radius:16px; box-shadow:0 20px 50px rgba(0,0,0,.45) }
#trabajos .lb-close{
position:absolute; top:10px; right:10px; width:48px; height:48px; border-radius:12px;
border:1px solid rgba(255,255,255,.25); background:rgba(17,17,17,.6); color:#fff; backdrop-filter:blur(6px)
}
#trabajos .lb-nav{ position:absolute; inset:0; display:flex; align-items:center; justify-content:space-between; pointer-events:none }
#trabajos .lb-btn{
pointer-events:auto; width:54px; height:54px; border-radius:12px;
border:1px solid rgba(255,255,255,.25); background:rgba(17,17,17,.6); color:#fff; backdrop-filter:blur(6px); cursor:pointer
}
#trabajos .lb-counter{
position:absolute; bottom:12px; left:50%; transform:translateX(-50%);
color:#fff; font-size:.95rem; background:rgba(17,17,17,.55); padding:.28rem .7rem; border-radius:999px; border:1px solid rgba(255,255,255,.25);
backdrop-filter:blur(6px)
}
/* -------- Breakpoints: alturas mayores -------- */
@media (min-width: 576px){
#trabajos .work{ height:var(--h-tab) }
}
@media (min-width: 992px){
#trabajos .work{ height:var(--h-desk) }
#trabajos{ --edge:64px }
}
/* ---------- Layout / Cards ---------- */
#contacto .wrap{display:grid; gap:28px; grid-template-columns: 1fr; align-items:stretch}
@media (min-width: 992px){
#contacto .wrap{grid-template-columns: 1fr 1fr}
}
#contacto .card{
background:var(--card); border:1px solid var(--border); border-radius:20px;
box-shadow:0 16px 40px rgba(0,0,0,.06)
}
#contacto .pad{ padding:22px; }
@media (min-width: 768px){ #contacto .pad{ padding:32px } }
/* ---------- Título / Meta ---------- */
#contacto .section-title{margin-bottom:.25rem}
#contacto .muted{color:#6b7280}
/* ---------- Floating labels (Bootstrap-like, más compactas) ---------- */
#contacto .form-floating>.form-control,
#contacto .form-floating>textarea{
padding: 1.1rem .9rem .5rem .9rem;
}
#contacto .form-floating>label{
padding: .95rem .9rem; color:#6b7280;
}
#contacto .form-control, #contacto textarea{
border-radius:12px; border:1px solid var(--border);
}
#contacto .form-control:focus, #contacto textarea:focus{
border-color:var(--accent); box-shadow:0 0 0 .2rem rgba(214,31,31,.08);
}
/* ---------- Botones ---------- */
#contacto .btn-accent{
background:var(--accent); border:1px solid var(--accent); color:#fff;
border-radius:12px; padding:.8rem 1rem;
}
#contacto .btn-accent:hover{ filter:brightness(.93); color:#fff }
#contacto .btn-outline{
border:1px solid var(--border); background:#fff; border-radius:12px; padding:.8rem 1rem;
}
/* ---------- Info boxes ---------- */
#contacto .info-item{display:flex; gap:12px; align-items:flex-start}
#contacto .info-badge{
width:38px; height:38px; border-radius:10px; display:grid; place-items:center;
background:#fff; border:1px solid var(--border)
}
#contacto .grid-why{display:grid; gap:18px; grid-template-columns:1fr}
@media (min-width: 576px){ #contacto .grid-why{grid-template-columns:1fr 1fr} }
/* ---------- Miscelánea ---------- */
#contacto .shadow-soft{box-shadow:0 10px 30px rgba(0,0,0,.07)}
#contacto .dashed{border:1px dashed var(--border)}
#contacto .honeypot{position:absolute; left:-5000px; width:1px; height:1px; overflow:hidden}
#contacto .char-count{font-size:.85rem; color:#6b7280}
#contacto .small{color:#6b7280}
/* ---------- Alerts bonitas ---------- */
#contacto .alert{border-radius:12px; border:1px solid transparent}
#contacto .alert-success{background:#ecfdf5; border-color:#10b98133; color:#065f46}
#contacto .alert-danger{background:#fff1f2; border-color:#ef444433; color:#991b1b}
sanarteesunarte.com.ar
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swaphttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css:root {
--bg: #fefefe;
--paper: #ffffff;
--ink: #1a1a2e;
--muted: #6c757d;
--soft: #f8f9fa;
--primary: #8a63d2;
--primary-light: #a88ae0;
--primary-dark: #6f42c1;
--accent: #e9d8fd;
--gradient: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
--shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
--shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.12);
--radius: 16px;
--transition: all 0.3s ease;
}
html, body {
background: var(--bg);
color: var(--ink);
font-family: 'Manrope', system-ui, -apple-system, sans-serif;
scroll-behavior: smooth;
overflow-x: hidden;
}
/* Scroll personalizado */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: var(--soft);
}
::-webkit-scrollbar-thumb {
background: var(--primary);
border-radius: 4px;
}
/* Botones */
.btn {
border-radius: 50px;
padding: 12px 28px;
font-weight: 600;
transition: var(--transition);
border: none;
position: relative;
overflow: hidden;
}
.btn-primary {
background: var(--gradient);
box-shadow: 0 4px 15px rgba(138, 99, 210, 0.3);
}
.btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(138, 99, 210, 0.4);
}
.btn-outline-primary {
border: 2px solid var(--primary);
color: var(--primary);
background: transparent;
}
.btn-outline-primary:hover {
background: var(--primary);
color: white;
transform: translateY(-2px);
}
/* Elementos comunes */
.badge-soft {
background: var(--accent);
color: var(--primary-dark);
border-radius: 50px;
padding: 8px 16px;
font-weight: 600;
font-size: 0.85rem;
display: inline-block;
}
.shadow-soft {
box-shadow: var(--shadow);
}
.shadow-lg {
box-shadow: var(--shadow-lg);
}
.card-soft {
background: var(--paper);
border-radius: var(--radius);
box-shadow: var(--shadow);
border: none;
transition: var(--transition);
}
.card-soft:hover {
transform: translateY(-5px);
box-shadow: var(--shadow-lg);
}
.section {
padding: 100px 0;
position: relative;
}
.section-title {
font-weight: 800;
letter-spacing: -0.5px;
position: relative;
display: inline-block;
}
.section-title::after {
content: '';
position: absolute;
bottom: -10px;
left: 0;
width: 60px;
height: 4px;
background: var(--gradient);
border-radius: 2px;
}
.section-sub {
color: var(--muted);
font-size: 1.1rem;
max-width: 600px;
}
/* Navbar */
.navbar {
backdrop-filter: blur(10px);
background: rgba(255, 255, 255, 0.9);
padding: 20px 0;
transition: var(--transition);
}
.navbar.scrolled {
padding: 12px 0;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
}
.navbar-brand {
font-weight: 800;
font-size: 1.5rem;
background: var(--gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.nav-link {
font-weight: 600;
position: relative;
margin: 0 8px;
color: var(--ink);
}
.nav-link::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 2px;
background: var(--gradient);
transition: var(--transition);
}
.nav-link:hover::after,
.nav-link.active::after {
width: 100%;
}
.navbar-toggler {
border: none;
padding: 4px 8px;
}
.navbar-toggler:focus {
box-shadow: none;
}
/* WhatsApp flotante */
.whats-bubble {
position: fixed;
right: 20px;
bottom: 20px;
z-index: 9999;
display: inline-flex;
align-items: center;
gap: 10px;
background: #25d366;
color: white;
padding: 14px 20px;
border-radius: 50px;
text-decoration: none;
box-shadow: 0 10px 30px rgba(37, 211, 102, 0.4);
transition: var(--transition);
font-weight: 600;
}
.whats-bubble:hover {
transform: translateY(-3px) scale(1.05);
color: white;
box-shadow: 0 15px 35px rgba(37, 211, 102, 0.5);
}
/* Hero */
.hero {
padding: 150px 0 100px;
position: relative;
overflow: hidden;
}
.hero::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, rgba(138, 99, 210, 0.05) 0%, rgba(233, 216, 253, 0.1) 100%);
z-index: -1;
}
.hero .wrap {
display: grid;
grid-template-columns: 1.2fr 0.8fr;
gap: 40px;
align-items: center;
}
.hero-plate {
background: var(--paper);
border-radius: var(--radius);
padding: 40px;
box-shadow: var(--shadow-lg);
position: relative;
overflow: hidden;
}
.hero-plate::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 5px;
background: var(--gradient);
}
.hero-plate h1 {
font-weight: 800;
line-height: 1.2;
margin-bottom: 20px;
}
.hero-plate .lead {
font-size: 1.2rem;
margin-bottom: 30px;
}
.hero-media {
border-radius: var(--radius);
overflow: hidden;
box-shadow: var(--shadow-lg);
transform: perspective(1000px) rotateY(-5deg) rotateX(5deg);
transition: var(--transition);
}
.hero-media:hover {
transform: perspective(1000px) rotateY(0) rotateX(0);
}
.hero-media img {
width: 100%;
height: 100%;
object-fit: cover;
aspect-ratio: 4/3;
}
.kpis {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 15px;
margin-top: 30px;
}
.kpis .chip {
background: var(--soft);
border-radius: 12px;
padding: 15px 10px;
font-weight: 700;
text-align: center;
transition: var(--transition);
}
.kpis .chip:hover {
background: var(--accent);
transform: translateY(-3px);
}
@media (max-width: 991.98px) {
.hero .wrap {
grid-template-columns: 1fr;
}
.hero-media {
transform: none;
}
}
@media (max-width: 575.98px) {
.kpis {
grid-template-columns: 1fr;
}
}
/* Sección Quiénes Somos */
#quienes .card-soft {
padding: 40px;
height: 100%;
}
#quienes img {
border-radius: var(--radius);
box-shadow: var(--shadow-lg);
transition: var(--transition);
}
#quienes img:hover {
transform: scale(1.02);
}
/* Servicios */
#servicios {
background: var(--soft);
position: relative;
}
#servicios::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%238a63d2' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
z-index: 0;
}
#servicios .co
/* ...cortado... */
/* ===== Estilos Footer Pro Mejorado ===== */
footer.footer-pro {
color: #f6f3ff;
background:
radial-gradient(900px 480px at 20% -10%, rgba(255,210,255,.12), transparent 60%),
radial-gradient(700px 380px at 80% 120%, rgba(180,140,255,.15), transparent 55%),
linear-gradient(180deg, #3a2e52 0%, #241c38 100%);
border-top: 1px solid rgba(255,255,255,.08);
position: relative;
overflow: hidden;
}
/* Efecto de partículas sutiles */
footer.footer-pro::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image:
radial-gradient(circle at 20% 30%, rgba(255,255,255,0.03) 2px, transparent 2px),
radial-gradient(circle at 80% 70%, rgba(255,255,255,0.03) 1px, transparent 1px);
background-size: 40px 40px, 30px 30px;
pointer-events: none;
}
.footer-pro .fp-wrap {
padding: 64px 0 40px;
position: relative;
z-index: 1;
}
.footer-pro h5, .footer-pro h6 {
color:#ffffff;
position: relative;
display: inline-block;
}
.footer-pro h6::after {
content: "";
position: absolute;
bottom: -8px;
left: 0;
width: 30px;
height: 2px;
background: linear-gradient(90deg, #a78bfa, transparent);
border-radius: 2px;
}
.footer-pro .fp-muted { color: #cbbbe6; }
.footer-pro a { color: #efe7ff; text-decoration: none; transition: all 0.3s ease; }
.footer-pro a:hover { color: #ffffff; text-decoration: none; }
/* Badge marca mejorado */
.footer-pro .fp-badge {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 18px;
border-radius: 999px;
font-weight: 800;
letter-spacing: .2px;
background: rgba(255,255,255,.14);
color: #fff;
border: 1px solid rgba(255,255,255,.28);
box-shadow: 0 6px 26px rgba(0,0,0,.25);
backdrop-filter: blur(10px);
position: relative;
overflow: hidden;
transition: all 0.3s ease;
}
.footer-pro .fp-badge::before {
content: "";
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
transition: left 0.7s ease;
}
.footer-pro .fp-badge:hover::before {
left: 100%;
}
.footer-pro .fp-badge:hover {
transform: translateY(-2px);
box-shadow: 0 10px 30px rgba(0,0,0,.35);
}
.footer-pro .fp-badge i {
font-size: 1.1em;
}
/* Social mejorado */
.footer-pro .fp-social {
display: flex;
gap: 12px;
}
.footer-pro .fp-social a {
width: 44px;
height: 44px;
display: grid;
place-items: center;
border-radius: 999px;
border: 1px solid rgba(255,255,255,.22);
background: rgba(255,255,255,.08);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.footer-pro .fp-social a::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, rgba(255,255,255,0.15), transparent);
opacity: 0;
transition: opacity 0.3s ease;
}
.footer-pro .fp-social a:hover {
transform: translateY(-4px);
background: rgba(255,255,255,.16);
box-shadow: 0 10px 30px rgba(0,0,0,.35);
}
.footer-pro .fp-social a:hover::before {
opacity: 1;
}
/* Lista de enlaces mejorada */
.footer-pro .fp-links li {
margin-bottom: 12px;
position: relative;
padding-left: 0;
transition: padding-left 0.3s ease;
}
.footer-pro .fp-links li:hover {
padding-left: 8px;
}
.footer-pro .fp-links li::before {
content: "•";
color: #a78bfa;
position: absolute;
left: -12px;
opacity: 0;
transition: opacity 0.3s ease;
}
.footer-pro .fp-links li:hover::before {
opacity: 1;
}
.footer-pro .fp-links a {
color: #e9ddff;
display: inline-block;
transition: all 0.3s ease;
}
.footer-pro .fp-links a:hover {
color: #ffffff;
transform: translateX(4px);
}
/* CTA mejorado */
.footer-pro .fp-cta {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 24px;
border-radius: 999px;
border: 1px solid rgba(255,255,255,.55);
color: #ffffff;
background: transparent;
font-weight: 700;
transition: all 0.4s ease;
position: relative;
overflow: hidden;
}
.footer-pro .fp-cta::before {
content: "";
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
transition: left 0.7s ease;
}
.footer-pro .fp-cta:hover::before {
left: 100%;
}
.footer-pro .fp-cta:hover {
background: #ffffff;
color: #2c2146;
text-decoration: none;
transform: translateY(-2px);
box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}
/* Línea legal mejorada */
.footer-pro .fp-legal {
border-top: 1px solid rgba(255,255,255,.18);
margin-top: 36px;
padding-top: 20px;
position: relative;
}
.footer-pro .fp-legal::before {
content: "";
position: absolute;
top: -1px;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 1px;
background: linear-gradient(90deg, transparent, #a78bfa, transparent);
}
/* Responsive mejorado */
@media (min-width: 992px) {
.footer-pro .fp-links {
columns: 2;
column-gap: 26px;
}
.footer-pro .fp-links li {
break-inside: avoid;
}
}
@media (max-width: 991px) {
.footer-pro .fp-wrap {
padding: 48px 0 32px;
}
.footer-pro .col-6 {
margin-bottom: 24px;
}
.footer-pro .fp-legal {
text-align: center;
}
}
bolsosmdq.com.ar
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.csshttps://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap:root {
--brand-primary: #1a73e8;
--brand-secondary: #34a853;
--brand-accent: #fbbc05;
--brand-tertiary: #ea4335;
--brand-gradient: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
--brand-gradient-reverse: linear-gradient(135deg, var(--brand-secondary), var(--brand-primary));
--dark: #0f172a;
--dark-light: #1e293b;
--muted: #64748b;
--light: #f8fafc;
--card: #ffffff;
--shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
--shadow-lg: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
--radius: 16px;
--radius-lg: 24px;
--transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
--thumb: 500px;
}
@media (max-width: 992px) { :root { --thumb: 320px; } }
@media (max-width: 576px) { :root { --thumb: 260px; } }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
font-family: 'Inter', system-ui, -apple-system, sans-serif;
color: var(--dark);
background: var(--light);
line-height: 1.6;
overflow-x: hidden;
}
.section { padding: 100px 0; }
.section-title {
font-weight: 900;
letter-spacing: -0.03em;
margin-bottom: 1rem;
background: var(--brand-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.section-sub {
color: var(--muted);
margin-bottom: 2rem;
font-size: 1.2rem;
max-width: 600px;
}
/* Navbar */
.navbar {
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
padding: 1rem 0;
transition: var(--transition);
}
.navbar.scrolled {
padding: 0.5rem 0;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}
.navbar-brand {
font-weight: 900;
font-size: 1.5rem;
background: var(--brand-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
display: flex;
align-items: center;
gap: 8px;
}
.brand-dot {
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background: var(--brand-gradient);
animation: pulse 2s infinite;
}
@keyframes pulse {
0% { transform: scale(1); opacity: 1; }
50% { transform: scale(1.2); opacity: 0.7; }
100% { transform: scale(1); opacity: 1; }
}
.navbar .nav-link {
font-weight: 600;
color: var(--dark);
position: relative;
transition: var(--transition);
}
.navbar .nav-link::after {
content: '';
position: absolute;
width: 0;
height: 2px;
bottom: 0;
left: 0;
background: var(--brand-gradient);
transition: var(--transition);
}
.navbar .nav-link:hover::after,
.navbar .nav-link.active::after {
width: 100%;
}
.navbar .nav-link:hover,
.navbar .nav-link.active {
color: var(--brand-primary);
}
.navbar-toggler {
border: none;
padding: 4px 8px;
}
.navbar-toggler:focus {
box-shadow: none;
}
/* Buttons */
.btn {
border-radius: 12px;
font-weight: 600;
padding: 12px 24px;
transition: var(--transition);
border: none;
position: relative;
overflow: hidden;
}
.btn-primary {
background: var(--brand-gradient);
box-shadow: 0 4px 14px 0 rgba(26, 115, 232, 0.3);
}
.btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 8px 25px 0 rgba(26, 115, 232, 0.4);
}
.btn-outline-secondary {
border: 2px solid var(--muted);
color: var(--muted);
}
.btn-outline-secondary:hover {
border-color: var(--brand-primary);
background: transparent;
color: var(--brand-primary);
transform: translateY(-2px);
}
.btn-lg {
padding: 16px 32px;
font-size: 1.1rem;
}
/* Hero */
.hero {
padding: 140px 0 100px;
background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
position: relative;
overflow: hidden;
}
.hero::before {
content: '';
position: absolute;
width: 500px;
height: 500px;
border-radius: 50%;
background: var(--brand-gradient);
opacity: 0.05;
top: -250px;
right: -250px;
z-index: 0;
}
.hero::after {
content: '';
position: absolute;
width: 300px;
height: 300px;
border-radius: 50%;
background: var(--brand-gradient-reverse);
opacity: 0.05;
bottom: -150px;
left: -150px;
z-index: 0;
}
.hero-content {
position: relative;
z-index: 1;
}
.badge-soft {
background: rgba(26, 115, 232, 0.1);
color: var(--brand-primary);
border: 1px solid rgba(26, 115, 232, 0.2);
padding: 8px 16px;
border-radius: 50px;
font-weight: 700;
font-size: 0.9rem;
display: inline-block;
margin-bottom: 1.5rem;
}
.hero h1 {
font-weight: 900;
font-size: 3.5rem;
line-height: 1.1;
letter-spacing: -0.03em;
margin-bottom: 1.5rem;
}
.hero p.lead {
font-size: 1.3rem;
color: var(--muted);
margin-bottom: 2rem;
max-width: 600px;
}
.badge {
border-radius: 50px;
padding: 8px 16px;
font-weight: 600;
margin-right: 8px;
margin-bottom: 10px;
}
.hero-badges {
margin-bottom: 2rem;
}
.hero-image {
border-radius: var(--radius-lg);
overflow: hidden;
box-shadow: var(--shadow-lg);
transform: perspective(1000px) rotateY(-5deg) rotateX(5deg);
transition: var(--transition);
}
.hero-image:hover {
transform: perspective(1000px) rotateY(0) rotateX(0);
}
/* Cards */
.card-soft {
background: var(--card);
border-radius: var(--radius);
box-shadow: var(--shadow);
border: none;
overflow: hidden;
transition: var(--transition);
height: 100%;
}
.card-soft:hover {
transform: translateY(-10px);
box-shadow: var(--shadow-lg);
}
.card-icon {
width: 70px;
height: 70px;
border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 1.5rem;
font-size: 1.8rem;
background: var(--brand-gradient);
color: white;
}
.card-soft h5 {
font-weight: 700;
margin-bottom: 1rem;
}
/* Checklists */
.checklist li {
display: flex;
gap: 1rem;
align-items: flex-start;
margin: 0.75rem 0;
}
.check {
color: var(--brand-secondary);
flex-shrink: 0;
margin-top: 2px;
}
/* Ticker */
#trabajos {
position: relative;
overflow: hidden;
}
#trabajos .ticker-wrap {
position: relative;
padding: 0 60px;
}
#trabajos .rail {
display: flex;
gap: 20px;
padding-bottom: 10px;
overflow-x: auto;
scroll-behavior: smooth;
scrollbar-width: none;
}
#trabajos .rail::-webkit-scrollbar {
display: none;
}
#trabajos .tile {
flex: 0 0 auto;
width: var(--thumb);
height: var(--thumb);
background: var(--card);
border-radius: var(--radius);
display: grid;
place-items: center;
box-shadow: var(--shadow);
overflow: hidden;
transition: var(--transition);
}
#trabajos .tile:hover {
transform: scale(1.05);
box-s
/* ...cortado... */
/* Dejá esto solo si tu index no define estas utilidades */
.card-soft{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;box-shadow:0 8px 30px rgba(0,0,0,.04)}
.checklist li{display:flex;gap:.6rem;align-items:flex-start;margin:.4rem 0}
.check{color:#1fa36a}
.text-gradient{
background: linear-gradient(90deg, #1fa36a, #ffc107, #e53935);
-webkit-background-clip: text; background-clip: text; color: transparent;
}
.card-soft{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;box-shadow:0 8px 30px rgba(0,0,0,.04)}
.section{padding:72px 0}
.section-title{font-weight:800; letter-spacing:-.02em}
.section-sub{color:#6b7280}
/* Fullscreen local del contenedor */
.store-fullscreen {
position: fixed !important;
inset: 12px !important;
z-index: 1050 !important;
background: #fff;
padding: 12px;
border-radius: 14px;
box-shadow: 0 20px 60px rgba(0,0,0,.25);
}
.store-fullscreen iframe { height: calc(100vh - 48px) !important; }