From 0df9c11bd175023f9fa7c61b68af571d09da2067 Mon Sep 17 00:00:00 2001 From: hermes Date: Sun, 14 Jun 2026 14:19:20 +0000 Subject: [PATCH] fix(css): constrain legal pages (impressum, datenschutz) to main container width The .legal-page
element had no CSS rules at all, so the Impressum and Datenschutz text was rendering flush against the left edge of the viewport (x=0, width=1265 at 1280px viewport). Both view files share the .legal-page class, so a single CSS rule fixes both. Added a complete legal-page stylesheet (max-width 1200px, margin auto, 6rem 3rem padding, matching .floors-section / .lage-section / .pricing-section / .contact-section), plus minimal typography for h1/h2/h3, body text, lists, links, the .legal-divider
, the .legal-back link, and a 768px mobile padding adjustment. Measured on 1265px viewport: - main.legal-page: 32.5/1200 (was 0/1265) - h1 content area: 80.5/1104 inside the 3rem horizontal padding --- public/css/haus-schleusingen.css | 106 +++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) diff --git a/public/css/haus-schleusingen.css b/public/css/haus-schleusingen.css index 182b103..6a9e8d9 100755 --- a/public/css/haus-schleusingen.css +++ b/public/css/haus-schleusingen.css @@ -1678,3 +1678,109 @@ nav:not(.scrolled) .locale-switcher__trigger:focus-visible { outline: 2px solid #b91c1c; outline-offset: 2px; } + +/* LEGAL PAGES (Impressum, Datenschutz) */ +.legal-page { + max-width: 1200px; + margin: 0 auto; + padding: 6rem 3rem; + color: var(--dark); +} + +.legal-page .section-eyebrow { + display: block; + margin-bottom: 1rem; +} + +.legal-page h1 { + font-family: "Cormorant Garamond", serif; + font-size: clamp(2rem, 3.5vw, 3rem); + font-weight: 300; + line-height: 1.2; + margin-bottom: 2.5rem; + color: var(--charcoal); +} + +.legal-page h2 { + font-family: "DM Sans", sans-serif; + font-size: 1.1rem; + font-weight: 600; + letter-spacing: 0.04em; + color: var(--charcoal); + margin: 2rem 0 0.75rem; +} + +.legal-page h3 { + font-family: "DM Sans", sans-serif; + font-size: 0.85rem; + font-weight: 600; + letter-spacing: 0.06em; + text-transform: uppercase; + color: var(--stone-strong); + margin: 1.5rem 0 0.5rem; +} + +.legal-page p, +.legal-page address, +.legal-page li { + font-size: 0.95rem; + line-height: 1.85; + color: var(--stone-strong); +} + +.legal-page address { + font-style: normal; + margin-bottom: 1rem; +} + +.legal-page ul { + list-style: disc; + padding-left: 1.5rem; + margin: 0.5rem 0 1.25rem; +} + +.legal-page ul li { + margin-bottom: 0.25rem; +} + +.legal-page a { + color: var(--accent); + text-decoration: none; + border-bottom: 1px solid rgb(139 105 20 / 25%); + transition: border-color 0.2s, color 0.2s; +} + +.legal-page a:hover { + color: var(--accent-strong); + border-bottom-color: var(--accent-strong); +} + +.legal-divider { + border: none; + border-top: 1px solid var(--warm); + margin: 2.5rem 0; +} + +.legal-back { + display: inline-block; + margin-top: 2.5rem; + font-size: 0.78rem; + font-weight: 600; + letter-spacing: 0.15em; + text-transform: uppercase; + color: var(--accent); + border-bottom: 1px solid var(--accent); + padding-bottom: 2px; + transition: color 0.2s, border-color 0.2s; +} + +.legal-back:hover { + color: var(--accent-strong); + border-bottom-color: var(--accent-strong); +} + +@media (width <= 768px) { + .legal-page { + padding: 4rem 1.5rem; + } +}