.editorial-heading { max-width: 850px; margin: 0 auto 48px; text-align: center; }
.editorial-heading h1 { margin: 16px 0 22px; overflow-wrap: anywhere; }
.editorial-kicker { color: var(--accent-dark); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; }
.editorial-lead { color: var(--ink-soft); font-size: 1.05rem; line-height: 1.85; margin: 22px auto 0; max-width: 680px; }
.editorial-heading time, .editorial-card time { color: var(--ink-soft); font-size: .75rem; }
.editorial-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
.editorial-card { display: flex; flex-direction: column; border: 1px solid var(--line); background: var(--white); border-radius: 4px; overflow: hidden; }
.editorial-card-photo { display: block; overflow: hidden; }
.editorial-card-photo img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform 200ms ease; }
.editorial-card-photo:hover img { transform: scale(1.025); }
.editorial-card-copy { padding: clamp(22px, 3vw, 36px); display: flex; flex: 1; flex-direction: column; align-items: flex-start; }
.editorial-card-copy h2 { font-size: clamp(1.55rem, 2.7vw, 2.15rem); line-height: 1.22; margin: 12px 0 16px; }
.editorial-card-copy h2 a { color: var(--ink); text-decoration: none; }
.editorial-card-copy p { font-size: .94rem; line-height: 1.8; color: var(--ink-soft); margin: 0 0 24px; }
.editorial-more { margin-top: auto; color: var(--accent-dark); text-underline-offset: 5px; font-size: .82rem; padding: 10px 0; }
.editorial-more span { margin-left: 12px; }
.editorial-cover { display: block; max-width: 1040px; margin: 0 auto 48px; background: var(--paper-deep); }
.editorial-cover img { display: block; width: 100%; max-height: 650px; object-fit: contain; }
.editorial-prose { max-width: 720px; margin: 0 auto; }
.editorial-prose p { font-size: 1.05rem; line-height: 1.95; margin: 0 0 26px; overflow-wrap: anywhere; }
.editorial-photo-section { max-width: 1040px; margin: 54px auto 0; }
.editorial-photo-section h2 { font-size: 1.8rem; }
.editorial-photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.editorial-photos img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 3px; }
.editorial-return { margin-top: 50px; padding-top: 30px; border-top: 1px solid var(--line); text-align: center; }
.editorial-empty { text-align: center; color: var(--ink-soft); }
.design-preview-page .contact-hero, .design-preview-page .legal-header, .design-preview-page .shipping-payment-hero { text-align: center; margin: 0 auto 46px; }
.design-preview-page .contact-page-intro, .design-preview-page .shipping-payment-hero p { margin-left: auto; margin-right: auto; }
.design-preview-page .contact-list { max-width: 1060px; margin: 0 auto; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
.design-preview-page .contact-item { box-shadow: none; background: var(--white); }
.design-preview-page .contact-item-primary { background: var(--paper-deep); }
.design-preview-page .contact-item h2 { font-size: 1.8rem; margin-bottom: 22px; }
.design-preview-page .contact-item p { font-size: .95rem; line-height: 1.85; }
.design-preview-page .contact-email-link { font-size: clamp(1rem, 2vw, 1.4rem); color: var(--accent-dark); overflow-wrap: anywhere; }
.design-preview-page .contact-social-links a { color: var(--ink); border-color: var(--line); font-size: .95rem; }
.design-preview-page .legal-page { max-width: 1080px; }
.design-preview-page .legal-content { max-width: 900px; margin: 0 auto; box-shadow: none; }
.design-preview-page .legal-content h2 { font-size: clamp(1.4rem, 2.8vw, 1.9rem); line-height: 1.35; margin-top: 34px; }
.design-preview-page .legal-content h2:first-child { margin-top: 0; }
.design-preview-page .legal-page h1 { overflow-wrap: anywhere; }
html .design-preview-page .legal-page p, .design-preview-page .legal-content li { font-size: 1rem; line-height: 1.85; overflow-wrap: anywhere; }
.design-preview-page .legal-content ul, .design-preview-page .legal-content ol { padding-left: 1.4em; margin: 18px 0 24px; }
.design-preview-page .legal-content li + li { margin-top: 8px; }
.design-preview-page .legal-page a { color: var(--accent-dark); text-underline-offset: 3px; overflow-wrap: anywhere; }
.design-preview-page .shipping-payment-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 36px; }
.design-preview-page .shipping-payment-card { padding: 26px; box-shadow: none; background: var(--paper-deep); }
.design-preview-page .shipping-payment-card h2 { font-size: 1.4rem; }
@media (max-width: 760px) {
    .editorial-grid { grid-template-columns: 1fr; gap: 26px; }
    .editorial-heading { margin-bottom: 32px; }
    .editorial-lead, .editorial-prose p { font-size: 1rem; }
    .editorial-cover { margin-bottom: 32px; }
    .editorial-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .design-preview-page .contact-list, .design-preview-page .shipping-payment-summary { grid-template-columns: 1fr; }
    .design-preview-page .legal-content { padding: 24px 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .editorial-card-photo img { transition: none; }
    .editorial-card-photo:hover img { transform: none; }
}
