#patisserie{--pp-ink:var(--ink);--pp-cream:var(--cream);--pp-accent:var(--copper);background:var(--pp-cream);color:var(--pp-ink);font-size:16px;line-height:1.7}#patisserie *{box-sizing:border-box;min-width:0}#patisserie [hidden]{display:none!important}#patisserie h1,#patisserie h2,#patisserie h3{font-family:var(--serif);font-weight:600;line-height:1.1;hyphens:none;word-break:normal}#patisserie h1{font-size:clamp(42px,6.2vw,82px);margin:20px 0 25px}#patisserie h2{font-size:clamp(29px,3.5vw,46px);margin:0 0 24px}#patisserie h3{font-size:29px;margin:16px 0}.pp-shell{width:min(1160px,calc(100% - 64px));margin:auto}.pp-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:45px;align-items:center;padding:60px 0}.pp-kicker{color:var(--copper);text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700}.pp-hero-copy>p:not(.pp-kicker){font-size:19px;max-width:590px}.pp-hero figure{margin:0;width:100%;max-width:340px;justify-self:end}.pp-photo-button{display:block;padding:0!important;border:0!important;background:transparent!important;cursor:zoom-in;width:100%}.pp-hero img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;background:var(--cream)}.pp-photo-button:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.pp-hero figcaption{font-size:13px;color:var(--muted);margin-top:10px}#patisserie .pp-button,#patisserie button[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;min-height:50px;background:var(--pp-ink);color:white;border:1px solid var(--pp-ink);border-radius:4px;font:600 16px/1.35 var(--sans);text-decoration:none;cursor:pointer;white-space:normal}.pp-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:28px}.pp-links>a:not(.pp-button){color:var(--pp-ink);text-decoration:underline}.pp-selection{padding:55px 0;border-top:1px solid #d4cabb}.pp-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:26px}.pp-options article{border-top:2px solid var(--pp-accent);padding:24px 0;display:flex;flex-direction:column;align-items:flex-start}.pp-options p{flex:1}.pp-options small{color:var(--copper)}.pp-options button{background:transparent;color:var(--pp-ink);border:1px solid #b9afa3;border-radius:4px;font:600 15px/1.4 var(--sans);min-height:48px;padding:12px 16px;cursor:pointer}.pp-options button[aria-pressed=true]{background:var(--pp-ink);color:#fff}.pp-story{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center;padding:30px 0 65px}.pp-story img{display:block;width:100%;height:510px;object-fit:contain;background:#e9e1d6}.pp-story p{max-width:600px}.pp-inquiry{padding:65px 0;background:#e9e1d6;scroll-margin-top:105px}.pp-inquiry-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}.pp-inquiry-copy p{max-width:370px}.pp-summary{background:#faf7f1;padding:24px;border-left:3px solid var(--copper);overflow-wrap:anywhere}.pp-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pp-fields label{display:grid;align-content:start;gap:8px;font-size:14px;font-weight:600}.pp-fields input,.pp-fields select,.pp-fields textarea{width:100%;padding:13px 12px;background:white;border:1px solid #b9afa3;border-radius:4px;color:var(--ink);font:400 16px/1.4 var(--sans)}.pp-fields textarea{resize:vertical}.pp-wide{grid-column:1/-1}.pp-help{font-size:13px;font-weight:400;line-height:1.6;color:var(--muted)}.pp-check{display:flex;gap:12px;align-items:flex-start;margin:25px 0;font-size:14px;line-height:1.6}.pp-check input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--ink);margin-top:3px}#pp-result:not(:empty){background:white;padding:20px;border-left:3px solid var(--copper);overflow-wrap:anywhere}#patisserie button:disabled{opacity:.6;cursor:wait}.pp-faq{padding:60px 0}.pp-faq details{border-top:1px solid #c9c2b3;padding:18px 0}.pp-faq summary{cursor:pointer;font-size:18px;font-weight:600}.pp-faq details p{max-width:850px}#pp-photo-dialog{max-width:min(90vw,700px);max-height:90vh;padding:16px;border:0;background:#faf7f1}#pp-photo-dialog::backdrop{background:#30322fd9}#pp-photo-dialog img{display:block;max-height:72vh;width:100%;object-fit:contain}#pp-photo-dialog button{display:block;margin-left:auto;margin-bottom:12px;min-height:44px;background:var(--ink);color:white;border:0;padding:12px 16px;font:inherit}#patisserie :focus-visible{outline:3px solid var(--copper);outline-offset:3px}@media(max-width:850px){.pp-hero{gap:30px;grid-template-columns:1fr 1fr}.pp-hero img{height:auto}.pp-story{gap:35px}.pp-inquiry-layout{grid-template-columns:1fr;gap:20px}.pp-inquiry-copy p{max-width:none}.pp-summary{margin-bottom:20px}.pp-options{gap:18px}}@media(max-width:600px){.pp-shell{width:calc(100% - 36px)}.pp-hero{grid-template-columns:1fr;padding:35px 0;gap:25px}.pp-hero h1{font-size:45px}.pp-hero-copy>p:not(.pp-kicker){font-size:17px}.pp-hero figure{justify-self:center}.pp-hero img{height:auto;max-height:550px}.pp-options{grid-template-columns:1fr;gap:8px}.pp-options article{padding:20px 0}.pp-story{grid-template-columns:1fr;gap:25px;padding-bottom:40px}.pp-story img{height:auto;max-height:520px}.pp-inquiry{padding:35px 0}.pp-fields{grid-template-columns:1fr}.pp-selection{padding:30px 0}.pp-faq{padding:40px 0}}
/* Wunschbilder bleiben Bestandteil der einzelnen Anfrage. */
#patisserie .pp-photo-upload{padding:20px;border:1px solid #d6c9b6;border-radius:8px;background:#fffdf8;min-width:0}
#patisserie .pp-photo-upload>label{font-weight:600;display:block}
#patisserie .pp-photo-upload p{margin:8px 0 12px;line-height:1.6}
#patisserie .pp-photo-upload input{max-width:100%;min-width:0;font-size:14px}
#patisserie .pp-photo-upload input::file-selector-button{max-width:100%;margin:0 10px 8px 0;padding:10px 12px;border:1px solid #c3b193;border-radius:4px;background:#e6dac5;color:#30322f;font:inherit;cursor:pointer}
#patisserie .pp-photo-upload small{display:block;line-height:1.5;margin-top:8px}
#patisserie #pp-photo-preview{display:block;width:100%;max-width:320px;height:240px;object-fit:contain;margin:16px 0;background:#f3efe7;border-radius:4px}
#patisserie #pp-photo-remove{min-height:44px;padding:10px 14px;background:transparent;border:1px solid #30322f;color:#30322f;font:inherit;border-radius:4px;cursor:pointer}
#patisserie #pp-photo-preview[hidden],#patisserie #pp-photo-remove[hidden]{display:none}
#patisserie .pp-fields label small{font-weight:400;line-height:1.5}
@media(max-width:480px){#patisserie .pp-photo-upload{padding:14px}#patisserie #pp-photo-preview{height:200px}}
