:root{--wine:#68131d;--cream:#fff1d8;--paper:#fff7e9;--ink:#4c1719;--gold:#b99a67;--serif:'Cormorant Garamond',Georgia,serif;--display:'Playfair Display',Georgia,serif;--arabic:'Amiri',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y proximity}body{margin:0;background:#ead6c8;color:var(--ink);font-family:var(--serif);font-size:18px}button,input{font:inherit}.page{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:28px 18px;overflow:hidden;scroll-snap-align:start}.cover{padding:0;background:#f7e8d6}.cover-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cover-hitbox{position:absolute;top:63%;left:32%;width:36%;height:6%;opacity:0;border:0;background:transparent;cursor:pointer;color:transparent}.cover-hitbox:focus-visible{opacity:.9;background:#68131d;color:#fff;border-radius:30px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px}.cover h1{font:400 clamp(27px,8vw,46px) var(--arabic);margin:0;color:var(--wine);display:flex;align-items:center;gap:10px}.cover h1 i{font:italic 24px var(--display)}.primary-btn,.outline-btn{border:0;border-radius:30px;padding:13px 24px;cursor:pointer;transition:transform .2s,box-shadow .2s}.primary-btn{background:var(--wine);color:var(--cream);box-shadow:0 6px 18px #4d111d2b}.primary-btn span{margin-left:10px}.primary-btn:active,.outline-btn:active{transform:scale(.98)}.floral-bg{background:#f3e2d2 url('assets/mosque-floral.jpg') center/cover fixed}.floral-bg:before{content:"";position:absolute;inset:0;background:rgba(255,241,220,.35);pointer-events:none}.paper-card,.maroon-panel,.gift-card,.rsvp-card,.closing-card{position:relative;z-index:1;width:min(100%,510px);box-shadow:0 12px 38px #4b1b1820}.paper-card{padding:34px 25px;background:rgba(255,248,235,.96);border:1px solid #9b795a;border-radius:48px 48px 38px 38px;text-align:center}.arabic{font-family:var(--arabic);line-height:1.75}.bismillah{font-size:clamp(25px,7vw,34px);margin:0 0 4px}.ornament{color:var(--gold);font-size:34px}.verse{font-size:clamp(23px,6vw,29px);margin:5px 0 20px;line-height:1.9}.translation{font-size:19px;line-height:1.5;margin:0}.verse-ref{font-size:19px;margin:22px 0 0}.maroon-panel{background:linear-gradient(145deg,#71151e,#4d0d15);color:#fff0d7;padding:32px 24px;border:1px solid #d2b28d;clip-path:polygon(0 7%,50% 0,100% 7%,100% 93%,50% 100%,0 93%);min-height:80svh;display:flex;flex-direction:column;justify-content:center;gap:20px}.greeting{text-align:center;font-size:clamp(22px,6vw,29px);margin:0}.blessing{text-align:center;font-size:18px;line-height:1.45;margin:0}.family-card{background:var(--paper);color:var(--ink);border:4px double var(--gold);border-radius:48px 48px 35px 35px;padding:20px 15px;text-align:center;box-shadow:0 4px 12px #0002}.family-card p{margin:5px 0}.family-card .parents{font-size:16px;line-height:1.35}.family-card h2{font:700 32px var(--arabic);margin:7px 0}.ampersand{color:var(--gold);font-size:24px}.event-panel{gap:24px;text-align:center;min-height:88svh}.event-block{display:flex;align-items:center;flex-direction:column;gap:5px}.line-icon{font-size:48px;color:#f8e5c8;line-height:1.1}.event-block h2{font-size:25px;font-weight:600;margin:5px 0}.event-block p{margin:3px 0;font-size:20px}.event-block .address{font-size:16px;line-height:1.45}.location-title{font-size:19px!important}.qr{width:112px;height:112px;object-fit:contain;background:#fff;padding:5px;border-radius:8px;margin-top:8px}.map-link{color:var(--cream);font-size:16px;text-underline-offset:4px}.gift-card{min-height:88svh;background:var(--cream);border:1px solid var(--wine);padding:28px 22px 0;text-align:center;display:flex;flex-direction:column;align-items:center;overflow:hidden}.gift-card h2{font:500 34px var(--display);margin:0 0 22px;color:var(--wine)}.envelope{position:relative;width:220px;height:150px;background:#9e1d2a;border-radius:10px 10px 7px 7px;margin:4px auto 18px;box-shadow:0 8px 18px #51101d25;overflow:hidden}.envelope:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,transparent 49%,#74151f 50%) left/50% 100% no-repeat,linear-gradient(215deg,transparent 49%,#851824 50%) right/50% 100% no-repeat}.envelope-flap{position:absolute;top:0;left:0;width:0;height:0;border-left:110px solid transparent;border-right:110px solid transparent;border-top:85px solid #74131f;z-index:1}.envelope span{position:absolute;z-index:2;right:20px;top:42px;color:#f3d4c8;font-size:30px}.gift-details{z-index:2;background:#fff7e8;padding:12px 20px;border:1px solid #c8ad83;min-width:80%;border-radius:8px}.gift-details p{margin:5px}.gift-name{font-weight:700;letter-spacing:.1em}.account{font-size:23px;font-weight:700;letter-spacing:.04em}.outline-btn{background:transparent;color:var(--wine);border:1px solid var(--wine);padding:9px 15px;font-size:16px}.copy-status{font-size:13px;min-height:16px}.couple-silhouette{margin-top:auto;font-size:160px;line-height:.9;color:var(--wine);transform:translateY(30px)}.rsvp-card{background:rgba(255,244,222,.92);padding:26px 20px;border-radius:5px}.rsvp-card h2{font:500 30px var(--display);margin:0 0 16px}.rsvp-card form>label{display:block;margin:8px 0}#guestName{width:100%;border:1px solid #80644f;border-radius:8px;background:#fff8e9;padding:12px;color:var(--ink);outline-color:var(--gold)}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:600;margin-bottom:10px}.choice{display:flex;align-items:center;gap:10px;background:#f6e6c8;padding:10px 12px;margin:8px 0;border-radius:4px;cursor:pointer}.choice input{accent-color:var(--wine)}.choice span{flex:1}.choice b{font-size:22px;color:var(--wine)}.submit-btn{display:block;margin:18px 0 0 auto;min-width:160px}.form-message{font-size:15px;line-height:1.4}.closing-card{background:var(--cream);border:1px solid var(--wine);padding:30px 24px;text-align:center;clip-path:polygon(0 6%,50% 0,100% 6%,100% 94%,50% 100%,0 94%)}.couple-art{position:relative;height:240px;width:100%;margin:0 auto 20px;display:flex;align-items:end;justify-content:center}.couple-art:before{content:"";position:absolute;width:180px;height:210px;border-radius:90px 90px 20px 20px;background:#6c111b;bottom:0;left:calc(50% - 90px)}.couple-art .groom,.couple-art .bride{position:absolute;bottom:85px;width:75px;height:115px;border-radius:42% 42% 18% 18%;background:#f0bda4}.groom{left:calc(50% - 74px);background:linear-gradient(#111 0 24%,#f0bda4 24% 55%,#fff 55% 61%,#6c111b 61%)!important;transform:rotate(-5deg)}.bride{left:calc(50% - 5px);width:95px!important;background:#6c111b!important;border-radius:50% 50% 20% 20%!important;height:145px!important;bottom:62px!important}.couple-art span{position:absolute;z-index:2;color:#fff;font-size:50px;bottom:0}.closing-quote{font-size:20px;line-height:1.5;letter-spacing:.03em}.closing-greeting{font-size:clamp(23px,6vw,31px);margin:22px 0}.end-mark{font-style:italic;margin-top:25px}.closing-card h2{font:700 28px var(--arabic);color:var(--wine)}.closing-card h2 span{font:italic 20px var(--display)}footer{text-align:center;padding:22px 15px;background:var(--wine);color:var(--cream);font:22px var(--arabic)}.music-pill{position:fixed;z-index:10;top:12px;right:12px}.music-pill button{border:1px solid #fff5;border-radius:30px;padding:8px 12px;background:#5d101bdc;color:white;backdrop-filter:blur(8px)}.music-pill button span{font-size:13px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes softPulse{0%,100%{box-shadow:0 6px 18px #4d111d2b}50%{box-shadow:0 6px 25px #4d111d65}}@media(min-width:700px){.page{padding:50px 24px}.paper-card{padding:44px 38px}.maroon-panel{padding:45px 38px}.rsvp-card{padding:38px;max-width:540px}.gift-card{max-width:520px}.floral-bg{background-attachment:scroll}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Final approved cover layout matching the second reference */
#cover { position: relative; overflow: hidden; }
#cover .cover-names {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
  display: block !important;
  z-index: 6 !important;
  pointer-events: none !important;
}
#cover .cover-name {
  position: absolute !important;
  display: block !important;
  color: #68131d !important;
  font-family: var(--arabic, serif) !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
  text-align: center !important;
  text-shadow: 0 1px 2px rgba(255,245,230,.65) !important;
  margin: 0 !important;
}
#cover .cover-bride {
  top: 25.5% !important;
  left: 21% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateX(-5%) !important;
  font-size: clamp(30px, 8vw, 44px) !important;
}
#cover .cover-groom {
  top: 55.5% !important;
  left: 57% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateX(-2%) !important;
  font-size: clamp(27px, 7vw, 39px) !important;
}
#cover .cover-name-divider { display: none !important; }
@media (max-height: 720px) {
  #cover .cover-bride { top: 25% !important; }
  #cover .cover-groom { top: 55% !important; }
}
