/* =========================================================
   WELCOME PANEL
========================================================= */

.wel_abo{

    position:relative;

    width:100%;

    min-height:390px;

    padding:50px 60px 75px;

    overflow:hidden;

    background:
        linear-gradient(
            135deg,
            #9088FF 0%,
            #6C63FF 55%,
            #5548F5 100%
        );

    color:var(--color-text-light);

}


/* =========================================================
   CONTENT
========================================================= */

.wel_abo_content{

    position:relative;

    z-index:5;

    width:100%;

    min-height:265px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:var(--space-10);

}


/* =========================================================
   TEXT
========================================================= */

.wel_abo_text{

    flex:1;

    max-width:650px;

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    text-align:right;

}


/* =========================================================
   BADGE
========================================================= */

.wel_abo_badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:7px 16px;

    margin-bottom:var(--space-4);

    border-radius:var(--radius-pill);

    background:rgba(255,255,255,.15);

    border:var(--border-width) solid rgba(255,255,255,.22);

    color:var(--color-text-light);

    font-size:var(--font-size-sm);

    font-weight:var(--font-weight-bold);

    backdrop-filter:blur(8px);

    -webkit-backdrop-filter:blur(8px);

}


/* =========================================================
   TITLE
========================================================= */

.wel_abo_title{

    margin:0;

	font-family:"Estedad", var(--font-family);

    color:var(--color-text-light);

    font-size:var(--font-size-5xl);

    line-height:var(--line-height-normal);

    font-weight:var(--font-weight-extrabold);

    letter-spacing:-.5px;

}


/* =========================================================
   SUBTITLE
========================================================= */

.wel_abo_subtitle{

    margin:5px 0 10px;

    color:rgba(255,255,255,.92);

    font-size:var(--font-size-3xl);

    line-height:var(--line-height-normal);

    font-weight:var(--font-weight-bold);

}


/* =========================================================
   DESCRIPTION
========================================================= */

.wel_abo_description{

    max-width:570px;

    margin:0 0 25px;

    color:var(--color-text-light);

    font-size:var(--font-size-sm);

    line-height:var(--line-height-relaxed);

    font-weight:var(--font-weight-medium);

}


/* =========================================================
   VISUAL AREA
========================================================= */

.wel_abo_visual{

    position:relative;

    flex:0 0 360px;

    width:360px;

    height:280px;

    display:flex;

    align-items:center;

    justify-content:center;

}


/* =========================================================
   MAIN ICON
========================================================= */

.wel_abo_main_icon{

    position:relative;

    z-index:3;

    width:150px;

    height:150px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:var(--radius-round);

    background:rgba(255,255,255,.18);

    border:1px solid rgba(255,255,255,.25);

    box-shadow:
        0 20px 45px rgba(0,0,0,.14),
        inset 0 1px 0 rgba(255,255,255,.25);

    backdrop-filter:blur(10px);

    -webkit-backdrop-filter:blur(10px);

}


/* =========================================================
   MAIN ICON INNER CIRCLE
========================================================= */

.wel_abo_main_icon::before{

    content:"";

    position:absolute;

    width:115px;

    height:115px;

    border-radius:var(--radius-round);

    background:var(--color-surface);

    box-shadow:var(--shadow-secondary);

}

.wel_abo_main_icon svg {

    position:relative;
    z-index:4;
    width:75px;
    height:75px;
	color:var(--color-text);

}


/* =========================================================
   FLOATING ICONS
========================================================= */

.wel_abo_float_icon{

    position:absolute;

    z-index:4;

    width:54px;

    height:54px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:var(--radius-lg);

    background:var(--color-surface);

    color:var(--color-surface);

    box-shadow:
        0 12px 28px rgba(0,0,0,.14);

    backdrop-filter:blur(8px);

    -webkit-backdrop-filter:blur(8px);

    animation:
        welPamFloat 4s ease-in-out infinite;

}



.wel_abo_float_icon svg {

    width:32px;
    height:32px;
	color:var(--color-text);

}


/* =========================================================
   FLOATING ICON POSITIONS
========================================================= */

.wel_abo_float_icon.icon_1{

    top:18px;

    right:55px;

    animation-delay:0s;

}


.wel_abo_float_icon.icon_2{

    top:30px;

    left:45px;

    width:48px;

    height:48px;

    border-radius:var(--radius-round);

    animation-delay:.8s;

}


.wel_abo_float_icon.icon_3{

    bottom:20px;

    right:30px;

    width:58px;

    height:58px;

    border-radius:var(--radius-round);

    animation-delay:1.5s;

}


.wel_abo_float_icon.icon_4{

    bottom:25px;

    left:55px;

    animation-delay:2.2s;

}


/* =========================================================
   FLOAT ANIMATION
========================================================= */

@keyframes welPamFloat{

    0%,
    100%{

        transform:
            translateY(0)
            rotate(0deg);

    }

    50%{

        transform:
            translateY(-9px)
            rotate(3deg);

    }

}


/* =========================================================
   ANIMATED SEA WAVE
========================================================= */

.wel_abo_wave{

    position:absolute;

    z-index:2;

    left:-10%;

    bottom:-55px;

    width:120%;

    height:125px;

    background:#F5F7FF;

    border-radius:
        50% 50% 0 0 /
        70% 70% 0 0;

    transform:
        rotate(-1deg)
        translateX(0);

    animation:
        welPamWaveMove
        7s
        ease-in-out
        infinite;

}


/* =========================================================
   SECOND WAVE LAYER
========================================================= */

.wel_abo_wave::before{

    content:"";

    position:absolute;

    left:-5%;

    top:-22px;

    width:110%;

    height:65px;

    background:rgba(255,255,255,.20);

    border-radius:var(--radius-round);

    transform:translateX(0);

    animation:
        welPamWaveMoveReverse
        5s
        ease-in-out
        infinite;

}


/* =========================================================
   MAIN WAVE ANIMATION
========================================================= */

@keyframes welPamWaveMove{

    0%{

        transform:
            rotate(-1deg)
            translateX(-3%);

    }

    25%{

        transform:
            rotate(-1deg)
            translateX(1%);

    }

    50%{

        transform:
            rotate(-1deg)
            translateX(3%);

    }

    75%{

        transform:
            rotate(-1deg)
            translateX(0%);

    }

    100%{

        transform:
            rotate(-1deg)
            translateX(-3%);

    }

}


/* =========================================================
   SECOND WAVE ANIMATION
========================================================= */

@keyframes welPamWaveMoveReverse{

    0%{

        transform:
            translateX(4%)
            rotate(1deg);

    }

    25%{

        transform:
            translateX(0%)
            rotate(1deg);

    }

    50%{

        transform:
            translateX(-4%)
            rotate(1deg);

    }

    75%{

        transform:
            translateX(-1%)
            rotate(1deg);

    }

    100%{

        transform:
            translateX(4%)
            rotate(1deg);

    }

}

/* =========================================================
   ABOUT PAGE
   SARZAMIN DANAYI
   Based on ROOT DESIGN SYSTEM 1.0
========================================================= */


/* =========================================================
   STORY
========================================================= */

.story {
    padding-block: var(--space-13);
}

.story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: var(--space-12);
}

.story-grid > div:first-child {
    max-width: 620px;
}

.story-grid h2 {
    margin-bottom: var(--space-6);

    font-size: var(--font-size-4xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
}

.story-grid p {
    margin-top: var(--space-4);

    color: var(--color-text-secondary);

    font-size: var(--font-size-md);
    line-height: var(--line-height-relaxed);
    text-align: justify;
}

.story-art {
    display: flex;
    align-items: center;
    justify-content: center;
}

.story-art svg {
    width: min(100%, 420px);
    height: auto;
}


/* =========================================================
   SECTION HEAD
========================================================= */

.section-head {
    max-width: 600px;

    margin-inline: auto;
    margin-bottom: var(--space-10);

    text-align: center;
}

.section-head .tag {
    display: block;

    margin-bottom: var(--space-3);

    color: var(--color-primary);

    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
}

.section-head h2 {
    font-size: var(--font-size-4xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
}

.section-head p {
    margin-top: var(--space-3);

    color: var(--color-text-secondary);

    font-size: var(--font-size-md);
    line-height: var(--line-height-relaxed);
}


/* =========================================================
   VALUES
========================================================= */

.values {
    padding-block: var(--space-13);
}

.values-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: var(--space-6);
}

.value-card {
    padding: var(--space-7);

    background: var(--card-background);

    border:
        var(--border-width)
        solid
        var(--card-border);

    border-radius: var(--card-radius);

    box-shadow: var(--card-shadow);

    transition:
        transform var(--transition),
        box-shadow var(--transition),
        border-color var(--transition);
}

.value-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.value-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    margin-bottom: var(--space-5);

    background: var(--color-surface-soft);

    border:
        var(--border-width)
        solid
        var(--color-border);

    border-radius: var(--radius-lg);

    font-size: var(--font-size-xl);
}

.value-card h3 {
    margin-bottom: var(--space-2);

    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-bold);
}

.value-card p {
    color: var(--color-text-secondary);

    font-size: var(--font-size-sm);
    line-height: var(--line-height-relaxed);
}


/* =========================================================
   TIMELINE
========================================================= */

.timeline-sec {
    padding-block: var(--space-13);
}

.timeline {
    position: relative;
}

.timeline-line {
    position: absolute;

    top: 28px;
    inset-inline: 10%;

    height: 2px;

    background: var(--color-border);
}

.timeline-items {
    position: relative;

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: var(--space-6);
}

.t-item {
    position: relative;

    text-align: center;
}

.t-dot {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 56px;
    height: 56px;

    margin-inline: auto;
    margin-bottom: var(--space-4);

    background: var(--color-surface);

    border:
        var(--border-width-strong)
        solid
        var(--color-primary);

    border-radius: var(--radius-round);

    box-shadow: var(--shadow-sm);

    font-size: var(--font-size-lg);

    z-index: var(--z-base);
}

.t-year {
    margin-bottom: var(--space-2);

    color: var(--color-primary);

    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);
}

.t-item h4 {
    margin-bottom: var(--space-2);

    font-size: var(--font-size-lg);
}

.t-item p {
    color: var(--color-text-secondary);

    font-size: var(--font-size-sm);
    line-height: var(--line-height-relaxed);
}


/* =========================================================
   STATS
========================================================= */

.stats-band {
    padding-block: var(--space-10);

    background: var(--color-primary);

    border-radius: var(--radius-xl);
}

.stats-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: var(--space-6);

    text-align: center;
}

.stat-num {
    color: var(--color-text-light);

    font-size: var(--font-size-4xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
}

.stat-lbl {
    margin-top: var(--space-2);

    color: var(--color-text-light);

    font-size: var(--font-size-sm);
    opacity: 0.85;
}


/* =========================================================
   TEAM
========================================================= */

.team {
    padding-block: var(--space-13);
}

.team > button {
    display: none;
}


/* =========================================================
   CLOSING
========================================================= */

.closing {
    position: relative;

    overflow: hidden;

    padding:
        var(--space-12)
        var(--space-8);

    text-align: center;

    background: var(--color-surface);

    border:
        var(--border-width)
        solid
        var(--color-border);

    border-radius: var(--radius-xl);

    box-shadow: var(--shadow-sm);
}

.closing-decor {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;

    opacity: 0.8;
}

.closing h2,
.closing p,
.closing-btn {
    position: relative;

    z-index: var(--z-base);
}

.closing h2 {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-bold);
}

.closing p {
    max-width: 650px;

    margin:
        var(--space-4)
        auto
        var(--space-6);

    color: var(--color-text-secondary);

    font-size: var(--font-size-md);
    line-height: var(--line-height-relaxed);
}

.closing-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: var(--button-height-lg);

    padding-inline: 24px;

    color: var(--color-text-light);
    background: var(--color-primary);

    border-radius: var(--radius-md);

    font-size: var(--font-size-md);
    font-weight: var(--font-weight-bold);

    box-shadow: var(--shadow-primary);

    transition:
        transform var(--transition),
        background-color var(--transition),
        box-shadow var(--transition);
}

.closing-btn:hover {
    transform: translateY(-2px);

    background: var(--color-primary-dark);

    box-shadow: var(--shadow-primary);
}




/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {

    .story-grid {
        gap: var(--space-10);
    }

    .values-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .timeline-items {
        grid-template-columns: repeat(2, 1fr);

        row-gap: var(--space-10);
    }

    .timeline-line {
        display: none;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}


@media (max-width: 900px) {

    .story-grid {
        grid-template-columns: 1fr;
    }

    .story-grid > div:first-child {
        max-width: none;
    }

    .story-art {
        order: -1;
    }

    .story-art svg {
        width: min(100%, 360px);
    }

    .section-head h2 {
        font-size: var(--font-size-3xl);
    }
}


@media (max-width: 600px) {

    .story,
    .values,
    .timeline-sec,
    .team {
        padding-block: var(--space-10);
    }

    .story-grid {
        gap: var(--space-8);
    }

    .story-grid h2 {
        font-size: var(--font-size-3xl);
    }

    .values-grid {
        grid-template-columns: 1fr;
    }

    .timeline-items {
        grid-template-columns: 1fr;

        gap: var(--space-8);
    }

    .stats-band {
        padding: var(--space-8) var(--space-4);
    }

    .stats-grid {
        grid-template-columns: 1fr 1fr;
    }

    .stat-num {
        font-size: var(--font-size-3xl);
    }

    .closing {
        padding:
            var(--space-10)
            var(--space-5);
    }
}


@media (max-width: 480px) {

    .section-head {
        margin-bottom: var(--space-8);
    }

    .section-head h2 {
        font-size: var(--font-size-2xl);
    }

    .story-grid h2 {
        font-size: var(--font-size-2xl);
    }

    .value-card {
        padding: var(--space-6);
    }

    .stats-grid {
        gap: var(--space-4);
    }

    .stat-num {
        font-size: var(--font-size-2xl);
    }

    .closing h2 {
        font-size: var(--font-size-2xl);
    }

    .closing p {
        font-size: var(--font-size-sm);
    }
}


@media (max-width: 360px) {

    .stats-grid {
        grid-template-columns: 1fr;
    }

    .closing {
        padding:
            var(--space-8)
            var(--space-4);
    }
}