/* ===================================
    Custom Tees - Fashion store
====================================== */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700;800&display=swap');
/* variable */
:root {     
    --base-color: #fee300; 
    --alt-font: 'Outfit', sans-serif;
    --primary-font: 'Figtree', sans-serif;
    --medium-gray: #828282;
}
/* reset */
body {
    font-size: 17px;
    line-height: 32px; 
}
a:hover {
    color: var(--dark-gray);
}
.input-small, .textarea-small, .select-small {
    font-size: 14px;
}
.input-small {
    padding: 9px 15px;
}
/* header */
header .navbar-brand img {
    max-height: 34px;
}
header .navbar-brand {
    padding: 22px 0;
}
header .navbar-brand .brand-text-logo,
.footer-logo .brand-text-logo {
    color: #1d4ed8;
    display: inline-block;
    font-size: 25px;
    line-height: 1.2;
    letter-spacing: 0;
    white-space: nowrap;
}
.footer-logo .brand-text-logo {
    font-size: 28px;
}
@media (min-width: 992px) {
    header .center-logo .navbar-brand {
        align-items: center;
        display: flex;
        height: 88px;
        justify-content: center;
        min-width: 230px;
        padding: 0;
        text-align: center;
    }
}
.navbar.center-logo .navbar-nav .nav-link {
    padding: 29px 20px;
    font-size: 19px;
}
.header-icon .icon > a {
    padding-left: 20px;
}
.header-icon .icon .header-language > a, .header-icon .icon .header-cart > a {
    padding-left: 18px;
}
.header-cart-icon .cart-count {
    color: var(--dark-gray);
}
header .widget {
    font-size: 17px;
    display: inline-block;
}
.navbar .navbar-nav .submenu-content ul .sub-title {
    font-size: 17px;
    margin-bottom: 3px;
}
.navbar .navbar-nav .dropdown .dropdown-menu a {
    font-size: 16px;
    padding-bottom: 3px;
    font-weight: 300;
    border-color: transparent;
}
.header-cart-icon .header-cart .cart-item-list {
    border-radius: 0;
}
.header-cart-icon .header-cart .cart-item-list .cart-item .product-detail a {
    font-size: 16px;
    line-height: 28px;
}
.header-cart-icon .cart-count {
    background-color: var(--dark-gray);
}
.navbar.center-logo .navbar-left, .navbar.center-logo .navbar-right {
    width: 35%
}
/* bg color */
.bg-nero-grey, .bg-nero-grey:focus {
    background-color: #1B1B1B;
}
/* min-width */
.min-w-150px {
    min-width: 150px;
}
/* btn */
.btn.btn-large { 
    padding: 15px 30px;
}
.btn {
    text-transform: inherit;
}
.btn.btn-dark-gray {
    font-weight: 400;
}
.btn.btn-extra-large {
    font-size: 19px;
    padding: 20px 38px;
}
.btn.btn-large {
    font-size: 18px;
    padding: 15px 30px;
}
.btn.btn-medium {
    font-size: 16px;
    padding: 13px 26px;
}
.btn.btn-small {
    font-size: 16px;
    padding: 10px 20px;
}
.btn.btn-very-small {
    font-size: 14px;
    padding: 9px 20px;
}
.btn.btn-link {
    padding: 0 0 2px;
}
/* page title */
.page-title-extra-large h1 {
    font-size: 4.5rem;
    line-height: 4.5rem;
}
/* top bottom left right class */
.left-15 {
    left: 15%;
}
/* interactive banner */
.interactive-banner-style-09 .image-content:hover .content-arrow {
    opacity: 1;
}
/* tab style 04 */
.tab-style-04 .nav-tabs .nav-item .nav-link {
    line-height: 50px;
}
/* progress bar 02 */
.progress-bar-style-02 .progress {
    height: 10px; 
}
/* footer */
.footer-dark, .footer-dark p, .footer-dark a {
    color: var(--medium-gray); 
}
footer .footer-logo img {
    max-height: 34px;
}
footer .nav-link {
    color: var(--white);
    padding: 0 20px;
}
footer ul li {
    margin-bottom: 0;
}
footer .elements-social.social-icon-style-02 li {
    margin: 0 14px 0 0;
}
/* tab style 07 */
.tab-style-07 .nav-tabs .nav-item .nav-link {
    padding: 20px 30px;
}
.tab-style-07 .nav-tabs .nav-item .nav-link.active span,
.tab-style-07 .nav-tabs .nav-item .nav-link:hover span {
    color: var(--dark-gray);
}
/* tooltip */
.tooltip.show {
    opacity: 1;
}
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before, .bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--dark-gray);
    top: -2px;
}
.tooltip .tooltip-inner {
    background-color: var(--dark-gray);
    border-radius: 3px;
    font-size: 10px;
    text-transform: uppercase;
    padding: 5px 10px;
    font-weight: 500;
}
/* media query responsive */
@media (max-width: 1399px) {
    .sticky-wrap.shadow-in { left: 25px; }
    .center-logo .navbar-nav .nav-link, header.sticky .center-logo .navbar-nav .nav-link {
        padding-left: 13px;
        padding-right: 13px;
    }
}
@media (max-width: 1250px){
    .sticky-wrap.shadow-in { left: 10px; }
}
@media (max-width: 991px) {
    .tab-style-07 .nav-tabs .nav-item .nav-link { padding: 20px; }
    .navbar.center-logo .navbar-left, .navbar.center-logo .navbar-right { width: 100%; }
    .navbar .navbar-nav .dropdown .dropdown-menu a, .navbar .navbar-nav .dropdown .dropdown-menu li.sub-title, .navbar-modern-inner .navbar-nav .dropdown .dropdown-menu li.sub-title, .navbar-full-screen-menu-inner .navbar-nav .dropdown .dropdown-menu li.sub-title { line-height: normal; }
    .header-icon .icon > a, .header-icon .icon .header-language > a, .header-icon .icon .header-cart > a { padding-left: 12px; }
    footer .nav-link { padding: 0 12px; }
    .tab-style-04 .nav-tabs .nav-item { padding: 0 16px; }
}
@media (max-width: 767px) {
    .tab-style-04 .nav-tabs .nav-item .nav-link { line-height: 35px; }
    .swiper-number-pagination-progress-vertical .swiper-pagination-wrapper { right: 15px;}
    .btn.btn-large { font-size: 17px; padding: 13px 25px; }
}
@media (min-width: 1301px) and (max-width: 1399px) {
    .navbar.center-logo .navbar-nav .nav-link, header.sticky .center-logo .navbar-nav .nav-link { padding-left: 13px; padding-right: 13px; font-size: 18px; }
}
@media (min-width: 1200px) and (max-width: 1300px) {
    .navbar.center-logo .navbar-nav .nav-link, header.sticky .center-logo .navbar-nav .nav-link { padding-left: 11px; padding-right: 11px; font-size: 17px; }
    .header-icon .icon > a { font-size: 16px; padding-left: 13px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .header-icon .icon > a { font-size: 16px; padding-left: 10px; }
    .header-icon .icon .header-language > a, .header-icon .icon .header-cart > a { padding-left: 10px; font-size: 16px; }
    .navbar.center-logo .navbar-nav .nav-link, header.sticky .center-logo .navbar-nav .nav-link { padding-left: 14px; padding-right: 14px; font-size: 17px; }
    .btn.btn-switch-text.btn-large>span { padding: 16px 28px; }
}

/* about journey */
.about-journey-section .journey-grid {
    row-gap: 28px;
}

.about-journey-section .journey-step {
    display: flex;
}

.about-journey-section .journey-card {
    align-items: flex-start;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(17, 24, 39, 0.08);
    border-radius: 24px;
    box-shadow: 0 22px 55px rgba(17, 24, 39, 0.08);
    justify-content: flex-start;
    overflow: hidden;
    padding: 38px 28px 32px;
    position: relative;
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    width: 100%;
    animation: aboutJourneyReveal 0.8s cubic-bezier(0.22, 1, 0.36, 1) both, aboutJourneyFloat 6s ease-in-out infinite;
}

.about-journey-section .journey-card::before {
    background: linear-gradient(110deg, rgba(255, 255, 255, 0) 20%, rgba(254, 227, 0, 0.22) 50%, rgba(255, 255, 255, 0) 80%);
    content: "";
    height: 100%;
    left: -140%;
    position: absolute;
    top: 0;
    transform: skewX(-20deg);
    transition: left 0.75s ease;
    width: 72%;
    z-index: 0;
}

.about-journey-section .journey-card::after {
    background: radial-gradient(circle at top right, rgba(29, 78, 216, 0.12), transparent 55%);
    content: "";
    inset: 0;
    opacity: 0;
    position: absolute;
    transition: opacity 0.35s ease;
    z-index: 0;
}

.about-journey-section .journey-step:nth-child(2) .journey-card {
    animation-delay: 0.1s, 0.8s;
}

.about-journey-section .journey-step:nth-child(3) .journey-card {
    animation-delay: 0.2s, 1.2s;
}

.about-journey-section .journey-step:nth-child(4) .journey-card {
    animation-delay: 0.3s, 1.6s;
}

.about-journey-section .journey-card:hover {
    border-color: rgba(29, 78, 216, 0.18);
    box-shadow: 0 28px 70px rgba(17, 24, 39, 0.14);
    transform: translateY(-10px) scale(1.02);
}

.about-journey-section .journey-card:hover::before {
    left: 140%;
}

.about-journey-section .journey-card:hover::after {
    opacity: 1;
}

.about-journey-section .about-journey-title {
    animation: aboutJourneyTitlePop 0.9s cubic-bezier(0.22, 1, 0.36, 1) both, aboutJourneyTitleZoom 4.8s ease-in-out infinite;
}

.about-journey-section .about-journey-title .text-highlight .bg-base-color {
    animation: aboutJourneyUnderline 2.2s ease-in-out infinite;
    transform-origin: left center;
}

.about-journey-section .journey-card .feature-box-icon {
    left: 14px;
    top: 8px;
}

.about-journey-section .journey-step-number {
    color: rgba(17, 24, 39, 0.08);
    line-height: 1;
    transform-origin: center;
    transition: color 0.35s ease, transform 0.35s ease;
    animation: aboutJourneyNumberPulse 4s ease-in-out infinite, aboutJourneyNumberZoom 5.2s ease-in-out infinite;
}

.about-journey-section .journey-step:nth-child(2) .journey-step-number {
    animation-delay: 0.4s;
}

.about-journey-section .journey-step:nth-child(3) .journey-step-number {
    animation-delay: 0.8s;
}

.about-journey-section .journey-step:nth-child(4) .journey-step-number {
    animation-delay: 1.2s;
}

.about-journey-section .journey-card:hover .journey-step-number {
    color: rgba(254, 227, 0, 0.35);
    transform: scale(1.12) translateY(-4px);
}

.about-journey-section .journey-card .feature-box-content {
    padding-top: 56px;
    position: relative;
    width: 100%;
    z-index: 1;
}

.about-journey-section .journey-card .feature-box-content span:first-child {
    line-height: 1.35;
}

.about-journey-section .journey-card p {
    margin-bottom: 0;
    max-width: none;
    width: 100% !important;
}

.about-journey-section .journey-step-line {
    animation: aboutJourneyLinePulse 2.8s ease-in-out infinite, aboutJourneyLineZoom 3.6s ease-in-out infinite;
    transition: transform 0.35s ease, background-color 0.35s ease;
    transform-origin: left center;
}

.about-journey-section .journey-card:hover .journey-step-line {
    background-color: #1d4ed8 !important;
    transform: scaleX(1.35);
}

@keyframes aboutJourneyReveal {
    from {
        opacity: 0;
        transform: translateY(36px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes aboutJourneyFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes aboutJourneyTitleZoom {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.015);
    }
}

@keyframes aboutJourneyTitlePop {
    from {
        opacity: 0;
        transform: translateY(24px) scale(0.97);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes aboutJourneyUnderline {
    0%, 100% {
        transform: scaleX(1);
    }
    50% {
        transform: scaleX(1.12);
    }
}

@keyframes aboutJourneyNumberPulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.78;
        transform: scale(1.04);
    }
}

@keyframes aboutJourneyNumberZoom {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.08);
    }
}

@keyframes aboutJourneyLinePulse {
    0%, 100% {
        transform: scaleX(1);
    }
    50% {
        transform: scaleX(1.18);
    }
}

@keyframes aboutJourneyLineZoom {
    0%, 100% {
        transform: scaleX(1);
    }
    50% {
        transform: scaleX(1.28);
    }
}

@media (prefers-reduced-motion: reduce) {
    .about-journey-section .about-journey-title,
    .about-journey-section .about-journey-title .text-highlight .bg-base-color,
    .about-journey-section .journey-card,
    .about-journey-section .journey-step-number,
    .about-journey-section .journey-step-line {
        animation: none !important;
    }

    .about-journey-section .journey-card::before,
    .about-journey-section .journey-card::after {
        transition: none;
    }
}

@media (max-width: 1199px) {
    .about-journey-section .journey-card {
        padding: 34px 24px 28px;
    }
}

@media (max-width: 767px) {
    .about-journey-section .journey-card {
        border-radius: 18px;
        padding: 30px 22px 24px;
    }

    .about-journey-section .journey-card .feature-box-content {
        padding-top: 44px;
    }

    .about-journey-section .journey-step-number {
        font-size: 4.5rem;
    }
}

/* ── User dropdown menu ──────────────────────────────── */
.fashion-user-dropdown-menu {
    display: none;
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    min-width: 176px;
    background: #fff;
    border-radius: 14px;
    border: 1px solid rgba(0,0,0,0.07);
    box-shadow: 0 12px 32px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06);
    padding: 8px;
    z-index: 1000;
    overflow: hidden;
}
.fashion-user-dropdown-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
    text-decoration: none !important;
    transition: background 0.15s, color 0.15s;
    cursor: pointer;
    white-space: nowrap;
}
.fashion-user-dropdown-item:hover {
    background: #f4f5f7;
    color: #1a1a1a;
}
.fashion-user-dropdown-icon {
    font-size: 15px;
    flex-shrink: 0;
    color: #6b7280;
}
.fashion-user-dropdown-logout { color: #e03131; }
.fashion-user-dropdown-logout .fashion-user-dropdown-icon { color: #e03131; }
.fashion-user-dropdown-logout:hover { background: #fff1f1; color: #c92a2a; }
.fashion-user-dropdown-divider {
    height: 1px;
    background: rgba(0,0,0,0.06);
    margin: 6px 4px;
}
