diff --git a/css/styles.css b/css/styles.css index 20fd7fa..8bac068 100644 --- a/css/styles.css +++ b/css/styles.css @@ -161,9 +161,9 @@ body.menu-open .drawer { transform: translateY(0); opacity: 1; pointer-events: a @media (min-width: 960px) { .hero__ghost { --btn-fg: var(--color-ink); border-color: var(--color-line-2); background: transparent; } .hero__ghost:hover { background: var(--color-paper-2); border-color: var(--color-ink-soft); } - .hero { display: flex; align-items: center; color: var(--color-ink); background: var(--color-paper); min-height: min(98vh, 1000px); padding-top: 5rem; } + .hero { display: flex; align-items: center; color: var(--color-ink); background: var(--color-paper); min-height: min(92vh, 900px); padding-top: 7rem; padding-bottom: 2.5rem; } .hero__grid { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: clamp(1.75rem, 3.5vw, 3.5rem); align-items: center; min-height: auto; } - .hero__media { position: relative; inset: auto; z-index: 1; border-radius: var(--radius-lg); overflow: clip; aspect-ratio: 4/5; max-height: 88vh; box-shadow: var(--shadow-soft); } + .hero__media { position: relative; inset: auto; z-index: 1; border-radius: var(--radius-lg); overflow: clip; aspect-ratio: 4/5; max-height: 68vh; box-shadow: var(--shadow-soft); } .hero__media::after { background: linear-gradient(180deg, transparent 55%, oklch(24% 0.02 54 / 0.30) 100%); } .hero__text { padding-block: 0; padding-right: clamp(0.5rem, 2vw, 2rem); } .hero h1 { font-size: clamp(3rem, 5.4vw, 5.4rem); line-height: 1.03; max-width: 12ch; margin-top: var(--space-lg); } @@ -198,10 +198,16 @@ body.menu-open .drawer { transform: translateY(0); opacity: 1; pointer-events: a .brand__name { display: flex; flex-direction: column; font-size: 0.95rem; line-height: 1.05; letter-spacing: 0.13em; font-weight: 700; white-space: nowrap; } .brand__name b { display: block; font-weight: 700; } - /* Push the hero's top cluster down, clear of the nav, with breathing room between lines */ - .hero__grid { padding-top: clamp(5rem, 14vh, 7.5rem); } - .hero__eyebrow { margin-bottom: var(--space-xs); } - .hero h1 { margin-top: var(--space-xl); } + /* Hero fills exactly one screen: content sits just below the nav and flows down; + the SCROLL cue is pushed to the bottom (margin-top:auto), so the slack absorbs + into the gap above it and it fits short and tall phones alike. */ + .hero__grid { padding-top: 0; } + .hero__text { display: flex; flex-direction: column; min-height: 100svh; padding-block: clamp(4.5rem, 12vh, 6.5rem) clamp(1.5rem, 4vh, 2.5rem); } + .hero h1 { margin-top: clamp(0.85rem, 2.8vh, 1.6rem); } + .hero__sub { margin-top: clamp(0.7rem, 2vh, 1.25rem); } + .hero__actions { margin-top: clamp(1rem, 2.8vh, 1.9rem); } + .hero__quote { margin-top: clamp(1rem, 2.6vh, 1.75rem); padding-top: clamp(0.7rem, 1.6vh, 1rem); } + .hero__scroll { margin-top: auto; padding-top: clamp(1rem, 3vh, 2rem); } /* Over the dark hero video (nav transparent) — light + legible */ .nav:not(.nav--solid) .brand__name { color: var(--color-shell); text-shadow: 0 1px 14px oklch(18% 0.02 54 / 0.6); }