Hero v5 — light bg, floating image card on grey wash, soft teal glow

This commit is contained in:
2026-03-13 21:19:47 +08:00
parent c2c962fd73
commit 7c89c5d929
+61 -29
View File
@@ -53,58 +53,90 @@
/* ── HERO ── */ /* ── HERO ── */
.hero { .hero {
padding-top: 64px; padding-top: 64px;
height: 100vh; min-height: calc(100vh - 64px);
min-height: 600px;
display: grid;
grid-template-columns: 42% 58%;
background: #fff; background: #fff;
display: grid;
grid-template-columns: 1fr 1fr;
align-items: center;
overflow: hidden; overflow: hidden;
position: relative;
}
/* Soft teal blob — top left, very subtle */
.hero::before {
content: '';
position: absolute;
top: -20%; left: -10%;
width: 50%; height: 100%;
background: radial-gradient(ellipse at 30% 40%, rgba(0,184,173,0.07) 0%, transparent 60%);
pointer-events: none;
} }
/* Left copy panel */
.hero-left { .hero-left {
display: flex; flex-direction: column; justify-content: center; display: flex; flex-direction: column; justify-content: center;
padding: 48px 48px 48px 5vw; padding: 60px 40px 60px 6vw;
gap: 0; position: relative; z-index: 1;
} }
.hero-badge { .hero-badge {
display: inline-flex; align-items: center; gap: 8px; display: inline-flex; align-items: center; gap: 8px;
padding: 5px 13px; border-radius: 100px; padding: 5px 14px; border-radius: 100px;
background: var(--accent-bg); border: 1px solid rgba(0,184,173,0.3); background: var(--accent-bg); border: 1px solid rgba(0,184,173,0.3);
font-size: 0.72rem; font-weight: 600; color: var(--accent); font-size: 0.72rem; font-weight: 600; color: var(--accent);
margin-bottom: 20px; width: fit-content; margin-bottom: 28px; width: fit-content; letter-spacing: 0.04em;
} }
.hero-badge::before { content: '✦'; } .hero-badge::before { content: '✦'; font-size: 0.6rem; }
.hero h1 { .hero h1 {
font-size: clamp(1.9rem, 2.6vw, 3rem); font-weight: 800; font-size: clamp(2.2rem, 3vw, 3.5rem); font-weight: 800;
line-height: 1.12; letter-spacing: -0.03em; line-height: 1.1; letter-spacing: -0.03em;
margin-bottom: 16px; color: var(--text); margin-bottom: 20px; color: var(--text);
} }
.hero h1 em { font-style: normal; color: var(--accent); } .hero h1 em { font-style: normal; color: var(--accent); }
.hero-sub { .hero-sub {
font-size: 0.95rem; color: var(--muted); font-size: 1rem; color: var(--muted);
line-height: 1.75; margin-bottom: 28px; line-height: 1.8; margin-bottom: 36px; max-width: 400px;
} }
.hero-ctas { display: flex; flex-direction: column; gap: 10px; margin-bottom: 28px; max-width: 240px; } .hero-ctas { display: flex; gap: 12px; margin-bottom: 44px; flex-wrap: wrap; }
.trust-strip { .trust-strip {
display: flex; flex-wrap: wrap; gap: 4px 16px; display: flex; flex-wrap: wrap; gap: 4px 20px;
font-size: 0.73rem; color: var(--dim); font-weight: 500; font-size: 0.73rem; color: var(--dim); font-weight: 500;
padding-top: 24px; border-top: 1px solid var(--border); padding-top: 28px; border-top: 1px solid var(--border);
} }
.trust-strip span::before { content: '◆ '; color: var(--accent); font-size: 0.4rem; vertical-align: middle; } .trust-strip span::before { content: '◆ '; color: var(--accent); font-size: 0.4rem; vertical-align: middle; }
/* Right image panel */ /* Right: image as floating card on a soft grey wash */
.hero-right { .hero-right {
position: relative; overflow: hidden; padding: 40px 5vw 40px 24px;
display: flex; align-items: center; justify-content: center;
position: relative; z-index: 1;
} }
.hero-right img { /* Soft grey shape behind the card */
.hero-right::before {
content: '';
position: absolute;
inset: 24px 3vw 24px 0;
background: #f0f4f4;
border-radius: 24px;
z-index: 0;
}
.hero-card {
width: 100%; max-width: 520px;
aspect-ratio: 4/5;
border-radius: 18px;
overflow: hidden;
position: relative; z-index: 1;
box-shadow:
0 2px 0 1px rgba(0,0,0,0.04),
0 12px 40px rgba(0,0,0,0.12),
0 32px 80px rgba(0,0,0,0.08);
}
.hero-card img {
width: 100%; height: 100%; width: 100%; height: 100%;
object-fit: cover; object-position: center 20%; object-fit: cover; object-position: center 15%;
display: block; display: block;
} }
@media (max-width: 860px) { @media (max-width: 860px) {
.hero { grid-template-columns: 1fr; height: auto; } .hero { grid-template-columns: 1fr; min-height: auto; padding-bottom: 48px; }
.hero-right { height: 56vw; min-height: 260px; } .hero-right { padding: 0 24px 24px; }
.hero-left { padding: 40px 24px 36px; } .hero-right::before { inset: 0 0 0 0; border-radius: 18px; }
.hero-ctas { flex-direction: row; max-width: none; } .hero-card { aspect-ratio: 3/2; max-width: 100%; }
.hero-left { padding: 48px 24px 32px; }
} }
/* ── STATS BAR ── */ /* ── STATS BAR ── */
@@ -265,7 +297,6 @@
<!-- ── HERO ── --> <!-- ── HERO ── -->
<section class="hero"> <section class="hero">
<!-- Left: all copy, above the fold -->
<div class="hero-left"> <div class="hero-left">
<div class="hero-badge">Free Forever — No Credit Card</div> <div class="hero-badge">Free Forever — No Credit Card</div>
<h1>Your GCC Clinic, Running on <em>WhatsApp</em> — Reminders, Leads &amp; Follow-Ups, Automated.</h1> <h1>Your GCC Clinic, Running on <em>WhatsApp</em> — Reminders, Leads &amp; Follow-Ups, Automated.</h1>
@@ -281,9 +312,10 @@
<span>Jeddah</span> <span>Jeddah</span>
</div> </div>
</div> </div>
<!-- Right: single strong image, full height -->
<div class="hero-right"> <div class="hero-right">
<img src="img/hero-human.jpg" alt="Clinic owner in control, Dubai"> <div class="hero-card">
<img src="img/hero-human.jpg" alt="Clinic owner in control, Dubai">
</div>
</div> </div>
</section> </section>