/* Decorative artwork and balanced spacing around it across all public pages. */
.ds-page-banner{width:min(680px,100%);margin:24px auto;pointer-events:none;text-align:center;}
.ds-page-banner>img{display:block;width:100%;height:auto;max-height:265px;object-fit:contain;margin:0 auto;}
.ds-page-banner--home{width:min(650px,100%);margin:16px auto;}
.ds-page-banner--compact{width:min(180px,65%);margin:24px auto;}
.ds-page-banner--compact>img{max-height:180px;}
.ds-ornate-divider{display:block;clear:both;width:min(160px,62%);margin:32px auto;pointer-events:none;text-align:center;}
.ds-ornate-divider>img{display:block;width:100%;height:auto;max-height:205px;object-fit:contain;margin:0 auto;}
@media(max-width:500px){.ds-page-banner{margin:20px auto;}.ds-page-banner>img{max-height:210px;}.ds-page-banner--compact>img{max-height:155px;}.ds-ornate-divider{width:min(140px,62%);margin:28px auto;}}
@media print{.ds-page-banner,.ds-ornate-divider{display:none!important;}}

/* Artwork owns the gap: adjacent content must not add a second, unequal gap. */
:has(+ :is(.ds-page-banner,.ds-ornate-divider)){margin-bottom:0;padding-bottom:0;}
:is(.ds-page-banner,.ds-ornate-divider)+*{margin-top:0;padding-top:0;}
