/* Ajustements demandés : entrée en gros plan et invitation allégée. */
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.opening .opening-rule{display:none}.envelope-presentation{padding:0!important;justify-content:center;perspective:1800px;background:#732b3c}.opening .envelope-button{width:max(105vw,160svh)!important;max-width:none;aspect-ratio:1.48;transform:rotateX(4deg);margin:0;flex:none}.opening .envelope{filter:none}.opening .envelope-recipient{display:none}.opening .envelope-button:focus-visible{outline:none}.opening .envelope-button:focus-visible .wax-seal{outline:2px solid #e9c58a;outline-offset:8px}.opening .wax-seal{width:clamp(68px,8vw,95px);height:clamp(68px,8vw,95px);left:50%;transform:translateX(-50%) translateZ(3px);top:64%;box-shadow:2px 6px 7px #2b0b1977,inset 0 0 0 3px #ad8754,inset 0 0 0 6px #684621,inset 0 0 0 7px #c69d65}.opening .wax-seal svg{width:38px;height:38px}.opening .envelope-caption{position:fixed;top:auto!important;bottom:15svh;left:0;width:100%;color:#f7e6cf;font-size:12px;letter-spacing:1.3px;text-shadow:0 1px 3px #3b1326}.opening .opening-skip{background:none;color:#f4e5d3;border-bottom-color:#d2b39766;font-size:9px}.opening[data-phase=flight] .opening-skip,.opening[data-phase=zoom] .opening-skip,.opening[data-phase=confetti] .opening-skip{color:var(--ink);background:#f7f2e9a8}.opening-status{display:none}.opening .opening-media-warning{bottom:70px}
.hero{height:min(700px,calc(100svh - 76px));min-height:560px}.hero-copy{gap:24px}.introduction{padding-top:75px;padding-bottom:65px}.introduction .line-ornament{display:none}.introduction h2{font-size:clamp(30px,3.3vw,43px)}.introduction .prose{font-size:14px}.introduction .signature{display:none}
.date-section.date-band{display:block;background:var(--paper);padding:0;overflow:hidden}.date-flight-stage{position:relative;width:100%;height:270px;overflow:hidden}.date-message{position:absolute;left:24px;right:24px;top:138px;text-align:center;will-change:clip-path}.date-message .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:12px}.date-message time{font-family:var(--serif);font-style:normal;display:block;font-size:clamp(27px,3.7vw,44px);line-height:1.25;color:var(--accent);text-transform:none;text-wrap:balance}.date-message #date-hour{font-size:17px;display:block;color:var(--muted);margin-top:9px}.date-stork{z-index:5;filter:drop-shadow(0 6px 6px #624b2d10)}.date-band-actions{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap;padding:4px 24px 0;min-height:49px}.date-band-actions .text-link{font-size:10px}.date-band-actions #date-replay{color:var(--muted);border-bottom-color:transparent;font-size:9px}
.venue-section.venue-simple{display:block;text-align:center;padding:34px 25px 65px;max-width:850px;margin:auto}.venue-sentence{font-family:var(--serif);font-size:20px;line-height:1.6;text-wrap:balance}.venue-simple .address{border:0;padding:0;margin:12px auto 0;font-size:12px;color:var(--muted);white-space:normal}.venue-simple .demo-note{border:0;padding:0;margin:12px auto 0;font-size:9px}.venue-simple .text-link{margin-top:15px}
.programme-section{padding-top:75px;padding-bottom:75px}.programme-section h2{font-size:clamp(30px,3.3vw,43px);margin-bottom:30px}.programme-illustration{width:160px;height:145px;object-fit:contain;margin:0 auto 17px;filter:drop-shadow(0 5px 9px #1f09181a)}.programme-list li+li:before{height:145px;top:55px}.programme-list h3{font-size:21px}.programme-end{display:none}
.gift-section{gap:7vw;padding-top:75px;padding-bottom:75px}.gift-section .details-art{width:100%}.gift-section .details-art img{max-width:350px}.gift-section h2{font-size:clamp(30px,3.4vw,43px);margin-bottom:20px}.gifts-list{list-style:none;padding:0;margin:22px 0 0}.gifts-list li{padding:12px 0;border-top:1px solid var(--line)}.gifts-list strong{font:18px/1.4 var(--serif);display:block}.gifts-list span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.gift-section .button{margin-top:22px}.gift-section .demo-note{font-size:10px}
.rsvp-section{gap:7vw;padding-top:75px;padding-bottom:75px}.rsvp-copy h2{font-size:clamp(30px,3.4vw,43px)}.rsvp-copy .prose{font-size:14px}.rsvp-paper{transform:none}.rsvp-paper h3{font-size:29px}.finale{padding:48px 24px 28px}.finale>.eyebrow{display:none}.finale h2{font-size:28px;margin:0 auto 15px}.footer-names{font-size:30px;margin:22px auto}.footer-names em{font-size:15px}.demo-footer{margin-top:28px;font-size:9px}
@media(max-width:680px){.hero{height:auto;min-height:0}.hero-copy{padding-bottom:32px}.hero .names{font-size:50px}.hero-note{font-size:16px}.introduction{padding:35px 26px 35px}.introduction h2{font-size:30px;margin:16px auto 20px}.introduction .eyebrow{font-size:8px}.introduction .prose{font-size:13px;line-height:1.85}.date-flight-stage{height:245px}.date-message{left:20px;right:20px;top:130px}.date-message time{font-size:27px}.date-message #date-hour{font-size:16px}.date-message .eyebrow{font-size:8px;letter-spacing:1.6px}.date-band-actions{gap:5px 18px;padding:4px 20px 0}.date-band-actions .text-link{font-size:10px}.venue-section.venue-simple{padding:26px 26px 48px}.venue-sentence{font-size:19px}.programme-section{padding:55px 23px}.programme-section h2{font-size:30px;margin-bottom:24px}.programme-list{gap:28px 20px}.programme-illustration{width:135px;height:120px;margin-bottom:13px}.programme-list h3{font-size:20px}.programme-list p:last-child{font-size:11px}.gift-section{padding:48px 26px;gap:30px}.gift-section .details-art{width:80%}.gift-section .details-art img{max-width:260px}.gift-section h2{font-size:30px}.rsvp-section{padding:50px 20px;gap:30px}.rsvp-copy h2{font-size:30px}.rsvp-paper{padding:36px 24px}.opening .envelope-caption{bottom:17svh;font-size:11px}.opening .envelope-button{width:max(112vw,156svh)!important}.opening .wax-seal{width:75px;height:75px;top:60%}.opening .wax-seal svg{width:34px;height:34px}.opening .envelope-letter>span:first-child{font-size:38px}.opening .envelope-letter>span:last-child{font-size:10px}}
@media(max-width:350px){.date-message time{font-size:23px}.hero .names{font-size:44px}.programme-illustration{width:115px;height:105px}.programme-list{gap:25px 15px}.programme-list h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.date-message{clip-path:none!important}}

.flap-seam{position:absolute;inset:0;width:100%;height:100%}.opening .side-left{filter:brightness(.88)}.opening .side-right{filter:brightness(.83)}.opening .envelope-pocket{filter:brightness(.90)}.opening .flap-front{filter:brightness(1.08) drop-shadow(0 4px 3px #290c1b88)}.opening .envelope-caption{z-index:12;pointer-events:none}
