@font-face{font-family:Instrument;src:url(../fonts/instrument-serif-latin-400-normal.woff2) format('woff2');font-display:swap}@font-face{font-family:Manrope;src:url(../fonts/manrope-variable.woff2) format('woff2');font-weight:400 800;font-display:swap}
:root{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}html{background:#f7f1e5}body{margin:0;background:var(--crema);color:var(--tinta);font:500 16px/1.58 Manrope,Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.05}h1,h2,h3,em{font-family:Instrument,Georgia,serif;font-weight:400}em{font-style:italic;color:var(--terracota)}h2{font-size:clamp(3.2rem,7vw,7rem);letter-spacing:-.035em}.micro,.eyebrow{font:800 .68rem/1.4 Manrope,sans-serif;letter-spacing:.17em;text-transform:uppercase}.skip{position:fixed;z-index:100;top:-60px;left:10px;padding:10px;background:white}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--terracota);outline-offset:4px}.boton{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 24px;text-decoration:none;border:1px solid transparent;border-radius:2px;font-weight:800;line-height:1.2;text-align:center;transition:transform .2s,background .2s}.boton:hover{transform:translateY(-2px)}.boton--rojo{background:var(--terracota);color:#fff}.boton--verde{background:var(--verde);color:#fff}.enlace{border:0;background:none;font-weight:800;text-decoration:underline;text-underline-offset:5px}.bloque{padding:clamp(70px,10vw,150px) max(22px,calc((100vw - 1240px)/2))}
.apertura{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--crema);overflow:hidden}.apertura__fondo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(247,241,229,.16),rgba(53,92,73,.16)),url(../img/mesa.webp) center 55%/cover}.apertura__centro{position:relative;width:min(88vw,470px);padding:38px 25px 32px;text-align:center;background:var(--papel);box-shadow:0 22px 80px #1d2e2360}.apertura__centro h2{font-size:clamp(2.3rem,5vw,4.3rem);margin:8px 0 8px}.apertura__centro p:not(.micro){max-width:31ch;margin:0 auto 20px}.apertura__centro .micro{margin:0;color:var(--verde)}.servilleta{position:relative;width:150px;height:125px;margin:18px auto 5px;perspective:600px}.servilleta__ala{position:absolute;top:4px;bottom:8px;width:51%;background:#fffdf8;border:1px solid #d6cdbd;box-shadow:0 8px 14px #3a382d28;transform-origin:center}.servilleta__ala--izq{left:0;clip-path:polygon(0 0,100% 0,95% 100%,0 100%);transform:rotate(-12deg)}.servilleta__ala--der{right:0;clip-path:polygon(0 0,100% 0,100% 100%,5% 100%);transform:rotate(12deg)}.servilleta__monograma{position:absolute;z-index:1;top:34px;left:0;right:0;font:italic 2rem Instrument,serif;color:var(--terracota)}.apertura__saltar{position:absolute;bottom:18px;right:20px;background:#fffdf0d9;border:0;padding:7px 10px;text-decoration:underline;font-size:.76rem}.js:not(.entered) .barra,.js:not(.entered) main,.js:not(.entered) .pie{visibility:hidden}.entered .apertura{display:none}.opening .servilleta__ala--izq{animation:napkinLeft 1.35s ease-in-out both}.opening .servilleta__ala--der{animation:napkinRight 1.35s ease-in-out both}.opening .servilleta__monograma{animation:inkFade 1.1s ease-in both}.opening .apertura__centro{animation:paperLift 1.6s ease-in-out both}@keyframes napkinLeft{to{transform:rotateY(-125deg) rotate(-12deg);opacity:.45}}@keyframes napkinRight{to{transform:rotateY(125deg) rotate(12deg);opacity:.45}}@keyframes inkFade{to{opacity:0}}@keyframes paperLift{to{transform:scale(1.035);opacity:0}}
.barra{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;padding:10px max(22px,calc((100vw - 1240px)/2));background:var(--papel);border-bottom:1px solid #d9d1bf}.marca{text-decoration:none;display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800;letter-spacing:.17em}.marca__icono{font-size:1.55rem;color:var(--terracota)}.barra nav{display:flex;gap:clamp(10px,3vw,35px);font-size:.78rem;font-weight:800}.barra nav a{text-decoration:none}.barra nav a:hover{text-decoration:underline}.barra #musica{background:none;border:0;font-size:.76rem;text-decoration:underline}
.hero{min-height:min(860px,100svh);display:grid;grid-template-columns:minmax(0,47%) minmax(0,53%);background:var(--papel)}.hero__foto{position:relative;min-height:660px;overflow:hidden;background:#cabd9e}.hero__foto img{width:100%;height:100%;object-fit:cover;object-position:center}.hero__fotopie{position:absolute;left:24px;bottom:20px;background:#fff9eae6;padding:6px 10px;font-size:.6rem;font-weight:800;letter-spacing:.13em}.hero__papel{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px clamp(25px,6vw,100px);background:radial-gradient(circle at 96% 4%,#e5e4d3 0 1px,transparent 2px) 0 0/21px 21px,var(--papel)}.hero__papel:before{content:'';position:absolute;top:0;left:0;bottom:0;width:9px;background:repeating-linear-gradient(180deg,var(--terracota) 0 15px,transparent 15px 28px)}.eyebrow{color:var(--terracota);display:flex;gap:12px;align-items:center}.eyebrow span{font-size:1.6rem;line-height:0}.hero__kicker{font:italic clamp(1.45rem,2.4vw,2.4rem) Instrument,serif;margin:25px 0 0;color:var(--verde)}.hero h1{font-size:clamp(4.6rem,8.2vw,9rem);letter-spacing:-.06em;margin:0;max-width:8ch}.hero h1 em{display:block;margin-left:.5em;white-space:nowrap}.hero__edad{align-self:flex-end;margin:-5px 3% 10px 0;padding:3px 15px;border-top:1px solid var(--terracota);border-bottom:1px solid var(--terracota);font-size:1.1rem;font-weight:800;transform:rotate(-4deg)}.hero__mensaje{max-width:34ch;font-size:1.02rem}.hero__acciones{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:15px 0 30px}.hero__fecha{font-size:.77rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.hero__fecha span{color:var(--terracota)}
.historia{text-align:center;background:var(--verde);color:var(--papel)}.historia__asterisco{font-size:4rem;line-height:1;color:#d6b288}.historia h2{max-width:920px;margin:20px auto}.historia em{color:#e6bb9b}.historia>p:not(.micro){max-width:60ch;margin:0 auto;font-size:1.12rem}.historia__firma{display:block;margin-top:35px;font:italic 2.1rem Instrument,serif}
.menu{background:#e9e6d8}.menu__cabeza{max-width:800px}.menu__cabeza h2{margin-bottom:22px}.menu__cabeza>p:last-child{max-width:50ch}.menu__cuerpo{margin-top:50px;display:grid;grid-template-columns:300px minmax(0,1fr);border:1px solid #b6bcac;background:var(--papel);min-height:330px}.menu__tabs{display:flex;flex-direction:column;border-right:1px solid #b6bcac}.menu__tabs button{flex:1;text-align:left;padding:22px 28px;border:0;border-bottom:1px solid #b6bcac;background:transparent;font:italic clamp(1.65rem,3vw,2.5rem) Instrument,serif;color:var(--verde)}.menu__tabs button:last-child{border-bottom:0}.menu__tabs button[aria-selected=true]{background:var(--verde);color:var(--papel)}.menu__panels{display:flex;align-items:center;padding:40px clamp(25px,5vw,90px);background:radial-gradient(circle at 90% 85%,#dbe3d4 0 50px,transparent 51px),var(--papel)}.menu__panels article[hidden]{display:none}.menu__sello{color:var(--terracota);font-size:.7rem;font-weight:800;letter-spacing:.2em}.menu__panels h3{font-size:clamp(3.5rem,6vw,6rem);margin:14px 0}.menu__panels p{max-width:42ch}.menu__nota{font-size:.78rem;margin:20px 0 0;color:#3e4d40}
.programa{display:grid;grid-template-columns:42% 1fr;gap:8%;background:var(--papel)}.programa__intro h2{margin:0 0 20px}.programa__intro>p:last-child{max-width:32ch}.programa__lista{border-top:1px solid var(--verde)}.programa__item{display:grid;grid-template-columns:105px 1fr;gap:15px;padding:24px 0;border-bottom:1px solid #bbc6b7}.programa__hora{color:var(--terracota);font-weight:800}.programa__item small{font-size:.66rem;font-weight:800;letter-spacing:.15em}.programa__item h3{font-size:2.2rem;margin:5px 0}.programa__item p{margin:0;max-width:37ch}
.detalles{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:8%;background:#d8dfcf}.detalles__tarjeta{background:var(--papel);padding:clamp(30px,5vw,80px);box-shadow:15px 17px 0 #6b8c7050;max-width:700px}.detalles h2{font-size:clamp(3.3rem,6vw,6.5rem)}.detalles dl{margin:35px 0}.detalles dl div{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:15px 0;border-top:1px solid #c7ccbd}.detalles dt{font-size:.7rem;letter-spacing:.14em;font-weight:800;text-transform:uppercase}.detalles dd{margin:0;font-weight:800}.detalles dd small{display:block;font-weight:500}.detalles__nota{font-size:.78rem;max-width:50ch}.detalles__decor{height:400px;position:relative}.detalles__plato{position:absolute;width:min(25vw,340px);aspect-ratio:1;border-radius:50%;border:22px solid #f7f1e5;box-shadow:0 0 0 3px #8eae90,0 20px 30px #273e2833;top:20px;left:10%;background:radial-gradient(circle,#e8ebdc 0 40%,#f7f1e5 41% 60%,#a1b69b 61%)}.detalles__servilleta{position:absolute;right:0;bottom:35px;width:150px;height:150px;background:var(--papel);transform:rotate(18deg);box-shadow:0 12px 20px #25392f33;text-align:center;padding-top:25px;font:italic 5rem Instrument,serif;color:var(--terracota)}.detalles__copa{position:absolute;top:5px;right:10%;color:var(--terracota);font-size:4rem}
.cuenta{text-align:center;background:var(--terracota);color:#fff}.cuenta__numeros{display:flex;justify-content:center;gap:clamp(12px,5vw,75px)}.cuenta__numeros span{display:grid}.cuenta__numeros strong{font:400 clamp(2.5rem,8vw,7rem)/1 Instrument,serif}.cuenta__numeros small{text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;font-weight:800}
.confirmar{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:8%;background:var(--papel)}.confirmar__intro h2{font-size:clamp(3.5rem,6vw,7rem)}.confirmar__intro>p:not(.micro){max-width:35ch}.confirmar__sello{display:grid;margin:70px 0 0;width:210px;min-height:150px;padding:20px;border:2px dashed var(--terracota);transform:rotate(-7deg);color:var(--terracota)}.confirmar__sello span,.confirmar__sello small{font-size:.7rem;font-weight:800;letter-spacing:.1em}.confirmar__sello b{font:italic 2.8rem Instrument,serif}.confirmar__panel{padding:clamp(23px,4vw,55px);background:#e6ebdf;border-top:7px solid var(--verde)}.confirmar__panel form>label,.attending-fields label{display:grid;gap:8px;margin:20px 0;font-size:.8rem;font-weight:800}.confirmar__panel input:not([type=radio]):not([type=checkbox]),.confirmar__panel textarea,.confirmar__panel select{min-height:48px;width:100%;padding:12px;border:1px solid #829482;background:#fff;border-radius:0;color:var(--tinta)}.confirmar__panel fieldset{border:0;padding:0;margin:20px 0}.confirmar__panel legend{margin-bottom:10px;font-weight:800}.opcion{display:block;padding:12px;margin:7px 0;background:#fff;border:1px solid #829482}.opcion:has(input:checked){border-color:var(--verde);box-shadow:inset 4px 0 var(--verde)}.opcion input{margin-right:9px}.check{display:flex!important;align-items:flex-start;gap:9px!important}.privacidad{font-size:.75rem}.guest-label{font:italic 1.8rem Instrument,serif}.confirmar__panel #form-status{color:#9b352a;font-weight:800}.confirmar__panel [hidden]{display:none!important}#confirmado h3{font-size:3rem}.aviso{padding:12px;background:#fff;border-left:4px solid var(--terracota)}
.sobremesa{background:var(--verde);color:var(--papel)}.sobremesa__head{max-width:760px}.sobremesa h2 em{color:#e6bb9b}.sobremesa__grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:50px}.sobremesa__grid>div{padding:35px;background:#456b54}.sobremesa h3{font-size:2.7rem}.sobremesa__grid ul{list-style:none;padding:0}.sobremesa__grid li{padding:12px 0;border-bottom:1px solid #f5f0df5c}.sobremesa__grid blockquote{margin:0 0 13px;padding:16px;border-left:3px solid #e6bb9b;background:#315943}.sobremesa__grid blockquote p{margin:0}.sobremesa__grid cite{font-size:.78rem}.pie{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:35px max(22px,calc((100vw - 1240px)/2));background:#25392f;color:#fff;font-size:.76rem}.pie div{display:flex;align-items:center;gap:8px}.pie div p,.pie>p{margin:0}.pie__flor{color:#e6bb9b;font-size:1.6rem}
.ingreso__panel{width:min(90vw,480px);padding:22px;background:var(--papel);text-align:center}.ingreso__panel h2{font-size:2.6rem;margin:0 0 12px}#ingreso{border:0;padding:0;max-width:95vw;max-height:95vh;background:transparent}#ingreso::backdrop{background:#132819d9}#ticket-canvas{width:min(100%,300px);height:auto;display:block;margin:0 auto 14px}#cerrar-ingreso{float:right;background:none;border:0;font-size:2rem;line-height:1}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero__foto{height:60vw;min-height:0}.hero__papel{min-height:550px}.programa,.detalles{grid-template-columns:1fr}.detalles__decor{height:250px}.detalles__plato{width:210px}.confirmar{grid-template-columns:1fr}.confirmar__sello{display:none}}@media(max-width:600px){.barra{min-height:60px}.barra nav{gap:11px;font-size:.64rem}.barra nav a:first-child{display:none}.marca{font-size:.65rem}.hero__foto{height:54svh;min-height:310px}.hero__foto img{object-position:center 48%}.hero__papel{min-height:530px;padding:35px 22px}.hero h1{font-size:clamp(4.3rem,18vw,6.5rem)}.hero h1 em{margin-left:.1em}.hero__acciones{margin:10px 0 22px}.hero__fotopie{font-size:.52rem}.menu__cuerpo{grid-template-columns:1fr}.menu__tabs{display:grid;grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid #b6bcac}.menu__tabs button{padding:12px 5px;font-size:1.2rem;text-align:center;border-bottom:0;border-right:1px solid #b6bcac}.menu__tabs button:last-child{border:0}.menu__panels{min-height:300px;padding:30px 25px}.programa__item{grid-template-columns:75px 1fr}.programa__item h3{font-size:1.9rem}.sobremesa__grid{grid-template-columns:1fr}.detalles__decor{display:none}.apertura__centro{padding:22px 20px}.apertura__centro h2{font-size:2.5rem}.servilleta{height:100px;margin:10px auto 0}.servilleta__monograma{top:24px}}
@media(max-height:720px) and (max-width:600px){.apertura__centro{padding:15px 18px}.apertura__centro h2{font-size:2.2rem}.apertura__centro p:not(.micro){margin-bottom:14px}.servilleta{height:85px;width:120px}.servilleta__monograma{font-size:1.7rem;top:19px}.apertura__saltar{bottom:6px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.opening .servilleta__ala,.opening .apertura__centro{animation:none!important}}
html:not(.js) .apertura{display:none}
@media(max-width:600px){.hero__foto{height:31svh;min-height:190px;max-height:260px}.hero__foto img{object-position:center 50%}.hero__papel{min-height:0;padding:22px 22px 30px}.hero__kicker{margin:12px 0 0}.hero h1{font-size:clamp(3.8rem,15vw,5.4rem);line-height:.9}.hero__edad{margin:0 3% 5px 0;font-size:.9rem}.hero__mensaje{font-size:.91rem;line-height:1.42;margin-bottom:5px}.hero__acciones{margin:5px 0 10px;gap:11px}.hero__acciones .boton{min-height:46px;padding:10px 16px}.hero__fecha{margin:0;font-size:.67rem}}
@media(max-width:600px){.menu__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.menu__tabs button{overflow-wrap:anywhere;line-height:1.06}}
html:not(.js) .menu__panels{display:block}html:not(.js) .menu__panels article+article{border-top:1px solid #b6bcac;margin-top:24px;padding-top:24px}
