
@charset "utf-8";

/* CSS Document */

 * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
            line-height: 1.6;
            color: #000;
            background: #fff;
            overflow-x: hidden;
            user-select: auto;
        }

        /* Decorative Elements */
        .black-line {
            width: 100%;
            height: 1px;
            background: #eb1c28;
            margin: 60px 0;
        }

        .black-block {
            width: 20px;
            height: 20px;
            background: #eb1c28;
            position: absolute;
        }

        .vertical-line {
            width: 1px;
            height: 100px;
            background: #eb1c28;
            margin: 40px auto;
        }

        /* Navigation */
        nav {
            position: fixed;
            top: 0;
            width: 100%;
            background: rgba(255, 255, 255, 0.98);
            backdrop-filter: blur(10px);
            z-index: 1000;
            padding: 20px 0;
            border-bottom: 2px solid #eb1c28;
            transition: all 0.3s ease;
        }

        nav.scrolled {
            padding: 15px 0;
            box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
        }

        .nav-container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .logo {
            font-size: 24px;
            font-weight: 700;
            letter-spacing: -1px;
            position: relative;
            color: #000;
            text-decoration: none;
        }

        .logo::after {
            content: '';
            position: absolute;
            right: -15px;
            top: 50%;
            transform: translateY(-50%);
            width: 8px;
            height: 8px;
            background:  #eb1c28;
        }

        /* Hamburger Menu */
        .menu-toggle {
            display: none;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            width: 30px;
            height: 30px;
            cursor: pointer;
            z-index: 1001;
        }

        .menu-toggle span {
            display: block;
            width: 25px;
            height: 2px;
            background:  #eb1c28;
            margin: 3px 0;
            transition: all 0.3s ease;
        }
            
        .menu-toggle.active span:nth-child(1) {
            transform: rotate(45deg) translate(5px, 5px);
        }

        .menu-toggle.active span:nth-child(2) {
            opacity: 0;
        }

        .menu-toggle.active span:nth-child(3) {
            transform: rotate(-45deg) translate(7px, -6px);;

        }

        .nav-links {
            display: flex;
            gap: 40px;
            list-style: none;
        }

        .nav-links a {
            color:  #eb1c28;
            text-decoration: none;
            font-size: 13px;
            font-weight: 500;
            letter-spacing: 1px;
            transition: all 0.3s ease;
            position: relative;
        }

        .nav-links a::before {
            content: '';
            position: absolute;
            left: -15px;
            top: 50%;
            transform: translateY(-50%);
            width: 0;
            height: 1px;
            background: #eb1c28;
            transition: width 0.3s ease;
        }

        .nav-links a:hover::before,
        .nav-links a.active::before {
            width: 10px;
            
        }

        .nav-links a.active {
            font-weight: 700;
        }

        /* Section 1: Hero */
        .hero {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 80px 20px;
            position: relative;
            overflow: hidden;
        }

        .hero::before {
            content: '';
            position: absolute;
            top: 20%;
            left: 10%;
            width: 100px;
            height: 1px;
            background: #eb1c28;
            animation: slideRight 8s ease-in-out infinite;
        }

        .hero::after {
            content: '';
            position: absolute;
            bottom: 20%;
            right: 10%;
            width: 150px;
            height: 1px;
            background: #eb1c28;
            animation: slideLeft 8s ease-in-out infinite;
        }

        .hero-decoration {
            position: absolute;
            top: 30%;
            right: 15%;
            width: 40px;
            height: 40px;
            border: 2px solid #eb1c28;
            transform: rotate(45deg);
            animation: rotateSquare 10s linear infinite;
        }

       .floating-biscuits {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 1;
    overflow: hidden;
}

/* Base style for all biscuits */
.biscuit {
    position: absolute;
    width: 60px;
    height: 60px;
    opacity: 0.8;
    animation: floatBiscuit linear infinite;
}

/* Individual positions and delays */
.biscuit:nth-child(1) {
    left: 5%;
    bottom: -80px;
    animation-duration: 15s;
    animation-delay: 0s;
}

.biscuit:nth-child(2) {
    right: 10%;
    bottom: -100px;
    animation-duration: 20s;
    animation-delay: 5s;
}

.biscuit:nth-child(3) {
    left: 50%;
    bottom: -90px;
    animation-duration: 18s;
    animation-delay: 2s;
}

.biscuit:nth-child(4) {
    right: 40%;
    bottom: -70px;
    animation-duration: 22s;
    animation-delay: 4s;
}

/* Floating animation (randomized path) */
@keyframes floatBiscuit {
    0% {
        transform: translate(0, 0) rotate(0deg);
        opacity: 0.7;
    }
    25% {
        transform: translate(50px, -100px) rotate(20deg);
        opacity: 0.9;
    }
    50% {
        transform: translate(-40px, -200px) rotate(-15deg);
        opacity: 0.6;
    }
    75% {
        transform: translate(60px, -300px) rotate(30deg);
        opacity: 0.8;
    }
    100% {
        transform: translate(0, -400px) rotate(0deg);
        opacity: 0.7;
    }
}


        .hero-content {
            text-align: center;
            max-width: 800px;
            animation: fadeInUp 1s ease;
            position: relative;
            z-index: 2;
        }

        /* Animations */
        @keyframes floatUp {
            0%, 100% {
                transform: translateY(0) scale(1);
                opacity: 0;
            }
            10% {
                opacity: 0.2;
            }
            50% {
                transform: translateY(-600px) scale(1.1);
                opacity: 0.05;
            }
            90% {
                opacity: 0;
            }
        }

        @keyframes floatDiagonal {
            0% {
                transform: translate(0, 0) rotate(0deg);
            }
            100% {
                transform: translate(1400px, -300px) rotate(360deg);
            }
        }

        @keyframes expandContract {
            0%, 100% {
                transform: scaleX(0.5) rotate(0deg);
            }
            50% {
                transform: scaleX(1.2) rotate(180deg);
            }
        }

        @keyframes rotateSquare {
            0% {
                transform: rotate(45deg) scale(1);
            }
            25% {
                transform: rotate(135deg) scale(1.1);
            }
            50% {
                transform: rotate(225deg) scale(1);
            }
            75% {
                transform: rotate(315deg) scale(0.9);
            }
            100% {
                transform: rotate(405deg) scale(1);
            }
        }

        @keyframes slideRight {
            0%, 100% {
                transform: translateX(0);
                opacity: 0.5;
            }
            50% {
                transform: translateX(50px);
                opacity: 1;
            }
        }

        @keyframes slideLeft {
            0%, 100% {
                transform: translateX(0);
                opacity: 0.5;
            }
            50% {
                transform: translateX(-50px);
                opacity: 1;
            }
        }

        .hero h1 {
            font-size: clamp(30px, 5vw, 30px);
            font-weight: 100;
            letter-spacing: 1px;
            margin-bottom: 30px;
            line-height: 0.9;
            position: relative;
        }

        .hero h1::after {
            content: '';
            position: absolute;
            bottom: -15px;
            left: 50%;
            transform: translateX(-50%);
            width: 120px;
            height: 2px;
            background: #eb1c28;
        }

        .hero .subtitle {
            font-size: 16px;
            color: #eb1c28;
            font-weight: 400;
            margin-bottom: 50px;
            letter-spacing: 2px;
            text-transform: uppercase;
        }

        .cta-button {
            display: inline-block;
            padding: 18px 50px;
            background: #eb1c28;
            color: #fff;
            text-decoration: none;
            font-size: 12px;
            letter-spacing: 2px;
            transition: all 0.3s ease;
            border: 2px solid #eb1c28;
            position: relative;
        }

        .cta-button::before {
            content: '';
            position: absolute;
            top: -10px;
            right: -10px;
            width: 20px;
            height: 20px;
            border-top: 2px solid #eb1c28;
            border-right: 2px solid #eb1c28;
        }

        .cta-button:hover {
            background: transparent;
            color: #eb1c28;
            transform: translate(-5px, -5px);
        }

        /* Section 2: About - Mixed Layouts */
        .about {
            padding: 120px 20px;
            background: #fff;
            position: relative;
        }

        .about::before {
            content: '';
            position: absolute;
            top: 50px;
            left: 0;
            width: 100%;
            height: 1px;
            background: #eb1c28;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
        }

        /* Quote Block */
        .about-intro {
            margin-bottom: 80px;
        }

        .quote-block {
            max-width: 900px;
            margin: 0 auto;
            text-align: center;
            position: relative;
        }

        .quote-mark {
            font-size: 120px;
            line-height: 1;
            font-weight: 100;
            position: absolute;
            top: -40px;
            left: -60px;
            opacity: 0.3;
            color: #eb1c28;
        }

        .quote-block h3 {
            font-size: 32px;
            font-weight: 300;
            line-height: 1.4;
            letter-spacing: -1px;
            margin-bottom: 30px;
        }

        .quote-author {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 20px;
            color:#eb1c28;
        }

        .author-line {
            width: 50px;
            height: 1px;
            background: #eb1c28;
        }

        .quote-author p {
            font-size: 14px;
            letter-spacing: 1px;
            text-transform: uppercase;
            font-weight: 500;
        }

        /* Stats Grid */
        .stats-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 2px;
            background: #eb1c28;
            padding: 2px;
            margin-bottom: 100px;
        }

        .stat-item {
            background: #fff;
            padding: 60px 20px;
            text-align: center;
            position: relative;
        }

        .stat-number {
            font-size: 48px;
            font-weight: 100;
            letter-spacing: -2px;
            margin-bottom: 10px;
            color:#eb1c28;
        }

        .stat-label {
            font-size: 12px;
            letter-spacing: 2px;
            text-transform: uppercase;
            font-weight: 500;
        }

        .stat-decoration {
            position: absolute;
            top: 20px;
            right: 20px;
            width: 20px;
            height: 20px;
            border: 1px solid #eb1c28;
            transform: rotate(45deg);
        }

        /* Philosophy Section */
        .philosophy-section {
            display: grid;
            grid-template-columns: 300px 1fr;
            gap: 80px;
            margin-bottom: 100px;
            align-items: start;
        }

        .philosophy-header {
            position: relative;
        }

        .philosophy-header h2 {
            font-size: 64px;
            font-weight: 100;
            color:#eb1c28 !important;
            letter-spacing: -2px;
            writing-mode: vertical-rl;
            text-orientation: mixed;
        }

        .header-decoration {
            position: absolute;
            bottom: 0;
            right: -20px;
            width: 40px;
            height: 40px;
            background: #eb1c28;
        }

        .philosophy-content {
            padding-top: 40px;
        }

        .lead-text {
            font-size: 24px;
            line-height: 1.6;
            margin-bottom: 60px;
            font-weight: 300;
        }

        .philosophy-points {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }

        .point-item {
            position: relative;
            padding-left: 20px;
        }

        .point-number {
            position: absolute;
            left: 0;
            top: 0;
            font-size: 10px;
            font-weight: 700;
            color:#eb1c28;
        }

        .point-item h4 {
            font-size: 16px;
            font-weight: 500;
            margin-bottom: 8px;
            letter-spacing: 0.5px;
            color:#eb1c28;
        }

        .point-item p {
            font-size: 14px;
            color: #666;
            line-height: 1.6;
        }

        /* Process Timeline */
        .process-timeline {
            margin-bottom: 100px;
        }

        .section-subtitle {
            font-size: 48px;
            font-weight: 100;
            text-align: center;
            margin-bottom: 60px;
            letter-spacing: -1px;
            color:#eb1c28 !important;
        }

        .timeline-container {
            position: relative;
            display: flex;
            justify-content: space-between;
            max-width: 900px;
            margin: 0 auto;
        }

        .timeline-line {
            position: absolute;
            top: 20px;
            left: 0;
            right: 0;
            height: 2px;
            background: #eb1c28;
            z-index: 0;
        }

        .timeline-item {
            position: relative;
            text-align: center;
            flex: 1;
        }

        .timeline-dot {
            width: 40px;
            height: 40px;
            background: #fff;
            border: 2px solid #eb1c28;
            margin: 0 auto 30px;
            position: relative;
            z-index: 1;
            transition: all 0.3s ease;
        }

        .timeline-item:hover .timeline-dot {
            background: #eb1c28;
            transform: rotate(45deg);
        }

        .timeline-content h4 {
            font-size: 18px;
            font-weight: 500;
            margin-bottom: 8px;
            letter-spacing: 0.5px;
            color:#eb1c28;
        }

        .timeline-content p {
            font-size: 14px;
            color: #666;
        }

        /* Values Grid */
        .values-section {
            text-align: center;
        }

        .values-header {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 30px;
            margin-bottom: 60px;
        }

        .values-header h2 {
            font-size: 48px;
            font-weight: 100;
            letter-spacing: -1px;
            color: #eb1c28;
        }

        .black-square {
            width: 15px;
            height: 15px;
            background: #eb1c28;
        }

        .values-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 0;
        }

        .value-card {
            padding: 60px 20px;
            border: 1px solid #eb1c28;
            transition: all 0.3s ease;
        }

        .value-card.black {
            background: #eb1c28;
            color: #fff;
        }

        .value-icon {
            font-size: 48px;
            font-weight: 100;
            margin-bottom: 20px;
        }

        .value-card h4 {
            font-size: 14px;
            letter-spacing: 2px;
            text-transform: uppercase;
            font-weight: 500;
        }

        .value-card:hover {
            transform: translateY(-10px);
        }

        .split-layout {
            display: grid;
            grid-template-columns: 1fr 2px 1fr;
            gap: 60px;
            align-items: center;
            margin-top: 80px;
        }

        .split-divider {
            width: 2px;
            height: 300px;
            background: #eb1c28;
            justify-self: center;
        }

        .split-left {
            text-align: right;
            padding-right: 20px;
        }

        .split-left h2 {
            font-size: 64px;
            font-weight: 100;
            letter-spacing: -2px;
            margin-bottom: 30px;
            position: relative;
        }

        .split-left h2::before {
            content: '';
            position: absolute;
            left: -40px;
            top: 50%;
            width: 30px;
            height: 30px;
            background: #eb1c28;
            transform: translateY(-50%);
        }

        .split-right {
            padding-left: 20px;
        }

        .split-right p {
            font-size: 18px;
            line-height: 2;
            margin-bottom: 30px;
        }

        .accent-box {
            display: inline-block;
            padding: 10px 20px;
            border: 1px solid #eb1c28;
            font-size: 12px;
            letter-spacing: 1px;
            text-transform: uppercase;
            position: relative;
        }

        .accent-box::after {
            content: '';
            position: absolute;
            bottom: -5px;
            right: -5px;
            width: 100%;
            height: 100%;
            background: #eb1c28;
            z-index: -1;
        }

        /* Section 3: Services - Asymmetric Grid */
        .services {
            padding: 120px 20px;
            background: #fafafa;
            position: relative;
        }

        .services::before,
        .services::after {
            content: '';
            position: absolute;
            width: 50px;
            height: 50px;
            border: 2px solid #eb1c28;
        }

        .services::before {
            top: 80px;
            left: 5%;
            animation: rotateSlowly 20s linear infinite;
        }

        .services::after {
            bottom: 80px;
            right: 5%;
            transform: rotate(45deg);
            animation: rotateSlowly 20s linear infinite reverse;
        }

        @keyframes rotateSlowly {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }

        .services-header {
            text-align: center;
            margin-bottom: 80px;
            position: relative;
        }

        .services-header h2 {
            font-size: 56px;
            color:#eb1c28;
            font-weight: 100;
            letter-spacing: -1px;
            margin-bottom: 20px;
            position: relative;
            display: inline-block;
        }

        .services-header h2::before,
        .services-header h2::after {
            content: '';
            position: absolute;
            width: 30px;
            height: 1px;
            background: #eb1c28;
            top: 50%;
            transform: translateY(-50%);
        }

        .services-header h2::before {
            left: -50px;
        }

        .services-header h2::after {
            right: -50px;
        }

        .services-header::after {
            content: '';
            position: absolute;
            bottom: -30px;
            left: 50%;
            transform: translateX(-50%);
            width: 200px;
            height: 1px;
            background: linear-gradient(to right, transparent, #eb1c28 20%, #000 80%, transparent);
        }

        .asymmetric-grid {
            display: grid;
            grid-template-columns: 2fr 1fr;
            gap: 40px;
            margin-bottom: 40px;
            position: relative;
        }

        .asymmetric-grid.reverse {
            grid-template-columns: 1fr 2fr;
        }

        .service-large * {
            position: relative;
            z-index: 1;
        }

        .service-large {
            background: #fff;
            padding: 60px;
            border-left: 4px solid #eb1c28;
            position: relative;
            transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            overflow: hidden;
        }

        .service-large::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.02);
            transition: left 0.6s ease;
            pointer-events: none;
        }

        .service-large:hover::before {
            left: 0;
        }

        .service-large::after {
            content: '';
            position: absolute;
            top: 40px;
            right: 40px;
            width: 15px;
            height: 15px;
            background: #eb1c28;
            transition: all 0.3s ease;
            pointer-events: none;
            z-index: 0;
        }

        .service-large:hover::after {
            transform: scale(1.5) rotate(45deg);
        }

        .service-large:hover {
            transform: translateX(10px);
            border-left-width: 8px;
        }

        .asymmetric-grid.reverse .service-large {
            border-left: none;
            border-right: 4px solid #eb1c28;
        }

        .asymmetric-grid.reverse .service-large::after {
            right: auto;
            left: 40px;
        }

        .asymmetric-grid.reverse .service-large:hover {
            transform: translateX(-10px);
            border-right-width: 8px;
        }

        .service-small {
            background: #eb1c28;
            color: #fff;
            padding: 40px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            position: relative;
            overflow: hidden;
            transition: all 0.4s ease;
        }

        .service-small::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 0;
            height: 0;
            border: 1px solid #eb1c28;
            border-radius: 50%;
            transition: all 0.6s ease;
            pointer-events: none;
        }

        .service-small:hover::before {
            width: 200px;
            height: 200px;
        }

        .service-number {
            font-size: 88px;
            font-weight: 100;
            line-height: 1;
            margin-bottom: 20px;
            transition: all 0.3s ease;
            position: relative;
        }

        .service-small:hover .service-number {
            transform: scale(1.1);
        }

        .service-large h3,
        .service-large p {
            position: relative;
            z-index: 1;
            user-select: text;
            color:#eb1c28;
        }

        .service-large h3 {
            font-size: 36px;
            font-weight: 300;
            margin-bottom: 20px;
            letter-spacing: -1px;
            display: inline-block
        }

        .service-large h3::after {
            content: '';
            position: absolute;
            bottom: -10px;
            left: 0;
            width: 0;
            height: 1px;
            background: #eb1c28;
            transition: width 0.3s ease;
        }

        .service-large:hover h3::after {
            width: 100%;
        }

        .service-large p {
            color: #666;
            line-height: 1.8;
            font-size: 16px;
            margin-bottom: 30px;
            user-select: text;
            -webkit-user-select: text;
            -moz-user-select: text;
            -ms-user-select: text;
        }

        .service-tag {
            display: inline-block;
            padding: 8px 16px;
            border: 1px solid #eb1c28;
            font-size: 11px;
            letter-spacing: 1px;
            text-transform: uppercase;
            margin-top: 20px;
            transition: all 0.3s ease;
            cursor: pointer;
            position: relative;
            z-index: 1;
            text-decoration: none;
            color: #eb1c28;
        }

        .service-tag:hover {
            background: #eb1c28;
            color: #fff;
            transform: translateY(-2px);
        }

        .service-small h4 {
            font-size: 14px;
            letter-spacing: 2px;
            text-transform: uppercase;
            font-weight: 400;
            opacity: 0.9;
            transition: all 0.3s ease;
        }

        .service-small:hover h4 {
            opacity: 1;
            letter-spacing: 3px;
        }

        /* Section 4: Contact - Minimal Form */
        .contact {
            padding: 120px 20px;
            background: #fff;
            position: relative;
        }

        .contact-grid {
            display: grid;
           gap: 80px;
            max-width: 1000px;
            margin: 80px auto 0;
        }

        .contact-divider {
            background: #eb1c28;
            width: 1px;
            height: 100%;
        }

        .contact-info {
            padding-right: 40px;
        }

        .contact-info h2 {
            font-size: 48px;
            font-weight: 100;
            margin-bottom: 40px;
            position: relative;
            color:#eb1c28;
        }

        .contact-info h2::after {
            content: '';
            position: absolute;
            bottom: -20px;
            left: 0;
            width: 40px;
            height: 2px;
            background: #eb1c28;
        }

        .info-item {
            margin-bottom: 30px;
            padding-left: 30px;
            position: relative;
        }

        .info-item::before {
            content: '';
            position: absolute;
            left: 0;
            top: 8px;
            width: 10px;
            height: 10px;
            background: #eb1c28;
            transform: rotate(45deg);
        }

        .info-item h4 {
            font-size: 12px;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 8px;
            font-weight: 500;
            color:#eb1c28;
        }

        .info-item p {
            font-size: 18px;
            font-weight: 300;
        }

        .contact-form {
            padding-left: 40px;
        }

        .form-group {
            margin-bottom: 40px;
            position: relative;
        }

        .form-group input,
        .form-group textarea {
            width: 100%;
            padding: 15px 0;
            border: none;
            border-bottom: 2px solid #eb1c28;
            background: transparent;
            font-size: 16px;
            font-family: inherit;
            transition: all 0.3s ease;
        }

        .form-group input:focus,
        .form-group textarea:focus {
            outline: none;
            padding-left: 20px;
        }

        .form-group label {
            position: absolute;
            left: 0;
            top: 15px;
            font-size: 14px;
            letter-spacing: 1px;
            text-transform: uppercase;
            transition: all 0.3s ease;
            pointer-events: none;
        }

        .form-group input:focus + label,
        .form-group input:not(:placeholder-shown) + label,
        .form-group textarea:focus + label,
        .form-group textarea:not(:placeholder-shown) + label {
            top: -20px;
            font-size: 11px;
            font-weight: 500;
        }

        .submit-btn {
            padding: 18px 60px;
            background: #eb1c28;
            color: #fff;
            border: 2px solid #eb1c28;
            font-size: 12px;
            letter-spacing: 2px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-transform: uppercase;
            position: relative;
        }

        .submit-btn::before {
            content: '';
            position: absolute;
            bottom: -8px;
            left: -8px;
            width: 30px;
            height: 30px;
            border-bottom: 2px solid #eb1c28;
            border-left: 2px solid #eb1c28;
        }

        .submit-btn:hover {
            background: transparent;
            color: #eb1c28;
            transform: translate(3px, 3px);
        }

        /* Footer */
        footer {
            padding: 60px 20px;
            text-align: center;
            border-top: 3px solid #eb1c28;
            background: #fff;
            position: relative;
        }

        footer::before,
        footer::after {
            content: '';
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 100px;
            height: 1px;
            background: #eb1c28;
        }

        footer::before {
            left: 20%;
        }

        footer::after {
            right: 20%;
        }

        footer p {
            color: #eb1c28;
            font-size: 12px;
            letter-spacing: 2px;
            text-transform: uppercase;
            font-weight: 500;
        }

        /* Animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .fade-in {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease;
        }

        .fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Mobile responsive */
        @media (max-width: 1000px) {
            footer::before,
            footer::after {
                display: none;
            }
        }

        @media (max-width: 768px) {
            .menu-toggle {
                display: flex;
            }

            .nav-links {
                display: none;
                position: fixed;
                top: 0;
                right: 0;
                width: 100%;
                height: 100vh;
                background: #fff;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                gap: 30px;
                z-index: 1000;
                opacity:0.9;
            }

            .nav-links.active {
                display: flex;
            }

            .nav-links a {
                font-size: 18px;
                letter-spacing: 2px;
            }

            .nav-links a::before {
                display: none;
            }

            .nav-links a.active {
                position: relative;
            }

            .nav-links a.active::after {
                content: '';
                position: absolute;
                bottom: -10px;
                left: 50%;
                transform: translateX(-50%);
                width: 30px;
                height: 2px;
                background: #eb1c28;
            }

            /* About section mobile */
            .quote-mark {
                font-size: 80px;
                left: -30px;
                top: -20px;
            }

            .quote-block h3 {
                font-size: 24px;
            }

            .stats-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .philosophy-section {
                grid-template-columns: 1fr;
                gap: 40px;
            }

            .philosophy-header h2 {
                writing-mode: horizontal-tb;
                font-size: 48px;
            }

            .header-decoration {
                position: static;
                width: 60px;
                height: 2px;
                margin-top: 20px;
            }

            .philosophy-points {
                grid-template-columns: 1fr;
                gap: 30px;
            }

            .timeline-container {
                flex-direction: column;
                gap: 40px;
            }

            .timeline-line {
                width: 2px;
                height: 100%;
                top: 0;
                left: 20px;
                right: auto;
            }

            .timeline-item {
                display: flex;
                align-items: center;
                gap: 30px;
                text-align: left;
            }

            .timeline-dot {
                margin: 0;
                flex-shrink: 0;
            }

            .values-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .values-header h2 {
                font-size: 36px;
            }

            .split-layout {
                grid-template-columns: 1fr;
                gap: 40px;
            }

            .split-divider {
                width: 100px;
                height: 2px;
            }

            .split-left {
                text-align: left;
                padding-right: 0;
            }

            .split-left h2::before {
                display: none;
            }

            .asymmetric-grid,
            .asymmetric-grid.reverse {
                grid-template-columns: 1fr;
            }

            .asymmetric-grid.reverse .service-large {
                border-right: none;
                border-left: 4px solid #eb1c28;
            }

            .asymmetric-grid.reverse .service-large::after {
                left: auto;
                right: 20px;
            }

            .asymmetric-grid.reverse .service-large:hover {
                transform: translateX(10px);
                border-left-width: 8px;
                border-right-width: 4px;
            }

            .contact-grid {
                grid-template-columns: 1fr;
                gap: 60px;
            }

            .contact-divider {
                width: 100px;
                height: 2px;
                margin: 0 auto;
            }

            .contact-info,
            .contact-form {
                padding: 0;
            }

            .hero h1 {
                font-size: 48px;
            }

            .services-header h2,
            .split-left h2 {
                font-size: 36px;
            }

            .services-header h2::before,
            .services-header h2::after {
                display: none;
            }

            .service-large {
                padding: 40px;
            }

            .service-large::after {
                top: 20px;
                right: 20px;
            }

            .service-tag {
                padding: 6px 12px;
                font-size: 10px;
            }

            .service-number {
                font-size: 60px;
            }

            .hero-decoration {
                display: none;
            }

            .hero::before,
            .hero::after {
                width: 50px;
            }

            /* Hide some animated objects on mobile for performance */
            .floating-objects {
                opacity: 0.5;
            }

            .floating-circle:nth-child(2) {
                display: none;
            }

            .services::before,
            .services::after {
                width: 30px;
                height: 30px;
            }

            footer::before,
            footer::after {
                display: none;
            }
        }
        /* Accessibility - Reduced Motion */
        @media (prefers-reduced-motion: reduce) {
            * {
                animation: none !important;
                transition: none !important;
            }
        
        }
        
        /* ===== Base & helpers ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
:root { --accent:#eb1c28; --bg:#fafafa; --muted:#666; }
*{box-sizing:border-box}
body{font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial; background:var(--bg); color:#111; -webkit-font-smoothing:antialiased}
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* ===== subtle animations ===== */
.animate-fadeIn { animation: fadeIn 360ms cubic-bezier(.2,.8,.2,1); }
@keyframes fadeIn { from { opacity:0; transform: translateY(6px) } to { opacity:1; transform: translateY(0) } }
.modal-open { animation: modalIn 260ms cubic-bezier(.2,.8,.2,1) both; }
@keyframes modalIn { from { opacity:0; transform: translateY(8px) scale(.995) } to { opacity:1; transform: translateY(0) scale(1) } }

/* ===== sidebar (desktop) ===== */
.desktop-sidebar { 
  width: 280px; 
  position: sticky; 
  top: 20px; 
  height: fit-content;
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}
.sidebar-section { margin-bottom: 28px; }
.sidebar-title { 
  font-size: 1.1rem; 
  font-weight: 600; 
  margin-bottom: 16px; 
  padding-bottom: 8px;
  border-bottom: 1px solid #eee;
  color: #333;
}
.sidebar-btn { 
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 14px;
  margin-bottom: 8px;
  border-radius: 8px;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s;
  color: #555;
}
.sidebar-btn:hover {
  background: #f8f8f8;
}
.sidebar-btn.active {
  background: var(--accent);
  color: white;
  box-shadow: 0 4px 12px rgba(235,28,40,0.2);
}
.sidebar-btn i {
  width: 20px;
  text-align: center;
}

/* ===== sidebar (mobile) ===== */
.filter-sidebar { transition: transform .32s cubic-bezier(.2,.8,.2,1); transform: translateX(-110%); }
.filter-sidebar.open { transform: translateX(0); }
.overlay { transition: opacity .24s ease; opacity:0; pointer-events:none; }
.overlay.show { opacity:1; pointer-events:auto; }

/* ===== Asymmetric/Services-like section ===== */
.products-section { padding: 80px 18px; position:relative; background:var(--bg); overflow:visible; }
.products-section::before, .products-section::after {
  content:''; position:absolute; width:50px; height:50px; border:2px solid var(--accent); z-index:0;
}
.products-section::before { left:4.5%; top:48px; animation: rotateSlowly 24s linear infinite; }
.products-section::after { right:4.5%; bottom:48px; transform: rotate(45deg); animation: rotateSlowly 24s linear infinite reverse; }
@keyframes rotateSlowly { from{transform:rotate(0)} to{transform:rotate(360deg)} }

.products-header { text-align:center; margin-bottom:44px; position:relative; z-index:5; }
.products-header h2 { color:var(--accent); font-weight:200; font-size:44px; letter-spacing:-1px; display:inline-block; position:relative; }
@media(min-width:768px){ .products-header h2{font-size:56px} }
.products-header h2::before, .products-header h2::after {
  content:''; position:absolute; top:50%; width:34px; height:1px; background:var(--accent); transform:translateY(-50%);
}
.products-header h2::before{ left:-46px } .products-header h2::after{ right:-46px }
.products-header::after{ content:''; position:absolute; bottom:-28px; left:50%; transform:translateX(-50%); width:240px; height:1px; background: linear-gradient(to right, transparent, var(--accent) 20%, #000 80%, transparent); }

/* ===== Filters (desktop) ===== */
.top-filters { 
  display: flex; 
  gap: 1rem; 
  align-items: center; 
  flex-wrap: wrap; 
  z-index: 5; 
  position: relative; 
  margin-bottom: 18px; 
  background: #fff;
  padding: 16px;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}
.filter-btn, .status-btn { 
  background:#fff; 
  border:1px solid #e6e6e6; 
  padding:.5rem .9rem; 
  border-radius:999px; 
  cursor:pointer; 
  transition: all .18s ease; 
  display:inline-flex; 
  gap:.5rem; 
  align-items:center; 
  font-size:.95rem; 
}
.filter-btn:hover, .status-btn:hover { transform:translateY(-3px); box-shadow:0 8px 18px rgba(0,0,0,.06) }
.active { background:var(--accent); color:#fff !important; box-shadow: 0 8px 20px rgba(235,28,40,.12) !important; border-color:var(--accent) !important; }

/* ===== Product grid cards ===== */
.product-card { background:#fff; border-radius:14px; overflow:hidden; border:1px solid #f0f0f0; transition: transform .26s cubic-bezier(.2,.9,.2,1), box-shadow .26s; cursor:pointer; display:flex; flex-direction:column; height:100%; position:relative; z-index:2; }
.product-card:hover { transform:translateY(-10px); box-shadow: 0 20px 40px rgba(12,12,12,0.08); }
.product-thumb { width:100%; height:220px; object-fit:cover; display:block; }
.product-body { padding:14px 16px 18px; display:flex; flex-direction:column; gap:8px; flex:1 }
.product-title { font-size:1.06rem; font-weight:600; color:#111 }
.product-short { color:var(--muted); font-size:.93rem; }
.price-status { display:flex; justify-content:space-between; align-items:center; gap:.6rem; margin-top:auto; }
.status-pill { padding:.25rem .6rem; border-radius:999px; font-weight:600; font-size:.75rem; }

/* status color classes (match earlier scheme) */
.status-new { background:#DCFCE7; color:#166534; }
.status-coming { background:#FEF3C7; color:#92400E; }
.status-featured { background:#DBEAFE; color:#1E40AF; }
.status-default { background:#F3F4F6; color:#374151; }

    /* ===== Modal styling ===== 
    .productModalWrap { position:fixed; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.65); z-index:60; opacity:0; pointer-events:none; transition:opacity .16s ease; }
    .productModalWrap.show { opacity:1; pointer-events:auto; }
    .productModal { width:100%; max-width:600px; background:#fff; border-radius:5px; padding:10px;max-height: 70vh; height:auto; box-shadow:0 30px 80px rgba(0,0,0,.28); transform-origin:center; }
    .modal-close { position:absolute; right:14px; top:12px; background:#f3f3f3; width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; border:none }
    
    .modal-image { width:100%; height:200px; object-fit:cover; border-radius:10px; border:1px solid #eee; }
    .modal-gallery { display:flex; gap:3px; margin-top:3px; overflow:auto; padding-bottom:4px }
    .gallery-thumb { width:30px; height:30px; object-fit:cover; border-radius:8px; border:2px solid transparent; cursor:pointer; }
    .gallery-thumb.active { border-color:var(--accent) }
    
    /* related products
    .related-card { border-radius:5px; overflow:hidden; border:1px solid #f0f0f0; background:#fff; cursor:pointer; transition:transform .2s; }
    .related-card:hover { transform:translateY(-6px) }*/
    
    /* ===== Modal styling ===== */
/* Modal */
.productModalWrap { position: fixed; top: 80px; inset-inline: 0; bottom: 0; display: flex; align-items: flex-start; justify-content: center; background: rgba(0,0,0,0.65); z-index: 60; opacity: 0; pointer-events: none; transition: opacity 0.16s ease, transform 0.3s ease; transform: translateY(-20px); }
.productModalWrap.show { opacity: 1; pointer-events: auto; transform: translateY(0); }
.productModal { width: 100%; max-width: 600px; background: var(--bg); border-radius: 12px; padding: 24px; max-height: 80vh; overflow-y: auto; box-shadow: 0 30px 80px rgba(0,0,0,0.28); position: relative; margin: 20px; }
.modal-close { position: absolute; right: 16px; top: 16px; background: rgba(0,0,0,0.1); width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; border: none; color: var(--text); transition: background 0.2s; }
.modal-close:hover { background: rgba(0,0,0,0.2); }
.modal-image { width: 100%; height: auto; max-height: 200px; object-fit: cover; border-radius: 10px; border: 1px solid var(--border); margin-bottom: 16px; }
.modal-gallery { display: flex; gap: 6px; margin-bottom: 16px; overflow-x: auto; padding-bottom: 4px; }
.gallery-thumb { width: 40px; height: 40px; object-fit: cover; border-radius: 8px; border: 2px solid transparent; cursor: pointer; flex-shrink: 0; transition: border 0.2s; }
.gallery-thumb.active { border-color: var(--accent); }
.modal-title { font-size: 1.5rem; font-weight: 600; margin-bottom: 8px; color: var(--text); }
.modal-price { font-size: 1.25rem; font-weight: 700; color: var(--accent); margin-bottom: 8px; }
.modal-short, .modal-long { color: var(--muted); margin-bottom: 16px; }
.related-products { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 8px; margin-top: 24px; }
.related-card { border-radius: 8px; overflow: hidden; border: 1px solid var(--border); background: var(--bg); cursor: pointer; transition: transform 0.2s; text-align: center; padding: 8px; }
.related-card img { width: 100%; height: 80px; object-fit: cover; border-radius: 4px; margin-bottom: 4px; }
.related-card:hover { transform: translateY(-6px); }

/* pagination */
.pagination { display:flex; gap:.6rem; align-items:center; justify-content:center; margin-top:28px; }
.page-btn { padding:.45rem .75rem; border-radius:8px; border:1px solid #e6e6e6; background:#fff; cursor:pointer; transition:all .16s }
.page-btn:hover { transform:translateY(-3px) }
.page-btn.active { background:var(--accent); color:#fff; border-color:var(--accent) }

/* responsive tweaks */
@media(min-width:1024px) {
  .product-thumb { height:260px }
  .main-content-container {
    display: flex;
    gap: 24px;
    align-items: flex-start;
  }
}
@media(max-width:1023px) {
  .desktop-sidebar {
    display: none;
  }
}
@media(max-width:780px) {
  .product-thumb { height:180px }
  .products-header h2::before, .products-header h2::after { display:none }
}











/* Reuse all services CSS as before */

.brand-logo { max-width:100px; margin-bottom:20px; }

/* Small card hover color adjustment */
.service-small:hover {
    background: #fff !important;
    color: inherit;
}
.service-small:hover h4 {
    color: inherit;
    opacity:1;
}
.service-small:hover .service-number {
    color: inherit;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .asymmetric-grid,
    .asymmetric-grid.reverse {
        grid-template-columns: 1fr;
    
    .service-large, .service-small {
        width: 100%;
        padding: 40px 20px;
    }
    .service-large:hover, .asymmetric-grid.reverse .service-large:hover {
        transform: translateX(0);
        border-left-width: 4px;
        border-right-width: 4px;
    }
    .service-small:hover::before {
        width: 150px;
        height: 150px;
    }
}

@media (max-width: 576px) {
    .services-header h2 {
        font-size: 36px;
    }
    .service-large h3 {
        font-size: 24px;
    }
    .service-number {
        font-size: 60px;
    }
}

      