/* Verbindliche Schwarz-Gold-Palette für die öffentliche Startseite. */
body.sasp-public-body{--public-cyan:#e6c45b;--public-blue:#bc963f;--public-violet:#f1da91;--public-bg:#100f0b;--public-panel:#1b1912;--public-line:rgba(218,185,91,.25);background:radial-gradient(circle at 72% 9%,rgba(188,150,63,.09),transparent 32%),#100f0b!important;color:#f8f5eb}
.sasp-public-body::before{background:linear-gradient(rgba(218,185,91,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(218,185,91,.025) 1px,transparent 1px)!important;background-size:72px 72px!important}
.sasp-public-body .sasp-ambient{display:none!important}
.sasp-public-body :is(.sasp-public-nav,.sasp-desktop-menu,.sasp-mobile-menu nav,.sasp-mobile-menu summary,.sasp-public-stats,.public-operations,.public-application-path,.sasp-application-cta,.public-status-service,.sasp-public-footer){background:#17160f!important;border-color:#494025!important;box-shadow:none!important}
.sasp-public-body :is(.sasp-public-stats article,.sasp-mission-grid article,.sasp-division-grid article,.sasp-career-steps article,.public-operations-flow article,.public-recruitment-grid>article,.public-recruitment-grid li,.public-faq details){background:#1d1b13!important;border-color:#4c432b!important;box-shadow:none!important}
.sasp-public-body :is(.sasp-public-hero-copy>p,.sasp-section-heading>p,.sasp-section-heading.split>p,.sasp-public-trust span,.public-status-strip,.public-status-strip b,.sasp-public-brand small,.sasp-public-stats span,.sasp-public-section p,.public-operations p,.public-operations small,.public-recruitment-grid li,.public-application-path p,.sasp-public-footer){color:#d8ccb0!important}
.sasp-public-body .sasp-public-hero-copy::before{color:#cbb978!important}
.sasp-public-body :is(.eyebrow,.sasp-public-stats b,.sasp-public-trust b,.sasp-mission-grid article>b,.sasp-career-steps article>b,.sasp-division-grid small){color:#ebcf78!important}
.sasp-public-body .sasp-public-hero-copy .eyebrow{background:#262113!important;border-color:#62532c!important;box-shadow:none!important}
.sasp-public-body .sasp-public-hero-copy h1 span{background:linear-gradient(100deg,#f7e6b1,#d7af47 60%,#edd391)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
.sasp-public-body :is(.btn,.sasp-public-login,.application-link){background:linear-gradient(135deg,#e8cd7a,#bf983e)!important;border-color:#dab958!important;color:#18150c!important;box-shadow:0 8px 24px #0003!important}
.sasp-public-body :is(.btn.secondary,.status-link){background:#39301b!important;border-color:#796536!important;color:#fff2cc!important}
.sasp-public-body :is(.sasp-desktop-menu a,.sasp-mobile-menu a,.sasp-public-footer a){color:#f1e1ad!important}
.sasp-public-body :is(.sasp-mission-grid article>i,.sasp-division-grid article>span,.public-operations-lead>span,.public-operations-flow article>b,.public-recruitment-grid li>span){background:#352d18!important;border-color:#736032!important;color:#f1d477!important;box-shadow:none!important}
.sasp-public-body :is(.sasp-public-trust,.sasp-career-steps article,.sasp-officer-hero){border-color:#574a29!important}
.sasp-public-body :is(.public-scroll-progress i,.sasp-career-steps::before){background:linear-gradient(90deg,#ae8937,#eed88f)!important;box-shadow:none!important}
.sasp-public-body a:focus-visible,.sasp-public-body summary:focus-visible{outline:2px solid #f3d67e;outline-offset:4px}

.sasp-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sasp-gallery-grid figure{margin:0;min-width:0;overflow:hidden;border:1px solid #625334;border-radius:18px;background:#1b1912}
.sasp-gallery-grid a{display:block}.sasp-gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.sasp-gallery-grid figcaption{padding:18px;color:#fff0c1;font-size:17px;font-weight:650;line-height:1.4}
@media(max-width:850px){.sasp-gallery-grid{grid-template-columns:1fr}.sasp-gallery-grid figure{max-width:720px;width:100%;margin-inline:auto}}

/* Cinematic title area */
.sasp-cinematic-hero{position:relative;overflow:hidden;background:#090a08;isolation:isolate}
.sasp-cinematic-video{display:block;width:100%;height:100%;min-height:clamp(360px,38vw,560px);object-fit:cover;background:#090a08}
.sasp-cinematic-hero figcaption{position:absolute;z-index:2;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent,rgba(8,9,7,.92));border:0!important;padding:70px 24px 22px!important;pointer-events:none}
.sasp-video-toggle{position:absolute;z-index:3;top:16px;right:16px;display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 13px;border:1px solid rgba(238,210,107,.48);border-radius:999px;background:rgba(10,11,8,.78)!important;color:#fff0be!important;box-shadow:0 8px 24px rgba(0,0,0,.3);backdrop-filter:blur(10px);cursor:pointer}
.sasp-video-toggle span{display:grid;place-items:center;width:20px;height:20px;color:#efd36f;font-size:12px}
.sasp-video-toggle b{font-size:11px;letter-spacing:.03em}
.sasp-video-toggle:hover{border-color:#efd36f;transform:translateY(-1px)}
@media(max-width:700px){.sasp-cinematic-video{min-height:0;aspect-ratio:16/9}.sasp-video-toggle{top:10px;right:10px}.sasp-video-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.sasp-cinematic-hero figcaption{padding:42px 16px 15px!important}}

/* Recruitment section aligned with the spacious public page layout. */
.public-recruitment{position:relative}
.public-recruitment::before{content:"";position:absolute;inset:70px 8% auto;height:260px;background:radial-gradient(ellipse at center,rgba(218,181,62,.08),transparent 68%);pointer-events:none}
.sasp-recruitment-heading{position:relative;max-width:900px;margin:0 0 48px!important}
.sasp-recruitment-heading h2{margin:10px 0 18px!important}
.sasp-recruitment-heading>p:last-child{max-width:720px;margin:0!important;color:#d8ccb0!important;font-size:17px!important;line-height:1.75!important}
.public-recruitment .public-recruitment-grid{position:relative;gap:24px}
.public-recruitment .public-recruitment-grid>article{padding:34px!important;border:1px solid #554a2d!important;border-radius:22px!important;background:linear-gradient(145deg,#1d1b14,#15140f)!important;box-shadow:0 22px 55px rgba(0,0,0,.2)!important}
.public-recruitment .public-recruitment-grid header{grid-template-columns:56px 1fr;gap:16px;padding-bottom:24px;border-bottom:1px solid rgba(229,199,94,.18)}
.public-recruitment .public-recruitment-grid header>span{width:56px;height:56px;border:1px solid #66562b;border-radius:15px;background:#302916!important;color:#f2d267;font-size:20px}
.public-recruitment .public-recruitment-grid header small{color:#c2aa61;font-size:11px;letter-spacing:.08em}
.public-recruitment .public-recruitment-grid h3{margin-top:7px;color:#fff5dc;font-size:24px;line-height:1.25}
.public-recruitment .public-recruitment-grid ul{gap:12px;margin-top:24px}
.public-recruitment .public-recruitment-grid li{min-height:78px;padding:15px 17px!important;grid-template-columns:42px minmax(0,1fr);gap:14px;border:1px solid #463e29!important;border-radius:13px!important;background:#191811!important}
.public-recruitment .public-recruitment-grid li:hover{transform:translateX(3px);border-color:#766536!important;background:#201e14!important}
.public-recruitment .public-recruitment-grid li>i,.public-recruitment .public-recruitment-grid li>b{width:42px;height:42px;border:1px solid rgba(230,197,87,.18);border-radius:11px;background:#302916!important;color:#efd16d!important;font-size:12px;font-weight:800}
.public-recruitment .public-recruitment-grid li>span{min-width:0;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.public-recruitment .public-recruitment-grid li strong{color:#fff3d0;font-size:15px;line-height:1.35}
.public-recruitment .public-recruitment-grid li small{margin-top:5px;color:#bfb394;font-size:12px;line-height:1.5}
@media(max-width:900px){.sasp-recruitment-heading{margin-bottom:32px!important}.public-recruitment .public-recruitment-grid{grid-template-columns:1fr}.public-recruitment .public-recruitment-grid>article{padding:26px!important}}
@media(max-width:520px){.sasp-recruitment-heading>p:last-child{font-size:15px!important}.public-recruitment .public-recruitment-grid>article{padding:20px!important}.public-recruitment .public-recruitment-grid header{grid-template-columns:48px 1fr}.public-recruitment .public-recruitment-grid header>span{width:48px;height:48px}.public-recruitment .public-recruitment-grid h3{font-size:20px}.public-recruitment .public-recruitment-grid li{grid-template-columns:38px minmax(0,1fr);padding:13px!important}.public-recruitment .public-recruitment-grid li>i,.public-recruitment .public-recruitment-grid li>b{width:38px;height:38px}.public-recruitment .public-recruitment-grid li strong{font-size:14px}.public-recruitment .public-recruitment-grid li small{font-size:11px}}

/* Wide cinematic hero: the complete 16:9 film remains visible. */
.sasp-public-body .sasp-public-hero{grid-template-columns:minmax(360px,.72fr) minmax(620px,1.28fr);gap:42px;min-height:auto;padding-top:54px;padding-bottom:82px;align-items:center}
.sasp-public-body .sasp-public-hero-copy h1{font-size:clamp(62px,5.3vw,92px);line-height:.88;letter-spacing:-.06em}
.sasp-public-body .sasp-public-hero-copy>p:not(.eyebrow){max-width:590px;font-size:14px;line-height:1.75}
.sasp-public-body .sasp-public-hero-actions{display:flex;flex-wrap:wrap}
.sasp-public-body .sasp-cinematic-hero{width:100%;border-radius:22px;box-shadow:0 32px 80px rgba(0,0,0,.38)}
.sasp-public-body .sasp-cinematic-video{width:100%;height:auto;min-height:0;aspect-ratio:16/9;object-fit:contain;background:#080907}
.sasp-public-body .sasp-cinematic-hero figcaption{display:none}
.sasp-public-body .sasp-video-toggle{top:14px;right:14px;min-height:40px;padding:7px 12px}
@media(max-width:1120px){.sasp-public-body .sasp-public-hero{grid-template-columns:minmax(0,1fr);gap:34px;text-align:center}.sasp-public-body .sasp-public-hero-copy>p:not(.eyebrow){margin-inline:auto}.sasp-public-body .sasp-public-hero-actions,.sasp-public-body .sasp-public-trust{justify-content:center}.sasp-public-body .sasp-cinematic-hero{max-width:960px;margin-inline:auto}}
@media(max-width:600px){.sasp-public-body .sasp-public-hero{width:100%;padding:52px 14px 64px}.sasp-public-body .sasp-public-hero-copy h1{font-size:clamp(48px,15vw,68px)}.sasp-public-body .sasp-cinematic-hero{border-radius:15px}.sasp-public-body .sasp-video-toggle{top:8px;right:8px;min-width:40px;padding:6px}.sasp-public-body .sasp-video-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}

/* Full-width cinematic stage inspired by the supplied reference layout. */
.sasp-public-body .sasp-public-hero{position:relative;isolation:isolate;width:100%;max-width:none;min-height:clamp(680px,calc(100svh - 95px),900px);display:flex;align-items:center;margin:16px 0 34px;padding:80px max(28px,calc((100vw - 1480px)/2)) 105px;overflow:hidden;text-align:left}
.sasp-public-body .sasp-public-hero::after{content:"";position:absolute;z-index:1;right:-2%;bottom:-26px;left:-2%;height:48px;background:linear-gradient(90deg,#bf8f20,#ffd765 48%,#c59424);transform:rotate(-.7deg);box-shadow:0 -8px 28px rgba(0,0,0,.28);pointer-events:none}
.sasp-public-body .sasp-public-hero-copy{position:relative;z-index:3;width:min(690px,100%);padding:30px 0;text-shadow:0 3px 20px rgba(0,0,0,.76)}
.sasp-public-body .sasp-public-hero-copy::after{content:"";position:absolute;z-index:-1;inset:-70px -100px -70px -70px;background:radial-gradient(ellipse at 35% 50%,rgba(4,5,4,.72),transparent 72%);pointer-events:none}
.sasp-public-body .sasp-public-hero-copy h1{margin:24px 0 22px;font-family:Impact,"Arial Narrow",Inter,sans-serif;font-size:clamp(72px,6.7vw,118px);font-weight:900;line-height:.82;letter-spacing:-.035em;text-transform:uppercase}
.sasp-public-body .sasp-public-hero-copy>p:not(.eyebrow){max-width:650px;color:#e2dccb!important;font-size:17px;line-height:1.75}
.sasp-public-body .sasp-public-hero-actions{margin-top:30px}
.sasp-public-body .sasp-public-hero-actions .btn{min-height:56px;padding-inline:25px;font-size:13px}
.sasp-public-body .sasp-public-trust{max-width:650px;margin-top:34px;border-color:rgba(239,211,113,.3)!important}
.sasp-public-body .sasp-cinematic-hero{position:absolute;z-index:-2;inset:0;width:100%;max-width:none;height:100%;margin:0;border:0!important;border-radius:0;box-shadow:none!important;background:#080907}
.sasp-public-body .sasp-cinematic-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,5,.94) 0%,rgba(5,6,5,.77) 33%,rgba(5,6,5,.2) 67%,rgba(5,6,5,.12)),linear-gradient(0deg,rgba(5,6,5,.82),transparent 45%,rgba(5,6,5,.2));pointer-events:none}
.sasp-public-body .sasp-cinematic-video{width:100%;height:100%;min-height:100%;aspect-ratio:auto;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.sasp-public-body .sasp-video-toggle{z-index:4;top:86px;right:max(24px,calc((100vw - 1480px)/2));background:rgba(8,9,7,.72)!important}
.sasp-hero-band{position:absolute;z-index:4;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;gap:24px;height:40px;overflow:hidden;color:#171308;font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.sasp-hero-band i{font-size:9px;font-style:normal}
@media(max-width:900px){.sasp-public-body .sasp-public-hero{min-height:760px;padding:70px 24px 100px}.sasp-public-body .sasp-public-hero-copy{width:min(620px,100%)}.sasp-public-body .sasp-public-hero-copy h1{font-size:clamp(64px,12vw,96px)}.sasp-public-body .sasp-cinematic-hero::after{background:linear-gradient(90deg,rgba(5,6,5,.94),rgba(5,6,5,.63) 70%,rgba(5,6,5,.3)),linear-gradient(0deg,rgba(5,6,5,.84),transparent 55%)}.sasp-hero-band{justify-content:flex-start;padding-left:24px}}
@media(max-width:600px){.sasp-public-body .sasp-public-hero{min-height:720px;margin-top:10px;padding:58px 18px 92px}.sasp-public-body .sasp-public-hero-copy{padding:10px 0}.sasp-public-body .sasp-public-hero-copy h1{font-size:clamp(54px,17vw,76px);line-height:.86}.sasp-public-body .sasp-public-hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.65}.sasp-public-body .sasp-public-hero-actions{display:grid}.sasp-public-body .sasp-public-hero-actions .btn{width:100%}.sasp-public-body .sasp-public-trust{display:grid;gap:12px}.sasp-public-body .sasp-cinematic-video{object-position:62% center}.sasp-public-body .sasp-video-toggle{top:76px;right:12px}.sasp-hero-band{gap:15px;padding-left:18px;font-size:10px}}

/* Gleichmaessige Abstaende und eine gemeinsame linke Kante der Hero-Zeilen. */
.sasp-public-body .sasp-public-hero-copy h1{line-height:1}
.sasp-public-body .sasp-public-hero-copy h1 .hero-title-line{display:block;margin:0;padding:0;font:inherit;text-indent:0}
.sasp-public-body .sasp-public-hero-copy h1 .hero-title-line>span{display:block;margin:0;padding:0;font:inherit;text-indent:0}
