.page-hero, .page-content { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.page-hero { padding: 80px 0 48px; border-bottom: 1px solid rgb(255 255 255 / 9%); }
.page-hero h1 { margin: 0; font: 700 clamp(2.4rem, 6vw, 4.4rem)/1.05 'Playfair Display', Georgia, serif; }
.page-hero p { max-width: 650px; color: var(--wt-muted); font-size: 1.1rem; line-height: 1.7; }
.page-content { min-height: 52vh; padding: 48px 0 80px; color: var(--wt-text); }
.page-content h2 { font: 700 2rem/1.2 'Playfair Display', Georgia, serif; }
.page-content p, .page-content li { color: var(--wt-muted); line-height: 1.75; }
.content-card { max-width: 760px; padding: 30px; background: var(--wt-surface); border: 1px solid rgb(255 255 255 / 8%); border-radius: 14px; }
.form-card { max-width: 480px; }
.form-card label { display: grid; gap: 8px; margin: 17px 0; color: var(--wt-text); font-weight: 600; }
.form-card input, .form-card textarea { width: 100%; padding: 12px; color: white; background: #0e0e15; border: 1px solid rgb(255 255 255 / 13%); border-radius: 7px; font: inherit; }
.form-card textarea { min-height: 140px; resize: vertical; }
.notice { padding: 14px 16px; color: #ffe7a0; background: #4d3d131f; border: 1px solid #e6b84e55; border-radius: 8px; }
.site-footer { margin-top: auto; }
.site-footer__brand { position: relative; display: block; width: 160px; height: 64px; overflow: hidden; text-decoration: none; }.site-footer__brand img { position: absolute; top: -42px; left: 0; display: block; width: 160px; height: 160px; max-width: none; }
.site-footer nav { display: flex; flex-wrap: wrap; gap: 18px; justify-content: flex-end; }
@media (max-width: 760px) { .page-hero { padding: 54px 0 36px; }.page-content { padding: 34px 0 60px; }.content-card { padding: 22px; }.site-footer nav { justify-content: flex-start; } }
