
/* default styles for extension "tx_frontend" */
    .ce-align-left { text-align: left; }
    .ce-align-center { text-align: center; }
    .ce-align-right { text-align: right; }

    .ce-table td, .ce-table th { vertical-align: top; }

    .ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }

    .ce-left .ce-gallery, .ce-column { float: left; }
    .ce-center .ce-outer { position: relative; float: right; right: 50%; }
    .ce-center .ce-inner { position: relative; float: right; right: -50%; }
    .ce-right .ce-gallery { float: right; }

    .ce-gallery figure { display: table; margin: 0; }
    .ce-gallery figcaption { display: table-caption; caption-side: bottom; }
    .ce-gallery img { display: block; }
    .ce-gallery iframe { border-width: 0; }
    .ce-border img,
    .ce-border iframe {
        border: 2px solid #000000;
        padding: 0px;
    }

    .ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery {
        margin-bottom: 10px;
    }
    .ce-image .ce-gallery { margin-bottom: 0; }
    .ce-intext.ce-right .ce-gallery { margin-left: 10px; }
    .ce-intext.ce-left .ce-gallery { margin-right: 10px; }
    .ce-below .ce-gallery { margin-top: 10px; }

    .ce-column { margin-right: 10px; }
    .ce-column:last-child { margin-right: 0; }

    .ce-row { margin-bottom: 10px; }
    .ce-row:last-child { margin-bottom: 0; }

    .ce-above .ce-bodytext { clear: both; }

    .ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left: 40px; overflow: auto; }

    /* Headline */
    .ce-headline-left { text-align: left; }
    .ce-headline-center { text-align: center; }
    .ce-headline-right { text-align: right; }

    /* Uploads */
    .ce-uploads { margin: 0; padding: 0; }
    .ce-uploads li { list-style: none outside none; margin: 1em 0; }
    .ce-uploads img { float: left; padding-right: 1em; vertical-align: top; }
    .ce-uploads span { display: block; }

    /* Table */
    .ce-table { width: 100%; max-width: 100%; }
    .ce-table th, .ce-table td { padding: 0.5em 0.75em; vertical-align: top; }
    .ce-table thead th { border-bottom: 2px solid #dadada; }
    .ce-table th, .ce-table td { border-top: 1px solid #dadada; }
    .ce-table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.05); }
    .ce-table-bordered th, .ce-table-bordered td { border: 1px solid #dadada; }

    /* Space */
    .frame-space-before-extra-small { margin-top: 1em; }
    .frame-space-before-small { margin-top: 2em; }
    .frame-space-before-medium { margin-top: 3em; }
    .frame-space-before-large { margin-top: 4em; }
    .frame-space-before-extra-large { margin-top: 5em; }
    .frame-space-after-extra-small { margin-bottom: 1em; }
    .frame-space-after-small { margin-bottom: 2em; }
    .frame-space-after-medium { margin-bottom: 3em; }
    .frame-space-after-large { margin-bottom: 4em; }
    .frame-space-after-extra-large { margin-bottom: 5em; }

    /* Frame */
    .frame-ruler-before:before { content: ''; display: block; border-top: 1px solid rgba(0,0,0,0.25); margin-bottom: 2em; }
    .frame-ruler-after:after { content: ''; display: block; border-bottom: 1px solid rgba(0,0,0,0.25); margin-top: 2em; }
    .frame-indent { margin-left: 15%; margin-right: 15%; }
    .frame-indent-left { margin-left: 33%; }
    .frame-indent-right { margin-right: 33%; }

*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:#6b7280;border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:1rem;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:transparent}[type=checkbox]:indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:transparent}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:transparent}[type=file]{background:unset;border-color:inherit;border-radius:0;border-width:0;font-size:unset;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-bottom:3em;margin-top:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){border-inline-start-color:var(--tw-prose-quote-borders);border-inline-start-width:.25rem;color:var(--tw-prose-quotes);font-style:italic;font-weight:500;margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1em;quotes:"\201C""\201D""\2018""\2019"}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:2.25em;font-weight:800;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.5em;font-weight:700;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.25em;font-weight:600;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-bottom:2em;margin-top:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);color:var(--tw-prose-kbd);font-family:inherit;font-size:.875em;font-weight:500;padding-inline-end:.375em;padding-bottom:.1875em;padding-top:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);border-radius:.375rem;color:var(--tw-prose-pre-code);font-size:.875em;font-weight:400;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;overflow-x:auto;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-top:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-bottom:2em;margin-top:2em;table-layout:auto;width:100%}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-th-borders);border-bottom-width:1px}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em;vertical-align:bottom}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-td-borders);border-bottom-width:1px}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-color:var(--tw-prose-th-borders);border-top-width:1px}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-top:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.8888889em;margin-top:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;line-height:1.2;margin-bottom:.8em;margin-top:0}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;line-height:1.4;margin-bottom:.8em;margin-top:1.6em}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.5555556em}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.4285714;margin-bottom:.5714286em;margin-top:1.4285714em}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.8571429em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-top:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.25rem;font-size:.8571429em;line-height:1.6666667;margin-bottom:1.6666667em;margin-top:1.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-top:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.2857143em;margin-top:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5714286em;margin-top:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em;margin-top:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2.8571429em;margin-top:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-top:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7142857em;margin-top:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1em}.prose-base :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.25em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose-base :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose-base :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose-base :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-top:.1875em;padding-inline-start:.375em}.prose-base :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.375rem;font-size:.875em;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-top:.8571429em;padding-inline-start:1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose-base :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose-base :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(.prose-base>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(.prose-base>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose-base>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose-base :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose-base :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose-base :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:3em;margin-top:3em}.prose-base :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-top:.5714286em;padding-inline-start:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-base :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-base :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(.prose-base>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(.prose-base>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-bottom:1.0909091em;margin-top:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6666667em;margin-top:1.6666667em;padding-inline-start:1em}.prose-lg :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.8333333em;margin-top:0}.prose-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.6666667em;line-height:1.3333333;margin-bottom:1.0666667em;margin-top:1.8666667em}.prose-lg :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.3333333em;line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-lg :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.7777778em}.prose-lg :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.8888889em;padding-inline-end:.4444444em;padding-bottom:.2222222em;padding-top:.2222222em;padding-inline-start:.4444444em}.prose-lg :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.375rem;font-size:.8888889em;line-height:1.75;margin-bottom:2em;margin-top:2em;padding-inline-end:1.5em;padding-bottom:1em;padding-top:1em;padding-inline-start:1.5em}.prose-lg :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;padding-inline-start:1.5555556em}.prose-lg :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:3.1111111em;margin-top:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-top:.75em;padding-inline-start:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-xl{font-size:1.25rem;line-height:1.8}.prose-xl :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2em;line-height:1.5;margin-bottom:1em;margin-top:1em}.prose-xl :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1.0666667em}.prose-xl :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.8em;line-height:1;margin-bottom:.8571429em;margin-top:0}.prose-xl :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.8em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:1.5555556em}.prose-xl :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:.6666667em;margin-top:1.6em}.prose-xl :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.6;margin-bottom:.6em;margin-top:1.8em}.prose-xl :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.9em;padding-inline-end:.4em;padding-bottom:.25em;padding-top:.25em;padding-inline-start:.4em}.prose-xl :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-xl :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8611111em}.prose-xl :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-xl :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.5rem;font-size:.9em;line-height:1.7777778;margin-bottom:2em;margin-top:2em;padding-inline-end:1.3333333em;padding-bottom:1.1111111em;padding-top:1.1111111em;padding-inline-start:1.3333333em}.prose-xl :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-inline-start:1.6em}.prose-xl :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-inline-start:1.6em}.prose-xl :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.6em;margin-top:.6em}.prose-xl :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4em}.prose-xl :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4em}.prose-xl :where(.prose-xl>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(.prose-xl>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose-xl>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(.prose-xl>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose-xl>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6em;padding-inline-start:1.6em}.prose-xl :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2.8em;margin-top:2.8em}.prose-xl :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em;line-height:1.5555556}.prose-xl :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.6666667em;padding-bottom:.8888889em;padding-inline-start:.6666667em}.prose-xl :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-xl :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-xl :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.6666667em;padding-bottom:.8888889em;padding-top:.8888889em;padding-inline-start:.6666667em}.prose-xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-xl :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em;line-height:1.5555556;margin-top:1em}.prose-xl :where(.prose-xl>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(.prose-xl>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.form-input,.form-multiselect,.form-select,.form-textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem;--tw-shadow:0 0 #0000}.form-input:focus,.form-multiselect:focus,.form-select:focus,.form-textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.form-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-select:where([size]:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-full{left:100%}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[97\]{z-index:97}.col-span-1{grid-column:span 1/span 1}.col-span-10{grid-column:span 10/span 10}.col-span-11{grid-column:span 11/span 11}.col-span-12{grid-column:span 12/span 12}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-4{grid-column:span 4/span 4}.col-span-5{grid-column:span 5/span 5}.col-span-6{grid-column:span 6/span 6}.col-span-7{grid-column:span 7/span 7}.col-span-8{grid-column:span 8/span 8}.col-span-9{grid-column:span 9/span 9}.col-start-1{grid-column-start:1}.col-start-10{grid-column-start:10}.col-start-11{grid-column-start:11}.col-start-12{grid-column-start:12}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.col-start-4{grid-column-start:4}.col-start-5{grid-column-start:5}.col-start-6{grid-column-start:6}.col-start-7{grid-column-start:7}.col-start-8{grid-column-start:8}.col-start-9{grid-column-start:9}.col-end-1{grid-column-end:1}.col-end-10{grid-column-end:10}.col-end-11{grid-column-end:11}.col-end-12{grid-column-end:12}.col-end-13{grid-column-end:13}.col-end-2{grid-column-end:2}.col-end-3{grid-column-end:3}.col-end-4{grid-column-end:4}.col-end-5{grid-column-end:5}.col-end-6{grid-column-end:6}.col-end-7{grid-column-end:7}.col-end-8{grid-column-end:8}.col-end-9{grid-column-end:9}.m-0{margin:0}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.grid{display:grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.h-12{height:3rem}.h-14{height:3.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.max-h-12{max-height:3rem}.max-h-16{max-height:4rem}.max-h-\[90vh\]{max-height:90vh}.w-0{width:0}.w-10{width:2.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-\[70px\]{width:70px}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0}.min-w-\[200px\]{min-width:200px}.min-w-\[240px\]{min-width:240px}.max-w-lg{max-width:32rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(3rem*var(--tw-space-y-reverse));margin-top:calc(3rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-wrap{text-wrap:wrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-l-3xl{border-bottom-left-radius:1.5rem;border-top-left-radius:1.5rem}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-black\/5{border-color:rgba(0,0,0,.05)}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-\[\#0066b3\]{--tw-bg-opacity:1;background-color:rgb(0 102 179/var(--tw-bg-opacity,1))}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/85{background-color:hsla(0,0%,100%,.85)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.p-0{padding:0}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-16{padding-bottom:4rem;padding-top:4rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.not-italic{font-style:normal}.leading-tight{line-height:1.25}.tracking-\[0\.25em\]{letter-spacing:.25em}.tracking-normal{letter-spacing:0}.tracking-widest{letter-spacing:.1em}.text-\[\#003d5c\]{--tw-text-opacity:1;color:rgb(0 61 92/var(--tw-text-opacity,1))}.text-\[\#e2007f\]{--tw-text-opacity:1;color:rgb(226 0 127/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[\#0066b3\]\/30{--tw-shadow-color:rgba(0,102,179,.3);--tw-shadow:var(--tw-shadow-colored)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert:invert(100%)}.sepia{--tw-sepia:sepia(100%)}.filter,.sepia{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[20px\]{--tw-backdrop-blur:blur(20px)}.backdrop-blur-\[20px\],.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:-left-2:before{content:var(--tw-content);left:-.5rem}.before\:-left-3:before{content:var(--tw-content);left:-.75rem}.before\:-top-2:before{content:var(--tw-content);top:-.5rem}.before\:-top-3:before{content:var(--tw-content);top:-.75rem}.before\:left-0:before{content:var(--tw-content);left:0}.before\:top-0:before{content:var(--tw-content);top:0}.before\:h-2:before{content:var(--tw-content);height:.5rem}.before\:h-3:before{content:var(--tw-content);height:.75rem}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:w-2:before{content:var(--tw-content);width:.5rem}.before\:w-3:before{content:var(--tw-content);width:.75rem}.before\:w-full:before{content:var(--tw-content);width:100%}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.focus-within\:border-blue-300:focus-within{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.focus-within\:ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:ring-blue-100:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(219 234 254/var(--tw-ring-opacity,1))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-105:hover,.hover\:scale-110:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.hover\:bg-\[\#004d8a\]:hover{--tw-bg-opacity:1;background-color:rgb(0 77 138/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:text-\[\#0066b3\]:hover{--tw-text-opacity:1;color:rgb(0 102 179/var(--tw-text-opacity,1))}.hover\:text-\[\#e2007f\]:hover{--tw-text-opacity:1;color:rgb(226 0 127/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-75:hover{opacity:.75}.focus\:not-sr-only:focus{height:auto;margin:0;overflow:visible;padding:0;position:static;width:auto;clip:auto;white-space:normal}.focus\:absolute:focus{position:absolute}.focus\:left-2:focus{left:.5rem}.focus\:top-2:focus{top:.5rem}.focus\:z-\[100\]:focus{z-index:100}.focus\:rounded:focus{border-radius:.25rem}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.focus\:px-4:focus{padding-left:1rem;padding-right:1rem}.focus\:py-2:focus{padding-bottom:.5rem;padding-top:.5rem}.focus\:text-sm:focus{font-size:.875rem;line-height:1.25rem}.focus\:shadow-lg:focus{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-\[color\:var\(--color-primary\)\]:focus{--tw-ring-color:var(--color-primary)}.group\/l1:hover .group-hover\/l1\:block,.group\/l2:hover .group-hover\/l2\:block,.group\/l3:hover .group-hover\/l3\:block{display:block}.group:hover .group-hover\:w-\[380px\]{width:380px}.group:hover .group-hover\:w-auto{width:auto}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:flex-row{flex-direction:row}}@media (min-width:768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-10{grid-column:span 10/span 10}.md\:col-span-11{grid-column:span 11/span 11}.md\:col-span-12{grid-column:span 12/span 12}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-6{grid-column:span 6/span 6}.md\:col-span-7{grid-column:span 7/span 7}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-span-9{grid-column:span 9/span 9}.md\:col-start-1{grid-column-start:1}.md\:col-start-10{grid-column-start:10}.md\:col-start-11{grid-column-start:11}.md\:col-start-12{grid-column-start:12}.md\:col-start-2{grid-column-start:2}.md\:col-start-3{grid-column-start:3}.md\:col-start-4{grid-column-start:4}.md\:col-start-5{grid-column-start:5}.md\:col-start-6{grid-column-start:6}.md\:col-start-7{grid-column-start:7}.md\:col-start-8{grid-column-start:8}.md\:col-start-9{grid-column-start:9}.md\:col-end-1{grid-column-end:1}.md\:col-end-10{grid-column-end:10}.md\:col-end-11{grid-column-end:11}.md\:col-end-12{grid-column-end:12}.md\:col-end-13{grid-column-end:13}.md\:col-end-2{grid-column-end:2}.md\:col-end-3{grid-column-end:3}.md\:col-end-4{grid-column-end:4}.md\:col-end-5{grid-column-end:5}.md\:col-end-6{grid-column-end:6}.md\:col-end-7{grid-column-end:7}.md\:col-end-8{grid-column-end:8}.md\:col-end-9{grid-column-end:9}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/2{width:50%}.md\:w-1\/3{width:33.333333%}.md\:w-1\/4{width:25%}.md\:w-1\/6{width:16.666667%}.md\:w-3\/4{width:75%}.md\:w-5\/12{width:41.666667%}.md\:w-5\/6{width:83.333333%}.md\:w-7\/12{width:58.333333%}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:gap-8{gap:2rem}.md\:space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2.5rem*var(--tw-space-y-reverse));margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)))}.md\:py-12{padding-bottom:3rem;padding-top:3rem}.md\:py-24{padding-bottom:6rem;padding-top:6rem}}@media (min-width:1024px){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-10{grid-column:span 10/span 10}.lg\:col-span-11{grid-column:span 11/span 11}.lg\:col-span-12{grid-column:span 12/span 12}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-9{grid-column:span 9/span 9}.lg\:col-start-1{grid-column-start:1}.lg\:col-start-10{grid-column-start:10}.lg\:col-start-11{grid-column-start:11}.lg\:col-start-12{grid-column-start:12}.lg\:col-start-2{grid-column-start:2}.lg\:col-start-3{grid-column-start:3}.lg\:col-start-4{grid-column-start:4}.lg\:col-start-5{grid-column-start:5}.lg\:col-start-6{grid-column-start:6}.lg\:col-start-7{grid-column-start:7}.lg\:col-start-8{grid-column-start:8}.lg\:col-start-9{grid-column-start:9}.lg\:col-end-1{grid-column-end:1}.lg\:col-end-10{grid-column-end:10}.lg\:col-end-11{grid-column-end:11}.lg\:col-end-12{grid-column-end:12}.lg\:col-end-13{grid-column-end:13}.lg\:col-end-2{grid-column-end:2}.lg\:col-end-3{grid-column-end:3}.lg\:col-end-4{grid-column-end:4}.lg\:col-end-5{grid-column-end:5}.lg\:col-end-6{grid-column-end:6}.lg\:col-end-7{grid-column-end:7}.lg\:col-end-8{grid-column-end:8}.lg\:col-end-9{grid-column-end:9}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/3{width:66.666667%}.lg\:w-5\/12{width:41.666667%}.lg\:w-7\/12{width:58.333333%}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:gap-12{gap:3rem}.lg\:gap-6{gap:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width:1280px){.xl\:inline{display:inline}}
/* ============================================================
 * Base Components – TYPO3 Content-Element-Defaults für Tailwind-Sites
 *
 * Strukturelle CSS für TYPO3-CE-Markup (csc-frame, csc-menu, ce-teaser,
 * mobile-submenu, etc.). Sites themen via CSS-Custom-Properties.
 * Keine site-spezifischen Farben/Fonts hier.
 * ============================================================ */

/* ── Content-Container ───────────────────────────────────── */
.content_wrap {
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.fullwidth > .content_wrap {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

/* ── Headings (Tailwind-Preflight setzt margin:0 — wir geben Default zurück) */
h1, h2, h3, h4, h5, h6 { margin-bottom: 1rem; }
.csc-header { margin-bottom: 1rem; }

/* ── Frame-Rahmentypen ───────────────────────────────────── */
.csc-frame-ruler-before { border-top: 1px solid #e5e7eb; padding-top: 2rem; margin-top: 2rem; }
.csc-frame-ruler-after  { border-bottom: 1px solid #e5e7eb; padding-bottom: 2rem; margin-bottom: 2rem; }
.csc-frame-indent       { padding-left: 2.5rem; padding-right: 2.5rem; }
.csc-frame-indent-left  { padding-left: 2.5rem; }
.csc-frame-indent-right { padding-right: 2.5rem; }

/* ── Space Before/After ──────────────────────────────────── */
.csc-space-before-extra  { margin-top: 3rem; }
.csc-space-before-medium { margin-top: 2rem; }
.csc-space-before-small  { margin-top: 1rem; }
.csc-space-after-extra   { margin-bottom: 3rem; }
.csc-space-after-medium  { margin-bottom: 2rem; }
.csc-space-after-small   { margin-bottom: 1rem; }

/* ── CSC-Menüs (sitemap, subpages, section) ──────────────── */
.csc-menu {
  --csc-menu-border: #e5e7eb;
  --csc-menu-text: #4b5563;
  --csc-menu-hover: #111827;
  --csc-menu-active: #111827;
  --csc-menu-active-bar: #2563eb;

  list-style: none;
  margin: 0;
  padding: 0;
}
.csc-menu li { margin: 0; }
.csc-menu a {
  display: block;
  padding: 12px 0;
  font-size: 14px;
  line-height: 1.4;
  color: var(--csc-menu-text);
  text-decoration: none;
  transition: color .2s;
}
.csc-menu a:hover { color: var(--csc-menu-hover); }
.csc-menu .active > a,
.csc-menu [aria-current="page"] {
  color: var(--csc-menu-active);
  font-weight: 500;
}

/* Sidenav: vertikale Liste mit Trennlinien */
.csc-menu.side-nav {
  border-top: 1px solid var(--csc-menu-border);
}
.csc-menu.side-nav li {
  border-bottom: 1px solid var(--csc-menu-border);
}
.csc-menu.side-nav a {
  padding: 12px 16px 12px 0;
  position: relative;
}
.csc-menu.side-nav a:hover {
  padding-left: 8px;
}
.csc-menu.side-nav .active > a,
.csc-menu.side-nav [aria-current="page"] {
  padding-left: 16px;
}
.csc-menu.side-nav .active > a::before,
.csc-menu.side-nav [aria-current="page"]::before {
  content: "";
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-50%);
  width: 3px; height: 1.2em;
  background: var(--csc-menu-active-bar);
}
.csc-menu.side-nav ul {
  list-style: none;
  margin: 0 0 0 16px;
  padding: 0 0 8px;
  border-top: 1px solid var(--csc-menu-border);
}
.csc-menu.side-nav ul a {
  padding: 8px 16px 8px 0;
  font-size: 13px;
  color: var(--csc-menu-text);
}

/* ── Mobile-Menu Sub-Toggle (Chevron-Rotation) ───────────── */
.mobile-submenu-toggle { -webkit-tap-highlight-color: transparent; }
.mobile-submenu-toggle svg { transition: transform .2s ease; }
.mobile-submenu-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }

/* ── Teaser-CE (.ce-teaser) ──────────────────────────────── */
.ce-teaser {
  --teaser-bg: #ffffff;
  --teaser-border: #e5e7eb;
  --teaser-border-hover: #111827;
  --teaser-title: #111827;
  --teaser-text: #4b5563;
  --teaser-link: #2563eb;
  --teaser-radius: 4px;
}
.ce-teaser .teaser-card {
  background: var(--teaser-bg);
  border: 1px solid var(--teaser-border);
  border-radius: var(--teaser-radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.ce-teaser .teaser-card:hover {
  transform: translateY(-4px);
  border-color: var(--teaser-border-hover);
}
.ce-teaser .teaser-image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #f9fafb;
}
.ce-teaser .teaser-image a,
.ce-teaser .teaser-image img {
  display: block;
  width: 100%;
  height: 100%;
}
.ce-teaser .teaser-image img { object-fit: cover; }
.ce-teaser .teaser-title {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 500;
  margin: 0;
  padding: 24px 24px 12px;
}
.ce-teaser .teaser-title a {
  color: var(--teaser-title);
  text-decoration: none;
}
.ce-teaser .teaser-text {
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--teaser-text);
  margin: 0 0 24px;
  padding: 0 24px;
  flex: 1;
}
.ce-teaser .teaser-link {
  margin-top: auto;
  padding: 0 24px 24px;
  font-size: 13px;
  font-weight: 500;
  color: var(--teaser-link);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}
.ce-teaser .teaser-action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: gap .2s ease;
}
.ce-teaser .teaser-action::after {
  content: "→";
  display: inline-block;
  transition: transform .2s ease;
}
.ce-teaser .teaser-card:hover .teaser-action { gap: 14px; }

/* ── Google Maps (CE Anfahrtsweg) ────────────────────────
   .map_wrapper enthält #map (Karte) + #map_overlay (Consent-Placeholder
   mit "Google Karte laden"-Button). JS in components.js togglet das. */
.googlemap {
  width: 100% !important;
}
#map img {
  max-width: none;
}
.google-map-submit,
#showmap {
  --map-btn-bg: #2563eb;
  --map-btn-bg-hover: #1d4ed8;
  --map-btn-text: #ffffff;

  display: inline-block;
  cursor: pointer;
  padding: 1rem 2rem;
  border: 0;
  border-radius: 0;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  background-color: var(--map-btn-bg);
  color: var(--map-btn-text);
  transition: background-color .3s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.google-map-submit:hover,
.google-map-submit:focus,
#showmap:hover,
#showmap:focus {
  background-color: var(--map-btn-bg-hover);
  color: var(--map-btn-text);
}

#showmap {
  display: inline-block;
  width: 100%;
}

.buttonWrap a {
  text-decoration: underline;
}

/* ── Buttons (.btn) — generische Button-Komponente ───────────
 * Tailwind liefert KEIN .btn (utility-first). Hier global definiert,
 * pro Site ueber --btn-* themebar (analog --map-btn-*, --teaser-*).
 * Genutzt u.a. von den felogin-Templates (Mitgliederbereich).
 * Breite NICHT gesetzt — Templates steuern das (z.B. .w-full).      */
.btn {
  --btn-bg: #2563eb;
  --btn-bg-hover: #1d4ed8;
  --btn-text: #ffffff;

  display: inline-block;
  cursor: pointer;
  padding: 0.75rem 1.5rem;
  border: 0;
  border-radius: 4px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  background-color: var(--btn-bg);
  color: var(--btn-text);
  transition: background-color .25s ease, opacity .25s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.btn:hover,
.btn:focus {
  background-color: var(--btn-bg-hover);
  color: var(--btn-text);
}
.btn:disabled,
.btn[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}

/* List-Variante: Bild links, Content rechts (ab md) */
@media (min-width: 768px) {
  .ce-teaser .teaser-list .teaser-card {
    display: grid;
    grid-template-columns: 280px 1fr;
    grid-template-rows: auto 1fr auto;
  }
  .ce-teaser .teaser-list .teaser-image {
    grid-column: 1;
    grid-row: 1 / -1;
    aspect-ratio: auto;
    height: 100%;
    min-height: 220px;
  }
  .ce-teaser .teaser-list .teaser-title { grid-column: 2; grid-row: 1; padding-top: 28px; }
  .ce-teaser .teaser-list .teaser-text  { grid-column: 2; grid-row: 2; }
  .ce-teaser .teaser-list .teaser-link  { grid-column: 2; grid-row: 3; }
}

/* ── Schritte-Formular (webcampaign) ─────────────────────── */
/* Uebernommen aus der Foundation-Base (fileadmin/tmpl/sass/ph/_ph_css.scss,
 * Block `[id*="webcampaign"]`). Das Plugin rendert einen jQuery-Steps-
 * Wizard samt Foundation-Grid-Klassen (.row, .large-*, .columns) und
 * Radio-Kacheln.
 *
 * Hier neutral gehalten und per Custom Property themebar; die
 * Foundation-Klassen werden zurueckgesetzt, damit das Formular auf
 * Tailwind-Sites nicht nackt rendert.
 *
 * Foundation-Breakpoints aufgeloest: $small-only = max-width 40em,
 * $medium-up = min-width 40.0625em.
 */
[id*="webcampaign"] {
  --wc-accent: #2563eb;
  --wc-accent-text: #ffffff;
  --wc-checked: #119149;
  --wc-error: #dc2626;
  --wc-field-bg: #ffffff;
  --wc-field-border: #cbd5e1;
  --wc-field-text: #374151;
  --wc-placeholder: #9ca3af;
  --wc-panel-bg: #ffffff;
  --wc-panel-border: #eeeeee;
  --wc-radius: 4px;

  padding-top: 2rem;
}

/* Titel des Plugins doppelt sich mit der Seiten-Ueberschrift. */
[id*="webcampaign"] .grouptitle,
[id*="webcampaign"] .pagetitle { display: none; }

[id*="webcampaign"] h1,
[id*="webcampaign"] h2 { text-align: center; }

[id*="webcampaign"] label { margin-bottom: .5rem; }

/* Foundation-Grid neutralisieren – ohne Foundation haben diese Klassen
 * keine Breite und keinen Float. */
[id*="webcampaign"] .row {
  max-width: none;
  margin: 0;
  width: auto;
}
[id*="webcampaign"] .columns,
[id*="webcampaign"] [class*="small-"],
[id*="webcampaign"] [class*="medium-"],
[id*="webcampaign"] [class*="large-"] {
  float: none;
  width: auto;
  padding: 0;
}

/* ── Auswahl-Kacheln (Radio) ── */
[id*="webcampaign"] input.radiobutton {
  /* Sichtbar fuer Screenreader und Tastatur, optisch ersetzt die Kachel. */
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
[id*="webcampaign"] label.radiobutton {
  position: relative;
  display: inline-block;
  width: 100%;
  min-height: auto !important;
  margin: 0 0 1rem;
  padding: .8rem;
  background: var(--wc-accent);
  border: none;
  border-radius: var(--wc-radius);
  color: var(--wc-accent-text);
  text-align: center;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
[id*="webcampaign"] label.radiobutton span { font-size: 3rem; }

@media only screen and (min-width: 40.0625em) {
  [id*="webcampaign"] label.radiobutton { width: 31.3%; }
}

[id*="webcampaign"] input.radiobutton:checked + label.radiobutton,
[id*="webcampaign"] input.radiobutton:checked + label.error + label.radiobutton,
[id*="webcampaign"] input.radiobutton:checked + label#educationLabel {
  background: var(--wc-checked);
  color: #ffffff;
  font-weight: 600;
}
/* Tastaturfokus muss sichtbar bleiben, das Input selbst ist ausgeblendet. */
[id*="webcampaign"] input.radiobutton:focus-visible + label.radiobutton,
[id*="webcampaign"] input.radiobutton:focus-visible + label.error + label.radiobutton {
  outline: 2px solid var(--wc-accent);
  outline-offset: 2px;
}

/* ── Felder ── */
[id*="webcampaign"] input[type="text"],
[id*="webcampaign"] input[type="email"],
[id*="webcampaign"] input[type="tel"],
[id*="webcampaign"] input[type="number"],
[id*="webcampaign"] select,
[id*="webcampaign"] textarea {
  display: table;
  max-width: 100%;
  margin: .5rem auto 1rem;
  padding: 1.3rem .7rem;
  background: var(--wc-field-bg);
  border: 1px solid var(--wc-field-border);
  border-radius: var(--wc-radius);
  color: var(--wc-field-text);
}
[id*="webcampaign"] input::placeholder,
[id*="webcampaign"] textarea::placeholder { color: var(--wc-placeholder); }

[id*="webcampaign"] select {
  height: 3rem;
  padding: 0 1.4rem;
  /* Pfeil als Inline-SVG, damit keine externe Datei noetig ist. */
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="3" viewBox="0 0 6 3"><polygon points="5.992,0 2.992,3 -0.008,0"/></svg>');
  background-position: right .6rem center;
  background-repeat: no-repeat;
  appearance: none;
}

[id*="webcampaign"] label.error {
  position: relative;
  display: block;
  padding: 0;
  background: transparent;
  color: var(--wc-error);
  font-size: .78rem;
  text-align: left;
}

/* ── Wizard-Buehne ── */
[id*="webcampaign"] .steps_wrapper {
  display: block;
  overflow: hidden;
  perspective: 4000px;
  transform-style: preserve-3d;
}
[id*="webcampaign"] .steps_wrap {
  position: relative;
  margin: 0 auto;
}
[id*="webcampaign"] .tab-content {
  display: none;
  opacity: 0;
  transition: opacity .4s ease;
}
[id*="webcampaign"] .tab-content.active {
  display: block;
  opacity: 1;
}
@media only screen and (min-width: 40.0625em) {
  [id*="webcampaign"] .tab-content { margin-top: 1.8rem; padding: 1rem 0; }
}

[id*="webcampaign"] .content.clearfix {
  position: relative;
  overflow: hidden;
  background: var(--wc-panel-bg);
}
[id*="webcampaign"] .content.clearfix section {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 1rem;
  background: var(--wc-panel-bg);
  border: 1px solid var(--wc-panel-border);
}
/* Frage-Text eines Schritts: das erste <label> ohne for-Attribut. */
[id*="webcampaign"] .content.clearfix .step label:not([for]):first-child {
  min-height: 5rem;
  padding: 0 2rem;
  color: var(--wc-accent) !important;
  font-size: 1.75rem;
  text-align: center;
}
@media only screen and (max-width: 40em) {
  [id*="webcampaign"] .content.clearfix { padding: .5rem 0 1rem; }
  [id*="webcampaign"] .content.clearfix .step label:not([for]):first-child {
    margin-bottom: 1rem;
    padding: 0 .5rem;
    font-size: 1.2rem;
  }
}

/* ── Schritt-Punkte ── */
[id*="webcampaign"] .clearfix.steps {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 99;
  display: block;
  max-width: 15rem;
  margin: 0 auto;
  text-align: center;
}
[id*="webcampaign"] .clearfix.steps ul {
  display: table;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
[id*="webcampaign"] .clearfix.steps li { display: inline-block; }
[id*="webcampaign"] .clearfix.steps span {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 .2rem;
  border: 1px solid var(--wc-accent);
  border-radius: 50%;
  color: transparent !important;
}
[id*="webcampaign"] .clearfix.steps .current-info { display: none; }
[id*="webcampaign"] .wizard > .steps .current a span { background: var(--wc-accent); }
[id*="webcampaign"] .wizard > .steps .disabled a span { background: transparent; }
@media only screen and (max-width: 40em) {
  [id*="webcampaign"] .clearfix.steps { bottom: 3.7rem; padding: .6rem 0; }
}

/* ── Weiter / Zurueck ── */
[id*="webcampaign"] .actions {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1rem 0 0;
}
[id*="webcampaign"] .actions .disabled { display: none; }
[id*="webcampaign"] .actions ul {
  position: relative;
  bottom: -3.8rem;
  display: table;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  text-align: center;
}
[id*="webcampaign"] .actions li { display: inline-block; }
[id*="webcampaign"] .actions li a {
  display: inline-block;
  margin: 0 .5rem;
  padding: 1rem 2rem;
  background: var(--wc-accent);
  border-radius: var(--wc-radius);
  color: var(--wc-accent-text);
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
}
[id*="webcampaign"] .actions li a:hover { filter: brightness(.92); }
@media only screen and (max-width: 40em) {
  [id*="webcampaign"] .actions { padding: 0 0 3rem; }
  [id*="webcampaign"] .actions ul { bottom: -2rem; }
}

/* ── Datenschutz-Haken ── */
/* Markup: <input type="checkbox" id="privacy"><label for="privacy">…</label> */
/* Feste Masse statt `width: auto`: das Plugin und die Site-Styles setzen
 * Breiten auf `input`, unter denen ein Haken sonst zum Strich zusammenfaellt.
 * `.radiobutton` ist ausgenommen – die Auswahl-Kacheln blenden ihr Input
 * bewusst aus (siehe oben). */
[id*="webcampaign"] input[type="checkbox"],
[id*="webcampaign"] input[type="radio"]:not(.radiobutton) {
  width: 1.05rem;
  min-width: 1.05rem;
  height: 1.05rem;
  margin: 0 .5rem 0 0;
  padding: 0;
  vertical-align: middle;
  accent-color: var(--wc-accent);
  appearance: auto;
}
[id*="webcampaign"] label[for="privacy"] {
  display: inline;
  margin: 0;
  vertical-align: middle;
}

/* ── Absende-Zeile: reCAPTCHA-Hinweis + Button ── */
/* Das Plugin legt beides in eine Foundation-`.row` mit zwei 25%-Spalten;
 * ohne Foundation stapeln die untereinander. */
[id*="webcampaign"] .row:has(.c_captcha) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1rem;
}

[id*="webcampaign"] .submitButton { padding: 0; }

/* Der Absende-Knopf ist ein nacktes <button> – ohne Foundation bringt es
 * keinerlei Gestaltung mit. */
[id*="webcampaign"] .row:has(.c_captcha) button,
[id*="webcampaign"] button[type="submit"],
[id*="webcampaign"] input[type="submit"] {
  padding: 1rem 2rem;
  background: var(--wc-accent);
  border: none;
  border-radius: var(--wc-radius);
  color: var(--wc-accent-text);
  font: inherit;
  line-height: 1;
  cursor: pointer;
}
[id*="webcampaign"] .row:has(.c_captcha) button:hover,
[id*="webcampaign"] button[type="submit"]:hover,
[id*="webcampaign"] input[type="submit"]:hover { filter: brightness(.92); }

/* ── reCAPTCHA-Hinweis ── */
/* Markup: <img><div><h6>…</h6><span><a>…</a></span><span><a>…</a></span></div>
 * Die beiden Links stehen in eigenen <span>, laufen inline aber zusammen. */
[id*="webcampaign"] .c_captcha {
  --wc-captcha-title: #4988ee;
  --wc-captcha-link: #1c3da8;

  flex: 1 1 16rem;
  max-width: 22rem;
  display: grid;
  grid-template-columns: 2.6rem 1fr;
  gap: 10px;
  align-items: center;
  padding: .1rem .5rem;
  background: var(--wc-field-bg);
  border: 1px solid var(--wc-field-border);
  border-radius: var(--wc-radius);
}
[id*="webcampaign"] .c_captcha img { width: 2.3rem; height: auto; }
[id*="webcampaign"] .c_captcha h6 {
  margin: 0;
  color: var(--wc-captcha-title);
  font-size: .67rem;
  line-height: 1.3;
}
[id*="webcampaign"] .c_captcha span a {
  display: block;
  color: var(--wc-captcha-link);
  font-size: .6rem;
  line-height: 1.4;
}

@media only screen and (max-width: 40em) {
  [id*="webcampaign"] .c_captcha { max-width: none; }
  [id*="webcampaign"] .c_captcha h6 { font-size: .6rem; }
}

/* ── Google-Bewertungen (sp_shop GoogleRatings) ──────────── */
/* Markup: EXT:sp_shop/Resources/Private/Fluid/Homepage/Templates/
 * GoogleRatings.html. Uebernommen aus der Foundation-Base, dort lagen
 * Farben und Font fest verdrahtet (Rajdhani, #00a8ff). Hier neutral und
 * per Custom Property themebar.
 */
.google-ratings {
  --gr-accent: #2563eb;
  --gr-star: #f59e0b;
  --gr-header-bg: #f9fafb;
  --gr-card-bg: #ffffff;
  --gr-card-border: #e5e7eb;
  --gr-title: #111827;
  --gr-text: #4b5563;
  --gr-muted: #6b7280;
  --gr-radius: 8px;

  color: var(--gr-text);
}

.google-ratings__header {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.25rem;
  margin-bottom: 2.5rem;
  padding: 1.25rem 1.875rem;
  background: var(--gr-header-bg);
  border-left: 4px solid var(--gr-accent);
  border-radius: var(--gr-radius);
}
.google-ratings__name {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--gr-title);
}
.google-ratings__overall {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1;
  color: var(--gr-accent);
}
.google-ratings__stars,
.google-ratings__score {
  display: flex;
  gap: .25rem;
  color: var(--gr-star);
}
.google-ratings__stars { font-size: 1.375rem; }
.google-ratings__star--empty { opacity: .45; }
.google-ratings__count {
  font-size: 1rem;
  font-weight: 600;
  color: var(--gr-muted);
}

/* Bis zu fuenf Spalten – die Karten sind kurz, mehr als fuenf werden zu
 * schmal fuer den Rezensionstext. */
.google-ratings__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 600px)  { .google-ratings__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px)  { .google-ratings__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1050px) { .google-ratings__list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .google-ratings__list { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.5rem; } }

.google-ratings__item {
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
  background: var(--gr-card-bg);
  border: 1px solid var(--gr-card-border);
  border-radius: var(--gr-radius);
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.google-ratings__item:hover {
  transform: translateY(-4px);
  border-color: var(--gr-accent);
  box-shadow: 0 10px 24px rgb(0 0 0 / .08);
}

.google-ratings__author {
  display: flex;
  align-items: center;
  gap: .9375rem;
  margin-bottom: 1rem;
}
.google-ratings__photo {
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 2px solid var(--gr-card-border);
  background: #fff;
  object-fit: cover;
}
.google-ratings__author-name {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--gr-title);
}

.google-ratings__score { margin-bottom: .75rem; font-size: 1.125rem; }

.google-ratings__text {
  margin: 0;
  font-size: 1rem;
  line-height: 1.6;
}

.google-ratings__date {
  display: block;
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid var(--gr-card-border);
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--gr-accent);
}

.google-ratings__empty {
  margin: 0;
  color: var(--gr-muted);
}

/* Gekuerzter Rezensionstext – components.js schneidet ab 100 Zeichen und
 * setzt das Markup. Auf- und Zuklappen laeuft ueber die Klasse, nicht
 * ueber Inline-Styles, damit das CSS hier bleibt. */
.google-ratings__text .gr-rest { display: none; }
.google-ratings__text.is-expanded .gr-rest { display: inline; }
.google-ratings__text.is-expanded .gr-dots { display: none; }

.google-ratings__more {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  margin-top: .75rem;
  padding: .5rem 1rem;
  background: none;
  border: 1px solid var(--gr-card-border);
  border-radius: calc(var(--gr-radius) / 2);
  color: var(--gr-accent);
  font: inherit;
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color .3s ease, background .3s ease;
}
.google-ratings__more:hover {
  background: var(--gr-header-bg);
  border-color: var(--gr-accent);
}
.google-ratings__more .gr-arrow { transition: transform .3s ease; }
.google-ratings__text.is-expanded .gr-arrow { transform: rotate(180deg); }

/* Einblenden beim Laden. Der Startzustand haengt an `data-gr-reveal`, das
 * components.js selbst setzt – ohne JS bleiben die Karten sichtbar. */
.google-ratings[data-gr-reveal] .google-ratings__item {
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity .8s ease, transform .8s cubic-bezier(.2, .8, .2, 1);
}
.google-ratings[data-gr-reveal] .google-ratings__item.is-in {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .google-ratings[data-gr-reveal] .google-ratings__item {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ============================================================
 * DataTables (sp_shop tx_spshop_pi7 plugin) – Tailwind-side
 * component classes. Mirrors the foundation-era styles so the
 * plugin templates can use stable semantic classes instead of
 * raw Tailwind utility strings (which would not be picked up
 * by the Tailwind content scanner outside this extension).
 * ============================================================ */

/* ── Detail row wrapper (slideDown animation target) ─────── */
.details_row {
  padding: 1rem;
  background-color: #f9fafb; /* gray-50 */
}

/* ── Two-column layout: address data + map ───────────────── */
.dt-detail-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 768px) {
  .dt-detail-grid { grid-template-columns: 1fr 1fr; }
}

/* ── Address column inside the detail row ────────────────── */
.adr_datas ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.adr_datas ul > li + li { margin-top: 0.25rem; }
.adr_datas li > h1 {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  margin: 0;
}
.adr_datas a { text-decoration: underline; }
.adr_datas img {
  max-width: 14rem;
  margin: 0.5rem 0;
  padding: 0.5rem 0;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.adr_datas .adr_datas-attributes { margin-top: 0.75rem; }

/* ── Detail link wrapper ("Mehr Informationen") ──────────── */
.detail_link { margin-top: 1rem; }

/* ── DataTables custom buttons (load-map, detail-link, etc) */
.dt-btn {
  display: inline-block;
  cursor: pointer;
  border-radius: 0.25rem;
  background-color: #e5e7eb; /* gray-200 */
  padding: 0.5rem 1.25rem;
  font-size: 0.875rem;
  color: #111827; /* gray-900 */
  text-decoration: none;
  transition-property: background-color;
  transition-duration: 150ms;
}
.dt-btn:hover { background-color: #d1d5db; /* gray-300 */ }

/* ── Map wrapper (positions overlay over the actual map) ─── */
.datatable-map {
  position: relative;
  margin-bottom: 1.5rem;
}
#map_canvas { position: relative; }

/* ── Dynamic mapwrap div (created by fnCreateMap in JS_TABLE) ─
 * Stays absolute-positioned and initially parked off-screen at
 * left:-2000px. The click handler moves it onto #map_canvas via
 * .offset() coordinates. Without these rules top/left would be
 * ignored and the loaded google map would render at body-end. */
#mapwrap {
  display: block;
  position: absolute;
  margin: 0.5rem;
  top: 0;
  left: -2000px;
}

/* ── Map consent overlay (sites can override the background-image) */
#map_overlay,
#detail_map_overlay {
  position: absolute;
  inset: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f3f4f6; /* gray-100 — fallback if image fails to load */
  background-image: url(/fileadmin/templates/portal/maps/ph_maps.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#map_overlay .buttonWrap,
#detail_map_overlay .buttonWrap { text-align: center; }
.dt-overlay-note {
  margin-top: 0.5rem;
  font-size: 0.75rem;
}
.dt-overlay-note a { text-decoration: underline; }

/* ── Reset-map button wrapper ────────────────────────────── */
#reset_button { margin-top: 0.5rem; }

/* ── Add-address wrapper (only shown when editable=true) ── */
.adddata { margin-top: 1rem; }

/* ── Detail page (plugin mode=detail) ───────────────────────── */
.datatable_detail { margin: 1rem 0; }
.detail_data .adress_info ul {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
}
.detail_data .adress_info ul > li + li { margin-top: 0.25rem; }
.detail_data .adress_info h2 {
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 0.5rem;
}
.detail_data .adress_info a { text-decoration: underline; }
.detail_data .back_link { margin-top: 1.5rem; }
.detail_map {
  position: relative;
  min-height: 25rem;
}
.detail_map .map_canvas,
.detail_map #map_canvas {
  width: 100%;
  height: 100%;
  min-height: 25rem;
}

/* ── DataTables search field: magnifier icon inside input ───── */
/* The "search" label is hidden via language.search="" in plugin
   config; the slot position (top-start vs. top-end) is controlled
   by the layout option in the plugin's JS_TABLE subpart. */
.dt-search input[type="search"] {
  padding-left: 2.25rem;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
  background-position: 0.625rem center;
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
}

/* ============================================================
 * Mapsearch (sp_shop tx_spshop_pi3 plugin) – Tailwind-side
 * component classes. Sidebar (search + filter + result list) +
 * map area. #showmap, #map_overlay, .buttonWrap are shared with
 * DataTables (defined above) and apply here too.
 * ============================================================ */

.ms-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "map"
    "sidebar";
  width: 100%;
  min-height: 600px;
}
@media (min-width: 1024px) {
  .ms-wrapper {
    /* Sidebar left (1fr ≈ 25%), map right (3fr ≈ 75%). DOM order in the
       CE-Flexform keeps the map first; grid-areas swap it visually. */
    grid-template-columns: 1fr 3fr;
    grid-template-areas: "sidebar map";
  }
}

.ms-sidebar-col {
  grid-area: sidebar;
  min-width: 0;        /* allow inputs to honour their parent width */
  display: flex;
  flex-direction: column;
}
.ms-map-col {
  grid-area: map;
  min-width: 0;
  min-height: 600px;
}

.ms-searchbox {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.ms-search-input {
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db; /* gray-300 */
  border-radius: 0.25rem;
  font-size: 0.875rem;
}
.ms-search-input:focus {
  outline: none;
  border-color: #2563eb; /* blue-600 */
}

/* Filter <select>s rendered by Mapsearch::getAttributes() */
.attributefilter {
  width: 100%;
  padding: 0.5rem 0.75rem;
  margin-top: 0.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.25rem;
  background-color: #fff;
  font-size: 0.875rem;
}

/* Reset link rendered by Mapsearch::getFilter() */
#filterReset {
  display: inline-block;
  margin-top: 0.75rem;
  font-size: 0.875rem;
  text-decoration: underline;
  color: #2563eb;
}

.ms-infobox {
  flex: 1;
  overflow-y: auto;
  padding: 0 1rem 1rem;
}

/* Consent-overlay note (parallel to .dt-overlay-note) */
.ms-overlay-note {
  margin-top: 0.5rem;
  font-size: 0.75rem;
}
.ms-overlay-note a { text-decoration: underline; }

/* Result list rendered from Flexform listTemplate */
.ms-result-card {
  padding: 0.75rem 0;
  border-bottom: 1px solid #e5e7eb; /* gray-200 */
}
.ms-result-card:first-of-type { border-top: 1px solid #e5e7eb; }

.ms-result-address {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #374151; /* gray-700 */
  margin-bottom: 0.5rem;
}
.ms-result-title {
  font-weight: 600;
  color: #111827; /* gray-900 */
  text-decoration: none;
  display: inline-block;
  margin-bottom: 0.25rem;
}
.ms-result-title:hover { text-decoration: underline; }

.ms-result-links {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.8125rem;
}
.ms-result-link {
  color: #2563eb; /* blue-600 */
  text-decoration: underline;
}
.ms-result-link:hover { text-decoration: none; }

/* Detail panel rendered from Flexform detailTemplate */
.ms-detail {
  position: relative;
  padding: 1rem 0;
}
.ms-detail-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #6b7280;     /* gray-500 */
  font-size: 1.25rem;
  text-decoration: none;
}
.ms-detail-close:hover { color: #111827; }

.ms-detail-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #111827;
  margin: 0 2rem 0.25rem 0;   /* leaves room for the close-X */
}
.ms-detail-subtitle {
  font-size: 0.95rem;
  font-weight: 500;
  color: #6b7280;
  margin: 0 0 0.75rem;
}
.ms-detail-subtitle:empty { display: none; }

.ms-detail-address {
  font-style: normal;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #374151;       /* gray-700 */
  margin: 0 0 1.25rem;
}

.ms-detail-section { margin-bottom: 1.25rem; }
.ms-detail-section-title {
  font-size: 0.95rem;
  font-weight: 600;
  color: #111827;
  margin: 0 0 0.5rem;
}

.ms-detail-contact {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #374151;
}
.ms-detail-contact li {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}
.ms-detail-contact li > i.fa-solid {
  flex: 0 0 1.25rem;
  text-align: center;
  color: #6b7280;
}
.ms-detail-contact a {
  color: #2563eb;
  text-decoration: none;
  word-break: break-word;
}
.ms-detail-contact a:hover { text-decoration: underline; }

/* Attribute lists (rendered by attWrap1..3 + attTemplate1..3) */
.ms-detail-attributes { margin-top: 0.5rem; }
.ms-detail-attr { margin-bottom: 1rem; }
.ms-detail-attr-title {
  font-size: 0.95rem;
  font-weight: 600;
  color: #111827;
  margin: 0 0 0.25rem;
}
.ms-detail-attr-list {
  list-style: disc;
  margin: 0 0 0 1.25rem;
  padding: 0;
  font-size: 0.875rem;
  color: #374151;
}
.ms-detail-attr-item { margin: 0; }

/* Welcome placeholder (rendered when infobox is empty) */
.ms-welcome {
  padding: 1rem 0;
}
.ms-welcome-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #111827;
  margin: 0 0 0.5rem;
}
.ms-welcome-lead {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #374151;
  margin: 0 0 1rem;
}
.ms-welcome-quote {
  margin: 0;
  padding: 0.75rem 1rem;
  background-color: #f9fafb;        /* gray-50 */
  border-left: 3px solid #2563eb;   /* blue-600 */
  font-size: 0.875rem;
  line-height: 1.5;
  color: #4b5563;                   /* gray-600 */
  font-style: italic;
}

/* Limit notice (>100 results) */
.ms-limit {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  background-color: #fef3c7;        /* amber-100 */
  border-left: 3px solid #d97706;   /* amber-600 */
  font-size: 0.875rem;
  color: #92400e;                   /* amber-800 */
}

/* ============================================================
 * Toggle / Accordion (simpletoggle) — Default-Styling.
 * Verhalten (.active umschalten, max-height/opacity) kommt aus
 * components.js. CSS gehoert hierher, nicht per JS injiziert.
 * Sites koennen mit hoeherer Spezifitaet ueberschreiben.
 * ============================================================ */
.trigger { position: relative; padding: 1rem 1.25rem; background: #f8f9fa; border-radius: 0.5rem; margin-bottom: 2px; transition: background 0.2s ease, color 0.2s ease; }
.trigger a { color: inherit; text-decoration: none; display: block; font-weight: 600; padding-right: 2rem; }
.trigger::after { content: ""; position: absolute; right: 1.25rem; top: 50%; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-65%) rotate(45deg); transition: transform 0.3s ease; opacity: 0.5; }
.trigger.active { background: #2c3e50; color: #fff; }
.trigger.active::after { transform: translateY(-35%) rotate(-135deg); }
.trigger:hover:not(.active) { background: #edf2f7; }
.toggle_ce { padding: 1.25rem; }

/* Parallax-Container (Verhalten in components.js) */
.ph_parallax { position: relative; min-height: 300px; }

/* ============================================================
 * Section-Menu (menu_109) — Scroll-Offset.
 * --header-height wird von components.js (initSectionMenu)
 * dynamisch gesetzt; hier nur die statischen Regeln.
 * ============================================================ */
/* Kein globales scroll-behavior:smooth — das machte Wheel-Scrolling (v.a.
   Firefox) träge. Smooth-Scroll-on-Click erledigt components.js per
   scrollTo({behavior:'smooth'}); Sites, die es global wollen, setzen es selbst. */
html { --header-height: 0px; }
[id^="c"] { scroll-margin-top: calc(var(--header-height) + 1rem); }
.ce-section-menu { top: var(--header-height); }
[data-section-link].is-active { color: var(--color-accent, #c8956c); border-bottom-color: currentColor; }

/* ============================================================
 * Iframe-Overlay (Consent-Button vor eingebettetem iframe).
 * Verhalten in components.js (initIframeOverlays).
 * ============================================================ */
.button.loadIframe { display: inline-block; padding: 0.5rem 1.25rem; color: #fff; cursor: pointer; border-radius: 4px; font-weight: 600; user-select: none; }
.button.loadIframe:hover { opacity: 0.9; }
.buttonWrap h5 { margin: 0.75rem 0 0; font-size: 0.875rem; line-height: 1.4; }

/* ============================================================
 * Lightbox (ph-lightbox). Overlay-Markup wird von components.js
 * erzeugt (buildLightbox); hier nur die Styles.
 * ============================================================ */
#lightbox.ph-lightbox { display: none; position: fixed; inset: 0; z-index: 1000; background: rgba(0,0,0,.85); align-items: center; justify-content: center; padding: 2rem; }
.ph-lightbox-figure { margin: 0; display: flex; flex-direction: column; align-items: center; max-width: 90vw; }
.ph-lightbox-image { max-width: 90vw; max-height: 85vh; width: auto; height: auto; object-fit: contain; border-radius: 4px; box-shadow: 0 10px 40px rgba(0,0,0,.5); background: #fff; }
.ph-lightbox-caption { color: #fff; margin: .75rem 0 0; font-size: .95rem; line-height: 1.4; text-align: center; }
.ph-lightbox-close { position: absolute; top: 1rem; right: 1.5rem; color: #fff; font-size: 2.5rem; line-height: 1; cursor: pointer; user-select: none; }
.ph-lightbox-arrow { position: absolute; top: 50%; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border: 0; border-radius: 9999px; background: rgba(255,255,255,.12); color: #fff; font-size: 1.5rem; cursor: pointer; }
.ph-lightbox-arrow:hover { background: rgba(255,255,255,.25); }
.ph-lightbox-prev { left: 1rem; }
.ph-lightbox-next { right: 1rem; }

/* ============================================================
 * Detail-Attribute (.detail_attribute2) — horizontale Liste.
 * ============================================================ */
.detail_attribute1 ul, .detail_attribute2 ul { display: flex; align-items: center; gap: 10px; padding-left: 0 !important; }
.detail_attribute1 ul li, .detail_attribute2 ul li { height: 5rem; display: flex; align-items: center; padding: 0.5rem; border: 1px solid #ddd; margin-bottom: 1rem; }

/* ============================================================
 * Awards / Auszeichnungen (.ms-awards)
 * ============================================================ */
.ms-awards { display: flex; flex-wrap: wrap; gap: 10px; }
.ms-award { display: flex; flex-direction: column; align-items: center; text-align: center; width: 130px; }
.ms-award-icon { width: 90px; margin: 3px; }

/* Name standardmäßig ausblenden */
.ms-award-name { display: none; font-size: .85em; margin-top: 4px; }

/* Kein Bild: Bild ausblenden, dafür den direkt folgenden Namen zeigen */
.ms-award-icon[src=""] { display: none; }
.ms-award-icon[src=""] + .ms-award-name { display: block; }

/* ============================================================
 * Cookie notice (bottom banner). Markup via TypoScript (page.200),
 * visibility toggled by components.js (initCookieNotice, localStorage).
 * Ported from the Foundation lib.cookieAlert (#bottom_popup).
 * ============================================================ */
.cookie-notice { display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 1100; background: #1f2937; color: #fff; padding: 1rem 1.25rem; box-shadow: 0 -2px 12px rgba(0,0,0,.25); font-size: .9rem; line-height: 1.5; }
.cookie-notice.is-visible { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .75rem 1.5rem; }
.cookie-notice__text { margin: 0; max-width: 60rem; }
.cookie-notice__link { color: #fff; text-decoration: underline; }
.cookie-notice__link:hover { text-decoration: none; }
.cookie-notice__accept { flex: none; cursor: pointer; border: 0; border-radius: 4px; background: #fff; color: #1f2937; font-weight: 600; padding: .5rem 1.5rem; }
.cookie-notice__accept:hover { background: #e5e7eb; }

/* ── Kontaktformular (webcampaign .cform) ─────────────────────
 * Das Formular rendert Foundation-Markup (.row.collapse, .small-4 …
 * .columns, label.prefix/.prelabel). Tailwind-Sites haben kein Foundation,
 * deshalb liegt die komplette Struktur hier. Zwei Fallen:
 *  1. `.collapse` (gutterlose Foundation-Row) kollidiert mit Tailwinds
 *     gleichnamiger Utility = `visibility: collapse` — das erbt und machte
 *     alle Labels und Felder unsichtbar.
 *  2. Tailwind-Preflight nimmt Feldern Rahmen und Padding.
 * Farben/Fonts kommen aus --cform-*; Defaults sind neutral.
 * ============================================================ */
.cform {
  --cform-radius: .75rem;
  --cform-gap: 1.5rem;
  --cform-field-bg: #f9fafb;
  --cform-field-bg-focus: #fff;
  --cform-border: #d1d5db;
  --cform-border-hover: #9ca3af;
  --cform-border-focus: #2563eb;
  --cform-focus-ring: rgba(37, 99, 235, .15);
  --cform-text: #111827;
  --cform-label: #4b5563;
  --cform-legend: #111827;
  --cform-muted: #6b7280;
}
.cform * { box-sizing: border-box; }

/* Tailwind-Utility `.collapse` neutralisieren (siehe Kopf) */
.cform .collapse { visibility: visible; }

.cform fieldset { border: 0; margin: 0 0 2rem; padding: 0; min-width: 0; }
.cform legend {
  display: block; width: 100%; padding: 0 0 .75rem; margin: 0 0 1.25rem;
  font-size: .8125rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: var(--cform-legend); border-bottom: 1px solid var(--cform-border);
}

/* Eine Spalte je Foundation-Column-Div (2 bei Kontaktdaten, 3 bei Anschrift) */
.cform .address-container > .row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  column-gap: var(--cform-gap);
}

/* Label und Feld sind Geschwister — normaler Blockfluss stapelt sie */
.cform label.prefix,
.cform label.prelabel {
  display: block; margin: 0 0 .375rem;
  font-size: .8125rem; font-weight: 700; color: var(--cform-label);
}

.cform input[type="text"],
.cform input[type="email"],
.cform input[type="tel"],
.cform textarea {
  display: block; width: 100%; margin: 0 0 1.125rem; padding: .8125rem 1rem;
  font-family: inherit; font-size: 1rem; color: var(--cform-text);
  background: var(--cform-field-bg);
  border: 1px solid var(--cform-border);
  border-radius: var(--cform-radius);
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.cform input[type="text"]:hover,
.cform input[type="email"]:hover,
.cform input[type="tel"]:hover,
.cform textarea:hover { border-color: var(--cform-border-hover); }
.cform input[type="text"]:focus,
.cform input[type="email"]:focus,
.cform input[type="tel"]:focus,
.cform textarea:focus {
  outline: none;
  background: var(--cform-field-bg-focus);
  border-color: var(--cform-border-focus);
  box-shadow: 0 0 0 3px var(--cform-focus-ring);
}
.cform textarea { min-height: 10.5rem; resize: vertical; line-height: 1.6; }

/* Datenschutz-Zeile. Das Label bringt ein inline `font-size: … !important`
 * mit, das kein Stylesheet schlagen kann — die Site entfernt das Attribut
 * per JS (siehe Barth init.js, cleanContactForm). */
.cform #form_wrap > .row:has(input.confirm) {
  display: flex; align-items: flex-start; gap: .75rem; margin: .25rem 0 1.625rem;
}
.cform input.confirm { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin-top: .125rem; }
.cform label.checklable { font-size: .9375rem; line-height: 1.55; padding: 0; color: var(--cform-muted); }

/* Absenden + reCaptcha-Hinweis */
.cform #form_wrap > .row:has(button) {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem;
}
.cform button { cursor: pointer; }

/* Logo links, Kleingedrucktes rechts — die .right-Klassen im Markup sind
 * Foundation-Floats und wirken hier nicht. */
.cform .captcha { display: flex; align-items: center; justify-content: flex-end; gap: .75rem; text-align: right; }
.cform .captcha .captcha_logo { order: 1; flex: 0 0 auto; }
.cform .captcha .captcha_text { order: 2; }
.cform .captcha h6 {
  margin: 0 0 .1875rem; font-size: .6875rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--cform-muted);
}
.cform .captcha .captcha_text p { display: inline; margin: 0; font-size: .75rem; line-height: 1.5; color: var(--cform-muted); }
.cform .captcha .captcha_text p + p::before { content: " · "; }
.cform .captcha a { color: var(--cform-muted); text-decoration: underline; }
.cform .captcha img { display: block; width: 1.875rem; height: auto; }

/* ============================================================
 * Image slider (gallery layouts 3 / 100 / 101 / 102 / 104)
 * Markup: <ul class="ph_orbit_content ph-slider" data-slider ...> with one
 * <li> per image, wrapped in .ph-slider-wrap by components.js (initSliders).
 * Replaces the Foundation Orbit styling that was never ported.
 * ============================================================ */
.ph-slider-wrap { position: relative; }

/* Holds the slides and the arrows, so the arrows centre on the image alone —
 * the dot bar below sits in the normal flow and must not shift them. */
.ph-slider-viewport { position: relative; }

/* Before JS runs only the first slide shows — otherwise every image would
 * stack up on load (and stay that way if JS fails). */
.ph-slider:not([data-slider-ready]) > li:not(:first-child) { display: none; }

.ph-slider {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Slides stack in one grid cell: the container keeps the height of the
 * tallest slide, no JS measuring needed. */
.ph-slider[data-slider-ready] {
  display: grid;
  overflow: hidden;
  position: relative;
}
.ph-slider[data-slider-ready] > li {
  grid-area: 1 / 1;
  min-width: 0;
}
.ph-slider[data-slider-ready] > li > figure { margin: 0; }
.ph-slider[data-slider-ready] img { display: block; width: 100%; height: auto; }

/* Fade: inactive slides stay in place, invisible and click-through. */
.ph-slider--fade[data-slider-ready] > li {
  opacity: 0;
  visibility: hidden;
  transition: opacity .6s ease, visibility .6s;
}
.ph-slider--fade[data-slider-ready] > li.is-active {
  opacity: 1;
  visibility: visible;
}

/* Slide: inactive slides park to the right, .is-left parks them to the left,
 * so forward and backward moves both animate in the expected direction. */
.ph-slider--slide[data-slider-ready] > li {
  transform: translateX(100%);
  transition: transform .6s cubic-bezier(.4, 0, .2, 1);
}
.ph-slider--slide[data-slider-ready] > li.is-left { transform: translateX(-100%); }
.ph-slider--slide[data-slider-ready] > li.is-active { transform: translateX(0); }
/* Set by JS while parking the incoming slide — that jump must not animate. */
.ph-slider--slide[data-slider-ready] > li.is-instant { transition: none; }

/* Arrows */
.ph-slider-arrow {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 2;
  display: flex; align-items: center; justify-content: center;
  width: 2.75rem; height: 2.75rem; padding: 0;
  border: 0; border-radius: 9999px;
  background: rgba(0, 0, 0, .35); color: #fff;
  font-size: 1.125rem; line-height: 1; cursor: pointer;
  transition: background-color .3s, opacity .3s;
}
.ph-slider-arrow:hover { background: rgba(0, 0, 0, .6); }
.ph-slider-arrow:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.ph-slider-prev { left: .75rem; }
.ph-slider-next { right: .75rem; }

/* Dot bar — below the image and in the flow, so it never covers the image or an
 * .orbit-caption. Thick short lines instead of round dots: the active one is
 * wider *and* fully opaque, so the state does not rely on colour alone.
 * currentColor keeps the bar usable on light and dark grounds and lets sites
 * drop in their brand colour without fighting a hard-coded value.
 * flex-wrap because elements with many images would otherwise push the bar
 * out of a narrow column. */
.ph-slider-dots {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: .375rem;
  padding-top: 1rem;
}
.ph-slider-dot {
  width: 1.25rem; height: 3px; padding: 0;
  border: 0; border-radius: 2px;
  background: currentColor; opacity: .25;
  cursor: pointer;
  transition: width .3s, opacity .3s, background-color .3s;
}
.ph-slider-dot:hover { opacity: .6; }
.ph-slider-dot.is-active { width: 2.5rem; opacity: 1; }
.ph-slider-dot:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

/* Captions (layout 100/104 render .orbit-caption) sit on the image. Sites that
 * hide or show them keep the last word — no !important here. */
.ph-slider .orbit-caption {
  position: absolute; bottom: 0; left: 0; right: 0; z-index: 1;
  margin: 0; padding: 1.25rem 3.5rem;
  background: linear-gradient(to top, rgba(0, 0, 0, .75), transparent);
  color: #fff; font-size: .9375rem; line-height: 1.5;
}

@media (max-width: 767px) {
  .ph-slider-arrow { width: 2.25rem; height: 2.25rem; font-size: 1rem; }
  .ph-slider-dot { width: 1rem; }
  .ph-slider-dot.is-active { width: 2rem; }
  /* No extra bottom room needed any more — the dots no longer overlap. */
  .ph-slider .orbit-caption { padding: 1rem 1.25rem; font-size: .8125rem; }
}

/* No motion: no cross-fade, no sliding — the active slide just appears. */
@media (prefers-reduced-motion: reduce) {
  .ph-slider[data-slider-ready] > li { transition: none; }
  .ph-slider--slide[data-slider-ready] > li { transform: none; opacity: 0; visibility: hidden; }
  .ph-slider--slide[data-slider-ready] > li.is-active { opacity: 1; visibility: visible; }
}

/* ============================================================
 * DataTable-Map-CE (Handwerkersuche / sp_shop)
 * Ersatz für die alten Foundation-Klassen + Map-Overlay
 * ============================================================ */

/* ---- Wrapper: 2-Col-Grid (left = Suche/Liste, right = Karte) */
.ph-gmap {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-bottom: 2rem;
}

@media (min-width: 1024px) {
  .ph-gmap {
    grid-template-columns: 25% 75%;
  }
  .ph-gmap-left-col {
    grid-column: 1;
    grid-row: 1;
  }
  .ph-gmap-right-col {
    grid-column: 2;
    grid-row: 1;
  }
}

/* ---- Map-Overlay: liegt über der Karte bis "Karte laden" geklickt */
.ph-gmap #map_overlay {
  position: absolute;
  inset: 0;
  z-index: 50;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
}

.ph-gmap .buttonWrap {
  text-align: center;
  max-width: 22rem;
  padding: 1rem;
}

.ph-gmap #showmap.button {
  display: inline-block;
  padding: 0.875rem 1.75rem;
  background: #0066b3;
  color: #fff;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  border: 0;
  border-radius: 9999px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 10px 20px -8px rgba(0, 102, 179, 0.4);
}

.ph-gmap #showmap.button:hover {
  background: #004d8a;
  transform: translateY(-2px);
  box-shadow: 0 14px 24px -8px rgba(0, 102, 179, 0.5);
}

.ph-gmap .buttonWrap h5 {
  margin: 1rem 0 0;
  font-size: 0.875rem;
  font-weight: 400;
  color: #475569;
  line-height: 1.5;
}

.ph-gmap .buttonWrap h5 a {
  color: #0066b3;
  text-decoration: underline;
}

/* ---- Map-Container */
.ph-gmap #map {
  width: 100%;
  height: 600px;
  background: #e5e7eb;
  border-radius: 0.5rem;
}

@media (max-width: 1023px) {
  .ph-gmap #map {
    height: 380px;
  }
}

/* ---- Suchbox (links oben) */
.ph-gmap #searchbox {
  padding: 1rem;
}

.ph-gmap #searchbox .row + .row {
  margin-top: 0.5rem;
}

.ph-gmap #searchbox input[type="text"],
.ph-gmap #searchbox select {
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.375rem;
  background: #fff;
  font-size: 0.875rem;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.ph-gmap #searchbox input[type="text"]:focus,
.ph-gmap #searchbox select:focus {
  outline: none;
  border-color: #0066b3;
  box-shadow: 0 0 0 3px rgba(0, 102, 179, 0.15);
}

.ph-gmap #searchbox #filterReset {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.75rem;
  color: #64748b;
  text-decoration: underline;
  cursor: pointer;
}

.ph-gmap #searchbox #filterReset:hover {
  color: #0066b3;
}

/* ---- Infobox (Liste der Treffer unter Suchbox) */
.ph-gmap #infobox {
  padding: 0 1rem 1rem;
  max-height: 540px;
  overflow-y: auto;
  overflow-x: hidden;
}

.ph-gmap #infobox::-webkit-scrollbar {
  width: 8px;
}

.ph-gmap #infobox::-webkit-scrollbar-track {
  background: #f1f5f9;
}

.ph-gmap #infobox::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

.ph-gmap #infobox::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* ---- Foundation-Layout-Klassen-Reset (innerhalb .ph-gmap) ---
   Die alten .row/.columns/.small-X/.large-X Klassen aus dem
   Plugin-Markup sollen das Grid-Layout nicht stören. */
.ph-gmap .row {
  display: block;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
}

.ph-gmap [class*="columns"] {
  padding: 0;
  float: none;
  position: static;
}

@font-face{font-family:"Inter";font-style:normal;font-weight:300 900;font-display:swap;src:url("/typo3conf/ext/site_assets/Resources/Public/8152-malermeister-hubertde/Fonts/inter/inter-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Inter";font-style:normal;font-weight:300 900;font-display:swap;src:url("/typo3conf/ext/site_assets/Resources/Public/8152-malermeister-hubertde/Fonts/inter/inter-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}body{font-family:"Inter",system-ui,-apple-system,sans-serif;color:#2c3e50;background:#fff;overflow-x:hidden}::selection{background:#942933;color:#fff}#c176373,.ce-teaser,#c176278{width:100vw;position:relative;left:50%;transform:translateX(-50%)}#site-header{background:hsla(0,0%,100%,.95) !important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:none;border-bottom:1px solid rgba(0,0,0,.04);transition:box-shadow .3s ease}#site-header .nav-link{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#2c3e50;padding:.5rem 0;position:relative}#site-header .nav-link::after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:#942933;transition:width .3s ease}#site-header .nav-link:hover::after{width:100%}#site-header a[href^=tel]{background:#942933 !important;color:#fff !important;border:none !important;border-radius:9999px;font-weight:600;padding:.5rem 1rem;transition:all .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);box-shadow:0 2px 8px rgba(148,41,51,.3)}#site-header a[href^=tel]:hover{background:#7a212a !important;transform:translateY(-1px);box-shadow:0 4px 16px rgba(148,41,51,.4)}#site-header a[href^=tel] svg{stroke:#fff}nav[aria-label=Breadcrumb]:has(li:only-child){display:none}#c176278{min-height:70vh;display:flex;align-items:center;padding:8rem 2rem 6rem;background:linear-gradient(160deg, rgba(26, 26, 46, 0.88) 0%, rgba(44, 62, 80, 0.7) 40%, rgba(148, 41, 51, 0.2) 100%),url("/fileadmin/platzhirsche/mitglieder/5/594/ph_bilder/Fotolia_111663711_Subscription_Monthly_XXL.jpg") center/cover no-repeat;background-color:#1a1a2e}#c176278::before{content:"";position:absolute;right:-5%;top:50%;transform:translateY(-50%);width:500px;height:500px;border-radius:50%;border:1px solid rgba(148,41,51,.15);pointer-events:none}#c176278::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:5px;background:linear-gradient(90deg, #fff 0%, #fff 30%, transparent 100%)}#c176278 .content_wrap{max-width:72rem;margin:0 auto;width:100%;display:block;padding:0 2rem}#c176278 .col-span-12{max-width:none}#c176278 .grid{display:block}#c176278 h1{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:900;color:#fff;line-height:1.08;margin:0 0 1.5rem;letter-spacing:-0.03em}#c176278 h1 .hero-eyebrow{display:block;font-size:clamp(.75rem,1.2vw,.95rem);font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.25em;margin-bottom:1.25rem;line-height:1.4}#c176278 h1 .hero-main{display:block}#c176278 p{font-size:clamp(1.1rem,2.5vw,1.5rem);color:hsla(0,0%,100%,.8);font-weight:300;max-width:38rem;line-height:1.6;margin:0}#c176278 strong{color:#fff;font-weight:600;font-size:1.1em}@media(max-width: 768px){#c176278{min-height:50vh;padding:5rem 1.5rem 4rem}}#c81424{padding:6rem 2rem;max-width:72rem;margin:0 auto}#c81424 .content_wrap{align-items:center;gap:3rem}@media(min-width: 768px){#c81424 [class*=grid-cols-12]{column-gap:4rem}}#c81424 .bild-links{position:relative}#c81424 .bild-links::before{content:"";position:absolute;top:1.25rem;left:1.25rem;right:-1rem;bottom:-1rem;border:2px solid rgba(148,41,51,.3);border-radius:1.25rem;z-index:0;transition:all .4s cubic-bezier(0.25, 0.46, 0.45, 0.94)}#c81424 .bild-links .csc-textpic-image,#c81424 .bild-links img{position:relative;z-index:1;border-radius:1.25rem;box-shadow:0 16px 48px rgba(0,0,0,.12);width:100%;height:auto;display:block}#c81424 .bild-links .imgblock{list-style:none;padding:0;margin:0;display:block}#c81424 .bild-links .imgblock li{list-style:none}#c81424:hover .bild-links::before{border-color:rgba(148,41,51,.5);top:.75rem;left:.75rem}#c81424 .text-rechts{padding-left:0}#c81424 h1{font-size:2.5rem;font-weight:900;color:#2c3e50;margin:0 0 .25rem;letter-spacing:-0.02em}#c81424 h3{font-size:1.15rem;font-weight:500;color:#942933;margin:0 0 1.5rem;font-style:italic}#c81424 .csc-textpic-text p{font-size:1rem;line-height:1.85;color:#4a5568;margin-bottom:1rem}#c81424 .csc-textpic-text b{display:inline-flex;align-items:center;gap:.75rem;margin-top:1rem;padding:.875rem 1.25rem;background:linear-gradient(135deg, #faf8f5, #f0ece5);border-left:4px solid #942933;border-radius:0 .75rem .75rem 0;font-weight:700;color:#2c3e50;font-size:1.05rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}@media(max-width: 768px){#c81424{padding:3rem 1rem}#c81424 .bild-links::before{display:none}#c81424 .text-rechts{padding-left:0;padding-top:1.5rem}}.ce-teaser{padding:6rem 2rem;background:#faf8f5}.ce-teaser>.teaser-grid,.ce-teaser>.teaser-list{max-width:72rem;margin:0 auto}@media(max-width: 768px){.ce-teaser{padding:3rem 1rem}}.teaser-card{background:#fff;border-radius:1.25rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.04);transition:all .4s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.teaser-card:hover{box-shadow:0 24px 48px rgba(0,0,0,.1);transform:translateY(-8px);border-color:rgba(148,41,51,.15)}.teaser-image{overflow:hidden;position:relative}.teaser-image img{width:100%;height:260px;object-fit:cover;transition:transform .7s cubic-bezier(0.25, 0.46, 0.45, 0.94)}@media(max-width: 768px){.teaser-image img{height:200px}}.teaser-image::after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(to top, rgba(0, 0, 0, 0.2), transparent);pointer-events:none;transition:opacity .3s ease}.teaser-card:hover .teaser-image img{transform:scale(1.08)}.teaser-card:hover .teaser-image::after{opacity:.6}.teaser-title{font-size:1.25rem;font-weight:800;color:#2c3e50;padding:1.5rem 1.75rem .5rem;margin:0;letter-spacing:-0.01em}.teaser-title a{color:inherit;text-decoration:none;transition:color .3s ease}.teaser-title a:hover{color:#942933}.teaser-text{font-size:.9rem;color:#6b7280;line-height:1.75;padding:0 1.75rem .75rem;margin:0}.teaser-action{display:inline}a.teaser-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem 1.75rem;color:#942933;font-size:.875rem;font-weight:700;text-decoration:none;transition:all .3s ease;letter-spacing:.02em;text-transform:uppercase}a.teaser-link:hover{color:#7a212a;gap:.75rem}a.teaser-link .teaser-action::after{content:" →"}#c176373{padding:7rem 2rem;text-align:center;overflow:hidden;position:relative;background:radial-gradient(ellipse at 25% 30%, rgba(148, 41, 51, 0.18) 0%, transparent 45%),radial-gradient(ellipse at 75% 70%, rgba(61, 86, 110, 0.25) 0%, transparent 45%),linear-gradient(160deg, #1a1a2e 0%, #2c3e50 100%)}#c176373::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle, rgba(255, 255, 255, 0.04) 1px, transparent 1px);background-size:28px 28px;pointer-events:none;z-index:1}#c176373::after{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:120px;height:3px;background:linear-gradient(90deg, transparent, #942933, transparent);opacity:.7}#c176373 .content_wrap{max-width:44rem;margin:0 auto;display:block;position:relative;z-index:2;text-align:center;padding:0}#c176373 .grid,#c176373 .col-span-12{display:block;max-width:none;text-align:center;padding:0}#c176373 .csc-textpic-text{text-align:center}#c176373 h2{font-size:clamp(2.25rem,5.5vw,3.5rem);font-weight:900;color:#fff;margin:0 0 1.5rem;letter-spacing:-0.025em;line-height:1.05;text-align:center}#c176373 h2::before{content:"Kontakt aufnehmen";display:block;font-size:.8rem;font-weight:600;color:#942933;text-transform:uppercase;letter-spacing:.3em;margin-bottom:1.25rem}#c176373 p{font-size:1.0625rem;color:hsla(0,0%,100%,.72);line-height:1.7;margin:0 auto 2.25rem;max-width:30rem;text-align:center}#c176373 a[href^=tel],#c176373 a:not([class]){display:inline-flex;align-items:center;justify-content:center;gap:.85rem;background:#942933;color:#fff !important;padding:1.125rem 2.25rem;border-radius:9999px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);box-shadow:0 10px 28px rgba(148,41,51,.4);letter-spacing:.01em;position:relative}#c176373 a[href^=tel]::after,#c176373 a:not([class])::after{content:"→";font-size:1.15em;line-height:1;transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1)}#c176373 a[href^=tel]:hover,#c176373 a:not([class]):hover{background:#7a212a;transform:translateY(-3px);box-shadow:0 16px 40px rgba(148,41,51,.5)}#c176373 a[href^=tel]:hover::after,#c176373 a:not([class]):hover::after{transform:translateX(5px)}@media(max-width: 768px){#c176373{padding:4.5rem 1.5rem}#c176373 h2::before{font-size:.7rem;letter-spacing:.2em}}@media(max-width: 768px){#c176373{padding:4rem 1.5rem}}footer{font-family:"Inter",system-ui,sans-serif}footer h4,footer h5{font-weight:700;letter-spacing:.03em;font-size:.85rem;text-transform:uppercase}footer a{transition:color .2s ease}#scroll-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}body.page-home #main-content{padding-top:0;padding-bottom:0}body:not(.page-home) #main-content{min-height:35rem}
