/* La suerte de encontrarnos — original Mexican loteria stationery. */
:root{--linen:#f7f0df;--paper:#fffbef;--ink:#192f42;--wine:#b23c32;--pink:#bc4a38;--gold:#e4af32;--green:#365849;--muted:#696b61;--line:#192f4230;--serif:'DM Serif Display',Georgia,serif;--display:'Barlow Condensed',Impact,sans-serif}
body{background:var(--linen);color:var(--ink)}body::before{opacity:.13}.eyebrow{color:var(--wine);letter-spacing:.16em;font-weight:700}.section{padding-block:86px}h2{font-size:clamp(38px,4.5vw,62px)}.section-heading h2{color:var(--ink)}.section-heading::after{width:56px;border-bottom:3px solid var(--wine);margin-top:22px}.button{border-radius:0}.button-outline{border:1px solid var(--ink);color:var(--ink)}.button-outline:hover{background:var(--ink);color:var(--paper)}
/* Opening: an illustrated playing card, with no oversized ornamental frame. */
.welcome{background:var(--ink);padding:50px 6vw;color:var(--paper)}.welcome::before{opacity:.1}.welcome::after{display:none}.loteria-welcome-grid{position:relative;z-index:1;width:min(1100px,100%);margin:auto;display:grid;grid-template-columns:1fr 420px;gap:90px;align-items:center}.loteria-brand{display:block;font:700 17px var(--display);letter-spacing:.12em;margin-bottom:64px}.loteria-brand i{font:italic 15px var(--serif);letter-spacing:0;margin-left:15px;color:#edc968}.loteria-intro .eyebrow{color:#edc968;font-size:10px;margin-bottom:22px}.loteria-intro h2{font:clamp(55px,5.8vw,83px)/1.02 var(--serif);letter-spacing:-.04em}.loteria-intro h2 em{font-weight:400;color:#edc968}.loteria-intro>p:not(.eyebrow){font:15px/1.8 var(--sans);margin-top:28px;color:#eee3cd}.loteria-intro-date{display:block;margin-top:36px;font:600 11px var(--sans);letter-spacing:.14em}.loteria-intro-date b{color:var(--gold);margin:0 10px}.loteria-intro-rule{display:block;width:70px;height:3px;background:var(--wine);margin-top:28px}.envelope-scene{width:100%;padding:0;margin:0;filter:drop-shadow(12px 15px 0 #0f2330);transform:rotate(2deg);transition:transform .7s}.artisan-backing{display:none}.invitation-card{background:var(--paper);border:2px solid #101f2b;padding:12px;clip-path:none;box-shadow:none;transition:transform .7s}.invitation-card::before,.invitation-card::after{display:none}.loteria-card-top{color:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:4px 3px 12px;font:700 12px var(--display);letter-spacing:.13em}.loteria-card-top>span:first-child{font-size:25px;line-height:1}.seal-button{position:relative;top:auto;left:auto;display:block;width:100%;border:1px solid var(--ink);padding:0;margin:0;transform:none;filter:none;overflow:hidden}.seal-button img{width:100%;height:290px;object-fit:cover;object-position:center}.seal-button:hover{transform:none}.seal-button:hover img{transform:scale(1.025)}.seal-button img{transition:transform .3s}.welcome-content{padding:18px 10px 11px;color:var(--ink)}.welcome-kicker{font:600 9px var(--sans);letter-spacing:.19em;color:var(--wine);margin-bottom:10px}.welcome-content h2{font:700 48px/1 var(--display);display:block;text-transform:uppercase;color:var(--ink);letter-spacing:-.02em}.welcome-content h2 span{font:36px var(--serif);margin:0 4px;color:var(--wine)}.welcome-message{font:12px/1.6 var(--sans);margin:15px auto;max-width:290px}.welcome-content .button{clip-path:none;background:var(--wine);border:1px solid var(--wine);color:var(--paper);font-size:10px;min-height:45px;width:100%;gap:22px;padding:12px}.welcome-content .button:hover{background:var(--ink);border-color:var(--ink)}.welcome.is-opening .invitation-card{transform:translateY(-50px) rotate(-5deg)}#rotuloapi{font-size:12px;margin-bottom:12px;color:var(--wine)}
/* The invitation is an editorial deck of photographs and numbered moments. */
.hero{width:min(1160px,calc(100% - 80px));grid-template-columns:1.05fr .95fr;gap:80px;min-height:0;padding-block:78px;margin:0 auto}.hero-copy{text-align:left}.hero-copy>.eyebrow{margin-bottom:24px}.hero-pretitle{font:italic 23px var(--serif);color:var(--green);margin-bottom:24px}.hero h1{font:700 clamp(82px,8vw,120px)/.88 var(--display);text-transform:uppercase;align-items:flex-start;letter-spacing:-.035em;color:var(--ink)}.hero .ampersand{font:italic 55px/.9 var(--serif);color:var(--wine);margin:10px 0 13px}.hero-stitch{width:70px;border-bottom:3px solid var(--wine);margin:32px 0 24px}.hero-date{font:600 17px var(--sans);letter-spacing:.08em}.hero-date span{color:var(--ink);font:26px var(--serif);margin-inline:9px}.hero-link{color:var(--wine);font-weight:700}.hero-link svg{color:var(--wine)}.hero-photo{padding:13px 13px 0;border:2px solid var(--ink);border-radius:0;background:var(--paper);transform:rotate(3deg);box-shadow:10px 10px 0 #e4af32}.hero-photo img{height:475px;object-fit:cover;border-radius:0}.photo-card-caption{display:flex;align-items:center;gap:15px;padding:16px 0;font:700 24px var(--display);color:var(--ink);line-height:1}.photo-card-caption b{font-size:31px}.photo-card-caption>span{font:11px var(--sans);margin-left:auto;max-width:80px;line-height:1.4}.site-header{background:#fffbefed;border-block:1px solid var(--ink)}.nav-monogram{font:700 31px var(--display);color:var(--ink)}.nav-monogram span{font:italic 25px var(--serif);color:var(--wine)}.nav-links a{font-weight:600}.nav-links a:hover,.nav-links a[aria-current]{color:var(--wine);border-color:var(--wine)}
.date-section{background:var(--gold);border-block:2px solid var(--ink)}.date-section .eyebrow{color:var(--ink)}.countdown{gap:64px}.countdown strong{font:700 80px/1 var(--display);color:var(--ink)}.countdown span{color:var(--ink);font-weight:600}.calendar{border-color:#192f4250}.calendar h3{color:var(--ink)}.calendar .text-link{font-weight:600}.history-section{background:var(--ink);gap:80px}.history-photo{padding:10px 10px 35px;background:var(--paper);transform:rotate(-2deg);border:1px solid var(--ink)}.history-photo img{height:510px;border-radius:0}.history-copy .eyebrow{color:var(--gold)}.history-copy h2{color:var(--paper)}.history-copy p{font:15px/1.9 var(--sans);color:#f4ebd9}.places-section{background:var(--paper)}.place-grid{gap:45px}.place{padding:12px 12px 26px;border:1px solid var(--ink);background:var(--linen);box-shadow:5px 5px 0 #192f4214}.place>img{height:270px;border-radius:0}.place-copy{padding:24px 10px 0}.place h3{font:700 39px var(--display);text-transform:uppercase;color:var(--ink);margin-bottom:16px}.place h6{color:var(--wine);font-weight:700}.place p.bold-text{color:var(--ink)}.place-links{color:var(--wine)}.dress-section{background:#d9e4d6;border-block:1px solid var(--ink)}.dress-grid{gap:50px}.dress-grid>a{background:var(--paper);border:1px solid var(--ink);width:190px;padding:25px 15px;box-shadow:5px 5px 0 #192f4220}.dress-grid>a>span{font-weight:600;color:var(--ink);border-color:var(--ink)}.timeline-section{background:var(--linen)}.timeline-item{background:var(--paper);border:1px solid var(--ink);padding:40px 15px 28px}.timeline-number{top:10px;left:10px;font:700 22px var(--display);padding:0;background:none;color:var(--wine)}.timeline-item>img{width:60px;height:60px;margin:14px auto 20px}.timeline-item h3{font:700 30px var(--display);color:var(--ink);text-transform:uppercase}.time{color:var(--wine)}.timeline-item p{color:var(--muted)}
.gallery-section{background:#c65c43}.gallery-section .eyebrow,.gallery-section h2{color:var(--paper)}.gallery-section .section-heading::after{border-color:var(--paper)}.gallery-grid{gap:22px}.gallery-photo{background:var(--paper);padding:9px 9px 32px;border:1px solid var(--ink);border-radius:0;box-shadow:6px 6px 0 #58291e30}.gallery-photo:nth-child(odd){transform:rotate(-2deg)}.gallery-photo:nth-child(even){transform:rotate(2deg);margin-top:36px}.gallery-photo img{height:285px}.registry-section{background:var(--paper)}.gift-link{border:1px solid var(--line);background:var(--linen);padding:30px 20px}.gift-link p{color:var(--ink)}.rsvp-section{background:var(--green);border-block:2px solid var(--ink)}.rsvp-section .eyebrow{color:#eadc9a}.rsvp-section .section-heading::after{border-color:var(--gold)}.hotels-section{background:var(--linen)}.hotels-section .place{background:var(--paper)}.hotels-section .place>img{border-radius:0}.hotels-section .place h3{font:700 32px var(--display)}.app-section{background:var(--paper);padding-block:50px}.app-section h2{color:var(--ink)}.app-copy p a,.app-copy .inline-links{color:var(--wine)}.site-footer{padding:65px 24px 60px;background:var(--ink);color:var(--paper);border-top:8px solid var(--gold)}.loteria-footer-call{font:800 clamp(76px,11vw,145px)/1 var(--display);color:var(--gold);letter-spacing:-.025em}.loteria-footer-note{font:italic 22px var(--serif);margin:16px auto 35px}.footer-monogram{color:var(--paper);font:700 35px var(--display);margin-bottom:22px}.footer-monogram em{font:italic 35px var(--serif);color:var(--gold)}.site-footer h3{color:#d9ceba}.footer-hashtag{color:var(--paper);font:700 31px var(--display)}.back-to-top{color:#edc968}.footer-logo{display:inline-block;background:var(--paper);padding:10px 16px;margin-top:10px}.footer-logo img{margin:0;width:80px}.music-control{border-color:var(--ink);background:var(--paper);color:var(--ink)}.music-bars i{background:var(--wine)}
@media(max-width:1000px){.loteria-welcome-grid{grid-template-columns:1fr 350px;gap:45px}.loteria-intro h2{font-size:61px}.seal-button img{height:260px}.welcome-content h2{font-size:41px}.hero{gap:45px}.hero-photo img{height:430px}.photo-card-caption{font-size:20px}.history-section{gap:40px}.countdown{gap:40px}}
@media(max-width:760px){.welcome{padding:33px 27px}.loteria-welcome-grid{grid-template-columns:minmax(0,1fr);max-width:370px;gap:25px}.loteria-intro{text-align:center}.loteria-brand{font-size:13px;margin-bottom:15px}.loteria-brand i{font-size:13px;margin-left:10px}.loteria-intro .eyebrow,.loteria-intro>p:not(.eyebrow),.loteria-intro-date,.loteria-intro-rule{display:none}.loteria-intro h2{font-size:35px;line-height:1.08;letter-spacing:-.025em}.loteria-intro h2 br{display:none}.envelope-scene{transform:rotate(1deg);filter:drop-shadow(6px 8px 0 #0f2330)}.invitation-card{padding:10px}.loteria-card-top{font-size:10px;padding-bottom:9px}.loteria-card-top>span:first-child{font-size:22px}.seal-button img{height:235px}.welcome-content{padding:17px 4px 7px}.welcome-content h2{font-size:43px}.welcome-content h2 span{font-size:30px}.welcome-message{font-size:11px;margin:13px auto}.welcome-content .button{min-height:46px;font-size:10px}.section{padding:64px 24px}.hero{grid-template-columns:minmax(0,1fr);width:calc(100% - 52px);gap:42px;margin:0 auto;padding-block:42px 55px}.hero-copy{text-align:center}.hero-copy>.eyebrow{margin-bottom:17px}.hero-pretitle{font-size:19px;margin-bottom:20px}.hero h1{font:700 clamp(45px,15vw,68px)/1 var(--display);flex-direction:row;justify-content:center;align-items:center;gap:9px;white-space:nowrap}.hero .ampersand{font:italic 40px var(--serif);margin:0}.hero-stitch{margin:23px auto 18px;width:50px}.hero-date{font-size:12px}.hero-date span{font-size:21px}.hero-link{font-size:10px;margin-top:23px}.hero-photo{max-width:440px;margin:auto;padding:10px 10px 0;transform:rotate(2deg);box-shadow:6px 6px 0 var(--gold)}.hero-photo img{height:390px;border-radius:0}.photo-card-caption{font-size:22px;padding-block:14px;gap:12px}.photo-card-caption b{font-size:28px}.photo-card-caption>span{font-size:10px;max-width:60px}.nav-links{background:var(--paper)}.countdown{gap:24px;margin-bottom:30px}.countdown strong{font-size:55px}.countdown>div{min-width:45px}.countdown span{font-size:9px}.history-section{gap:36px}.history-photo{padding:9px 9px 25px}.history-photo img{height:360px}.history-copy h2{font-size:40px}.history-copy p{font-size:14px}.place-grid{gap:35px}.place>img{height:235px}.place-copy{padding:23px 8px 0}.place h3{font-size:35px}.place p{font-size:13px}.dress-grid{gap:20px}.dress-grid>a{width:145px;padding:22px 14px}.dress-grid img{height:110px}.timeline{gap:22px 16px}.timeline-item{padding:38px 12px 24px}.timeline-item>img{width:48px;height:48px}.timeline-item h3{font-size:27px}.timeline-number{font-size:20px}.gallery-grid{gap:18px}.gallery-photo{padding:7px 7px 24px;box-shadow:4px 4px 0 #58291e30}.gallery-photo img{height:225px}.gallery-photo:nth-child(3){margin-top:-20px}.gallery-photo:nth-child(even){margin-top:20px}.gift-link{padding:20px 16px}.rsvp-section{padding-inline:14px}.loteria-footer-call{font-size:92px}.loteria-footer-note{font-size:19px;max-width:280px}.site-footer{padding-block:50px}}
@media(max-width:360px){.welcome{padding:28px 22px}.loteria-intro h2{font-size:31px}.seal-button img{height:210px}.welcome-content h2{font-size:36px}.welcome-content h2 span{font-size:27px}.hero h1{font-size:45px}.hero .ampersand{font-size:33px}.hero-photo img{height:335px}.photo-card-caption{font-size:19px;gap:8px}.countdown{gap:17px}.countdown strong{font-size:48px}.gallery-photo img{height:190px}.dress-grid{gap:14px}.dress-grid>a{width:125px}.dress-grid img{max-width:100px}.timeline-item h3{font-size:24px}}
@media(max-height:620px) and (min-width:761px){.welcome{padding:30px 6vw}.loteria-welcome-grid{grid-template-columns:1fr 320px;gap:65px}.loteria-brand{margin-bottom:30px}.loteria-intro h2{font-size:58px}.seal-button img{height:210px}.welcome-content h2{font-size:39px}.welcome-content{padding-top:12px}.welcome-kicker{margin-bottom:8px}.welcome-message{margin:11px auto}.loteria-intro-date{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.envelope-scene,.hero-photo,.gallery-photo,.history-photo{transform:none}}
