feat: weave speed-reactive terrain and ground roadside signs
Anchor desktop signs beside the road and feather the compact reading edge with measured chapter landings. Add a continuous cyan-to-coral terrain grid and a bounded rear wake that builds with existing drive speed. Preserve approved content, media, soundtrack, and canonical journey contracts.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
Existing content, navigation and audio controls retain their contracts. */
|
||||
:root {
|
||||
--canvas: #080d18;
|
||||
--surface: rgb(12 20 32 / 96%);
|
||||
--surface: rgb(12 20 32 / 98.5%);
|
||||
--surface-strong: #0c1420;
|
||||
--surface-soft: #132130;
|
||||
--line: rgb(160 196 212 / 18%);
|
||||
@@ -871,13 +871,32 @@ body {
|
||||
}
|
||||
}
|
||||
|
||||
/* The live scene has a genuine viewing corridor below navigation. */
|
||||
/* Preserve the sign corridor while landing headings above the unchanged
|
||||
journey activation line, including short windows and padded panels. */
|
||||
html[data-expressway='live'] .portfolio-section {
|
||||
scroll-margin-block-start: calc(var(--sign-stage-bottom, 188px) + 18px);
|
||||
scroll-margin-block-start: min(
|
||||
max(
|
||||
var(
|
||||
--chapter-landing-space,
|
||||
calc(var(--sign-stage-bottom, 188px) + 18px)
|
||||
),
|
||||
calc(
|
||||
var(--sign-reading-top, 220px) + var(--chapter-reading-inset, 4px) -
|
||||
var(--chapter-heading-offset, 70px)
|
||||
)
|
||||
),
|
||||
calc(35svh - var(--chapter-heading-offset, 70px) - 6px)
|
||||
);
|
||||
}
|
||||
html[data-expressway='live'] .portfolio-section[data-layout='project-stage'] {
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom, 188px) + 50px);
|
||||
--chapter-reading-inset: 30px;
|
||||
}
|
||||
@media print {
|
||||
.portfolio-main {
|
||||
.portfolio-main,
|
||||
.portfolio-main > * {
|
||||
clip-path: none !important;
|
||||
mask-image: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -956,7 +975,13 @@ html[data-expressway='live'] .portfolio-section {
|
||||
}
|
||||
@media (max-height: 650px) {
|
||||
html[data-expressway='live'] .portfolio-section {
|
||||
scroll-margin-block-start: calc(var(--sign-stage-bottom) - 28px);
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom) - 28px);
|
||||
}
|
||||
html[data-expressway='live'] #contact {
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom) - 52px);
|
||||
}
|
||||
html[data-expressway='live'] .portfolio-section[data-layout='project-stage'] {
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom) - 22px);
|
||||
}
|
||||
}
|
||||
@media (min-width: 768px) and (max-width: 900px) {
|
||||
@@ -971,6 +996,15 @@ html[data-expressway='live'] .portfolio-section {
|
||||
font-size: 32px;
|
||||
}
|
||||
}
|
||||
@media (max-height: 559px) {
|
||||
html[data-expressway='live'] .portfolio-section,
|
||||
html[data-expressway='live'] #contact {
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom) + 12px);
|
||||
}
|
||||
html[data-expressway='live'] .portfolio-section[data-layout='project-stage'] {
|
||||
--chapter-landing-space: calc(var(--sign-stage-bottom) + 34px);
|
||||
}
|
||||
}
|
||||
@media (min-width: 768px) and (max-height: 559px) {
|
||||
html[data-expressway='live'] .portfolio-section[data-layout] {
|
||||
inline-size: 60%;
|
||||
|
||||
Reference in New Issue
Block a user