/* InvitaSalón · Edición 3. Everything is scoped to .inv-edition-3: editions 1 and 2 keep their own stylesheets byte for byte.
   Zones never overlap: heading, photos, details and actions are grid areas. Artwork sits behind photos or at the edges. */
.inv-edition-3{--paper:color-mix(in srgb,var(--bg) 62%,#fff);--metal:color-mix(in srgb,var(--accent) 62%,var(--detail));--line:color-mix(in srgb,var(--ink) 20%,transparent);--soft:color-mix(in srgb,var(--ink) 74%,var(--bg));--display:Georgia,'Times New Roman',serif;--text:'Segoe UI','Helvetica Neue',Arial,sans-serif;--name-weight:400;--name-style:normal;--name-tracking:-.015em;--radius:4px;--shadow:0 18px 40px -26px color-mix(in srgb,var(--ink) 70%,transparent);font-family:var(--text)}
.inv-edition-3.category-boda{--display:'Bodoni 72','Bodoni MT',Didot,'Didot LT STD','Times New Roman',serif;--text:'Avenir Next','Segoe UI','Helvetica Neue',Arial,sans-serif}
.inv-edition-3.category-xv{--display:'Bodoni 72 Oldstyle','Bodoni MT',Didot,'Times New Roman',serif;--name-style:italic;--text:'Avenir Next','Segoe UI','Helvetica Neue',Arial,sans-serif;--radius:10px}
.inv-edition-3.category-bautizo{--display:Optima,Candara,'Segoe UI','Gill Sans',sans-serif;--text:Optima,Candara,'Segoe UI',sans-serif;--name-tracking:.005em;--radius:18px}
.inv-edition-3.category-comunion{--display:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;--text:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;--name-tracking:.01em}
.inv-edition-3.category-cumple{--display:Futura,'Century Gothic','Avenir Next','Trebuchet MS',sans-serif;--text:'Century Gothic','Avenir Next','Segoe UI',sans-serif;--name-weight:700;--name-tracking:-.035em;--radius:14px}
.inv-edition-3.category-convivio{--display:Rockwell,'Rockwell Nova','Roboto Slab',Cambria,Georgia,serif;--text:'Segoe UI','Helvetica Neue',Arial,sans-serif;--name-weight:700;--name-tracking:-.02em;--radius:6px}
/* Artwork colours come from the palette. */
.inv-edition-3 .f-a{fill:var(--accent)}.inv-edition-3 .f-d{fill:var(--detail)}.inv-edition-3 .f-i{fill:var(--ink)}.inv-edition-3 .f-p{fill:var(--paper)}.inv-edition-3 .f-m{fill:var(--metal)}.inv-edition-3 .f-tint{fill:color-mix(in srgb,var(--detail) 36%,var(--paper))}
.inv-edition-3 svg .s-a{stroke:var(--accent);fill:none}.inv-edition-3 svg .s-d{stroke:var(--detail);fill:none}.inv-edition-3 svg .s-i{stroke:var(--ink);fill:none}.inv-edition-3 svg .s-p{stroke:var(--paper);fill:none}.inv-edition-3 svg .s-m{stroke:var(--metal);fill:none}
/* Hero and zones */
.inv-edition-3 .e3-hero{min-height:0;padding:clamp(44px,8cqi,96px) clamp(22px,7cqi,104px) clamp(40px,6cqi,80px);display:flex;flex-direction:column;justify-content:center;font-family:var(--text)}
.inv-edition-3 .e3-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;display:grid;place-items:center;overflow:hidden}
.inv-edition-3 .e3-backdrop svg{width:max(100%,640px);height:auto;max-width:none;opacity:.28}
.inv-edition-3 .e3-accents{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.inv-edition-3 .e3-accents svg{position:absolute;width:clamp(150px,30cqi,340px);height:auto;right:-7%;bottom:-6%;opacity:.55}
.inv-edition-3 .e3-stage{position:relative;z-index:2;display:grid;gap:clamp(20px,3.6cqi,38px);grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "photos" "details" "actions";width:min(100%,1180px);margin:0 auto;align-items:start}
.inv-edition-3 .e3-head{grid-area:head;min-width:0}
.inv-edition-3 .e3-photos{grid-area:photos;position:relative;display:grid;gap:clamp(10px,1.8cqi,18px);width:min(100%,var(--photos-max,520px));margin-inline:auto;align-items:start;min-width:0}
.inv-edition-3 .e3-details{grid-area:details;min-width:0}
.inv-edition-3 .opening-actions{grid-area:actions;margin:0;z-index:3}
.inv-edition-3 .inv-open{background:var(--ink);color:var(--bg);border-color:var(--ink);border-radius:999px;padding:15px 30px;font-size:14px;letter-spacing:.01em}
.inv-edition-3 .opening-actions>a{font-size:13px}
/* Type */
.inv-edition-3 .e3-occasion{font-size:clamp(15px,1.8cqi,20px);letter-spacing:.015em;color:var(--soft);margin:0 0 .5em}
.inv-edition-3 .e3-names{font-family:var(--display);font-weight:var(--name-weight);font-style:var(--name-style);font-size:clamp(44px,8.6cqi,116px);line-height:.98;letter-spacing:var(--name-tracking);margin:0;overflow-wrap:anywhere;hyphens:manual;text-wrap:balance;color:var(--ink)}
.inv-edition-3 .e3-names.is-long{font-size:clamp(36px,6.4cqi,86px);line-height:1.02}
.inv-edition-3 .e3-names.is-xlong{font-size:clamp(28px,4.7cqi,62px);line-height:1.06}
.inv-edition-3 .e3-amp{font-style:italic;font-weight:400;color:var(--accent);font-size:.74em;padding:0 .06em}
.inv-edition-3 .e3-age{display:flex;align-items:baseline;gap:.35em;margin:.35em 0 0;font-size:clamp(16px,2cqi,22px);color:var(--soft)}
.inv-edition-3 .e3-age b{font-family:var(--display);font-size:clamp(56px,10cqi,132px);line-height:.85;color:var(--accent);letter-spacing:-.04em}
.inv-edition-3 .e3-rule{display:block;width:76px;height:2px;background:var(--accent);margin:0 0 18px;border-radius:2px}
.inv-edition-3 .e3-when{font-size:clamp(16px,1.9cqi,21px);line-height:1.55;margin:0}
.inv-edition-3 .e3-when time>span,.inv-edition-3 .e3-time{white-space:nowrap}
.inv-edition-3 .e3-day{font-family:var(--display);font-size:1.75em;line-height:1;color:var(--accent);vertical-align:-.1em;padding:0 .04em}
.inv-edition-3 .e3-time{display:block;color:var(--soft);font-size:.92em}
.inv-edition-3 .e3-place{font-family:var(--display);font-style:italic;font-size:clamp(17px,2.1cqi,23px);margin:.55em 0 0;overflow-wrap:anywhere;text-wrap:balance}
.inv-edition-3.category-cumple .e3-place,.inv-edition-3.category-convivio .e3-place{font-style:normal}
/* Photo frames: the image keeps its ratio (cover or contain) and the focal point is centred by the viewer. */
.inv-edition-3 .e3-frame{position:relative;z-index:1;width:100%;aspect-ratio:4/5;border-radius:var(--radius);background:color-mix(in srgb,var(--paper) 86%,var(--accent));box-shadow:0 0 0 1px var(--line),var(--shadow);overflow:hidden}
.inv-edition-3 .e3-frame .event-photo{inset:var(--mat,0px);width:calc(100% - var(--mat,0px)*2);height:calc(100% - var(--mat,0px) - var(--mat-b,var(--mat,0px)));border-radius:inherit}
.inv-edition-3 .e3-frame[data-fit=contain]{background:color-mix(in srgb,var(--paper) 70%,var(--detail))}
.inv-edition-3 .e3-frame .photo-fallback{background:color-mix(in srgb,var(--paper) 80%,var(--detail))}
.inv-edition-3 .e3-frame .photo-fallback svg{inset:12%;width:76%;height:76%;opacity:.9}
.inv-edition-3 .arr-solo .e3-frame{max-width:var(--solo-max,460px);margin-inline:auto}
.inv-edition-3 .arr-solo .e3-frame[data-orient=landscape]{aspect-ratio:5/4;--solo-max:620px}
.inv-edition-3 .arr-solo .e3-frame[data-orient=panorama]{aspect-ratio:3/2;--solo-max:760px}
.inv-edition-3 .arr-solo .e3-frame[data-orient=square]{aspect-ratio:1}
.inv-edition-3 .frame-rect{border-radius:3px}
.inv-edition-3 .frame-round{border-radius:clamp(20px,5cqi,44px)}
.inv-edition-3 .frame-arch{border-radius:999px 999px var(--radius) var(--radius)}
.inv-edition-3 .arr-solo .frame-arch[data-orient=landscape],.inv-edition-3 .arr-solo .frame-arch[data-orient=panorama]{aspect-ratio:1}
.inv-edition-3 .frame-lancet{border-radius:50% 50% 3px 3px/30% 30% 3px 3px}
.inv-edition-3 .frame-oval{border-radius:50%}
.inv-edition-3 .frame-circle{border-radius:50%;aspect-ratio:1!important}
.inv-edition-3 .frame-print,.inv-edition-3 .frame-stamp,.inv-edition-3 .frame-deckle{--mat:clamp(8px,1.8cqi,14px);background:#fffdf8;border-radius:2px}
.inv-edition-3 .frame-print{--mat-b:clamp(26px,5cqi,46px)}
.inv-edition-3 .frame-print:is(.slot-1,.slot-2){--mat:clamp(6px,1.2cqi,10px);--mat-b:clamp(16px,3cqi,30px)}
.inv-edition-3 .frame-stamp{outline:2px dashed color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:-6px;--mat:clamp(12px,2.4cqi,18px)}
.inv-edition-3 .frame-deckle{border-radius:3px 9px 4px 11px/9px 3px 11px 4px;box-shadow:0 1px 0 var(--line),var(--shadow)}
/* Photo distributions. Narrow invitations stack instead of shrinking photos into thumbnails. */
.inv-edition-3 .arr-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.inv-edition-3 .arr-stagger{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:end}
.inv-edition-3 .arr-stagger .slot-1{aspect-ratio:1}
.inv-edition-3 .arr-stack{grid-template-columns:minmax(0,1fr)}
.inv-edition-3 .arr-stack .slot-0{width:88%}.inv-edition-3 .arr-stack .slot-1{width:80%;justify-self:end;aspect-ratio:5/4}
.inv-edition-3 .arr-trio-l{grid-template-columns:minmax(0,2fr) minmax(0,1fr);--photos-max:640px}
.inv-edition-3 .arr-trio-l .slot-0{grid-row:1/span 2;aspect-ratio:auto;height:100%;min-height:0}
.inv-edition-3 .arr-trio-l .slot-1,.inv-edition-3 .arr-trio-l .slot-2{aspect-ratio:1}
.inv-edition-3 .arr-triptych{grid-template-columns:repeat(3,minmax(0,1fr));--photos-max:760px}
.inv-edition-3 .arr-triptych .e3-frame{aspect-ratio:3/4}
.inv-edition-3 .arr-mosaic{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);--photos-max:620px}
.inv-edition-3 .arr-mosaic .slot-0{grid-row:1/span 2;aspect-ratio:auto;height:100%;min-height:0}
.inv-edition-3 .arr-mosaic .slot-1,.inv-edition-3 .arr-mosaic .slot-2{aspect-ratio:4/3}
.inv-edition-3 .arr-strip{grid-template-columns:minmax(0,1fr);width:min(100%,320px);padding:12px 12px 40px;background:#fffdf8;border-radius:3px;box-shadow:0 0 0 1px var(--line),var(--shadow);gap:10px;--photos-max:320px}
.inv-edition-3 .arr-strip .e3-frame{aspect-ratio:4/3;box-shadow:none;border-radius:2px}
.inv-edition-3 .arr-satellites{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,1fr);align-items:center;--photos-max:720px}
.inv-edition-3 .arr-satellites .slot-0{grid-column:2;grid-row:1}.inv-edition-3 .arr-satellites .slot-1{grid-column:1;grid-row:1}.inv-edition-3 .arr-satellites .slot-2{grid-column:3;grid-row:1}
.inv-edition-3 .arr-arcade{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);align-items:end;--photos-max:760px}
.inv-edition-3 .arr-arcade .slot-0{grid-column:2;grid-row:1}.inv-edition-3 .arr-arcade .slot-1{grid-column:1;grid-row:1}.inv-edition-3 .arr-arcade .slot-2{grid-column:3;grid-row:1}
.inv-edition-3 .arr-arcade .e3-frame{aspect-ratio:3/4}
.inv-edition-3 .arr-line{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));padding-top:26px;--photos-max:780px}
.inv-edition-3 .arr-line.count-2{--cols:2;--photos-max:560px}
.inv-edition-3 .arr-line::before{content:"";position:absolute;left:-4%;right:-4%;top:6px;height:24px;border-top:2px solid color-mix(in srgb,var(--ink) 45%,transparent);border-radius:50%/100% 100% 0 0;z-index:0}
.inv-edition-3 .arr-line .e3-frame{overflow:visible;aspect-ratio:4/5}
.inv-edition-3 .arr-line .e3-frame::after{content:"";position:absolute;z-index:3;top:-14px;left:50%;width:12px;height:26px;margin-left:-6px;border-radius:3px;background:var(--detail);box-shadow:0 0 0 1px var(--line)}
.inv-edition-3 .arr-line .slot-0{rotate:-2deg}.inv-edition-3 .arr-line .slot-1{rotate:1.6deg}.inv-edition-3 .arr-line .slot-2{rotate:-1deg}
.inv-edition-3 .arr-line .e3-frame .event-photo,.inv-edition-3 .arr-line .e3-frame .photo-fallback{border-radius:2px}
@container (max-width:559px){
 .inv-edition-3 .arr-trio-l,.inv-edition-3 .arr-triptych,.inv-edition-3 .arr-satellites,.inv-edition-3 .arr-arcade,.inv-edition-3 .arr-line{grid-template-columns:repeat(2,minmax(0,1fr))}
 .inv-edition-3 .arr-trio-l .slot-0{grid-column:1/-1;grid-row:auto;aspect-ratio:4/5;height:auto}
 .inv-edition-3 .arr-triptych .slot-0{grid-column:1/-1;aspect-ratio:4/3}
 .inv-edition-3 .arr-satellites .slot-0,.inv-edition-3 .arr-arcade .slot-0{grid-column:1/-1;grid-row:1;width:84%;justify-self:center}
 .inv-edition-3 .arr-satellites .slot-1,.inv-edition-3 .arr-arcade .slot-1{grid-column:1;grid-row:2}.inv-edition-3 .arr-satellites .slot-2,.inv-edition-3 .arr-arcade .slot-2{grid-column:2;grid-row:2}
 .inv-edition-3 .arr-line.count-3 .slot-0{grid-column:1/-1;width:78%;justify-self:center}
 .inv-edition-3 .arr-line{row-gap:34px}
}
@container (max-width:459px){
 .inv-edition-3 .arr-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}
 .inv-edition-3 .arr-mosaic .slot-0{grid-column:1/-1;grid-row:auto;aspect-ratio:1;height:auto}
 .inv-edition-3 .arr-mosaic .slot-1,.inv-edition-3 .arr-mosaic .slot-2{aspect-ratio:4/5}
}
@container (max-width:419px){
 .inv-edition-3 .arr-stagger{grid-template-columns:minmax(0,1fr)}
 .inv-edition-3 .arr-stagger .slot-1{width:80%;justify-self:end;aspect-ratio:5/4}
}
@container (max-width:379px){
 .inv-edition-3 .arr-pair{grid-template-columns:minmax(0,1fr)}
 .inv-edition-3 .arr-pair .slot-1{width:84%;justify-self:end;aspect-ratio:5/4}
 .inv-edition-3 .arr-pair .frame-circle.slot-1{width:72%}
}
@container (min-width:760px){
 .inv-edition-3 .arr-strip{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,780px);--photos-max:780px}
}
/* Without photos: an animated scene of the occasion (default) or a still monogram keeps the composition complete. */
.inv-edition-3 .e3-emblem{position:relative;z-index:1;width:min(100%,var(--emblem-max,380px));aspect-ratio:1;margin-inline:auto;display:grid;place-items:center}
.inv-edition-3 .e3-emblem-art{position:absolute;inset:0;width:100%;height:100%}
.inv-edition-3 .e3-emblem-scene .e3-monogram{position:absolute;bottom:-2%;left:50%;translate:-50% 0;font-size:clamp(22px,4.2cqi,34px);padding:.18em .7em;background:var(--paper);box-shadow:0 0 0 1px var(--line),var(--shadow)}
.inv-edition-3 .e3-emblem-monogram{border-radius:50%;box-shadow:inset 0 0 0 2px var(--accent),inset 0 0 0 9px var(--paper),inset 0 0 0 10px var(--line);background:color-mix(in srgb,var(--paper) 78%,var(--detail));width:min(100%,300px)}
.inv-edition-3 .e3-monogram{position:relative;font-family:var(--display);font-style:var(--name-style);font-size:clamp(54px,12cqi,120px);line-height:1;color:var(--ink);letter-spacing:-.04em;border-radius:999px;white-space:nowrap}
.inv-edition-3 .e3-sk-band .e3-emblem,.inv-edition-3 .e3-sk-cover .e3-emblem{--emblem-max:420px}
.inv-edition-3 .e3-emblem-signature{aspect-ratio:auto;--emblem-max:440px}
.inv-edition-3 .e3-emblem-signature .e3-emblem-art{position:static;height:auto}
/* Skeletons */
.inv-edition-3 .e3-sk-frame,.inv-edition-3 .e3-sk-band{text-align:center}
.inv-edition-3 .e3-sk-frame .e3-rule,.inv-edition-3 .e3-sk-band .e3-rule{margin-inline:auto}
.inv-edition-3 .e3-sk-frame .opening-actions,.inv-edition-3 .e3-sk-band .opening-actions{align-items:center}
.inv-edition-3 .e3-sk-frame .e3-age,.inv-edition-3 .e3-sk-band .e3-age{justify-content:center}
.inv-edition-3 .e3-sk-cover .e3-stage,.inv-edition-3 .e3-sk-band .e3-stage{grid-template-areas:"photos" "head" "details" "actions"}
.inv-edition-3 .e3-sk-band .e3-photos{--photos-max:1080px}
.inv-edition-3 .e3-sk-band .arr-solo .e3-frame{aspect-ratio:3/2;--solo-max:1080px}
@container (min-width:760px){
 .inv-edition-3 .e3-sk-side-left:is([data-photos="0"],[data-photos="1"]) .e3-stage{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);grid-template-areas:"photos head" "photos details" "photos actions";grid-template-rows:auto auto 1fr;column-gap:clamp(40px,6cqi,100px);align-items:start}
 .inv-edition-3 .e3-sk-side-right:is([data-photos="0"],[data-photos="1"]) .e3-stage{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"head photos" "details photos" "actions photos";grid-template-rows:auto auto 1fr;column-gap:clamp(40px,6cqi,100px);align-items:start}
 .inv-edition-3 .e3-sk-side-left:is([data-photos="0"],[data-photos="1"]) .e3-head,.inv-edition-3 .e3-sk-side-right:is([data-photos="0"],[data-photos="1"]) .e3-head{align-self:end;padding-top:clamp(20px,5cqi,72px)}
 .inv-edition-3 .e3-sk-side-left:is([data-photos="0"],[data-photos="1"]) .e3-photos,.inv-edition-3 .e3-sk-side-right:is([data-photos="0"],[data-photos="1"]) .e3-photos{--photos-max:100%;align-self:center}
 .inv-edition-3 .e3-sk-cover .e3-stage{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-areas:"photos photos" "head details" "actions details";column-gap:clamp(36px,5cqi,80px)}
 .inv-edition-3 .e3-sk-cover .e3-photos{--photos-max:820px}
 .inv-edition-3 .e3-sk-cover .e3-details{align-self:end;padding-bottom:6px}
 .inv-edition-3 .e3-sk-frame .e3-photos{--photos-max:660px}
 .inv-edition-3 .e3-family-sobre .e3-photos,.inv-edition-3 .e3-family-estuche .e3-photos{--photos-max:760px}
}
/* Two or three photos get room of their own, whatever the cap of the family for a single photo. */
.inv-edition-3 .e3-hero .e3-photos.count-2{--photos-max:640px}
.inv-edition-3 .e3-hero .e3-photos.count-3{--photos-max:760px}
/* Narrow invitations: thinner margins and mats around collages, so secondary photos stay legible. */
@container (max-width:399px){
 .inv-edition-3 .e3-photos.count-2,.inv-edition-3 .e3-photos.count-3{padding-left:3%!important;padding-right:3%!important}
 .inv-edition-3 .count-3 .frame-print:is(.slot-1,.slot-2),.inv-edition-3 .count-3 .frame-deckle:is(.slot-1,.slot-2),.inv-edition-3 .count-3 .frame-stamp:is(.slot-1,.slot-2){--mat:5px;--mat-b:12px}
 .inv-edition-3 .arr-mosaic .slot-1,.inv-edition-3 .arr-mosaic .slot-2,.inv-edition-3 .arr-trio-l .slot-1,.inv-edition-3 .arr-trio-l .slot-2{aspect-ratio:4/5}
}
/* Families: the object of each composition frames the photos from behind. */
.inv-edition-3 .e3-object{position:absolute;inset:-5%;z-index:0;pointer-events:none}
.inv-edition-3 .e3-object>*{position:absolute}
.inv-edition-3 .e3-object-art{inset:0;width:100%;height:100%}
.inv-edition-3 .e3-lining{inset:0;width:100%;height:100%;opacity:.5}
.inv-edition-3 .e3-wreath{inset:-14%;width:128%;height:128%;opacity:.9}
.inv-edition-3 .e3-family-portada .e3-names{font-size:clamp(48px,10.4cqi,136px);line-height:.94}
.inv-edition-3 .e3-family-portada .e3-names.is-long{font-size:clamp(38px,7.4cqi,98px)}
.inv-edition-3 .e3-family-portada .e3-names.is-xlong{font-size:clamp(30px,5.2cqi,68px)}
.inv-edition-3 .e3-family-portada .e3-object{inset:-14px}
.inv-edition-3 .e3-v-magazine .e3-occasion{font-family:var(--display);font-size:clamp(26px,4.6cqi,56px);color:var(--accent);border-bottom:2px solid var(--ink);padding-bottom:.18em;margin-bottom:.4em}
.inv-edition-3 .e3-v-minimal .e3-photos{--photos-max:380px}
.inv-edition-3 .e3-v-minimal .e3-names{font-weight:400}
.inv-edition-3 .e3-family-jardin .e3-photos{--photos-max:460px;padding:6%}
.inv-edition-3 .e3-family-jardin .e3-object{inset:0}
.inv-edition-3 .e3-v-botanical .e3-frame::before,.inv-edition-3 .e3-v-botanical .e3-frame::after{content:"";position:absolute;z-index:3;width:28%;height:12%;background:color-mix(in srgb,var(--detail) 55%,transparent);rotate:-38deg;top:-3%;left:-9%}
.inv-edition-3 .e3-v-botanical .e3-frame::after{rotate:38deg;left:auto;right:-9%}
.inv-edition-3 .e3-v-botanical .e3-frame{overflow:visible}.inv-edition-3 .e3-v-botanical .e3-frame .event-photo,.inv-edition-3 .e3-v-botanical .e3-frame .photo-fallback{overflow:hidden}
.inv-edition-3 .e3-family-escena{background:linear-gradient(color-mix(in srgb,var(--bg) 88%,var(--ink)),var(--bg) 70%)}
.inv-edition-3 .e3-family-escena .e3-object{inset:-8% -16% -4%}
.inv-edition-3 .e3-curtain{top:0;bottom:0;width:22%;background:repeating-linear-gradient(90deg,var(--accent) 0 9px,color-mix(in srgb,var(--accent) 72%,var(--ink)) 9px 18px);border-radius:0 0 40% 0;opacity:.92}
.inv-edition-3 .e3-curtain-left{left:0;transform-origin:left}.inv-edition-3 .e3-curtain-right{right:0;transform-origin:right;border-radius:0 0 0 40%}
.inv-edition-3 .e3-valance{left:0;right:0;top:0;height:9%;background:radial-gradient(circle at 50% 0,var(--detail) 0 60%,transparent 61%) 0 0/48px 100% repeat-x;opacity:.95}
.inv-edition-3 .e3-family-escena .e3-photos{--photos-max:700px}
.inv-edition-3 .e3-family-escena .arr-solo,.inv-edition-3 .e3-family-escena .arr-pair{padding:6% 11% 0}
.inv-edition-3 .e3-family-arco .e3-object{inset:-7% -6% -3%}
.inv-edition-3 .e3-family-arco .e3-photos{padding-top:6%}
.inv-edition-3 .e3-family-sobre .e3-photos{padding:8% 7% 9%}
.inv-edition-3 .e3-family-sobre .e3-object{inset:0}
.inv-edition-3 .e3-envelope-back{inset:0;background:color-mix(in srgb,var(--paper) 80%,var(--detail));border-radius:6px;box-shadow:var(--shadow)}
.inv-edition-3 .e3-envelope-flap{left:0;right:0;top:0;height:42%;background:color-mix(in srgb,var(--paper) 60%,var(--accent));clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;opacity:.85}
.inv-edition-3 .e3-family-sobre .e3-lining{opacity:.35;border-radius:6px}
.inv-edition-3 .e3-family-deco .e3-photos{padding:7%}
.inv-edition-3 .e3-family-deco .e3-object{inset:0}
.inv-edition-3 .e3-v-striped{background:repeating-linear-gradient(-12deg,var(--bg) 0 34px,color-mix(in srgb,var(--bg) 88%,var(--accent)) 34px 52px)}
.inv-edition-3 .e3-v-tiles .e3-object{inset:-6%}
.inv-edition-3 .e3-v-tiles .e3-lining{opacity:.32}
.inv-edition-3 .e3-family-horizonte .e3-object{inset:auto -10% -10% -10%;height:70%}
.inv-edition-3 .e3-family-horizonte .e3-photos{--photos-max:760px}
.inv-edition-3 .e3-v-timeline .e3-object{inset:0}
.inv-edition-3 .e3-track{left:50%;top:-6%;bottom:-6%;width:2px;background:var(--accent);opacity:.6}
.inv-edition-3 .e3-family-medallon .e3-object{inset:-8%}
.inv-edition-3 .e3-family-medallon .arr-solo{--photos-max:440px}
.inv-edition-3 .e3-family-album .e3-object{inset:-4%}
.inv-edition-3 .e3-page{top:0;bottom:0;width:52%;background:#fffdf8;box-shadow:var(--shadow)}
.inv-edition-3 .e3-page-left{left:-1%;rotate:-1.6deg}.inv-edition-3 .e3-page-right{right:-1%;rotate:1.4deg}
.inv-edition-3 .e3-v-book .e3-photos{padding:7% 6%}
.inv-edition-3 .e3-rod{left:-6%;right:-6%;height:16px;border-radius:8px;background:var(--metal)}.inv-edition-3 .e3-rod-top{top:-2%}.inv-edition-3 .e3-rod-bottom{bottom:-2%}
.inv-edition-3 .e3-v-scroll .e3-photos{padding:8% 5%}
.inv-edition-3 .e3-picture-light{left:20%;right:20%;top:-6%;height:18px;border-radius:0 0 12px 12px;background:var(--metal);box-shadow:0 30px 60px 10px color-mix(in srgb,var(--paper) 55%,transparent)}
.inv-edition-3 .e3-v-gallery .e3-frame{--mat:clamp(14px,3cqi,26px);--mat-b:clamp(14px,3cqi,26px)}
.inv-edition-3 .e3-burst{inset:-10%;border-radius:50%;background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--accent) 22%,transparent) 0 8deg,transparent 8deg 16deg);opacity:.75}
.inv-edition-3 .e3-family-cartel .e3-names{font-size:clamp(50px,11cqi,142px);line-height:.92}
.inv-edition-3 .e3-family-cartel .e3-names.is-long{font-size:clamp(40px,8cqi,104px)}
.inv-edition-3 .e3-family-cartel .e3-names.is-xlong{font-size:clamp(30px,5.4cqi,70px)}
.inv-edition-3 .e3-pane{width:70%;height:76%;border-radius:18px;background:color-mix(in srgb,var(--paper) 40%,transparent);box-shadow:0 0 0 1px var(--line)}
.inv-edition-3 .e3-pane-one{left:-6%;top:-4%}.inv-edition-3 .e3-pane-two{right:-6%;bottom:-4%;background:color-mix(in srgb,var(--accent) 16%,transparent)}
.inv-edition-3 .e3-family-estuche .e3-photos{padding:6%}
.inv-edition-3 .e3-family-estuche .e3-object{inset:0}
.inv-edition-3 .e3-case-lid{inset:-3% -3% auto;height:14%;border-radius:10px 10px 4px 4px;background:color-mix(in srgb,var(--accent) 80%,var(--ink));box-shadow:var(--shadow);transform-origin:top}
.inv-edition-3 .e3-v-case .e3-object::before,.inv-edition-3 .e3-v-jewel .e3-object::before{content:"";position:absolute;inset:6% -3% -3%;border-radius:10px;background:color-mix(in srgb,var(--paper) 72%,var(--detail));box-shadow:inset 0 0 0 1px var(--line)}
.inv-edition-3 .e3-hinge{top:4%;bottom:4%;width:3px;background:var(--metal);opacity:.8}.inv-edition-3 .e3-hinge-left{left:33%}.inv-edition-3 .e3-hinge-right{right:33%}
.inv-edition-3 .e3-v-screen .e3-lining{opacity:.22}
.inv-edition-3 .e3-mobile-bar{left:6%;right:6%;top:0;height:5px;border-radius:3px;background:var(--metal)}
.inv-edition-3 .e3-v-mobile .e3-photos{padding-top:9%}
.inv-edition-3 .e3-portal{inset:calc(var(--i)*4%);border:2px solid color-mix(in srgb,var(--accent) calc(70% - var(--i)*14%),transparent);border-radius:999px 999px 8px 8px}
.inv-edition-3 .e3-drape{top:-4%;bottom:-2%;width:20%;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 80%,var(--ink)),color-mix(in srgb,var(--accent) 50%,var(--paper)));opacity:.8;border-radius:0 0 60% 0}
.inv-edition-3 .e3-drape-left{left:-10%;transform-origin:left}.inv-edition-3 .e3-drape-right{right:-10%;transform-origin:right;border-radius:0 0 0 60%;background:linear-gradient(270deg,color-mix(in srgb,var(--accent) 80%,var(--ink)),color-mix(in srgb,var(--accent) 50%,var(--paper)))}
.inv-edition-3 .e3-v-silk .e3-photos{padding:6% 12%}
/* Signature designs (34–35): their scene has a zone of its own, behind the whole hero or behind the photos; never on them. */
.inv-edition-3 .e3-family-firma .e3-stage{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "scene" "photos" "details" "actions"}
.inv-edition-3 .e3-scene{grid-area:scene;position:relative;width:min(100%,var(--scene-max,360px));margin:-4px auto -6px;pointer-events:none}
.inv-edition-3 .e3-scene svg{display:block;width:100%;height:auto}
.inv-edition-3 .e3-scene-hero svg{inset:0;width:100%;height:100%;right:auto;bottom:auto;opacity:.75}
.inv-edition-3 .e3-behind{inset:0;width:100%;height:100%}
.inv-edition-3 .e3-v-anillos{--scene-max:250px}
.inv-edition-3 .e3-v-anillos .e3-frame{box-shadow:0 0 0 4px var(--paper),0 0 0 7px var(--metal),var(--shadow)}
.inv-edition-3 .e3-v-anillos .e3-scene-hero svg{opacity:.35}
.inv-edition-3 .e3-v-carta{--scene-max:96px}
.inv-edition-3 .e3-v-carta .e3-stage,.inv-edition-3 .e3-v-pastel .e3-stage{grid-template-areas:"head" "photos" "scene" "details" "actions"}
.inv-edition-3 .e3-v-carta .e3-scene{margin-top:-48px}
.inv-edition-3 .e3-v-carta .e3-photos{padding:7% 6% 12%;background:color-mix(in srgb,var(--paper) 86%,var(--detail));border-radius:6px;box-shadow:var(--shadow)}
.inv-edition-3 .e3-v-carta .e3-scene-hero svg{opacity:.35}
.inv-edition-3 .e3-v-medianoche{--scene-max:240px;background:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--detail) 34%,var(--bg)),var(--bg) 64%)}
.inv-edition-3 .e3-v-mariposas .e3-frame{box-shadow:0 0 0 6px color-mix(in srgb,var(--paper) 80%,transparent),0 0 0 7px var(--accent),var(--shadow)}
.inv-edition-3 .e3-v-mariposas .e3-scene-hero svg,.inv-edition-3 .e3-v-nubes .e3-scene-hero svg{opacity:.9}
.inv-edition-3 .e3-v-pila{--scene-max:230px}
.inv-edition-3 .e3-v-pila .e3-object,.inv-edition-3 .e3-v-vitral .e3-object{inset:-16%}
.inv-edition-3 .e3-v-pila .e3-frame{box-shadow:0 0 0 8px color-mix(in srgb,var(--paper) 70%,transparent),0 0 0 9px var(--accent),var(--shadow)}
.inv-edition-3 .e3-v-vitral{--scene-max:64px}
.inv-edition-3 .e3-v-vitral .e3-photos{--photos-max:420px}
.inv-edition-3 .e3-v-vitral .e3-behind{opacity:.55}
.inv-edition-3 .e3-v-vitral .e3-frame{box-shadow:0 0 0 5px var(--metal),0 0 0 9px var(--paper),var(--shadow)}
.inv-edition-3 .e3-v-olivo{--scene-max:440px}
.inv-edition-3 .e3-v-olivo .e3-scene-hero svg{opacity:.45}
.inv-edition-3 .e3-v-pastel{--scene-max:260px}
.inv-edition-3 .e3-v-globos{--scene-max:400px}
.inv-edition-3 .e3-v-globos .e3-scene-hero svg{opacity:.5}
.inv-edition-3 .e3-v-mesa{--scene-max:440px}
.inv-edition-3 .e3-v-verbena{--scene-max:620px;padding-top:clamp(88px,15cqi,150px)}
.inv-edition-3 .e3-v-verbena .e3-scene-hero svg{inset:0 0 auto 0;height:clamp(60px,12cqi,130px);opacity:1}
.inv-edition-3 .e3-v-verbena .e3-bulb ellipse{filter:drop-shadow(0 0 6px var(--accent))}
@container (min-width:760px){
 .inv-edition-3 .e3-v-olivo.e3-sk-side-left:is([data-photos="0"],[data-photos="1"]) .e3-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"photos head" "photos scene" "photos details" "photos actions"}
 .inv-edition-3 .e3-v-olivo .e3-scene{margin-inline:0}
}
/* Animated SVG pieces turn around their own box (WAAPI transforms replace no positioning attribute). */
.inv-edition-3 :is(.e3-scene,.e3-scene-hero,.e3-emblem,.e3-object) :is(g,path,circle,ellipse){transform-box:fill-box;transform-origin:center}
.inv-edition-3 .e3-clock-hand{transform-origin:50% 100%!important}
.inv-edition-3 .e3-flag{transform-origin:50% 0!important}
.inv-edition-3 .e3-drop{transform-origin:50% 100%!important}
/* Openings: particles are hidden at rest; the viewer releases them once. */
.inv-edition-3 .e3-particles{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.inv-edition-3 .e3-particles svg{position:absolute;width:clamp(10px,1.6cqi,16px);height:auto;opacity:0}
@media (prefers-reduced-motion:reduce){.inv-edition-3 .e3-particles{display:none}}
