:root{--wine:#491927;--wine2:#612b38;--gold:#c4a06c;--ivory:#f3eadc;--paper:#fbf5e9;--ink:#3e2b2c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--wine);color:var(--ivory);font-family:'DM Sans',sans-serif;font-weight:300;line-height:1.65}button,input,textarea,select{font:inherit}button,a{transition:all .25s}a{color:inherit;text-decoration:none}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3,.date-large{font-family:'Cormorant Garamond',serif;font-weight:500}h2{font-size:clamp(2.8rem,5.5vw,5.7rem);line-height:1.04;margin-bottom:22px}h3{font-size:1.7rem;line-height:1.12}em,i{font-family:'Cormorant Garamond',serif;font-weight:400}.eyebrow{font-size:.69rem;font-weight:600;letter-spacing:.28em;color:var(--gold)}.burg{color:#8e6846}.small,.micro{font-size:.76rem;opacity:.75}.provisional{font-size:.72rem;display:inline-block;opacity:.7}.section{padding:110px max(6vw,22px);text-align:center;scroll-margin-top:76px}.section-lead{max-width:620px;margin:0 auto 55px;opacity:.8}.ivory{background:var(--paper);color:var(--ink)}.hidden{display:none!important}.intro{position:fixed;z-index:100;inset:0;display:grid;place-items:center;text-align:center;background:radial-gradient(ellipse at center,#713b46,#3d1522 70%);transition:opacity .8s,visibility .8s}.intro.dismissed{opacity:0;visibility:hidden;pointer-events:none}.intro-inner{padding:20px}.intro h1{font-size:clamp(3rem,7vw,6rem);margin:25px 0 0;letter-spacing:.08em}.intro h1 em{color:var(--gold)}.intro-sub{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-style:italic}.record{height:min(53vw,300px);width:min(53vw,300px);border-radius:50%;margin:30px auto 0;background:repeating-radial-gradient(circle,#1d1b1b 0 3px,#292426 4px 6px,#161517 7px 9px);box-shadow:0 0 0 7px #9b7c56,0 0 0 13px #2b1a1d,0 22px 60px #14090e;display:grid;place-items:center;position:relative}.record:before{content:'';position:absolute;inset:9%;border-radius:50%;border:1px solid #97775377}.record.spin{animation:spin 5s linear infinite}.record-center{background:var(--wine2);border:4px solid var(--gold);border-radius:50%;height:39%;width:39%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;font-family:'Cormorant Garamond',serif;font-size:2rem;line-height:1}.record-center span{color:var(--gold)}.record-center small{font:8px 'DM Sans',sans-serif;letter-spacing:.14em;width:100%}@keyframes spin{to{transform:rotate(360deg)}}.gold-btn,.dark-btn,.outline-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 29px;border:1px solid var(--gold);background:var(--gold);color:#3d1c23;font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.gold-btn:hover,.dark-btn:hover{filter:brightness(1.1);transform:translateY(-2px)}.dark-btn{background:var(--wine);color:var(--ivory);border-color:var(--wine)}.outline-btn{background:transparent;color:var(--ivory)}.outline-btn:hover{background:var(--gold);color:var(--wine)}.full{width:100%}.micro{margin-top:20px}.site-header{height:76px;position:sticky;top:0;z-index:30;background:#391521f2;backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #b9965a40}.logo{font:600 2rem 'Cormorant Garamond',serif}.logo i{color:var(--gold)}nav{display:flex;gap:clamp(10px,2vw,29px)}nav a{font-size:.69rem;letter-spacing:.06em;text-transform:uppercase}nav a:hover{color:var(--gold)}.sound,.nav-toggle{border:1px solid #ac885e;background:none;color:var(--gold);padding:8px 12px;font-size:.7rem}.nav-toggle{display:none}.hero{min-height:730px;display:grid;grid-template-columns:47% 53%;background:#451b29}.hero-photo{min-height:730px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 34%;filter:sepia(.12) saturate(.78)}.hero-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 5vw;text-align:center;background:radial-gradient(circle at 80% 45%,#6a3540,#451b29 70%)}.hero-content h2{font-size:clamp(5rem,9vw,10rem);margin:0 0 24px;line-height:.83}.hero-content h2 i{color:var(--gold);font-size:.7em}.hero-line{font:italic 1.5rem 'Cormorant Garamond',serif}.ornament{color:var(--gold);letter-spacing:.3em;margin:18px 0 40px}.hero-meta{display:flex;gap:28px;font-size:.72rem;letter-spacing:.12em;margin:22px 0 40px;color:var(--gold)}.announcement{padding-top:115px;padding-bottom:120px}.announcement>p:not(.eyebrow){max-width:700px;margin:0 auto 25px}.date-large{font-size:clamp(4rem,8vw,8rem);line-height:1;margin:38px 0 20px;color:#71313c}.date-large i{font-size:.6em}.story{background:#4d1b2a}.story-grid{display:grid;grid-template-columns:1fr minmax(240px,.92fr) 1fr;gap:5vw;max-width:1450px;margin:75px auto 0;text-align:left}.story-side{display:flex;flex-direction:column;justify-content:space-around;gap:70px}.story-side article span{font-size:.66rem;letter-spacing:.2em;color:var(--gold)}.story-side h3{color:#f0d8b7;margin:12px 0}.story-side p{font-size:.9rem;opacity:.8}.story-center{position:relative;align-self:stretch;min-height:950px}.story-center img{width:100%;height:100%;object-fit:cover;object-position:center;filter:sepia(.16);border:7px solid #b89b6a}.photo-caption{position:absolute;bottom:15px;left:0;right:0;text-align:center;background:#3a1821bb;padding:10px;font-size:.65rem;letter-spacing:.18em}.invite-section{background:#f1e4d0;color:var(--ink)}.invite-section .eyebrow{color:#906c4c}.ticket{max-width:990px;margin:65px auto 0;display:grid;grid-template-columns:1fr 200px;text-align:left;box-shadow:0 24px 55px #4b28343d;transform:rotate(-1deg)}.ticket-main{padding:60px;background:#fdf4e4;border:8px double #ac885e;position:relative}.ticket-main h3{font-size:clamp(2.8rem,5vw,4.8rem);color:#682c38}.ticket-main h3 em{font-size:.85em}.ticket-main p:not(.eyebrow){max-width:560px}.ticket-bottom{font-size:.7rem;letter-spacing:.12em;margin-top:45px;color:#845f43}.ticket-bottom b{margin:0 12px}.ticket-stub{background:var(--wine);border-left:3px dashed #cba875;color:#e9d3af;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:30px;padding:20px;font-size:.8rem;letter-spacing:.14em}.crest{font:2.4rem 'Cormorant Garamond',serif;border:2px solid var(--gold);width:100px;height:100px;border-radius:50%;display:grid;place-items:center}.ticket-stub small{font-size:.55rem}.program{background:#431925}.acts{max-width:820px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.acts>div{padding:26px 8px;border-bottom:1px solid #b9965a55}.acts time{font:2rem 'Cormorant Garamond',serif;color:var(--gold);display:block}.acts span{font-size:.6rem;letter-spacing:.25em}.acts h3{margin:6px 0}.acts p{font-size:.8rem;opacity:.7}.travel-grid{max-width:1000px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;text-align:left}.venue-card,.hotels{border:1px solid #b99a75;padding:45px}.venue-card h3,.hotels h3{font-size:2.5rem;color:#662c37}.venue-card .dark-btn{margin-top:28px}.hotels a{display:block;padding:10px 0;border-bottom:1px solid #d4c6b2;font-size:.88rem}.hotels a:hover{color:#9b6944}.countdown{background:#4b1d2c}.digits{display:flex;justify-content:center;gap:15px;margin:50px auto 35px}.digits>div{border:1px solid #b79a69;width:150px;padding:25px 12px}.digits strong{display:block;font:4.3rem 'Cormorant Garamond',serif}.digits span{font-size:.62rem;letter-spacing:.17em;color:var(--gold)}.form-shell{max-width:680px;margin:35px auto 0;padding:44px;text-align:left;background:#fffaf0;box-shadow:0 18px 60px #32131c18;border:1px solid #cdb68f}.form-shell form{display:flex;flex-direction:column;gap:18px}.form-shell label{font-size:.78rem;font-weight:500;display:flex;flex-direction:column;gap:7px}.form-shell input:not([type=radio]):not([type=checkbox]),.form-shell textarea,.form-shell select{width:100%;padding:13px 14px;border:1px solid #c9b89f;background:#fffdf8;border-radius:0;color:#3e2b2c;outline-color:#a88254}.fields.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{border:0;padding:0;margin:0 0 10px}.choice legend{font-weight:600;font-size:.86rem;margin-bottom:12px}.choice label{display:block;border:1px solid #c9b89f;padding:12px 16px;margin:10px 0;cursor:pointer}.choice label input{margin-right:8px;accent-color:#662b38}.choice label small{display:block;margin-left:25px;opacity:.65}.guest-header{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.guest-header h3{margin:0}.mini-btn{border:1px solid #8b5e47;color:#682c38;background:none;padding:9px 15px}.guest-row{border:1px solid #d5c4a9;padding:18px;margin:12px 0}.guest-row h4{margin:0 0 14px}.guest-row .remove{float:right;border:0;background:none;color:#823743}.consent{flex-direction:row!important;align-items:flex-start;gap:10px!important;line-height:1.5}.consent input{accent-color:#6b3340;margin-top:4px}.coffrets{max-width:900px;margin:55px auto 0}.coffrets h3{font-size:2.6rem}.coffret-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.coffret{background:linear-gradient(135deg,#8a4b34,#2e1818);padding:16px;border:8px ridge #ad8151;color:#f8ead3;box-shadow:0 14px 30px #3719234a}.coffret-lid{border:2px solid #d0a976;padding:15px}.coffret img{height:160px;width:120px;object-fit:cover;border:3px solid #bfa06a}.coffret h4{font:2rem 'Cormorant Garamond',serif;margin:8px 0}.cigar-illustration{height:35px;border-radius:20px;background:linear-gradient(#8d583a,#59321f,#8b5839);margin:25px 5px;display:grid;place-items:center;transform:rotate(-5deg)}.cigar-illustration span{background:#b99558;color:#391c1c;padding:1px 10px;font-size:.7rem;font-weight:600}.private-note{border:1px solid #b59565;display:inline-block;padding:14px 22px;margin:8px auto 20px;color:#ead3b2;font-size:.83rem}.guestbook{background:#371823}.light-form{background:#f8efe1;color:var(--ink)}.media-box{border:1px dashed #b9a38a;padding:20px;text-align:center}.media-box h3{margin:0 0 5px}.media-box p{font-size:.78rem;opacity:.7}.media-icons{display:flex;justify-content:center;gap:20px;font-size:.7rem;letter-spacing:.12em;color:#77513c}#rsvp-status,#guestbook-status{font-size:.83rem;font-weight:500}footer{background:#26121b;text-align:center;padding:65px 20px;display:flex;flex-direction:column;align-items:center;gap:12px}footer .footer-monogram{font:3.5rem 'Cormorant Garamond',serif}footer i{color:var(--gold)}footer p{font:italic 1.6rem 'Cormorant Garamond',serif}footer span,footer small{font-size:.67rem;letter-spacing:.13em;opacity:.6}
@media(max-width:1100px){nav{gap:12px}nav a{font-size:.61rem}.story-grid{gap:3vw}.story-side p{font-size:.82rem}}@media(max-width:850px){.nav-toggle{display:block;margin-left:auto;margin-right:15px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:#391521;flex-direction:column;padding:25px 7vw;gap:18px}nav.open{display:flex}nav a{font-size:.9rem}.hero{grid-template-columns:1fr}.hero-photo{min-height:490px;height:65vh}.hero-content{min-height:530px}.story-grid{display:flex;flex-direction:column;gap:40px}.story-center{order:-1;min-height:500px;max-width:430px;margin:auto}.story-side{display:contents}.story-side article{padding:10px 0}.story-side article:nth-child(1){order:1}.story-side.right article:nth-child(1){order:2}.story-side.left article:nth-child(2){order:3}.story-side.right article:nth-child(2){order:4}.story-side.left article:nth-child(3){order:5}.story-side.right article:nth-child(3){order:6}.story-side.left article:nth-child(4){order:7}.story-grid{text-align:center}.travel-grid{grid-template-columns:1fr}}@media(max-width:600px){.section{padding:78px 20px}.intro h1{font-size:3rem}.record{margin-top:25px}.hero-photo{min-height:380px;height:58vh}.hero-content h2{font-size:6rem}.hero-meta{flex-direction:column;gap:5px}.ticket{grid-template-columns:1fr;transform:none}.ticket-main{padding:30px 24px}.ticket-stub{border-left:0;border-top:3px dashed #cba875;flex-direction:row;gap:10px;justify-content:space-around}.ticket-stub .crest{width:65px;height:65px;font-size:1.4rem}.ticket-stub small{display:none}.acts{grid-template-columns:1fr}.digits{gap:6px}.digits>div{width:25%;padding:16px 3px}.digits strong{font-size:2.7rem}.digits span{font-size:.5rem}.form-shell{padding:22px}.fields.two{grid-template-columns:1fr}.venue-card,.hotels{padding:26px}.media-icons{gap:10px;font-size:.6rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Refonte à partir des visuels de référence fournis et approuvés */
:root{--wine:#430914;--wine2:#651a29;--gold:#e6b96d;--ivory:#f9ead6;--paper:#fff2dd}body{background:#330813}.site-header{background:#2a0710f2}.visual-section{position:relative;background:radial-gradient(ellipse at center,#5d1623,#2e0711);text-align:center;padding:0 0 35px;scroll-margin-top:76px;overflow:hidden}.poster{display:block;width:100%;height:auto;object-fit:contain;margin:auto}.poster-save{max-width:1152px}.poster-story{max-width:1152px}.poster-ticket{max-width:1536px}.poster-program{max-width:1024px}.poster-voyage{max-width:1404px}.save-section{background:#27060d}.story-section{background:#310810}.invitation-section{background:#370813;padding-top:55px}.programme-section{background:#3a0813;padding-top:35px}.voyage-section{background:#390813;padding-top:30px}.intro{background:#21050b}.intro-frame{height:100vh;width:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.intro-frame>img{height:100%;width:100%;object-fit:contain;object-position:center;background:#29040b}.intro-enter{position:absolute;bottom:6%;left:50%;transform:translateX(-50%);min-width:270px;white-space:nowrap;box-shadow:0 10px 45px #1a070d}.intro-enter:hover{transform:translateX(-50%) translateY(-2px)}.intro-hint{position:absolute;bottom:1.5%;left:0;right:0;color:#f7ddb6;text-shadow:0 1px 5px #23030b;font-size:.68rem;letter-spacing:.08em}.vinyl-rotor{position:absolute;top:8%;left:9%;width:63%;aspect-ratio:1;border-radius:50%;pointer-events:none;opacity:0;background:repeating-radial-gradient(circle,#410a12 0 2px,#711d2c 3px 4px,#360712 5px 7px);mix-blend-mode:screen}.vinyl-rotor.spin{animation:spin 3s linear infinite;opacity:.24}.poster-link{display:inline-flex;gap:18px;align-items:center;margin:20px auto 0;border:1px solid #d9ae6c;padding:15px 25px;color:#f8e6c7;font-size:.8rem;letter-spacing:.09em}.section-action{padding:10px 20px}.story-detail{max-width:850px;margin:15px auto 0;padding:0 24px 20px}.story-detail details{border:1px solid #b6884b;text-align:left;padding:20px 26px}.story-detail summary{cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:1.65rem;display:flex;justify-content:space-between}.chapters{display:grid;grid-template-columns:1fr 1fr;gap:20px 35px;padding-top:20px}.chapters article{border-top:1px solid #9c7248;padding-top:15px}.chapters b{color:#f1c98d;font-size:.85rem}.chapters p{font-size:.87rem}.portrait-interlude{padding:80px 4vw 90px;background:#f1dfc6;color:#54222c;text-align:center}.portrait-text h2{font-size:clamp(2.6rem,5vw,5rem);max-width:800px;margin:12px auto 20px}.portrait-text p:last-child{font:italic 1.45rem 'Cormorant Garamond',serif}.portrait-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1200px;margin:50px auto 0}.portrait-triptych img{width:100%;height:500px;object-fit:cover;object-position:center top;box-shadow:0 15px 40px #51263144}.travel-tools{max-width:1120px;margin:30px auto 0;padding:40px;background:#f6e8d3;color:#4a1b25}.travel-tools h2{font-size:3.4rem}.travel-tools>p{max-width:730px;margin:15px auto 25px}.travel-tools iframe{display:block;width:100%;height:380px;border:3px solid #bd9b66}.hotel-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.hotel-links a{display:flex;align-items:center;justify-content:center;border:1px solid #bfa47b;min-height:65px;padding:10px;font-size:.83rem;color:#54232e}.hotel-links a:hover{background:#e5d2b7}.fineprint{font-size:.75rem;opacity:.75;margin:25px auto}.countdown{background:#390b17}.rsvp{background:#f3e5d1}.rsvp h2{color:#6c2433}.guestbook{background:#360914}.coffret{background:#3c141c;border:4px solid #b98a51;padding:8px}.coffret-lid{padding:0;position:relative;overflow:hidden;border:1px solid #b98a51}.coffret img{display:block;width:100%;height:260px;object-fit:cover;border:0}.coffret-name{background:#451322f2;padding:12px;display:flex;flex-direction:column;gap:4px}.coffret-name span,.coffret-name small{font-size:.6rem;letter-spacing:.1em}.coffret-name strong{font:1.7rem 'Cormorant Garamond',serif;color:#f7dfb8}.form-shell{box-shadow:0 20px 55px #4c172530}.digits strong{color:#f6e1b7}@media(max-width:850px){.intro-frame>img{object-fit:cover}.intro-enter{bottom:8%}.intro-hint{bottom:3%}.vinyl-rotor{display:none}.portrait-triptych img{height:350px}.hotel-links{grid-template-columns:1fr 1fr}}@media(max-width:600px){.intro-frame>img{object-fit:contain}.intro-enter{bottom:7%;min-width:0;width:85%;font-size:.69rem}.intro-hint{bottom:2%;font-size:.55rem}.poster-save,.poster-story,.poster-program,.poster-voyage{width:100%}.portrait-interlude{padding:55px 15px}.portrait-triptych{gap:6px;margin-top:28px}.portrait-triptych img{height:220px}.travel-tools{padding:25px 16px}.travel-tools h2{font-size:2.5rem}.travel-tools iframe{height:290px}.hotel-links{grid-template-columns:1fr}.chapters{grid-template-columns:1fr}.story-detail details{padding:15px}.story-detail summary{font-size:1.35rem}}
