/* Celebria 3.0 — eighteen genuinely different wedding compositions */
.invitation-v3{--ink:#20251f;--paper:#f8f5ef;--soft:#ece9e1;--accent:#b08b58;--deep:#263b31;background:var(--paper);color:var(--ink);font-size:16px}.invitation-v3 *{box-sizing:border-box}.invitation-v3 h1,.invitation-v3 h2,.invitation-v3 h3{font-family:var(--serif)}
.c3-nav{position:absolute;z-index:100;top:0;left:0;right:0;min-height:78px;padding:12px 4vw;display:flex;align-items:center;gap:28px;color:#fff;background:rgba(18,27,23,.72);border-bottom:1px solid rgba(255,255,255,.26);backdrop-filter:blur(14px)}.c3-logo{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700}.c3-logo i{width:40px;height:40px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font:italic 600 16px var(--serif)}.c3-nav nav{display:flex;align-items:center;justify-content:center;gap:25px;margin:auto;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.c3-nav nav a{padding:8px 0;border-bottom:1px solid transparent}.c3-nav nav a:hover{border-color:currentColor}.c3-nav .audio-toggle{padding:10px 14px;color:#fff;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.55);font-size:12px}.c3-menu-toggle{display:none}
.c3-hero{position:relative;min-height:100vh;overflow:hidden}.c3-hero h1{margin:18px 0;display:flex;flex-wrap:wrap;align-items:center;gap:.18em;font-size:clamp(58px,8vw,116px);line-height:.76}.c3-hero h1 i{color:var(--accent);font-size:.62em}.c3-hero small,.c3-story small,.c3-locations small,.c3-gallery small,.c3-video small,.c3-gifts small,.c3-rsvp small{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.c3-hero a{display:inline-block;margin-top:22px;padding:12px 18px;border:1px solid currentColor;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.c3-quote{padding:90px max(25px,calc((100% - 920px)/2));text-align:center;background:#fff}.c3-quote>span{display:block;color:var(--accent);font:italic 600 75px/.5 var(--serif)}.c3-quote blockquote{margin:25px 0;color:var(--ink);font:italic 500 clamp(32px,4vw,55px)/1.08 var(--serif)}.c3-quote cite{font-size:12px;font-style:normal;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.c3-story{min-height:700px;padding:100px 6vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;background:var(--paper)}.c3-story figure{height:590px;margin:0;background:var(--detail) center 22%/cover no-repeat}.c3-story h2{margin:12px 0 28px;font-size:clamp(45px,5vw,70px);line-height:.9}.c3-story p{color:#676d67;font-size:16px;line-height:1.8}.c3-story>div:last-child>i{display:block;margin-top:28px;color:var(--accent);font:italic 500 28px var(--serif)}
.c3-locations{padding:105px 6vw;background:#fff}.c3-locations>header{text-align:center;margin-bottom:48px}.c3-locations h2,.c3-gallery h2,.c3-video h2,.c3-gifts h2,.c3-rsvp h2{margin:10px 0;font-size:clamp(43px,5vw,68px);line-height:.92}.location-grid{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.location-grid article{position:relative;min-height:360px;padding:52px;text-align:center;border:1px solid #d9d5cb;background:var(--paper)}.location-grid article>b{position:absolute;top:18px;left:20px;color:var(--accent);font-size:13px}.location-grid h3{margin:25px 0 8px;font-size:32px}.location-grid time{color:var(--accent);font:600 20px var(--serif)}.location-grid p{color:#6c716c}.location-grid a{display:inline-block;margin-top:15px;border-bottom:1px solid currentColor;font-size:11px;font-weight:700;text-transform:uppercase}
.c3-gifts{padding:105px max(25px,calc((100% - 980px)/2));display:grid;grid-template-columns:1fr 180px;align-items:center;gap:70px;color:#fff;background:var(--deep)}.c3-gifts p{max-width:680px;color:rgba(255,255,255,.76);font-size:17px}.c3-gifts a{display:inline-block;margin-top:15px;padding:11px 15px;border:1px solid rgba(255,255,255,.55);font-size:11px;font-weight:700;text-transform:uppercase}.c3-gifts>span{display:grid;place-items:center;width:160px;height:160px;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font:50px var(--serif)}
.c3-video{padding:95px 7vw;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:7vw;color:#fff;background:#171d1a}.c3-video p{color:#c3cbc5}.c3-video video{width:100%;max-height:650px;background:#050505;box-shadow:0 25px 70px rgba(0,0,0,.35)}
.c3-video-placeholder{position:relative;isolation:isolate;min-height:430px;padding:45px;display:grid;place-content:center;justify-items:center;text-align:center;overflow:hidden;background:linear-gradient(135deg,rgba(15,12,14,.72),rgba(45,31,36,.45)),url('/assets/wedding-detail.png') center/cover;border:1px solid rgba(255,255,255,.26);box-shadow:0 25px 70px rgba(0,0,0,.3)}.c3-video-placeholder:after{content:"";position:absolute;z-index:-1;inset:18px;border:1px solid rgba(255,255,255,.32)}.c3-video-placeholder>i{width:74px;height:74px;display:grid;place-items:center;padding-left:5px;color:#272020;background:rgba(255,255,255,.92);border-radius:50%;font-style:normal;font-size:25px;box-shadow:0 12px 35px rgba(0,0,0,.24)}.c3-video-placeholder>strong{margin:24px 0 7px;font:600 35px var(--serif)}.c3-video-placeholder>span{max-width:440px;color:#eee5e6;font-size:12px;line-height:1.7}.c3-video-placeholder>small{margin-top:21px;padding:7px 10px;color:#fff;border:1px solid rgba(255,255,255,.5);font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.c3-gallery{padding:105px 4vw;background:var(--soft)}.c3-gallery>header{text-align:center;margin-bottom:45px}.c3-gallery>div{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:12px}.c3-gallery figure{margin:0;overflow:hidden}.c3-gallery figure:first-child{grid-column:span 2;grid-row:span 2}.c3-gallery img{width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:.4s}.c3-gallery figure:hover img{transform:scale(1.035)}
.c3-rsvp{padding:110px max(24px,calc((100% - 1080px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;color:#fff;background:var(--deep)}.c3-rsvp>div p{color:rgba(255,255,255,.72)}.c3-rsvp form{padding:40px;color:var(--ink);background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.22)}.c3-rsvp form>label,.c3-rsvp .two label{display:block;margin-bottom:15px;font-size:12px;font-weight:700}.c3-rsvp input,.c3-rsvp select,.c3-rsvp textarea{width:100%;margin-top:6px;padding:12px;border:1px solid #d9d7d0;background:#fff}.c3-rsvp fieldset{margin:0 0 16px;padding:16px;border:1px solid #d9d7d0}.c3-rsvp legend{font-size:11px;font-weight:700}.c3-rsvp fieldset label{margin-right:15px;font-size:11px}.c3-rsvp fieldset input,.c3-rsvp .check input{width:auto}.c3-rsvp .check{display:flex;gap:8px;align-items:center}.c3-rsvp form>button{width:100%;padding:15px;border:0;color:#fff;background:var(--deep);font-weight:700}.c3-footer{padding:58px 5vw;display:flex;align-items:center;justify-content:space-between;color:#fff;background:#111713}.c3-footer strong{font:600 38px var(--serif)}.c3-footer strong i{color:var(--accent)}.c3-footer p,.c3-footer a{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.c3-footer a{text-decoration:underline}

/* 01 Mediterránea — immersive horizon */
.design-mediterranea{--accent:#e4b565;--deep:#245a6b;--soft:#e6f1f1;--paper:#f8f2e7}.hero-mediterranea{display:grid;place-items:center;color:#fff;background:#173d49}.hero-mediterranea:before{content:"";position:absolute;inset:-35px;background:var(--hero) center/cover;filter:blur(25px) brightness(.62)}.mediterranean-photo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,75,92,.08),rgba(13,50,61,.6)),var(--hero) center/contain no-repeat}.mediterranean-card{position:relative;z-index:2;width:min(920px,90%);padding:70px 30px;text-align:center;border:1px solid rgba(255,255,255,.62);backdrop-filter:blur(2px)}.mediterranean-card h1{justify-content:center}.hero-mediterranea>span{position:absolute;z-index:2;right:4vw;bottom:35px;writing-mode:vertical-rl;font-size:11px;letter-spacing:.2em;text-transform:uppercase}

/* 02 Nocturna — split gala */
.design-nocturna{--accent:#d4b064;--deep:#101621;--soft:#e8e9ed;--paper:#f3f0e9}.hero-nocturna{padding-top:78px;display:grid;grid-template-columns:1.25fr .75fr;background:#0e131d;color:#fff}.night-photo{background:linear-gradient(90deg,transparent,rgba(14,19,29,.52)),var(--hero) center 22%/cover no-repeat;filter:grayscale(.45)}.night-panel{padding:7vw 5vw;display:flex;flex-direction:column;justify-content:center}.night-mark{width:105px;height:105px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--accent);border-radius:50%;font:600 31px var(--serif)}.night-mark i{color:var(--accent)}.night-panel h1{display:block;font-size:clamp(52px,6vw,92px);line-height:.78;text-transform:uppercase}.night-panel h1 span{display:block}.night-panel h1 i{display:block;margin:.12em 0}

/* 03 Cine — widescreen poster */
.design-cine{--accent:#ef5148;--deep:#151515;--soft:#e7e2db;--paper:#f2ede5}.hero-cine{display:flex;align-items:flex-end;padding:140px 7vw 75px;color:#fff;background:#111}.hero-cine:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.08)),var(--hero) center/contain no-repeat;background-color:#111}.film-bars:before,.film-bars:after{content:"";position:absolute;z-index:2;left:0;right:0;height:42px;background:#050505}.film-bars:before{top:78px}.film-bars:after{bottom:0}.film-copy{position:relative;z-index:3;max-width:900px}.film-copy h1{display:block;font-family:var(--sans);font-weight:800;line-height:.78;text-transform:uppercase;letter-spacing:-.06em}.film-copy h1 i{display:block;margin:.1em 0;color:var(--accent)}.hero-cine>b{position:absolute;z-index:3;right:4vw;bottom:70px;font-size:10px;letter-spacing:.14em}

/* 04 Clásica — printed invitation */
.design-clasica{--accent:#9f7b45;--deep:#594a35;--soft:#eee5d8;--paper:#faf6ed}.hero-clasica{padding:125px 20px 70px;background:linear-gradient(135deg,#d7c8b5,#f0e6d8)}.classic-card{position:relative;width:min(780px,100%);margin:auto;padding:55px 60px 70px;text-align:center;background:#fffaf0;box-shadow:0 35px 90px rgba(83,64,43,.2)}.classic-card:before{content:"";position:absolute;inset:20px;border:1px solid #bea478}.classic-monogram{position:relative;margin:22px auto;width:90px;height:90px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--accent);border-radius:50%;font:600 32px var(--serif)}.classic-monogram span,.classic-monogram i{display:block;line-height:1}.classic-monogram i{color:var(--accent);font-size:23px}.classic-card figure{position:relative;width:min(390px,85%);aspect-ratio:4/3;margin:20px auto;border-radius:190px 190px 8px 8px;background:var(--hero) center 22%/cover}.classic-card h1{position:relative;justify-content:center;font-size:clamp(48px,7vw,82px)}.classic-card p,.classic-card a,.classic-card small{position:relative}

/* 05 Romántica — floral arch */
.design-romantica{--accent:#c87889;--deep:#704852;--soft:#fae8ec;--paper:#fff6f6}.hero-romantica{padding:120px 7vw 65px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0;background:radial-gradient(circle at 80% 15%,#f5d9df,transparent 32%),#f9ebed}.hero-romantica figure{height:650px;margin:0;border-radius:320px 320px 8px 8px;background:var(--hero) center 22%/cover;box-shadow:0 25px 65px rgba(100,58,69,.18)}.romance-copy{margin-left:-65px;padding:65px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px)}.romance-copy h1{display:block;font-style:italic}.romance-copy h1 span,.romance-copy h1 i{display:block}.romance-copy h1 i{margin-left:24%}.romance-copy>span{position:absolute;right:6%;top:12%;color:var(--accent);font-size:55px}

/* 06 Monograma — black luxury */
.design-monograma{--accent:#c2a264;--deep:#161b18;--soft:#e5e2da;--paper:#f3f0e8}.hero-monograma{padding:120px 5vw 65px;display:grid;grid-template-columns:.42fr 1.1fr .75fr;align-items:center;gap:35px;color:#eee;background:#171c19}.luxury-mark{align-self:start;display:flex;align-items:center;justify-content:center;gap:8px;width:160px;height:160px;border:1px solid var(--accent);border-radius:50%;font:600 55px var(--serif)}.luxury-mark i{color:var(--accent);font-size:30px}.hero-monograma figure{height:650px;margin:0;background:var(--hero) center 22%/cover;filter:grayscale(1)}.luxury-copy h1{display:block;font-size:clamp(49px,5vw,78px);text-transform:uppercase}.luxury-copy h1 span,.luxury-copy h1 i{display:block}.luxury-copy p{color:#c8ccc8}

/* 07 Minimal — whitespace grid */
.design-minimal{--accent:#777;--deep:#222;--soft:#eeeeeb;--paper:#f7f7f4}.hero-minimal{padding:125px 6vw 55px;display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;background:#f7f7f4}.minimal-copy{display:flex;flex-direction:column;justify-content:center}.minimal-copy>b{font:600 75px var(--serif);color:#d6d6d1}.minimal-copy h1{display:block;font-family:var(--sans);font-size:clamp(50px,6vw,88px);font-weight:600;line-height:.85;letter-spacing:-.06em}.minimal-copy h1 span,.minimal-copy h1 i{display:block}.minimal-copy h1 i{margin-left:35%;color:#999}.hero-minimal figure{margin:0;background:var(--hero) center 22%/cover;filter:grayscale(1)}

/* 08 Editorial — magazine cover */
.design-editorial{--accent:#a65f79;--deep:#3a2831;--soft:#ede2e7;--paper:#f5eef1}.hero-editorial{padding:105px 4vw 50px;display:grid;grid-template-columns:55px 1.1fr .9fr;grid-template-rows:auto 1fr;gap:22px;background:#e8dce1}.hero-editorial>header{grid-column:1/-1;display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:5px solid #382c32;font-size:20px;font-weight:800;letter-spacing:.2em}.hero-editorial>header small{letter-spacing:.1em}.hero-editorial figure{grid-column:2;height:650px;margin:0;background:var(--hero) center 22%/cover;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%)}.editorial-cover{padding:6vw 2vw;align-self:center}.editorial-cover h1{display:block;font-size:clamp(58px,7vw,105px);line-height:.66;text-transform:uppercase;letter-spacing:-.07em}.editorial-cover h1 span,.editorial-cover h1 i{display:block}.editorial-cover h1 i{margin-left:25%}.hero-editorial>b{grid-column:1;grid-row:2;writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;letter-spacing:.16em}

/* 09 Art Déco — geometric theatre */
.design-artdeco{--accent:#c3a254;--deep:#101612;--soft:#e8e2d5;--paper:#f4efe4}.hero-artdeco{display:grid;place-items:center;padding:125px 20px 60px;color:#f1dfb1;background:linear-gradient(rgba(11,16,13,.56),rgba(11,16,13,.82)),var(--hero) center 22%/cover}.deco-frame{position:relative;width:min(850px,92%);padding:85px 35px;text-align:center;border:2px solid var(--accent);clip-path:polygon(8% 0,92% 0,100% 8%,100% 92%,92% 100%,8% 100%,0 92%,0 8%);background:rgba(9,13,11,.68)}.deco-frame:before{content:"";position:absolute;inset:14px;border:1px solid var(--accent)}.deco-mark{position:relative;display:flex;justify-content:center;gap:8px;font:600 44px var(--serif)}.deco-frame h1{position:relative;justify-content:center;text-transform:uppercase;letter-spacing:.03em}.deco-frame p,.deco-frame a,.deco-frame small{position:relative}

/* 10 Botánica — organic composition */
.design-botanica{--accent:#88a486;--deep:#294a37;--soft:#e7efe5;--paper:#f2f6ee}.hero-botanica{padding:125px 7vw 70px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;background:#e7efe5}.botanical-photo{height:680px;border-radius:47% 53% 43% 57%/58% 42% 58% 42%;background:var(--hero) center 22%/cover;box-shadow:0 30px 75px rgba(40,76,52,.17)}.botanical-copy{margin-left:-70px;padding:60px;background:rgba(255,255,255,.9)}.botanical-copy h1{display:block;font-style:italic}.botanical-copy h1 span,.botanical-copy h1 i{display:block}.botanical-copy h1 i{margin-left:28%}.hero-botanica>i{position:absolute;color:#6f946f;font:70px var(--serif)}.leaf-one{right:4%;top:15%;transform:rotate(-25deg)}.leaf-two{left:2%;bottom:6%;transform:rotate(155deg)}

/* 11 Boho — sun and collage */
.design-boho{--accent:#c27d5e;--deep:#6a4032;--soft:#f3e3d8;--paper:#fbf0e7}.hero-boho{padding:130px 6vw 65px;display:grid;grid-template-columns:1fr .42fr .85fr;align-items:center;background:#f2dfd2}.boho-sun{position:absolute;right:18%;top:10%;width:360px;height:360px;border-radius:50%;background:#dfa87d}.hero-boho figure{position:relative;margin:0;background-position:center 22%;background-size:cover}.boho-main{height:650px;border-radius:220px 220px 8px 8px;background-image:var(--hero)}.boho-detail{z-index:2;height:330px;margin-left:-90px!important;border:12px solid #f8eee5;background-image:var(--detail);transform:rotate(3deg)}.boho-copy{position:relative;z-index:3;margin-left:-45px;padding:45px;background:#fff8ef;transform:rotate(-1deg)}.boho-copy h1{display:block;font-style:italic;font-size:clamp(52px,6vw,88px)}.boho-copy h1 span,.boho-copy h1 i{display:block}

/* 12 Jardín Inglés — greenhouse window */
.design-jardin{--accent:#9a815e;--deep:#455947;--soft:#e9eee6;--paper:#f7f5ed}.hero-jardin{padding:120px 7vw 65px;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;background:linear-gradient(90deg,#dfe7dc 0 65%,#f6f3e9 65%)}.garden-window{position:relative;height:680px;border:16px solid #f9f7ef;border-radius:330px 330px 4px 4px;background:var(--hero) center 22%/cover;box-shadow:0 25px 70px rgba(44,67,49,.18)}.garden-window i{position:absolute;background:rgba(255,255,255,.7)}.garden-window i:nth-child(1){left:50%;top:0;bottom:0;width:4px}.garden-window i:nth-child(2){left:0;right:0;top:48%;height:4px}.garden-window i:nth-child(3){left:18%;right:18%;top:18%;height:2px}.garden-plaque{margin-left:-70px;padding:55px;text-align:center;background:#fff;border:1px solid #b7ad96}.garden-plaque h1{display:block;font-style:italic}.garden-plaque h1 span,.garden-plaque h1 i{display:block}

/* 13 Costa — oversized postcard */
.design-costa{--accent:#d4a457;--deep:#245b6d;--soft:#e4f0f1;--paper:#f5f1e8}.hero-costa{padding:125px 6vw 65px;display:grid;grid-template-columns:1.18fr .82fr;background:#d8e9eb}.hero-costa>figure{min-height:650px;margin:0;background:var(--hero) center 22%/cover}.coast-postcard{position:relative;align-self:center;margin-left:-65px;padding:65px 50px;background:#fff;box-shadow:0 25px 70px rgba(35,82,92,.2)}.coast-postcard>b{display:block;border-bottom:3px solid #203d45;letter-spacing:.2em}.coast-postcard h1{display:block;font-style:italic;font-size:clamp(55px,6vw,88px)}.coast-postcard h1 span,.coast-postcard h1 i{display:block}.coast-postcard>span{position:absolute;right:35px;top:65px;color:#d4a457;font-size:45px}

/* 14 Pasaporte — open travel document */
.design-pasaporte{--accent:#b28b4d;--deep:#263f4b;--soft:#e6ebe7;--paper:#f2ecdf}.hero-pasaporte{padding:130px 5vw 70px;display:grid;place-items:center;background:#263f4b}.passport-book{position:relative;width:min(1100px,100%);min-height:640px;display:grid;grid-template-columns:1fr 1fr;background:#efe4ca;border-radius:8px;box-shadow:0 35px 90px rgba(0,0,0,.35)}.passport-book:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:#c8b995;box-shadow:0 0 18px rgba(50,40,26,.25)}.passport-photo{margin:45px;background:var(--hero) center 22%/cover;border:10px solid #f8f0dd}.passport-data{padding:70px 55px;display:flex;flex-direction:column;justify-content:center}.passport-data>b{padding-bottom:12px;border-bottom:2px solid #344b55;letter-spacing:.13em}.passport-data h1{display:block;font-size:clamp(48px,5vw,75px)}.passport-data h1 span,.passport-data h1 i{display:block}.passport-data dl{display:grid;grid-template-columns:auto 1fr;gap:7px 20px;font-size:12px}.passport-data dt{font-weight:700}.passport-stamp{position:absolute;right:4%;bottom:7%;padding:13px;border:3px double #a86657;border-radius:50%;color:#a86657;font:700 12px var(--sans);text-align:center;transform:rotate(-12deg)}

/* 15 Hacienda — tiled arch */
.design-hacienda{--accent:#bd793f;--deep:#5a4930;--soft:#f0e3cf;--paper:#fbf3e6}.hero-hacienda{padding:125px 7vw 65px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f0dfc3}.hacienda-tiles{position:absolute;inset:0 50% 0 0;opacity:.28;background:repeating-linear-gradient(45deg,#b86d36 0 3px,transparent 3px 22px),repeating-linear-gradient(-45deg,#587a6b 0 3px,transparent 3px 22px)}.hero-hacienda figure{position:relative;height:680px;margin:0;border-radius:330px 330px 0 0;background:var(--hero) center 22%/cover;border:12px solid #fff4e3}.hacienda-copy{position:relative;padding:70px}.hacienda-copy h1{display:block;font-style:italic}.hacienda-copy h1 span,.hacienda-copy h1 i{display:block}.hacienda-copy>span{display:block;color:var(--accent);font-size:50px}

/* 16 Timeline — chronological cover */
.design-timeline{--accent:#a77f50;--deep:#3e463f;--soft:#ece7dc;--paper:#f7f3ea}.hero-timeline{padding:120px 6vw 60px;display:grid;grid-template-columns:180px 1.1fr .9fr;align-items:center;gap:45px;background:#f3eee5}.timeline-line{position:relative;height:560px;display:flex;flex-direction:column;justify-content:space-between}.timeline-line:before{content:"";position:absolute;left:17px;top:15px;bottom:15px;width:1px;background:#a77f50}.timeline-line>span{position:relative;padding-left:45px;font:600 24px var(--serif)}.timeline-line>span:before{content:"";position:absolute;left:10px;top:7px;width:13px;height:13px;border:2px solid #a77f50;border-radius:50%;background:#f3eee5}.timeline-line small{font:10px var(--sans)}.hero-timeline figure{height:650px;margin:0;background:var(--hero) center 22%/cover}.timeline-copy h1{display:block;font-style:italic}.timeline-copy h1 span,.timeline-copy h1 i{display:block}

/* 17 Polaroid — scrapbook */
.design-polaroid{--accent:#c46f65;--deep:#5a443d;--soft:#f0e3da;--paper:#f9f1e8}.hero-polaroid{padding:125px 7vw 65px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;background:#eadfd3}.photo-stack{position:relative;height:670px}.photo-stack figure{position:absolute;margin:0;background-position:center 22%;background-size:cover;border:15px solid #fff;border-bottom-width:70px;box-shadow:0 22px 55px rgba(65,48,38,.22)}.p-one{inset:15px 18% 40px 5%;background-image:var(--hero);transform:rotate(-4deg)}.p-two{inset:110px 0 0 43%;background-image:var(--detail);transform:rotate(5deg)}.hand-note{padding:45px;transform:rotate(-2deg)}.hand-note h1{display:block;font-style:italic;font-size:clamp(52px,6vw,88px)}.hand-note h1 span,.hand-note h1 i{display:block}

/* 18 Festival — bold weekend poster */
.design-festival{--accent:#ffd34d;--deep:#402b5c;--soft:#f1e4ef;--paper:#f8f0e8}.hero-festival{padding:115px 5vw 55px;display:grid;grid-template-columns:1.1fr .9fr;background:#442d62;color:#fff}.festival-photo{min-height:680px;background:linear-gradient(135deg,rgba(72,39,100,.15),rgba(235,98,88,.25)),var(--hero) center 22%/cover}.festival-poster{padding:65px 50px;display:flex;flex-direction:column;justify-content:center;background:#ee746d}.festival-poster h1{display:block;font-family:var(--sans);font-size:clamp(52px,6vw,95px);font-weight:800;line-height:.76;text-transform:uppercase;letter-spacing:-.07em}.festival-poster h1 span,.festival-poster h1 i{display:block}.festival-poster h1 i{color:#ffd34d}.festival-poster>strong{font-size:28px}.festival-poster>a{align-self:flex-start;color:#402b5c;background:#ffd34d;border:0}.hero-festival>b{position:absolute;left:-45px;top:115px;padding:8px 70px;color:#402b5c;background:#ffd34d;transform:rotate(-8deg);font-size:12px;letter-spacing:.15em}

/* Whole-page differences beyond the covers */
.design-nocturna .c3-quote,.design-monograma .c3-story,.design-artdeco .c3-quote{color:#eee;background:#171c19}.design-nocturna .c3-quote blockquote,.design-artdeco .c3-quote blockquote{color:#eee}.design-minimal .c3-story{grid-template-columns:.8fr 1.2fr;background:#fff}.design-minimal .c3-story figure{filter:grayscale(1)}.design-editorial .c3-story{grid-template-columns:1.2fr .8fr}.design-editorial .c3-story figure{grid-column:2;grid-row:1}.design-editorial .c3-story>div:last-child{grid-column:1;grid-row:1}.design-botanica .c3-story figure,.design-boho .c3-story figure{border-radius:48% 52% 44% 56%/57% 43% 57% 43%}.design-jardin .location-grid article{border-radius:180px 180px 8px 8px}.design-pasaporte .c3-locations{background:#e7e9e4}.design-pasaporte .location-grid article{border:1px dashed #8d8d7c}.design-timeline .c3-story{background:linear-gradient(90deg,#f7f3ea 0 15%,#d8cbb7 15% 15.2%,#f7f3ea 15.2%)}.design-polaroid .c3-gallery>div{display:flex;overflow:auto;padding:25px}.design-polaroid .c3-gallery figure{flex:0 0 320px;height:410px;padding:10px 10px 45px;background:#fff;box-shadow:0 15px 35px rgba(55,42,34,.15);transform:rotate(-2deg)}.design-polaroid .c3-gallery figure:nth-child(even){transform:rotate(2deg)}.design-festival .location-grid article:first-child{background:#f5d95f}.design-festival .location-grid article:last-child{background:#efa19b}.design-festival .c3-story{background:#f1e4ef}.design-cine .c3-video{background:#050505}.design-clasica .c3-locations,.design-romantica .c3-gallery{background:#fff8f4}

/* 19–21 Aniversarios — tres composiciones específicas */
.design-aniversario-eterno{--accent:#c8957f;--deep:#684653;--soft:#f2e3e0;--paper:#faf3ef}.hero-anniversary-eternal{padding:115px 6vw 55px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;background:#ede0dc}.hero-anniversary-eternal>figure{height:680px;margin:0;border-radius:340px 340px 5px 5px;background:var(--hero) center 22%/cover;box-shadow:0 28px 75px rgba(91,57,68,.2)}.anniversary-eternal-copy{position:relative;margin-left:-65px;padding:65px;color:#fff;background:rgba(104,70,83,.95)}.anniversary-eternal-copy>b{display:flex;align-items:flex-end;gap:10px;color:#e9bda8;font:600 94px/.72 var(--serif)}.anniversary-eternal-copy>b span{padding-bottom:8px;font:700 10px var(--sans);letter-spacing:.16em;text-transform:uppercase}.anniversary-eternal-copy h1{display:block;font-style:italic;font-size:clamp(53px,6vw,88px)}.anniversary-eternal-copy h1 span,.anniversary-eternal-copy h1 i{display:block}.anniversary-eternal-copy h1 i{margin-left:24%;color:#e9bda8}.anniversary-eternal-copy a{display:inline-block;margin-top:15px;padding-bottom:5px;border-bottom:1px solid #e9bda8;font-size:10px;text-transform:uppercase}.hero-anniversary-eternal>i{position:absolute;right:3%;bottom:-7%;color:rgba(104,70,83,.12);font:600 240px var(--serif)}
.design-bodas-plata{--accent:#9ca3a8;--deep:#4f5458;--soft:#e8eaeb;--paper:#f5f5f3}.hero-silver-anniversary{padding:120px 6vw 60px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;background:linear-gradient(135deg,#d7d9da,#f4f4f2)}.silver-anniversary-photo{height:670px;background:var(--hero) center 22%/cover;filter:grayscale(1) contrast(1.04);box-shadow:0 28px 75px rgba(54,58,61,.2)}.silver-anniversary-card{position:relative;margin-left:-90px;padding:65px;background:rgba(250,250,248,.94);border:1px solid #a7acae}.silver-anniversary-card>b{display:block;color:#a0a5a8;font:600 115px/.68 var(--serif)}.silver-anniversary-card>span{display:block;margin:6px 0 25px;color:#686d70;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.silver-anniversary-card h1{display:block;color:#303336;font-style:italic}.silver-anniversary-card h1 span,.silver-anniversary-card h1 i{display:block}.silver-anniversary-card h1 i{margin-left:25%;color:#92989c}.silver-anniversary-card a{display:inline-block;margin-top:12px;padding:10px 14px;color:#fff;background:#555a5e;font-size:10px;text-transform:uppercase}
.design-bodas-oro{--accent:#d0aa61;--deep:#382b1e;--soft:#f0e5cf;--paper:#f9f2e4}.hero-golden-anniversary{display:grid;place-items:center;padding:125px 25px 65px;color:#f4dfb5;background:linear-gradient(rgba(40,28,16,.58),rgba(31,21,12,.82)),var(--hero) center 22%/cover}.hero-golden-anniversary:before{content:"";position:absolute;inset:30px;border:1px solid rgba(213,176,100,.7)}.golden-rings{position:absolute;top:11%;left:50%;width:160px;height:95px;transform:translateX(-50%)}.golden-rings i{position:absolute;width:92px;height:92px;border:2px solid #d0aa61;border-radius:50%}.golden-rings i:first-child{left:0}.golden-rings i:last-child{right:0}.golden-anniversary-copy{position:relative;z-index:2;width:min(920px,94%);padding:115px 40px 70px;text-align:center;background:rgba(32,22,13,.64);backdrop-filter:blur(4px)}.golden-anniversary-copy>b{display:block;margin:8px 0 15px;color:#d0aa61;font:600 19px var(--serif);text-transform:uppercase;letter-spacing:.13em}.golden-anniversary-copy>b span{font-size:85px;line-height:.7}.golden-anniversary-copy h1{justify-content:center;font-style:italic}.golden-anniversary-copy>strong{display:block;color:#d0aa61;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.golden-anniversary-copy>a{display:inline-block;margin-top:25px;padding:11px 15px;border:1px solid #d0aa61;font-size:10px;text-transform:uppercase}.design-bodas-oro .c3-quote{color:#f4dfb5;background:#302419}.design-bodas-oro .c3-quote blockquote{color:#f4dfb5}.design-bodas-plata .c3-gallery{background:#e8eaeb}.design-aniversario-eterno .c3-story figure{border-radius:48% 52% 46% 54%/54% 46% 54% 46%}
@media(max-width:980px){.hero-anniversary-eternal,.hero-silver-anniversary{grid-template-columns:1fr}.anniversary-eternal-copy,.silver-anniversary-card{margin:-75px 35px 0}.hero-golden-anniversary{padding-top:135px}}
@media(max-width:680px){.hero-anniversary-eternal,.hero-silver-anniversary{padding:105px 18px 55px}.hero-anniversary-eternal>figure,.silver-anniversary-photo{height:510px}.anniversary-eternal-copy,.silver-anniversary-card{margin:-55px 8px 0;padding:40px 25px}.anniversary-eternal-copy>b{font-size:72px}.silver-anniversary-card>b{font-size:90px}.golden-anniversary-copy{padding:105px 22px 55px}.golden-anniversary-copy>b span{font-size:68px}.hero-golden-anniversary:before{inset:15px}}

@media(max-width:980px){.c3-nav nav{display:none}.c3-nav{position:absolute}.hero-nocturna,.hero-romantica,.hero-minimal,.hero-botanica,.hero-jardin,.hero-costa,.hero-hacienda,.hero-polaroid,.hero-festival{grid-template-columns:1fr}.hero-monograma{grid-template-columns:1fr}.luxury-mark{display:none}.hero-editorial{grid-template-columns:40px 1fr}.hero-editorial figure{grid-column:2}.editorial-cover{grid-column:2}.hero-boho{grid-template-columns:1fr}.boho-detail{display:none}.boho-copy,.botanical-copy,.garden-plaque,.coast-postcard{margin:-70px 25px 0}.passport-book{grid-template-columns:1fr}.passport-photo{min-height:430px}.passport-book:after{display:none}.hero-timeline{grid-template-columns:100px 1fr}.timeline-copy{grid-column:2}.c3-story,.design-editorial .c3-story,.design-minimal .c3-story{grid-template-columns:1fr 1fr}.c3-story>div:last-child,.design-editorial .c3-story figure,.design-editorial .c3-story>div:last-child{grid-column:auto;grid-row:auto}.c3-video,.c3-rsvp{grid-template-columns:1fr}.c3-gifts{grid-template-columns:1fr}.c3-gifts>span{display:none}}
@media(max-width:680px){.invitation-v3{font-size:15px}.c3-nav{min-height:68px;padding:10px 18px}.c3-logo span{display:none}.c3-logo i{width:36px;height:36px}.c3-nav .audio-toggle{margin-left:auto;font-size:10px}.c3-hero{min-height:760px;padding-left:18px;padding-right:18px}.c3-hero h1{font-size:clamp(48px,17vw,72px);line-height:.8}.mediterranean-card{padding:50px 18px}.night-photo{min-height:430px}.night-panel{padding:45px 25px}.hero-nocturna{padding-left:0;padding-right:0}.hero-cine{padding:130px 25px 70px}.classic-card{padding:45px 25px}.classic-monogram{width:78px;height:78px}.hero-romantica figure,.botanical-photo,.garden-window,.hero-costa>figure,.hero-hacienda figure,.hero-timeline figure,.festival-photo{height:500px;min-height:500px}.romance-copy{margin:-70px 15px 0;padding:38px 25px}.hero-monograma figure{height:500px}.luxury-copy{padding:35px 5px}.hero-minimal{padding-top:110px}.hero-minimal figure{min-height:500px}.hero-editorial{padding:95px 18px 35px}.hero-editorial>header{font-size:12px}.hero-editorial figure{height:460px}.editorial-cover{padding:35px 0}.deco-frame{padding:65px 20px}.hero-botanica,.hero-jardin,.hero-costa,.hero-hacienda,.hero-polaroid,.hero-festival{padding-top:105px}.botanical-copy,.garden-plaque,.coast-postcard{padding:38px 24px}.hero-boho{padding-top:110px}.boho-main{height:520px}.boho-copy{margin:-50px 10px 0;padding:35px 23px}.passport-book{min-height:0}.passport-photo{min-height:390px;margin:22px}.passport-data{padding:40px 25px}.passport-stamp{display:none}.hero-timeline{grid-template-columns:1fr;padding-top:110px}.timeline-line{display:none}.timeline-copy{grid-column:1}.photo-stack{height:500px}.p-two{display:none}.festival-poster{padding:45px 25px}.c3-quote,.c3-story,.c3-locations,.c3-gallery,.c3-video,.c3-gifts,.c3-rsvp{padding:72px 22px}.c3-story,.design-editorial .c3-story,.design-minimal .c3-story{display:flex;flex-direction:column;gap:28px}.c3-story figure{width:100%;height:430px}.location-grid{grid-template-columns:1fr}.location-grid article{min-height:320px;padding:42px 25px}.c3-gallery>div{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.c3-gallery figure:first-child{grid-column:span 2;grid-row:auto}.c3-rsvp form{padding:24px}.c3-footer{display:block;text-align:center}.c3-footer p{margin:8px}.c3-footer a{display:block;margin-top:22px}}

/* Celebria 5.1 — navegación visible y accesible en móvil/PWA */
@media(max-width:980px){.c3-nav{position:fixed;padding-top:max(10px,env(safe-area-inset-top));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));gap:10px}.c3-menu-toggle{flex:0 0 auto;min-height:39px;padding:8px 11px;display:flex;align-items:center;gap:8px;color:#fff;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.58);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.c3-menu-toggle i,.c3-menu-toggle i:before,.c3-menu-toggle i:after{display:block;width:17px;height:1px;background:currentColor;transition:.2s}.c3-menu-toggle i{position:relative}.c3-menu-toggle i:before,.c3-menu-toggle i:after{content:"";position:absolute;left:0}.c3-menu-toggle i:before{top:-5px}.c3-menu-toggle i:after{top:5px}.c3-nav.menu-open .c3-menu-toggle i{background:transparent}.c3-nav.menu-open .c3-menu-toggle i:before{top:0;transform:rotate(45deg)}.c3-nav.menu-open .c3-menu-toggle i:after{top:0;transform:rotate(-45deg)}.c3-nav nav{position:absolute;top:calc(100% + 8px);left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));max-height:calc(100dvh - 105px - env(safe-area-inset-bottom));margin:0;padding:12px;display:none;grid-template-columns:1fr;gap:0;overflow-y:auto;color:#fff;background:rgba(33,25,28,.97);border:1px solid rgba(255,255,255,.22);box-shadow:0 22px 55px rgba(20,12,15,.35);backdrop-filter:blur(18px)}.c3-nav nav.is-open{display:grid}.c3-nav nav a{padding:13px 12px;border-bottom:1px solid rgba(255,255,255,.14)}.c3-nav nav a:last-child{border-bottom:0}.c3-nav .audio-toggle{margin-left:auto;padding:9px 10px;white-space:nowrap}.c3-nav.with-demo-toolbar,.c3-nav.with-activation-notice{position:relative}}
@media(max-width:440px){.c3-nav .audio-toggle{max-width:118px;overflow:hidden;text-overflow:ellipsis}.c3-menu-toggle span{display:none}.c3-menu-toggle{padding:8px 10px}.c3-logo{flex:0 0 auto}}

/* Celebria 4.3 — secondary complete names, shared by all eighteen covers */
.c3-hero .c3-full-names{position:relative;margin:-3px 0 16px!important;color:inherit!important;font:600 12px/1.55 var(--sans)!important;letter-spacing:.08em!important;text-align:inherit;text-transform:uppercase!important;opacity:.76}.c3-full-names span,.c3-full-names i{display:inline!important}.c3-full-names i{margin:0 .65em;font-style:normal}
@media(max-width:680px){.c3-hero .c3-full-names{margin:0 0 15px!important;font-size:10px!important}.c3-full-names span{display:block!important}.c3-full-names i{display:none!important}}

/* Celebria 4.4 — venue, celebration and gift imagery plus companion names */
.location-grid article.has-location-image{overflow:hidden}.location-card-image{height:220px;margin:-52px -52px 34px;overflow:hidden;background:#deddd8}.location-card-image img{width:100%;height:100%;object-fit:cover;object-position:center}.c3-gifts{grid-template-columns:minmax(0,1fr) minmax(220px,360px)}.c3-gifts>figure{width:100%;height:330px;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.26);box-shadow:0 20px 55px rgba(0,0,0,.22)}.c3-gifts>figure img{width:100%;height:100%;object-fit:cover}.companion-name-fields{margin:-2px 0 18px;padding:15px 15px 2px;background:#f6f3ec;border-left:3px solid var(--accent)}.companion-name-fields:empty{display:none}.companion-name-fields label{display:block;margin-bottom:13px;font-size:11px;font-weight:700}.companion-name-fields input{width:100%;margin-top:6px;padding:12px;border:1px solid #d9d7d0;background:#fff}
@media(max-width:980px){.c3-gifts{grid-template-columns:1fr}.c3-gifts>figure{width:min(100%,520px);height:300px;justify-self:start}}
@media(max-width:680px){.location-card-image{height:190px;margin:-42px -25px 28px}.c3-gifts>figure{height:260px}}

/* Celebria 4.5 — individual requirements for every attendee */
.rsvp-person-title{margin:0 0 16px;padding-bottom:9px;color:var(--deep);border-bottom:1px solid #ddd8cf;font:600 22px var(--serif)}.companion-name-fields{padding:15px}.companion-requirement-card{padding:18px;background:#fff;border:1px solid #dcd7cc}.companion-requirement-card+.companion-requirement-card{margin-top:12px}.companion-requirement-card>strong{display:block;margin-bottom:14px;color:var(--deep);font:600 19px var(--serif)}.companion-options{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12px}.companion-requirement-card select{width:100%;margin-top:6px;padding:12px;border:1px solid #d9d7d0;background:#fff}.companion-requirement-card .companion-transport{min-height:44px;margin-bottom:13px;padding:10px;display:flex;align-items:center;gap:7px;background:#f1eee6}.companion-requirement-card .companion-transport input{width:auto;margin:0}
@media(max-width:680px){.companion-options{grid-template-columns:1fr}.companion-requirement-card .companion-transport{margin-top:-5px}}

/* Celebria 6.0 · nine complete interior art directions */
.family-coastal .c3-story{grid-template-columns:1.15fr .85fr;background:linear-gradient(135deg,var(--paper),#e8f1ef)}
.family-coastal .c3-story figure{border-radius:48% 48% 6px 6px;box-shadow:28px 28px 0 color-mix(in srgb,var(--accent) 18%,transparent)}
.family-coastal .location-grid article{border:0;border-radius:180px 180px 10px 10px;box-shadow:0 20px 60px rgba(30,68,73,.1)}
.family-coastal .c3-gallery figure:nth-child(3n+1){border-radius:160px 160px 0 0}

.family-night .c3-story,.family-night .c3-gallery{color:#eee;background:#11161d}
.family-night .c3-story p{color:#b9bfc2}.family-night .c3-story figure{box-shadow:0 28px 80px rgba(0,0,0,.45)}
.family-night .c3-locations{background:#191f25}.family-night .location-grid article{color:#eee;background:#101419;border-color:rgba(212,176,100,.34)}
.family-night .location-grid p{color:#b8bdc1}.family-night .c3-gallery>div{gap:4px}.family-night .c3-rsvp form{border-top:5px solid var(--accent)}

.family-editorial .c3-story{grid-template-columns:1.2fr .8fr;padding-left:11vw;padding-right:11vw;background:#fff}
.family-editorial .c3-story figure{height:680px}.family-editorial .c3-story>div:last-child{margin-left:-100px;padding:52px;background:var(--paper);box-shadow:0 30px 70px rgba(39,30,33,.12)}
.family-editorial .location-grid{gap:0}.family-editorial .location-grid article{text-align:left;border-right:0}.family-editorial .location-grid article:last-child{border-right:1px solid #d9d5cb}
.family-editorial .c3-gallery>div{grid-template-columns:1.25fr .75fr .75fr}.family-editorial .c3-gallery figure:first-child{grid-column:span 1}

.family-romantic .c3-story{position:relative;background:linear-gradient(145deg,#fff 0 52%,var(--soft) 52%)}
.family-romantic .c3-story:before{content:"❦";position:absolute;right:4vw;top:25px;color:color-mix(in srgb,var(--accent) 25%,transparent);font:120px var(--serif)}
.family-romantic .c3-story figure{border-radius:240px 240px 8px 8px}.family-romantic .location-grid article{border-radius:6px;box-shadow:0 18px 45px rgba(88,54,65,.08)}
.family-romantic .c3-gallery figure{border-radius:4px}.family-romantic .c3-rsvp form{border-radius:180px 180px 8px 8px;padding-top:90px}

.family-organic .c3-story{background:linear-gradient(135deg,var(--paper),var(--soft))}.family-organic .c3-story figure{border-radius:54% 46% 58% 42%/45% 55% 45% 55%}
.family-organic .location-grid article{border:0;background:var(--paper);border-radius:42% 58% 8px 8px/18% 18% 8px 8px}
.family-organic .c3-gallery figure:nth-child(2n){border-radius:48% 52% 6px 6px}.family-organic .c3-gifts>figure{border-radius:50% 50% 5px 5px}

.family-destination .c3-story{background:repeating-linear-gradient(90deg,var(--paper) 0,var(--paper) 31px,color-mix(in srgb,var(--accent) 12%,var(--paper)) 32px)}
.family-destination .c3-story>div:last-child{padding:48px;background:rgba(255,255,255,.92);border:1px dashed var(--accent)}
.family-destination .location-grid article{border:1px dashed var(--accent);text-align:left}.family-destination .location-grid article>b{border:1px solid var(--accent);border-radius:50%;padding:4px 8px}
.family-destination .c3-gallery figure{clip-path:polygon(0 5%,5% 5%,5% 0,95% 0,95% 5%,100% 5%,100% 95%,95% 95%,95% 100%,5% 100%,5% 95%,0 95%)}

.family-narrative .c3-story{background:linear-gradient(90deg,var(--paper) 0 12%,var(--accent) 12% 12.15%,var(--paper) 12.15%)}
.family-narrative .c3-story figure{transform:rotate(-2deg);border:13px solid #fff;border-bottom-width:55px;box-shadow:0 18px 48px rgba(55,42,34,.18)}
.family-narrative .location-grid{position:relative}.family-narrative .location-grid:before{content:"";position:absolute;left:50%;top:-30px;bottom:-30px;width:1px;background:var(--accent)}
.family-narrative .location-grid article{position:relative;z-index:1;background:var(--paper)}

.family-festival .c3-story{background:linear-gradient(145deg,#f4dc68 0 19%,#f2e4ef 19% 82%,#ee9e9b 82%)}
.family-festival .c3-story figure{transform:rotate(2deg);box-shadow:16px 16px 0 #171717}.family-festival .location-grid{gap:12px;transform:rotate(-1deg)}
.family-festival .location-grid article{border:3px solid #171717;box-shadow:9px 9px 0 #171717}.family-festival .c3-gallery figure{border:5px solid #171717}.family-festival .c3-video{background:#432a68}

.family-anniversary .c3-story{display:block;padding-left:0;padding-right:0;text-align:center;background:var(--paper)}
.family-anniversary .c3-story figure{width:100%;height:620px}.family-anniversary .c3-story>div:last-child{position:relative;width:min(780px,calc(100% - 40px));margin:-125px auto 0;padding:65px;background:#fff;box-shadow:0 30px 75px rgba(60,42,37,.14)}
.family-anniversary .c3-story>div:last-child>i{font-size:36px}.family-anniversary .location-grid article{border-radius:150px 150px 0 0}
.family-anniversary .c3-gallery>div{grid-auto-rows:285px}.family-anniversary .c3-rsvp form{border:1px solid var(--accent)}

/* User-controlled image focus, shared by every cover and interior */
.mediterranean-photo,.night-photo,.hero-cine:before,.classic-card figure,.hero-romantica>figure,.hero-monograma>figure,.hero-minimal>figure,.hero-editorial>figure,.hero-artdeco,.botanical-photo,.boho-main,.garden-window,.hero-costa>figure,.passport-photo,.hero-hacienda>figure,.hero-timeline>figure,.p-one,.festival-photo,.hero-anniversary-eternal>figure,.silver-anniversary-photo,.hero-golden-anniversary{background-position:var(--hero-position,center center)!important}
.boho-detail,.p-two,.c3-story figure{background-position:var(--detail-position,center center)!important}
.c3-gallery img{object-position:var(--detail-position,center center)}
.location-card-image img,.c3-gifts>figure img{object-position:var(--detail-position,center center)}

/* Discreet motion: enough life without turning the invitation into an effect */
@keyframes celebria-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes celebria-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.c3-hero>div:not(.film-bars),.c3-hero>figure,.c3-hero>span{animation:celebria-rise .85s both cubic-bezier(.2,.75,.25,1)}
.c3-hero>figure,.mediterranean-photo,.night-photo,.festival-photo{animation-name:celebria-rise,celebria-breathe;animation-duration:.85s,14s;animation-delay:0s,.9s;animation-iteration-count:1,infinite}
@media(prefers-reduced-motion:reduce){.c3-hero>div,.c3-hero>figure,.c3-hero>span,.mediterranean-photo,.night-photo,.festival-photo{animation:none!important}.c3-gallery img{transition:none}}
@media(max-width:980px){.family-editorial .c3-story>div:last-child{margin-left:-55px}.family-narrative .location-grid:before{display:none}}
@media(max-width:680px){.family-coastal .c3-story figure{box-shadow:12px 12px 0 color-mix(in srgb,var(--accent) 18%,transparent)}.family-editorial .c3-story>div:last-child{margin:0;padding:28px}.family-editorial .c3-story figure{height:430px}.family-romantic .c3-rsvp form{border-radius:90px 90px 8px 8px;padding-top:60px}.family-destination .c3-story>div:last-child{padding:28px}.family-narrative .c3-story{background:var(--paper)}.family-narrative .c3-story figure{border-width:9px;border-bottom-width:36px}.family-festival .c3-story figure{box-shadow:8px 8px 0 #171717}.family-festival .location-grid{transform:none}.family-anniversary .c3-story figure{height:430px}.family-anniversary .c3-story>div:last-child{margin:-65px auto 0;padding:36px 25px}.family-anniversary .c3-gallery>div{grid-auto-rows:190px}}
.c3-video-placeholder{background-image:linear-gradient(135deg,rgba(15,12,14,.72),rgba(45,31,36,.45)),var(--demo-detail,url('/assets/wedding-detail.png'));background-position:center,var(--detail-position,center);background-size:cover}
