/* Құдалық — Dastur.Online invitation template */
@font-face{font-family:'ShelleyKZ';src:url('assets/shelley-kz.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Celestina';src:url('assets/celestina.ttf') format('truetype');font-display:swap}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:#fbf7e6;padding-bottom:160px;color:#4a3d29;font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif;-webkit-font-smoothing:antialiased}
::selection{background:rgba(184,150,79,.28)}

/* Fixed background layers */
.bg-fill{position:fixed;inset:0;z-index:0;background:#fbf7e6;pointer-events:none}
.fixed-background{position:fixed;inset:0;z-index:1;background-image:url('assets/background-mobile.webp');background-size:100% auto;background-position:center center;background-repeat:no-repeat;pointer-events:none}
@media(min-width:600px){.fixed-background{background-image:url('assets/background-desktop.webp')}}

.page{position:relative;z-index:2;width:100%;min-height:100%;display:flex;flex-direction:column;align-items:center;padding:0 max(7vw,20px)}
.col{width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center}

/* Reveal on load */
@keyframes revUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
[data-reveal]{animation:revUp .95s both cubic-bezier(.22,.61,.36,1)}
@media(prefers-reduced-motion:reduce){[data-reveal]{animation:none!important}}

/* Hero */
.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14vh 0 10vh;gap:26px}
.kicker{letter-spacing:.62em;font-size:13px;font-weight:600;text-transform:uppercase;color:#a7853f;padding-left:.62em;font-family:'Cormorant SC','Cormorant Garamond',serif}
.hero-orn{font-family:'Celestina',serif;font-size:26px;color:#b8964f;line-height:1}
.title{margin:0;font-family:'ShelleyKZ',cursive;font-size:clamp(76px,26vw,132px);font-weight:400;line-height:.92;color:#a9852f;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.subname{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:clamp(30px,9vw,44px);color:#5a4a30;margin-top:-4px}
.subname:empty{display:none}

.divider{display:flex;align-items:center;gap:14px;width:min(340px,72vw)}
.divider .ln{flex:1;height:1px}
.divider .ln.l{background:linear-gradient(90deg,transparent,#c6a15b)}
.divider .ln.r{background:linear-gradient(90deg,#c6a15b,transparent)}
.divider .dia{width:8px;height:8px;transform:rotate(45deg);background:#b8964f;flex:none}

.datetime{display:flex;align-items:stretch;margin-top:8px}
.dt{padding:0 22px}
.dt.l{text-align:right}
.dt.r{text-align:left}
.dt-rule{width:1px;background:linear-gradient(180deg,transparent,#c6a15b,transparent)}
.dt-label{font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:#a7853f;font-family:'Cormorant SC','Cormorant Garamond',serif;margin-bottom:4px}
.dt-val{font-size:23px;color:#4a3d29;font-weight:500}

/* Generic section */
.section{width:100%;text-align:center}
.leaf{font-family:'Celestina',serif;font-size:20px;color:#b8964f;margin-bottom:26px}
.heading{margin:0 0 36px;font-family:'ShelleyKZ',cursive;font-size:clamp(46px,15vw,66px);font-weight:400;color:#a9852f}

/* Invitation text */
.sec-invite{padding:8vh 0}
.inv-p{margin:0 0 20px;font-size:clamp(18px,4.6vw,21px);line-height:1.7;color:#54462f;white-space:pre-line}

/* Hosts */
.sec-hosts{padding:5vh 0 8vh}
.hosts-label{font-size:13px;letter-spacing:.4em;text-transform:uppercase;color:#a7853f;font-family:'Cormorant SC','Cormorant Garamond',serif;margin-bottom:14px}
.host-name{font-family:'ShelleyKZ',cursive;font-size:clamp(38px,12vw,54px);color:#7d3a33;line-height:1.15}

/* Timeline */
.sec-timeline{padding:6vh 0}
.tl-wrap{position:relative;max-width:430px;margin:0 auto;padding-left:34px;text-align:left}
.tl-line{position:absolute;left:5px;top:8px;bottom:8px;width:1px;border-left:1px dotted #c6a15b}
.tl-item{position:relative;padding:0 0 34px}
.tl-node{position:absolute;left:-33px;top:6px;width:11px;height:11px;transform:rotate(45deg);background:#fbf7e6;border:1.5px solid #b8964f;box-shadow:0 0 0 4px #fbf7e6}
.tl-time{font-family:'Cormorant SC','Cormorant Garamond',serif;font-size:16px;letter-spacing:.14em;color:#a9852f;font-weight:600}
.tl-title{font-size:clamp(19px,5vw,23px);color:#54462f;margin-top:3px;line-height:1.35}

/* Photo */
.sec-photo{padding:6vh 0}
.photo-frame{position:relative;display:inline-block;max-width:100%;padding:12px;background:#faf4e6;box-shadow:0 18px 40px -22px rgba(90,60,20,.55)}
.photo-frame .brd{position:absolute;inset:5px;border:1px solid #d8c48c;pointer-events:none}
.photo-frame .brd.i{outline:1px solid #efe0b8;outline-offset:3px}
.photo-frame img{display:block;width:100%;max-width:520px;height:auto;position:relative}
.photo-frame .cn{position:absolute;width:26px;height:26px}
.photo-frame .cn.tl{left:-1px;top:-1px;border-left:2px solid #b8964f;border-top:2px solid #b8964f}
.photo-frame .cn.tr{right:-1px;top:-1px;border-right:2px solid #b8964f;border-top:2px solid #b8964f}
.photo-frame .cn.bl{left:-1px;bottom:-1px;border-left:2px solid #b8964f;border-bottom:2px solid #b8964f}
.photo-frame .cn.br{right:-1px;bottom:-1px;border-right:2px solid #b8964f;border-bottom:2px solid #b8964f}

/* Venue */
.sec-venue{padding:6vh 0 4vh}
.venue-hall{font-size:clamp(22px,6vw,28px);color:#54462f;font-weight:500;margin-bottom:6px}
.venue-line{font-size:clamp(18px,5vw,21px);color:#6b5a3d;line-height:1.6}
.venue-line:empty{display:none}
.map-btn{display:inline-flex;align-items:center;gap:10px;margin-top:26px;padding:13px 30px;border:1px solid #b8964f;color:#8a6a2c;text-decoration:none;font-family:'Cormorant SC','Cormorant Garamond',serif;font-size:15px;letter-spacing:.22em;text-transform:uppercase;transition:background .4s,color .4s}
.map-btn:hover{background:#b8964f;color:#fbf6e8}
.map-btn .dia{width:6px;height:6px;transform:rotate(45deg);background:currentColor}

/* Footer */
.sec-footer{padding:7vh 0 3vh}
.brand{font-family:'Celestina',serif;font-size:26px;color:#b8964f}

.is-hidden{display:none!important}
