piscinasmjhogar.com.ar
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css/* ============================================
DESIGN SYSTEM - PREMIUM CONSTRUCTION THEME
============================================ */
:root {
/* Core palette - respecting user colors */
--accent: #0a2b4a;
--accent-light: #0f3d6b;
--accent-glow: rgba(10, 43, 74, 0.15);
--gold: #d4a855;
--gold-soft: rgba(212, 168, 85, 0.12);
/* Neutrals */
--bg: #ffffff;
--bg-warm: #faf9f7;
--bg-cool: #f5f7fa;
--text: #0d0d0d;
--text-secondary: #4a5568;
--text-muted: #718096;
--line: #e8edf2;
--line-soft: rgba(10, 43, 74, 0.06);
/* Effects */
--shadow-sm: 0 2px 8px rgba(10, 43, 74, 0.04);
--shadow-md: 0 8px 32px rgba(10, 43, 74, 0.08);
--shadow-lg: 0 24px 64px rgba(10, 43, 74, 0.12);
--shadow-glow: 0 0 60px rgba(10, 43, 74, 0.15);
--shadow-gold: 0 8px 32px rgba(212, 168, 85, 0.25);
/* Radius */
--radius-sm: 12px;
--radius-md: 20px;
--radius-lg: 28px;
--radius-xl: 40px;
/* Transitions */
--ease-out: cubic-bezier(0.16, 1, 0.3, 1);
--ease-elastic: cubic-bezier(0.68, -0.55, 0.265, 1.55);
--duration: 0.5s;
--duration-fast: 0.3s;
}
/* ============================================
BASE RESET & TYPOGRAPHY
============================================ */
*, *::before, *::after {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
body {
margin: 0;
font-family: 'Manrope', system-ui, sans-serif;
font-size: 16px;
line-height: 1.7;
color: var(--text);
background: var(--bg);
overflow-x: hidden;
}
img {
max-width: 100%;
display: block;
}
a {
text-decoration: none;
color: inherit;
transition: color var(--duration-fast) var(--ease-out);
}
/* ============================================
UTILITY CLASSES
============================================ */
.section {
padding: 120px 0;
position: relative;
}
.section-soft {
background: var(--bg-warm);
}
.eyebrow {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 10px 20px;
border-radius: 100px;
background: linear-gradient(135deg, var(--accent-glow), var(--gold-soft));
color: var(--accent);
font-size: 0.75rem;
font-weight: 800;
letter-spacing: 0.15em;
text-transform: uppercase;
border: 1px solid var(--line-soft);
backdrop-filter: blur(10px);
}
.eyebrow::before {
content: '';
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--gold);
box-shadow: 0 0 12px var(--gold);
animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { opacity: 1; transform: scale(1); }
50% { opacity: 0.6; transform: scale(1.2); }
}
.section-title {
font-family: 'Sora', sans-serif;
font-size: clamp(2.2rem, 4vw, 3.5rem);
font-weight: 800;
line-height: 1.1;
letter-spacing: -0.03em;
margin: 24px 0 16px;
color: var(--text);
}
.section-title .accent {
color: var(--accent);
}
.section-subtitle {
font-size: 1.1rem;
line-height: 1.8;
color: var(--text-secondary);
max-width: 700px;
margin: 0 auto;
}
/* ============================================
NAVBAR - FLOATING GLASS DESIGN
============================================ */
.navbar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1000;
padding: 16px 0;
transition: all var(--duration) var(--ease-out);
}
.navbar.scrolled {
padding: 10px 0;
}
.navbar-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
border: 1px solid rgba(255, 255, 255, 0.6);
border-radius: var(--radius-lg);
padding: 12px 24px;
box-shadow: var(--shadow-md);
transition: all var(--duration) var(--ease-out);
}
.navbar.scrolled .navbar-inner {
border-radius: var(--radius-md);
box-shadow: var(--shadow-lg);
}
.navbar-brand {
display: flex;
align-items: center;
gap: 14px;
flex: 0 1 auto;
min-width: 0;
white-space: nowrap;
}
.navbar-brand img {
height: 44px;
width: auto;
transition: transform var(--duration-fast) var(--ease-out);
}
.navbar-brand:hover img {
transform: scale(1.05);
}
.brand-copy {
display: flex;
flex-direction: column;
line-height: 1.15;
}
.brand-copy strong {
font-size: 1rem;
font-weight: 800;
color: var(--text);
letter-spacing: -0.02em;
}
.brand-copy span {
font-size: 0.78rem;
font-weight: 600;
color: var(--accent);
letter-spacing: 0.02em;
}
.navbar-nav {
display: flex !important;
flex-direction: row !important;
flex-wrap: nowrap;
align-items: center;
justify-content: center;
gap: 6px;
list-style: none;
margin: 0;
padding: 0;
min-width: 0;
width: auto;
white-space: nowrap;
}
.navbar-nav li {
display: flex;
flex: 0 0 auto;
}
.nav-link {
position: relative;
padding: 10px 18px;
font-size: 0.9rem;
font-weight: 600;
color: var(--text-secondary);
border-radius: var(--radius-sm);
transition: all var(--duration-fast) var(--ease-out);
}
.nav-link::after {
content: '';
position: absolute;
bottom: 6px;
left: 50%;
transform: translateX(-50%) scaleX(0);
width: 20px;
height: 2px;
background: var(--gold);
border-radius: 2px;
transition: transform var(--duration-fast) var(--ease-out);
}
.nav-link:hover,
.nav-link.active {
color: var(--accent);
}
.nav-link:hover::after,
.nav-link.active::after {
transform: translateX(-50%) scaleX(1);
}
.navbar-toggler {
display: none;
width: 44px;
height: 44px;
border: none;
background: var(--bg-cool);
border-radius: var(--radius-sm);
cursor: pointer;
position: relative;
}
.navbar-toggler span {
position: absolute;
left: 50%;
transform: translateX(-50%);
width: 20px;
height: 2px;
background: var(--accent);
border-radius: 2px;
transition: all var(--duration-fast) var(--ease-out);
}
.navbar-toggler span:nth-child(1) { top: 15px; }
.navbar-toggler span:nth-child(2) { top: 21px; }
.navbar-toggler span:nth-child(3) { top: 27px; }
.navbar-toggler.active span:nth-child(1) {
top: 21px;
transform: translateX(-50%) rotate(45deg);
}
.navbar-toggler.active span:nth-child(2) {
opacity: 0;
}
.navbar-toggler.active span:nth-child(3) {
top: 21px;
transform: translateX(-50%) rotate(-45deg);
}
/* ============================================
BUTTONS - REFINED INTERACTIONS
============================================ */
.
/* ...cortado... */
.btn-galeria-completa{
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
}
:root{
--wa:#25D366;
--wa-dark:#1ebe5d;
--wa-darker:#128C7E;
--light-bg:#ffffff;
--light-bg-soft:#f6f8f7;
--light-border:#dde4df;
--dark-text:#1c1f1d;
--muted-text:#6c756f;
--ig:#E4405F;
--ig-dark:#C13584;
}
.ig-float{
position:fixed;
right:18px;
bottom:92px;
z-index:9998;
width:54px;
height:54px;
border-radius:50%;
display:grid;
place-items:center;
color:#fff;
text-decoration:none;
background:linear-gradient(45deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
box-shadow:0 10px 30px rgba(0,0,0,.25);
transition:transform .25s, box-shadow .25s, opacity .25s;
}
.ig-float:hover{
transform:translateY(-2px) scale(1.04);
box-shadow:0 14px 36px rgba(0,0,0,.35);
}
.wa-float{
position:fixed;
right:18px;
bottom:18px;
z-index:9999;
font-family:inherit;
}
.wa-btn{
background:#25D366;
color:#fff;
border:0;
width:60px;
height:60px;
border-radius:50%;
display:grid;
place-items:center;
box-shadow:0 8px 24px rgba(0,0,0,.18);
cursor:pointer;
transition:transform .3s, box-shadow .3s, background .3s;
position:relative;
overflow:hidden;
z-index:9999;
}
.wa-btn::after{
content:"";
position:absolute;
inset:0;
background:radial-gradient(circle at 50% 50%, rgba(255,255,255,.35), rgba(255,255,255,0) 70%);
opacity:0;
transition:opacity .3s;
}
.wa-btn:hover{
background:var(--wa-dark);
transform:translateY(-3px) scale(1.05);
box-shadow:0 14px 36px rgba(0,0,0,.28);
}
.wa-btn:hover::after{
opacity:.35;
}
.wa-card{
position:absolute;
right:0;
bottom:74px;
width:min(360px,92vw);
background:var(--light-bg);
color:var(--dark-text);
border-radius:18px;
overflow:hidden;
box-shadow:0 18px 60px rgba(0,0,0,.25);
border:1px solid var(--light-border);
transform:translateY(10px);
opacity:0;
transition:transform .3s, opacity .3s;
z-index:10000;
}
.wa-card[aria-modal="true"]{
transform:translateY(0);
opacity:1;
}
.wa-head{
display:flex;
align-items:center;
gap:12px;
padding:14px 16px;
background:linear-gradient(135deg,#25D366,#128C7E);
border-bottom:1px solid rgba(255,255,255,.12);
color:#fff;
}
.wa-avatar{
width:40px;
height:40px;
border-radius:10px;
background:rgba(255,255,255,.15);
display:grid;
place-items:center;
border:1px solid rgba(255,255,255,.18);
overflow:hidden;
}
.wa-title{
font-weight:700;
font-size:1.02rem;
color:#fff;
}
.wa-status{
font-size:.85rem;
color:rgba(255,255,255,.88);
display:flex;
align-items:center;
gap:6px;
}
.wa-status::before{
content:"";
width:8px;
height:8px;
border-radius:50%;
background:#d4ffd8;
}
.wa-close{
margin-left:auto;
background:transparent;
color:#fff;
border:0;
font-size:24px;
cursor:pointer;
opacity:.88;
width:32px;
height:32px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
transition:.2s;
}
.wa-close:hover{
opacity:1;
background:rgba(255,255,255,.12);
}
.wa-body{
padding:12px 14px;
max-height:40vh;
overflow:auto;
background:var(--light-bg-soft);
display:flex;
flex-direction:column;
gap:8px;
}
.wa-bubble{
max-width:88%;
padding:9px 11px;
border-radius:14px;
line-height:1.35;
box-shadow:0 3px 10px rgba(0,0,0,.06);
animation:fadeIn .25s ease;
font-size:.9rem;
}
@keyframes fadeIn{
from{opacity:0;transform:translateY(5px)}
to{opacity:1;transform:none}
}
.wa-bot{
background:#fff;
border:1px solid var(--light-border);
align-self:flex-start;
border-bottom-left-radius:4px;
}
.wa-user{
background:var(--wa);
color:#fff;
align-self:flex-end;
border-bottom-right-radius:4px;
}
.wa-compose{
display:grid;
grid-template-columns:1fr auto;
gap:8px;
padding:10px 12px;
background:#fff;
border-top:1px solid var(--light-border);
}
.wa-compose textarea{
resize:none;
border-radius:12px;
padding:10px 12px;
border:1px solid var(--light-border);
background:#f9fbfa;
color:var(--dark-text);
outline:none;
min-height:44px;
font-family:inherit;
font-size:.9rem;
transition:.2s;
}
.wa-compose textarea:focus{
border-color:var(--wa);
box-shadow:0 0 0 2px rgba(37,211,102,.15);
background:#fff;
}
.wa-send{
background:var(--wa);
color:#fff;
border:0;
border-radius:12px;
padding:0 16px;
font-weight:600;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
transition:.2s;
}
.wa-send:hover{
background:var(--wa-dark);
transform:scale(1.04);
}
.wa-body::-webkit-scrollbar{width:6px;}
.wa-body::-webkit-scrollbar-track{background:rgba(0,0,0,.03);border-radius:3px;}
.wa-body::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:3px;}
.wa-body::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.18);}
@media (max-width:480px){
.ig-float{right:12px;bottom:86px;width:52px;height:52px;}
.wa-float{right:12px;bottom:12px;}
.wa-card{width:calc(100vw - 24px);right:0;}
}
estudiojuridicora.com
https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;800;900&family=DM+Sans:opsz,[email protected],300;9..40,400;9..40,500;9..40,600&display=swaphttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css/* ============================================
VARIABLES & RESET
============================================ */
:root {
--navy: #071d35;
--navy-mid: #0a2b4a;
--blue: #124b7a;
--blue-light: #1e6aab;
--accent: #1697af; /* gold accent */
--accent-dim: rgba(200,169,110,.15);
--cream: #f8f5ef;
--off-white: #fafcff;
--text: #0b1c2e;
--muted: #5a6e84;
--border: rgba(10,43,74,.1);
--r-card: 28px;
--r-btn: 60px;
--ease: cubic-bezier(.22,.9,.36,1);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
html, body {
max-width: 100%;
overflow-x: hidden;
}
body {
font-family: 'DM Sans', system-ui, sans-serif;
background: #fff;
color: var(--text);
width: 100%;
max-width: 100%;
overflow-x: hidden;
-webkit-font-smoothing: antialiased;
}
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--cream); }
::-webkit-scrollbar-thumb { background: var(--navy-mid); border-radius: 12px; }
img { display: block; max-width: 100%; }
a { text-decoration: none; color: inherit; }
/* ============================================
TYPOGRAPHY
============================================ */
h1, h2, h3, .display { font-family: 'Playfair Display', Georgia, serif; }
.section-title {
font-size: clamp(2rem, 4.5vw, 3.2rem);
font-weight: 800;
color: var(--navy);
line-height: 1.12;
letter-spacing: -.02em;
margin-bottom: 16px;
}
.section-subtitle {
font-size: 1.05rem;
color: var(--muted);
max-width: 640px;
margin: 0 auto;
line-height: 1.65;
font-weight: 400;
}
.eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 5px 18px;
border-radius: 60px;
font-size: 0.72rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: .1em;
color: var(--accent);
background: var(--accent-dim);
border: 1px solid rgba(200,169,110,.3);
margin-bottom: 20px;
}
/* ============================================
SECTIONS
============================================ */
.section { padding: 112px 0; position: relative; }
.section-alt { background: var(--cream); }
/* ============================================
BUTTONS
============================================ */
.btn-main {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 0 30px;
min-height: 54px;
border-radius: var(--r-btn);
font-weight: 600;
font-size: .9rem;
transition: all .35s var(--ease);
border: none;
cursor: pointer;
text-decoration: none;
letter-spacing: .01em;
}
.btn-primary-dark {
background: var(--navy);
color: #fff;
box-shadow: 0 12px 32px -8px rgba(7,29,53,.35);
}
.btn-primary-dark:hover {
background: var(--blue);
transform: translateY(-3px);
box-shadow: 0 20px 40px -10px rgba(7,29,53,.45);
color: #fff;
}
.btn-gold {
background: var(--accent);
color: var(--navy);
font-weight: 700;
box-shadow: 0 10px 28px -6px rgba(200,169,110,.4);
}
.btn-gold:hover {
background: #8dd4b3;
transform: translateY(-3px);
box-shadow: 0 18px 36px -8px rgba(200,169,110,.55);
color: var(--navy);
}
.btn-outline-dark {
background: transparent;
color: var(--navy);
border: 1.5px solid rgba(10,43,74,.25);
}
.btn-outline-dark:hover {
border-color: var(--navy);
background: rgba(10,43,74,.04);
transform: translateY(-2px);
}
/* ============================================
NAVBAR
============================================ */
.navbar {
padding: .75rem 0;
transition: all .3s ease;
background: rgba(255,255,255,.98);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
box-shadow: 0 4px 30px rgba(0,0,0,.06);
}
.navbar.scrolled {
background: rgba(255,255,255,.98);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
box-shadow: 0 4px 30px rgba(0,0,0,.06);
padding: .5rem 0;
}
.navbar-toggler {
width: 46px;
height: 46px;
border-radius: 14px;
border: 1px solid rgba(10,43,74,.16) !important;
background: #fff;
display: inline-flex;
align-items: center;
justify-content: center;
box-shadow: 0 8px 18px rgba(10,43,74,.08);
}
.navbar-toggler:focus {
box-shadow: 0 0 0 4px rgba(200,169,110,.18);
}
.navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%287,29,53,0.95%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.4' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
width: 1.35em;
height: 1.35em;
}
.navbar-brand {
display: flex;
align-items: center;
gap: 10px;
}
.navbar-brand img {
height: 40px;
width: auto;
flex: 0 0 auto;
}
.brand-title {
display: block;
font-family: 'Playfair Display', serif;
font-weight: 700;
font-size: 0.95rem;
color: var(--navy);
line-height: 1.02;
margin: 0;
}
.brand-subtitle {
display: block;
font-size: .42rem;
font-weight: 500;
color: var(--muted);
letter-spacing: .03em;
text-transform: uppercase;
line-height: 1.05;
margin: 1px 0 0;
}
.navbar-nav .nav-link {
font-weight: 500;
color: var(--navy);
padding: .55rem 1rem;
border-radius: 40px;
font-size: .88rem;
transition: all .2s;
}
.navbar-nav .nav-link:hover {
background: rgba(10,43,74,.06);
color: var(--blue);
}
.navbar-cta {
margin-left: 12px;
}
.brand-text {
display: inline-flex;
flex-direction: column;
justify-content: center;
gap: 1px;
min-width: 0;
line-height: 1;
}
/* ============================================
HERO
============================================ */
.hero {
position: relative;
min-height: 100vh;
display: flex;
align-items: center;
background: var(--navy);
overflow: hidden;
padding: 140px 0 100px;
}
/* Animated bg grid */
.hero-grid {
position: absolute;
inset: 0;
background-image:
linear-gradient(rgba(200,169,110,.07) 1px, transparent 1px),
linear-gradient(90deg, rgba(200,169,110,.07) 1px, transparent 1px);
background-size: 60px 60px;
pointer-events: none;
animation: gridDrift 30s linear infinite;
}
@keyframes gridDrift {
from { background-position: 0 0; }
to { background-position: 60px 60px; }
}
.hero-glow {
position: absolute;
border-radius: 50%;
pointer-events: none;
filter: blur(90px);
}
.hero-glow-1 {
width: 500px; height: 500px;
background: radial-gradient(circle, rgba(18,75,122,.55), transparent 70%);
top: -100px; right: -80px;
}
.hero-glow-2 {
width: 350px; height: 350px;
background: radial-gradient(circle, rgba(200,169,110,.18), tra
/* ...cortado... */
.flashes-loop-section{
background: linear-gradient(180deg, #ffffff 0%, #f8f5ef 100%);
overflow: hidden;
position: relative;
}
.flashes-loop-wrap{
max-width: 1120px;
margin: 0 auto;
}
.flashes-stage{
position: relative;
min-height: 470px;
display: flex;
align-items: center;
justify-content: center;
isolation: isolate;
}
.flashes-stage::before{
content: "";
position: absolute;
left: 50%;
bottom: 10px;
transform: translateX(-50%);
width: min(760px, 82%);
height: 120px;
background: radial-gradient(circle, rgba(10,43,74,.10) 0%, rgba(10,43,74,.04) 42%, transparent 72%);
filter: blur(22px);
z-index: 0;
pointer-events: none;
}
.flash-loop-card{
position: absolute;
width: clamp(250px, 28vw, 355px);
aspect-ratio: 4 / 5;
border-radius: 30px;
background:
radial-gradient(circle at top right, rgba(200,169,110,.16), transparent 35%),
linear-gradient(135deg, #fcfcfc 0%, #f5f7fa 100%);
border: 1px solid rgba(10,43,74,.06);
box-shadow: 0 18px 40px rgba(7,29,53,.10);
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
padding: 18px;
will-change: transform, opacity, filter;
transition:
transform 1s cubic-bezier(.22,.8,.2,1),
opacity 1s ease,
filter 1s ease,
box-shadow 1s ease;
backface-visibility: hidden;
}
.flash-loop-card::before{
content:"";
position:absolute;
inset:0;
background: linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 32%);
pointer-events:none;
z-index:1;
}
.flash-loop-card::after{
content:"";
position:absolute;
inset:-10%;
background: linear-gradient(115deg, transparent 24%, rgba(255,255,255,.70) 50%, transparent 76%);
transform: translateX(-140%);
opacity: 0;
pointer-events:none;
z-index:2;
}
.flash-loop-card img{
position: relative;
z-index: 0;
width: 100%;
height: 100%;
object-fit: contain;
object-position: center;
display: block;
filter: drop-shadow(0 16px 24px rgba(10,43,74,.14));
pointer-events: none;
user-select: none;
transition: transform 1s cubic-bezier(.22,.8,.2,1), filter 1s ease;
}
.flash-pos-center{
transform: translateX(0) scale(1) rotate(0deg);
opacity: 1;
z-index: 5;
filter: blur(0) saturate(1.08) brightness(1.02);
box-shadow: 0 28px 64px rgba(7,29,53,.20);
animation: flashCenterBoom .92s cubic-bezier(.2,.88,.24,1);
}
.flash-pos-center::after{
animation: flashFrontSweep .9s ease;
}
.flash-pos-center img{
transform: scale(1.03);
filter: drop-shadow(0 20px 30px rgba(10,43,74,.18));
}
.flash-pos-right{
transform: translateX(265px) scale(.88) rotate(4deg);
opacity: .62;
z-index: 3;
filter: blur(5px) saturate(.72) brightness(.92);
box-shadow: 0 12px 22px rgba(7,29,53,.07);
}
.flash-pos-right img{
transform: scale(.96);
filter: drop-shadow(0 10px 16px rgba(10,43,74,.10));
}
.flash-pos-left{
transform: translateX(-265px) scale(.88) rotate(-4deg);
opacity: .62;
z-index: 2;
filter: blur(5px) saturate(.72) brightness(.92);
box-shadow: 0 12px 22px rgba(7,29,53,.07);
}
.flash-pos-left img{
transform: scale(.96);
filter: drop-shadow(0 10px 16px rgba(10,43,74,.10));
}
.flash-pos-hidden{
transform: translateX(430px) scale(.74) rotate(8deg);
opacity: 0;
z-index: 1;
filter: blur(14px) saturate(.55) brightness(.86);
pointer-events: none;
box-shadow: none;
}
.flash-pos-hidden-left{
transform: translateX(-430px) scale(.74) rotate(-8deg);
opacity: 0;
z-index: 1;
filter: blur(14px) saturate(.55) brightness(.86);
pointer-events: none;
box-shadow: none;
}
@keyframes flashCenterBoom{
0%{
transform: translateX(110px) scale(.68) rotate(10deg);
opacity: 0;
filter: blur(14px) brightness(1.08);
}
38%{
transform: translateX(-18px) scale(1.10) rotate(-2.6deg);
opacity: 1;
filter: blur(0) brightness(1.06);
}
60%{
transform: translateX(8px) scale(.985) rotate(.8deg);
}
78%{
transform: translateX(-4px) scale(1.02) rotate(-.35deg);
}
100%{
transform: translateX(0) scale(1) rotate(0deg);
opacity: 1;
filter: blur(0) brightness(1);
}
}
@keyframes flashFrontSweep{
0%{
transform: translateX(-140%);
opacity: 0;
}
18%{
opacity: .9;
}
100%{
transform: translateX(140%);
opacity: 0;
}
}
@media (max-width: 991px){
.flashes-stage{
min-height: 390px;
}
.flash-loop-card{
width: min(40vw, 295px);
border-radius: 26px;
}
.flash-pos-right{
transform: translateX(170px) scale(.86) rotate(4deg);
filter: blur(5px) saturate(.7) brightness(.92);
}
.flash-pos-left{
transform: translateX(-170px) scale(.86) rotate(-4deg);
filter: blur(5px) saturate(.7) brightness(.92);
}
.flash-pos-hidden{
transform: translateX(300px) scale(.72) rotate(8deg);
}
.flash-pos-hidden-left{
transform: translateX(-300px) scale(.72) rotate(-8deg);
}
}
@media (max-width: 640px){
.flashes-loop-wrap .text-center{
margin-bottom: 2rem !important;
}
.flashes-stage{
min-height: 315px;
}
.flash-loop-card{
width: min(72vw, 276px);
padding: 14px;
border-radius: 22px;
}
.flash-pos-center{
transform: translateX(0) scale(1);
}
.flash-pos-right{
transform: translateX(68px) scale(.82) rotate(4deg);
opacity: .38;
filter: blur(7px) saturate(.66) brightness(.9);
}
.flash-pos-left{
transform: translateX(-68px) scale(.82) rotate(-4deg);
opacity: .38;
filter: blur(7px) saturate(.66) brightness(.9);
}
.flash-pos-hidden,
.flash-pos-hidden-left{
opacity: 0;
}
@keyframes flashCenterBoom{
0%{
transform: translateX(75px) scale(.7) rotate(9deg);
opacity: 0;
filter: blur(12px) brightness(1.06);
}
42%{
transform: translateX(-8px) scale(1.08) rotate(-1.6deg);
opacity: 1;
filter: blur(0);
}
100%{
transform: translateX(0) scale(1) rotate(0deg);
opacity: 1;
filter: blur(0);
}
}
}
:root{
--wa:#25D366;
--wa-dark:#1fb85a;
--wa-darker:#189a4a;
--light-bg:#ffffff;
--light-bg-soft:#f6f8f7;
--light-border:#dde4df;
--dark-text:#1c1f1d;
--muted-text:#6c756f;
}
/* IG button */
.ig-float{
position:fixed; right:18px; bottom:92px;
z-index:9998;
width:54px; height:54px; border-radius:50%;
display:grid; place-items:center; color:#fff; text-decoration:none;
background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
box-shadow:0 10px 30px rgba(0,0,0,.25);
transition:transform .25s, box-shadow .25s, opacity .25s;
}
.ig-float:hover{
transform:translateY(-2px) scale(1.04);
box-shadow:0 14px 36px rgba(0,0,0,.35);
}
/* WhatsApp flotante */
.wa-float{
position:fixed; right:18px; bottom:18px;
z-index:9999; font-family:inherit;
}
.wa-btn{
background:var(--wa);
color:#fff;
border:0;
width:60px; height:60px; border-radius:50%;
display:grid; place-items:center;
box-shadow:0 10px 30px rgba(0,0,0,.22);
cursor:pointer; transition:transform .3s, box-shadow .3s, filter .3s;
position:relative; overflow:hidden;
z-index:9999;
}
.wa-btn:hover{
transform:translateY(-3px) scale(1.05);
box-shadow:0 14px 36px rgba(0,0,0,.28);
filter:brightness(.98);
}
.wa-card{
position:absolute; right:0; bottom:74px;
width:min(360px,92vw);
background:var(--light-bg);
color:var(--dark-text);
border-radius:18px;
overflow:hidden;
box-shadow:0 18px 60px rgba(0,0,0,.25);
border:1px solid var(--light-border);
transform:translateY(10px);
opacity:0;
transition:transform .3s, opacity .3s;
z-index:10000;
}
.wa-card[aria-modal="true"]{
transform:translateY(0);
opacity:1;
}
.wa-head{
display:flex; align-items:center; gap:12px;
padding:14px 16px;
background:linear-gradient(135deg, #ffffff, #ecf6f0);
border-bottom:1px solid var(--light-border);
}
.wa-avatar{
width:40px; height:40px; border-radius:10px;
background:#e9f7ef;
display:grid; place-items:center;
border:1px solid #cfeeda;
overflow:hidden;
}
.wa-title{
font-weight:800;
font-size:1.02rem;
color:var(--dark-text);
}
.wa-status{
font-size:.85rem;
color:var(--muted-text);
display:flex; align-items:center; gap:6px;
}
.wa-status::before{
content:""; width:8px; height:8px; border-radius:50%;
background:var(--wa);
}
.wa-close{
margin-left:auto;
background:transparent;
color:var(--muted-text);
border:0;
font-size:24px;
cursor:pointer;
opacity:.75;
width:32px; height:32px;
border-radius:50%;
display:flex; align-items:center; justify-content:center;
transition:.2s;
}
.wa-close:hover{
opacity:1;
background:rgba(0,0,0,.04);
}
.wa-body{
padding:12px 14px;
max-height:40vh;
overflow:auto;
background:var(--light-bg-soft);
display:flex;
flex-direction:column;
gap:8px;
}
.wa-bubble{
max-width:88%;
padding:9px 11px;
border-radius:14px;
line-height:1.35;
box-shadow:0 3px 10px rgba(0,0,0,.06);
animation:fadeIn .25s ease;
font-size:0.9rem;
}
@keyframes fadeIn{
from{opacity:0; transform:translateY(5px)}
to{opacity:1; transform:none}
}
.wa-bot{
background:#ffffff;
border:1px solid var(--light-border);
align-self:flex-start;
border-bottom-left-radius:4px;
}
.wa-user{
background:var(--wa);
color:#fff;
align-self:flex-end;
border-bottom-right-radius:4px;
}
.wa-compose{
display:grid;
grid-template-columns:1fr auto;
gap:8px;
padding:10px 12px;
background:#ffffff;
border-top:1px solid var(--light-border);
}
.wa-compose textarea{
resize:none;
border-radius:12px;
padding:10px 12px;
border:1px solid var(--light-border);
background:#f9fbfa;
color:var(--dark-text);
outline:none;
min-height:44px;
font-family:inherit;
font-size:0.9rem;
transition:.2s;
}
.wa-compose textarea:focus{
border-color:var(--wa);
box-shadow:0 0 0 2px rgba(37,211,102,.15);
background:#ffffff;
}
.wa-send{
background:var(--wa);
color:#ffffff;
border:0;
border-radius:12px;
padding:0 16px;
font-weight:700;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
transition:.2s;
}
.wa-send:hover{
background:var(--wa-dark);
transform:scale(1.04);
}
.wa-body::-webkit-scrollbar{ width:6px; }
.wa-body::-webkit-scrollbar-track{ background:rgba(0,0,0,.03); border-radius:3px; }
.wa-body::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.12); border-radius:3px; }
.wa-body::-webkit-scrollbar-thumb:hover{ background:rgba(0,0,0,.18); }
@media (max-width:480px){
.ig-float{ right:12px; bottom:86px; width:52px; height:52px; }
.wa-float{ right:12px; bottom:12px; }
.wa-card{ width:calc(100vw - 24px); right:0; }
}
netcell.com.ar
https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swaphttps://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css/* ===========
=================================
PREMIUM VISUAL UPGRADE - NET CELL
Manteniendo paleta: blanco, negro, acento #0a2b4a
Galería intacta, funcionalidad 100% original
============================================ */.about-reimagined {
position: relative;
}
.about-reimagined-grid {
display: grid;
grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
gap: 34px;
align-items: start;
}
.about-media-card {
position: relative;
overflow: hidden;
border-radius: 30px;
background: #fff;
border: 1px solid var(--line);
box-shadow: var(--shadow-premium);
padding: 14px;
display: flex;
align-items: center;
justify-content: center;
}
.about-loop-video {
width: 100%;
max-width: 100%;
height: auto;
max-height: 720px;
object-fit: contain;
display: block;
background: #fff;
border-radius: 22px;
}
.about-content-wrap {
display: flex;
flex-direction: column;
gap: 22px;
}
.about-copy-card {
background: #fff;
border: 1px solid var(--line);
border-radius: 28px;
box-shadow: var(--shadow-md);
padding: 34px;
}
.about-copy-card p {
margin: 0 0 18px;
color: var(--text-soft);
font-size: 1rem;
line-height: 1.8;
}
.about-copy-card p:last-child {
margin-bottom: 0;
}
.about-highlights-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}
.about-highlight-item {
display: flex;
align-items: flex-start;
gap: 14px;
padding: 18px 18px;
border-radius: 22px;
background: #fff;
border: 1px solid var(--line);
box-shadow: var(--shadow-sm);
transition: var(--transition-fast);
}
.about-highlight-item:hover {
transform: translateY(-3px);
box-shadow: var(--shadow-md);
border-color: rgba(10, 43, 74, 0.14);
}
.about-highlight-icon {
width: 42px;
height: 42px;
flex: 0 0 42px;
display: grid;
place-items: center;
border-radius: 14px;
background: var(--accent-soft);
color: var(--accent);
}
.about-highlight-icon svg {
width: 18px;
height: 18px;
}
.about-highlight-item span:last-child {
color: var(--text);
font-weight: 600;
line-height: 1.5;
}
@media (max-width: 1199px) {
.about-reimagined-grid {
grid-template-columns: 1fr;
}
.about-loop-video {
max-height: 520px;
}
}
@media (max-width: 767px) {
.about-copy-card {
padding: 26px;
border-radius: 24px;
}
.about-highlights-grid {
grid-template-columns: 1fr;
}
.about-media-card {
padding: 10px;
border-radius: 24px;
}
.about-loop-video {
max-height: 360px;
border-radius: 16px;
}
}
:root {
--accent: #0a2b4a;
--accent-dark: #051a2c;
--accent-soft: #eef2f8;
--accent-glow: rgba(10, 43, 74, 0.1);
--text: #0a1c2f;
--text-soft: #2c3e4e;
--muted: #5a6e7e;
--line: #eef2f6;
--bg: #ffffff;
--bg-soft: #fafcff;
--shadow-sm: 0 4px 12px rgba(0, 0, 0, 0.02), 0 1px 2px rgba(0, 0, 0, 0.03);
--shadow-md: 0 12px 32px -12px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.02);
--shadow-lg: 0 32px 48px -20px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.04);
--shadow-premium: 0 40px 60px -24px rgba(0, 0, 0, 0.16);
--radius: 28px;
--radius-md: 20px;
--radius-sm: 16px;
--transition: all 0.35s cubic-bezier(0.2, 0.9, 0.4, 1.1);
--transition-fast: all 0.2s ease;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
scroll-behavior: smooth;
}
body {
font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
color: var(--text);
background: var(--bg);
overflow-x: hidden;
line-height: 1.5;
}
img {
max-width: 100%;
display: block;
}
a {
text-decoration: none;
transition: var(--transition-fast);
}
/* Secciones con mejor espaciado */
.section {
padding: 100px 0;
position: relative;
}
.section-soft {
background: var(--bg-soft);
position: relative;
}
.section-soft::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: radial-gradient(ellipse at 20% 30%, rgba(10, 43, 74, 0.02) 0%, transparent 70%);
pointer-events: none;
}
/* Eyebrow mejorado */
.eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 18px;
border-radius: 100px;
background: var(--accent-soft);
color: var(--accent);
font-size: 12px;
font-weight: 800;
letter-spacing: 0.12em;
text-transform: uppercase;
transition: var(--transition-fast);
}
.eyebrow:hover {
background: rgba(10, 43, 74, 0.12);
transform: translateY(-1px);
}
/* Títulos premium */
.section-title {
margin: 20px 0 16px;
font-size: clamp(2.2rem, 5vw, 3.4rem);
line-height: 1.1;
font-weight: 800;
letter-spacing: -0.03em;
background: linear-gradient(135deg, var(--text) 0%, var(--accent) 100%);
background-clip: text;
-webkit-background-clip: text;
color: transparent;
}
.section-subtitle {
max-width: 720px;
margin: 0 auto;
color: var(--muted);
font-size: 1.08rem;
line-height: 1.7;
}
/* Botones premium con glow */
.btn-main {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 12px;
min-height: 56px;
padding: 0 32px;
border-radius: 100px;
border: 1px solid transparent;
font-weight: 700;
font-size: 0.95rem;
transition: var(--transition);
cursor: pointer;
position: relative;
overflow: hidden;
z-index: 1;
}
.btn-main-primary {
background: var(--accent);
color: #fff;
box-shadow: 0 8px 20px rgba(10, 43, 74, 0.25);
}
.btn-main-primary::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.5s ease;
z-index: -1;
}
.btn-main-primary:hover::before {
left: 100%;
}
.btn-main-primary:hover {
background: var(--accent-dark);
transform: translateY(-3px);
box-shadow: 0 16px 28px rgba(10, 43, 74, 0.3);
}
.btn-main-outline {
background: #fff;
color: var(--text);
border-color: rgba(10, 43, 74, 0.15);
}
.btn-main-outline:hover {
border-color: var(--accent);
color: var(--accent);
background: rgba(10, 43, 74, 0.02);
transform: translateY(-3px);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
}
.btn-main svg {
width: 18px;
height: 18px;
transition: transform 0.2s;
}
.btn-main:hover svg {
transform: translateX(3px);
}
/* ========== NAVBAR GLASSMORPH ========== */
.navbar {
--bs-navbar-padding-y: 0;
background: rgba(255, 255, 255, 0.92);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border-bottom: 1px solid rgba(10, 43, 74, 0.06);
transition: var(--transition);
/* ...cortado... */
.services-split{
display:grid;
grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
gap:32px;
align-items:start;
}
.services-cards-col{
min-width:0;
}
.services-image-col{
min-width:0;
}
.services-image-card{
background:#fff;
border:1px solid var(--line);
border-radius:28px;
box-shadow:var(--shadow-md);
padding:18px;
overflow:hidden;
position:sticky;
top:110px;
}
.services-image-card img{
width:100%;
height:auto;
max-height:720px;
object-fit:contain;
border-radius:20px;
display:block;
}
@media (max-width: 1199px){
.services-split{
grid-template-columns:1fr;
}
.services-image-card{
position:relative;
top:auto;
}
.services-image-card img{
max-height:560px;
margin-inline:auto;
}
}
@media (max-width: 767px){
.services-image-card{
padding:12px;
border-radius:22px;
}
.services-image-card img{
max-height:420px;
border-radius:16px;
}
}
asdsadasds.com.ar
https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&display=swap/* Only change the font stack; keep everything else intact */
body{font-family:'Outfit', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif !important;}
h1,h2,h3,h4,h5,h6,.brand,.navbar-brand{font-family:'Outfit', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif !important;}
/* Ícono junto a la marca */
.navbar .brand-icon{
height: 28px; width: 28px; /* mantiene proporción con width/height del tag */
object-fit: contain; display: block;
}
/* Ajuste responsive si querés un poco más chico en phone */
@media (max-width: 576px){
.navbar .brand-icon{ height: 24px; width: 24px; }
}
.portrait{ aspect-ratio: 4 / 5; }
.portrait img{ height: 100%; width: 100%; object-fit: cover; }
/* ===== Ticker ===== */
.ticker-wrap{
width: 100vw; margin-left: 50%; transform: translateX(-50%);
--alto: min(42vh, 360px); /* altura del ticker: se ven grandes sin recortar */
--gap: 14px; --vel: 36s;
position: relative; overflow: hidden;
}
.ticker{
display: flex; align-items: center; gap: var(--gap);
width: max-content; padding: 4px var(--gap);
animation: ticker-scroll var(--vel) linear infinite;
}
.ticker:hover{ animation-play-state: paused; } /* pausa al hover */
.ticker::before, .ticker::after{
content:""; position:absolute; top:0; bottom:0; width:80px; pointer-events:none;
}
/* Fade edges (ajustá color si tu fondo no es oscuro) */
.ticker::before{ left:0; background: linear-gradient(to right, rgba(0,0,0,.25), rgba(0,0,0,0)); }
.ticker::after{ right:0; background: linear-gradient(to left, rgba(0,0,0,.25), rgba(0,0,0,0)); }
.ticker .item{
display:block; flex: 0 0 auto; border-radius: 14px; overflow: hidden;
box-shadow: var(--shadow-lg, 0 6px 24px rgba(0,0,0,.18));
transition: transform .2s ease, box-shadow .2s ease;
}
.ticker .item:hover{ transform: translateY(-2px); box-shadow: 0 10px 36px rgba(0,0,0,.28); }
.ticker img{
height: var(--alto); width: auto; display:block; object-fit: contain; /* sin recorte */
background: rgba(255,255,255,.04);
}
@keyframes ticker-scroll{
from{ transform: translateX(0); }
to{ transform: translateX(-50%); } /* como duplicamos pista, -50% cierra el loop */
}
@media (max-width: 576px){
.ticker-wrap{ --alto: 42vh; --vel: 28s; --gap: 10px; }
}
/* ===== Lightbox modal ===== */
#lightboxModal .modal-content{ border:0; background:#000; }
#lightboxModal .lightbox-prev,
#lightboxModal .lightbox-next{
position:absolute; top:50%; transform:translateY(-50%);
background: rgba(255,255,255,.16); color:#fff; border:0;
width:52px; height:68px; border-radius:.8rem; font-size:2rem; line-height:1;
display:flex; align-items:center; justify-content:center; cursor:pointer;
transition: background .2s ease;
}
#lightboxModal .lightbox-prev:hover,
#lightboxModal .lightbox-next:hover{ background: rgba(255,255,255,.28); }
#lightboxModal .lightbox-prev{ left:12px; }
#lightboxModal .lightbox-next{ right:12px; }
/* Fallback (cuando no hay Bootstrap): estilos para backdrop */
.modal-backdrop.fallback{ position: fixed; inset: 0; background: rgba(0,0,0,.5); }
.brandline-icon{
width:22px; height:22px; object-fit:contain; display:block;
}
/* si el fondo es muy oscuro y el ícono también */
.footer-dark .brandline-icon{ border-radius:6px; background:rgba(255,255,255,.06); }
@media (max-width:576px){
.brandline-icon{ width:20px; height:20px; }
}
.footer-dark.footer-xl{
--gold: var(--gold, #d4af37);
background:#000; color:#fff;
padding: 56px 0; /* más grande */
position:relative; isolation:isolate;
}
/* Glow superior */
.footer-dark.footer-xl::before{
content:""; position:absolute; inset:0 0 auto 0; height:2px;
background: linear-gradient(90deg, transparent, var(--gold), transparent);
opacity:.9;
}
/* Top row */
.footer-top{ margin-bottom: 28px; }
.footer-dark .brandline{
font-weight:800; font-size: clamp(1.2rem, 1.1rem + 0.6vw, 1.6rem);
letter-spacing:.01em;
}
.footer-dark .gold{ color: var(--gold); }
.footer-dark .tag{ color: rgba(255,255,255,.65); margin-top: .25rem; }
/* Nav */
.footer-mid{
border-top: 1px solid rgba(255,255,255,.08);
border-bottom: 1px solid rgba(255,255,255,.08);
padding: 18px 0; margin: 18px 0 24px;
}
.footer-nav{
display:flex; flex-wrap:wrap; gap: 18px 24px;
justify-content:center;
}
.footer-nav a{
color:#fff; text-decoration:none; font-weight:600;
transition: color .2s ease;
}
.footer-nav a:hover{ color: var(--gold); }
/* Redes */
.footer-dark .socials .soc{
--size: 46px;
width:var(--size); height:var(--size);
display:inline-flex; align-items:center; justify-content:center;
border-radius:50%;
border:1px solid rgba(255,255,255,.22);
color:#fff; background:transparent; text-decoration:none;
transition: color .2s, border-color .2s, background-color .2s, transform .2s;
}
.footer-dark .socials .soc i{ font-size:1.1rem; line-height:1; }
.footer-dark .socials .soc:hover{
color:var(--gold); border-color:var(--gold); background: rgba(212,175,55,.08);
transform: translateY(-1px);
}
/* Bottom */
.footer-bottom .copy{ color: rgba(255,255,255,.65); }
.footer-bottom .legal-links a{
color: rgba(255,255,255,.8); text-decoration:none;
transition: color .2s ease;
}
.footer-bottom .legal-links a:hover{ color: var(--gold); }
.footer-bottom .legal-links .sep{ color: rgba(255,255,255,.35); margin: 0 8px; }
/* Responsive tweaks */
@media (max-width: 767.98px){
.footer-dark.footer-xl{ padding: 40px 0; }
.footer-top{ text-align:left; }
.socials{ justify-content:flex-start !important; }
.footer-bottom{ text-align:left; }
}
:root{
--wa: #25D366;
--wa-dark: #128C7E;
--wa-darker: #075E54;
--gold: #d4af37;
--dark-bg: #0b0b0b;
--darker-bg: #050505;
--light-text: #ffffff;
--muted-text: rgba(255,255,255,.6);
}
.wa-float{
position: fixed;
right: 18px;
bottom: 18px;
z-index: 9999;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.wa-btn{
background: linear-gradient(135deg, var(--wa), var(--wa-dark));
color: #fff;
border: 0;
width: 60px;
height: 60px;
border-radius: 50%;
display: grid;
place-items: center;
box-shadow: 0 10px 30px rgba(0,0,0,.25);
cursor: pointer;
transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
outline: none;
position: relative;
overflow: hidden;
}
.wa-btn::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: radial-gradient(circle at center, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 70%);
opacity: 0;
transition: opacity 0.3s ease;
}
.wa-btn:hover{
transform: translateY(-3px) scale(1.05);
box-shadow: 0 14px 36px rgba(0,0,0,.3);
}
.wa-btn:hover::after {
opacity: 1;
}
.wa-card{
position: absolute;
right: 0;
bottom: 74px;
width: min(360px, 92vw);
background: var(--dark-bg);
color: var(--light-text);
border-radius: 18px;
overflow: hidden;
box-shadow: 0 18px 60px rgba(0,0,0,.5);
border: 1px solid rgba(255,255,255,.08);
transform: translateY(10px);
opacity: 0;
transition: transform 0.3s ease, opacity 0.3s ease;
}
.wa-card[aria-modal="true"] {
transform: translateY(0);
opacity: 1;
}
.wa-head{
display: flex;
align-items: center;
gap: 12px;
padding: 14px 14px;
background: linear-gradient(180deg, #111, var(--darker-bg));
border-bottom: 1px solid rgba(255,255,255,.06);
}
.wa-avatar{
width: 40px;
height: 40px;
border-radius: 50%;
background: #1e1e1e;
display: grid;
place-items: center;
font-weight: 700;
border: 1px solid rgba(255,255,255,.08);
}
.wa-title{
font-weight: 700;
font-size: 1.1rem;
}
.wa-status{
font-size: .85rem;
color: var(--muted-text);
display: flex;
align-items: center;
gap: 4px;
}
.wa-status::before {
content: '';
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--wa);
}
.wa-close{
margin-left: auto;
background: transparent;
color: #fff;
border: 0;
font-size: 24px;
cursor: pointer;
opacity: .7;
width: 32px;
height: 32px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
}
.wa-close:hover{
opacity: 1;
background: rgba(255,255,255,0.1);
}
.wa-body{
padding: 12px 14px;
max-height: 40vh;
overflow: auto;
background: var(--dark-bg);
display: flex;
flex-direction: column;
gap: 8px;
}
.wa-bubble{
max-width: 88%;
padding: 10px 12px;
border-radius: 14px;
line-height: 1.35;
box-shadow: 0 4px 14px rgba(0,0,0,.25);
animation: fadeIn 0.3s ease;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(5px); }
to { opacity: 1; transform: translateY(0); }
}
.wa-bot{
background: #151515;
border: 1px solid rgba(255,255,255,.06);
align-self: flex-start;
border-bottom-left-radius: 4px;
}
.wa-user{
background: var(--wa-darker);
align-self: flex-end;
border-bottom-right-radius: 4px;
}
.wa-compose{
display: grid;
grid-template-columns: 1fr auto;
gap: 8px;
padding: 10px;
background: var(--dark-bg);
border-top: 1px solid rgba(255,255,255,.08);
}
.wa-compose textarea{
resize: none;
border-radius: 12px;
padding: 10px 12px;
border: 1px solid rgba(255,255,255,.12);
background: #101010;
color: var(--light-text);
outline: none;
min-height: 44px;
font-family: inherit;
transition: all 0.2s ease;
}
.wa-compose textarea:focus{
border-color: var(--wa);
box-shadow: 0 0 0 2px rgba(37,211,102,.15);
}
.wa-send{
background: var(--wa);
color: var(--dark-bg);
border: 0;
border-radius: 12px;
padding: 0 16px;
font-weight: 700;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
}
.wa-send:hover{
background: var(--wa-dark);
transform: scale(1.05);
}
/* Scrollbar personalizado */
.wa-body::-webkit-scrollbar {
width: 6px;
}
.wa-body::-webkit-scrollbar-track {
background: rgba(255,255,255,0.05);
border-radius: 3px;
}
.wa-body::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.2);
border-radius: 3px;
}
.wa-body::-webkit-scrollbar-thumb:hover {
background: rgba(255,255,255,0.3);
}
/* Responsive */
@media (max-width: 480px) {
.wa-float {
right: 12px;
bottom: 12px;
}
.wa-card {
width: calc(100vw - 24px);
right: 0;
}
}
santanaestudiocontable.com.ar
https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swaphttps://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css:root {
--font-display: 'Playfair Display', Georgia, 'Times New Roman', serif;
--font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--brand: #153d4a;
--brand-light: #1e5266;
--brand-dark: #0d2830;
--accent: #c9a467;
--accent-light: #d4b580;
--accent-dark: #a88446;
--accent-glow: rgba(201, 164, 103, 0.4);
--dark: #0a0f14;
--dark-surface: #121a22;
--dark-elevated: #1a252f;
--muted: #7c8a96;
--light: #f4f6f8;
--lighter: #fafbfc;
--white: #ffffff;
--glass: rgba(255, 255, 255, 0.03);
--glass-border: rgba(255, 255, 255, 0.08);
--glass-hover: rgba(255, 255, 255, 0.06);
--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
--shadow-md: 0 8px 30px rgba(0, 0, 0, 0.12);
--shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.2);
--shadow-glow: 0 0 60px var(--accent-glow);
--shadow-accent: 0 10px 40px rgba(201, 164, 103, 0.3);
--radius-sm: 8px;
--radius-md: 16px;
--radius-lg: 24px;
--radius-xl: 32px;
--ease-out: cubic-bezier(0.16, 1, 0.3, 1);
--ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
--transition-fast: 0.2s var(--ease-out);
--transition-medium: 0.4s var(--ease-out);
--transition-slow: 0.6s var(--ease-out);
}
*, *::before, *::after { box-sizing: border-box; }
html {
scroll-behavior: smooth;
scroll-padding-top: 100px;
}
body {
font-family: var(--font-body);
font-weight: 400;
color: var(--dark);
line-height: 1.7;
overflow-x: hidden;
background: var(--white);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
html, body {
max-width: 100%;
overflow-x: clip;
}
img, svg, video, canvas, iframe {
max-width: 100%;
height: auto;
}
/* ========== TYPOGRAPHY ========== */
h1, h2, h3, h4, h5, h6,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
font-family: var(--font-display);
font-weight: 700;
letter-spacing: -0.02em;
line-height: 1.15;
}
.text-gradient {
background: linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 50%, var(--accent) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.text-shimmer {
background: linear-gradient(90deg, var(--accent) 0%, var(--accent-light) 25%, var(--white) 50%, var(--accent-light) 75%, var(--accent) 100%);
background-size: 200% 100%;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
animation: shimmer 3s ease-in-out infinite;
}
@keyframes shimmer {
0%, 100% { background-position: 200% 0; }
50% { background-position: -200% 0; }
}
/* ========== NAVBAR ========== */
.navbar {
padding: 1.2rem 0;
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1030;
transition: var(--transition-medium);
background: transparent;
}
.navbar::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(10, 15, 20, 0.9) 0%, rgba(10, 15, 20, 0) 100%);
opacity: 0;
transition: var(--transition-medium);
pointer-events: none;
}
.navbar.scrolled::before {
opacity: 1;
}
.navbar.scrolled {
background: rgba(10, 15, 20, 0.95);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
box-shadow: 0 1px 0 var(--glass-border), 0 20px 40px rgba(0, 0, 0, 0.3);
padding: 0.8rem 0;
}
.navbar > .container {
display: flex;
align-items: center;
flex-wrap: wrap;
}
.navbar .navbar-brand {
min-width: 0;
max-width: calc(100% - 72px);
flex: 1 1 auto;
}
.navbar .navbar-brand span {
display: block;
min-width: 0;
line-height: 1.15;
overflow-wrap: anywhere;
}
.navbar-toggler {
margin-left: auto;
flex: 0 0 auto;
}
.navbar-collapse {
flex-basis: 100%;
}
.navbar .navbar-brand {
font-family: var(--font-display);
font-size: 1.1rem;
font-weight: 700;
color: var(--white);
display: flex;
align-items: center;
gap: 0.9rem;
text-decoration: none;
position: relative;
z-index: 2;
}
.navbar .navbar-brand img {
height: 44px;
width: auto;
display: block;
filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.3));
transition: var(--transition-fast);
}
.navbar .navbar-brand:hover img {
transform: scale(1.05);
}
.navbar .navbar-brand span {
font-size: 0.95rem;
letter-spacing: 0.02em;
opacity: 0.95;
}
.navbar-dark .navbar-nav .nav-link {
font-family: var(--font-body);
font-weight: 500;
font-size: 0.9rem;
color: rgba(255, 255, 255, 0.85);
margin: 0 0.2rem;
padding: 0.6rem 1rem !important;
position: relative;
transition: var(--transition-fast);
letter-spacing: 0.03em;
text-transform: uppercase;
}
.navbar-dark .navbar-nav .nav-link::before {
content: '';
position: absolute;
bottom: 4px;
left: 1rem;
right: 1rem;
height: 1px;
background: var(--accent);
transform: scaleX(0);
transform-origin: right;
transition: transform var(--transition-fast);
}
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.active {
color: var(--white);
}
.navbar-dark .navbar-nav .nav-link:hover::before,
.navbar-dark .navbar-nav .nav-link.active::before {
transform: scaleX(1);
transform-origin: left;
}
.navbar-toggler {
border: none;
padding: 0.5rem;
position: relative;
z-index: 2;
}
.navbar-toggler:focus {
box-shadow: none;
}
.navbar-dark .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23c9a467' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
/* ========== BUTTONS ========== */
.btn-brand {
font-family: var(--font-body);
font-weight: 600;
font-size: 0.9rem;
letter-spacing: 0.04em;
text-transform: uppercase;
background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
color: var(--dark);
border: none;
border-radius: var(--radius-sm);
padding: 1rem 2rem;
position: relative;
overflow: hidden;
transition: var(--transition-fast);
box-shadow: var(--shadow-accent);
}
.btn-brand::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, var(--accent-light) 0%, var(--accent) 100%);
opacity: 0;
transition: var(--transition-fast);
}
.btn-brand:hover {
color: var(--dark);
transform: translateY(-2px);
box-shadow: 0 15px 50px rgba(201, 164, 103, 0.4);
}
.btn-brand:hover::before {
opacity: 1;
}
.btn-brand span {
position: relative;
z-index: 1;
}
.btn-outline-elegant {
font-family: var(--font-body);
font-weight: 600;
font-size: 0.9rem;
letter-spacing: 0.04em;
text-transform: uppercase;
background: transp
/* ...cortado... */
.ticker-section {
overflow: hidden;
padding: 96px 0;
border-top: 1px solid var(--border);
border-bottom: 1px solid var(--border);
background: var(--white);
position: relative;
}
.ticker-section::before,
.ticker-section::after {
content: '';
position: absolute;
top: 0;
bottom: 0;
width: 90px;
z-index: 2;
pointer-events: none;
}
.ticker-section::before {
left: 0;
background: linear-gradient(to right, var(--white), transparent);
}
.ticker-section::after {
right: 0;
background: linear-gradient(to left, var(--white), transparent);
}
.ticker-wrapper {
width: 100%;
overflow: hidden;
}
.ticker-track {
display: flex;
align-items: center;
gap: 40px;
width: max-content;
animation: tickerMove 34s linear infinite;
will-change: transform;
}
.ticker-track:hover {
animation-play-state: paused;
}
.ticker-track img {
height: 420px;
width: 280px;
object-fit: cover;
border-radius: 18px;
flex: 0 0 auto;
filter: grayscale(1) opacity(.72);
transition: transform .3s ease, filter .3s ease, opacity .3s ease;
cursor: pointer;
}
.ticker-track img:hover {
filter: grayscale(0) opacity(1);
transform: scale(1.04);
}
@keyframes tickerMove {
0% {
transform: translateX(0);
}
100% {
transform: translateX(-50%);
}
}
/* MODAL */
.ticker-gallery-modal .modal-dialog {
max-width: min(1200px, calc(100vw - 32px));
}
.ticker-gallery-modal .modal-content {
background: #ffffff;
border: 0;
border-radius: 24px;
overflow: hidden;
position: relative;
box-shadow: 0 30px 90px rgba(0, 0, 0, 0.18);
}
.ticker-modal-close {
position: absolute;
top: 14px;
right: 14px;
width: 46px;
height: 46px;
border: 0;
border-radius: 999px;
background: rgba(255, 255, 255, 0.96);
color: #111;
font-size: 30px;
line-height: 1;
z-index: 20;
display: inline-flex;
align-items: center;
justify-content: center;
box-shadow: 0 10px 25px rgba(0,0,0,.12);
}
.ticker-modal-close span {
transform: translateY(-1px);
}
.ticker-modal-image-wrap {
height: 82vh;
min-height: 560px;
padding: 32px;
display: flex;
align-items: center;
justify-content: center;
background: #fff;
}
.ticker-modal-image {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
object-fit: contain;
border-radius: 18px;
display: block;
}
.ticker-gallery-modal .carousel-control-prev,
.ticker-gallery-modal .carousel-control-next {
width: 72px;
opacity: 1;
}
.ticker-gallery-modal .carousel-control-prev-icon,
.ticker-gallery-modal .carousel-control-next-icon {
width: 44px;
height: 44px;
border-radius: 999px;
background-color: rgba(17, 17, 17, 0.78);
background-size: 18px 18px;
}
.ticker-gallery-modal .carousel-indicators {
margin-bottom: 18px;
}
.ticker-gallery-modal .carousel-indicators [data-bs-target] {
width: 10px;
height: 10px;
border-radius: 999px;
border: 0;
background-color: rgba(0,0,0,.28);
}
.ticker-gallery-modal .carousel-indicators .active {
background-color: rgba(0,0,0,.82);
}
/* TABLET */
@media (max-width: 991.98px) {
.ticker-section {
padding: 72px 0;
}
.ticker-section::before,
.ticker-section::after {
width: 60px;
}
.ticker-track {
gap: 28px;
animation-duration: 30s;
}
.ticker-track img {
height: 340px;
width: 220px;
border-radius: 16px;
}
.ticker-modal-image-wrap {
height: 74vh;
min-height: 460px;
padding: 24px;
}
}
/* PHONE */
@media (max-width: 767.98px) {
.ticker-section {
padding: 48px 0;
}
.ticker-section::before,
.ticker-section::after {
width: 28px;
}
.ticker-track {
gap: 18px;
animation-duration: 26s;
}
.ticker-track img {
height: 220px;
width: 150px;
border-radius: 14px;
filter: grayscale(0) opacity(1);
}
.ticker-track img:hover {
transform: none;
}
.ticker-gallery-modal .modal-dialog {
max-width: calc(100vw - 14px);
margin: 7px auto;
}
.ticker-gallery-modal .modal-content {
border-radius: 18px;
}
.ticker-modal-close {
top: 10px;
right: 10px;
width: 42px;
height: 42px;
font-size: 28px;
}
.ticker-modal-image-wrap {
height: 72vh;
min-height: 360px;
padding: 18px 14px 46px;
}
.ticker-gallery-modal .carousel-control-prev,
.ticker-gallery-modal .carousel-control-next {
width: 52px;
}
.ticker-gallery-modal .carousel-control-prev-icon,
.ticker-gallery-modal .carousel-control-next-icon {
width: 38px;
height: 38px;
background-size: 15px 15px;
}
.ticker-gallery-modal .carousel-indicators {
margin-bottom: 12px;
}
}
solucionesled.com.ar
https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Playfair+Display:wght@600;700;800&display=swaphttps://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.csshttps://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.csshttps://cdn.jsdelivr.net/npm/bootstrap-icons/font/bootstrap-icons.css:root {
--accent: #cfa701;
--accent-light: #000000;
--accent-subtle: rgba(10, 43, 74, 0.08);
--accent-glow: rgba(10, 43, 74, 0.15);
--bg: #ffffff;
--bg-soft: #f8f9fb;
--bg-warm: #fafbfc;
--text: #0d0d0d;
--text-secondary: #4a5568;
--text-muted: #718096;
--line: #e8ecf1;
--line-soft: #f0f3f7;
--shadow-sm: 0 2px 8px rgba(10, 43, 74, 0.04);
--shadow-md: 0 8px 30px rgba(10, 43, 74, 0.08);
--shadow-lg: 0 20px 60px rgba(10, 43, 74, 0.12);
--shadow-xl: 0 32px 80px rgba(10, 43, 74, 0.14);
--radius-sm: 8px;
--radius-md: 14px;
--radius-lg: 20px;
--radius-xl: 28px;
--radius-2xl: 36px;
--container: 1200px;
--transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
--transition-smooth: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
--transition-bounce: 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
margin: 0;
font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
background: var(--bg);
color: var(--text);
overflow-x: hidden;
font-size: 16px;
line-height: 1.6;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
img {
max-width: 100%;
display: block;
}
a {
text-decoration: none;
color: inherit;
}
.container {
max-width: var(--container);
padding-inline: 24px;
}
/* TYPOGRAPHY SYSTEM */
.font-display {
font-family: 'Playfair Display', Georgia, serif;
}
.section {
padding: 120px 0;
position: relative;
}
.section-soft {
background: var(--bg-soft);
}
.eyebrow {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 10px 20px;
border-radius: 100px;
background: var(--accent-subtle);
border: 1px solid rgba(10, 43, 74, 0.1);
font-size: 0.75rem;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--accent);
margin-bottom: 20px;
}
.eyebrow::before {
content: '';
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--accent);
}
.section-title {
font-family: 'Playfair Display', Georgia, serif;
font-size: clamp(2.2rem, 4.5vw, 3.5rem);
line-height: 1.1;
font-weight: 700;
letter-spacing: -0.025em;
margin: 0 0 20px;
color: var(--text);
}
.section-subtitle {
max-width: 680px;
font-size: 1.1rem;
line-height: 1.8;
color: var(--text-secondary);
margin: 0 auto;
font-weight: 400;
}
.text-center .section-subtitle {
max-width: 720px;
}
/* NAVBAR - Premium refinement */
.navbar {
--bs-navbar-padding-y: 0;
background: rgba(255, 255, 255, 0.92);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
border-bottom: 1px solid rgba(10, 43, 74, 0.06);
transition: var(--transition-smooth);
}
.navbar.scrolled {
box-shadow: var(--shadow-sm);
}
.navbar > .container {
padding-block: 16px;
}
.navbar-brand {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 4px;
min-width: 0;
margin-right: 1rem;
transition: var(--transition-fast);
text-align: center;
flex-shrink: 0;
}
.navbar-brand:hover {
opacity: 0.85;
}
.navbar-brand img {
height: 44px;
width: auto;
display: block;
object-fit: contain;
flex: 0 0 auto;
}
.brand-text {
display: block;
min-width: 0;
width: 100%;
}
.brand-title {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1.15rem;
font-weight: 700;
color: var(--text);
letter-spacing: -0.02em;
}
.brand-subtitle {
display: block;
font-size: 0.62rem;
color: var(--text-muted);
font-weight: 500;
white-space: nowrap;
overflow: visible;
text-overflow: unset;
max-width: none;
letter-spacing: 0;
line-height: 1;
text-align: center;
}
.navbar-nav {
gap: 4px;
}
.nav-link {
font-weight: 600;
font-size: 0.9rem;
color: var(--text-secondary) !important;
padding: 10px 18px !important;
border-radius: 100px;
transition: var(--transition-fast);
white-space: nowrap;
position: relative;
}
.nav-link::after {
content: '';
position: absolute;
bottom: 6px;
left: 50%;
width: 0;
height: 2px;
background: var(--accent);
border-radius: 2px;
transform: translateX(-50%);
transition: var(--transition-fast);
}
.nav-link:hover,
.nav-link:focus {
color: var(--accent) !important;
}
.nav-link:hover::after {
width: calc(100% - 36px);
}
.navbar-toggler {
border: 1px solid var(--line);
box-shadow: none !important;
padding: 10px 12px;
border-radius: var(--radius-md);
background: var(--bg);
margin-left: auto;
transition: var(--transition-fast);
}
.navbar-toggler:hover {
border-color: var(--accent);
background: var(--accent-subtle);
}
.navbar-collapse {
min-width: 0;
}
.nav-cta {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 12px 24px;
border-radius: 100px;
background: var(--accent);
color: #fff;
font-weight: 600;
font-size: 0.9rem;
border: none;
transition: var(--transition-smooth);
box-shadow: 0 4px 20px rgba(10, 43, 74, 0.25);
}
.nav-cta:hover {
background: var(--accent-light);
color: #fff;
transform: translateY(-2px);
box-shadow: 0 8px 30px rgba(10, 43, 74, 0.3);
}
.nav-cta i {
font-size: 1rem;
}
/* HERO */
.hero {
position: relative;
overflow: hidden;
}
.hero-clean {
min-height: clamp(1120px, 82vw, 1380px);
padding-top: 92px;
background-image:
linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 60%, rgba(255,255,255,0.82) 76%, rgba(255,255,255,0.96) 88%, rgba(255,255,255,1) 100%),
linear-gradient(90deg, rgba(8, 24, 40, 0.10) 0%, rgba(8, 24, 40, 0.04) 28%, rgba(8, 24, 40, 0.02) 100%),
url('img/hero2.png');
background-position: center bottom, center center, center 32%;
background-size: cover, cover, min(90vw, 1580px);
background-repeat: no-repeat, no-repeat, no-repeat;
}
.hero-stage {
min-height: calc(clamp(1120px, 82vw, 1380px) - 92px);
position: relative;
display: flex;
align-items: flex-end;
padding-bottom: -120px;
}
.hero-bottom-copy {
max-width: 980px;
padding: 0;
}
.hero-title {
font-family: 'Playfair Display', Georgia, serif;
font-size: clamp(2.2rem, 4.2vw, 4.25rem);
line-height: 1.02;
letter-spacing: -0.03em;
font-weight: 700;
margin: 0 0 16px;
color: #102033;
max-width: 880px;
text-wrap: balance;
text-shadow: 0 2px 12px rgba(255,255,255,0.48);
}
.hero-title .accent {
color: var(--accent);
}
.hero-text {
font-size: 1.04rem;
line-height: 1.76;
color: #39485b;
max-width: 720px;
margin: 0 0 22px;
text-shadow: 0 2px 12px rgba(255,255,255,0.42);
}
.hero-actions {
display: flex;
gap: 16px;
flex-wrap: wrap;
margin-bottom: 0;
}
/* ...cortado... */
.steps-section {
padding: 64px 0;
background: #fff;
}
.steps-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.step-card {
background: #fff;
border: 1px solid rgba(0, 0, 0, 0.08);
border-radius: 24px;
padding: 18px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
transition: transform .3s ease, box-shadow .3s ease;
}
.step-card:hover {
transform: translateY(-6px);
box-shadow: 0 18px 44px rgba(0, 0, 0, 0.09);
}
.step-number {
display: inline-flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 999px;
font-weight: 800;
font-size: 1rem;
background: #000;
color: #fff;
margin-bottom: 16px;
}
.step-image-wrap {
width: 100%;
height: 520px;
border-radius: 20px;
background: #f8f8f8;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
padding: 0;
}
.step-img {
display: block;
object-fit: contain;
object-position: center;
}
/* Para imágenes apaisadas: las agranda más */
.step-img--wide {
width: 115%;
height: 115%;
max-width: none;
}
/* Si alguna es vertical, usá esta clase en vez de --wide */
.step-img--tall {
width: 100%;
height: 125%;
max-width: none;
}
@media (max-width: 1199.98px) {
.step-image-wrap {
height: 460px;
}
.step-img--wide {
width: 112%;
height: 112%;
}
}
@media (max-width: 991.98px) {
.steps-grid {
grid-template-columns: 1fr;
gap: 24px;
}
.step-image-wrap {
height: 440px;
}
.step-img--wide {
width: 110%;
height: 110%;
}
}
@media (max-width: 767.98px) {
.steps-section {
padding: 40px 0;
}
.step-card {
padding: 14px;
border-radius: 18px;
}
.step-number {
width: 42px;
height: 42px;
font-size: .92rem;
margin-bottom: 12px;
}
.step-image-wrap {
height: 320px;
border-radius: 14px;
}
.step-img--wide {
width: 108%;
height: 108%;
}
.step-img--tall {
width: 100%;
height: 118%;
}
}
/* ===== LIGHTBOX ===== */
.lightbox-modal {
display: none;
position: fixed;
z-index: 9999;
padding: 40px;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.9);
align-items: center;
justify-content: center;
}
.lightbox-content {
max-width: 90%;
max-height: 85%;
object-fit: contain;
border-radius: 12px;
}
.lightbox-close {
position: absolute;
top: 20px;
right: 30px;
font-size: 40px;
color: #fff;
cursor: pointer;
}
.lightbox-nav {
position: absolute;
top: 50%;
transform: translateY(-50%);
font-size: 40px;
background: transparent;
border: none;
color: #fff;
cursor: pointer;
padding: 10px;
}
.lightbox-nav.prev {
left: 20px;
}
.lightbox-nav.next {
right: 20px;
}
/* Cursor tipo click en imágenes */
.step-img {
cursor: pointer;
}
.service-icon {
width: 64px;
height: 64px;
border-radius: 18px;
display: inline-flex;
align-items: center;
justify-content: center;
margin-bottom: 18px;
background: rgba(247, 225, 46, 0.16);
color: var(--primary-dark);
border: 1px solid rgba(0, 0, 0, 0.06);
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}
.service-icon i {
font-size: 1.6rem;
line-height: 1;
}
.why-premium-section {
background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
}
.why-premium-layout {
display: grid;
grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
gap: 24px;
align-items: start;
}
.why-visual-card {
position: relative;
min-height: 0;
height: 780px;
border-radius: 30px;
overflow: hidden;
border: 1px solid var(--line);
box-shadow: var(--shadow-xl);
background: #fff;
padding: 18px;
display: flex;
align-items: center;
justify-content: center;
}
.why-visual-media {
width: 100%;
height: 100%;
border-radius: 22px;
overflow: hidden;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
}
.why-visual-media img {
width: 100%;
height: 100%;
display: block;
object-fit: contain;
object-position: center;
}
.why-content-side {
display: grid;
grid-template-rows: auto 1fr;
gap: 18px;
min-height: 0;
}
.why-intro-box {
background: var(--bg);
border: 1px solid var(--line);
border-radius: 28px;
padding: 26px;
box-shadow: var(--shadow-md);
}
.why-mini-label {
display: inline-block;
margin-bottom: 12px;
font-size: .8rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .12em;
color: var(--accent);
}
.why-intro-box h3 {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1.78rem;
line-height: 1.08;
margin: 0 0 14px;
letter-spacing: -0.03em;
color: var(--text);
}
.why-intro-box p {
margin: 0;
color: var(--text-secondary);
line-height: 1.7;
}
.why-feature-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px;
align-content: start;
}
.why-feature-card {
background: var(--bg);
border: 1px solid var(--line);
border-radius: 22px;
padding: 20px 18px;
box-shadow: var(--shadow-md);
transition: var(--transition-smooth);
display: flex;
align-items: flex-start;
gap: 14px;
min-height: 148px;
}
.why-feature-card:hover {
transform: translateY(-6px);
box-shadow: var(--shadow-lg);
border-color: rgba(207, 167, 1, 0.22);
}
.why-feature-icon {
width: 54px;
height: 54px;
border-radius: 17px;
display: inline-flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, var(--accent) 0%, #e0ba19 100%);
color: #fff;
box-shadow: 0 14px 28px rgba(207, 167, 1, 0.22);
flex: 0 0 auto;
}
.why-feature-icon i {
width: 22px;
height: 22px;
stroke-width: 2.2;
}
.why-feature-card h4 {
font-family: 'Playfair Display', Georgia, serif;
font-size: 1.05rem;
margin: 0 0 8px;
line-height: 1.12;
letter-spacing: -0.02em;
color: var(--text);
}
.why-feature-card p {
margin: 0;
color: var(--text-muted);
line-height: 1.58;
font-size: 0.91rem;
}
@media (max-width: 1399.98px) {
.why-visual-card {
height: 720px;
}
.why-intro-box h3 {
font-size: 1.62rem;
}
.why-feature-card {
min-height: 140px;
}
}
@media (max-width: 1199.98px) {
.why-premium-layout {
grid-template-columns: 1fr;
}
.why-visual-card {
height: 560px;
}
}
@media (max-width: 991.98px) {
.why-feature-grid {
grid-template-columns: 1fr;
}
.why-visual-card {
height: 500px;
padding: 14px;
}
.why-feature-card {
min-height: auto;
}
}
@media (max-width: 767.98px) {
.why-visual-card {
height: 420px;
border-radius: 22px;
padding: 12px;
}
.why-visual-media {
border-radius: 16px;
}
.why-intro-box,
.why-feature-card {
border-radius: 20px;
padding: 18px;
}
.why-intro-box h3 {
font-size: 1.45rem;
}
.why-feature-icon {
width: 50px;
height: 50px;
border-radius: 15px;
}
}
:root{
--brand:#f7e12e;
--brand-dark:#e0ca12;
--brand-darker:#b7a20a;
--wa:#25d366;
--wa-dark:#1ebe5d;
--wa-darker:#129c4a;
--light-bg:#ffffff;
--light-bg-soft:#f8f8f8;
--light-border:#e7e7e7;
--dark-text:#111111;
--muted-text:#666666;
}
/* IG button */
.ig-float{
position:fixed;
right:18px;
bottom:92px;
z-index:9998;
width:54px;
height:54px;
border-radius:50%;
display:grid;
place-items:center;
color:#fff;
text-decoration:none;
background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
box-shadow:0 10px 30px rgba(0,0,0,.25);
transition:transform .25s, box-shadow .25s, opacity .25s;
}
.ig-float:hover{
transform:translateY(-2px) scale(1.04);
box-shadow:0 14px 36px rgba(0,0,0,.35);
}
/* WhatsApp flotante */
.wa-float{
position:fixed;
right:18px;
bottom:18px;
z-index:9999;
font-family:inherit;
}
.wa-btn{
background:#ffffff;
color:var(--wa);
border:2px solid var(--wa);
width:60px;
height:60px;
border-radius:50%;
display:grid;
place-items:center;
box-shadow:0 8px 24px rgba(0,0,0,.18);
cursor:pointer;
transition:transform .3s, box-shadow .3s, background .3s, color .3s, border-color .3s;
position:relative;
overflow:hidden;
z-index:9999;
}
.wa-btn svg{
color:var(--wa);
}
.wa-btn::after{
content:"";
position:absolute;
inset:0;
background:radial-gradient(circle at 50% 50%, rgba(255,255,255,.7), rgba(255,255,255,0) 70%);
opacity:0;
transition:opacity .3s;
}
.wa-btn:hover{
background:var(--wa);
border-color:var(--wa-dark);
color:#fff;
transform:translateY(-3px) scale(1.05);
box-shadow:0 14px 36px rgba(0,0,0,.28);
}
.wa-btn:hover svg{
color:#fff;
}
.wa-btn:hover::after{
opacity:0.2;
}
.wa-card{
position:absolute;
right:0;
bottom:74px;
width:min(360px,92vw);
background:var(--light-bg);
color:var(--dark-text);
border-radius:18px;
overflow:hidden;
box-shadow:0 18px 60px rgba(0,0,0,.25);
border:1px solid var(--light-border);
transform:translateY(10px);
opacity:0;
transition:transform .3s, opacity .3s;
z-index:10000;
}
.wa-card[aria-modal="true"]{
transform:translateY(0);
opacity:1;
}
.wa-head{
display:flex;
align-items:center;
gap:12px;
padding:14px 16px;
background:linear-gradient(135deg, #ffffff, #fff9cf);
border-bottom:1px solid var(--light-border);
}
.wa-avatar{
width:40px;
height:40px;
border-radius:10px;
background:#fff7a8;
display:grid;
place-items:center;
border:1px solid #f1e17d;
overflow:hidden;
}
.wa-title{
font-weight:700;
font-size:1.02rem;
color:var(--dark-text);
}
.wa-status{
font-size:.85rem;
color:var(--muted-text);
display:flex;
align-items:center;
gap:6px;
}
.wa-status::before{
content:"";
width:8px;
height:8px;
border-radius:50%;
background:var(--brand);
}
.wa-close{
margin-left:auto;
background:transparent;
color:var(--muted-text);
border:0;
font-size:24px;
cursor:pointer;
opacity:.7;
width:32px;
height:32px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
transition:.2s;
}
.wa-close:hover{
opacity:1;
background:rgba(0,0,0,.04);
}
.wa-body{
padding:12px 14px;
max-height:40vh;
overflow:auto;
background:var(--light-bg-soft);
display:flex;
flex-direction:column;
gap:8px;
}
.wa-bubble{
max-width:88%;
padding:9px 11px;
border-radius:14px;
line-height:1.35;
box-shadow:0 3px 10px rgba(0,0,0,.06);
animation:fadeIn .25s ease;
font-size:0.9rem;
}
@keyframes fadeIn{
from{opacity:0; transform:translateY(5px)}
to{opacity:1; transform:none}
}
.wa-bot{
background:#ffffff;
border:1px solid var(--light-border);
align-self:flex-start;
border-bottom-left-radius:4px;
}
.wa-user{
background:var(--brand);
color:#111;
align-self:flex-end;
border-bottom-right-radius:4px;
}
.wa-compose{
display:grid;
grid-template-columns:1fr auto;
gap:8px;
padding:10px 12px;
background:#ffffff;
border-top:1px solid var(--light-border);
}
.wa-compose textarea{
resize:none;
border-radius:12px;
padding:10px 12px;
border:1px solid var(--light-border);
background:#fafafa;
color:var(--dark-text);
outline:none;
min-height:44px;
font-family:inherit;
font-size:0.9rem;
transition:.2s;
}
.wa-compose textarea:focus{
border-color:var(--brand-dark);
box-shadow:0 0 0 2px rgba(247,225,46,.18);
background:#ffffff;
}
.wa-send{
background:var(--brand);
color:#111111;
border:0;
border-radius:12px;
padding:0 16px;
font-weight:600;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
transition:.2s;
}
.wa-send:hover{
background:var(--brand-dark);
transform:scale(1.04);
}
.wa-body::-webkit-scrollbar{ width:6px; }
.wa-body::-webkit-scrollbar-track{ background:rgba(0,0,0,.03); border-radius:3px; }
.wa-body::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.12); border-radius:3px; }
.wa-body::-webkit-scrollbar-thumb:hover{ background:rgba(0,0,0,.18); }
@media (max-width:480px){
.ig-float{ right:12px; bottom:86px; width:52px; height:52px; }
.wa-float{ right:12px; bottom:12px; }
.wa-card{ width:calc(100vw - 24px); right:0; }
}