/*!* $yekanBakhPath and $iranSansPath define in Variables file*!*/



/*@font-face {*/
/*    font-family: "ir2";*/
/*    src: url("IRANSans/eot/IRANSansWeb.eot") format("embedded-opentype"), url("IRANSans/ttf/IRANSansWeb.ttf") format("truetype"), url("IRANSans/woff/IRANSansWeb.woff") format("woff"), url("IRANSans/woff2/IRANSansWeb.woff2") format("woff2");*/
/*    !* Modern Browsers *!*/
/*}*/

/* $yekanBakhPath and $iranSansPath define in Variables file*/
.row {
    --bs-gutter-x: 0;
}
@font-face {
    font-family: "ir";
    src:
        /*url("IRANSans/eot/IRANSansWeb.eot") format("embedded-opentype"),*/
            url("nast/text-graphy-fonts/IranNastaliq_1.ttf") format("truetype")
    /*url("IRANSans/woff/IRANSansWeb.woff") format("woff"),*/
    /*url("IRANSans/woff2/IRANSansWeb.woff2") format("woff2")*/
;
}
.font-display_2{
    font-size: 24px;
}
:root{
    --navy:#122a5e;
    --navy-deep:#0c1f47;
    --cream:#faf9f6;
    --white: #ffffff;
    --blue-deep: #1b3a5c;
    --blue-mid: #3f6f9e;
    --blue-line: #a9c6de;
}

*{box-sizing:border-box; margin:0; padding:0;}

html{
    scroll-behavior:smooth;
}

html,
body{
    font-family:'ir';
}

body{
    background:var(--cream);
    color:var(--navy);
    -webkit-font-smoothing:antialiased;
}

a{text-decoration:none; color:inherit;}
ul{list-style:none;}
img{display:block; max-width:100%;}

.font-display{font-family:'ir';}

.btn{
    display:inline-flex; align-items:center; gap:8px;
    background:var(--navy); color:#fff; font-size:14px;
    text-transform:uppercase;
    padding:12px 26px; border-radius:6px; border:none; cursor:pointer;
    transition:background .25s ease;
}
.btn:hover{background:var(--navy-deep);}
.btn svg{width:14px; height:14px;}

/* ===== HERO ===== */
.hero{position:relative;}
.hero-img-wrap{position:relative; height:100vh;overflow:hidden;}
.hero-img-wrap img{width:100%; height:100%; object-fit:cover; position:absolute; inset:0;}
.hero-overlay{
    position:absolute; inset:0;
    /*background:linear-gradient(to bottom, rgba(255,255,255,0.1), rgba(255,255,255,0.05) 40%, rgba(255,255,255,0.45));*/
}
.hero-content{
    position:relative; z-index:2; height:100%;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-align:center; padding:0 24px;
    line-height: normal;

    font-size: 80px;
    color: white;
}
.hero-content h1{
    font-size:88px; font-style:italic; color:var(--navy-deep);
    text-shadow:0 2px 10px rgba(255,255,255,0.4);
}

.divider{display:flex; align-items:center; gap:12px; margin:18px 0; color:var(--navy);}
.divider .line{width:40px; height:1px; background:var(--navy);}

@media (max-width:920px){
    .hero-content {justify-content:flex-start;}

}
@media (max-width:767px){

    .hero-img-wrap{height:100vh;}
    .hero-content h1{font-size:48px;}
    .hero-content {font-size: 70px;}

}

/* ===== WELCOME ===== */
.welcome-section{
    max-width: 500px;
    background-image: url("frame4.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display:flex;
    justify-content:center;
    padding:20px 20px;
}

.welcome-card{
    padding:20px;
    text-align:center;
    position:relative;
}

.welcome-text{
    color:#5f6f80;
    font-size:30px;
    line-height:1.9;
    margin-bottom:20px;
}

.around_us{
    font-size: 25px;
}
@media (max-width:768px){
    .around_us{
        font-size: 20px;
    }
    .welcome-card{
        padding:35px 24px;
    }
    .welcome-text{
        font-size:25px;
    }
}

/* ===== COUNTDOWN ===== */
.countdown-section{max-width:1000px; margin:0 auto; padding:10px 24px 40px; text-align:center;}
.section-title{font-family:'Cormorant Garamond', serif; font-size:28px; text-transform:uppercase;}
.countdown-timer{display:grid;grid-template-columns:1fr 1fr; justify-content:center; gap:16px; margin-top:34px; flex-wrap:wrap;}
.time-box{
    background:var(--navy); color:#fff; border-radius:10px;

    width:116px; padding:18px 0; box-shadow:0 8px 20px rgba(18,42,94,0.25);
}
.time-box .num{font-family:'Cormorant Garamond', serif; font-size:38px; font-weight:600; line-height:1;}
.time-box .label{font-size:21px; text-transform:uppercase;  margin-top:8px; opacity:0.9;}

/* ===== LOCATION + RSVP ===== */
.two-col{
    max-width:1200px; margin:0 auto; padding:0 24px 70px;
    display:grid; grid-template-columns:1fr 1fr; gap:40px;direction: rtl;
    align-items: center;

}
@media (max-width:1023px){ .two-col{grid-template-columns:1fr;} }

.col-heading{text-align:center; margin-bottom:22px;}
.col-heading h3{font-family:'Cormorant Garamond', serif; font-size:20px; text-transform:uppercase;}
.col-heading .divider{justify-content:center; margin-top:8px;}

.map-wrap{position:relative; border-radius:14px; overflow:hidden; height:300px; box-shadow:0 10px 30px rgba(18,42,94,0.12);}
.map-wrap iframe{width:100%; height:100%; border:0;}
.map-card{
    position:absolute; bottom:14px; left:14px; right:14px;
    background:#fff; border-radius:10px; padding:16px; box-shadow:0 8px 20px rgba(0,0,0,0.15);
}
.map-card .venue{font-size:14px; font-weight:600;}
.map-card .address{font-size:12px; color:rgba(18,42,94,0.7); margin:4px 0 10px;}
.map-card .btn{padding:9px 18px; font-size:12px;}
@media (min-width:640px){
    .map-card{left:auto; right:16px; width:260px;}
}

/* ===== DETAILS (address / date / time) ===== */
.details-card{
    /*height:300px;*/
    background:#fff;
    border-radius:14px;
    box-shadow:0 10px 30px rgba(18,42,94,0.12);
    padding:24px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:10px;
}
.detail-row{
    display:flex;
    flex-direction: column;


    align-items:center;
    text-align:right;
}
.detail-text{
    display:flex;
    flex-direction: row;
    margin: 0 10px;
    justify-content: flex-start;
    align-items:center;
    text-align:left;
}
.detail-icon{
    flex-shrink:0;
    width:44px; height:44px;
    border-radius:50%;
    border:1px solid var(--blue-line);
    color:var(--blue-deep);
    display:flex; align-items:center; justify-content:center;
}
.detail-icon svg{width:20px; height:20px;}
.detail-label{
    font-size:14px;
    color:var(--blue-mid);
    margin:0 10px 0px;
}
.detail-value{
    font-size:20px;
    color:var(--navy);
        line-height: 42px;
}

/* ===== RSVP FORM FIELDS ===== */
label{
    display:block;
    font-size: 11px;

    text-transform: uppercase;
    color: var(--blue-deep);
    margin-bottom: 8px;
}

.field{ margin-bottom: 24px; }

.choice-group{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 24px;
}

.choice{
    position:relative;
}
.choice input{
    position:absolute;
    opacity:0;
    inset:0;
    margin:0;
    cursor:pointer;
}
.choice span{
    display:block;
    text-align:center;
    padding: 16px 10px;
    border: 1px solid var(--blue-line);
    font-size: 18px;

    color: var(--blue-deep);
    transition: all .2s ease;
}
.choice input:checked + span{
    background: var(--blue-deep);
    border-color: var(--blue-deep);
    color: var(--white);
}
.choice input:focus-visible + span{
    outline: 2px solid var(--blue-mid);
    outline-offset: 2px;
}

/* ===== FOOTER ===== */
footer{
    position:relative; background:var(--navy-deep); color:#fff;
    padding:40px 24px 32px; text-align:center; overflow:hidden;
}
footer::before{
    content:""; position:absolute; inset:0; opacity:0.2;
    background:
            radial-gradient(circle at 10% 10%, rgba(255,255,255,0.08), transparent 40%),
            radial-gradient(circle at 90% 90%, rgba(255,255,255,0.08), transparent 40%);
}
footer .inner{position:relative; z-index:2;}
.made-with{display:flex; align-items:center; justify-content:center; gap:8px; font-size:13px; text-transform:uppercase;  opacity:0.9; margin-bottom:10px;}
footer h4{font-family:'Cormorant Garamond', serif; font-style:italic; font-size:42px; margin-bottom:6px;}
footer .date{font-size:14px; opacity:0.8; margin-bottom:18px;}
.copyright{font-size:12px; opacity:0.6; border-top:1px solid rgba(255,255,255,0.1); padding-top:18px;}
/* ===== MAP BUTTONS ===== */

.map-buttons{
    display:flex;
    gap:12px;
    margin-top:16px;
}

.map-btn{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:12px 14px;

    border-radius:10px;
    border:1px solid var(--blue-line);

    background:#fff;
    color:var(--navy);

    font-size:16px;
    text-decoration:none;

    transition:.25s;
}

.map-btn img{
    width:28px;
    height:28px;
    object-fit:contain;
}


.map-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(18,42,94,.15);
}

.map-btn.balad:hover{
    border-color:#00A86B;
}

.map-btn.neshan:hover{
    border-color:#2196F3;
}

@media (max-width:768px){

    .map-buttons{
        flex-direction:column;
    }

    .map-btn{
        width:100%;
    }

}