.public-builder-module{padding-block:72px}.builder-hero-grid{display:grid;grid-template-columns:1fr minmax(320px,.85fr);gap:56px;align-items:center}.builder-hero-grid>img{width:100%;max-height:560px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.public-builder-hero{background:radial-gradient(circle at 90% 10%,rgba(21,116,219,.17),transparent 35%),#f6faff}.public-builder-module .button{margin-top:24px}.builder-width-narrow{max-width:760px}.builder-width-normal{max-width:980px}.builder-width-wide{max-width:1180px}.builder-image img{width:100%;border-radius:22px;box-shadow:var(--shadow)}.builder-image figcaption{margin-top:12px;color:var(--muted);text-align:center}.builder-columns{display:grid;grid-template-columns:1fr 1fr;gap:52px}.builder-gallery{display:grid;gap:14px;margin-top:30px}.builder-gallery.columns-2{grid-template-columns:repeat(2,1fr)}.builder-gallery.columns-3{grid-template-columns:repeat(3,1fr)}.builder-gallery.columns-4{grid-template-columns:repeat(4,1fr)}.builder-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.builder-stats,.builder-testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}.builder-stats article,.builder-testimonials blockquote{margin:0;padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.builder-stats strong{display:block;color:var(--blue);font-size:2rem}.builder-stats span,.builder-testimonials cite{color:var(--muted)}.builder-divider{width:var(--shell);margin-inline:auto}.builder-divider.size-small{height:18px}.builder-divider.size-medium{height:42px}.builder-divider.size-large{height:76px}.align-center{text-align:center}.align-right{text-align:right}@media(max-width:820px){.builder-hero-grid,.builder-columns{grid-template-columns:1fr}.builder-gallery.columns-3,.builder-gallery.columns-4,.builder-stats,.builder-testimonials{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.builder-gallery.columns-2,.builder-gallery.columns-3,.builder-gallery.columns-4,.builder-stats,.builder-testimonials{grid-template-columns:1fr}}

/* Existing editor choices must produce distinct public layouts. */
.builder-hero-grid>div,.builder-columns>div{min-width:0;overflow-wrap:anywhere}
.builder-hero-image-left>img{grid-column:1;grid-row:1}.builder-hero-image-left>div{grid-column:2;grid-row:1}
.builder-hero-center{text-align:center}.builder-hero-center :is(h1,.section-lead){margin-inline:auto}
.builder-columns-wide-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.builder-columns-wide-right{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.builder-cta-soft{background:#eef5fd;color:var(--ink);box-shadow:none;border:1px solid var(--line)}
.builder-cta-outline{background:transparent;color:var(--ink);box-shadow:none;border:2px solid var(--blue)}
.builder-cta-soft h2,.builder-cta-outline h2{color:var(--navy)}.builder-cta-soft p:not(.eyebrow),.builder-cta-outline p:not(.eyebrow){color:var(--muted)}
.builder-cta-soft .button,.builder-cta-outline .button{background:var(--blue);color:var(--eo-accent-ink,#fff);flex-shrink:0}
.builder-form-fields{display:grid;gap:17px;min-width:0}.builder-form-two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-form-one-column{grid-template-columns:minmax(0,1fr)}
.builder-form-fields>label{min-width:0;overflow-wrap:anywhere}.builder-form-wide{grid-column:1/-1}.builder-form-fields :is(input,textarea,select){min-width:0;max-width:100%}
.builder-form-fields select{width:100%;padding:12px 14px;border:1px solid #cbd8e7;border-radius:10px;background:#fff;color:var(--ink)}
.builder-form-checkbox{display:flex;align-items:flex-start;gap:10px}.contact-form .builder-form-checkbox input,.builder-form-fields input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:3px 0}
.builder-divider{display:flex;align-items:center;justify-content:center}.builder-divider hr{width:100%;margin:0;border:0;border-top:1px solid var(--line)}.builder-divider-dots span{letter-spacing:10px;color:var(--blue);font-size:24px;line-height:1}
.builder-image.builder-width-full{width:100%;max-width:none}.builder-image.builder-width-full img{border-radius:0}
@media(max-width:820px){.builder-columns-wide-left,.builder-columns-wide-right{grid-template-columns:minmax(0,1fr)}.builder-hero-image-left>div,.builder-hero-image-left>img{grid-column:auto;grid-row:auto}.builder-hero-image-left>img{order:2}}
@media(max-width:560px){.builder-form-two-columns{grid-template-columns:minmax(0,1fr)}.public-builder-module .contact-form{padding:20px}.public-builder-module .contact-grid{min-width:0}}
