
/* Birthday retro: an original paper-and-photo keepsake direction, scoped to its fixed sample route. */
body.birthday-retro{--paper:#f4eee5;--paper-soft:#fffaf2;--burgundy:#842a31;--burgundy-deep:#51171f;--ink:#342b2a;--muted:#766b64;--champagne:#c6a884;--ivory:#f4eee5;--white:#fffaf2;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif}
.birthday-retro main{background-color:var(--paper);background-image:radial-gradient(ellipse at 16% 23%,#a1816322 0 1px,transparent 1.8px),radial-gradient(ellipse at 76% 58%,#842a3110 0 1px,transparent 1.7px),repeating-linear-gradient(4deg,#ffffff14 0 1px,transparent 1px 5px)}
.birthday-retro .hero{min-height:max(760px,94svh);background-color:var(--paper);background-image:linear-gradient(180deg,#f4eee5c7 0%,#f4eee5db 45%,#f4eee5eb 100%),url("assets/birthday-retro-friends.webp");background-position:center;background-size:cover}
.birthday-retro .hero:before{inset:12px;border:1px solid #842a3150;background:linear-gradient(180deg,transparent 0 74%,#f4eee550);pointer-events:none}
.birthday-retro .hero-top,.birthday-retro .hero-content,.birthday-retro .scroll{z-index:1}
.birthday-retro .sample{background:#fffaf2d9;color:var(--burgundy);border:1px solid #842a3138;font-size:9px;padding:6px 10px}
.birthday-retro .monogram{color:var(--burgundy);border-color:#842a3170;background:#fffaf2a8}
.birthday-retro .hero .eyebrow,.birthday-retro .eyebrow{color:var(--burgundy);font-size:10px}
.birthday-retro .hero h1{color:var(--burgundy);font-family:Caveat,'Cormorant Garamond',Georgia,serif;font-size:clamp(76px,19vw,102px);font-style:normal;font-weight:600;line-height:.9;letter-spacing:-.035em;margin:24px auto 20px;text-shadow:0 1px #fff8;max-width:680px}
.birthday-retro .age{color:var(--burgundy);font-size:clamp(80px,22vw,116px);margin:0 auto 20px;text-shadow:2px 2px 0 #c6a88466}
.birthday-retro .age small{font-size:10px;letter-spacing:.24em}
.birthday-retro .hero-sub{color:#4b3b38;font-size:14px;line-height:1.7}
.birthday-retro .hero .fine-line{width:82px;background:var(--burgundy);margin:19px auto}
.birthday-retro .countdown-title{font-size:9px}
.birthday-retro .countdown{gap:clamp(5px,2vw,12px);margin-top:12px}
.birthday-retro .countdown div{min-width:54px}
.birthday-retro .countdown b{color:var(--burgundy);font-size:clamp(31px,9vw,43px)}
.birthday-retro .countdown span{font-size:9px;color:#493c39;letter-spacing:.08em}
.birthday-retro .countdown i{color:var(--burgundy)}
.birthday-retro .scroll{align-self:center;margin:10px 0 0;padding:9px 17px;border:1px solid #842a3150;border-radius:24px;background:#fffaf2c7;color:var(--burgundy);font-size:9px}
.birthday-retro .phrase{position:relative;padding:76px 25px;background:#fffaf2b8;border-block:1px solid #842a3126}
.birthday-retro .sparkle{color:var(--burgundy)}
.birthday-retro .phrase h2,.birthday-retro .locations-section>h2,.birthday-retro .gallery-section h2,.birthday-retro .rsvp h2,.birthday-retro footer h2{color:var(--burgundy)}
.birthday-retro .phrase>p:last-child,.birthday-retro .gallery-section>p:not(.eyebrow){font-size:14px;color:#5c504b}
.birthday-retro .date-section{background:#efe3d5;border-color:#842a3133}
.birthday-retro .date-section .eyebrow,.birthday-retro .date-weekday,.birthday-retro .time{color:#5d2229}
.birthday-retro .date-display strong{color:var(--burgundy);border-color:#842a3155}
.birthday-retro .text-button{color:var(--burgundy);border-color:#842a3175;font-size:11px}
.birthday-retro .locations-section{padding-block:72px 44px}
.birthday-retro .location{background:#fffaf2;border:1px solid #a77a5d55;box-shadow:0 10px 28px #342b2a0b}
.birthday-retro .location-number,.birthday-retro .location svg,.birthday-retro .location .venue{color:var(--burgundy);stroke:var(--burgundy)}
.birthday-retro .location .location-time,.birthday-retro .location .address,.birthday-retro .travel-note{color:#5e514b;font-size:13px}
.birthday-retro .button{background:var(--burgundy);border-color:var(--burgundy);color:#fffaf2;font-size:11px}
.birthday-retro .button:hover{background:var(--burgundy-deep)}
.birthday-retro .gallery-section{padding:70px 22px 82px;background:#e9dbcc80}
.birthday-retro .gallery{width:min(100%,760px);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,5vw,36px);margin:34px auto 24px}
.birthday-retro .gallery button,.birthday-retro .gallery button:first-child,.birthday-retro .gallery button:nth-child(even){position:relative;margin:0;padding:9px 9px 36px;background:#fffdf9;border:1px solid #d2c4b5;box-shadow:0 12px 25px #342b2a1c;overflow:visible;border-radius:1px;transform:rotate(-2deg)}
.birthday-retro .gallery button:nth-child(even){transform:rotate(2.3deg);margin-top:26px}
.birthday-retro .gallery button:nth-child(3){transform:rotate(1.5deg)}
.birthday-retro .gallery button:nth-child(4){transform:rotate(-1.7deg);margin-top:26px}
.birthday-retro .gallery button:after{content:attr(aria-label);position:absolute;left:9px;right:9px;bottom:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 15px Caveat,'Cormorant Garamond',Georgia,serif;color:var(--burgundy)}
.birthday-retro .gallery button:nth-child(1):after{content:'Un brindis entre amigos'}.birthday-retro .gallery button:nth-child(2):after{content:'La torta de la noche'}.birthday-retro .gallery button:nth-child(3):after{content:'Una noche para bailar'}.birthday-retro .gallery button:nth-child(4):after{content:'Juntos para celebrar'}
.birthday-retro .gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 42%;filter:saturate(.8);transition:transform .45s;}
.birthday-retro .gallery button:hover img{transform:scale(1.015)}
.birthday-retro .gallery-hint{color:#5b4c47;font-size:10px!important}
.birthday-retro .rsvp{background:linear-gradient(145deg,#efe2d4,#fffaf2 55%,#ead8cb);border-block:1px solid #842a3128}
.birthday-retro .seal{background:#842a31;color:#fffaf2;border-color:#c6a884}
.birthday-retro #rsvp-form>label,.birthday-retro #guest-count-field>label,.birthday-retro fieldset.attendance-choice legend,.birthday-retro fieldset.attendance-choice label{font-size:13px;color:#493d39}
.birthday-retro input,.birthday-retro select{background:#fffdfa;color:#342b2a;border-bottom-color:#a77a5d;font-size:16px}
.birthday-retro .credits{font-size:11px;color:#665a54}
.birthday-retro .music{background:#fffaf2ed;color:var(--burgundy);border-color:#842a3155;font-size:12px}
.birthday-retro dialog{background:#fffaf2}
.birthday-retro dialog button{color:var(--burgundy)}
.birthday-retro :focus-visible{outline-color:var(--burgundy)}
.birthday-retro .model-switch{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;padding:17px 20px;background:#842a31;color:#fffaf2;text-align:center;font:500 11px/1.5 Manrope,sans-serif;letter-spacing:.04em}
.birthday-retro .model-switch a{display:inline-flex;min-height:44px;align-items:center;padding:7px 13px;border:1px solid #fffaf28c;text-decoration:none;color:#fffaf2}
.birthday-retro .model-switch a:hover{background:#ffffff16}
@media(min-width:700px){.birthday-retro .hero{min-height:920px}.birthday-retro .hero-content{max-width:760px;margin:auto}.birthday-retro .hero h1{font-size:112px}.birthday-retro .hero-sub{font-size:16px}.birthday-retro .phrase,.birthday-retro .date-section,.birthday-retro .locations-section,.birthday-retro .gallery-section,.birthday-retro .rsvp,.birthday-retro footer{padding-left:clamp(42px,9vw,140px);padding-right:clamp(42px,9vw,140px)}.birthday-retro .locations{max-width:1080px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.birthday-retro .gallery{max-width:850px;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.birthday-retro .gallery button:nth-child(even),.birthday-retro .gallery button:nth-child(4){margin-top:30px}.birthday-retro .gallery img{aspect-ratio:4/5}.birthday-retro .phrase h2,.birthday-retro .gallery-section h2{font-size:52px}}
@media(min-width:960px){body.birthday-retro .hero{display:flex;height:auto;align-items:stretch;justify-content:space-between;padding:28px clamp(48px,9vw,140px);background-size:cover}.birthday-retro .hero-top{max-width:880px;margin:0 auto;width:100%}.birthday-retro .hero-content{width:100%;max-width:780px;margin:auto;text-align:center;padding:12px 0}.birthday-retro .hero-content>.eyebrow,.birthday-retro .hero-content>.hero-sub,.birthday-retro .hero-content>.countdown-title{text-align:center}.birthday-retro .hero .fine-line{margin:19px auto}.birthday-retro .countdown{justify-content:center}.birthday-retro .scroll{align-self:center}}
@media(max-width:380px){.birthday-retro .gallery{gap:14px}.birthday-retro .gallery button,.birthday-retro .gallery button:first-child,.birthday-retro .gallery button:nth-child(even){padding:7px 7px 33px}.birthday-retro .gallery button:after{left:7px;right:7px;font-size:11px}.birthday-retro .date-display{gap:12px}.birthday-retro .date-display strong{padding-inline:13px}}
