/* Native CSS-pixel layout, scoped to Betawi's RSVP/Hadiah/Closing.
   Original PSD coordinates/colors/fonts remain; oversized parent scales removed. */
.bw-native{--u:calc(min(100vw,480px) / 1882);height:calc(var(--bw-h) * var(--u));}
#bw-rsvp{--bw-h:4542}#bw-hadiah{--bw-h:3693}#bw-closing{--bw-h:3971}

.bw-rsvp{
  position:relative;
  width:100%;
  overflow:hidden;
  background:#e2d3b8;
}
.bw-rsvp-scene{
  --s:.2;
  position:absolute;
  top:0;
  left:0;
  width:calc(1882 * var(--u));
  height:calc(4542 * var(--u));
  transform-origin:top left;
}
.bw-rsvp .bw-l{ animation-play-state:paused; }
.bw-rsvp .bw-i-sway-y{
  --i-x: calc(12 * var(--u)); --i-y: 0px;
  animation-duration: var(--e-dur, 700ms), calc(var(--i-dur, 8000ms) * 1.8);
  animation-iteration-count: 1, infinite;
  animation-direction: normal, normal;
  animation-name: bwGrowY, bwPasDrift;
}
.bw-rsvp-form{ position:absolute; }
.bw-rsvp-form [hidden]{ display:none !important; }
.rs-field{ margin:0 0 calc(76 * var(--u)); }
.rs-label{
  display:block;
  height:calc(60 * var(--u));
  margin:0 0 calc(35 * var(--u)) calc(-3 * var(--u));
  font:700 max(calc(52 * var(--u)), 13px)/calc(60 * var(--u)) 'Cormorant Garamond','Cochin',serif;
  letter-spacing:.06em;
  color:#701b22;
  white-space:nowrap;
}
.rs-ctl{
  display:block;
  width:100%;
  box-sizing:border-box;
  margin:0;
  border:calc(2 * var(--u)) solid #d9caae;
  border-radius:calc(30 * var(--u));
  background-color:#fff;
  color:#111;
  font:400 max(calc(66 * var(--u)), 16px)/1.25 'EB Garamond','Cochin',serif;
  padding:0 calc(58 * var(--u));
  outline:0;
  -webkit-appearance:none;
  appearance:none;
  box-shadow:none;
}
.rs-ctl::placeholder{ color:#757575; opacity:1; }
.rs-ctl:focus{ border-color:#701b22; }
input.rs-ctl{ height:calc(196 * var(--u)); }
.rs-select{
  height:calc(204 * var(--u));
  padding-right:calc(120 * var(--u));
  cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 20'%3E%3Cpath d='M3 3l14 14L31 3' fill='none' stroke='%23111' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right calc(10 * var(--u)) center;
  background-size:calc(34 * var(--u)) calc(20 * var(--u));
}
.rs-select:invalid{ color:#111; }
.rs-area{ height:calc(340 * var(--u)); padding-top:calc(56 * var(--u)); padding-bottom:calc(40 * var(--u)); resize:none; overflow:auto; line-height:1.35; }
.rs-submit-wrap{ position:relative; margin:calc(107 * var(--u)) calc(-4 * var(--u)) 0 calc(-4 * var(--u)); }
.rs-submit{
  display:block;
  width:100%;
  height:calc(192 * var(--u));
  border:0;
  border-radius:calc(30 * var(--u));
  background:#701b22;
  color:#fff;
  font:600 max(calc(54 * var(--u)), 15px)/1 'Cormorant Garamond','Cochin',serif;
  letter-spacing:.22em;
  text-indent:.22em;
  text-transform:uppercase;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}
.rs-submit:disabled{ opacity:.72; cursor:default; }
.rs-status{
  position:absolute;
  left:0; right:0;
  top:calc(100% + calc(24 * var(--u)));
  margin:0;
  text-align:center;
  font:600 max(calc(46 * var(--u)), 13px)/1.2 'Quicksand',sans-serif;
  color:#701b22;
}
.rs-status.is-ok{ color:#154800; }
.rs-cards{ margin-top:calc(137 * var(--u)); width:calc(1718 * var(--u)); }
.rs-cards:empty{ display:none; }
.rs-card{
  box-sizing:border-box;
  height:calc(316 * var(--u));
  margin:0 0 calc(58 * var(--u));
  padding:0 calc(64 * var(--u));
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:calc(6 * var(--u)) solid #e4d4a4;
  border-radius:calc(30 * var(--u));
  background:#fff;
  overflow:hidden;
}
.rs-card-name{
  font:italic 600 max(calc(68 * var(--u)), 14px)/1.15 'Cormorant Garamond','Cochin',serif;
  color:#701b22;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rs-card-msg{
  margin:calc(34 * var(--u)) 0 0;
  font:400 max(calc(59 * var(--u)), 13px)/1.3 'EB Garamond','Cochin',serif;
  color:#3a2d25;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.bw-hadiah{
  position:relative;
  width:100%;
  overflow:hidden;
  background:#c38588;
}
.bw-hadiah-scene{
  --s:.2;
  position:absolute;
  top:0;
  left:0;
  width:calc(1882 * var(--u));
  height:calc(3693 * var(--u));
  transform-origin:top left;
}
.bw-hadiah .bw-l{ animation-play-state:paused; }
.bw-hadiah .bw-i-sway-y{
  --i-x: calc(10 * var(--u)); --i-y: 0px;
  animation-duration: var(--e-dur, 700ms), calc(var(--i-dur, 8000ms) * 1.8);
  animation-iteration-count: 1, infinite;
  animation-direction: normal, normal;
  animation-name: bwGrowY, bwPasDrift;
}
.hd-card{ font-family:'Poppins',sans-serif; color:#2a0f06; }
.bw-hadiah .hd-card{ height:auto !important; min-height:calc(822 * var(--u)); }
.hd-card-bg{ position:absolute; left:0; top:0; width:calc(1205 * var(--u)); height:100%; min-height:calc(822 * var(--u)); display:block; }
.hd-body{ position:relative; box-sizing:border-box; min-height:calc(822 * var(--u)); padding:calc(104 * var(--u)) calc(92 * var(--u)) calc(96 * var(--u)) calc(92 * var(--u)); display:flex; flex-direction:column; justify-content:space-between; gap:calc(64 * var(--u)); white-space:normal; }
.hd-row{ display:flex; gap:calc(64 * var(--u)); }
.hd-row-head{ align-items:center; justify-content:space-between; }
.hd-row-num{ align-items:center; justify-content:space-between; }
.hd-row-meta{ align-items:flex-start; justify-content:space-between; }
.hd-col{ display:flex; flex-direction:column; gap:calc(30 * var(--u)); flex:1 1 0; min-width:0; }
.hd-col-r{ flex:0 0 auto; max-width:46%; align-items:flex-end; text-align:right; }
.hd-title{ flex:1 1 0; min-width:0; overflow-wrap:break-word; font:600 max(calc(53 * var(--u)), 13px)/1.15 'Poppins',sans-serif; }
.hd-label{ font:400 max(calc(40.5 * var(--u)), 11px)/1.1 'Poppins',sans-serif; }
.hd-card .hd-num{ overflow-wrap:anywhere; font:600 max(calc(50 * var(--u)), 15px)/1.15 'Poppins',sans-serif; letter-spacing:calc(12.5 * var(--u)); word-spacing:calc(20 * var(--u)); }
.hd-card .hd-holder{ overflow-wrap:break-word; font:500 max(calc(46.7 * var(--u)), 13px)/1.2 'Poppins',sans-serif; }
.hd-date{ white-space:nowrap; font:500 max(calc(46.5 * var(--u)), 12px)/1.2 'Poppins',sans-serif; }
.hd-logo{ flex:0 0 auto; max-width:40%; min-height:calc(86 * var(--u)); display:flex; align-items:center; justify-content:flex-end; }
.hd-logo img{ display:block; max-width:calc(294 * var(--u)); width:auto; max-height:calc(86 * var(--u)); object-fit:contain; }
.hd-logo-t{ font:600 max(calc(52 * var(--u)), 14px)/1.1 'Poppins',sans-serif; color:#1f2f6b; text-transform:uppercase; letter-spacing:.02em; text-align:right; }
.hd-copy{
  position:relative; flex:0 0 auto;
  width:calc(309 * var(--u)); height:calc(103 * var(--u));
  display:flex; align-items:center; justify-content:center; gap:calc(26 * var(--u));
  border:calc(3 * var(--u)) solid #806a36;
  border-radius:calc(52 * var(--u));
  background:#997e43;
  color:#fff;
  font:600 max(calc(38 * var(--u)), 11px)/1 'Poppins',sans-serif;
  letter-spacing:.02em;
  cursor:pointer;
  padding:0;
  -webkit-appearance:none;
  appearance:none;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
.hd-copy svg{ width:calc(34 * var(--u)); height:calc(40 * var(--u)); flex:0 0 auto; }
.hd-copy::after{ content:""; position:absolute; inset:-12px -8px; }
.hd-copy:focus-visible{ outline:calc(3 * var(--u)) solid #fff; outline-offset:calc(4 * var(--u)); }
.hd-copy.is-done{ background:#6f8a3a; border-color:#5b7330; }
.hd-copy-t{ white-space:nowrap; }
.hd-card[hidden], .hd-card [hidden]{ display:none !important; }
.bw-closing{
  position:relative;
  width:100%;
  overflow:hidden;
  background:var(--ua-theme, #9d5562);
}
.bw-closing-scene{
  --s:.2;
  position:absolute;
  top:0;
  left:0;
  width:calc(1882 * var(--u));
  height:calc(3971 * var(--u));
  transform-origin:top left;
}
.bw-closing .bw-l{ animation-play-state:paused; }
.cl-photo{ overflow:hidden; background:transparent; }
.cl-slides{ position:absolute; inset:0; }
.cl-slide{ position:absolute; inset:0; background-size:cover; background-position:50% 12%; opacity:0; transition:opacity 1.4s ease; }
.cl-slide.is-active{ opacity:1; }
.cl-veil{
  position:absolute; inset:0;
  background:linear-gradient(to bottom,
    rgba(var(--ua-theme-rgb, 157,85,98),0) 0%, rgba(var(--ua-theme-rgb, 157,85,98),.13) 9%, rgba(var(--ua-theme-rgb, 157,85,98),.23) 18%,
    rgba(var(--ua-theme-rgb, 157,85,98),.33) 27%, rgba(var(--ua-theme-rgb, 157,85,98),.43) 36%, rgba(var(--ua-theme-rgb, 157,85,98),.53) 45%,
    rgba(var(--ua-theme-rgb, 157,85,98),.68) 55%, rgba(var(--ua-theme-rgb, 157,85,98),.77) 64%, rgba(var(--ua-theme-rgb, 157,85,98),.93) 73%,
    rgb(var(--ua-theme-rgb, 157,85,98)) 78%, rgb(var(--ua-theme-rgb, 157,85,98)) 100%);
}
.cl-body{ position:absolute; left:0; top:0; width:calc(1882 * var(--u)); height:calc(3971 * var(--u)); }
.cl-text{
  position:absolute; left:0; top:calc(2604 * var(--u)); width:calc(1868 * var(--u));
  display:flex; flex-direction:column; align-items:center; text-align:center; color:var(--ua-theme-on, #fff);
}
.cl-text > .bw-l{ position:relative; margin:0; }
.cl-kata{
  max-width:calc(1160 * var(--u)); padding:0 calc(20 * var(--u)); box-sizing:border-box;
  font:400 max(calc(62 * var(--u)), 13.5px)/1.79 Arial,'Liberation Sans',Roboto,'Helvetica Neue',sans-serif;
}
.cl-blessed{
  margin-top:calc(86 * var(--u)) !important;
  font:400 max(calc(52 * var(--u)), 13px)/1.3 Arial,'Liberation Sans',Roboto,'Helvetica Neue',sans-serif;
  color:var(--ua-theme-on, #fff5d4);
}
.cl-names{
  margin-top:calc(39 * var(--u)) !important; max-width:calc(1700 * var(--u)); padding:0 calc(20 * var(--u)); box-sizing:border-box;
  font:italic 600 max(calc(120 * var(--u)), 22px)/1.15 'Cormorant Garamond','Cochin',serif;
  letter-spacing:.06em;
  color:var(--ua-theme-on, #f4eee6);
}
.cl-by{
  display:flex; align-items:center; justify-content:center; text-align:center; box-sizing:border-box;
  font:500 max(calc(44 * var(--u)), 12px)/1 'Cormorant Garamond','Cochin',serif;
  letter-spacing:.12em; padding-left:.12em; color:var(--ua-theme-on, #f0dfd0);
}
.cl-logo, .cl-soc-a{ display:block; }
.cl-logo img{ display:block; width:100%; height:100%; }
.cl-soc{ pointer-events:none; }
.cl-soc-a{ position:absolute; width:calc(136 * var(--u)); height:calc(136 * var(--u)); border-radius:50%; }
.cl-soc-a::after, .cl-logo::after{ content:""; position:absolute; inset:-10px; border-radius:50%; }
.cl-music{
  padding:0; border:0; background:transparent; cursor:pointer; border-radius:50%;
  -webkit-appearance:none; appearance:none; -webkit-tap-highlight-color:transparent;
}
.cl-music img{ display:block; width:100%; height:100%; opacity:.72; transition:opacity .3s ease; }
.cl-music.is-on img{ opacity:1; animation:bwClSpin 9s linear infinite; }
.cl-music:focus-visible{ outline:calc(4 * var(--u)) solid #fff; outline-offset:calc(6 * var(--u)); }
.bw-closing .cl-music::after{ content:""; position:absolute; inset:-6px; border-radius:50%; }
@media (prefers-reduced-motion: reduce){ .cl-music.is-on img{ animation:none; } }
@media (prefers-reduced-motion: reduce){ .cl-slide{ transition:none; } }
.bw-native>[id$="Scene"]{width:100%;height:100%;transform:none!important;}
.bw-native .bw-native-animated:not(.bw-on){animation:none!important;opacity:0;}
.bw-native .bw-native-animated.bw-on{animation-play-state:running!important;}
.bw-native-anchor{position:absolute;pointer-events:none;visibility:hidden;}
@media(prefers-reduced-motion:reduce){.bw-native .bw-native-animated:not(.bw-on){opacity:1!important;}}
