@font-face{font-family:Maven Johanniter;src:url(/fonts/MavenJohanniter-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Maven Johanniter;src:url(/fonts/MavenJohanniter-SemiBold.ttf) format("truetype");font-display:swap;font-weight:700}:root{color-scheme:light;font-family:Maven Johanniter,Maven Pro,Inter,system-ui,sans-serif;color:#202326;background:#f7f7f5;font-synthesis:none;text-rendering:auto;--red: #e30613;--red-dark: #a9000a;--ink: #202326;--muted: #5e666e;--line: #dcdeda;--paper: #ffffff;--soft: #f0f2ef;--shadow: 0 18px 52px rgb(32 35 38 / 9%)}*{box-sizing:border-box}body{min-width:320px;margin:0}body.has-open-modal{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #111111;outline-offset:4px}.topbar,.footer,main{width:min(1240px,calc(100% - 48px));margin-inline:auto}.topbar{display:flex;min-height:88px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:16px;font-size:1.08rem;font-weight:700}.brand-logo{display:block;width:auto;height:46px;object-fit:contain}.brand-title{padding-left:16px;border-left:1px solid var(--line)}.accessibility-button{position:fixed;right:18px;bottom:22px;z-index:30;display:grid;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid var(--red-dark);border-radius:50%;color:#fff;background:var(--red-dark);box-shadow:0 10px 26px #0003;cursor:pointer;font-weight:700}.accessibility-button:hover{border-color:var(--red);background:var(--red)}.accessibility-button span:first-child{font-size:1.05rem}.accessibility-dialog{width:min(520px,calc(100% - 32px));padding:0;border:0;border-radius:20px;color:var(--ink);background:var(--paper);box-shadow:0 28px 80px #00000047}.accessibility-dialog::backdrop{background:#00000085}.accessibility-dialog form{padding:26px}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.dialog-close{display:grid;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;place-items:center;color:var(--ink);background:var(--paper);cursor:pointer;font-size:1.8rem;line-height:1}.accessibility-dialog fieldset{display:grid;gap:14px;margin:24px 0;padding:0;border:0}.accessibility-dialog legend{margin-bottom:12px;font-weight:700}.accessibility-dialog label{display:flex;align-items:center;gap:10px}.accessibility-dialog input{width:20px;height:20px}.reset-button{min-height:44px;padding:8px 14px;border:1px solid var(--red-dark);border-radius:8px;color:var(--red-dark);background:var(--paper);cursor:pointer;font-weight:700}.nav a,.company-links a,.footer a,.back-link,.text-button{color:var(--red-dark);font-weight:700}.nav a,.company-links a,.footer a{min-height:44px;display:inline-flex;align-items:center}.nav a:hover,.company-links a:hover,.footer a:hover,.back-link:hover,.text-button:hover{color:var(--red);text-decoration:underline;text-underline-offset:4px}main{min-height:calc(100vh - 172px);padding:42px 0 72px}main:has(.admin-panel){width:min(1500px,calc(100% - 32px))}.hero{position:relative;display:grid;min-height:230px;overflow:hidden;place-items:center start;margin-bottom:36px;padding:clamp(24px,4vw,42px);border-radius:28px;color:#fff;background:linear-gradient(135deg,#b5000b,#e30613 68%,#f14750);box-shadow:0 28px 72px #a3000a38}.hero__content{position:relative;z-index:1;max-width:760px}.hero__title{font-size:clamp(1.7rem,3.8vw,3rem)}.hero__lead{max-width:620px;margin:22px 0 0;font-size:clamp(1rem,2vw,1.22rem);line-height:1.55}.hero__quote{margin:20px 0 0;font-size:clamp(1.28rem,2.7vw,1.8rem);font-weight:700;line-height:1.25}.hero__accent{position:absolute;right:clamp(-130px,-8vw,-40px);display:grid;width:min(390px,48vw);aspect-ratio:1;gap:18px;opacity:.12}.hero__accent span{border:16px solid #ffffff;border-radius:28px}.eyebrow{margin:0 0 10px;color:var(--red-dark);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero .eyebrow{color:#fff}h1,h2{margin:0;line-height:1.05}h1{max-width:920px;font-size:clamp(2.3rem,5.8vw,5rem)}.section-heading{margin:0 0 22px}.section-heading h2{font-size:clamp(1.65rem,3vw,2.35rem)}.company-grid,.baby-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px}.company-card,.baby-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.baby-card{width:100%;padding:0;color:inherit;text-align:left;cursor:zoom-in}.company-card:hover,.baby-card:hover{transform:translateY(-4px);border-color:#e306136b;box-shadow:0 24px 62px #20232626}.company-card__media{display:grid;min-height:190px;place-items:center;overflow:hidden;background:var(--soft)}.company-card__image,.image-placeholder{display:block;width:100%;aspect-ratio:16 / 10;object-fit:contain}.company-card__body{display:grid;gap:9px;padding:20px}.company-card strong{font-size:1.18rem}.company-card small{color:var(--red-dark);font-size:.92rem;font-weight:700}.company-hero{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:28px;margin-bottom:28px;overflow:hidden;border-radius:24px;background:var(--paper);box-shadow:var(--shadow)}.company-hero__content{position:relative;z-index:2;max-width:min(100%,760px);padding:clamp(24px,4vw,42px);padding-bottom:22px;border-radius:0 0 18px;background:linear-gradient(105deg,var(--paper) 76%,rgb(255 255 255 / 82%) 90%,transparent)}.company-logo{max-width:250px;max-height:92px;object-fit:contain;margin-bottom:24px}.company-hero h1{max-width:100%;overflow-wrap:anywhere;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.14}.back-link{display:inline-flex;min-height:44px;align-items:center;margin-top:18px}.company-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:4px}.company-hero__visual{position:relative;grid-column:1 / -1;height:clamp(155px,21vw,240px);margin-top:-38px}.company-hero__visual:before{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(to bottom,rgb(255 255 255 / 68%) 0%,rgb(255 255 255 / 30%) 18%,rgb(255 255 255 / 8%) 36%,transparent 56%);pointer-events:none}.company-hero__image{display:block;width:100%;height:100%;object-fit:cover}.baby-card{display:grid;grid-template-rows:auto 1fr;position:relative;isolation:isolate}.baby-card__media{position:relative;display:grid;min-height:285px;place-items:center;overflow:hidden;background:radial-gradient(circle at 18% 10%,rgb(227 6 19 / 10%),transparent 34%),linear-gradient(145deg,#fff8f4,#eee6df)}.baby-card__media:after{position:absolute;inset:auto 0 0;height:42%;content:"";background:linear-gradient(to top,rgb(32 35 38 / 28%),transparent);pointer-events:none}.baby-card__image{display:block;width:100%;height:285px;object-fit:contain;background:transparent;transition:transform .22s ease}.baby-card:hover .baby-card__image{transform:scale(1.025)}.baby-card__body{display:grid;gap:10px;padding:22px;background:linear-gradient(90deg,rgb(227 6 19 / 9%),transparent 34%),var(--paper)}.baby-card h2{margin:0;font-size:clamp(1.12rem,1.6vw,1.34rem);line-height:1.15}.baby-card p{margin:0;color:var(--muted);line-height:1.4}.baby-card span{display:inline-flex;width:fit-content;padding:6px 10px;border-radius:999px;color:var(--red-dark);background:#e3061317;font-weight:700}.gallery-filter{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:0 0 24px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.gallery-filter label{display:grid;flex:1 1 220px;gap:7px;color:var(--muted);font-weight:700}.gallery-filter input,.gallery-filter select{min-height:46px;padding:9px 11px;border:1px solid #b8bdb8;border-radius:8px;background:#fff}.gallery-filter button,.pagination button{min-height:46px;padding:9px 18px;border:0;border-radius:8px;color:#fff;background:var(--red-dark);cursor:pointer;font-weight:700}.gallery-filter button:hover,.pagination button:hover:not(:disabled){background:var(--red)}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:28px}.pagination button:disabled{cursor:not-allowed;opacity:.45}.empty-gallery{color:var(--muted)}.detail{display:grid;grid-template-columns:minmax(290px,410px) 1fr;gap:34px;align-items:start}.detail__text{position:sticky;top:24px;padding:28px;border-radius:20px;background:var(--paper);box-shadow:var(--shadow)}.text-button{min-height:44px;padding:0;border:0;background:transparent;cursor:pointer}dl{display:grid;grid-template-columns:132px 1fr;gap:11px 16px;margin:26px 0 0}dt{color:var(--muted)}dd{margin:0;font-weight:700}.detail__gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.detail__image-button{padding:0;border:0;border-radius:22px;background:transparent;cursor:zoom-in}.detail__image{display:block;width:100%;aspect-ratio:4 / 5;object-fit:contain;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#fff7f4,#f6f2ef);box-shadow:var(--shadow)}.lightbox{position:fixed;z-index:40;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:clamp(18px,4vw,42px);background:#181818bd;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox__figure{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);max-width:min(1120px,94vw);max-height:88vh;gap:0;align-items:stretch;margin:0;overflow:hidden;border-radius:30px;background:#fff;box-shadow:0 34px 96px #00000057}.lightbox__stage{display:grid;place-items:center}.lightbox__stage>img{max-width:100%;max-height:76vh;object-fit:contain;border:0;border-radius:0;background:#fff;box-shadow:none}.lightbox__side{display:flex;flex-direction:column;align-content:start;gap:18px;padding:28px;border:0;border-radius:0;background:linear-gradient(90deg,#fffffff5,#fff7f2eb 72%,#fff7f2b8),radial-gradient(circle at 0% 0%,rgb(227 6 19 / 12%),transparent 42%);box-shadow:inset -1px 0 #e306131a;color:var(--ink)}.lightbox__side figcaption{display:grid;gap:8px;padding-bottom:18px;border-bottom:1px solid var(--line)}.lightbox__side strong{font-size:clamp(1.55rem,2.3vw,2.05rem);line-height:1.12}.lightbox__side small{width:fit-content;padding:6px 10px;border-radius:999px;color:var(--red-dark);background:#e3061317;font-weight:800}.lightbox__figure figcaption span{display:block;margin-top:4px;color:var(--muted);line-height:1.45}.lightbox__thumbs{display:grid;max-height:56vh;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow-y:auto;padding:0;background:transparent}.lightbox__thumbs:before{content:"Bilder";grid-column:1 / -1;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-align:center;text-transform:uppercase}.lightbox__thumbs button{position:relative;width:100%;aspect-ratio:1;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;opacity:.74;transition:transform .16s ease,opacity .16s ease,border-color .16s ease,box-shadow .16s ease}.lightbox__thumbs button:hover,.lightbox__thumbs button.is-active{border-color:var(--red);box-shadow:0 10px 26px #e3061324;opacity:1;transform:translateY(-2px)}.lightbox__thumbs button.is-active:after{position:absolute;inset:auto 8px 8px 8px;height:5px;border-radius:999px;background:var(--red);content:""}.lightbox__thumbs img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.lightbox__figure{grid-template-columns:1fr}.lightbox__stage{order:1}.lightbox__side{order:2}.lightbox__thumbs{grid-auto-flow:column;grid-auto-columns:64px;overflow-x:auto;overflow-y:hidden;max-height:none;order:2}.lightbox__thumbs:before{display:none}}.lightbox__close,.lightbox__nav{position:fixed;display:grid;width:48px;height:48px;place-items:center;border:0;border-radius:999px;color:var(--ink);background:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 36px #0000002e;cursor:pointer;font-size:2rem}.lightbox__close{top:22px;right:22px}.lightbox__nav--prev{left:22px}.lightbox__nav--next{right:22px}.admin-panel{position:relative;width:min(100%,1440px);max-width:none;padding:clamp(20px,4vw,36px);overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 50px #20232617}.admin-panel:before{position:absolute;inset:0 0 auto;height:5px;content:"";background:linear-gradient(90deg,var(--red),#f39a9f,transparent)}.admin-panel h1{font-size:clamp(1.8rem,4vw,3rem);margin:0}.admin-heading,.admin-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.admin-heading{padding-bottom:18px;border-bottom:1px solid var(--line)}.admin-login{max-width:620px;margin:clamp(28px,7vh,90px) auto}.admin-login h1,.admin-login .eyebrow{text-align:center}.admin-login .admin-form{grid-template-columns:1fr}.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.admin-form--wide{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-form label{display:grid;gap:7px;color:var(--muted);font-weight:700}.field-hint{color:var(--muted);font-size:.86rem;font-weight:400;line-height:1.35}.admin-form input,.admin-form select,.admin-form textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #cfd3ce;border-radius:12px;color:var(--ink);background:#fff;box-shadow:inset 0 1px #fffc;transition:border-color .16s ease,box-shadow .16s ease}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{border-color:var(--red-dark);box-shadow:0 0 0 4px #e306131a;outline:0}.admin-form textarea,.admin-form .checkline,.admin-form button{grid-column:1 / -1}.admin-form>button{justify-self:start;width:auto;min-width:180px}.admin-tabs{display:flex;flex-wrap:wrap;gap:0;margin:24px 0 0;border-bottom:1px solid var(--line);background:transparent}.admin-tabs button,.admin-settings button{min-height:44px;padding:10px 18px;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--red-dark);background:transparent;cursor:pointer;font-weight:700;box-shadow:none;transition:border-color .16s ease,background .16s ease}.admin-tabs button:hover,.admin-settings button:hover{background:#fff4f4}.admin-tabs button.is-active{border-bottom-color:var(--red);color:var(--ink);background:#fff8f8}.admin-content{padding-top:24px}.admin-section{display:grid;gap:18px}.admin-section h2{font-size:clamp(1.35rem,2vw,1.8rem)}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.admin-toolbar p{margin:6px 0 0;color:var(--muted)}.admin-list__item--company{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"main main main" "status spacer actions"}.admin-list__item--user{grid-template-columns:minmax(0,1fr) auto auto auto;grid-template-areas:"main main main main" "role status edit delete"}.admin-list__item--company .admin-list__main,.admin-list__item--user .admin-list__main{grid-area:main;width:100%;max-width:none}.admin-list__item--company .admin-list__status{grid-area:status}.admin-list__item--company button{grid-area:actions}.admin-list__item--user .admin-role{grid-area:role}.admin-list__item--user .admin-list__status{grid-area:status}.admin-list__item--user button:first-of-type{grid-area:edit}.admin-list__item--user button:last-of-type{grid-area:delete}.admin-list__item--company .admin-list__main strong,.admin-list__item--user .admin-list__main strong{display:block;white-space:normal;line-height:1.3;font-size:1.08rem}.admin-list__item--user .admin-list__main small{display:block;white-space:normal;line-height:1.35}.admin-list__status{justify-self:start;min-width:88px;padding:5px 10px;border-radius:999px;color:#1f6f3f;background:#edf6ef;font-weight:700;text-align:center}.admin-settings{display:grid;gap:18px}.admin-settings__group{display:grid;gap:12px;margin:0;padding:18px;border:1px solid var(--line);border-radius:14px}.admin-settings__group legend{padding:0 8px;color:var(--red-dark);font-weight:700}.admin-settings form{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px}.admin-settings label{display:grid;gap:6px;color:var(--muted);font-weight:700}.admin-settings input{min-height:44px;padding:8px 10px;border:1px solid #b8bdb8;border-radius:8px}.checkline{display:flex!important;align-items:center;gap:10px}.checkline input{width:20px;min-height:20px}.admin-form button,.admin-toolbar button,.admin-list button,.admin-pagination button{min-height:50px;padding:10px 16px;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,var(--red-dark),var(--red));cursor:pointer;font-weight:700;box-shadow:0 12px 28px #a9000a33;transition:transform .16s ease,box-shadow .16s ease}.admin-form button:hover,.admin-toolbar button:hover,.admin-list button:hover,.admin-pagination button:hover:not(:disabled){box-shadow:0 16px 34px #a9000a42;transform:translateY(-1px)}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:6px}.admin-pagination button:disabled{cursor:not-allowed;opacity:.45}.admin-role{justify-self:start;min-width:88px;padding:5px 10px;border-radius:999px;color:var(--muted);background:var(--soft);font-weight:700;text-align:center}.secondary-button{min-height:44px!important;border:1px solid rgb(169 0 10 / 35%)!important;color:var(--red-dark)!important;background:#fff!important;box-shadow:0 10px 24px #20232614!important}.admin-list{display:grid;gap:12px;margin-top:22px}.admin-list__item{display:grid;grid-template-columns:72px minmax(150px,1fr) auto auto auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:18px;background:#ffffffd1;box-shadow:0 10px 30px #2023260f;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.admin-list__main{min-width:0}.admin-list__main strong,.admin-list__main small{overflow-wrap:anywhere}.admin-list__item:hover{border-color:#a9000a38;box-shadow:0 16px 38px #2023261a;transform:translateY(-1px)}.admin-list__image{width:72px;height:72px;object-fit:cover;border-radius:8px;background:var(--soft)}.admin-list small{display:block;margin-top:5px;color:var(--muted)}.form-status{min-height:24px;color:var(--red-dark);font-weight:700}.state{display:grid;min-height:280px;place-items:center;color:var(--muted)}.state-error{color:var(--red-dark)}.footer{display:flex;flex-wrap:wrap;gap:12px 20px;min-height:84px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:.94rem}.footer-links{display:flex;flex-wrap:wrap;gap:14px}.admin-toast{position:fixed;right:24px;bottom:24px;z-index:60;padding:14px 18px;border-radius:12px;color:#fff;background:#1f6f3f;box-shadow:0 18px 48px #20232638;font-weight:700}.a11y-largeText p,.a11y-largeText span,.a11y-largeText small,.a11y-largeText strong,.a11y-largeText a,.a11y-largeText button,.a11y-largeText label,.a11y-largeText input,.a11y-largeText select,.a11y-largeText textarea,.a11y-largeText dt,.a11y-largeText dd,.a11y-largeText legend{font-size:1.18em}.a11y-largeText h1,.a11y-largeText h2{font-size:1.16em}.a11y-highContrast{--red: #d00000;--red-dark: #870000;--ink: #000000;--muted: #242424;--line: #555555;--paper: #ffffff;--soft: #eeeeee}.a11y-highContrast .hero{background:#870000}.a11y-underlineLinks a{text-decoration:underline;text-underline-offset:4px}.a11y-readableFont{font-family:Arial,Helvetica,sans-serif}.a11y-reduceMotion *,.a11y-reduceMotion *:before,.a11y-reduceMotion *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}@media(max-width:760px){.topbar,.footer,main{width:min(100% - 24px,1240px)}.topbar{min-height:76px}.brand-logo{height:36px}.brand-title{display:none}main{padding-top:22px}.hero{min-height:230px;border-radius:20px}.company-hero,.detail{display:block}.company-hero__image{height:100%}.company-links,.detail__gallery{margin-top:22px}.detail__text{position:static}.admin-form,.admin-form--wide{grid-template-columns:1fr}.admin-list__item{grid-template-columns:60px 1fr}.admin-list__item--company,.admin-list__item--user,.admin-settings form{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
