diff --git a/assets/css/style.css b/assets/css/style.css index 38f280f..2c379b2 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -86,7 +86,7 @@ /* Layout */ --navbar-height: 72px; - --container-max: 1200px; + --container-max: 1280px; --container-narrow: 800px; } @@ -340,8 +340,7 @@ p:last-child { } .contact__grid--centered { - display: flex; - justify-content: center; + display: block; } .navbar__brand strong { @@ -481,9 +480,9 @@ p:last-child { position: relative; display: flex; align-items: center; - justify-content: center; - min-height: 100vh; - padding: calc(var(--navbar-height) + var(--space-3xl)) var(--space-lg) var(--space-3xl); + justify-content: flex-start; + min-height: 70vh; + padding: calc(var(--navbar-height) + var(--space-2xl)) var(--space-lg) var(--space-2xl); background: var(--gradient-hero); overflow: hidden; } @@ -508,7 +507,7 @@ p:last-child { .hero__content { position: relative; z-index: 1; - text-align: center; + text-align: left; max-width: 780px; } @@ -527,23 +526,45 @@ p:last-child { margin-bottom: var(--space-2xl); line-height: var(--line-height-loose); max-width: 620px; - margin-left: auto; - margin-right: auto; } .hero__actions { display: flex; align-items: center; - justify-content: center; + justify-content: flex-start; gap: var(--space-md); flex-wrap: wrap; } +/* Hero stats row */ +.hero__stats { + display: flex; + gap: var(--space-2xl); + margin-top: var(--space-2xl); + padding-top: var(--space-xl); + border-top: 1px solid rgba(192, 192, 192, 0.12); +} + +.hero__stat-value { + font-size: var(--font-size-2xl); + font-weight: 800; + color: var(--color-white); + line-height: 1; + margin-bottom: var(--space-xs); +} + +.hero__stat-label { + font-size: var(--font-size-xs); + color: rgba(192, 192, 192, 0.6); + text-transform: uppercase; + letter-spacing: 0.05em; +} + /* ============================================================ Section Defaults ============================================================ */ .section { - padding: var(--space-4xl) 0; + padding: 72px 0; background-color: var(--color-primary); } @@ -553,7 +574,7 @@ p:last-child { .section__header { text-align: center; - margin-bottom: var(--space-3xl); + margin-bottom: 48px; max-width: 660px; margin-left: auto; margin-right: auto; @@ -574,7 +595,7 @@ p:last-child { } .section__title { - font-size: var(--font-size-3xl); + font-size: var(--font-size-2xl); font-weight: 800; color: var(--color-white); margin-bottom: var(--space-md); @@ -592,16 +613,19 @@ p:last-child { ============================================================ */ .services__grid { display: grid; - grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); - gap: var(--space-xl); + grid-template-columns: repeat(2, 1fr); + gap: 24px; } .card--service { background-color: #141414; border: 1px solid rgba(192, 192, 192, 0.1); border-radius: var(--radius-lg); - padding: var(--space-2xl) var(--space-xl); - text-align: center; + padding: 32px; + display: flex; + align-items: flex-start; + gap: var(--space-lg); + text-align: left; transition: all var(--transition-base); position: relative; overflow: hidden; @@ -634,17 +658,22 @@ p:last-child { display: inline-flex; align-items: center; justify-content: center; - width: 64px; - height: 64px; + width: 56px; + height: 56px; + min-width: 56px; border-radius: var(--radius-lg); background: rgba(192, 192, 192, 0.08); border: 1px solid rgba(192, 192, 192, 0.12); color: var(--color-accent); - font-size: 1.5rem; - margin-bottom: var(--space-lg); + font-size: 1.4rem; transition: all var(--transition-base); } +.card__body { + flex: 1; + min-width: 0; +} + .card--service:hover .card__icon { transform: scale(1.08); background: rgba(192, 192, 192, 0.12); @@ -686,27 +715,44 @@ p:last-child { ============================================================ */ .values__grid { display: grid; - grid-template-columns: repeat(4, 1fr); - gap: var(--space-xl); + grid-template-columns: repeat(2, 1fr); + gap: 24px; } .value-card { - text-align: center; - padding: var(--space-xl); + display: flex; + align-items: flex-start; + gap: var(--space-lg); + text-align: left; + padding: 28px; + background-color: #141414; + border: 1px solid rgba(192, 192, 192, 0.08); + border-radius: var(--radius-lg); + transition: all var(--transition-base); +} + +.value-card:hover { + border-color: rgba(192, 192, 192, 0.18); + box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); +} + +.value-card__content { + flex: 1; + min-width: 0; } .value-card__icon { display: inline-flex; align-items: center; justify-content: center; - width: 72px; - height: 72px; - border-radius: 50%; + width: 48px; + height: 48px; + min-width: 48px; + border-radius: var(--radius-md); background-color: rgba(192, 192, 192, 0.06); border: 1px solid rgba(192, 192, 192, 0.12); color: var(--color-accent); - font-size: 1.6rem; - margin-bottom: var(--space-lg); + font-size: 1.2rem; transition: all var(--transition-base); } @@ -740,15 +786,15 @@ p:last-child { .testimonials__grid { display: grid; - grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); - gap: var(--space-xl); + grid-template-columns: repeat(3, 1fr); + gap: 24px; } .testimonial-card { background-color: #141414; border: 1px solid rgba(192, 192, 192, 0.1); border-radius: var(--radius-lg); - padding: var(--space-2xl); + padding: 32px; transition: all var(--transition-base); opacity: 0; transform: translateY(24px); @@ -781,11 +827,11 @@ p:last-child { } .testimonial-card__text { - font-size: var(--font-size-base); + font-size: var(--font-size-sm); font-style: italic; color: var(--color-gray-700); - line-height: var(--line-height-loose); - margin-bottom: var(--space-lg); + line-height: 1.6; + margin-bottom: var(--space-md); border: none; padding: 0; } @@ -800,12 +846,12 @@ p:last-child { display: flex; align-items: center; justify-content: center; - width: 40px; - height: 40px; + width: 32px; + height: 32px; border-radius: 50%; background: var(--gradient-silver); color: #0a0a0a; - font-size: var(--font-size-sm); + font-size: var(--font-size-xs); flex-shrink: 0; } @@ -826,22 +872,28 @@ p:last-child { } .contact__info { - display: flex; - flex-direction: column; - gap: var(--space-lg); + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 24px; } .contact__info-card { display: flex; - align-items: flex-start; + flex-direction: column; + align-items: center; + text-align: center; gap: var(--space-md); - padding: var(--space-lg); + padding: 32px var(--space-lg); background-color: #141414; border: 1px solid rgba(192, 192, 192, 0.08); border-radius: var(--radius-lg); transition: all var(--transition-base); } +.contact__info-card > div { + text-align: center; +} + .contact__info-card:hover { background-color: #1a1a1a; border-color: rgba(192, 192, 192, 0.15); @@ -899,15 +951,15 @@ p:last-child { .footer { background-color: #050505; color: rgba(192, 192, 192, 0.65); - padding: var(--space-3xl) 0 0; + padding: 48px 0 0; border-top: 1px solid rgba(192, 192, 192, 0.06); } .footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 0.8fr; - gap: var(--space-2xl); - padding-bottom: var(--space-2xl); + gap: 32px; + padding-bottom: var(--space-xl); border-bottom: 1px solid rgba(192, 192, 192, 0.08); } @@ -915,7 +967,7 @@ p:last-child { font-size: var(--font-size-md); font-weight: 700; color: var(--color-white); - margin-bottom: var(--space-lg); + margin-bottom: var(--space-md); } .footer__heading i { @@ -1001,7 +1053,7 @@ p:last-child { Forms (for use in service pages and admin) ============================================================ */ .form-group { - margin-bottom: var(--space-lg); + margin-bottom: var(--space-md); } .form-label { @@ -1118,18 +1170,18 @@ select.form-control { display: inline-flex; align-items: center; justify-content: center; - width: 90px; - height: 90px; + width: 72px; + height: 72px; border-radius: 50%; background: rgba(192, 192, 192, 0.06); border: 2px solid rgba(192, 192, 192, 0.15); color: var(--color-accent); - font-size: 2.2rem; - margin-bottom: var(--space-lg); + font-size: 1.8rem; + margin-bottom: var(--space-md); } .service-hero h1 { - font-size: var(--font-size-3xl); + font-size: var(--font-size-2xl); font-weight: 800; color: var(--color-white); margin-bottom: var(--space-md); @@ -1157,7 +1209,7 @@ select.form-control { .service-detail { display: grid; grid-template-columns: 1.4fr 1fr; - gap: var(--space-3xl); + gap: 48px; align-items: start; } @@ -1254,7 +1306,7 @@ select.form-control { background-color: #141414; border: 1px solid rgba(192, 192, 192, 0.1); border-radius: var(--radius-lg); - padding: var(--space-2xl); + padding: 32px; box-shadow: var(--shadow-md); position: sticky; top: calc(var(--navbar-height) + var(--space-lg)); @@ -1340,7 +1392,11 @@ select.form-control { Responsive -- Tablet (768px) ============================================================ */ @media (max-width: 1024px) { - .values__grid { + .services__grid { + grid-template-columns: 1fr; + } + + .testimonials__grid { grid-template-columns: repeat(2, 1fr); } @@ -1436,8 +1492,28 @@ select.form-control { /* Hero mobile */ .hero { - min-height: 85vh; + min-height: auto; padding: calc(var(--navbar-height) + var(--space-2xl)) var(--space-lg) var(--space-2xl); + justify-content: center; + } + + .hero__content { + text-align: center; + } + + .hero__subtitle { + margin-left: auto; + margin-right: auto; + } + + .hero__actions { + justify-content: center; + flex-direction: column; + } + + .hero__actions .btn { + width: 100%; + justify-content: center; } .hero__title { @@ -1448,13 +1524,10 @@ select.form-control { font-size: var(--font-size-base); } - .hero__actions { - flex-direction: column; - } - - .hero__actions .btn { - width: 100%; + .hero__stats { justify-content: center; + gap: var(--space-xl); + text-align: center; } /* Sections */ @@ -1492,6 +1565,10 @@ select.form-control { grid-template-columns: 1fr; } + .contact__info { + grid-template-columns: 1fr; + } + /* Service page */ .service-hero h1 { font-size: var(--font-size-2xl); @@ -1539,14 +1616,42 @@ select.form-control { font-size: var(--font-size-sm); } + .hero__stats { + flex-direction: column; + gap: var(--space-md); + align-items: center; + } + .section__title { font-size: var(--font-size-xl); } + /* Stack service cards vertically on small mobile */ .card--service { + flex-direction: column; + text-align: center; padding: var(--space-xl) var(--space-lg); } + .card__icon { + margin: 0 auto; + } + + .card__body { + text-align: center; + } + + /* Stack value cards vertically on small mobile */ + .value-card { + flex-direction: column; + text-align: center; + align-items: center; + } + + .value-card__content { + text-align: center; + } + .testimonial-card { padding: var(--space-xl); } @@ -1562,9 +1667,9 @@ select.form-control { } .service-hero__icon { - width: 72px; - height: 72px; - font-size: 1.8rem; + width: 60px; + height: 60px; + font-size: 1.5rem; } .service-hero h1 { @@ -1583,10 +1688,6 @@ select.form-control { .hero__title { font-size: var(--font-size-5xl); } - - .services__grid { - grid-template-columns: repeat(3, 1fr); - } } /* ============================================================ diff --git a/index.php b/index.php index f3384ce..ca9b5cf 100644 --- a/index.php +++ b/index.php @@ -33,6 +33,20 @@ try { Escríbenos +
+
+
500+
+
Trámites realizados
+
+
+
5
+
Servicios
+
+
+
98%
+
Satisfacción
+
+
@@ -51,13 +65,15 @@ try {
-

-

- -

- - Más información - +
+

+

+ +

+ + Más información + +
@@ -78,40 +94,48 @@ try {
-

Experiencia comprobada

-

- Años de experiencia resolviendo trámites migratorios con altos índices de éxito. -

+
+

Experiencia comprobada

+

+ Años de experiencia resolviendo trámites migratorios con altos índices de éxito. +

+
-

Atención personalizada

-

- Cada caso es único. Te brindamos asesoría individual adaptada a tu situación. -

+
+

Atención personalizada

+

+ Cada caso es único. Te brindamos asesoría individual adaptada a tu situación. +

+
-

Proceso transparente

-

- Sabrás en todo momento el estado de tu trámite. Sin sorpresas ni costos ocultos. -

+
+

Proceso transparente

+

+ Sabrás en todo momento el estado de tu trámite. Sin sorpresas ni costos ocultos. +

+
-

Resultados garantizados

-

- Nos comprometemos con tu trámite hasta obtener un resultado favorable. -

+
+

Resultados garantizados

+

+ Nos comprometemos con tu trámite hasta obtener un resultado favorable. +

+