/* Brautstyling: original portraits, price graphics and copy in Sabine's rose identity. */
.bridal-jump-nav{display:flex;align-items:center;gap:11px;overflow-x:auto;padding:19px clamp(24px,6vw,90px);background:#fff9f6;border-bottom:1px solid #ead7d0;scrollbar-width:none}
.bridal-jump-nav::-webkit-scrollbar{display:none}
.bridal-jump-nav>span{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#936f68;margin-right:12px;white-space:nowrap}
.bridal-jump-nav a{display:inline-flex;align-items:center;gap:10px;flex:none;padding:10px 16px;border:1px solid #e3cbc2;border-radius:999px;background:#f7eeea;color:#624b45;text-decoration:none;font-size:12px;font-weight:600;white-space:nowrap;transition:background .22s ease,transform .22s ease,box-shadow .22s ease}
.bridal-jump-nav a:hover,.bridal-jump-nav a:focus-visible{background:#eccfc6;transform:translateY(-2px);box-shadow:0 7px 15px rgba(95,62,54,.1)}
#brautpakete,#brautbilder,#gaestestyling-preise,#braut-faq{scroll-margin-top:100px}
.bridal-intro,.bridal-guest,.bridal-closing{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(43px,7vw,110px);align-items:center}
.bridal-intro{background:#fffdfa;padding-bottom:clamp(45px,5vw,75px)}
.bridal-intro h2,.bridal-guest h2,.bridal-closing h2{font-size:clamp(37px,4vw,58px);max-width:650px}
.bridal-intro-copy p:not(.eyebrow),.bridal-guest p:not(.eyebrow),.bridal-closing p:not(.eyebrow){font-size:clamp(16px,1.3vw,18px);line-height:1.78;color:#675852;margin-bottom:22px}
.bridal-intro-copy .bridal-intro-promise{font:clamp(21px,2vw,29px)/1.46 'DM Serif Display',Georgia,serif!important;color:#a06e68!important;margin:25px 0!important}
.bridal-photo-pair{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(12px,1.8vw,24px);align-items:center;min-width:0}
.bridal-photo-pair figure{min-width:0;margin:0;filter:drop-shadow(0 25px 26px rgba(72,44,39,.20));transition:transform .35s ease,filter .35s ease}
.bridal-photo-pair figure:first-child{transform:rotate(-3deg)}
.bridal-photo-pair figure:last-child{transform:translateY(53px) rotate(3deg)}
.bridal-photo-pair figure:hover{transform:translateY(-5px) rotate(0);filter:drop-shadow(0 32px 30px rgba(72,44,39,.27))}
.bridal-photo-pair img{display:block;width:100%;height:auto;object-fit:contain;border-radius:22% 12% 18% 11% / 11% 19% 13% 20%}
.bridal-photo-pair figure:last-child img{border-radius:12% 23% 11% 18% / 19% 11% 21% 13%}
.bridal-reasons{background:#f4e9e5;padding-top:clamp(48px,6vw,85px)}
.bridal-reasons h2{font-size:clamp(36px,3.9vw,57px);max-width:700px;margin-bottom:35px}
.bridal-reasons-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.bridal-reasons article{background:#fffdfa;border:1px solid #ead8d1;border-radius:22px;padding:clamp(24px,2.6vw,38px);box-shadow:0 14px 31px rgba(82,54,48,.065)}
.bridal-reason-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.bridal-reason-icon{width:58px;height:58px;border-radius:50%;background:linear-gradient(145deg,#f4d9d2,#eec9c1);color:#966a63;display:grid;place-items:center;flex:none;box-shadow:inset 0 2px 5px rgba(255,255,255,.7),0 6px 12px rgba(104,70,62,.09)}
.bridal-reason-icon svg{width:30px;height:30px}
.bridal-reason-number{font:20px 'DM Serif Display',Georgia,serif;color:#b78c83}
.bridal-reasons h3{font-size:clamp(25px,2.4vw,32px);line-height:1.16;margin:18px 0 14px}
.bridal-reasons article p{font-size:15px;line-height:1.65;color:#675852;margin:0}
.bridal-timeline{background:#fffdfa}
.bridal-timeline h2{font-size:clamp(36px,3.9vw,58px);margin-bottom:46px}
.bridal-timeline ol{list-style:none;margin:0 auto;padding:0;max-width:1020px;position:relative}
.bridal-timeline ol:before{content:'';position:absolute;left:28px;top:25px;bottom:35px;width:1px;background:#d1afa6}
.bridal-timeline li{display:grid;grid-template-columns:58px minmax(0,1fr);gap:26px;position:relative;padding-bottom:25px}
.bridal-timeline li:last-child{padding-bottom:0}
.bridal-step-number{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e9d0c8;color:#76544d;font:26px 'DM Serif Display',Georgia,serif;box-shadow:0 9px 19px rgba(82,54,48,.12);z-index:1}
.bridal-timeline li>div{background:#fbf5f2;border:1px solid #eadbd4;border-radius:18px;padding:21px 27px}
.bridal-timeline h3{font-size:clamp(25px,2.5vw,35px);margin:0 0 7px}
.bridal-timeline p{font-size:16px;line-height:1.65;color:#675852;margin:0}
.bridal-testimonials{background:#f2e4de}
.bridal-testimonials h2{font-size:clamp(36px,3.9vw,58px)}
.bridal-testimonials>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.bridal-testimonials figure{position:relative;background:#fffdfa;border:1px solid #e6d2ca;border-radius:22px;padding:clamp(28px,3vw,42px);box-shadow:0 15px 32px rgba(82,54,48,.065)}
.bridal-testimonials figure:first-child{grid-row:span 2}
.bridal-testimonials figure:before{content:'“';position:absolute;top:8px;right:30px;font:80px Georgia,serif;line-height:1;color:#e8d0c8}
.bridal-testimonials blockquote{position:relative;font:clamp(17px,1.45vw,20px)/1.64 'DM Serif Display',Georgia,serif;color:#4c3d38}
.bridal-testimonials figcaption{border-top:1px solid #e2d0c9;padding-top:16px;color:#996d66}
.bridal-prices{background:#fffdfa}
.bridal-prices[data-source-section="8"]{background:#f4e9e5}
.bridal-prices h2{font-size:clamp(37px,4vw,58px)}
.bridal-prices .source-price-grid{gap:18px}
.bridal-prices .source-price-grid article{min-width:0;border:1px solid #e8d4cc;border-radius:20px;min-height:345px;padding:29px 24px;box-shadow:0 16px 33px rgba(82,54,48,.08)}
.bridal-prices[data-source-section="5"] .source-price-grid article{padding:0 0 25px;overflow:hidden;border-top:0;transition:transform .28s ease,box-shadow .28s ease}
.bridal-prices[data-source-section="5"] .source-price-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 40px rgba(82,54,48,.13)}
.bridal-tier-image{margin:0 0 22px;overflow:hidden;background:#f3e6df;aspect-ratio:1.32}
.bridal-tier-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 57%;transition:transform .45s ease}
.bridal-prices[data-source-section="5"] .source-price-grid article:hover .bridal-tier-image img{transform:scale(1.045)}
.bridal-prices[data-source-section="5"] .source-price-grid h3,.bridal-prices[data-source-section="5"] .source-price-grid ul,.bridal-prices[data-source-section="5"] .source-price-grid strong{margin-left:24px;margin-right:24px}
.bridal-prices[data-source-section="5"] .source-price-grid h3{margin-bottom:14px}
.bridal-prices[data-source-section="5"] .source-price-grid strong{padding-top:16px;border-top:1px solid #e8d4cc}
.bridal-prices .source-price-grid article:nth-child(1){background:#fff8f4}
.bridal-prices .source-price-grid article:nth-child(2){background:#fbf3ef}
.bridal-prices .source-price-grid article:nth-child(3){background:#f9eee8}
.bridal-prices .source-price-grid article:nth-child(4){background:#f5e5df}
.bridal-prices .source-price-grid h3{font-size:clamp(26px,2.3vw,34px)}
.bridal-prices .source-price-grid li{font-size:14px;line-height:1.6}
.bridal-prices .source-price-grid strong{color:#a0716a}
.bridal-prices[data-source-section="8"] .source-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1030px}
.bridal-prices[data-source-section="8"] .source-price-grid article{min-height:330px;padding:0 0 25px;overflow:hidden;background:#fffdfa;border-top:0;transition:transform .28s ease,box-shadow .28s ease}
.bridal-prices[data-source-section="8"] .source-price-grid article:hover{transform:translateY(-4px);box-shadow:0 22px 38px rgba(82,54,48,.12)}
.bridal-guest-price-image{margin:0 0 24px;overflow:hidden;background:#f7eee9;aspect-ratio:1}
.bridal-guest-price-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.bridal-prices[data-source-section="8"] .source-price-grid article:hover img{transform:none}
.bridal-prices[data-source-section="8"] .source-price-grid h3,.bridal-prices[data-source-section="8"] .source-price-grid strong{margin-left:25px;margin-right:25px}
.bridal-prices[data-source-section="8"] .source-price-grid h3{max-width:240px;line-height:1.15}
.bridal-prices[data-source-section="8"] .source-price-grid strong{padding-top:13px;border-top:1px solid #e8d4cc}
.bridal-prices .source-price-included{border-radius:15px;background:#f4e5df}
.bridal-price-original{max-width:900px;margin-top:36px;border-top:1px solid #d6bcb4;padding-top:18px}
.bridal-price-original summary{cursor:pointer;width:max-content;max-width:100%;font-size:13px;font-weight:600;color:#80615a;text-decoration:underline;text-underline-offset:5px}
.bridal-price-original summary:focus-visible{outline:2px solid #9e7069;outline-offset:4px}
.bridal-price-original img{display:block;width:100%;height:auto;margin-top:23px;border-radius:15px;box-shadow:0 12px 28px rgba(82,54,48,.1)}
.bridal-gallery{background:#f4e9e5;padding-top:clamp(60px,7vw,100px);padding-bottom:clamp(60px,7vw,100px)}
.bridal-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,24px)}
.bridal-gallery figure{margin:0;min-width:0;filter:drop-shadow(0 20px 23px rgba(72,44,39,.16))}
.bridal-gallery figure:nth-child(even){transform:translateY(22px)}
.bridal-gallery img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:19% 12% 17% 11% / 12% 18% 11% 19%}
.bridal-gallery-trigger{display:block;position:relative;border-radius:19% 12% 17% 11% / 12% 18% 11% 19%;overflow:hidden;cursor:zoom-in}
.bridal-gallery-trigger img{transition:transform .35s ease,filter .35s ease}
.bridal-gallery-trigger:hover img,.bridal-gallery-trigger:focus-visible img{transform:scale(1.045);filter:brightness(.94)}
.bridal-gallery-trigger:focus-visible{outline:3px solid #a6746c;outline-offset:5px}
.bridal-lightbox{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:rgba(31,22,20,.76);backdrop-filter:blur(5px)}
.bridal-lightbox[hidden]{display:none!important}
.bridal-lightbox-panel{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr) 50px;align-items:center;gap:8px;width:min(94vw,1050px);max-height:92dvh;padding:45px 14px 14px;border:1px solid #e4cfc6;border-radius:23px;background:#fffaf7;box-shadow:0 30px 90px rgba(48,30,27,.24);color:#604942}
body.bridal-lightbox-open{overflow:hidden}
.bridal-lightbox img{grid-column:2;max-width:100%;max-height:calc(92dvh - 115px);width:auto;height:auto;margin:auto;object-fit:contain;border-radius:11px}
.bridal-lightbox button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #d9bdb5;border-radius:50%;background:#f4e4dd;color:#664d47;font-size:25px;cursor:pointer;transition:background .2s ease,transform .2s ease}
.bridal-lightbox button:hover,.bridal-lightbox button:focus-visible{background:#e8c9bf;transform:scale(1.06)}
.bridal-lightbox-close{position:absolute;right:14px;top:10px}
.bridal-lightbox-prev{grid-column:1;grid-row:1}
.bridal-lightbox-next{grid-column:3;grid-row:1}
.bridal-lightbox-count{grid-column:1/-1;justify-self:center;margin:0;text-align:center;font-size:12px;letter-spacing:.12em;color:#8c6c65}
.bridal-guest{background:#fffdfa}
.bridal-guest h2{margin-bottom:28px}
.bridal-faq{display:block;background:#fffdfa}
.bridal-faq>div:first-child{max-width:760px;margin-bottom:32px}
.bridal-faq h2{font-size:clamp(36px,3.9vw,58px)}
.bridal-faq .source-faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;align-items:start}
.bridal-faq .source-faq-list details{padding:19px 0;transition:background .2s ease,padding .2s ease}
.bridal-faq .source-faq-list details[open]{background:#fbf4f1;padding:19px 16px;border-radius:10px}
.bridal-faq .source-faq-list summary:focus-visible{outline:2px solid #9e7069;outline-offset:4px}
.bridal-faq .source-faq-list details:last-child{border-bottom:0}
.bridal-closing{background:#f0ded8}
.bridal-closing h3{font-size:clamp(24px,2.6vw,35px);font-weight:400;color:#9d7069;margin:18px 0}
.bridal-closing .button{margin-top:12px}
.bridal-closing figure{margin:0;justify-self:center;width:min(100%,530px);filter:drop-shadow(0 24px 27px rgba(72,44,39,.20))}
.bridal-closing img{display:block;width:100%;height:auto;border-radius:20% 11% 17% 12% / 12% 20% 11% 18%}
@media(max-width:950px){.bridal-intro,.bridal-guest,.bridal-closing{grid-template-columns:1fr;gap:34px}.bridal-photo-pair{max-width:700px}.bridal-reasons-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bridal-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bridal-faq .source-faq-list{grid-template-columns:1fr}}
@media(max-width:600px){.bridal-jump-nav{padding:14px 24px;gap:8px}.bridal-jump-nav>span{display:none}.bridal-jump-nav a{padding:10px 14px;font-size:12px}.bridal-lightbox-panel{width:96vw;padding:51px 8px 14px;grid-template-columns:42px minmax(0,1fr) 42px;gap:2px}.bridal-lightbox button{width:38px;height:38px;font-size:23px}.bridal-intro h2,.bridal-guest h2,.bridal-closing h2,.bridal-reasons h2,.bridal-timeline h2,.bridal-testimonials h2,.bridal-faq h2{font-size:clamp(34px,9vw,45px)}.bridal-intro{padding-bottom:43px}.bridal-reasons{padding-top:43px}.bridal-intro-copy .bridal-intro-promise{font-size:23px!important}.bridal-photo-pair{gap:11px}.bridal-photo-pair figure:last-child{transform:translateY(25px) rotate(3deg)}.bridal-reasons-grid{grid-template-columns:1fr}.bridal-timeline ol:before{left:22px}.bridal-timeline li{grid-template-columns:46px minmax(0,1fr);gap:15px}.bridal-step-number{width:46px;height:46px;font-size:23px}.bridal-timeline li>div{padding:18px 19px}.bridal-timeline p{font-size:15px}.bridal-testimonials>div{grid-template-columns:1fr}.bridal-testimonials figure:first-child{grid-row:auto}.bridal-prices .source-price-grid,.bridal-prices[data-source-section="8"] .source-price-grid{grid-template-columns:1fr}.bridal-prices .source-price-grid article,.bridal-prices[data-source-section="8"] .source-price-grid article{min-height:0}.bridal-gallery-grid{gap:13px}.bridal-gallery figure:nth-child(even){transform:translateY(11px)}.bridal-closing{gap:29px}}
@media(prefers-reduced-motion:reduce){.bridal-photo-pair figure{transition:none}.bridal-photo-pair figure:hover{transform:none}}
