*{margin:0;padding:0;box-sizing:border-box;}
html,body{width:100%;min-height:100%;background:#050505;color:#fff;font-family:"Cormorant Garamond",serif;overflow-x:hidden;}
body.lock{overflow:hidden;}
.page{width:100%;min-height:100vh;}

.loader{position:fixed;inset:0;z-index:100;background:#050505;display:flex;align-items:center;justify-content:center;color:#f3eee6;}
.loader-inner{text-align:center;width:min(80vw,360px);}
.loader-inner span{font-family:"Great Vibes",cursive;font-size:48px;}
.loader-inner p{margin-top:18px;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:rgba(244,234,216,.65);}
.loader-line{height:1px;background:rgba(244,234,216,.22);margin-top:24px;overflow:hidden;}
.loader-line i{display:block;width:0;height:100%;background:#f3eee6;}

.intro{position:fixed;inset:0;z-index:50;width:100%;height:100vh;background:#050505;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:0;visibility:hidden;}
.envelope{height:94vh;aspect-ratio:941/1672;position:relative;border:0;background:transparent;cursor:pointer;display:block;padding:0;perspective:1800px;}
.env-layer{position:absolute;inset:0;width:100%;height:100%;background-position:center;background-size:100% 100%;background-repeat:no-repeat;will-change:transform,opacity;}
.env-full{z-index:2;background-image:url("../img/bez-pecata.png");}
.env-top{z-index:4;background-image:url("../img/gornja-ivica.png");opacity:0;visibility:hidden;transform-origin:top center;transform-style:preserve-3d;}
.env-bottom{z-index:5;background-image:url("../img/donja-ivica.png");opacity:0;visibility:hidden;}
.env-seal{z-index:9;background-image:url("../img/pecat.png");}
.tap-text{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:70;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.72);white-space:nowrap;}

.save-screen{position:fixed;inset:0;z-index:40;width:100%;height:100vh;background:#050505;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;opacity:0;visibility:hidden;}
.save-content p{font-size:15px;letter-spacing:5px;text-transform:uppercase;margin-bottom:28px;color:rgba(255,255,255,.72);}
.save-content h1{font-family:"Great Vibes",cursive;font-size:104px;font-weight:400;line-height:.86;}
.save-content h1 span{font-family:"Cormorant Garamond",serif;font-size:42px;}
.save-content strong{display:block;margin-top:34px;font-size:24px;font-weight:300;letter-spacing:3px;text-transform:uppercase;}

.hero{min-height:100vh;background:url("../img/Pozivnica5.jpeg") center/cover no-repeat;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;opacity:0;visibility:hidden;overflow:hidden;}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.42);}
.hero-content{position:relative;z-index:2; padding-top:90px; }
.hero-content p{font-size:15px;text-transform:uppercase;letter-spacing:5px;margin-bottom:20px;}
.hero-content h2{font-family:"Great Vibes",cursive;font-size:96px;font-weight:400;line-height:1;}
.hero-content span{display:block;margin-top:24px;font-size:22px;letter-spacing:3px;text-transform:uppercase;}
.scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;font-size:12px;letter-spacing:3px;text-transform:uppercase;}
.scroll-hint:after{content:"";display:block;width:1px;height:42px;background:#fff;margin:12px auto 0;opacity:.75;}

.countdown-section{min-height:100vh;background:#050505;color:#f3eee6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 22px;}
.section-kicker{font-size:13px;letter-spacing:5px;text-transform:uppercase;margin-bottom:18px;opacity:.65;}
.countdown-section h2{font-family:"Italiana",serif;font-size:58px;font-weight:400;margin-bottom:42px;}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;width:min(920px,100%);}
.countdown div{border:1px solid rgba(244,234,216,.22);background:rgba(244,234,216,.05);padding:28px 14px;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.countdown strong{font-family:"DM Mono",monospace;font-size:48px;font-weight:300;display:block;}
.countdown span{font-size:12px;letter-spacing:3px;text-transform:uppercase;opacity:.7;}

.paper-section{background:#e9dfcf;color:#15110d;padding:120px 22px;overflow:hidden;}
.paper-stack{width:min(760px,100%);margin:0 auto;display:flex;flex-direction:column;gap:42px;}
.paper-card{background:#f8f1e6;border:1px solid #17120d;box-shadow:0 30px 70px rgba(0,0,0,.2);padding:28px;min-height:330px;display:flex;flex-direction:column;justify-content:center;will-change:transform,opacity;}
.paper-card span{font-family:"DM Mono",monospace;font-size:15px;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;}
.paper-card h3{font-family:"Italiana",serif;font-size:54px;font-weight:400;line-height:.95;margin-bottom:18px;}
.paper-card p{font-size:24px;line-height:1.25;}
.photo-card{padding:18px;}
.photo-card .photo-placeholder{height:360px;background:linear-gradient(135deg,#1b1b1b,#777);border:1px solid #17120d;}
.photo-card .photo-placeholder.dark{background:linear-gradient(135deg,#050505,#3c3027);}
.photo-card p{font-size:16px;letter-spacing:2px;text-transform:uppercase;text-align:center;margin-top:14px;}
.rotate-left{transform:rotate(-3deg);}
.rotate-right{transform:rotate(3deg);}
.rotate-left-sm{transform:rotate(-1.5deg);}
.rotate-right-sm{transform:rotate(1.8deg);}

.rsvp-section{min-height:100vh;background:#050505;color:#f3eee6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 22px;}
.rsvp-section h2{font-family:"Italiana",serif;font-size:58px;font-weight:400;margin-bottom:34px;}
.rsvp-form{width:min(560px,100%);display:flex;flex-direction:column;gap:14px;}
.rsvp-form input,.rsvp-form textarea{width:100%;border:1px solid rgba(244,234,216,.25);background:transparent;color:#f3eee6;padding:16px 18px;font-family:"Cormorant Garamond",serif;font-size:20px;outline:none;}
.rsvp-form textarea{min-height:130px;resize:vertical;}
.rsvp-form button{border:1px solid #f3eee6;background:#f3eee6;color:#050505;padding:16px 18px;font-size:13px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;}

.envelope{
  width:100vw;
  height:100vh;
  aspect-ratio:auto;
  position:relative;
  border:0;
  background:transparent;
  cursor:pointer;
  display:block;
  padding:0;
  perspective:1800px;
}



@media(max-width:576px){
  .envelope{height:100%;}
  .save-content h1{font-size:76px;}
  .save-content strong{font-size:17px;}
  .hero-content h2{font-size:68px;}
  .countdown{grid-template-columns:repeat(2,1fr);}
  .countdown strong{font-size:36px;}
  .paper-card{min-height:290px;padding:22px;}
  .paper-card h3{font-size:40px;}
  .paper-card p{font-size:20px;}
  .photo-card .photo-placeholder{height:280px;}
}


@media(max-width:576px){
  .envelope{
    height:130vh;
  }

  .save-content h1{font-size:76px;}
  .save-content strong{font-size:17px;}
  .hero-content h2{font-size:68px;}
}
.env-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  will-change:transform,opacity;
}



.story-countdown-section{min-height:70vh;background:#f9efe2;color:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 18px;}
.story-countdown-title{font-family:"Great Vibes",cursive;font-size:clamp(46px,7vw,84px);font-weight:400;line-height:1.15;color:#480A16;margin-bottom:52px;}
.story-countdown{width:min(900px,100%);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;}
.story-time{min-width:0;text-align:center;}
.story-time strong{display:block;font-family:"Sanchez",serif;font-size:clamp(34px,6vw,70px);font-weight:400;line-height:1;color:#480A16;font-variant-numeric:tabular-nums;}
.story-time span{display:block;font-family:"Sanchez",serif;font-size:clamp(9px,1.4vw,13px);letter-spacing:2px;text-transform:uppercase;color:#000;margin-top:14px;}
.story-separator{font-family:"Sanchez",serif;font-size:clamp(34px,6vw,70px);font-weight:400;line-height:.9;color:#480A16;padding:0 10px;}

@media(max-width:576px){
.story-countdown-section{min-height:40vh;padding:75px 12px;}
.story-countdown-title{font-size:44px;margin-bottom:42px;}
.story-separator{padding:0 3px;}
.story-time span{letter-spacing:1px;margin-top:10px;}
}


.wedding-calendar-section{background:#f9efe2;color:#000;text-align:center;padding:20px 20px 120px;}
.wedding-calendar-intro{width:min(760px,100%);margin:0 auto 48px;font-family:"Great Vibes",cursive;font-size:clamp(42px,6vw,70px);font-weight:400;line-height:1.15;color:#480A16;}
.wedding-calendar-card{width:min(520px,100%);margin:0 auto;padding:22px;}
.wedding-calendar-inner{border:1px solid #480A16;padding:34px 28px 30px;}
.wedding-calendar-heading{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid rgba(72,10,22,.28);padding-bottom:18px;margin-bottom:24px;color:#480A16;}
.wedding-calendar-heading span{font-size:48px;line-height:1;}
.wedding-calendar-heading strong{font-family:"Sanchez",serif;font-size:16px;font-weight:400;letter-spacing:3px;}
.wedding-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px 5px;align-items:center;}
.calendar-day-name{font-family:"Sanchez",serif;font-size:11px;font-weight:400;letter-spacing:1px;text-transform:uppercase;color:#480A16;margin-bottom:8px;}
.calendar-date{width:38px;height:38px;margin:auto;display:flex;align-items:center;justify-content:center;border-radius:50%;font-family:"Sanchez",serif;font-size:15px;color:#111;}
.calendar-date.empty{visibility:hidden;}
.calendar-date.selected-date{background:#480A16;color:#fff;box-shadow:0 6px 16px rgba(72,10,22,.28);}
.calendar-save-button{display:inline-flex;align-items:center;justify-content:center;min-width:220px;margin-top:24px;background:#480A16;border:1px solid #480A16;color:#fff;padding:15px 28px;font-family:"Sanchez",serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;transition:.25s ease;}
.calendar-save-button:hover{background:#fff;color:#480A16;}

@media(max-width:576px){
.wedding-calendar-section{padding:10px 14px 90px;}
.wedding-calendar-intro{font-size:43px;margin-bottom:38px; margin-top:30px;
}
/*.wedding-calendar-card{padding:14px;box-shadow:9px 9px 0 rgba(72,10,22,.14),0 20px 40px rgba(0,0,0,.12);}*/
.wedding-calendar-inner{padding:28px 14px 24px;}
.wedding-calendar-heading span{font-size:40px;}
.wedding-calendar-heading strong{font-size:13px;letter-spacing:2px;}
.wedding-calendar-grid{gap:7px 2px;}
.calendar-date{width:34px;height:34px;font-size:14px;}
.calendar-save-button{width:100%;min-width:0;}
}
.story-countdown-section{border:0;box-shadow:none;}
.wedding-calendar-section{border:0;box-shadow:none;}

.story-countdown-section{
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
}

.story-countdown-section:before,
.story-countdown-section:after{
  display:none!important;
  content:none!important;
}

.wedding-calendar-section{
  position:relative;
  z-index:2;
  margin-top:-1px;
  border-top:0!important;
  outline:0!important;
  box-shadow:none!important;
}

.wedding-parallax{position:relative;width:100%;height:82vh;min-height:560px;overflow:hidden;background:#000;}
.wedding-parallax-image{position:absolute;top:-12%;left:0;width:100%;height:124%;object-fit:cover;object-position:center;will-change:transform;}

@media(max-width:576px){
.wedding-parallax{height:72vh;min-height:500px;}
.wedding-parallax-image{top:-10%;height:120%;}
}
.wedding-timeline-section{background:#f9efe2;color:#111;padding:110px 20px 130px;overflow:hidden;}
.wedding-timeline-heading{text-align:center;margin-bottom:75px;}
.wedding-timeline-heading p{font-family:"Italiana",serif;font-size:clamp(38px,6vw,62px);font-weight:400;color:#480A16;margin-bottom:30px;}
.wedding-date{display:flex;align-items:center;justify-content:center;color:#480A16;}
.wedding-date span{font-family:"Sanchez",serif;font-size:15px;font-weight:400;letter-spacing:3px;text-transform:uppercase;padding:0 22px;}
.wedding-date span+span{border-left:1px solid #480A16;}
.wedding-timeline{position:relative;width:min(820px,100%);margin:0 auto;}
.wedding-timeline:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#480A16;transform:translateX(-50%);}
.wedding-timeline-item{position:relative;width:50%;padding-bottom:62px;}
.timeline-item-left{margin-right:auto;padding-right:48px;text-align:right;}
.timeline-item-right{margin-left:auto;padding-left:48px;text-align:left;}
.wedding-timeline-dot{position:absolute;top:28px;width:17px;height:17px;background:#f9efe2;border:4px solid #480A16;border-radius:50%;z-index:2;}
.timeline-item-left .wedding-timeline-dot{right:-8px;}
.timeline-item-right .wedding-timeline-dot{left:-9px;}
.wedding-timeline-card{background:#fff;border:1px solid #480A16;padding:28px;box-shadow:8px 8px 0 rgba(72,10,22,.12);}
.wedding-timeline-time{display:block;font-family:"Sanchez",serif;font-size:25px;color:#480A16;margin-bottom:13px;}
.wedding-timeline-card h3{font-family:"Italiana",serif;font-size:31px;font-weight:400;line-height:1.1;color:#480A16;margin-bottom:15px;}
.wedding-timeline-card p{font-family:"Sanchez",serif;font-size:15px;line-height:1.65;color:#111;margin-bottom:22px;}
.wedding-location-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #480A16;color:#480A16;padding:10px 15px;font-family:"Sanchez",serif;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;transition:.25s ease;}
.wedding-location-button:hover{background:#480A16;color:#fff;}

@media(max-width:650px){
.wedding-timeline-section{padding:90px 15px 100px;}
.wedding-timeline-heading{margin-bottom:55px;}
.wedding-timeline-heading p{font-size:42px;}
.wedding-date span{font-size:11px;letter-spacing:1.5px;padding:0 10px;}
.wedding-timeline:before{left:9px;}
.wedding-timeline-item{width:100%;margin:0;padding:0 0 42px 36px;text-align:left;}
.timeline-item-left{padding-right:0;}
.timeline-item-right{padding-left:36px;}
.timeline-item-left .wedding-timeline-dot,.timeline-item-right .wedding-timeline-dot{left:0;right:auto;top:25px;}
.wedding-timeline-card{padding:23px 20px;box-shadow:6px 6px 0 rgba(72,10,22,.12);}
.wedding-timeline-time{font-size:22px;}
.wedding-timeline-card h3{font-size:27px;}
}

.horizontal-gallery{position:relative;width:100%;height:100vh;height:100svh;min-height:600px;overflow:hidden;background:#000;}
.horizontal-gallery-track{display:flex;width:max-content;height:100%;}
.horizontal-gallery-slide{position:relative;flex:0 0 100vw;width:100vw;height:100%;overflow:hidden;}
.horizontal-gallery-image{position:absolute;top:-6%;left:-6%;width:112%;height:112%;object-fit:cover;object-position:center;transform:scale(1.04);will-change:transform;}

@media(max-width:576px){
.horizontal-gallery{min-height:520px;}
.horizontal-gallery-image{top:-4%;left:-8%;width:116%;height:108%;}
}
.locations-section{background:#f9efe2;color:#111;padding:120px 20px 140px;}
.locations-heading{text-align:center;margin-bottom:60px;}
.locations-heading p{font-family:"Sanchez",serif;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:#480A16;margin-bottom:15px;}
.locations-heading h2{font-family:"Italiana",serif;font-size:clamp(42px,6vw,68px);font-weight:400;color:#480A16;}
.locations-grid{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;}
.location-card{background:#fff;border:2px solid #111;padding:17px;box-shadow:12px 12px 0 rgba(0,0,0,.12);scroll-margin-top:30px;}
.location-card-inner{height:100%;border:1px solid #111;padding:34px 30px;display:flex;flex-direction:column;}
.location-time{display:block;font-family:"Sanchez",serif;font-size:14px;letter-spacing:2px;color:#480A16;margin-bottom:14px;}
.location-card h3{font-family:"Italiana",serif;font-size:clamp(29px,3vw,39px);font-weight:400;line-height:1.1;color:#480A16;margin-bottom:14px;}
.location-name{font-family:"Sanchez",serif;font-size:14px;line-height:1.65;color:#111;margin-bottom:26px;}
.location-map{position:relative;width:100%;aspect-ratio:4/3;background:#f9efe2;border:1px solid #111;overflow:hidden;}
.location-map iframe{display:block;width:100%!important;height:100%!important;border:0!important;}
.parking-note{font-family:"Sanchez",serif;font-size:13px;line-height:1.5;color:#111;background:#f9efe2;border:1px solid #111;padding:13px 15px;margin-top:18px;}

@media(max-width:768px){
.locations-section{padding:90px 14px 105px;}
.locations-heading{margin-bottom:45px;}
.locations-grid{grid-template-columns:1fr;gap:34px;}
.location-card{padding:12px;box-shadow:8px 8px 0 rgba(0,0,0,.12);}
.location-card-inner{padding:27px 19px;}
.location-map{aspect-ratio:1/1;}
}

.rsvp-luxury-section{background:#480A16;padding:130px 20px 150px;color:#111;overflow:hidden;}
.rsvp-shell{width:min(1080px,100%);margin:0 auto;background:#fff;border:1px solid #111;box-shadow:18px 18px 0 rgba(0,0,0,.24);display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.4fr);}
.rsvp-copy{background:#f9efe2;border-right:1px solid #111;padding:70px 52px;display:flex;flex-direction:column;justify-content:center;}
.rsvp-eyebrow{font-family:"Sanchez",serif;font-size:11px;letter-spacing:5px;text-transform:uppercase;color:#480A16;margin-bottom:26px;}
.rsvp-copy h2{font-family:"Italiana",serif;font-size:clamp(48px,5vw,72px);font-weight:400;line-height:1.03;color:#480A16;margin-bottom:28px;}
.rsvp-copy>p{font-family:"Sanchez",serif;font-size:15px;line-height:1.8;color:#333;margin-bottom:40px;}
.rsvp-deadline{border-top:1px solid rgba(72,10,22,.3);padding-top:24px;font-family:"Sanchez",serif;font-size:13px;line-height:1.7;color:#333;}
.rsvp-deadline strong{display:block;color:#480A16;font-size:16px;font-weight:400;margin-top:4px;}
.rsvp-luxury-form{padding:68px 54px;background:#fff;}
.rsvp-question>span{display:block;font-family:"Sanchez",serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#480A16;margin-bottom:20px;}
.rsvp-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;}
.rsvp-choice{position:relative;min-height:118px;border:1px solid #111;background:#fff;color:#111;padding:20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;text-align:left;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,background .3s ease,color .3s ease,border-color .3s ease;}
.rsvp-choice:hover{transform:translateY(-4px);box-shadow:7px 7px 0 rgba(72,10,22,.15);border-color:#480A16;}
.rsvp-choice.is-selected[data-attendance="yes"]{background:#480A16;border-color:#480A16;color:#fff;box-shadow:7px 7px 0 rgba(0,0,0,.16);}
.rsvp-choice.is-selected[data-attendance="no"]{background:#111;border-color:#111;color:#fff;box-shadow:7px 7px 0 rgba(72,10,22,.16);}
.rsvp-choice-icon{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Sanchez",serif;font-size:17px;}
.rsvp-choice-content{display:flex;flex-direction:column;gap:7px;}
.rsvp-choice-content strong{font-family:"Sanchez",serif;font-size:13px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;}
.rsvp-choice-content small{font-family:"Sanchez",serif;font-size:11px;font-weight:400;line-height:1.4;opacity:.65;}
.rsvp-choice-arrow{font-family:"Sanchez",serif;font-size:20px;transition:transform .3s ease;}
.rsvp-choice:hover .rsvp-choice-arrow{transform:translateX(4px);}
.rsvp-fields{margin-top:42px;}
.rsvp-fields[hidden]{display:none;}
.rsvp-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.rsvp-field{display:flex;flex-direction:column;gap:9px;}
.rsvp-field-full{grid-column:1/-1;}
.rsvp-field label{font-family:"Sanchez",serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#480A16;}
.rsvp-field input,.rsvp-field textarea{width:100%;border:1px solid #bbb;background:#FAF7F2;color:#111;padding:16px 17px;font-family:"Sanchez",serif;font-size:14px;outline:none;border-radius:0;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;}
.rsvp-field input:focus,.rsvp-field textarea:focus{border-color:#480A16;background:#fff;box-shadow:4px 4px 0 rgba(72,10,22,.11);}
.rsvp-field textarea{min-height:130px;resize:vertical;}
.rsvp-attending-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.rsvp-submit{width:100%;margin-top:24px;border:1px solid #480A16;background:#480A16;color:#fff;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;font-family:"Sanchez",serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:background .3s ease,color .3s ease,box-shadow .3s ease;}
.rsvp-submit:hover{background:#fff;color:#480A16;box-shadow:7px 7px 0 rgba(72,10,22,.13);}
.rsvp-submit i{font-style:normal;font-size:20px;transition:transform .3s ease;}
.rsvp-submit:hover i{transform:translateX(5px);}
.rsvp-privacy{font-family:"Sanchez",serif;font-size:10px;line-height:1.5;text-align:center;color:#777;margin-top:16px;}

@media(max-width:850px){
.rsvp-shell{grid-template-columns:1fr;}
.rsvp-copy{border-right:0;border-bottom:1px solid #111;padding:55px 38px;}
.rsvp-luxury-form{padding:48px 38px;}
}

@media(max-width:576px){
.rsvp-luxury-section{padding:90px 14px 110px;}
.rsvp-shell{box-shadow:9px 9px 0 rgba(0,0,0,.24);}
.rsvp-copy{padding:45px 25px;}
.rsvp-copy h2{font-size:48px;}
.rsvp-luxury-form{padding:38px 20px;}
.rsvp-choice-grid{grid-template-columns:1fr;}
.rsvp-choice{min-height:100px;padding:17px;}
.rsvp-fields{margin-top:34px;}
.rsvp-fields-grid{grid-template-columns:1fr;}
.rsvp-field-full{grid-column:auto;}
.rsvp-attending-fields{grid-column:auto;grid-template-columns:1fr;}
}

.rsvp-response{margin-top:18px;text-align:center;font-size:15px;font-weight:600;}
.rsvp-response.is-success{color:#487354;}
.rsvp-response.is-error{color:#9e3434;}
.rsvp-submit:disabled{opacity:.65;cursor:not-allowed;}
.day-schedule-section{position:relative;min-height:100vh;background:linear-gradient(rgba(20,10,8,.76),rgba(20,10,8,.84)),url("https://katarina-luka.com/pozivnica/assets/img/Pozivnica2.jpeg") center/cover no-repeat;color:#fff;padding:120px 20px 135px;overflow:hidden;}
.day-schedule-inner{width:min(760px,100%);margin:0 auto;}
.day-schedule-heading{text-align:center;margin-bottom:75px;}
.day-schedule-heading span{display:block;font-family:"Sanchez",serif;font-size:12px;letter-spacing:4px;text-transform:uppercase;margin-bottom:17px;opacity:.78;}
.day-schedule-heading h2{font-family:"Italiana",serif;font-size:clamp(46px,7vw,72px);font-weight:400;line-height:1.05;}
.day-schedule-list{position:relative;padding-left:92px;}
.day-schedule-line{position:absolute;top:8px;bottom:8px;left:29px;width:1px;background:rgba(255,255,255,.72);transform-origin:top center;}
.day-schedule-item{position:relative;padding:0 0 65px 35px;}
.day-schedule-item:last-child{padding-bottom:0;}
.day-schedule-marker{position:absolute;top:6px;left:-71px;width:25px;height:25px;background:#fff;clip-path:polygon(50% 0,59% 39%,100% 50%,59% 61%,50% 100%,41% 61%,0 50%,41% 39%);filter:drop-shadow(0 0 8px rgba(255,255,255,.75));z-index:2;}
.day-schedule-content{max-width:520px;}
.day-schedule-time{display:block;font-family:"Sanchez",serif;font-size:14px;letter-spacing:3px;margin-bottom:10px;opacity:.82;}
.day-schedule-content h3{font-family:"Italiana",serif;font-size:clamp(31px,5vw,46px);font-weight:400;line-height:1.1;margin-bottom:13px;}
.day-schedule-content p{font-family:"Sanchez",serif;font-size:14px;line-height:1.75;color:rgba(255,255,255,.78);}
.day-schedule-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.75);color:#fff;padding:10px 16px;margin-top:18px;font-family:"Sanchez",serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;transition:.25s ease;}
.day-schedule-button:hover{background:#fff;color:#480A16;}

@media(max-width:576px){
.day-schedule-section{padding:90px 18px 105px;background-position:center;}
.day-schedule-heading{margin-bottom:55px;}
.day-schedule-heading h2{font-size:48px;}
.day-schedule-list{padding-left:49px;}
.day-schedule-line{left:12px;}
.day-schedule-item{padding:0 0 52px 23px;}
.day-schedule-marker{left:-48px;width:21px;height:21px;}
.day-schedule-content h3{font-size:32px;}
.day-schedule-content p{font-size:13px;}
}

.day-schedule-heading h2{font-family:"Cormorant Garamond",serif;font-size:clamp(46px,7vw,72px);font-weight:500;line-height:1.05;}
.day-schedule-content h3{font-family:"Cormorant Garamond",serif;font-size:clamp(34px,5vw,48px);font-weight:500;line-height:1.1;margin-bottom:13px;}

.mobile-locations-section{background:var(--cream,#F5E9DB);color:#111;padding:95px 18px 115px;}
.mobile-locations-heading{width:min(620px,100%);margin:0 auto 65px;text-align:center;}
.mobile-locations-heading span{display:block;font-family:"Sanchez",serif;font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#480A16;margin-bottom:14px;}
.mobile-locations-heading h2{font-family:"Cormorant Garamond",serif;font-size:52px;font-weight:500;line-height:1;color:#480A16;}
.mobile-location{width:min(620px,100%);margin:0 auto;scroll-margin-top:25px;}
.mobile-location-time{display:block;font-family:"Sanchez",serif;font-size:12px;letter-spacing:3px;color:#480A16;margin-bottom:12px;}
.mobile-location h3{font-family:"Cormorant Garamond",serif;font-size:40px;font-weight:500;line-height:1.05;color:#480A16;margin-bottom:14px;}
.mobile-location-address{font-family:"Sanchez",serif;font-size:14px;line-height:1.7;color:#222;margin-bottom:26px;}
.mobile-location-map{width:100%;aspect-ratio:4/3;border:1px solid #111;background:#fff;overflow:hidden;}
.mobile-location-map iframe{display:block;width:100%!important;height:100%!important;border:0!important;}
.mobile-location-button{width:100%;display:flex;align-items:center;justify-content:space-between;background:#480A16;border:1px solid #480A16;color:#fff;padding:16px 18px;margin-top:14px;font-family:"Sanchez",serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;}
.mobile-location-button span{font-size:18px;line-height:1;}
.mobile-location-divider{width:min(620px,100%);height:1px;background:rgba(72,10,22,.35);margin:65px auto;}
.mobile-location-note{font-family:"Sanchez",serif;font-size:12px;line-height:1.6;color:#111;border-left:2px solid #480A16;padding-left:13px;margin-top:20px;}

@media(min-width:700px){
.mobile-locations-section{padding:125px 24px 145px;}
.mobile-locations-heading{margin-bottom:80px;}
.mobile-locations-heading h2{font-size:66px;}
.mobile-location h3{font-size:48px;}
.mobile-location-map{aspect-ratio:16/10;}
}
.day-schedule-heading h2,
.day-schedule-content h3{
  font-family:"Cormorant Garamond",serif;
  font-weight:500;
}