/* Author-assigned classes only. No generated module IDs or builder internals. */
.thorn3-site .et_pb_section.thorn3-section { padding-block: var(--thorn3-section-space); background-color: var(--thorn3-paper); }
.thorn3-site .et_pb_section.thorn3-dark { background-color: var(--thorn3-ink); color: var(--thorn3-paper); }
.thorn3-site .et_pb_row.thorn3-container { width: calc(100% - var(--thorn3-gutter) * 2); max-width: var(--thorn3-container); padding-block: 0; }
.thorn3-site .et_pb_text.thorn3-prose { font-family: var(--thorn3-font); font-size: var(--thorn3-text-body); line-height: var(--thorn3-leading); }
.thorn3-site .thorn3-display :where(h1,h2) { font-size: var(--thorn3-text-h1); font-family: var(--thorn3-font); line-height: var(--thorn3-leading-tight); letter-spacing: -.05em; }
.thorn3-site .thorn3-dark :where(.et_pb_text,h1,h2,h3,p) { color: var(--thorn3-paper); }
.thorn3-site .et_pb_button.thorn3-button { background: var(--thorn3-ink); color: var(--thorn3-paper); border: var(--thorn3-border) solid var(--thorn3-ink); border-radius: var(--thorn3-radius); font-size: var(--thorn3-text-body); padding: var(--thorn3-space-3) var(--thorn3-space-5); }
.thorn3-site .et_pb_button.thorn3-button::after { content: none; }
.thorn3-site .thorn3-gallery img { height: auto; object-fit: contain; }
/* Keep the saved Divi Global Footer's social links on one row. */
.thorn3-editorial .et-l--footer img.social { display: inline-block; }
/* Preserve older authored semantic classes from the discovered child theme. */
.thorn3-section-ink, .thorn3-section-dark { background: var(--thorn3-ink); color: var(--thorn3-paper); }
.thorn3-section-light, .thorn3-section-ivory { background: var(--thorn3-ivory); color: var(--thorn3-ink); }
.thorn3-max-text { max-width: var(--thorn3-reading); }

/* The Blog page keeps its authored Divi content, with a full-bleed banner and fluid rows. */
.thorn3-blog-landing { width: 100%; max-width: none; }
.thorn3-blog-landing .et_pb_section.et_pb_fullwidth_section { display: block !important; }
.thorn3-blog-landing .et_pb_fullwidth_header { min-height: clamp(12rem, 23vw, 16rem); background-size: cover; background-position: center; }
.thorn3-blog-landing .et_pb_section > .et_pb_row { box-sizing: border-box; width: 100% !important; max-width: none !important; padding-inline: var(--thorn3-gutter) !important; }
