/* Loaded after screen.css by fe_page.tpl, only at max-width: 900px. */
:root                           { --st-block-gap: 24px; --st-panel-padding: 20px; }
.st-theme #container            { display: block; padding: 32px 20px; }
.st-theme #main, .st-theme .aside { width: 100%; max-width: none; }
.st-theme h1                    { font-size: 32px; line-height: 42px; }
.st-theme h2, .st-theme .bh      { font-size: 26px; line-height: 34px; }
/* ==== HEADER ==== */
.st-theme #header               { padding: 14px 16px; }
.st-theme #header > .inside     { grid-template-columns: minmax(0,1fr) 44px; gap: 0 16px; }
.st-theme #header .st-brand     { width: 240px; }
.st-theme .st-site-navigation   { grid-column: 1 / -1; grid-row: 2; margin-top: 16px; }
.st-theme .st-header-actions    { grid-column: 1 / -1; grid-row: 3; justify-content: stretch; margin-top: 16px; }
.st-theme .st-header-actions a  { flex: 1 1 auto; }
.st-theme #header .level_1      { flex-direction: column; align-items: stretch; gap: 0; }
.st-theme #header .level_1 a    { padding: 10px 0; }
.st-theme #header.st-menu-ready .st-menu-toggle { grid-column: 2; grid-row: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 44px; height: 44px; margin: 0; padding: 10px; border: 0; border-radius: 4px; background: transparent; color: #fcf6eb; cursor: pointer; }
.st-theme .st-menu-toggle span  { display: block; flex: 0 0 3px; width: 24px; height: 3px; border-radius: 2px; background: currentColor; }
.st-theme #header.st-menu-ready:not(.st-menu-open) :is(.st-site-navigation,.st-header-actions) { display: none; }
.st-theme #header.st-menu-open .st-site-navigation { border-top: 1px solid var(--st-gold); padding-top: 12px; }
.st-theme .st-menu-open .st-menu-toggle span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.st-theme .st-menu-open .st-menu-toggle span:nth-child(2) { opacity: 0; }
.st-theme .st-menu-open .st-menu-toggle span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
/* ==== FOOTER ==== */
.st-theme #footer               { padding: 40px 28px 28px; }
.st-theme .st-footer__columns   { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 32px; }
.st-theme #footer .st-brand     { grid-column: 1 / -1; width: 270px; }
.st-theme #footer h2            { font-size: 15px; }
.st-theme #footer a             { display: inline-block; font-size: 13px; overflow-wrap: anywhere; }
.st-theme #footer li            { margin-bottom: 9px; }
.st-theme .st-footer__bottom    { margin-top: 28px; padding-top: 28px; }
.st-theme .st-footer__copyright { font-size: 12px; color: var(--st-paper); }

/* ==== BERATERSEITE UND REGISTRIERUNGSFELDER ==== */
#reg { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-top: 24px; margin-bottom: 40px; padding: 24px 20px; }
#reg div.phone { grid-template-columns: 104px minmax(0, 1fr); gap: 10px; }
#reg input.text, #reg select, #reg textarea { padding-left: 12px; padding-right: 12px; }
#reg .pw_input input { padding-right: 48px; }
.st-hero { min-height: 560px; padding: 48px 20px; }
.st-prepage .st-hero h1 { font-size: 52px; line-height: 60px; }
.st-hero__text { max-width: 520px; }
.st-intro { padding: 40px 20px; }
.st-prepage .st-intro h2, .st-prepage .st-steps h2 { font-size: 32px; line-height: 42px; }
.st-steps { padding: 36px 20px; }
.st-steps__list { grid-template-columns: minmax(0, 1fr); gap: 28px; }
body:has(.st-prepage) #reg { margin-top: 40px; }
body:has(.st-prepage) #reg .st-form-intro { padding: 16px 0 24px; }
body:has(.st-prepage) #reg .ctrl_consultingCategories ul { grid-template-columns: minmax(0,1fr); gap: 8px; }

/* ==== REGISTRATION-ONLY TEMPLATE ==== */
.st-theme.st-registration #header { min-height: 72px; }
.st-theme.st-registration #footer { padding: 12px 20px; }
.st-theme.st-registration #footer ul { gap: 4px 20px; }

/* ==== CMS REGISTRATION FEEDBACK ==== */
.st-theme:has(.st-registration-feedback) #container { padding: 24px; }
.st-theme:has(.st-registration-feedback) #header { padding: 24px; }
.st-theme:has(.st-registration-feedback) #header .st-brand { width: 280px; }
