redesign: compact layout for better space efficiency
Reduce vertical scroll ~15-20% while keeping dark/silver aesthetic. Hero 70vh left-aligned with stats row, services as horizontal 2-col cards, values 2x2 with icon beside text, testimonials 3-col compact, contact cards in horizontal row, reduced section padding throughout. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
/* ============================================================
|
||||
|
||||
Reference in New Issue
Block a user