:root{--wine:#89101f;--ink:#251f20;--muted:#746c6e;--line:#e7dfdf;--cream:#faf7f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif}.public-layout-header{display:flex;align-items:center;justify-content:space-between;min-height:76px;padding:12px max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);background:#fff}.public-layout-header>a{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.public-layout-header img{width:45px;height:45px;border-radius:50%}.public-layout-header a span{display:grid}.public-layout-header strong{font-size:15px}.public-layout-header small{font-size:10px;letter-spacing:.08em;color:var(--muted)}.public-layout-header>span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wine)}main{width:min(1180px,calc(100% - 36px));margin:auto}.layout-intro{padding:64px 0 35px}.eyebrow{margin:0 0 8px;color:var(--wine);font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.layout-intro h1{max-width:800px;margin:0;font-family:Georgia,serif;font-size:clamp(40px,7vw,76px);font-weight:500;line-height:1.02;letter-spacing:-.045em}.layout-intro h1 em{color:var(--wine);font-weight:400}.layout-intro>p:not(.eyebrow){max-width:680px;margin:22px 0;color:var(--muted);font-size:18px;line-height:1.65}.event-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border:1px solid var(--line);border-radius:15px;background:var(--cream);overflow:hidden}.event-facts span{display:grid;gap:5px;padding:18px 22px}.event-facts span+span{border-left:1px solid var(--line)}.event-facts small{font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#998e90}.event-facts strong{font-size:15px}.layout-success,.layout-error{display:grid;gap:4px;margin:0 0 22px;padding:16px 20px;border-radius:12px}.layout-success{background:#edf8f1;color:#21683d}.layout-error{background:#fff0f0;color:#941b29}.layout-error ul{margin:5px 0 0}.layout-filters{display:grid;gap:12px;padding:18px 0 25px;border-top:1px solid var(--line)}.layout-filters>div{display:flex;align-items:center;gap:8px;overflow-x:auto}.layout-filters small{min-width:75px;font-size:11px;font-weight:900;text-transform:uppercase;color:#8b8082}.layout-filters button,.layout-format-indicator{flex:none;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#564e50;font-weight:700}.layout-filters button{cursor:pointer}.layout-filters button.active{border-color:var(--wine);background:var(--wine);color:#fff}.layout-format-indicator{border-color:#d9c4c7;background:#faf1f2;color:var(--wine)}.layout-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,320px));justify-content:center;gap:20px;padding-bottom:60px}.customer-layout-card{position:relative;display:block;width:100%;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;cursor:pointer;transition:.18s ease}.customer-layout-card:hover{transform:translateY(-3px);border-color:#c9b8ba;box-shadow:0 15px 36px rgba(65,29,34,.12)}.customer-layout-card input{position:absolute;opacity:0;pointer-events:none}.customer-layout-preview{position:relative;display:grid;place-items:center;aspect-ratio:3/2;padding:18px;background:#f2eeee;color:#998f90;overflow:hidden}.customer-layout-card[data-format="Hochformat"] .customer-layout-preview{aspect-ratio:2/3}.customer-layout-card[data-format="Querformat"] .customer-layout-preview{aspect-ratio:3/2}.customer-layout-preview img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.customer-layout-preview i{position:absolute;right:11px;top:11px;display:none;padding:7px 10px;border-radius:999px;background:var(--wine);color:#fff;font-size:11px;font-style:normal;font-weight:900}.customer-layout-card input:checked~.customer-layout-preview i{display:block}.customer-layout-card:has(input:checked){outline:3px solid var(--wine);outline-offset:2px}.customer-layout-copy{display:grid;gap:5px;padding:15px 17px}.customer-layout-copy small{color:var(--wine);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.customer-layout-copy strong{font-family:Georgia,serif;font-size:22px}.customer-layout-copy em{color:var(--muted);font-size:13px;font-style:normal}.layout-wishes{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;margin-bottom:22px;padding:48px;border-radius:20px;background:var(--cream)}.layout-wishes h2{margin:6px 0 10px;font-family:Georgia,serif;font-size:36px}.layout-wishes>div>p:last-child{color:var(--muted);line-height:1.55}.layout-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.layout-fields label{display:grid;gap:7px;font-size:12px;font-weight:800}.layout-fields .wide{grid-column:1/-1}.layout-fields input,.layout-fields textarea{width:100%;padding:13px 14px;border:1px solid #d8cecf;border-radius:9px;background:#fff;font:inherit}.layout-fields textarea{min-height:110px;resize:vertical}.layout-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:70px;padding:18px 22px;border:1px solid var(--line);border-radius:14px}.layout-submit span{color:var(--muted);font-size:13px}.layout-submit button{padding:14px 20px;border:0;border-radius:9px;background:var(--wine);color:#fff;font:inherit;font-weight:900;cursor:pointer}.layout-empty{grid-column:1/-1;padding:60px;border:1px dashed #d9cfd0;border-radius:16px;text-align:center}.layout-empty strong{font-size:20px}.layout-empty p{color:var(--muted)}footer{padding:28px;text-align:center;border-top:1px solid var(--line);color:#857c7d;font-size:12px}footer a{color:inherit}
@media(max-width:850px){.layout-gallery{grid-template-columns:repeat(2,minmax(0,320px))}.layout-wishes{grid-template-columns:1fr;gap:20px;padding:30px}.event-facts{grid-template-columns:1fr}.event-facts span+span{border-left:0;border-top:1px solid var(--line)}}@media(max-width:560px){main{width:min(100% - 24px,1180px)}.public-layout-header{padding:10px 15px}.layout-intro{padding-top:40px}.layout-gallery{grid-template-columns:minmax(0,320px)}.customer-layout-preview{padding:12px}.layout-fields{grid-template-columns:1fr}.layout-fields .wide{grid-column:auto}.layout-submit{align-items:stretch;flex-direction:column}.layout-submit button{width:100%}.layout-filters small{min-width:65px}}
