.builder-section{padding:var(--section-space,64px) 24px;border-bottom:1px solid var(--line)}
.builder-inner{max-width:var(--max);margin:auto}
.tone-light{background:var(--paper);color:var(--ink)}
.tone-dark{background:var(--night);color:var(--light)}
.tone-dark .card,.tone-dark .card h3,.tone-dark .prose,.tone-dark .section-link{color:var(--light)}
.tone-dark .meta,.tone-dark .card p{color:var(--light-muted)}
.tone-dark .section-heading{border-color:var(--line-light)}
.builder-section .hero{padding:0;min-height:0;gap:48px;width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.tone-light .hero h1,.tone-light .hero .lead,.tone-light .hero-intro{color:var(--ink)}
.tone-dark .eyebrow{color:var(--copper-light)}
.builder-section .hero h1{white-space:pre-line;font-size:clamp(36px,6vw,88px)}
.builder-section .hero-photo{border-radius:var(--card-radius,0)}
.builder-grid{display:grid;grid-template-columns:repeat(var(--columns,3),minmax(0,1fr));gap:32px}
.builder-grid .card{min-width:0}.builder-grid .card-image{border-radius:var(--card-radius,0);overflow:hidden}
.builder-grid .card-page .card-image{aspect-ratio:4/3}.builder-grid .card-page p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.builder-banner{display:block;max-width:100%;max-height:680px;object-fit:contain;margin:24px auto;border-radius:var(--card-radius,0)}
.builder-video{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000;max-height:80vh;margin:24px auto;border-radius:var(--card-radius,0)}
.builder-prose{max-width:900px;margin-bottom:28px}.builder-grid .card{margin:0}
.preview-notice{background:#ffefbd;color:#302a19;padding:12px;text-align:center;position:relative;z-index:100}
@media(max-width:900px){.builder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-section .hero{gap:24px}}
@media(max-width:540px){.builder-grid{grid-template-columns:1fr;gap:28px}.builder-section{padding:32px 18px}.builder-section .hero{display:flex;flex-direction:column}.builder-section .hero-photo{width:100%}.builder-section .section-heading{align-items:start;gap:16px}.builder-section .section-heading h2{font-size:28px}}
