/* Shared layouts for Phase 4A. All copy, links and components remain Elementor widgets. */
.lavinty-architecture #page .lva-section { padding: calc(var(--lavinty-space-8) + var(--lavinty-space-6)) var(--lavinty-space-6); }
.lavinty-architecture #page .lva-section > .elementor-container { max-width: var(--lavinty-content-max); }
.lavinty-architecture #page .lva-section .elementor-widget-wrap { align-content: flex-start; padding: 0; }
.lavinty-architecture #page .lva-section .elementor-widget { width: 100%; margin-block-end: 0; min-width: 0; }
.lavinty-architecture #page .lva-section :is(h1,h2,h3,p) { margin-block: 0; }
.lavinty-architecture #page .lva-section h1 { font-size: var(--lavinty-text-h1); line-height: 1.15; letter-spacing: -.035em; max-width: 21ch; }
.lavinty-architecture #page .lva-section h2 { font-size: var(--lavinty-text-h2); max-width: 28ch; }
.lavinty-architecture #page .lva-section h3 { font-size: var(--lavinty-text-h4); line-height: 1.35; }
.lavinty-architecture #page .lva-section .elementor-widget-text-editor { color: var(--lavinty-muted); }
.lavinty-architecture #page .lva-section .elementor-widget-text-editor p + p { margin-block-start: var(--lavinty-space-4); }
.lavinty-architecture #page .lva-eyebrow .elementor-heading-title { font-size: .75rem; font-weight: 600; letter-spacing: .12em; line-height: 1.6; color: var(--lavinty-link); }
.lavinty-architecture #page .lva-hero { background: var(--lavinty-off-white); border-block-end: 1px solid var(--lavinty-border); }
.lavinty-architecture #page .lva-hero > .elementor-container { display: grid; grid-template-columns: 1.65fr 1fr; gap: var(--lavinty-space-9); align-items: center; }
.lavinty-architecture #page .lva-hero > .elementor-container > .elementor-column { width: 100%; min-width: 0; }
.lavinty-architecture #page .lva-hero-copy > .elementor-widget-wrap { display: flex; flex-direction: column; gap: var(--lavinty-space-5); }
.lavinty-architecture #page .lva-breadcrumb { font-size: var(--lavinty-text-small); }
.lavinty-architecture #page .lva-breadcrumb a { text-underline-offset: .2em; }
.lavinty-architecture #page .lva-lede { max-width: 65ch; font-size: 1.125rem; line-height: 1.75; }
.lavinty-architecture #page .lva-brief > .elementor-widget-wrap { padding: var(--lavinty-space-7); border-inline-start: 3px solid var(--lavinty-teal); background: var(--lavinty-navy); border-radius: var(--lavinty-radius-card); display: flex; flex-direction: column; gap: var(--lavinty-space-5); }
.lavinty-architecture #page .lva-brief h2 { color: var(--lavinty-white); font-size: 1.375rem; }
.lavinty-architecture #page .lva-brief .elementor-widget-text-editor { color: var(--lavinty-silver); }
.lavinty-architecture #page .lva-brief .lva-eyebrow .elementor-heading-title { color: var(--lavinty-teal); }
.lavinty-architecture #page .lva-content > .elementor-container > .elementor-column > .elementor-widget-wrap { display: flex; flex-direction: column; gap: var(--lavinty-space-7); }
.lavinty-architecture #page .lva-intro { max-width: 72ch; }
.lavinty-architecture #page .lva-muted { background: var(--lavinty-off-white); }
.lavinty-architecture #page .lva-grid > .elementor-container { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--lavinty-space-6); }
.lavinty-architecture #page .lva-grid.lva-three > .elementor-container { grid-template-columns: repeat(3,minmax(0,1fr)); }
.lavinty-architecture #page .lva-grid > .elementor-container > .elementor-column { width: 100%; min-width: 0; }
.lavinty-architecture #page .lva-card > .elementor-widget-wrap { display: flex; flex-direction: column; gap: var(--lavinty-space-4); padding: var(--lavinty-space-6); border: 1px solid var(--lavinty-border); background: var(--lavinty-white); border-radius: var(--lavinty-radius-card); height: 100%; }
.lavinty-architecture #page .lva-card .elementor-widget-text-editor { font-size: 1rem; }
.lavinty-architecture #page .lva-card .lva-card-link { margin-block-start: auto; padding-block-start: var(--lavinty-space-2); }
.lavinty-architecture #page .lva-text-link .elementor-button { color: var(--lavinty-link); background: transparent; border: 0; box-shadow: none; padding: var(--lavinty-space-2) 0; text-align: start; font-size: 1rem; }
.lavinty-architecture #page .lva-text-link .elementor-button:hover { text-decoration: underline; text-underline-offset: .25em; color: var(--lavinty-navy); }
.lavinty-architecture #page .lva-step .elementor-widget-wrap { border-block-start: 3px solid var(--lavinty-teal); }
.lavinty-architecture #page .lva-number .elementor-heading-title { font-size: .8125rem; font-weight: 600; letter-spacing: .08em; color: var(--lavinty-link); }
.lavinty-architecture #page .lva-icon img { width: 48px; height: 48px; }
.lavinty-architecture #page .lva-faq { border-block-start: 1px solid var(--lavinty-border); padding-block-start: var(--lavinty-space-6); }
.lavinty-architecture #page .lva-faq h3 { margin-block-end: var(--lavinty-space-3); }
.lavinty-architecture #page .lva-faq .elementor-widget-wrap { display: flex; flex-direction: column; gap: var(--lavinty-space-3); }
.lavinty-architecture #page .lva-cta { background: var(--lavinty-navy); }
.lavinty-architecture #page .lva-cta h2 { color: var(--lavinty-white); }
.lavinty-architecture #page .lva-cta .elementor-widget-text-editor { color: var(--lavinty-silver); }
.lavinty-architecture #page .lva-cta .elementor-button { background: var(--lavinty-teal); color: var(--lavinty-navy); }
.lavinty-architecture #page .lva-cta .elementor-button:hover { background: var(--lavinty-white); }
.lavinty-architecture #page .lva-review { border: 2px dashed var(--lavinty-link); padding: var(--lavinty-space-6); background: var(--lavinty-off-white); }
@media (max-width:1024px) {
 .lavinty-architecture #page .lva-section { padding-block: var(--lavinty-space-9); }
 .lavinty-architecture #page .lva-hero > .elementor-container { gap: var(--lavinty-space-7); grid-template-columns: 1.5fr 1fr; }
 .lavinty-architecture #page .lva-grid.lva-three > .elementor-container { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
 .lavinty-architecture #page .lva-section { padding: var(--lavinty-space-8) var(--lavinty-space-5); }
 .lavinty-architecture #page .lva-hero > .elementor-container,
 .lavinty-architecture #page .lva-grid > .elementor-container,
 .lavinty-architecture #page .lva-grid.lva-three > .elementor-container { grid-template-columns: minmax(0,1fr); }
 .lavinty-architecture #page .lva-hero { padding-block-start: var(--lavinty-space-7); }
 .lavinty-architecture #page .lva-lede { font-size: 1rem; }
 .lavinty-architecture #page .lva-brief > .elementor-widget-wrap { padding: var(--lavinty-space-6); }
 .lavinty-architecture #page .lva-card > .elementor-widget-wrap { padding: var(--lavinty-space-5); }
 .lavinty-architecture #page .lva-section h1 { overflow-wrap: break-word; }
}
