@font-face{font-family:Amatic;src:url('/assets/fonts/AmaticSC-Bold.ttf') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:DMSans;src:url('/assets/fonts/DMSans-Regular.ttf') format('woff2');font-weight:100 900;font-display:swap}
.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:0 0 8px 8px;z-index:20}.skip-link:focus{top:0}
:root{--ink:#252824;--paper:#fffdf8;--orange:#c64c24;--bright:#ef6a39;--yellow:#f4cc49;--green:#4f9b65;--blue:#72a5d7;--line:#dedbd2;--pad:clamp(1.25rem,4vw,4rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DMSans,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}img{display:block;max-width:100%;height:100%;object-fit:cover}.section-wrap{width:min(1240px,calc(100% - 2*var(--pad)));margin-inline:auto}.site-header{height:86px;width:min(1320px,calc(100% - 2*var(--pad)));margin:auto;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.wordmark{font-family:Amatic,Impact,sans-serif;font-size:2.1rem;letter-spacing:.02em;display:inline-flex;align-items:center;gap:0;color:var(--ink)}.wordmark b{color:var(--orange);font-weight:700}.wordmark i{font-family:Arial;font-style:normal;color:var(--yellow);font-size:1rem;margin-left:5px}.site-nav{display:flex;align-items:center;gap:2rem}.nav-links{display:flex;gap:1.4rem;font-size:.8rem;font-weight:700}.nav-links a:hover,.text-link:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;gap:.8rem;background:var(--orange);color:#fff;padding:.82rem 1.25rem;border-radius:100px;font-weight:700;font-size:.85rem;transition:transform .2s,background .2s}.button:hover{background:var(--bright);transform:translateY(-2px)}.button-small{padding:.65rem 1rem}.button-light{background:var(--ink);color:#fff}.menu-toggle{display:none;background:none;border:0;font:inherit;font-weight:700;min-width:44px;min-height:44px}.menu-icon{font-size:1.2rem;margin-left:.3rem}.hero{min-height:650px;display:grid;grid-template-columns:1fr minmax(420px,2fr) 1fr;align-items:center;gap:2rem;position:relative;padding-block:4rem}.hero-copy{text-align:center;position:relative;z-index:2}.eyebrow,.section-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--orange)}h1,h2,h3{font-family:Amatic,Impact,sans-serif;font-weight:700;line-height:.96;margin:0 0 1.2rem;letter-spacing:.01em}h1{font-size:clamp(4.7rem,9vw,9rem)}h2{font-size:clamp(3.5rem,6vw,6.4rem)}h3{font-size:2.4rem}em{color:var(--orange);font-style:normal}.hero-lede{max-width:48ch;margin:1.5rem auto 2rem;font-size:1.04rem}.hero-photo{height:360px;overflow:hidden;border-radius:52% 48% 48% 52% / 38% 42% 58% 62%;background:#f0ebe1}.hero-photo-left{transform:rotate(-5deg) translateY(14px)}.hero-photo-right{transform:rotate(6deg) translateY(-10px);border-radius:48% 52% 45% 55% / 48% 40% 60% 52%}.image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#f4cc49,#ef6a39 50%,#72a5d7);opacity:.6}.doodle{position:absolute;fill:none;stroke:var(--blue);stroke-width:2}.doodle-hero{width:110px;right:11%;bottom:9%}.facts{display:flex;justify-content:center;gap:clamp(2rem,8vw,8rem);border-block:1px solid var(--line);padding:1.35rem 1rem}.facts div{display:flex;align-items:baseline;gap:.7rem}.facts strong{font-family:Amatic;font-size:2rem;color:var(--orange)}.facts span{font-size:.8rem}.section-grid{display:grid;grid-template-columns:160px 1fr;gap:2rem}.section-kicker{padding-top:.5rem}.about{padding-block:9rem 8rem;position:relative}.about-copy{max-width:800px}.about h2{max-width:800px}.about-copy p{max-width:65ch}.about-images{grid-column:2;display:grid;grid-template-columns:1.4fr .8fr;gap:2rem;align-items:end;margin-top:2rem}.about-images>div{height:360px;overflow:hidden;border-radius:48% 52% 52% 48%}.about-images .about-small{height:230px;border-radius:53% 47% 45% 55%;transform:rotate(5deg)}.text-link{display:inline-flex;gap:.7rem;margin-top:1.4rem;font-weight:800;font-size:.85rem;border-bottom:2px solid var(--yellow);padding-bottom:.2rem}.concept{background:#e9f1e8;border-radius:40px;padding:5rem clamp(1.5rem,7vw,7rem);display:grid;grid-template-columns:160px 1fr 1fr;gap:2rem;position:relative}.concept-intro h2{max-width:550px}.concept-intro p{max-width:44ch}.concept-list{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem}.concept-list article{border-top:1px solid #b9d2bc;padding-top:1rem}.concept-list span{font-size:.7rem;color:var(--orange);font-weight:800}.concept-list h3{font-size:2.8rem;margin:.4rem 0}.concept-list p{font-size:.88rem;margin:0}.day{padding-block:9rem}.day h2{max-width:700px}.timeline{border-left:2px solid var(--yellow);margin-block:2rem;padding-left:2rem;display:grid;gap:1rem}.timeline div{display:grid;grid-template-columns:130px 1fr;gap:1rem}.timeline time{font-weight:800;color:var(--orange)}.timeline p{margin:0;max-width:55ch}.team{background:#f4ebe3;border-radius:40px;padding:4rem;align-items:center}.team-image{height:420px;overflow:hidden;border-radius:50% 50% 45% 55%;background:#eadfd6}.team-image img{width:100%}.parents{padding-block:9rem;max-width:950px;text-align:center}.parents .section-kicker{padding:0}.parents h2{margin:1.3rem auto;max-width:780px}.parents p{max-width:65ch;margin:0 auto}.gallery{padding-block:5rem}.gallery-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:2rem}.gallery-heading h2{max-width:620px;margin:0}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-auto-rows:190px;gap:1rem}.gallery-item{padding:0;border:0;overflow:hidden;background:#f0ebe1;cursor:pointer;border-radius:26px;min-height:140px}.gallery-item img{width:100%;transition:transform .45s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item-0{grid-row:span 2}.gallery-item-3{grid-column:2 / span 2}.contact{background:var(--yellow);border-radius:40px;padding:5rem clamp(1.5rem,7vw,7rem);display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;margin-block:5rem}.contact h2{max-width:500px}.contact p{max-width:48ch}.contact-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.6rem;font-size:1.1rem}.contact-details a:not(.button){font-weight:800}.site-footer{width:min(1240px,calc(100% - 2*var(--pad)));margin:0 auto;padding:4rem 0 2rem;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem;position:relative}.site-footer p{max-width:25ch;font-size:.85rem}.footer-contact{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem}.footer-links{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem}.motion-toggle{grid-column:1 / -1;justify-self:start;background:none;border:1px solid var(--line);border-radius:100px;padding:.55rem .9rem;font:inherit;font-size:.75rem}.detail-hero{padding-block:7rem 5rem;border-bottom:1px solid var(--line)}.detail-hero h1{max-width:900px;font-size:clamp(4.5rem,10vw,9rem);margin-top:1rem}.detail-intro{max-width:60ch;font-size:1.15rem}.detail-body{padding-block:4rem 8rem}.prose{max-width:72ch}.prose p{margin:0 0 1.35rem}.timeline-full{max-width:850px}.gallery-page{grid-auto-rows:240px}.lightbox{border:0;border-radius:20px;padding:2rem;max-width:min(92vw,1000px);background:var(--paper);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}.lightbox::backdrop{background:rgba(37,40,36,.75)}.dialog-content{max-height:75vh;text-align:center}.dialog-content img{height:auto;max-height:68vh;width:auto;max-width:100%;margin:auto}.dialog-count{margin:.5rem}.dialog-close{position:absolute;right:1rem;top:.5rem;border:0;background:none;font-size:2rem}.dialog-prev,.dialog-next{border:0;background:var(--yellow);border-radius:100%;width:44px;height:44px;font-size:1.2rem}.dialog-open{overflow:hidden}
@media(max-width:1000px){.hero{grid-template-columns:160px 1fr 160px;gap:1rem}.hero-photo{height:290px}.concept{grid-template-columns:100px 1fr}.concept-list{grid-column:2}.site-nav{gap:1rem}.nav-links{gap:.8rem}}
@media(max-width:900px){:root{--pad:1.2rem}.site-header{height:72px}.menu-toggle{display:block}.js-ready .site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:1rem;box-shadow:0 12px 30px #25282418}.js-ready .site-nav.is-open{display:block}.nav-links{display:flex;flex-direction:column;gap:.15rem}.nav-links a{padding:.75rem}.site-nav .button{margin-top:.5rem;justify-content:center;width:100%}.hero{display:flex;flex-direction:column;min-height:0;padding-block:3.5rem 4rem}.hero-copy{order:1}.hero-photo{height:180px;width:70%;order:2}.hero-photo-left{align-self:flex-start}.hero-photo-right{align-self:flex-end;margin-top:-80px}.hero-lede{font-size:.94rem}.doodle-hero{display:none}h1{font-size:clamp(4rem,18vw,6rem)}.facts{justify-content:space-between;gap:.5rem;padding-inline:0}.facts div{display:flex;flex-direction:column;gap:0}.facts strong{font-size:1.65rem}.facts span{font-size:.68rem}.section-grid{display:block}.section-kicker{margin-bottom:1.5rem}.about,.day,.parents{padding-block:6rem}.about-images{margin-top:2rem;grid-template-columns:1.2fr .8fr;gap:.8rem}.about-images>div{height:220px}.about-images .about-small{height:150px}.concept{display:block;padding:3rem 1.5rem;border-radius:28px}.concept-list{margin-top:2rem}.concept-list h3{font-size:2.2rem}.timeline div{grid-template-columns:100px 1fr;font-size:.9rem}.team{padding:2rem 1.5rem;border-radius:28px}.team-image{height:280px;margin-bottom:2rem}.gallery-heading{display:block}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:150px}.gallery-item-0{grid-column:span 2;grid-row:span 1}.gallery-item-3{grid-column:span 2}.contact{display:block;padding:3rem 1.5rem;border-radius:28px;margin-block:3rem}.contact-details{margin-top:2rem}.site-footer{display:block;padding-block:3rem 1.5rem}.footer-contact,.footer-links{margin-top:2rem}.motion-toggle{margin-top:2rem}.detail-hero{padding-block:5rem 3rem}.detail-hero h1{font-size:clamp(4rem,17vw,6rem)}.detail-body{padding-block:3rem 5rem}.lightbox{padding:1rem;grid-template-columns:44px 1fr 44px;width:92vw}.dialog-content img{max-height:60vh}}
.about::after,.concept::after,.gallery::before{content:"✦";position:absolute;font-size:2rem;line-height:1}.about{position:relative}.about::after{right:8%;top:18%;color:var(--yellow);transform:rotate(18deg)}.concept{position:relative}.concept::after{right:5%;bottom:8%;color:var(--blue);transform:rotate(-12deg)}.gallery{position:relative}.gallery::before{left:2%;top:3rem;color:var(--green);font-size:1.5rem}
@media(max-width:900px){.concept-list{grid-template-columns:minmax(0,1fr)}.concept-list article{min-width:0}.concept-list p{overflow-wrap:anywhere}}
/* Windelrocker brand refinement */
.brand-logo-link{display:block;flex:0 0 auto}.brand-crop{position:relative;overflow:hidden;aspect-ratio:1/1}.brand-crop img{position:absolute;max-width:none;width:calc(960 / var(--crop-w) * 100%);height:auto;left:calc(-1 * var(--crop-x) / var(--crop-w) * 100%);top:calc(-1 * var(--crop-y) / var(--crop-h) * 100%)}.brand-crop-logo{--crop-x:15;--crop-y:14;--crop-w:348;--crop-h:230;aspect-ratio:348/230}.brand-crop-fresh{--crop-x:480;--crop-y:29;--crop-w:410;--crop-h:307;aspect-ratio:410/307}.brand-crop-oven{--crop-x:36;--crop-y:600;--crop-w:398;--crop-h:298;aspect-ratio:398/298}.brand-crop-sauce{--crop-x:509;--crop-y:885;--crop-w:420;--crop-h:310;aspect-ratio:420/310}.header-logo{width:142px;aspect-ratio:348/230;background:var(--paper);mix-blend-mode:multiply}.footer-logo{width:175px;aspect-ratio:348/230;background:var(--paper);mix-blend-mode:multiply}.site-header{height:106px;position:sticky;top:0;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(10px)}.nav-links{font-size:.9rem;gap:1.8rem}.hero{width:100%;max-width:none;padding-inline:max(var(--pad),calc((100% - 1240px)/2));min-height:700px;overflow:hidden}.hero-photo{width:390px;height:430px;position:absolute;z-index:1;box-shadow:0 18px 40px #2528241c}.hero-photo-left{left:-85px;bottom:30px}.hero-photo-right{right:-75px;top:90px}.hero-copy{max-width:740px;margin-inline:auto}.hero::before{left:42%;top:12%;width:190px;height:36px;border-top-width:10px}.hero::after{left:6%;right:auto;top:28%;width:180px;height:110px;border-bottom:7px solid var(--green);border-radius:50%;transform:rotate(-17deg)}.hero-marker{position:absolute;right:5%;top:8%;width:300px;stroke:var(--yellow);fill:none;stroke-width:9;stroke-linecap:round;z-index:0;transform:rotate(-8deg)}.hero-stars{position:absolute;right:26%;bottom:13%;color:var(--yellow);font-size:2.4rem;letter-spacing:1rem;animation:spin 20s linear infinite;z-index:0}.facts{max-width:1240px}.about{padding-top:10rem}.nutrition{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(480px,1.1fr);gap:5rem;align-items:center;background:#fff1d2;border-radius:52px;padding:clamp(3rem,7vw,7rem);margin-block:2rem 8rem;overflow:hidden}.nutrition h2{font-size:clamp(4rem,7vw,7rem)}.nutrition-copy p{max-width:48ch}.nutrition-example{font-family:Amatic;font-size:2rem;color:var(--orange)}.nutrition-points{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;padding:0;margin:2rem 0;list-style:'✦  ';font-size:.85rem;font-weight:700}.food-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;align-items:end;transform:rotate(2deg)}.food-card{margin:0;position:relative}.food-card-0{grid-column:span 2;width:90%;justify-self:center}.food-card-1{transform:rotate(-4deg)}.food-card-2{transform:rotate(4deg);margin-bottom:-2rem}.food-card .brand-crop{border-radius:30px;box-shadow:0 15px 25px #8b5c2725}.food-card figcaption{font-family:Amatic;font-size:1.7rem;color:var(--orange);padding:.35rem .5rem}.concept,.team,.contact{box-shadow:0 18px 50px #2528240b}
@media(max-width:900px){.site-header{height:82px}.header-logo{width:122px}.hero{padding-inline:var(--pad);min-height:0;overflow:hidden}.hero-photo{position:relative;width:72%;height:185px;left:auto;right:auto;top:auto;bottom:auto}.hero-photo-left{align-self:flex-start}.hero-photo-right{align-self:flex-end;margin-top:-70px}.hero-marker,.hero-stars{display:none}.nutrition{display:block;padding:3rem 1.5rem;border-radius:30px;margin-block:1rem 5rem}.nutrition h2{font-size:clamp(4rem,17vw,6rem)}.food-mosaic{margin-top:2rem;gap:.6rem}.food-card-0{width:100%}.food-card-2{margin-bottom:-.5rem}.footer-logo{width:155px}}
@media(max-width:480px){.site-header{width:calc(100% - 2*var(--pad))}.hero h1{font-size:clamp(3.9rem,18vw,5.1rem)}.hero-copy .button{margin-right:0;margin-bottom:.4rem}.hero-copy .text-link{margin-top:1rem}.about{padding-top:6rem}.food-card figcaption{font-size:1.35rem}}
@media(max-width:900px){.hero-wave,.hero-stars{display:none}}
/* Desktop hero composition: keep copy centered while photos float at the edges. */
@media(min-width:901px){.hero{display:block;padding-top:65px;min-height:760px}.hero-copy{width:min(740px,calc(100% - 2rem));margin-inline:auto;position:relative;z-index:3}.hero h1{font-size:112px}.hero-marker{position:absolute;right:5%;top:10%;width:300px;height:300px;fill:none;stroke:var(--yellow);stroke-width:28;stroke-linecap:round;stroke-linejoin:round;z-index:0;pointer-events:none}.hero-wave{position:absolute;left:4%;top:26%;width:180px;height:120px;fill:none;stroke:var(--green);stroke-width:8;stroke-linecap:round;z-index:0;pointer-events:none}.hero-stars{position:absolute;right:25%;bottom:12%;z-index:0;pointer-events:none}.hero::before,.hero::after{content:none}.hero h1 em{white-space:nowrap}}
@media(min-width:901px) and (max-width:1200px){.hero h1{font-size:clamp(5rem,10vw,7rem)}.hero-copy{width:min(650px,calc(100% - 2rem))}.hero-photo{width:300px;height:360px}.hero-marker{right:1%;width:220px}.hero-wave{left:1%;width:130px}.nutrition{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:2rem}}
@media(min-width:901px){.nutrition{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
/* Hand drawn accents */
.hero::before{content:"";position:absolute;inset:10% auto auto 41%;width:92px;height:24px;border-top:7px solid var(--yellow);border-radius:50%;transform:rotate(-8deg);opacity:.9;pointer-events:none}.hero::after{content:"";position:absolute;right:5%;top:18%;width:150px;height:70px;border-bottom:5px solid var(--green);border-radius:50%;transform:rotate(12deg);opacity:.7;pointer-events:none}.hero-copy{z-index:2}.hero-copy .button{margin-right:.6rem}.cost-note{margin-top:1.25rem;font-size:.9rem}.section-kicker{color:var(--ink)}.nav-links a:hover,.text-link:hover{color:#8f351c}.button:hover{background:#9e3b1a}
img{height:auto;width:auto;max-width:100%;object-fit:initial}.hero-photo img,.about-images>div img,.team-image img,.gallery-item img{width:100%;height:100%;object-fit:cover}.lightbox img,.dialog-content img{width:auto;height:auto;max-width:100%;max-height:68vh;object-fit:contain}.section-doodle{position:absolute;fill:none;stroke:var(--blue);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;animation:drift 7s ease-in-out infinite}.doodle-about{right:3%;top:8%;width:180px}.doodle-concept{right:4%;bottom:6%;width:170px;stroke:var(--green)}.doodle-gallery{left:1%;top:1rem;width:170px;stroke:var(--orange)}.doodle-contact{right:3%;top:5%;width:190px;stroke:var(--blue)}.contact{position:relative;text-align:center}.contact-intro{max-width:700px;margin-inline:auto}.contact-intro h2{font-size:clamp(4.4rem,9vw,8rem);margin-inline:auto}.contact-details{align-items:center}.contact-socials{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;width:100%;margin-block:1.2rem}.contact-social{display:flex;align-items:center;gap:.7rem;text-align:left;background:rgba(255,253,248,.55);border:2px solid rgba(37,40,36,.12);border-radius:100px;padding:.65rem 1rem .65rem .65rem;min-width:190px;transition:transform .2s ease,background .2s ease}.contact-social strong,.contact-social small{display:block}.contact-social small{font-size:.7rem;white-space:nowrap}.contact-social-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--orange);color:#fff}.contact-social-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-social-phone .contact-social-icon{background:var(--green)}.contact-social-instagram .contact-social-icon{background:var(--blue)}.contact-address{margin:.4rem auto}.contact-social::after{content:"";position:absolute;inset:-7px;border:1px solid var(--orange);border-radius:inherit;opacity:.35;transform:rotate(-3deg)}
@media (hover:hover) and (pointer:fine){.contact-social:hover{transform:translateY(-3px);background:var(--paper)}.gallery-item:hover img{transform:scale(1.03)}}
@media (min-width:901px) and (max-width:1200px){.hero{min-height:700px;padding-inline:2rem}.hero-copy{width:min(520px,calc(100% - 2rem))}.hero h1{font-size:clamp(4.8rem,9vw,6.5rem)}.hero-photo{width:210px;height:300px}.hero-photo-left{left:-20px}.hero-photo-right{right:-20px}}
@media (max-width:900px){.hero-photo{aspect-ratio:2.35/1;height:auto;min-height:0}.hero-photo img{aspect-ratio:2.35/1;height:100%}.hero-photo-right{margin-top:-2.5rem}.about-images>div,.about-images .about-small{height:auto;aspect-ratio:4/3}.team-image{height:auto;aspect-ratio:4/3}.gallery-grid{grid-auto-rows:auto}.gallery-item{height:auto;aspect-ratio:4/3;min-height:0}.gallery-item-0,.gallery-item-3{aspect-ratio:3/2}.contact-socials{flex-direction:column;align-items:center}.contact-social{width:min(100%,320px)}.section-doodle{width:120px;opacity:.55}}
@media (max-width:480px){.hero-photo{width:82%;aspect-ratio:1.65/1}.hero-photo img{aspect-ratio:1.65/1}.gallery-item,.gallery-item-0,.gallery-item-3{aspect-ratio:1.35/1}}
.legal-body h2{font-family:DMSans,Arial,sans-serif;font-size:1.5rem;line-height:1.2;letter-spacing:0;margin-top:2.5rem}
.contact{display:block;background:var(--paper);box-shadow:none;padding:6rem 2rem;overflow:clip}.contact-intro{max-width:900px}.contact-intro h2{max-width:none}.contact-details{margin-top:2rem}.contact-socials{flex-direction:row;gap:2rem}.contact-social{position:relative;display:flex;flex-direction:column;min-width:0;width:170px;background:none;border:0;padding:0;text-align:center}.contact-social::after{display:none}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{width:88px;height:88px;margin-inline:auto;background:var(--orange)}.contact-social-icon svg{width:36px;height:36px}.contact-social strong,.contact-social small{display:block}.contact-social small{white-space:normal;overflow-wrap:anywhere}.contact-ring,.contact-star,.contact-arc{position:absolute;pointer-events:none}.contact-ring{left:4%;top:14%;width:150px;stroke:#e8a022;fill:none;stroke-width:5;animation:spin-slow 22s linear infinite}.contact-star{right:7%;bottom:18%;width:90px;fill:var(--green);animation:rock 8s ease-in-out infinite}.contact-arc{left:10%;bottom:8%;width:140px;fill:none;stroke:var(--blue);stroke-width:5;animation:drift 7s ease-in-out infinite}@media (min-width:901px){.team.section-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.team-image{height:auto;aspect-ratio:4/3}.gallery-grid{grid-auto-rows:clamp(190px,20vw,260px)}}@media (max-width:900px){.hero-photo{aspect-ratio:1.8/1}.hero-photo img{aspect-ratio:1.8/1}.team-image{aspect-ratio:4/3}.contact-socials{gap:1rem}.contact-social{width:calc((100% - 2rem)/3)}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{width:64px;height:64px}.contact-social-icon svg{width:28px;height:28px}.contact-social small{font-size:.68rem}.contact-ring{width:100px}.contact-star{width:62px}.contact-arc{width:100px}}
.contact-intro p{max-width:48ch;text-align:center;margin-inline:auto}.doodle-contact{display:none}.contact-ring{top:0;left:3%;width:100px}@media (max-width:900px){.contact-ring{width:70px}}

/* Supplied standalone logo and compact contact form */
.brand-logo{display:block;width:100%;height:auto;object-fit:contain}.header-logo{width:156px;height:auto;aspect-ratio:3/2;background:transparent;mix-blend-mode:normal}.footer-logo{width:210px;height:auto;aspect-ratio:3/2;background:transparent;mix-blend-mode:normal}
.contact-socials{align-items:stretch;gap:1rem}.contact-social{width:min(100%,290px);min-height:78px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.8rem;padding:.7rem 1rem;background:var(--orange);color:#fff;border-radius:999px;text-align:left;box-shadow:0 10px 24px rgba(198,76,36,.16);transition:transform 200ms var(--ease-out),background 200ms ease,box-shadow 200ms ease}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{flex:0 0 54px;width:54px;height:54px;margin:0;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.38)}.contact-social-icon svg{width:25px;height:25px}.contact-social-copy{min-width:0}.contact-social strong{font-size:.94rem;line-height:1.15}.contact-social small{margin-top:.18rem;font-size:.72rem;line-height:1.25;color:rgba(255,255,255,.9);overflow-wrap:anywhere}.contact-social:hover{background:var(--bright)}
.cookie-banner{position:fixed;z-index:100;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);width:min(700px,calc(100% - 2rem));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem 2rem;padding:1.35rem 1.5rem;background:var(--paper,#fffdf7);border:1px solid rgba(37,40,36,.16);border-radius:22px;box-shadow:0 18px 55px rgba(37,40,36,.2)}.cookie-banner[hidden]{display:none}.cookie-banner h2{margin:.15rem 0 .35rem;font-size:clamp(1.35rem,2vw,1.8rem)}.cookie-banner p{margin:0;max-width:56ch;font-size:.86rem;line-height:1.5}.cookie-banner .cookie-kicker{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--orange,#c64c24)}.cookie-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.cookie-actions .text-link{font-size:.78rem;white-space:nowrap}.cookie-actions .button{min-height:42px;white-space:nowrap}@media (max-width:700px){.cookie-banner{grid-template-columns:1fr;gap:.9rem;padding:1.1rem 1.15rem}.cookie-actions{justify-content:flex-start}.cookie-actions .button{flex:1 1 auto}.cookie-actions .text-link{flex-basis:100%}}
.contact-form{position:relative;z-index:1;width:min(760px,100%);margin:5rem auto 0;padding:clamp(1.4rem,4vw,3rem);display:grid;grid-template-columns:1fr 1fr;gap:1.15rem 1.25rem;text-align:left;background:#fff4dc;border:1px solid rgba(198,76,36,.16);border-radius:32px;box-shadow:0 24px 60px rgba(37,40,36,.08)}.contact-form-heading,.contact-form-message,.contact-form-consent,.contact-form-submit,.contact-form-status{grid-column:1/-1}.contact-form-heading{text-align:center;margin-bottom:.5rem}.contact-form-heading h3{font-size:clamp(2.7rem,5vw,4rem);margin-bottom:.5rem}.contact-form-heading p{max-width:56ch;margin:0 auto}.contact-form label:not(.contact-form-consent){display:grid;gap:.45rem;font-size:.85rem;font-weight:800}.contact-form label>span{font-weight:500;color:#686b66}.contact-form input,.contact-form textarea{width:100%;min-height:50px;padding:.8rem 1rem;border:1px solid #cfc9bd;border-radius:14px;background:var(--paper);color:var(--ink);font:inherit;transition:border-color 160ms ease,box-shadow 160ms ease}.contact-form textarea{resize:vertical;min-height:145px}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(198,76,36,.14)}.contact-form-consent{display:flex;align-items:flex-start;gap:.75rem;font-size:.77rem;line-height:1.45}.contact-form-consent input{flex:0 0 auto;width:20px;height:20px;min-height:0;margin-top:.1rem;accent-color:var(--orange)}.contact-form-consent a{text-decoration:underline;text-underline-offset:2px}.contact-form-submit{justify-self:center;border:0;cursor:pointer;font:inherit}.contact-form-status{min-height:1.4em;margin:0;text-align:center;font-size:.8rem;color:var(--green)}
@media (hover:hover) and (pointer:fine){.contact-social:hover{transform:translateY(-3px);background:var(--bright);box-shadow:0 14px 30px rgba(198,76,36,.22)}}
@media (max-width:900px){.header-logo{width:136px}.footer-logo{width:180px}.contact-socials{display:grid;grid-template-columns:1fr;justify-items:center}.contact-social{width:min(100%,340px)}.contact-form{margin-top:3.5rem}}
@media (max-width:600px){.contact-form{grid-template-columns:1fr;border-radius:24px}.contact-form-heading,.contact-form-message,.contact-form-consent,.contact-form-submit,.contact-form-status{grid-column:1}.contact-form-submit{width:100%;justify-content:center}.contact-social{min-height:72px}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{width:50px;height:50px;flex-basis:50px}}

/* Icon-only direct contact actions */
.contact-socials{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1.25rem}.contact-social{width:88px;min-width:88px;height:88px;min-height:88px;padding:0;display:grid;place-items:center;border-radius:50%;background:var(--orange);box-shadow:0 10px 24px rgba(198,76,36,.18)}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{width:100%;height:100%;margin:0;border:0;background:transparent}.contact-social-icon svg{width:34px;height:34px}.contact-social:hover{background:var(--bright)}
@media (max-width:600px){.contact-socials{display:flex;flex-direction:row;gap:1rem}.contact-social{width:64px;min-width:64px;height:64px;min-height:64px}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{width:100%;height:100%;flex-basis:auto}.contact-social-icon svg{width:28px;height:28px}}

/* Optical alignment for the three contact glyphs */
.contact-social,.contact-social-icon{align-items:center;justify-items:center}.contact-social-icon{display:grid;place-items:center;line-height:0}.contact-social-icon svg{display:block;width:32px;height:32px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.contact-social-icon .icon-dot{fill:currentColor;stroke:none}
@media (max-width:600px){.contact-social-icon svg{width:26px;height:26px}}

.contact-social{position:relative}.contact-social-icon,.contact-social-phone .contact-social-icon,.contact-social-instagram .contact-social-icon{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.contact-social-icon svg{flex:0 0 auto}

/* The full gallery is grouped by motif; the home gallery keeps its original composition. */
.gallery-category-nav{display:flex;flex-wrap:wrap;gap:.7rem;padding-top:2rem}.gallery-category-nav a{display:inline-flex;align-items:center;min-height:44px;padding:.65rem 1rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:.82rem;font-weight:800;transition:color 180ms ease,background 180ms ease,border-color 180ms ease,transform 180ms ease}.gallery-category{padding-top:4rem;scroll-margin-top:110px}.gallery-category+.gallery-category{margin-top:4rem;border-top:1px solid var(--line)}.gallery-category-heading{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(280px,1fr);gap:2rem;align-items:end;margin-bottom:1.8rem}.gallery-category-heading h2{margin:0;font-size:clamp(3rem,6vw,5.5rem)}.gallery-category-heading p{max-width:52ch;margin:0 0 .45rem}.gallery-categories .gallery-page{grid-auto-rows:clamp(190px,20vw,260px)}.gallery-categories .gallery-page .gallery-item:nth-child(6n+1){grid-row:span 2}.gallery-categories .gallery-page .gallery-item:nth-child(6n+4){grid-column:span 2}
@media (hover:hover) and (pointer:fine){.gallery-category-nav a:hover{color:var(--paper);background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}}
@media (max-width:900px){.gallery-category-nav{padding-top:1.4rem}.gallery-category{padding-top:3rem}.gallery-category+.gallery-category{margin-top:3rem}.gallery-category-heading{display:block}.gallery-category-heading p{margin-top:.8rem}.gallery-categories .gallery-page{grid-auto-rows:auto}.gallery-categories .gallery-page .gallery-item,.gallery-categories .gallery-page .gallery-item:nth-child(6n+1),.gallery-categories .gallery-page .gallery-item:nth-child(6n+4){grid-column:auto;grid-row:auto;aspect-ratio:4/3}.gallery-categories .gallery-page .gallery-item:nth-child(5n+1){grid-column:span 2;aspect-ratio:3/2}}
@media (max-width:480px){.gallery-category-nav{display:grid;grid-template-columns:1fr 1fr}.gallery-category-nav a{justify-content:center;text-align:center}.gallery-categories .gallery-page{grid-template-columns:1fr}.gallery-categories .gallery-page .gallery-item,.gallery-categories .gallery-page .gallery-item:nth-child(5n+1){grid-column:auto;aspect-ratio:1.35/1}}

/* Vacancy and news */
.home-editorial{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.35fr);gap:clamp(2rem,6vw,6rem);padding-block:clamp(3.5rem,7vw,7rem);border-top:1px solid var(--line)}.home-editorial h2{font-size:clamp(3.6rem,7vw,7.5rem);line-height:.86;margin:.7rem 0 0;max-width:6ch}.home-editorial-copy{max-width:64ch}.home-editorial-copy p{margin:0 0 1.15rem}.home-editorial-lede{font-size:clamp(1.25rem,2.2vw,1.7rem);font-weight:750;line-height:1.35}.vacancy-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:3.5rem;border-block:1px solid var(--line)}.vacancy-card h2{font-size:clamp(3rem,5vw,5.5rem);margin:.7rem 0 1rem}.vacancy-intro{max-width:58ch;margin:0 0 1.3rem;color:color-mix(in srgb,var(--ink) 72%,transparent)}.vacancy-status{margin:0;font-weight:800}.status-label{display:inline-block;padding:.35rem .7rem;border:2px solid currentColor;border-radius:999px}.status-freie_plätze{color:var(--green)}.status-ab_datum{color:var(--orange)}.status-warteliste{color:var(--blue)}.status-belegt{color:var(--ink)}.vacancy-note{max-width:50ch;margin:.8rem 0 0}.vacancy-actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;justify-content:flex-end}.news-list{display:grid;gap:2rem}.news-card{display:grid;grid-template-columns:1fr minmax(220px,34%);gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line)}.news-card-content{min-width:0}.news-card h2{font-size:clamp(2.8rem,5vw,5rem);margin:.4rem 0 1rem}.news-date{margin:0;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:var(--orange)}.news-summary{font-size:1.1rem;max-width:58ch}.news-body{max-width:70ch}.news-image{width:100%;height:auto;aspect-ratio:4/3;border-radius:28px}.empty-state{padding:3rem 0;font-size:1.1rem}
@media (max-width:700px){.home-editorial{grid-template-columns:1fr;gap:1.5rem;padding-block:3rem}.home-editorial h2{font-size:clamp(3.8rem,18vw,6rem);max-width:none}.vacancy-card{display:block;padding-block:2.8rem}.vacancy-actions{justify-content:flex-start;margin-top:1.5rem}.news-card{display:block;padding-block:1.5rem}.news-image{margin-top:1.5rem}.news-card h2{font-size:clamp(2.8rem,14vw,4.5rem)}}
@media (prefers-reduced-motion: reduce){.vacancy-card *,.news-card *{transition-duration:0.01ms!important;animation-duration:0.01ms!important}}
