/* =========================================================================

   DESIGN TOKENS & VARIABLES

   ========================================================================= */



:root {

    /* --- Brand Color Palette --- */

    --color-orange: #F37002;

    --color-orange-hover: #D6231E;

    --color-navy: #0E2544;

    --color-blue: #0A4D9A;

    --color-dark: #2D2D2D;

    --color-body: #555555;

    --color-cream: #FAF8F5;

    --color-cream-darker: #FFF3E8;

    --color-white: #FFFFFF;

    --color-border: #EAEAEA;



    /* --- Semantic Theme Variables --- */

    --brand-orange: var(--color-orange);

    --brand-orange-hover: var(--color-orange-hover);

    --primary-orange: var(--color-orange);

    --dark-orange: var(--color-orange-hover);

    --orange-hover: var(--color-orange-hover);



    --navy-heading: var(--color-navy);

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

    --primary-blue: var(--color-blue);



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

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

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

    --text-muted: var(--color-body);



    --bg-warm-cream: var(--color-cream);

    --bg-color: var(--color-cream);

    --bg-cream: var(--color-cream);

    --icon-bg: var(--color-cream-darker);

    --card-bg: var(--color-white);



    /* --- Typography --- */

    --font-sans: 'Montserrat', sans-serif;

    --font-main: var(--font-sans);

    /* --font-serif: 'Playfair Display', serif; */



    /* --- UI Properties & Timing --- */

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

    --border-radius-card: 16px;

    --card-radius: 12px;

    --transition-speed: 0.3s;

    --divider-color: #E6E1DA;

    /* Soft warm hairline border tint */

    --dotted-line-color: #D3C4B4;

}



/* =========================================================================

   GLOBAL BASE & LAYOUT STYLES (HEADER, FOOTER, CTA BANNER, ANIMATIONS)

   ========================================================================= */



/* --- Reset & Global Styling --- */

* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}



body {

    font-family: var(--font-main);

    background-color: #f5f5f5;

    overflow-x: hidden;

}



body.menu-open {

    overflow: hidden;

    /* Prevent background scrolling when menu is active */

}
button{
    cursor: pointer;
}


/* --- Header & Layout Container --- */

.site-header {

    background-color: var(--bg-color);

    width: 100%;

    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);

    padding: 15px 0;

    position: relative;

    z-index: 100;

}



.header-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    align-items: center;

    justify-content: space-between;

}



/* --- Logo Styling (Header & Footer) --- */

.logo-wrapper {

    display: flex;

    align-items: center;

    gap: 12px;

}



.brand-logo {

    height: auto;

    width: 150px;

    display: block;

}



/* --- Desktop Navigation --- */

.main-navigation {

    flex-grow: 1;

    display: flex;

    justify-content: center;

    padding: 0 30px;

}



.nav-list {

    display: flex;

    list-style: none;

    gap: 28px;

    align-items: center;

}



.nav-item a {

    text-decoration: none;

    color: var(--text-color);

    font-size: 13px;

    font-weight: 700;

    transition: color 0.2s ease;

    display: flex;

    align-items: center;

    position: relative;

}



.nav-item.active a {

    color: var(--primary-orange);

}



.nav-item a:hover {

    color: var(--primary-orange);

}



.arrow-down {

    display: inline-block;

    margin-left: 5px;

    width: 0;

    height: 0;

    border-left: 4px solid transparent;

    border-right: 4px solid transparent;

    border-top: 5px solid var(--text-color);

}



.nav-item:hover .arrow-down {

    border-top-color: var(--primary-orange);

}



.mobile-cta {

    display: none;

}



/* --- CTA Button --- */

.cta-button {

    display: inline-flex;

    align-items: center;

    gap: 8px;

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

    color: #FFFFFF;

    text-decoration: none;

    font-size: 12px;

    font-weight: 700;

    padding: 14px 24px;

    border-radius: 8px;

    transition: background-color 0.2s, transform 0.2s;

    white-space: nowrap;

}



.cta-button:hover {

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

}



.cta-icon {

    width: 14px;

    height: 14px;

}



/* --- Hamburger Button --- */

.menu-toggle {

    display: none;

    flex-direction: column;

    justify-content: space-between;

    width: 30px;

    height: 21px;

    background: transparent;

    border: none;

    cursor: pointer;

    z-index: 110;

    padding: 0;

}



.hamburger-bar {

    width: 100%;

    height: 3px;

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

    border-radius: 3px;

    transition: transform var(--transition-speed), opacity var(--transition-speed);

}



/* --- Responsive Collapsible Panel Structure --- */

@media (max-width: 1024px) {

    .header-container {

        padding: 0 24px;

    }



    .cta-area {

        display: none;

        /* Hide standard desktop button position */

    }



    .menu-toggle {

        display: flex;

        /* Reveal toggle trigger */

    }



    /* Transform main navigation block into the Collapsible Sliding Panel */

    .main-navigation {

        position: fixed;

        top: 0;

        right: -300px;

        /* Hidden off-screen right side */

        width: 300px;

        height: 100vh;

        background-color: #FFFFFF;

        box-shadow: -5px 0 25px rgba(0, 0, 0, 0.1);

        padding: 100px 30px 40px 30px;

        justify-content: flex-start;

        flex-direction: column;

        transition: right var(--transition-speed) cubic-bezier(0.4, 0, 0.2, 1);

        z-index: 105;

    }



    .main-navigation.is-active {

        right: 0;

        /* Slides into framework field view */

    }



    .nav-list {

        flex-direction: column;

        align-items: flex-start;

        width: 100%;

        gap: 0;

    }



    .nav-item {

        width: 100%;

        border-bottom: 1px solid #EEEEEE;

    }



    .nav-item a {

        padding: 18px 0;

        font-size: 15px;

        width: 100%;

    }



    .nav-item.active::after {

        display: none;

        /* Remove bottom bar layout structure on panel list view */

    }



    .nav-item.active a {

        border-left: 4px solid var(--primary-orange);

        padding-left: 10px;

    }



    .mobile-cta {

        display: block;

        margin-top: 30px;

        border: none;

    }



    .mobile-cta .cta-button {

        display: flex;

        justify-content: center;

        width: 100%;

    }



    /* Dimmed overlay screen state controller */

    .menu-overlay {

        position: fixed;

        top: 0;

        left: 0;

        width: 100vw;

        height: 100vh;

        background-color: rgba(0, 0, 0, 0.4);

        opacity: 0;

        visibility: hidden;

        transition: opacity var(--transition-speed) ease;

        z-index: 10;

    }



    .menu-overlay.is-active {

        opacity: 1;

        /* Fixed potential issue: overlay was opacity 0 when active */

        visibility: visible;

    }



    /* Hamburger Animation Transitions to "X" Icon */

    .menu-toggle.is-active .hamburger-bar:nth-child(1) {

        transform: translateY(9px) rotate(45deg);

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

    }



    .menu-toggle.is-active .hamburger-bar:nth-child(2) {

        opacity: 0;

    }



    .menu-toggle.is-active .hamburger-bar:nth-child(3) {

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

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

    }

}



/* --- Footer Frame Architecture --- */

.site-footer {

    background-color: var(--bg-cream);

    width: 100%;

    padding: 60px 0 50px 0;

    border-top: 1px solid #EAEAEA;

    display: flex;

    justify-content: center;

}



.footer-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 50px;

    display: grid;

    grid-template-columns: 1.25fr 0.85fr 0.95fr 1.15fr;

    gap: 40px;

    align-items: start;

}



.footer-column {

    position: relative;

    height: 100%;

}



/* --- Premium Feathered Vertical Divider Component --- */

.premium-divider {

    position: absolute;

    top: 5%;

    right: 0;

    width: 1.5px;

    height: 85%;

    background: linear-gradient(to bottom,

            rgba(250, 248, 245, 0) 0%,

            var(--divider-color) 20%,

            var(--divider-color) 80%,

            rgba(250, 248, 245, 0) 100%);

    pointer-events: none;

}



/* Footer specific branding overrides */

.site-footer .logo-wrapper {

    margin-bottom: 20px;

}



.site-footer .brand-logo {

    height: auto;

    width: 150px;

}



.brand-desc {

    color: var(--text-muted);

    font-size: 12.5px;

    line-height: 1.65;

    font-weight: 500;

    margin-bottom: 24px;

    padding-right: 30px;

}



/* Thin Ring Social Circles matching asset map */

.social-links {

    display: flex;

    gap: 12px;

}



.social-circle {

    width: 32px;

    height: 32px;

    border: 1px solid #C28E63;

    border-radius: 50%;

    display: flex;

    justify-content: center;

    align-items: center;

    text-decoration: none;

    color: #C28E63;

    font-size: 13px;

    font-weight: 600;

    transition: background-color 0.25s, color 0.25s, border-color 0.25s;

}



.social-circle:hover {

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

    border-color: var(--primary-orange);

    color: #ffffff;

}



/* --- List & Navigation Links Column Mapping --- */

.column-heading {

    font-size: 14px;

    font-weight: 700;

    color: var(--text-dark);

    letter-spacing: 0.5px;

    margin-bottom: 24px;

    margin-top: 8px;

}



.footer-links-list {

    list-style: none;

    display: flex;

    flex-direction: column;

    gap: 12px;

}



.footer-links-list a {

    text-decoration: none;

    color: var(--text-muted);

    font-size: 13px;

    font-weight: 600;

    transition: color 0.2s;

    display: inline-block;

}



.footer-links-list a:hover {

    color: var(--primary-orange);

    transform: translateX(2px);

}



/* --- Column 4: Detailed Contact Layout Items --- */

.contact-info-block {

    display: flex;

    flex-direction: column;

    gap: 20px;

}



.contact-item {

    display: flex;

    align-items: flex-start;

    gap: 14px;

}



.contact-icon {

    color: var(--primary-orange);

    font-size: 16px;

    margin-top: 2px;

    flex-shrink: 0;

}



.contact-icon img {

    width: 20px;

}



.contact-text {

    font-size: 13px;

    color: var(--text-muted);

    line-height: 1.5;

    font-weight: 600;

}



.contact-text a {

    text-decoration: none;

    color: inherit;

    transition: color 0.2s;

}



.contact-text a:hover {

    color: var(--primary-orange);

}



/* --- Responsive Layout Multi-Breakpoints --- */

@media (max-width: 1200px) {

    .footer-container {

        grid-template-columns: 1.4fr 0.9fr 1fr 1.2fr;

        gap: 24px;

        padding: 0 30px;

    }



    .brand-desc {

        padding-right: 10px;

    }

}



@media (max-width: 992px) {



    /* Wraps neatly into a clean 2x2 grid panel on tablet sizes */

    .footer-container {

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

        row-gap: 48px;

    }



    /* Suppress pure vertical line graphics to adapt grid structure */

    .premium-divider {

        display: none !important;

    }



    .footer-column {

        border-bottom: 1px solid var(--divider-color);

        padding-bottom: 32px;

    }



    .footer-container .footer-column:nth-last-child(-n+2) {

        border-bottom: none;

        padding-bottom: 0;

    }

}



@media (max-width: 640px) {



    /* Compresses safely down into a single clean column flow on mobile viewports */

    .footer-container {

        grid-template-columns: 1fr;

        row-gap: 36px;

        padding: 0 20px;

    }



    .footer-column {

        border-bottom: 1px solid var(--divider-color) !important;

        padding-bottom: 28px;

    }



    .footer-container .footer-column:last-child {

        border-bottom: none !important;

        padding-bottom: 0;

    }



    .column-heading {

        margin-bottom: 16px;

    }

}



@media (max-width: 640px) {

    .footer-container .footer-column:nth-last-child(-n+2) {

        border-bottom: none;

        padding-bottom: 20px;

    }

}







/* --- Banner Layout Structure --- */

.cta-banner-section {

    position: relative;

    width: 100%;

    background: radial-gradient(circle,

            rgba(255, 255, 255, 0.15) 0%,

            rgba(43, 24, 10, 0.25) 25%,

            rgba(43, 24, 10, 0.65) 55%,

            rgba(43, 24, 10, 0.95) 100%),

        url('images/wood-bakery-texture.webp') center / cover no-repeat;

    padding: 60px 0;

    display: flex;

    justify-content: center;

    align-items: center;

    overflow: hidden;

}



.cta-banner-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 50px;

    display: grid;

    grid-template-columns: 0.9fr 2fr 1.1fr !important;

    align-items: center;

    gap: 40px;

}



/* --- Left Column: Decorative Circle Badge --- */

.cta-badge-area {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

}



.circular-badge {

    position: relative;

    width: 165px;

    height: 110px;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(243, 112, 2, 0.15) 0%, rgba(0, 0, 0, 0) 70%);

    display: flex;

    justify-content: center;

    align-items: center;

    margin-bottom: 14px;

}



/* Elegant thin golden border ring matching layout screenshot */

.circular-badge::before {

    content: '';

    position: absolute;

    width: 116px;

    height: 116px;

    border: 2px solid rgba(224, 180, 134, 0.4);

    border-radius: 50%;

}



/* Micro Chef Hat Icon Component */

.chef-hat-icon {

    position: relative;

    width: 40px;

    height: 35px;

    display: flex;

    flex-direction: column;

    align-items: center;

}



.chef-hat-icon img {

    width: 60px;

    position: relative;

    top: -26px;

}



.badge-text {

    color: #fff2e6;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.8px;

    line-height: 1.5;

    opacity: 0.95;

    position: absolute;

    left: 0;

    top: 58px;

}



/* --- Middle Column: Text Narrative Context --- */

.cta-text-area {

    display: flex;

    flex-direction: column;

    justify-content: center;

}



.cta-heading {

    font-family: var(--font-sans);

    color: #ffffff;

    font-size: 34px;

    font-weight: 700;

    line-height: 1.25;

    margin-bottom: 16px;

    letter-spacing: -0.2px;

}



.cta-description {

    color: #e2d6ca;

    font-size: 13px;

    line-height: 1.65;

    font-weight: 500;

    max-width: 660px;

}



/* --- Right Column: Action Buttons Zone --- */

.cta-buttons-area {

    display: flex;

    flex-direction: column;

    gap: 14px;

    width: 240px;

}



.btn-action {

    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    padding: 15px 24px;

    font-size: 11.5px;

    font-weight: 700;

    letter-spacing: 0.5px;

    text-decoration: none;

    border-radius: 8px;

    white-space: nowrap;

    transition: all 0.25s ease;

}



/* Solid Fill Primary Button Styling */

.btn-filled {

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

    color: #ffffff;

    box-shadow: 0 4px 15px rgba(243, 112, 2, 0.2);

}



.btn-filled:hover {

    background-color: var(--orange-hover);

    transform: translateY(-1px);

}



/* Translucent Box Border Secondary Button Styling */

.btn-outlined {

    background-color: rgba(255, 255, 255, 0.04);

    color: #ffffff;

    border: 1px solid rgba(255, 255, 255, 0.4);

}



.btn-outlined:hover {

    background-color: rgba(255, 255, 255, 0.1);

    border-color: #ffffff;

    transform: translateY(-1px);

}



.arrow-icon {

    width: 13px;

    height: 13px;

    margin-left: 10px;

}



/* --- Fluid Responsive Adaptability Queries --- */

@media (max-width: 1200px) {

    .cta-banner-container {

        grid-template-columns: 1fr 1.5fr;

        gap: 32px;

        padding: 0 30px;

    }



    .cta-badge-area {

        display: none;

    }

}



@media (max-width: 992px) {

    .cta-banner-container {

        grid-template-columns: 1fr;

        text-align: center;

        gap: 40px;

    }



    .cta-text-area {

        align-items: center;

    }



    .cta-buttons-area {

        max-width: 400px;

        margin: 0 auto;

    }



    .btn-action {

        justify-content: center;

        /* Center labels when stacked inside tight display spaces */

    }

}



@media (max-width: 576px) {

    .cta-banner-section {

        padding: 45px 0;

    }



    .cta-banner-container {

        padding: 0 20px;

    }



    .cta-heading {

        font-size: 26px;

    }



    .cta-description {

        font-size: 12.5px;

    }



    .cta-buttons-area {

        width: 100%;

    }

}



/* =========================================================================

   COMMON COMPONENTS: BREADCRUMB HERO SECTION

   ========================================================================= */



/* --- breadcrumb.css --- Reusable & Premium Breadcrumb Page Header Hero Styling --- */



/* Section Main Container */

.breadcrumb-section {

    position: relative;

    background-color: var(--color-cream, #FCF6F0);

    background-image: url('images/breadcrumb-bg.webp');

    background-size: contain;

    background-position: right;

    background-repeat: no-repeat;

    width: 100%;

    min-height: 380px;

    display: flex;

    align-items: stretch;

    overflow: hidden;

    padding: 0;

    border-bottom: 1px solid var(--border-color, #EAEAEA);

}



/* Page Specific Hero Backgrounds */

.breadcrumb-section.contact-page-hero {

    background-image: url('images/contact-bg.webp');

}



.breadcrumb-section.blog-page-hero {

    background-image: url('images/blog-bg.webp');

}



/* Center Content Container */

.breadcrumb-section-container {

    position: relative;

    width: 100%;

    max-width: 1440px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 55% 45%;

    align-items: center;

}



/* Left Content Column */

.breadcrumb-section-text-col {

    padding-left: max(40px, calc((100vw - 1440px) / 2 + 40px));

    padding-right: 48px;

    padding-top: 60px;

    padding-bottom: 60px;

    z-index: 10;

    display: flex;

    flex-direction: column;

    justify-content: center;

}



/* Breadcrumb Navigation Trail */

.breadcrumb-section-nav {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 24px;

    font-size: 13px;

    font-weight: 600;

    text-transform: capitalize;

    letter-spacing: 0.3px;

    opacity: 0;

    animation: breadcrumbFadeInDown 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;

}



.breadcrumb-section-item {

    text-decoration: none;

    color: #777777;

    font-family: var(--font-sans, 'Montserrat', sans-serif);

    font-weight: 500;

    transition: color 0.3s cubic-bezier(0.25, 1, 0.5, 1);

    display: inline-block;

    position: relative;

}



.breadcrumb-section-item::after {

    content: '';

    position: absolute;

    bottom: -2px;

    left: 0;

    width: 100%;

    height: 1.5px;

    background-color: var(--primary-orange, #F37002);

    transform: scaleX(0);

    transform-origin: right;

    transition: transform 0.3s ease;

}



.breadcrumb-section-item:hover {

    color: var(--primary-orange, #F37002);

}



.breadcrumb-section-item:hover::after {

    transform: scaleX(1);

    transform-origin: left;

}



.breadcrumb-section-item.active {

    color: var(--color-navy, #0E2544);

    font-weight: 700;

    pointer-events: none;

}



.breadcrumb-section-item.active::after {

    display: none;

}



.breadcrumb-section-separator {

    color: #a5b1c2;

    font-size: 9px;

    display: flex;

    align-items: center;

    user-select: none;

}



/* Header Title styling */

.breadcrumb-section-title {

    font-family: var(--font-sans);

    font-size: 56px;

    font-weight: 700;

    color: var(--color-navy, #0E2544);

    letter-spacing: 0.5px;

    line-height: 1.15;

    margin-bottom: 16px;

    text-transform: uppercase;

    opacity: 0;

    animation: breadcrumbFadeInLeft 0.8s cubic-bezier(0.25, 1, 0.5, 1) 0.15s forwards;

}



/* Subtitle description styling */

.breadcrumb-section-subtitle {

    font-family: var(--font-sans, 'Montserrat', sans-serif);

    font-size: 19px;

    font-weight: 500;

    color: var(--color-body, #555555);

    line-height: 1.55;

    opacity: 0;

    animation: breadcrumbFadeInUp 0.8s cubic-bezier(0.25, 1, 0.5, 1) 0.4s forwards;

}



/* Right Column: Graphic illustration and concentric curves */

.breadcrumb-section-graphic-col {

    position: relative;

    height: 100%;

    width: 100%;

    z-index: 1;

    overflow: visible;

    display: flex;

    justify-content: flex-end;

    align-items: center;

}



/* Concentric decorative background arcs */

.breadcrumb-section-circles {

    position: absolute;

    top: 0;

    bottom: 0;

    left: -20%;

    right: 0;

    z-index: 1;

    pointer-events: none;

    opacity: 0.85;

}



.breadcrumb-section-circles svg {

    width: 120%;

    height: 100%;

}



/* Line Art Wheat Stalks styling */

.breadcrumb-section-wheat {

    position: relative;

    margin-right: 15%;

    width: 280px;

    height: 280px;

    z-index: 2;

    pointer-events: none;

    opacity: 0.9;

    animation: breadcrumbWheatSway 6s ease-in-out infinite, breadcrumbFadeIn 1.2s ease-out forwards;

    transform-origin: bottom center;

}



.breadcrumb-section-wheat svg,

.breadcrumb-section-wheat img {

    width: 100%;

    height: 100%;

    object-fit: contain;

}



/* --- Entrance & Idle Sway Animations --- */

@keyframes breadcrumbFadeInDown {

    from {

        opacity: 0;

        transform: translateY(-15px);

    }



    to {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes breadcrumbFadeInLeft {

    from {

        opacity: 0;

        transform: translateX(-25px);

    }



    to {

        opacity: 1;

        transform: translateX(0);

    }

}



@keyframes breadcrumbFadeInUp {

    from {

        opacity: 0;

        transform: translateY(20px);

    }



    to {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes breadcrumbScaleXIn {

    to {

        transform: scaleX(1);

    }

}



@keyframes breadcrumbFadeIn {

    from {

        opacity: 0;

    }



    to {

        opacity: 0.9;

    }

}



@keyframes breadcrumbWheatSway {



    0%,

    100% {

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

    }



    50% {

        transform: translateY(-6px) rotate(1.5deg);

    }

}



/* --- Responsive Layout Breakpoints --- */



@media (max-width: 1200px) {

    .breadcrumb-section-text-col {

        padding-left: 40px;

        padding-right: 32px;

    }



    .breadcrumb-section-title {

        font-size: 48px;

    }



    .breadcrumb-section-subtitle {

        font-size: 17px;

    }

}



@media (max-width: 992px) {

    .breadcrumb-section {

        min-height: auto;

    }



    .breadcrumb-section-container {

        grid-template-columns: 1fr;

        position: relative;

    }



    .breadcrumb-section-text-col {

        padding-right: 40px;

        padding-top: 60px;

        padding-bottom: 60px;

        max-width: 100%;

    }



    .breadcrumb-section-graphic-col {

        position: absolute;

        top: 0;

        bottom: 0;

        left: 0;

        right: 0;

        width: 100%;

        height: 100%;

        justify-content: flex-end;

    }



    .breadcrumb-section-wheat {

        position: absolute;

        right: 5%;

        bottom: 10px;

        width: 180px;

        height: 180px;

        margin-right: 0;

        opacity: 0.15;

        /* Becomes a subtle watermark behind text on tablet */

    }



    .breadcrumb-section-circles {

        left: 0;

        opacity: 0.4;

    }



    @keyframes breadcrumbFadeIn {

        to {

            opacity: 0.15;

        }

    }

}



@media (max-width: 576px) {

    .breadcrumb-section-text-col {

        padding-left: 24px;

        padding-right: 24px;

        padding-top: 48px;

        padding-bottom: 48px;

    }



    .breadcrumb-section-title {

        font-size: 38px;

        margin-bottom: 12px;

    }



    .breadcrumb-section-divider {

        margin-bottom: 18px;

        width: 48px;

    }



    .breadcrumb-section-subtitle {

        font-size: 15px;

        line-height: 1.45;

    }



    .breadcrumb-section-wheat {

        right: 3%;

        bottom: 5px;

        width: 130px;

        height: 130px;

        opacity: 0.1;

    }



    @keyframes breadcrumbFadeIn {

        to {

            opacity: 0.1;

        }

    }

}



/* =========================================================================

   PAGE SECTION: HOME / INDEX

   ========================================================================= */



/* --- Shared Layouts & Containers --- */

.about-section,

.solutions-section {

    background-color: var(--bg-warm-cream);

    width: 100%;

    display: flex;

    justify-content: center;

}



.about-section {

    background-color: #ffffff;

    padding: 60px 0;

    align-items: center;

}



.solutions-section {

    padding: 60px 0;

}



.about-container,

.solutions-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



.about-container {

    display: grid;

    grid-template-columns: 1.1fr 1.2fr 1.1fr;

    gap: 48px;

    align-items: start;

}



/* --- Left Column: Image Area --- */

.about-image-column {

    width: 100%;

}



.image-wrapper {

    width: 100%;

    border-radius: 16px;

    overflow: hidden;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);

}



.facility-image {

    width: 100%;

    height: 463px !important;

    display: block;

    object-fit: cover;

}



/* --- Center Column: Content & Headings --- */

.about-content-column {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

}



.section-tag,

.section-subtitle {

    color: var(--brand-orange);

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 1px;

}



.section-tag {

    margin-bottom: 12px;

}



.section-subtitle {

    margin-bottom: 16px;

}



.main-heading,

.section-title {

    font-family: var(--font-sans);

    font-weight: 700;

}



.main-heading {

    color: var(--navy-heading);

    font-size: 34px;

    line-height: 1.25;

    margin-bottom: 24px;

}



.section-title {

    color: var(--navy-text);

    font-size: 36px;

    position: relative;

    display: inline-block;

    padding: 0 40px;

}



/* Accent lines next to the header title */

.section-title::before,

.section-title::after {

    content: '';

    position: absolute;

    top: 50%;

    width: 24px;

    height: 1.5px;

    background-color: var(--brand-orange);

}



.section-title::before {

    left: 0;

}



.section-title::after {

    right: 0;

}



.narrative-text p {

    color: var(--text-body);

    font-size: 14px;

    line-height: 1.65;

    font-weight: 500;

    margin-bottom: 20px;

}



.narrative-text p:last-child {

    margin-bottom: 32px;

}



/* --- Right Column: Pillars Structure --- */

.about-pillars-column {

    border-left: 1px solid var(--border-color);

    padding-left: 40px;

}



.pillars-list {

    display: flex;

    flex-direction: column;

    gap: 28px;

}



.pillar-item {

    display: flex;

    align-items: center;

    gap: 20px;

}



.pillar-icon-box {

    width: 60px;

    height: 60px;

    border-radius: 50%;

    background-color: var(--icon-bg);

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

}



.inner-icon {

    width: 24px;

    height: 24px;

    border-radius: 4px;

}



.inner-icon i {

    font-size: 20px;

    color: #f37002;

}



.pillar-info h3 {

    color: var(--navy-heading);

    font-size: 14px;

    font-weight: 700;

    margin-bottom: 4px;

}



.pillar-info p {

    color: var(--text-body);

    font-size: 12px;

    line-height: 1.5;

    font-weight: 500;

}



/* --- Section: Solutions Grid --- */

.section-header {

    text-align: center;

    margin-bottom: 60px;

    position: relative;

    display: flex;

    flex-direction: column;

    align-items: center;

}



.solutions-grid {

    display: grid;

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

    gap: 32px;

    width: 100%;

}



.solution-card {

    background-color: var(--card-bg);

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

    border: 1px solid #eaeaea;

    padding: 30px;

    display: flex;

    align-items: center;

    gap: 30px;

    box-shadow: 0 10px 30px rgba(14, 37, 68, 0.02);

    transition: transform var(--transition-speed) ease, box-shadow var(--transition-speed) ease;

}



.solution-card:hover {

    transform: translateY(-4px);

    box-shadow: 0 15px 40px rgba(14, 37, 68, 0.06);

}



.card-image-area {

    flex: 1.1;

    display: flex;

    justify-content: center;

    align-items: center;

}



.product-image {

    max-width: 100%;

    height: auto;

    object-fit: contain;

}



.card-content-area {

    flex: 1.2;

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    position: relative;

}



.card-title {

    font-family: var(--font-sans);

    color: #c04a23;

    font-size: 18px;

    font-weight: 600;

    margin-bottom: 16px;

}



.card-description {

    color: var(--text-muted);

    font-size: 13.5px;

    line-height: 1.65;

    font-weight: 500;

    margin-bottom: 16px;

}



.wheat-decoration {

    position: absolute;

    bottom: -10px;

    left: -20px;

    width: 70px;

    height: 70px;

    background-image: url('wheat-line-accent.svg');

    background-size: contain;

    background-repeat: no-repeat;

    opacity: 0.15;

    pointer-events: none;

    z-index: 1;

}



/* --- Interactive Action Buttons --- */

.learn-more-btn,

.view-details-btn {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    background-color: var(--brand-orange);

    color: #ffffff;

    text-decoration: none;

    font-weight: 700;

    letter-spacing: 0.5px;

    border-radius: 6px;

    transition: background-color var(--transition-speed) ease, transform var(--transition-speed) ease;

}



.learn-more-btn:hover,

.view-details-btn:hover {

    background-color: var(--brand-orange-hover);

}



.learn-more-btn {

    font-size: 12px;

    padding: 14px 28px;

}



.learn-more-btn:hover {

    transform: translateY(-1px);

}



.view-details-btn {

    font-size: 11px;

    padding: 12px 24px;

    z-index: 2;

}



.btn-arrow {

    width: 14px;

    height: 14px;

}



.view-details-btn .btn-arrow {

    width: 12px;

    height: 12px;

}



/* --- Responsive Adjustments --- */

@media (max-width: 1200px) {



    .about-container,

    .solutions-container {

        padding: 0 24px;

    }



    .about-container {

        gap: 32px;

    }



    .main-heading {

        font-size: 32px;

    }



    .solution-card {

        gap: 20px;

        padding: 20px;

    }



    .card-title {

        font-size: 21px;

    }



    .section-title {

        font-size: 30px;

    }

}



@media (max-width: 992px) {

    .about-container {

        grid-template-columns: 1fr;

        gap: 48px;

    }



    .about-pillars-column {

        border-left: none;

        border-top: 1px solid var(--border-color);

        padding-left: 0;

        padding-top: 40px;

    }



    .pillars-list {

        display: grid;

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

        gap: 32px;

    }



    .solution-card {

        flex-direction: column;

        align-items: flex-start;

    }



    .card-image-area {

        width: 100%;

        margin-bottom: 10px;

    }



    .product-image {

        max-height: 220px;

    }

}



@media (max-width: 768px) {
    .specs-warning-section{
        overflow: hidden;
    }

    .solutions-grid {

        grid-template-columns: 1fr;

        gap: 24px;

    }



    .solutions-section {

        padding: 60px 0;

    }



    .section-title {

        font-size: 26px;

        padding: 0 30px;

    }



    .section-title::before,

    .section-title::after {

        width: 16px;

    }

}



@media (max-width: 640px) {

    .pillars-list {

        grid-template-columns: 1fr;

        gap: 24px;

    }



    .main-heading {

        font-size: 28px;

    }



    .about-section {

        padding: 48px 0;

    }

}



@media (max-width: 480px) {

    .section-title {

        font-size: 22px;

    }



    .view-details-btn {

        width: 100%;

        justify-content: center;

    }

}



/* --- Outer Layout Wrapper --- */

.pillars-section {

    background-color: #ffffff;

    width: 100%;

    padding: 60px 0;

    display: flex;

    justify-content: center;

}



.pillars-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



/* --- Inline 6-Column Grid Layout Configuration --- */

.pillars-grid {

    display: grid;

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

    width: 100%;

}



.pillar-card {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    padding: 0 24px;

    position: relative;

}



/* Precision line separators running between entries on standard viewports */

.pillar-card:not(:last-child)::after {

    content: '';

    position: absolute;

    top: 10%;

    right: 0;

    width: 1px;

    height: 75%;

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

}



/* Icon Core Placement Boxes */

.icon-box {

    width: 54px;

    height: 54px;

    display: flex;

    justify-content: center;

    align-items: center;

    color: var(--brand-orange);

    margin-bottom: 20px;

}



.orange-stroke-icon {

    width: 100%;

    height: 100%;

}



/* Component Text Layout Elements */

.pillar-heading {

    font-family: var(--font-sans);

    color: var(--navy-dark);

    font-size: 14px;

    font-weight: 700;

    line-height: 1.35;

    margin-bottom: 12px;

    min-height: 38px;

    /* Perfectly balances header alignment rows */

    display: flex;

    align-items: center;

}



.pillar-description {

    color: var(--text-muted);

    font-size: 12px;

    line-height: 1.6;

    font-weight: 500;

}



/* --- Balanced Device Adaptability Layout Queries --- */

@media (max-width: 1200px) {

    .pillars-container {

        padding: 0 24px;

    }



    .pillar-card {

        padding: 0 14px;

    }



    .pillar-heading {

        font-size: 13px;

    }

}



@media (max-width: 992px) {



    /* Wraps efficiently into an even double-row matrix on tablet sizes */

    .pillars-grid {

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

        row-gap: 48px;

    }



    .pillar-card::after {

        display: none !important;

        /* Hides row borders to prepare for stack mapping */

    }



    .pillar-card {

        border-bottom: 1px solid var(--border-tint);

        padding-bottom: 24px;

    }



    .pillars-grid .pillar-card:nth-last-child(-n+3) {

        border-bottom: none;

        padding-bottom: 0;

    }

}



@media (max-width: 640px) {



    /* Compresses safely down into a singular straight vertical timeline stack layout on mobile devices */

    .pillars-grid {

        grid-template-columns: 1fr;

        row-gap: 36px;

    }



    .pillar-card {

        border-bottom: 1px solid var(--border-tint) !important;

        padding-bottom: 32px;

    }



    .pillars-grid .pillar-card:last-child {

        border-bottom: none !important;

        padding-bottom: 0;

    }



    .pillar-heading {

        min-height: auto;

    }

}



/* Specific component overrides for .premium-divider */

.dual-panel-section .premium-divider {

    height: 90%;

}



/* --- Section Master Container Layout --- */

.dual-panel-section {

    width: 100%;

    background-color: var(--bg-cream);

    padding: 60px 0;

    display: flex;

    justify-content: center;

}



.main-wrapper {

    width: 100%;

    padding: 0 0 0 40px;

    display: grid;

    grid-template-columns: 1fr 1.05fr;

    gap: 40px;

}



/* --- Global Sub-Panel Top Typography Blocks --- */

.panel-tag {

    color: var(--brand-orange);

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 1px;

    text-transform: uppercase;

    display: block;

    margin-bottom: 12px;

}



.panel-title {

    font-family: var(--font-sans);

    color: var(--navy-text);

    font-size: 34px;

    font-weight: 700;

    line-height: 1.25;

    margin-bottom: 32px;

}



/* --- LEFT SIDE: Segments Configuration --- */

.panel-left {

    background: #ffffff;

    padding: 40px;

    border-radius: 16px;

    border: 1px solid #eaeaea;

    box-shadow: 0 10px 30px rgba(14, 37, 68, 0.02);

}



.segments-grid {

    display: grid;

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

    gap: 16px;

}



.segment-card {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

}



.segment-card .image-box {

    width: 100%;

    aspect-ratio: 4 / 3;

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

    overflow: hidden;

    margin-bottom: 12px;

    background-color: #eaeaea;

}



.segment-card .image-box img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.segment-label {

    font-size: 11px;

    font-weight: 700;

    color: var(--text-muted);

    line-height: 1.4;

}



/* --- RIGHT SIDE: Excellence Layout Configuration --- */

.panel-right {

    display: flex;

    flex-direction: column;

    justify-content: space-between;

    padding-right: 40px;

    position: relative;

    background-image: linear-gradient(to right, var(--bg-cream) 40%, rgba(250, 248, 245, 0.5) 100%), url('images/bg.webp');

    background-size: cover;

}



.panel-right .panel-tag {

    margin-top: 40px;

}



.panel-right .text-content {

    max-width: 580px;

}



.panel-desc {

    color: var(--text-muted);

    font-size: 13.5px;

    line-height: 1.65;

    font-weight: 500;

    margin-bottom: 20px;

}



/* --- Metrics Grid Row System --- */

.metrics-row {

    display: grid;

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

    gap: 12px;

    margin-top: 30px;

    width: 100%;

}



.metric-card {

    background: #ffffff;

    border: 1px solid #eaeaea;

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

    padding: 20px 10px;

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    box-shadow: 0 8px 24px rgba(14, 37, 68, 0.03);

}



.metric-icon {

    width: 36px;

    height: 36px;

    border-radius: 50%;

    margin-bottom: 12px;

}



.metric-icon img {

    width: 40px;

}



.metric-number {

    font-size: 24px;

    font-weight: 800;

    color: #f37002;

    margin-bottom: 6px;

}



.metric-label {

    font-size: 11px;

    font-weight: 700;

    color: var(--text-muted);

    line-height: 1.3;

}



/* --- Responsive Layout Optimization Breakpoints --- */

@media (max-width: 1200px) {

    .main-wrapper {

        grid-template-columns: 1fr;

        gap: 48px;

    }



    .panel-right {

        padding-right: 0;

        background-position: center;

    }



    .segments-grid {

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

    }

}



@media (max-width: 768px) {

    .main-wrapper {

        padding: 0;

    }



    .panel-right {

        padding: 24px;

    }



    .panel-left {

        padding: 24px;

    }



    .segments-grid {

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

        gap: 14px;

    }



    .metrics-row {

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

        gap: 14px;

    }



    .panel-title {

        font-size: 28px;

    }

}



@media (max-width: 480px) {

    .main-wrapper {

        padding: 0;

    }



    .segments-grid {

        grid-template-columns: 1fr;

    }



    .metrics-row {

        grid-template-columns: 1fr;

    }



    .panel-title {

        font-size: 24px;

    }

}



/* --- Section Structural Framework --- */

.process-section {

    background-color: #ffffff;

    width: 100%;

    padding: 60px 0;

    display: flex;

    justify-content: center;

}



.process-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



/* --- Timeline Layout Component --- */

.timeline-wrapper {

    position: relative;

    width: 100%;

    padding: 20px 0;

}



/* Horizontal dotted system backbone line track */

.timeline-wrapper::before {

    content: '';

    position: absolute;

    top: 54px;

    /* Positions line perfectly through the center vertical of the badges */

    left: 8%;

    width: 84%;

    height: 2px;

    background-image: linear-gradient(to right, var(--dotted-line-color) 40%, rgba(255, 255, 255, 0) 0%);

    background-position: bottom;

    background-size: 8px 2px;

    background-repeat: repeat-x;

    z-index: 1;

}



.timeline-grid {

    display: grid;

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

    width: 100%;

    position: relative;

    z-index: 2;

}



/* Individual Timeline Node Steps */

.timeline-node {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    padding: 0 10px;

}



/* Orange Inner Circle Badges */

.circle-badge {

    width: 76px;

    height: 76px;

    background-color: #ffdebd;

    /* Soft warm orange container body circle background */

    border: 2px solid #ffa852;

    /* Slightly sharper outer container ring */

    border-radius: 50%;

    display: flex;

    justify-content: center;

    align-items: center;

    color: #4a2600;

    /* Matching the exact dark contrast icon line style */

    margin-bottom: 24px;

    box-shadow: 0 4px 12px rgba(243, 112, 2, 0.05);

    transition: transform 0.25s ease, background-color 0.25s ease;

}



.circle-badge i {

    font-size: 24px;

}



.timeline-node:hover .circle-badge {

    transform: scale(1.06);

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

    color: #ffffff;

    border-color: var(--primary-orange);

}



/* Descriptive Labels */

.node-label {

    font-size: 11.5px;

    font-weight: 700;

    color: var(--text-muted);

    line-height: 1.5;

    letter-spacing: 0.1px;

}



/* --- Responsive Layout Multi-Breakpoints --- */

@media (max-width: 1200px) {

    .process-container {

        padding: 0 24px;

    }



    .node-label {

        font-size: 11px;

    }

}



@media (max-width: 992px) {



    /* Compress the horizontal tracking span area margin boundaries */

    .timeline-wrapper::before {

        left: 5%;

        width: 90%;

    }



    .node-label br {

        display: none;

        /* Flow labels more naturally as text box room contracts */

    }

}



@media (max-width: 768px) {



    /* Convert horizontal track structure fully into a vertical step-workflow map */

    .timeline-wrapper::before {

        top: 0;

        left: 62px;

        /* Moves backbone track to line up behind vertical stack alignment nodes */

        width: 2px;

        height: 90%;

        background-image: linear-gradient(to bottom, var(--dotted-line-color) 40%, rgba(255, 255, 255, 0) 0%);

        background-size: 2px 8px;

        background-repeat: repeat-y;

    }



    .timeline-grid {

        grid-template-columns: 1fr;

        row-gap: 40px;

    }



    .timeline-node {

        flex-direction: row;

        text-align: left;

        padding-left: 24px;

        gap: 24px;

    }



    .circle-badge {

        margin-bottom: 0;

        /* Clear bottom spaces intended for grid flows */

        flex-shrink: 0;

    }



    .node-label {

        font-size: 13px;

    }

}





/* --- Hero Frame Architecture Layout --- */

.hero-section {

    width: 100%;

    background-color: var(--bg-warm-cream);

    display: flex;

    justify-content: center;

}



.hero-container {

    /* max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px; */

    display: flex;

}



.hero-left-col {

    flex: 0 0 270px;

}



.hero-center-col {

    flex: 1;

    padding: 0 30px;

}



.hero-right-col {

    flex: 1.2;

}



/* --- LEFT COLUMN CONTENT ZONE --- */

.hero-left-content {

    display: flex;

    flex-direction: column;

    position: relative;

    z-index: 5;

}



.hero-left-col img {

    width: 270px;

    height: 100%;

}



.hero-subtitle {

    font-family: var(--font-serif);

    font-style: italic;

    color: #4d3c33;

    font-size: 20px;

    font-weight: 700;

    margin-bottom: 16px;

    margin-top: 50px;

}



.hero-title {

    color: var(--navy-text);

    font-size: 46px;

    font-weight: 800;

    line-height: 1.2;

    letter-spacing: -0.5px;

    margin-bottom: 24px;

}



.hero-title .orange-highlight {

    color: var(--primary-orange);

}



.hero-description {

    color: var(--text-muted);

    font-size: 14.5px;

    line-height: 1.65;

    font-weight: 500;

    max-width: 540px;

    margin-bottom: 40px;

}



/* Action Group Buttons */

.hero-actions {

    display: flex;

    gap: 16px;

    margin-bottom: 60px;

}



.btn-hero {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 15px 28px;

    font-size: 11.5px;

    font-weight: 700;

    letter-spacing: 0.5px;

    text-decoration: none;

    border-radius: 6px;

    white-space: nowrap;

    transition: all 0.25s ease;

}



.btn-orange {

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

    color: #ffffff;

    box-shadow: 0 4px 14px rgba(243, 112, 2, 0.2);

}



.btn-orange:hover {

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

    transform: translateY(-1px);

}



.btn-white {

    background-color: transparent;

    color: var(--navy-text);

    border: 1.5px solid rgba(14, 37, 68, 0.6);

}



.btn-white:hover {

    background-color: rgba(14, 37, 68, 0.05);

    border-color: var(--navy-text);

    transform: translateY(-1px);

}



.btn-arrow {

    width: 13px;

    height: 13px;

}



.machine-section {

    position: relative;

    width: 100%;

    min-height: 600px;

    /* background: #f7f4f1; */

}



.machine-wrapper {

    position: relative;

    width: 100%;

    height: 100%;

}



/* Large Circle */

.circle-bg {

    position: absolute;

    top: 40px;

    left: 50%;

    transform: translateX(-50%);

    width: 400px;

    height: 400px;

    border-radius: 50%;

    background: radial-gradient(circle,

            rgba(240, 222, 202, 0.7) 0%,

            rgba(240, 222, 202, 0.4) 55%,

            rgba(240, 222, 202, 0.15) 100%);

}



.circle-bg::after {

    content: "";

    position: absolute;

    inset: -18px;

    border: 2px dashed #e6b97c;

    border-radius: 50%;

}



/* Machine */

.machine-image {

    position: relative;

    z-index: 2;

    text-align: center;

    padding-top: 35px;

}



.machine-image img {

    max-width: 100%;

    height: auto;

}



.machine-tagline {

    position: absolute;

    right: 150px;

    bottom: 93px;

    z-index: 3;

    font-family: "Brush Script MT", cursive;

    font-size: 28px;

    color: #4d3c33;

    text-align: center;

}



.machine-tagline span {

    display: block;

    line-height: 1.1;

}



.machine-tagline .underline {

    width: 90px;

    height: 4px;

    background: #f39a21;

    border-radius: 30px;

    margin: 10px auto 0;

}



/* Trusted Box */

.trusted-box {

    position: absolute;

    bottom: -74px;

    right: 102px;

    width: 420px;

    background: #ffffff;

    border-radius: 18px;

    padding: 25px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);

    z-index: 5;

}



.trusted-box h4 {

    margin: 0 0 20px;

    text-align: center;

    color: #5a3d2f;

    font-size: 14px;

    font-weight: 700;

    font-family: var(--font-sans);

}



.trusted-icons {

    display: flex;

    justify-content: space-between;

    align-items: center;

}



.icon-item img {

    width: 42px;

    height: 42px;

    object-fit: contain;

    filter: invert(61%) sepia(78%) saturate(963%) hue-rotate(349deg) brightness(102%) contrast(94%);

}



/* Horizontal Benefits Core Layout Rows */

.hero-features-bar {

    display: grid;

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

    width: 100%;

    max-width: 600px;

}



.feature-node {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    position: relative;

    padding: 20px;

    text-align: center;

}



.feature-node .premium-divider {

    top: 10%;

    height: 80%;

}



.feature-icon {

    border-radius: 6px;

    margin-bottom: 7px;

}



.feature-icon img {

    width: 30px;

}



.feature-label {

    font-size: 11px;

    font-weight: 700;

    color: var(--navy-text);

    line-height: 1.4;

}



/* --- Adaptive Device Responsiveness Media Breaking Rules --- */

@media (max-width: 1200px) {

    .hero-container {

        padding: 0 30px;

    }



    .hero-title {

        font-size: 38px;

    }



    .hero-features-bar {

        max-width: 100%;

        gap: 10px;

    }



    .feature-node {

        padding-right: 4px;

    }

}



@media (max-width: 992px) {



    /* Safe stack layout transformation logic for tablet profiles */

    .hero-section {

        background-image: none;

        /* Strip overlapping asset frameworks comfortably */

        padding: 50px 0;

    }



    .hero-container {

        display: flex;

        flex-direction: column;

        align-items: center;

        text-align: center;

        gap: 50px;

    }



    .hero-left-col {

        display: none;

        /* Hide the pastry basket collage on tablet/mobile */

    }



    .hero-left-content {

        align-items: center;

        text-align: center;

    }



    .hero-description {

        max-width: 100%;

    }



    .hero-actions {

        justify-content: center;

    }



    .hero-features-bar {

        max-width: 500px;

        margin: 0 auto;

    }



    .feature-node {

        align-items: center;

    }



    .machine-section {

        min-height: auto;

        padding: 40px 20px 80px 20px;

        /* Leave space for centered trusted box */

        width: 100%;

        max-width: 630px;

        border-radius: 18px;

    }



    .circle-bg {

        width: 320px;

        height: 320px;

        top: 20px;

    }



    .machine-image img {

        max-width: 100%;

        height: auto;

    }



    .machine-tagline {

        position: relative;

        right: auto;

        bottom: auto;

        margin: 30px auto 0;

        text-align: center;

    }



    .trusted-box {

        position: relative;

        bottom: auto;

        right: auto;

        margin: 40px auto 0;

        width: 100%;

        max-width: 440px;

    }

}



@media (max-width: 767px) {

    .hero-features-bar {

        display: none;

    }



    .hero-actions {

        margin-bottom: 0;

    }



    .machine-image img {

        max-width: 100%;

        height: auto;

    }



    .machine-section {

        padding: 40px 20px 0;

    }

}



@media (max-width: 576px) {

    .hero-container {

        padding: 0 20px;

        gap: 0;

    }



    .hero-title {

        font-size: 30px;

    }



    .hero-subtitle {

        font-size: 17px;

    }



    .hero-actions {

        flex-direction: column;

        width: 100%;

    }



    .btn-hero {

        justify-content: center;

        width: 100%;

    }



    .circle-bg {

        width: 260px;

        height: 260px;

    }



    .machine-tagline {

        font-size: 24px;

    }



    .trusted-box {

        padding: 15px;

    }



    .trusted-box h4 {

        font-size: 12px;

        margin-bottom: 12px;

    }



    .trusted-icons {

        gap: 10px;

        justify-content: center;

    }



    .icon-item img {

        width: 32px;

        height: 32px;

    }

}



/* --- Scroll Animation Framework --- */

.reveal {

    opacity: 0;

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

    will-change: opacity, transform;

}



/* Animation directions/types */

.reveal.fade-in {

    transform: none;

}



.reveal.slide-up {

    transform: translateY(40px);

}



.reveal.slide-down {

    transform: translateY(-40px);

}



.reveal.slide-left {

    transform: translateX(-50px);

}



.reveal.slide-right {

    transform: translateX(50px);

}



.reveal.scale-up {

    transform: scale(0.92);

}



/* Reveal Active State */

.reveal.active {

    opacity: 1;

    transform: none;

}



/* Reveal Staggered Delay Utilities */

.delay-1 {

    transition-delay: 0.1s !important;

}



.delay-2 {

    transition-delay: 0.2s !important;

}



.delay-3 {

    transition-delay: 0.3s !important;

}



.delay-4 {

    transition-delay: 0.4s !important;

}



.delay-5 {

    transition-delay: 0.5s !important;

}



.delay-6 {

    transition-delay: 0.6s !important;

}



.delay-7 {

    transition-delay: 0.7s !important;

}



.delay-8 {

    transition-delay: 0.8s !important;

}



/* =========================================================================

   PAGE SECTION: ABOUT US

   ========================================================================= */



/* --- test.css --- Style Guide overrides for the About Hero section --- */



/* Page Section Layout */

.about-hero-section {

    position: relative;

    background: linear-gradient(135deg, var(--color-cream) 0%, #FFF3E8 100%);

    width: 100%;

    min-height: 520px;

    display: flex;

    align-items: stretch;

    overflow: hidden;

    padding: 0;

}



.about-hero-grid {

    display: grid;

    grid-template-columns: 48% 52%;

    width: 100%;

    min-height: 520px;

    align-items: stretch;

}



/* Left Side: Content alignment */

.about-hero-left {

    padding-left: max(40px, calc((100vw - 1440px) / 2 + 40px));

    padding-right: 48px;

    padding-top: 60px;

    padding-bottom: 60px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    z-index: 10;

}



.about-hero-content-wrapper {

    max-width: 580px;

}



/* Breadcrumbs Section */

.breadcrumbs {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 32px;

    font-size: 12px;

    font-weight: 700;

    text-transform: capitalize;

    letter-spacing: 0.2px;

}



.breadcrumb-item {

    text-decoration: none;

    color: #888888;

    font-family: var(--font-sans);

    transition: color var(--transition-speed) ease;

}



.breadcrumb-item:hover {

    color: var(--primary-orange);

}



.breadcrumb-item.active {

    color: var(--color-navy);

    font-weight: 700;

    pointer-events: none;

}



.breadcrumb-separator {

    color: #a5b1c2;

    font-size: 8px;

    display: flex;

    align-items: center;

}



/* Title text */

.about-hero-title {

    font-family: var(--font-sans);

    font-size: 52px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 0.5px;

    line-height: 1.1;

    margin-bottom: 14px;

    text-transform: uppercase;

}



/* Accent Line */

.about-hero-divider {

    width: 44px;

    height: 3.5px;

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

    border-radius: 2px;

    margin-bottom: 24px;

}



/* Subheading */

.about-hero-subtitle {

    font-family: var(--font-sans);

    font-size: 24px;

    font-weight: 700;

    color: var(--color-body);

    line-height: 1.35;

    margin-bottom: 22px;

}



/* Paragraph Narrative */

.about-hero-text {

    font-family: var(--font-sans);

    font-size: 14px;

    line-height: 1.75;

    color: var(--color-body);

    font-weight: 500;

}



/* Right Side: Visual Section */

.about-hero-visual {

    position: relative;

    width: 100%;

    min-height: 520px;

    overflow: hidden;

}



/* Decorative background arcs */

.deco-curves {

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    right: 0;

    z-index: 1;

    pointer-events: none;

}



.deco-curves svg {

    width: 100%;

    height: 100%;

}





/* White Divider Border using shifted clip-path layering */

.curved-image-border {

    position: absolute;

    top: 0;

    bottom: 0;

    left: -12px;

    /* Pulls to the left to show standard width */

    right: 12px;

    background-color: #ffffff;

    clip-path: ellipse(85% 100% at 85% 50%);

    z-index: 2;

}



/* Main Image Wrapper */

.curved-image-wrapper {

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    right: 0;

    clip-path: ellipse(85% 100% at 85% 50%);

    z-index: 3;

}



.curved-image {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center;

}



/* --- Responsive Layout Multi-Breakpoints --- */



@media (max-width: 1200px) {

    .about-hero-left {

        padding-left: 40px;

        padding-right: 32px;

    }



    .about-hero-title {

        font-size: 44px;

    }



    .about-hero-subtitle {

        font-size: 21px;

    }

}



@media (max-width: 992px) {

    .about-hero-grid {

        grid-template-columns: 1fr;

        min-height: auto;

    }



    .about-hero-left {

        padding-right: 40px;

        padding-top: 60px;

        padding-bottom: 40px;

        align-items: flex-start;

    }



    .about-hero-visual {

        min-height: 420px;

        height: 420px;

        width: 100%;

    }



    /* Modify clip path to stack vertically */

    .curved-image-border {

        left: 0;

        right: 0;

        top: -12px;

        bottom: 12px;

        clip-path: ellipse(100% 85% at 50% 85%);

    }



    .curved-image-wrapper {

        top: 0;

        bottom: 0;

        left: 0;

        right: 0;

        clip-path: ellipse(100% 85% at 50% 85%);

    }



    .deco-curves {

        display: none;

        /* Hide horizontal curves in mobile view */

    }



    .deco-wheat {

        left: 50%;

        bottom: auto;

        top: -45px;

        transform: translateX(-50%) rotate(45deg) scale(0.9);

        z-index: 5;

    }

}



@media (max-width: 576px) {

    .about-hero-left {

        padding-left: 24px;

        padding-right: 24px;

        padding-top: 48px;

        padding-bottom: 32px;

    }



    .about-hero-title {

        font-size: 36px;

    }



    .about-hero-subtitle {

        font-size: 19px;

        margin-bottom: 16px;

    }



    .about-hero-text {

        font-size: 13.5px;

    }



    .about-hero-visual {

        height: 320px;

        min-height: 320px;

    }

}



/* --- Our Journey Section Styles --- */

.journey-section {

    position: relative;

    background-color: #ffffff;

    width: 100%;

    padding: 80px 0;

    display: flex;

    justify-content: center;

}



.journey-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    flex-direction: column;

}



.journey-header {

    text-align: center;

    margin-bottom: 40px;

}



.journey-title {

    font-family: var(--font-sans);

    font-size: 26px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

    margin-bottom: 24px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

}



.journey-title-line {

    width: 32px;

    height: 2px;

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

}



.journey-desc {

    font-family: var(--font-sans);

    font-size: 14px;

    line-height: 1.7;

    color: var(--color-body);

    font-weight: 500;

    max-width: 720px;

    margin: 0 auto;

}



.journey-divider-horizontal {

    width: 100%;

    height: 2px;

    background-color: #f3700224;

    margin-bottom: 48px;

}



.journey-stats-grid {

    display: grid;

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

    width: 100%;

}



.journey-stat-card {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    padding: 10px 10px 10px 30px;

    border-left: 1.5px solid var(--color-border);

    transition: border-color var(--transition-speed) ease, transform var(--transition-speed) ease;

}



.journey-stat-card.first-card {

    border-left: 1.5px solid var(--primary-orange);

}



.journey-stat-card:hover {

    border-color: var(--primary-orange);

    transform: translateX(6px);

}



.journey-stat-icon {

    width: 44px;

    height: 44px;

    color: var(--primary-orange);

    margin-bottom: 20px;

}



.journey-stat-icon svg {

    width: 100%;

    height: 100%;

    transition: transform var(--transition-speed) cubic-bezier(0.175, 0.885, 0.32, 1.275);

}



.journey-stat-icon img {

    width: 40px;

}



.journey-stat-card:hover .journey-stat-icon svg {

    transform: scale(1.15) rotate(-3deg);

}



.journey-stat-number {

    font-family: var(--font-sans);

    font-size: 36px;

    font-weight: 700;

    color: var(--primary-orange);

    margin-bottom: 10px;

    line-height: 1.1;

}



.journey-stat-label {

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.45;

}



/* --- Responsive Layout for Journey Stats --- */

@media (max-width: 1200px) {

    .journey-stat-card {

        padding-left: 20px;

    }



    .journey-stat-number {

        font-size: 32px;

    }

}



@media (max-width: 992px) {

    .journey-section {

        padding: 60px 0;

    }



    .journey-stats-grid {

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

        row-gap: 40px;

    }



    .journey-stat-card {

        border-left: 1.5px solid var(--color-border);

    }



    .journey-stat-card:hover {

        transform: translateY(-4px) translateX(0);

    }

}



@media (max-width: 768px) {

    .journey-stats-grid {

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

        row-gap: 32px;

    }



    .journey-title {

        font-size: 22px;

    }

}



@media (max-width: 480px) {

    .journey-stats-grid {

        grid-template-columns: 1fr;

        row-gap: 28px;

    }



    .journey-stat-card {

        padding-left: 18px;

    }



    .journey-title {

        font-size: 20px;

    }



    .journey-desc {

        font-size: 13px;

        line-height: 1.6;

    }

}



/* --- Our Core Values Section Styles --- */

.values-section {

    position: relative;

    background-color: var(--color-cream);

    width: 100%;

    padding: 85px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.values-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    flex-direction: column;

}



.values-header {

    text-align: center;

    margin-bottom: 50px;

}



.values-title {

    font-family: var(--font-sans);

    font-size: 26px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

}



.values-title-line {

    width: 32px;

    height: 2px;

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

}



.values-grid {

    display: grid;

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

    width: 100%;

}



.value-card {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    padding: 10px 24px;

    transition: transform var(--transition-speed) ease;

}



.value-card:not(:first-child) {

    border-left: 1px solid var(--color-border);

}



.value-card:hover {

    transform: translateY(-8px);

}



.value-icon {

    width: 46px;

    height: 46px;

    color: var(--primary-orange);

    margin-bottom: 24px;

    display: flex;

    align-items: center;

    justify-content: center;

}



.value-icon img {

    width: 40px;

}



.value-icon svg {

    width: 100%;

    height: 100%;

    transition: transform var(--transition-speed) cubic-bezier(0.175, 0.885, 0.32, 1.275);

}



.value-card:hover .value-icon svg {

    transform: scale(1.15) rotate(3deg);

}



.value-card-title {

    font-family: var(--font-sans);

    font-size: 16px;

    font-weight: 700;

    color: var(--color-navy);

    margin-bottom: 14px;

}



.value-card-desc {

    font-family: var(--font-sans);

    font-size: 12.5px;

    line-height: 1.6;

    color: var(--color-body);

    font-weight: 500;

    max-width: 240px;

}



/* --- Responsive Layout for Core Values --- */

@media (max-width: 1200px) {

    .value-card {

        padding: 10px 16px;

    }



    .value-card-title {

        font-size: 15px;

    }



    .value-card-desc {

        font-size: 12px;

    }

}



@media (max-width: 992px) {

    .values-section {

        padding: 60px 0;

    }



    .values-grid {

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

        row-gap: 40px;

    }



    .value-card {

        border-left: none !important;

        border-bottom: 1px solid var(--color-border);

        padding-bottom: 24px;

    }



    /* Remove borders on the bottom row of cards depending on 3-col layout wrap */

    .values-grid .value-card:nth-last-child(-n+2) {

        border-bottom: none;

        padding-bottom: 0;

    }

}



@media (max-width: 768px) {

    .values-grid {

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

        row-gap: 36px;

    }



    .value-card {

        border-bottom: 1px solid var(--color-border) !important;

        padding-bottom: 24px !important;

    }



    .values-grid .value-card:last-child {

        border-bottom: none !important;

        padding-bottom: 0 !important;

    }



    .values-title {

        font-size: 22px;

    }

}



@media (max-width: 480px) {

    .values-grid {

        grid-template-columns: 1fr;

        row-gap: 32px;

    }



    .value-card {

        padding: 10px 12px !important;

    }



    .values-title {

        font-size: 20px;

    }

}



/* --- Engineering & Manufacturing Section Styles --- */

.engineering-section {

    position: relative;

    background-color: #ffffff;

    width: 100%;

    padding: 90px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.engineering-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



.engineering-grid {

    display: grid;

    grid-template-columns: 35% 65%;

    gap: 50px;

    align-items: center;

    width: 100%;

}



.engineering-content {

    display: flex;

    flex-direction: column;

}



.engineering-title {

    font-family: var(--font-sans);

    font-size: 34px;

    font-weight: 800;

    color: var(--color-navy);

    line-height: 1.25;

    letter-spacing: 0.5px;

    margin-bottom: 20px;

}



.engineering-divider {

    width: 44px;

    height: 3.5px;

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

    border-radius: 2px;

    margin-bottom: 28px;

}



.engineering-text {

    font-family: var(--font-sans);

    font-size: 14px;

    line-height: 1.7;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 20px;

}



.engineering-text:last-child {

    margin-bottom: 0;

}



.engineering-cards-row {

    display: grid;

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

    gap: 20px;

}



.engineering-card {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    transition: transform var(--transition-speed) ease;

}



.engineering-card:hover {

    transform: translateY(-6px);

}



.engineering-image-wrapper {

    width: 100%;

    aspect-ratio: 4 / 3;

    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);

    margin-bottom: 20px;

    transition: box-shadow var(--transition-speed) ease;

}



.engineering-card:hover .engineering-image-wrapper {

    box-shadow: 0 12px 30px rgba(243, 112, 2, 0.15);

}



.engineering-image {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform var(--transition-speed) ease;

}



.engineering-card:hover .engineering-image {

    transform: scale(1.05);

}



.engineering-card-label {

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.45;

}



/* --- Responsive Layout for Engineering Section --- */

@media (max-width: 1200px) {

    .engineering-grid {

        gap: 36px;

    }



    .engineering-title {

        font-size: 28px;

    }



    .engineering-card-label {

        font-size: 12.5px;

    }

}



@media (max-width: 1024px) {

    .engineering-section {

        padding: 60px 0;

    }



    .engineering-grid {

        grid-template-columns: 1fr;

        gap: 40px;

    }



    .engineering-content {

        text-align: center;

        align-items: center;

    }



    .engineering-text {

        max-width: 720px;

    }

}



@media (max-width: 768px) {

    .engineering-cards-row {

        grid-template-columns: 1fr;

        gap: 32px;

    }



    .engineering-image-wrapper {

        aspect-ratio: 16 / 9;

        max-width: 480px;

        margin-left: auto;

        margin-right: auto;

    }

}



@media (max-width: 480px) {

    .engineering-title {

        font-size: 24px;

    }



    .engineering-text {

        font-size: 13px;

        line-height: 1.6;

    }

}



/* --- Our Team Section Styles --- */

.team-section {

    position: relative;

    background-color: var(--color-cream);

    width: 100%;

    padding: 90px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.team-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



.team-grid {

    display: grid;

    grid-template-columns: 50% 50%;

    gap: 60px;

    align-items: center;

    width: 100%;

}



.team-image-column {

    width: 100%;

}



.team-image-wrapper {

    width: 100%;

    aspect-ratio: 16 / 9;

    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);

    transition: transform var(--transition-speed) ease, box-shadow var(--transition-speed) ease;

}



.team-image-wrapper:hover {

    transform: scale(1.02);

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);

}



.team-image {

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.team-content-column {

    display: flex;

    flex-direction: column;

    justify-content: center;

}



.team-title {

    font-family: var(--font-sans);

    font-size: 34px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

    margin-bottom: 24px;

    display: flex;

    align-items: center;

    gap: 16px;

}



.team-title-line {

    width: 32px;

    height: 2px;

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

}



.team-text {

    font-family: var(--font-sans);

    font-size: 14.5px;

    line-height: 1.7;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 20px;

}



.team-text:last-child {

    margin-bottom: 0;

}



/* --- Responsive Layout for Our Team Section --- */

@media (max-width: 1200px) {

    .team-grid {

        gap: 40px;

    }



    .team-title {

        font-size: 28px;

    }



    .team-text {

        font-size: 14px;

    }

}



@media (max-width: 1024px) {

    .team-section {

        padding: 60px 0;

    }



    .team-grid {

        grid-template-columns: 1fr;

        gap: 40px;

    }



    .team-content-column {

        text-align: left;

        align-items: flex-start;

    }



    .team-title {

        justify-content: flex-start;

    }



    .team-image-wrapper {

        max-width: 720px;

        margin-left: auto;

        margin-right: auto;

    }

}



@media (max-width: 576px) {

    .team-title {

        font-size: 24px;

        margin-bottom: 16px;

    }



    .team-text {

        font-size: 13.5px;

        line-height: 1.6;

    }

}



/* --- CTA Section Styles --- */

.cta-section {

    position: relative;

    background-color: #ffffff;

    width: 100%;

    padding: 70px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.cta-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



.cta-banner {

    width: 100%;

    border-radius: 16px;

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    padding: 70px 40px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);

    display: flex;

    justify-content: center;

    align-items: center;

    text-align: center;

    position: relative;

    overflow: hidden;

}



.cta-content {

    max-width: 760px;

    display: flex;

    flex-direction: column;

    align-items: center;

    z-index: 2;

}



.cta-heading {

    font-family: var(--font-sans);

    font-size: 32px;

    font-weight: 700;

    color: var(--color-white);

    line-height: 1.35;

    margin-bottom: 12px;

    letter-spacing: -0.2px;

}



.cta-description {

    font-family: var(--font-sans);

    font-size: 15px;

    font-weight: 400;

    color: rgba(255, 255, 255, 0.9);

    line-height: 1.6;

    margin-bottom: 28px;

}



.cta-btn {

    display: inline-flex;

    align-items: center;

    gap: 10px;

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

    color: var(--color-white);

    font-family: var(--font-sans);

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 0.5px;

    padding: 15px 36px;

    border-radius: 6px;

    text-decoration: none;

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

}



.cta-btn:hover {

    background-color: var(--orange-hover);

    transform: translateY(-2px);

    box-shadow: 0 6px 20px rgba(243, 112, 2, 0.35);

}



.cta-btn-arrow {

    width: 14px;

    height: 14px;

    transition: transform var(--transition-speed) ease;

}



.cta-btn:hover .cta-btn-arrow {

    transform: translate(2px, -2px);

}



/* --- Responsive Layout for CTA Section --- */

@media (max-width: 768px) {

    .cta-section {

        padding: 50px 0;

    }



    .cta-banner {

        padding: 55px 24px;

    }



    .cta-heading {

        font-size: 26px;

    }



    .cta-description {

        font-size: 14px;

        margin-bottom: 24px;

    }



    .cta-btn {

        padding: 13px 30px;

        font-size: 13.5px;

    }

}



@media (max-width: 480px) {

    .cta-heading {

        font-size: 22px;

    }



    .cta-description {

        font-size: 13px;

        line-height: 1.5;

    }



    .cta-btn {

        padding: 12px 26px;

        font-size: 13px;

    }

}



/* --- Scroll Animation Framework --- */

.reveal {

    opacity: 0;

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

    will-change: opacity, transform;

}



/* Animation directions/types */

.reveal.fade-in {

    transform: none;

}



.reveal.slide-up {

    transform: translateY(40px);

}



.reveal.slide-down {

    transform: translateY(-40px);

}



.reveal.slide-left {

    transform: translateX(-50px);

}



.reveal.slide-right {

    transform: translateX(50px);

}



.reveal.scale-up {

    transform: scale(0.92);

}



/* Reveal Active State */

.reveal.active {

    opacity: 1;

    transform: none;

}



/* Reveal Staggered Delay Utilities */

.delay-1 {

    transition-delay: 0.1s !important;

}



.delay-2 {

    transition-delay: 0.2s !important;

}



.delay-3 {

    transition-delay: 0.3s !important;

}



.delay-4 {

    transition-delay: 0.4s !important;

}



.delay-5 {

    transition-delay: 0.5s !important;

}



.delay-6 {

    transition-delay: 0.6s !important;

}



.delay-7 {

    transition-delay: 0.7s !important;

}



.delay-8 {

    transition-delay: 0.8s !important;

}



/* =========================================================================

   PAGE SECTION: BLOG ARCHIVE

   ========================================================================= */



/* --- test.css --- Blog Insights & News Page Layout --- */



/* Highlight active BLOG nav item with an orange line below it */

.nav-item.active-blog a::after {

    content: '';

    position: absolute;

    bottom: -8px;

    left: 0;

    width: 100%;

    height: 3px;

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

    transition: transform var(--transition-speed);

}



.nav-item.active-blog a {

    color: var(--primary-orange) !important;

}



/* --- Blog Main Page Layout --- */

.blog-page-section {

    background-color: var(--color-white);

    padding: 80px 0;

}



.blog-page-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 40px;

}



.blog-grid {

    display: grid;

    grid-template-columns: 2fr 1fr;

    gap: 48px;

    align-items: start;

}



/* --- Left Column: Blog Posts Grid --- */

.blog-posts-grid {

    display: grid;

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

    gap: 32px;

}



/* Blog Card Container */

.blog-card {

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: var(--border-radius-card, 16px);

    overflow: hidden;

    display: flex;

    flex-direction: column;

    box-shadow: 0 4px 20px rgba(14, 37, 68, 0.02);

    transition: transform var(--transition-speed) cubic-bezier(0.25, 1, 0.5, 1),

        box-shadow var(--transition-speed) cubic-bezier(0.25, 1, 0.5, 1);

    height: 100%;

}



.blog-card:hover {

    transform: translateY(-6px);

    box-shadow: 0 16px 40px rgba(14, 37, 68, 0.08);

}



/* Image & Date Badge Column */

.blog-card-media {

    position: relative;

    width: 100%;

    height: 240px;

    overflow: hidden;

}



.blog-card-image {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);

}



.blog-card:hover .blog-card-image {

    transform: scale(1.06);

}



/* Floating Date Badge */

.blog-card-date {

    position: absolute;

    top: 20px;

    left: 20px;

    background-color: var(--color-white);

    border-radius: 8px;

    width: 60px;

    padding: 10px 5px;

    text-align: center;

    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);

    z-index: 10;

    border-top: 4px solid var(--primary-orange);

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

}



.blog-card-day {

    font-size: 22px;

    font-weight: 800;

    color: var(--primary-orange);

    line-height: 1.1;

}



.blog-card-month {

    font-size: 10px;

    font-weight: 700;

    color: var(--text-muted);

    text-transform: uppercase;

    letter-spacing: 0.3px;

    margin-top: 3px;

}



/* Card Content Area */

.blog-card-content {

    padding: 28px 24px;

    display: flex;

    flex-direction: column;

    flex-grow: 1;

}



.blog-card-category {

    font-size: 11px;

    font-weight: 800;

    color: var(--primary-orange);

    text-transform: uppercase;

    letter-spacing: 0.8px;

    margin-bottom: 12px;

    display: inline-block;

}



.blog-card-title {

    font-size: 19px;

    font-weight: 700;

    line-height: 1.4;

    color: var(--color-navy);

    margin-bottom: 14px;

    text-decoration: none;

    transition: color var(--transition-speed);

}



.blog-card-title:hover {

    color: var(--primary-orange);

}



.blog-card-excerpt {

    font-size: 13.5px;

    color: var(--text-body);

    line-height: 1.6;

    margin-bottom: 24px;

    flex-grow: 1;

}



.blog-card-link {

    font-size: 12px;

    font-weight: 800;

    color: var(--primary-orange);

    text-decoration: none;

    display: inline-flex;

    align-items: center;

    gap: 6px;

    text-transform: uppercase;

    letter-spacing: 0.5px;

    transition: color var(--transition-speed);

    width: fit-content;

}



.blog-card-link svg {

    width: 12px;

    height: 12px;

    transition: transform var(--transition-speed) ease;

}



.blog-card-link:hover {

    color: var(--brand-orange-hover);

}



.blog-card-link:hover svg {

    transform: translate(3px, -3px);

}



/* --- Right Column: Sidebar --- */

.blog-sidebar {

    display: flex;

    flex-direction: column;

}



/* Sidebar Widget Panel Card */

.sidebar-widget {

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: 12px;

    padding: 30px;

    box-shadow: 0 4px 20px rgba(14, 37, 68, 0.01);

}



.widget-title {

    font-size: 15px;

    font-weight: 700;

    color: var(--color-navy);

    text-transform: uppercase;

    letter-spacing: 0.8px;

    margin-bottom: 24px;

    position: relative;

    padding-bottom: 8px;

}



.widget-title::after {

    content: '';

    position: absolute;

    bottom: 0;

    left: 0;

    width: 36px;

    height: 3px;

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

    border-radius: 1.5px;

}



/* Widget 1: Search Form */

.search-form {

    position: relative;

    width: 100%;

}



.search-input {

    width: 100%;

    padding: 14px 48px 14px 18px;

    border: 1px solid var(--color-border);

    border-radius: 8px;

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 500;

    color: var(--text-dark);

    background-color: #FAF8F5;

    outline: none;

    transition: border-color var(--transition-speed), background-color var(--transition-speed);

}



.search-input:focus {

    border-color: var(--primary-orange);

    background-color: var(--color-white);

}



.search-submit-btn {

    position: absolute;

    right: 16px;

    top: 50%;

    transform: translateY(-50%);

    background: none;

    border: none;

    color: var(--primary-orange);

    font-size: 15px;

    cursor: pointer;

    padding: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    transition: color var(--transition-speed);

}



.search-submit-btn:hover {

    color: var(--brand-orange-hover);

}



/* Widget 2: Categories */

.category-list {

    list-style: none;

    display: flex;

    flex-direction: column;

}



.category-item {

    border-bottom: 1px solid #F5F5F5;

}



.category-item:last-child {

    border-bottom: none;

}



.category-link {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 14px 0;

    text-decoration: none;

    color: var(--text-dark);

    font-size: 13.5px;

    font-weight: 600;

    transition: color var(--transition-speed), padding-left var(--transition-speed);

}



.category-link-left {

    display: flex;

    align-items: center;

    gap: 12px;

}



.category-link-left i {

    color: #888888;

    font-size: 14px;

    transition: color var(--transition-speed);

    width: 16px;

    text-align: center;

}



.category-count {

    background-color: #FAF8F5;

    color: var(--text-dark);

    border: 1px solid var(--color-border);

    border-radius: 6px;

    font-size: 11px;

    font-weight: 700;

    padding: 4px 8px;

    min-width: 28px;

    text-align: center;

    transition: background-color var(--transition-speed), color var(--transition-speed), border-color var(--transition-speed);

}



.category-link:hover {

    color: var(--primary-orange);

    padding-left: 4px;

}



.category-link:hover .category-link-left i {

    color: var(--primary-orange);

}



.category-link:hover .category-count {

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

    color: var(--color-white);

    border-color: var(--primary-orange);

}



/* Widget 3: Popular Tags */

.tags-cloud {

    display: flex;

    flex-wrap: wrap;

    gap: 8px;

}



.tag-btn {

    text-decoration: none;

    font-size: 12px;

    font-weight: 600;

    color: var(--text-body);

    background-color: #FAF8F5;

    border: 1px solid var(--color-border);

    padding: 8px 14px;

    border-radius: 6px;

    transition: all var(--transition-speed) ease;

}



.tag-btn:hover {

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

    color: var(--color-white);

    border-color: var(--primary-orange);

    transform: translateY(-1.5px);

}



/* Widget 4: Newsletter */

.widget-newsletter {

    background-image: linear-gradient(rgb(17 9 0 / 52%), rgb(18 9 0 / 63%)), url(images/newsletter-bg.webp);

    background-size: cover;

    background-position: center;

    color: var(--color-white);

    border: none;

    box-shadow: 0 12px 30px rgba(14, 37, 68, 0.15);

}



.newsletter-title {

    font-family: var(--font-main);

    font-size: 22px;

    font-weight: 700;

    line-height: 1.35;

    color: var(--color-white);

    margin-bottom: 12px;

}



.newsletter-desc {

    font-size: 13px;

    color: #fff;

    line-height: 1.55;

    margin-bottom: 24px;

}



.newsletter-group {

    display: flex;

    flex-direction: column;

    gap: 14px;

}



.newsletter-input {

    width: 100%;

    padding: 14px 18px;

    border: 1px solid rgba(255, 255, 255, 0.15);

    border-radius: 8px;

    background-color: #fff;

    color: #8C99A8;

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 500;

    outline: none;

    transition: border-color var(--transition-speed), background-color var(--transition-speed);

}



.newsletter-input::placeholder {

    color: #8C99A8;

}



/* .newsletter-input:focus {

    border-color: var(--primary-orange);

    background-color: rgba(255, 255, 255, 0.12);

} */



.newsletter-btn {

    width: 100%;

    padding: 14px;

    border-radius: 8px;

    border: none;

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

    color: var(--color-white);

    font-family: var(--font-sans);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 0.8px;

    cursor: pointer;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    transition: background-color var(--transition-speed) ease, transform var(--transition-speed) ease;

}



.newsletter-btn svg {

    width: 12px;

    height: 12px;

}



.newsletter-btn:hover {

    background-color: var(--brand-orange-hover);

}



.newsletter-footer-text {

    font-size: 11px;

    color: #fff;

    text-align: center;

    margin-top: 14px;

    line-height: 1.4;

}



/* --- Pagination Styles --- */

.pagination-container {

    margin-top: 48px;

    display: flex;

    justify-content: flex-start;

}



.pagination-list {

    list-style: none;

    display: flex;

    align-items: center;

    gap: 8px;

}



.page-btn {

    display: flex;

    justify-content: center;

    align-items: center;

    width: 42px;

    height: 42px;

    border: 1px solid var(--color-border);

    border-radius: 6px;

    background-color: var(--color-white);

    text-decoration: none;

    color: var(--text-dark);

    font-size: 13.5px;

    font-weight: 700;

    transition: all var(--transition-speed) ease;

}



.page-btn.active {

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

    border-color: var(--primary-orange);

    color: var(--color-white);

    pointer-events: none;

}



.page-btn.ellipsis {

    border: none;

    background-color: transparent;

    pointer-events: none;

    color: var(--text-muted);

}



.page-btn:hover:not(.active):not(.ellipsis) {

    background-color: #FAF8F5;

    border-color: var(--primary-orange);

    color: var(--primary-orange);

    transform: translateY(-1px);

}



/* --- Responsive Adaptations --- */



@media (max-width: 1200px) {

    .blog-page-container {

        padding: 0 30px;

    }



    .blog-grid {

        gap: 36px;

    }

}



@media (max-width: 992px) {

    .blog-grid {

        grid-template-columns: 1fr;

        gap: 48px;

    }



    .blog-sidebar {

        display: grid;

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

        gap: 32px;

    }



    .sidebar-widget {

        margin-bottom: 0;

    }



    .widget-newsletter {

        grid-column: span 2;

    }

}



@media (max-width: 768px) {

    .blog-page-section {

        padding: 60px 0;

    }



    .blog-posts-grid {

        grid-template-columns: 1fr;

        gap: 28px;

    }



    .blog-sidebar {

        grid-template-columns: 1fr;

        gap: 28px;

    }



    .widget-newsletter {

        grid-column: span 1;

    }



    .blog-card-media {

        height: 220px;

    }



    .pagination-container {

        justify-content: center;

        margin-top: 36px;

    }

}



/* =========================================================================

   PAGE SECTION: BLOG DETAIL

   ========================================================================= */



/* Category Badge tag */

.blog-category-badge {

    display: inline-block;

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

    color: var(--color-white);

    padding: 5px 12px;

    border-radius: 4px;

    font-size: 10.5px;

    font-weight: 700;

    letter-spacing: 0.5px;

    font-family: var(--font-sans);

    margin-bottom: 16px;

}



/* Meta list row */

.blog-meta-row {

    display: flex;

    align-items: center;

    gap: 16px;

    font-size: 12.5px;

    color: var(--color-body);

    font-weight: 600;

    margin-top: 16px;

}



.blog-meta-item {

    display: flex;

    align-items: center;

    gap: 8px;

}



.blog-meta-item i {

    color: var(--primary-orange);

    font-size: 14px;

}



.blog-meta-divider {

    color: #e2e8f0;

    font-weight: 400;

}



.blog-detail-section {

    position: relative;

    background-color: var(--color-white);

    padding: 80px 0;

    width: 100%;

}



.blog-detail-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.blog-detail-grid {

    display: grid;

    grid-template-columns: 66% 34%;

    gap: 50px;

    align-items: start;

}



/* Left Column: Post Contents */

.blog-content-col {

    display: flex;

    flex-direction: column;

}



.blog-main-image-wrapper {

    border-radius: 12px;

    overflow: hidden;

    margin-bottom: 32px;

    border: 1px solid var(--color-border);

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);

}



.blog-main-image {

    width: 100%;

    height: auto;

    display: block;

}



.blog-post-body {

    display: flex;

    flex-direction: column;

}



.blog-intro-paragraph {

    font-size: 14.5px;

    line-height: 1.75;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 36px;

}



.blog-outro-paragraph {

    font-size: 14.5px;

    line-height: 1.75;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 32px;

}



.blog-section-heading {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 22px;

    font-weight: 800;

    margin-bottom: 18px;

    margin-top: 10px;

}



/* Numbered Trend list Cards */

.trend-items-list {

    display: flex;

    flex-direction: column;

    gap: 20px;

    margin-bottom: 36px;

}



.trend-item {

    display: flex;

    align-items: center;

    gap: 24px;

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: 12px;

    padding: 24px 28px;

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

}



.trend-item:hover {

    transform: translateY(-2px);

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.03);

    border-color: rgba(243, 112, 2, 0.2);

}



.trend-number-badge {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 44px;

    height: 44px;

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

    color: var(--color-white);

    font-size: 15px;

    font-weight: 800;

    border-radius: 6px;

    flex-shrink: 0;

}



.trend-text-content {

    flex: 1;

}



.trend-text-content h3 {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 15.5px;

    font-weight: 700;

    margin-bottom: 8px;

}



.trend-text-content p {

    color: var(--color-body);

    font-size: 13px;

    line-height: 1.55;

    font-weight: 500;

}



.trend-icon-card {

    width: 58px;

    height: 58px;

    border-radius: 8px;

    border: 1px solid var(--color-border);

    display: flex;

    align-items: center;

    justify-content: center;

    background-color: var(--bg-warm-cream, #FAF8F5);

    flex-shrink: 0;

    color: var(--primary-orange);

    transition: background-color var(--transition-speed), border-color var(--transition-speed);

}



.trend-item:hover .trend-icon-card {

    background-color: var(--color-cream-darker);

    border-color: rgba(243, 112, 2, 0.15);

}



.trend-svg-icon {

    width: 24px;

    height: 24px;

}



/* Sharing row */

.blog-share-row {

    display: flex;

    align-items: center;

    gap: 16px;

    padding-top: 28px;

    border-top: 1px solid var(--color-border);

    margin-top: 36px;

}



.share-label {

    font-size: 13px;

    font-weight: 700;

    color: var(--color-navy);

}



.share-social-links {

    display: flex;

    gap: 10px;

}



.share-circle {

    width: 34px;

    height: 34px;

    border: 1px solid var(--color-border);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: var(--color-body);

    font-size: 12.5px;

    text-decoration: none;

    transition: all 0.25s ease;

}



.share-circle:hover {

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

    border-color: var(--primary-orange);

    color: var(--color-white);

    transform: translateY(-1px);

}



/* ==========================================================================

   RIGHT COLUMN: SIDEBAR WIDGETS

   ========================================================================== */

.blog-detail-sidebar {

    display: flex;

    flex-direction: column;

}



.sidebar-widget {

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: 12px;

    padding: 28px;

    margin-bottom: 30px;

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.01);

}



.widget-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 14.5px;

    font-weight: 800;

    letter-spacing: 0.5px;

    margin-bottom: 20px;

    padding-bottom: 10px;

    border-bottom: 1px solid var(--color-border);

    position: relative;

}



.widget-title::after {

    content: '';

    position: absolute;

    bottom: -1px;

    left: 0;

    width: 40px;

    height: 1.5px;

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

}



/* Search widget rules */

.search-form {

    position: relative;

    width: 100%;

}



.search-input {

    width: 100%;

    padding: 12px 48px 12px 16px;

    border: 1.5px solid var(--color-border);

    border-radius: 6px;

    font-family: var(--font-sans);

    font-size: 13px;

    font-weight: 500;

    color: var(--color-dark);

    background-color: var(--color-white);

    outline: none;

    transition: border-color var(--transition-speed);

}



.search-input:focus {

    border-color: var(--primary-orange);

}



.search-submit-btn {

    position: absolute;

    right: 16px;

    top: 50%;

    transform: translateY(-50%);

    background: none;

    border: none;

    color: var(--primary-orange);

    font-size: 14px;

    cursor: pointer;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0;

}



/* Categories widget rules */

.category-list {

    list-style: none;

    display: flex;

    flex-direction: column;

    gap: 14px;

    padding: 0;

    margin: 0;

}



.category-item {

    width: 100%;

}



.category-link {

    display: flex;

    justify-content: space-between;

    align-items: center;

    text-decoration: none;

    color: var(--color-body);

    font-size: 13px;

    font-weight: 600;

    transition: color var(--transition-speed);

}



.category-link-left {

    display: flex;

    align-items: center;

    gap: 10px;

}



.category-link-left i {

    color: var(--primary-orange);

    font-size: 13px;

    width: 16px;

    text-align: center;

}



.category-count {

    background-color: var(--color-cream);

    color: var(--color-navy);

    font-size: 11px;

    font-weight: 700;

    padding: 4px 8px;

    border-radius: 4px;

    transition: background-color var(--transition-speed), color var(--transition-speed);

}



.category-link:hover {

    color: var(--primary-orange);

}



.category-link:hover .category-count {

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

    color: var(--color-white);

}



/* Recent posts widget rules */

.recent-posts-list {

    display: flex;

    flex-direction: column;

    gap: 20px;

}



.recent-post-item {

    display: flex;

    gap: 14px;

    align-items: center;

}



.recent-post-thumb {

    width: 72px;

    height: 60px;

    border-radius: 6px;

    overflow: hidden;

    flex-shrink: 0;

    border: 1px solid var(--color-border);

    display: block;

}



.recent-post-thumb img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform var(--transition-speed);

}



.recent-post-thumb:hover img {

    transform: scale(1.05);

}



.recent-post-info {

    display: flex;

    flex-direction: column;

    gap: 6px;

}



.recent-post-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 12px;

    font-weight: 700;

    line-height: 1.4;

    text-decoration: none;

    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    transition: color var(--transition-speed);

}



.recent-post-title:hover {

    color: var(--primary-orange);

}



.recent-post-date {

    font-size: 11px;

    color: #a0aec0;

    font-weight: 500;

}



/* Newsletter Widget rules */

.widget-newsletter-card {

    position: relative;

    background-image: linear-gradient(rgba(14, 37, 68, 0.9), rgba(14, 37, 68, 0.9)), url('images/newsletter-bg.webp');

    background-size: cover;

    background-position: center;

    border-radius: 12px;

    overflow: hidden;

    padding: 40px 30px;

    text-align: center;

    color: var(--color-white);

    border: none;

    box-shadow: 0 8px 24px rgba(14, 37, 68, 0.15);

    margin-bottom: 30px;

}



.newsletter-card-icon-wrapper {

    width: 48px;

    height: 48px;

    border-radius: 50%;

    background-color: rgba(255, 255, 255, 0.1);

    color: var(--primary-orange);

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 18px;

    margin: 0 auto 20px auto;

}



.newsletter-card-title {

    font-family: var(--font-sans);

    font-size: 18px;

    font-weight: 800;

    line-height: 1.35;

    margin-bottom: 12px;

}



.newsletter-card-desc {

    font-size: 12.5px;

    line-height: 1.5;

    color: #cbd5e0;

    font-weight: 500;

    margin-bottom: 24px;

}



.newsletter-card-form {

    display: flex;

    flex-direction: column;

    gap: 12px;

}



.newsletter-card-input {

    width: 100%;

    padding: 13px 16px;

    border: none;

    border-radius: 6px;

    font-family: var(--font-sans);

    font-size: 12px;

    font-weight: 500;

    color: var(--color-dark);

    background-color: var(--color-white);

    outline: none;

}



.newsletter-card-btn {

    width: 100%;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

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

    color: var(--color-white);

    border: none;

    padding: 13px 18px;

    border-radius: 6px;

    font-family: var(--font-sans);

    font-size: 11px;

    font-weight: 700;

    cursor: pointer;

    transition: background-color var(--transition-speed), transform var(--transition-speed);

}



.newsletter-card-btn:hover {

    background-color: var(--orange-hover);

    transform: translateY(-1px);

}



.newsletter-card-btn-arrow {

    width: 12px;

    height: 12px;

}



.newsletter-card-footnote {

    font-size: 10.5px;

    color: #a0aec0;

    font-weight: 500;

    margin-top: 16px;

}



/* ==========================================================================

   5-COLUMN FOOTER SYSTEM

   ========================================================================== */

.site-footer .footer-container {

    display: grid;

    grid-template-columns: 1.25fr 0.7fr 0.8fr 1.05fr;

    gap: 30px;

    align-items: start;

    width: 100%;

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.download-brochure-col {

    position: relative;

    height: 100%;

}



.download-brochure-col .download-desc {

    color: var(--text-muted);

    font-size: 12.5px;

    line-height: 1.6;

    font-weight: 500;

    margin-bottom: 20px;

}



.btn-footer-download {

    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    background-color: var(--color-white);

    color: var(--primary-orange);

    border: 1px solid var(--primary-orange);

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    padding: 12px 18px;

    border-radius: 6px;

    transition: all 0.25s ease;

    letter-spacing: 0.5px;

    width: 100%;

    max-width: 220px;

}



.btn-footer-download:hover {

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

    color: var(--color-white);

    box-shadow: 0 4px 12px rgba(243, 112, 2, 0.12);

}



.download-arrow-icon {

    width: 14px;

    height: 14px;

    stroke-width: 2.5;

}



/* Footer bottom copyright styling */

.footer-bottom {

    border-top: 1px solid #EAEAEA;

    padding: 24px 0;

    background-color: var(--bg-cream);

    width: 100%;

    margin-top: 50px;

}



.footer-bottom-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

    text-align: center;

}



.footer-bottom-container p {

    color: var(--text-muted);

    font-size: 12px;

    font-weight: 600;

    margin: 0;

}



/* ==========================================================================

   RESPONSIVENESS AND COLLAPSIBLE ADAPTABILITY

   ========================================================================== */

@media (max-width: 1200px) {

    .blog-detail-grid {

        gap: 30px;

    }



    .site-footer .footer-container {

        grid-template-columns: 1.3fr 0.75fr 0.85fr 1.1fr 1.2fr;

        gap: 20px;

        padding: 0 30px;

    }

}



@media (max-width: 992px) {

    .blog-hero-section {

        min-height: auto;

    }



    .blog-hero-container {

        padding: 45px 24px;

    }



    .blog-hero-title {

        font-size: 32px;

    }



    .blog-detail-grid {

        grid-template-columns: 1fr;

        gap: 50px;

    }



    /* Footer layout wrapping to grid stack */

    .site-footer .footer-container {

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

        row-gap: 40px;

    }



    .download-brochure-col .premium-divider {

        display: none !important;

    }



    .download-brochure-col {

        border-bottom: 1px solid var(--divider-color);

        padding-bottom: 32px;

    }

}



@media (max-width: 640px) {



    .blog-detail-container,

    .footer-bottom-container {

        padding: 0 24px;

    }



    .blog-hero-title {

        font-size: 26px;

    }



    .blog-hero-lead {

        font-size: 13.5px;

    }



    .trend-item {

        flex-direction: column;

        align-items: flex-start;

        gap: 16px;

        padding: 20px;

    }



    .trend-icon-card {

        align-self: flex-end;

    }



    /* Single Column Flow on Mobile Footer */

    .site-footer .footer-container {

        grid-template-columns: 1fr;

        row-gap: 30px;

        padding: 0 24px;

    }



    .footer-column {

        border-bottom: 1px solid var(--divider-color) !important;

        padding-bottom: 24px;

    }



    .site-footer .footer-container .footer-column:last-child {

        border-bottom: none !important;

        padding-bottom: 0;

    }

}



/* --- Scroll Animation Framework --- */

.reveal {

    opacity: 0;

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

    will-change: opacity, transform;

}



/* Animation directions/types */

.reveal.fade-in {

    transform: none;

}



.reveal.slide-up {

    transform: translateY(40px);

}



.reveal.slide-down {

    transform: translateY(-40px);

}



.reveal.slide-left {

    transform: translateX(-50px);

}



.reveal.slide-right {

    transform: translateX(50px);

}



.reveal.scale-up {

    transform: scale(0.92);

}



/* Reveal Active State */

.reveal.active {

    opacity: 1;

    transform: none;

}



/* Reveal Staggered Delay Utilities */

.delay-1 {

    transition-delay: 0.1s !important;

}



.delay-2 {

    transition-delay: 0.2s !important;

}



.delay-3 {

    transition-delay: 0.3s !important;

}



.delay-4 {

    transition-delay: 0.4s !important;

}



.delay-5 {

    transition-delay: 0.5s !important;

}



.delay-6 {

    transition-delay: 0.6s !important;

}



.delay-7 {

    transition-delay: 0.7s !important;

}



.delay-8 {

    transition-delay: 0.8s !important;

}



/* =========================================================================

   PAGE SECTION: PRODUCT: AUTOMATED BREAD LINE

   ========================================================================= */



/* ==========================================================================

   PRODUCT DETAIL PAGE CUSTOM STYLES: AUTOMATED BREAD LINE

   ========================================================================== */







/* ==========================================================================

   PRODUCT OVERVIEW

   ========================================================================== */

.product-overview-section {

    padding: 80px 0;

    background-color: var(--color-white);

    width: 100%;

}



.product-overview-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.product-overview-grid {

    display: grid;

    grid-template-columns: 50% 50%;

    gap: 50px;

    align-items: start;

}



/* Gallery Slider Layout */

.product-gallery-col {

    display: flex;

    flex-direction: column;

}



.product-slider-wrapper {

    position: relative;

    width: 100%;

    height: 420px;

    border-radius: 12px;

    border: 1.5px solid var(--color-border);

    overflow: hidden;

    background: var(--color-white);

    margin-bottom: 20px;

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);

}



.product-main-slider {

    position: relative;

    width: 100%;

    height: 100%;

}



.product-slide {

    position: absolute;

    width: 100%;

    height: 100%;

    top: 0;

    left: 0;

    opacity: 0;

    visibility: hidden;

    transition: opacity 0.4s ease, visibility 0.4s ease;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 30px;

}



.product-slide.active {

    opacity: 1;

    visibility: visible;

    z-index: 2;

}



.product-slide img {

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

    display: block;

}



/* Slider Controls */

.slider-nav-btn {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    width: 42px;

    height: 42px;

    border-radius: 50%;

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

    color: var(--color-white);

    border: none;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: background-color var(--transition-speed), transform var(--transition-speed);

    z-index: 10;

    font-size: 15px;

}



.slider-nav-btn:hover {

    background-color: var(--orange-hover);

    transform: translateY(-50%) scale(1.05);

}



.prev-btn {

    left: 15px;

}



.next-btn {

    right: 15px;

}



/* Preview Thumbnails list */

.product-thumbnails-row {

    display: flex;

    gap: 15px;

    width: 100%;

}



.thumb-item {

    flex: 1;

    height: 80px;

    border-radius: 8px;

    border: 1.5px solid var(--color-border);

    padding: 10px;

    overflow: hidden;

    cursor: pointer;

    background: var(--color-white);

    transition: border-color var(--transition-speed), transform var(--transition-speed);

    display: flex;

    align-items: center;

    justify-content: center;

}



.thumb-item img {

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

    display: block;

    transition: transform var(--transition-speed);

}



.thumb-item.active,

.thumb-item:hover {

    border-color: var(--primary-orange);

    transform: translateY(-2px);

}



/* Right column info card details */

.product-info-col {

    display: flex;

    flex-direction: column;

}



.product-small-tag {

    color: var(--primary-orange);

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.2px;

    display: block;

    margin-bottom: 12px;

}



.product-main-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 32px;

    font-weight: 800;

    line-height: 1.25;

    margin-bottom: 24px;

}



.product-description-text p {

    font-size: 14.5px;

    line-height: 1.7;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 20px;

}



.product-description-text p:last-child {

    margin-bottom: 0;

}



/* Traits indicators metric highlights */

.product-metric-highlights {

    display: flex;

    justify-content: space-between;

    border-top: 1.5px solid var(--color-border);

    padding-top: 30px;

    margin-top: 35px;

    gap: 10px;

}



.metric-highlight-item {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    width: 18%;

    cursor: pointer;

}



.metric-icon-circle {

    width: 50px;

    height: 50px;

    border-radius: 50%;

    border: 1px solid var(--color-border);

    display: flex;

    align-items: center;

    justify-content: center;

    background-color: var(--bg-warm-cream, #FAF8F5);

    color: var(--primary-orange);

    font-size: 17px;

    margin-bottom: 10px;

    transition: background-color var(--transition-speed), border-color var(--transition-speed), transform var(--transition-speed);

}



.metric-highlight-item:hover .metric-icon-circle {

    background-color: var(--color-cream-darker);

    border-color: rgba(243, 112, 2, 0.15);

    transform: scale(1.05);

}



.metric-label {

    font-size: 10.5px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.3;

}



/* ==========================================================================

   FEATURES, BENEFITS & APPLICATIONS (TRIPLE CARD ROW)

   ========================================================================== */

.details-triple-section {

    background-color: var(--color-cream, #FCF6F0);

    padding: 80px 0;

    width: 100%;

}



.details-triple-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.details-triple-grid {

    display: grid;

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

    gap: 30px;

}



.details-column-card {

    background-color: var(--color-white);

    border-radius: 12px;

    border: 1.5px solid var(--color-border);

    padding: 40px 30px;

    position: relative;

    overflow: hidden;

    display: flex;

    flex-direction: column;

    /* min-height: 485px; */

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.01);

}



.column-card-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 16px;

    font-weight: 800;

    margin-bottom: 24px;

    letter-spacing: 0.5px;

}



/* Checkmarks lists styling */

.checkmark-list {

    list-style: none;

    display: flex;

    flex-direction: column;

    gap: 14px;

    padding: 0;

    margin: 0;

    z-index: 2;

}



.checkmark-list li {

    position: relative;

    padding-left: 24px;

    font-size: 12.5px;

    line-height: 1.55;

    color: var(--color-body);

    font-weight: 600;

}



.checkmark-list li::before {

    content: "\f00c";

    font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", sans-serif;

    font-weight: 900;

    position: absolute;

    left: 0;

    top: 2px;

    color: var(--primary-orange);

    font-size: 12px;

}



/* Subtle graphic decoration overlay in card background */

.column-card-bg-icon {

    position: absolute;

    bottom: -20px;

    right: -20px;

    font-size: 120px;

    color: rgba(243, 112, 2, 0.03);

    pointer-events: none;

    z-index: 1;

}



/* Circular Applications Column */

.applications-subtitle {

    font-size: 13px;

    font-weight: 600;

    color: var(--color-body);

    margin-bottom: 24px;

}



.applications-circular-grid {

    display: grid;

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

    gap: 20px 14px;

    z-index: 2;

}



.app-grid-item {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

}



.app-image-circle {

    width: 68px;

    height: 68px;

    border-radius: 50%;

    overflow: hidden;

    border: 1.5px solid var(--color-border);

    background-color: var(--color-white);

    margin-bottom: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    transition: transform var(--transition-speed), border-color var(--transition-speed);

}



.app-image-circle img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

}



.app-grid-item:hover .app-image-circle {

    transform: translateY(-2px);

    border-color: var(--primary-orange);

}



.app-item-label {

    font-size: 10px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.35;

}



/* ==========================================================================

   MODULAR SYSTEM FLOWCHART

   ========================================================================== */

.modular-flowchart-section {

    padding: 80px 0;

    background-color: var(--color-white);

    width: 100%;

}



.modular-flowchart-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.flowchart-section-title {

    text-align: center;

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 24px;

    font-weight: 800;

    margin-bottom: 50px;

    letter-spacing: 0.5px;

}



.flowchart-map-wrapper {

    position: relative;

    width: 100%;

    margin-bottom: 40px;

}



/* Bubble flow row */

.flowchart-steps-row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 40px;

    gap: 4px;

    width: 100%;

}



.flowchart-step-item {

    background-color: var(--color-white);

    border: 1.5px solid var(--color-border);

    border-radius: 8px;

    padding: 12px 16px;

    text-align: center;

    flex: 1;

    min-height: 60px;

    display: flex;

    align-items: center;

    justify-content: center;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.01);

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

}



.flowchart-step-item:hover {

    border-color: var(--primary-orange);

    box-shadow: 0 4px 15px rgba(243, 112, 2, 0.08);

    transform: translateY(-1px);

}



.flowchart-step-label {

    font-size: 10.5px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.35;

}



.flowchart-arrow {

    color: var(--primary-orange);

    font-size: 14px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

}



/* Machine diagram line indicators */

.flowchart-machine-image-wrapper {

    position: relative;

    width: 100%;

    padding-top: 30px;

}



.flowchart-machine-image {

    width: 100%;

    height: auto;

    display: block;

    border-radius: 8px;

}



.indicator-line {

    position: absolute;

    width: 1px;

    border-left: 1.5px dashed var(--primary-orange);

    z-index: 2;

}



.indicator-line::after {

    content: '';

    position: absolute;

    bottom: 0;

    left: -4px;

    width: 9px;

    height: 9px;

    border-radius: 50%;

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

    border: 2px solid var(--color-white);

    box-shadow: 0 0 0 2px var(--primary-orange);

}



.line-1 {

    left: 8.5%;

    height: 135px;

    top: -10px;

}



.line-2 {

    left: 21%;

    height: 110px;

    top: -10px;

}



.line-3 {

    left: 33.5%;

    height: 95px;

    top: -10px;

}



.line-4 {

    left: 46%;

    height: 85px;

    top: -10px;

}



.line-5 {

    left: 58.5%;

    height: 90px;

    top: -10px;

}



.line-6 {

    left: 71%;

    height: 115px;

    top: -10px;

}



.line-7 {

    left: 83.5%;

    height: 125px;

    top: -10px;

}



.line-8 {

    left: 95.5%;

    height: 125px;

    top: -10px;

}



.flowchart-bottom-note {

    text-align: center;

    font-size: 13.5px;

    font-weight: 600;

    color: var(--color-body);

    margin-top: 36px;

}



/* ==========================================================================

   TECHNICAL SPECIFICATIONS & OVEN WARNING CARD

   ========================================================================== */

.specs-warning-section {

    padding: 80px 0;

    background-color: var(--bg-cream, #FAF8F5);

    width: 100%;

}



.specs-warning-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.specs-warning-grid {

    display: grid;

    grid-template-columns: 50% 50%;

    gap: 50px;

    align-items: stretch;

}



.specs-table-column {

    display: flex;

    flex-direction: column;

}



.specs-section-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 16px;

    font-weight: 800;

    margin-bottom: 24px;

    letter-spacing: 0.5px;

}



.specs-table {

    width: 100%;

    border-collapse: collapse;

}



.specs-table th {

    text-align: left;

    padding: 16px 20px;

    background-color: var(--color-white);

    color: var(--color-navy);

    font-size: 13px;

    font-weight: 700;

    border: 1px solid var(--color-border);

    width: 35%;

}



.specs-table td {

    padding: 16px 20px;

    background-color: var(--color-white);

    color: var(--color-body);

    font-size: 13px;

    font-weight: 600;

    border: 1px solid var(--color-border);

}



/* Warning image card logic */

.warning-card-column {

    display: flex;

}



.warning-image-card {

    position: relative;

    width: 100%;

    height: 100%;

    border-radius: 12px;

    overflow: hidden;

    border: 1px solid var(--color-border);

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.01);

    display: flex;

    flex-direction: column;

}



.warning-card-image {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

}



.warning-overlay-content {

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    background-color: rgb(243 112 2 / 56%);

    padding: 24px 30px;

    display: flex;

    align-items: center;

    gap: 20px;

    color: var(--color-white);

    z-index: 2;

}



.warning-icon-wrapper {

    width: 44px;

    height: 44px;

    border-radius: 50%;

    border: 1.5px solid rgba(255, 255, 255, 0.25);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #fff;

    font-size: 18px;

    flex-shrink: 0;

}



.warning-card-text {

    font-size: 12.5px;

    font-weight: 600;

    line-height: 1.55;

    color: #e2e8f0;

    margin: 0;

}





/* ==========================================================================

   RESPONSIVENESS AND COLLAPSIBLE ADAPTABILITY

   ========================================================================== */

@media (max-width: 1200px) {



    .product-overview-grid,

    .specs-warning-grid {

        gap: 30px;

    }



    .details-triple-grid {

        gap: 20px;

    }



    .site-footer .footer-container {

        grid-template-columns: 1.3fr 0.75fr 0.85fr 1.1fr 1.2fr;

        gap: 20px;

        padding: 0 30px;

    }

}



@media (max-width: 992px) {





    .product-overview-grid,

    .specs-warning-grid,

    .specialists-inquiry-grid {

        grid-template-columns: 1fr;

        gap: 40px;

    }



    .product-gallery-col {

        max-width: 650px;

        margin: 0 auto;

        width: 100%;

    }



    .details-triple-grid {

        grid-template-columns: 1fr;

        gap: 30px;

    }



    .details-column-card {

        min-height: auto;

    }



    /* Flowchart steps wrapping for smaller landscape views */

    .flowchart-steps-row {

        flex-wrap: wrap;

        justify-content: center;

        gap: 15px;

    }



    .flowchart-step-item {

        flex: none;

        width: 45%;

    }



    .flowchart-arrow {

        display: none !important;

    }



    .flowchart-machine-image-wrapper {

        display: none !important;

        /* Hide diagram indicators since bubbles stack */

    }



    /* Footer layout wrapping to grid stack */

    .site-footer .footer-container {

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

        row-gap: 40px;

    }



    .download-brochure-col .premium-divider {

        display: none !important;

    }

}



@media (max-width: 640px) {



    .product-overview-container,

    .details-triple-container,

    .modular-flowchart-container,

    .specs-warning-container,

    .specialists-inquiry-container {

        padding: 0 24px;

    }



    .product-main-title {

        font-size: 26px;

    }



    .product-slider-wrapper {

        height: 320px;

    }



    .thumb-item {

        height: 60px;

    }



    .product-metric-highlights {

        flex-wrap: wrap;

        gap: 15px 5px;

    }



    .metric-highlight-item {

        width: 30%;

    }



    .flowchart-step-item {

        width: 100%;

    }



    .specs-table th,

    .specs-table td {

        padding: 12px 14px;

        font-size: 12px;

    }



    .specs-table th {

        width: 40%;

    }



    .form-row {

        grid-template-columns: 1fr;

        gap: 16px;

    }



    .form-submit-row {

        flex-direction: column;

        align-items: stretch;

        gap: 20px;

    }



    .submit-proposal-btn {

        width: 100%;

    }



    .proposal-safety-note {

        justify-content: center;

    }



    /* Single Column Flow on Mobile Footer */

    .site-footer .footer-container {

        grid-template-columns: 1fr;

        row-gap: 30px;

        padding: 0 24px;

    }



    .footer-column {

        border-bottom: 1px solid var(--divider-color) !important;

        padding-bottom: 24px;

    }



    .site-footer .footer-container .footer-column:last-child {

        border-bottom: none !important;

        padding-bottom: 0;

    }

}



/* --- Scroll Animation Framework --- */

.reveal {

    opacity: 0;

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

    will-change: opacity, transform;

}



.reveal.fade-in {

    transform: none;

}



.reveal.slide-up {

    transform: translateY(40px);

}



.reveal.slide-down {

    transform: translateY(-40px);

}



.reveal.slide-left {

    transform: translateX(-50px);

}



.reveal.slide-right {

    transform: translateX(50px);

}



.reveal.scale-up {

    transform: scale(0.92);

}



.reveal.active {

    opacity: 1;

    transform: none;

}



.delay-1 {

    transition-delay: 0.1s !important;

}



.delay-2 {

    transition-delay: 0.2s !important;

}



.delay-3 {

    transition-delay: 0.3s !important;

}



.delay-4 {

    transition-delay: 0.4s !important;

}



.delay-5 {

    transition-delay: 0.5s !important;

}



.delay-6 {

    transition-delay: 0.6s !important;

}



.delay-7 {

    transition-delay: 0.7s !important;

}



.delay-8 {

    transition-delay: 0.8s !important;

}



/* =========================================================================

   PAGE SECTION: DOWNLOAD CENTER

   ========================================================================= */



/* --- test.css --- Combined and refactored stylesheet for the Download Center --- */



/* ==========================================================================

   2. BROCHURE DOWNLOAD CARD

   ========================================================================== */

.brochure-section {

    position: relative;

    background-color: var(--color-cream);

    width: 100%;

    padding: 80px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.brochure-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

}



.brochure-card {

    background-color: #ffffff;

    border-radius: 16px;

    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.05);

    display: grid;

    grid-template-columns: 46% 54%;

    overflow: hidden;

    width: 100%;

    padding: 70px 50px;

    align-items: center;

}



.brochure-visual-side {

    position: relative;

    width: 100%;

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 40px 0;

}



.deco-dots {

    position: absolute;

    top: 15px;

    left: 10%;

    z-index: 1;

    pointer-events: none;

}



.deco-dots img {

    width: 100px;

}



.brochure-circles {

    position: absolute;

    width: 320px;

    height: 320px;

    z-index: 1;

    pointer-events: none;

    transform: translate(-10px, -10px);

}



.brochure-circles svg {

    width: 100%;

    height: 100%;

}



.brochure-book-container {

    position: relative;

    width: 250px;

    height: 345px;

    z-index: 5;

    perspective: 1200px;

    transform-style: preserve-3d;

}



.brochure-book {

    position: relative;

    width: 100%;

    height: 100%;

    transform-style: preserve-3d;

    transform: rotateY(-10deg) rotate(-4deg);

    box-shadow: -15px 20px 35px rgba(0, 0, 0, 0.12), -2px 4px 10px rgba(0, 0, 0, 0.08);

    border-radius: 4px 12px 12px 4px;

    background-color: #ffffff;

    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.6s ease;

}



.brochure-book:hover {

    transform: rotateY(-18deg) rotateX(2deg) rotate(-2deg) translateY(-8px);

    box-shadow: -22px 28px 45px rgba(0, 0, 0, 0.18), -4px 6px 15px rgba(0, 0, 0, 0.1);

}



.book-spine-gradient {

    position: absolute;

    top: 0;

    left: 0;

    bottom: 0;

    width: 22px;

    background: linear-gradient(to right, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0.06) 20%, rgba(255, 255, 255, 0.15) 50%, rgba(0, 0, 0, 0.02) 80%, rgba(0, 0, 0, 0.0) 100%);

    border-radius: 4px 0 0 4px;

    z-index: 10;

}



.book-cover-img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    border-radius: 4px 12px 12px 4px;

}



.brochure-info-side {

    display: flex;

    flex-direction: column;

    padding-left: 40px;

}



.brochure-tagline {

    font-family: var(--font-sans);

    font-size: 12.5px;

    font-weight: 700;

    color: var(--primary-orange);

    letter-spacing: 1.5px;

    text-transform: uppercase;

    margin-bottom: 16px;

}



.brochure-title {

    font-family: var(--font-sans);

    font-size: 32px;

    font-weight: 700;

    color: var(--color-navy);

    line-height: 1.28;

    margin-bottom: 18px;

}



.brochure-desc {

    font-family: var(--font-sans);

    font-size: 14px;

    line-height: 1.65;

    color: var(--color-body);

    font-weight: 500;

    margin-bottom: 26px;

}



.brochure-checklist {

    list-style: none;

    padding: 0;

    margin: 0 0 32px 0;

    display: grid;

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

    gap: 16px 24px;

}



.brochure-checklist-item {

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 700;

    color: var(--color-navy);

    display: flex;

    align-items: center;

    gap: 12px;

}



.brochure-checklist-item img {

    width: 20px;

}



.brochure-actions {

    margin-bottom: 24px;

}



.brochure-download-btn {

    display: inline-flex;

    align-items: center;

    gap: 12px;

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

    color: var(--color-white);

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 700;

    letter-spacing: 0.5px;

    padding: 16px 36px;

    border-radius: 6px;

    text-decoration: none;

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

    box-shadow: 0 6px 20px rgba(243, 112, 2, 0.2);

}



.brochure-download-btn:hover {

    background-color: var(--orange-hover);

    transform: translateY(-2px);

    box-shadow: 0 8px 24px rgba(243, 112, 2, 0.35);

}



.download-icon {

    width: 15px;

    height: 15px;

    transition: transform var(--transition-speed) ease;

}



.brochure-download-btn:hover .download-icon {

    transform: translateY(2px);

}



.brochure-metadata {

    display: flex;

    align-items: center;

    gap: 12px;

    font-family: var(--font-sans);

    font-size: 13px;

    color: var(--color-body);

    font-weight: 600;

}



.meta-item {

    display: flex;

    align-items: center;

    gap: 8px;

}



.pdf-icon {

    width: 14px;

    height: 14px;

    color: var(--primary-orange);

}



.meta-separator {

    color: rgba(0, 0, 0, 0.15);

    font-weight: 400;

}



/* ==========================================================================

   3. WHAT'S INSIDE THE BROCHURE

   ========================================================================== */

.inside-section {

    position: relative;

    background-color: #ffffff;

    width: 100%;

    padding: 85px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.inside-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    flex-direction: column;

}



.inside-header {

    text-align: center;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

    margin-bottom: 50px;

}



.inside-title-line {

    width: 32px;

    height: 2px;

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

}



.inside-title {

    font-family: var(--font-sans);

    font-size: 26px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

}



.inside-grid {

    display: grid;

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

    gap: 20px;

    width: 100%;

}



.inside-card {

    background-color: #ffffff;

    border: 1.5px solid var(--color-border);

    border-radius: 12px;

    padding: 38px 20px;

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), border-color 0.4s ease, box-shadow 0.4s ease;

}



.inside-card:hover {

    transform: translateY(-8px);

    border-color: var(--primary-orange);

    box-shadow: 0 12px 30px rgba(243, 112, 2, 0.08);

}



.inside-icon-wrapper {

    width: 48px;

    height: 48px;

    color: var(--primary-orange);

    margin-bottom: 22px;

    display: flex;

    align-items: center;

    justify-content: center;

}



.inside-icon-wrapper img {

    width: 50px;

}



.inside-card-title {

    font-family: var(--font-sans);

    font-size: 15px;

    font-weight: 700;

    color: var(--color-navy);

    margin-bottom: 12px;

    line-height: 1.3;

}



.inside-card-desc {

    font-family: var(--font-sans);

    font-size: 12px;

    line-height: 1.6;

    color: var(--color-body);

    font-weight: 500;

}



/* ==========================================================================

   4. BROCHURE PREVIEW SLIDER

   ========================================================================== */

.preview-section {

    position: relative;

    background-color: var(--color-cream);

    width: 100%;

    padding: 85px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.preview-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    flex-direction: column;

    align-items: center;

}



.preview-header {

    text-align: center;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

    margin-bottom: 50px;

}



.preview-title-line {

    width: 32px;

    height: 2px;

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

}



.preview-title {

    font-family: var(--font-sans);

    font-size: 26px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

}



.preview-slider-container {

    position: relative;

    width: 100%;

    display: flex;

    align-items: center;

    gap: 24px;

    margin-bottom: 40px;

}



.slider-arrow {

    width: 48px;

    height: 48px;

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

    color: var(--color-white);

    border: none;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    box-shadow: 0 4px 15px rgba(243, 112, 2, 0.25);

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

    z-index: 10;

    flex-shrink: 0;

}



.slider-arrow:hover {

    background-color: var(--orange-hover);

    transform: scale(1.05);

    box-shadow: 0 6px 20px rgba(243, 112, 2, 0.4);

}



.slider-arrow svg {

    width: 20px;

    height: 20px;

}



.preview-slider-viewport {

    width: 100%;

    overflow-x: auto;

    scroll-behavior: smooth;

    -ms-overflow-style: none;

    scrollbar-width: none;

}



.preview-slider-viewport::-webkit-scrollbar {

    display: none;

}



.preview-slider-track {

    display: flex;

    gap: 24px;

    padding: 10px 0;

}



.preview-slide {

    display: flex;

    flex-direction: column;

    align-items: center;

    flex-shrink: 0;

    width: 250px;

    transition: transform var(--transition-speed) ease;

}



.slide-card {

    width: 100%;

    aspect-ratio: 1 / 1.35;

    background-color: #ffffff;

    border: 1px solid rgba(0, 0, 0, 0.08);

    border-radius: 8px;

    overflow: hidden;

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);

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

    margin-bottom: 16px;

    cursor: pointer;

}



.preview-slide:hover .slide-card {

    transform: translateY(-6px);

    box-shadow: 0 12px 30px rgba(243, 112, 2, 0.1);

    border-color: rgba(243, 112, 2, 0.25);

}



.slide-img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.slide-label {

    font-family: var(--font-sans);

    font-size: 13.5px;

    font-weight: 700;

    color: var(--color-navy);

    text-align: center;

}



.slider-dots {

    display: flex;

    justify-content: center;

    gap: 10px;

}



.slider-dots .dot {

    width: 10px;

    height: 10px;

    background-color: rgba(0, 0, 0, 0.15);

    border-radius: 50%;

    cursor: pointer;

    transition: background-color var(--transition-speed) ease, transform var(--transition-speed) ease;

}



.slider-dots .dot.active {

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

    transform: scale(1.15);

}



/* ==========================================================================

   5. LIGHTBOX OVERLAY MODAL

   ========================================================================== */

.lightbox-overlay {

    position: fixed;

    top: 0;

    left: 0;

    width: 100vw;

    height: 100vh;

    background-color: rgba(15, 23, 42, 0.95);

    z-index: 9999;

    display: flex;

    align-items: center;

    justify-content: center;

    opacity: 0;

    pointer-events: none;

    transition: opacity 0.3s ease;

}



.lightbox-overlay.active {

    opacity: 1;

    pointer-events: auto;

}



.lightbox-close {

    position: absolute;

    top: 30px;

    right: 40px;

    background: none;

    border: none;

    color: #ffffff;

    font-size: 54px;

    line-height: 1;

    cursor: pointer;

    transition: color var(--transition-speed) ease, transform var(--transition-speed) ease;

    z-index: 10010;

}



.lightbox-close:hover {

    color: var(--primary-orange);

    transform: scale(1.1);

}



.lightbox-arrow {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.15);

    color: #ffffff;

    width: 56px;

    height: 56px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, transform var(--transition-speed) ease;

    z-index: 10010;

}



.lightbox-arrow:hover {

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

    border-color: var(--primary-orange);

    transform: translateY(-50%) scale(1.08);

}



.lightbox-prev {

    left: 40px;

}



.lightbox-next {

    right: 40px;

}



.lightbox-arrow svg {

    width: 24px;

    height: 24px;

}



.lightbox-content {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    max-width: 80%;

    max-height: 80%;

    z-index: 10005;

}



.lightbox-img {

    max-width: 100%;

    max-height: 75vh;

    object-fit: contain;

    border-radius: 6px;

    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.4);

    transition: opacity 0.15s ease, transform 0.15s ease;

    background-color: #ffffff;

}



.lightbox-caption {

    font-family: var(--font-sans);

    color: #ffffff;

    font-size: 16px;

    font-weight: 700;

    margin-top: 24px;

    letter-spacing: 0.5px;

    text-transform: capitalize;

}



/* ==========================================================================

   6. BROCHURE TECHNICAL INFORMATION

   ========================================================================== */

.info-section {

    position: relative;

    background-color: #ffffff;

    width: 100%;

    padding: 85px 0;

    display: flex;

    justify-content: center;

    border-top: 1px solid var(--color-border);

}



.info-container {

    max-width: 1440px;

    width: 100%;

    margin: 0 auto;

    padding: 0 40px;

    display: flex;

    flex-direction: column;

}



.info-header {

    text-align: center;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

    margin-bottom: 50px;

}



.info-title-line {

    width: 32px;

    height: 2px;

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

}



.info-title {

    font-family: var(--font-sans);

    font-size: 26px;

    font-weight: 800;

    color: var(--color-navy);

    letter-spacing: 1.5px;

}



.info-card {

    background-color: #ffffff;

    border: 1px solid var(--color-border);

    border-radius: 12px;

    display: grid;

    grid-template-columns: 3.2fr 1fr;

    overflow: hidden;

    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.04);

}



.info-details-grid {

    display: grid;

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

    gap: 40px 30px;

    padding: 45px 50px;

}



.info-detail-item {

    display: flex;

    align-items: center;

    gap: 20px;

}



.info-icon-wrapper {

    width: 44px;

    height: 44px;

    color: var(--primary-orange);

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

}



.info-icon-wrapper img {

    width: 33px;

}



.info-svg {

    width: 38px;

    height: 38px;

}



.info-detail-text {

    display: flex;

    flex-direction: column;

}



.info-detail-label {

    font-family: var(--font-sans);

    font-size: 13px;

    font-weight: 700;

    color: var(--color-navy);

    margin-bottom: 4px;

}



.info-detail-value {

    font-family: var(--font-sans);

    font-size: 13.5px;

    color: var(--color-body);

    font-weight: 500;

}



.info-download-box {

    background-color: #FFF8F3;

    padding: 40px 30px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

    border-left: 1px solid var(--color-border);

    text-decoration: none;

    transition: background-color var(--transition-speed) ease;

}



.info-download-box:hover {

    background-color: #FFF1E6;

}



.info-download-box img {

    width: 40px;

}



.info-download-btn-text {

    font-family: var(--font-sans);

    font-size: 14px;

    font-weight: 800;

    color: var(--primary-orange);

    letter-spacing: 0.5px;

    margin-bottom: 8px;

}



.info-download-subtext {

    font-family: var(--font-sans);

    font-size: 11px;

    color: var(--color-body);

    font-weight: 500;

}



/* ==========================================================================

   7. ANIMATION KEYFRAMES & SCROLL EFFECTS

   ========================================================================== */

@keyframes breadcrumbFadeInDown {

    from {

        opacity: 0;

        transform: translateY(-15px);

    }



    to {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes breadcrumbFadeInLeft {

    from {

        opacity: 0;

        transform: translateX(-25px);

    }



    to {

        opacity: 1;

        transform: translateX(0);

    }

}



@keyframes breadcrumbFadeInUp {

    from {

        opacity: 0;

        transform: translateY(20px);

    }



    to {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes breadcrumbScaleXIn {

    to {

        transform: scaleX(1);

    }

}



@keyframes breadcrumbWheatSway {



    0%,

    100% {

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

    }



    50% {

        transform: translateY(-6px) rotate(1.5deg);

    }

}



/* Scroll-driven Entrance Animations */

.animate-fade-in {

    opacity: 0;

    transform: translateY(30px);

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

}



.animate-fade-in-left {

    opacity: 0;

    transform: translateX(-40px);

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

}



.animate-fade-in-right {

    opacity: 0;

    transform: translateX(40px);

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

}



/* Visibility triggers */

.animate-fade-in.visible {

    opacity: 1;

    transform: translateY(0);

}



.animate-fade-in-left.visible {

    opacity: 1;

    transform: translateX(0);

}



.animate-fade-in-right.visible {

    opacity: 1;

    transform: translateX(0);

}



/* Staggered Delay Classes */

.delay-100 {

    transition-delay: 100ms !important;

}



.delay-200 {

    transition-delay: 200ms !important;

}



.delay-300 {

    transition-delay: 300ms !important;

}



.delay-400 {

    transition-delay: 400ms !important;

}



.delay-500 {

    transition-delay: 500ms !important;

}



.delay-600 {

    transition-delay: 600ms !important;

}



/* Micro-animations and hover transitions */

.brochure-checklist-item .check-icon {

    transform: scale(0.6);

    opacity: 0;

    transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.5s ease;

    transition-delay: inherit;

}



.visible .brochure-checklist-item .check-icon {

    transform: scale(1);

    opacity: 1;

}



@keyframes downloadBounce {



    0%,

    100% {

        transform: translateY(0);

    }



    50% {

        transform: translateY(4px);

    }

}



.brochure-download-btn:hover .download-icon {

    animation: downloadBounce 0.6s infinite alternate ease-in-out;

}



.info-download-box:hover img {

    animation: downloadBounce 0.6s infinite alternate ease-in-out;

}





/* ==========================================================================

   8. RESPONSIVE MEDIA QUERIES (GROUPED)

   ========================================================================== */



/* --- Width: 1200px --- */

@media (max-width: 1200px) {





    .brochure-card {

        padding: 50px 36px;

        grid-template-columns: 42% 58%;

    }



    .brochure-info-side {

        padding-left: 24px;

    }



    .brochure-title {

        font-size: 28px;

    }



    .inside-grid {

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

        gap: 24px;

    }



    .preview-slide {

        width: 220px;

    }

}



/* --- Width: 992px --- */

@media (max-width: 992px) {





    .brochure-card {

        grid-template-columns: 1fr;

        padding: 50px 30px;

        gap: 40px;

    }



    .brochure-visual-side {

        padding: 20px 0;

    }



    .deco-dots {

        left: 20%;

    }



    .brochure-info-side {

        padding-left: 0;

        text-align: center;

        align-items: center;

    }



    .brochure-checklist {

        justify-content: center;

        max-width: 600px;

    }



    .brochure-checklist-item {

        text-align: left;

    }



    .preview-section {

        padding: 60px 0;

    }



    .preview-slide {

        width: 200px;

    }



    .info-card {

        grid-template-columns: 1fr;

    }



    .info-details-grid {

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

        padding: 40px 36px;

        gap: 30px;

    }



    .info-download-box {

        border-left: none;

        border-top: 1px solid var(--color-border);

        padding: 36px 30px;

    }

}



/* --- Width: 768px --- */

@media (max-width: 768px) {

    .brochure-checklist {

        grid-template-columns: 1fr;

        gap: 12px;

        max-width: 320px;

    }



    .inside-grid {

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

        gap: 20px;

    }



    .inside-title,

    .preview-title,

    .info-title {

        font-size: 22px;

    }



    .preview-slider-container {

        gap: 12px;

    }



    .slider-arrow {

        display: none;

    }



    .preview-slide {

        width: 180px;

    }



    .lightbox-close {

        top: 20px;

        right: 24px;

        font-size: 44px;

    }



    .lightbox-arrow {

        width: 44px;

        height: 44px;

    }



    .lightbox-prev {

        left: 16px;

    }



    .lightbox-next {

        right: 16px;

    }



    .lightbox-content {

        max-width: 90%;

    }



    .lightbox-caption {

        font-size: 14px;

        margin-top: 18px;

    }

}



/* --- Width: 576px --- */

@media (max-width: 576px) {





    .brochure-section {

        padding: 48px 0;

    }



    .brochure-card {

        padding: 40px 20px;

    }



    .brochure-title {

        font-size: 23px;

    }



    .brochure-desc {

        font-size: 13px;

        line-height: 1.55;

    }



    .deco-dots {

        display: none;

    }



    .brochure-circles {

        width: 280px;

        height: 280px;

    }



    .brochure-book-container {

        width: 200px;

        height: 276px;

    }



    .brochure-download-btn {

        padding: 14px 28px;

        font-size: 13px;

        width: 100%;

        justify-content: center;

    }



    .brochure-metadata {

        flex-direction: column;

        gap: 6px;

    }



    .meta-separator {

        display: none;

    }



    .info-section {

        padding: 60px 0;

    }



    .info-details-grid {

        grid-template-columns: 1fr;

        padding: 30px 24px;

        gap: 24px;

    }



    .info-download-box {

        padding: 30px 20px;

    }

}



/* --- Width: 480px --- */

@media (max-width: 480px) {

    .inside-grid {

        grid-template-columns: 1fr;

        gap: 18px;

    }



    .inside-card {

        padding: 30px 16px;

    }



    .inside-title,

    .preview-title,

    .info-title {

        font-size: 19px;

    }



    .preview-slide {

        width: 160px;

    }

}



/* =========================================================================

   PAGE SECTION: CONTACT US

   ========================================================================= */



/* ==========================================================================

   CONTACT PAGE CUSTOM STYLES

   ========================================================================== */



/* Main Section Layout */

.contact-main-section {

    position: relative;

    background-color: var(--color-white);

    padding: 80px 0;

    width: 100%;

}



.contact-main-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.contact-main-grid {

    display: grid;

    grid-template-columns: 48% 52%;

    gap: 60px;

    align-items: start;

}



/* Left Column: Info Text & Cards */

.contact-info-col {

    display: flex;

    flex-direction: column;

}



.contact-info-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 28px;

    font-weight: 600;

    line-height: 1.25;

    margin-bottom: 20px;

    letter-spacing: -0.5px;

}



.contact-info-desc {

    color: var(--color-body);

    font-size: 14px;

    line-height: 1.65;

    font-weight: 500;

    margin-bottom: 36px;

}



/* 2x2 Grid of Cards */

.contact-cards-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 24px;

}



.contact-card {

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: var(--border-radius-card, 16px);

    padding: 28px;

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

    display: flex;

    flex-direction: column;

    align-items: flex-start;

}



.contact-card:hover {

    transform: translateY(-2px);

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);

    border-color: rgba(243, 112, 2, 0.25);

}



.contact-card-icon {

    width: 42px;

    height: 42px;

    border-radius: 50%;

    background-color: var(--color-cream-darker);

    color: var(--primary-orange);

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 16px;

    margin-bottom: 20px;

    transition: background-color var(--transition-speed), color var(--transition-speed);

}



.contact-card:hover .contact-card-icon {

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

    color: var(--color-white);

}



.contact-card-content h4 {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 15px;

    font-weight: 700;

    margin-bottom: 10px;

}



.contact-card-content p {

    color: var(--color-body);

    font-size: 13px;

    line-height: 1.6;

    font-weight: 500;

}



.contact-card-content p a {

    color: inherit;

    text-decoration: none;

    transition: color var(--transition-speed);

}



.contact-card-content p a:hover {

    color: var(--primary-orange);

}



/* Right Column: Contact Form Styling */

.contact-form-wrapper {

    background-color: var(--color-white);

    border: 1px solid var(--color-border);

    border-radius: var(--border-radius-card, 16px);

    padding: 44px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);

}



.form-section-title {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 20px;

    font-weight: 700;

    margin-bottom: 0px;

    padding-bottom: 12px;

    display: inline-block;

}



.contact-message-form .form-row {

    display: flex;

    gap: 20px;

}



.form-field-group {

    flex: 1;

    margin-bottom: 20px;

    position: relative;

}



.contact-message-form input[type="text"],

.contact-message-form input[type="email"],

.contact-message-form input[type="tel"],

.contact-message-form select,

.contact-message-form textarea {

    width: 100%;

    padding: 15px 20px;

    border: 1.5px solid var(--color-border);

    border-radius: 8px;

    font-family: var(--font-sans);

    font-size: 13px;

    font-weight: 500;

    color: var(--color-dark);

    background-color: var(--color-white);

    transition: border-color 0.25s, box-shadow 0.25s;

    outline: none;

}



.contact-message-form input:hover,

.contact-message-form select:hover,

.contact-message-form textarea:hover {

    border-color: rgba(243, 112, 2, 0.4);

}



.contact-message-form input:focus,

.contact-message-form select:focus,

.contact-message-form textarea:focus {

    border-color: var(--primary-orange);

    box-shadow: 0 0 0 3px rgba(243, 112, 2, 0.12);

}



/* Dropdown styling */

.custom-select-wrapper {

    position: relative;

    width: 100%;

}



.contact-message-form select {

    appearance: none;

    -webkit-appearance: none;

    -moz-appearance: none;

    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E2544' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");

    background-repeat: no-repeat;

    background-position: right 20px center;

    background-size: 14px;

    padding-right: 44px;

    cursor: pointer;

}



.contact-message-form textarea {

    resize: vertical;

    min-height: 110px;

}



/* Submit Button */

.contact-message-form .submit-btn {
    position: relative;

    width: 100%;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

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

    color: var(--color-white);

    border: none;

    padding: 16px 30px;

    border-radius: 8px;

    font-family: var(--font-sans);

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 0.5px;

    cursor: pointer;

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

}



.contact-message-form .submit-btn:hover {

    background-color: var(--orange-hover);

    transform: translateY(-1px);

    box-shadow: 0 6px 20px rgba(243, 112, 2, 0.25);

}



.submit-btn-arrow {

    width: 14px;

    height: 14px;

    transition: transform var(--transition-speed);

}



.contact-message-form .submit-btn:hover .submit-btn-arrow {

    transform: translate(2px, -2px);

}



/* Privacy note */

.form-footer-security {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    margin-top: 20px;

    color: var(--color-body);

    font-size: 11.5px;

    font-weight: 500;

    opacity: 0.95;

}



.form-footer-security i {

    color: var(--primary-orange);

    font-size: 11px;

}



/* ==========================================================================

   LOCATION AND WHY US SECTION

   ========================================================================== */

.location-why-section {

    position: relative;

    background-color: var(--bg-warm-cream, #FAF8F5);

    padding: 80px 0;

    width: 100%;

    border-top: 1px solid var(--color-border);

}



.location-why-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

}



.location-why-grid {

    display: grid;

    grid-template-columns: 55% 45%;

    gap: 60px;

    align-items: start;

}



.location-heading,

.why-heading {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 24px;

    font-weight: 800;

    margin-bottom: 15px;

}



.map-container-card {

    border-radius: var(--border-radius-card, 16px);

    overflow: hidden;

    border: 1px solid var(--color-border);

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);

    line-height: 0;

}



.map-container-card iframe {

    display: block;

    width: 100%;

}



.why-benefits-list {

    list-style: none;

    padding: 0;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 28px;

}



.benefit-item {

    display: flex;

    gap: 18px;

    align-items: flex-start;

}



.benefit-icon {

    color: var(--primary-orange);

    font-size: 20px;

    flex-shrink: 0;

    line-height: 1;

    margin-top: 2px;

}



.benefit-content h5 {

    font-family: var(--font-sans);

    color: var(--color-navy);

    font-size: 15px;

    font-weight: 700;

    margin-bottom: 6px;

}



.benefit-content p {

    color: var(--color-body);

    font-size: 13px;

    line-height: 1.55;

    font-weight: 500;

}



/* ==========================================================================

   CTA SECTION OVERRIDES

   ========================================================================== */

.contact-page-cta {

    position: relative;

    padding: 60px 0;

    background: radial-gradient(circle, rgba(255, 255, 255, 0.15) 0%, rgba(43, 24, 10, 0.25) 25%, rgba(43, 24, 10, 0.65) 55%, rgba(43, 24, 10, 0.95) 100%),

        url('images/wood-bakery-texture.webp') center / cover no-repeat;

}



.contact-cta-container {

    display: grid;

    grid-template-columns: 1.6fr 1.2fr !important;

    align-items: center;

    gap: 40px;

}



.contact-page-cta .cta-text-area {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    text-align: left;

}



.contact-page-cta .cta-heading {

    font-size: 32px;

    font-weight: 700;

    color: var(--color-white);

    margin-bottom: 12px;

}



.contact-page-cta .cta-description {

    color: #e2d6ca;

    font-size: 13.5px;

    line-height: 1.6;

    max-width: 600px;

}



.contact-page-cta .cta-buttons-area {

    display: flex;

    flex-direction: row;

    gap: 16px;

    justify-content: flex-end;

    width: auto;

}



.contact-page-cta .btn-action {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 15px 28px;

    border-radius: 8px;

    font-size: 11.5px;

    font-weight: 700;

    transition: all 0.25s ease;

    white-space: nowrap;

}



/* ==========================================================================

   5-COLUMN FOOTER SYSTEM

   ========================================================================== */



.download-brochure-col {

    position: relative;

    height: 100%;

}



.download-brochure-col .download-desc {

    color: var(--text-muted);

    font-size: 12.5px;

    line-height: 1.6;

    font-weight: 500;

    margin-bottom: 20px;

}



.btn-footer-download {

    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    background-color: var(--color-white);

    color: var(--primary-orange);

    border: 1px solid var(--primary-orange);

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    padding: 12px 18px;

    border-radius: 6px;

    transition: all 0.25s ease;

    letter-spacing: 0.5px;

    width: 100%;

    max-width: 220px;

}



.btn-footer-download:hover {

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

    color: var(--color-white);

    box-shadow: 0 4px 12px rgba(243, 112, 2, 0.12);

}



.download-arrow-icon {

    width: 14px;

    height: 14px;

    stroke-width: 2.5;

}



/* Footer bottom copyright styling */

.footer-bottom {

    border-top: 1px solid #EAEAEA;

    padding: 24px 0;

    background-color: var(--bg-cream);

    width: 100%;

    margin-top: 50px;

}



.footer-bottom-container {

    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;

    text-align: center;

}



.footer-bottom-container p {

    color: var(--text-muted);

    font-size: 12px;

    font-weight: 600;

    margin: 0;

}



/* ==========================================================================

   RESPONSIVENESS AND COLLAPSIBLE ADAPTABILITY

   ========================================================================== */

@media (max-width: 1200px) {

    .contact-main-grid {

        gap: 40px;

    }



    .location-why-grid {

        gap: 40px;

    }

}



@media (max-width: 992px) {

    .contact-main-grid {

        grid-template-columns: 1fr;

        gap: 50px;

    }



    .location-why-grid {

        grid-template-columns: 1fr;

        gap: 50px;

    }



    .contact-cta-container {

        grid-template-columns: 1fr !important;

        text-align: center;

        gap: 30px;

    }



    .contact-page-cta .cta-text-area {

        align-items: center;

        text-align: center;

    }



    .contact-page-cta .cta-buttons-area {

        justify-content: center;

        width: 100%;

    }



    .download-brochure-col .premium-divider {

        display: none !important;

    }



    .download-brochure-col {

        border-bottom: 1px solid var(--divider-color);

        padding-bottom: 32px;

    }

}



@media (max-width: 640px) {



    .contact-main-container,

    .location-why-container,

    .footer-bottom-container {

        padding: 0 24px;

    }



    .contact-cards-grid {

        grid-template-columns: 1fr;

        gap: 16px;

    }



    .contact-form-wrapper {

        padding: 28px 24px;

    }



    .contact-message-form .form-row {

        flex-direction: column;

        gap: 0;

    }



    .contact-page-cta .cta-heading {

        font-size: 26px;

    }



    .contact-page-cta .cta-buttons-area {

        flex-direction: column;

        gap: 12px;

        width: 100%;

    }



    .contact-page-cta .btn-action {

        width: 100%;

    }



}



/* --- Scroll Animation Framework --- */

.reveal {

    opacity: 0;

    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);

    will-change: opacity, transform;

}



/* Animation directions/types */

.reveal.fade-in {

    transform: none;

}



.reveal.slide-up {

    transform: translateY(40px);

}



.reveal.slide-down {

    transform: translateY(-40px);

}



.reveal.slide-left {

    transform: translateX(-50px);

}



.reveal.slide-right {

    transform: translateX(50px);

}



.reveal.scale-up {

    transform: scale(0.92);

}



/* Reveal Active State */

.reveal.active {

    opacity: 1;

    transform: none;

}



/* Reveal Staggered Delay Utilities */

.delay-1 {

    transition-delay: 0.1s !important;

}



.delay-2 {

    transition-delay: 0.2s !important;

}



.delay-3 {

    transition-delay: 0.3s !important;

}



.delay-4 {

    transition-delay: 0.4s !important;

}



.delay-5 {

    transition-delay: 0.5s !important;

}



.delay-6 {

    transition-delay: 0.6s !important;

}



.delay-7 {

    transition-delay: 0.7s !important;

}



.delay-8 {

    transition-delay: 0.8s !important;

}



/* --- Premium Navigation Dropdown Submenu --- */

.nav-item.dropdown {

    position: relative;

}



.dropdown-menu {

    position: absolute;

    top: 100%;

    left: 50%;

    transform: translateX(-50%) translateY(15px);

    background-color: var(--color-white, #FFFFFF);

    border: 1px solid var(--color-border, #EAEAEA);

    border-radius: 8px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);

    padding: 12px 0;

    list-style: none;

    min-width: 240px;

    opacity: 0;

    visibility: hidden;

    transition: all 0.3s ease;

    z-index: 150;

}



.dropdown-menu::before {

    content: '';

    position: absolute;

    bottom: 100%;

    left: 50%;

    transform: translateX(-50%);

    border-width: 6px;

    border-style: solid;

    border-color: transparent transparent var(--color-white) transparent;

}



.nav-item.dropdown:hover .dropdown-menu {

    opacity: 1;

    visibility: visible;

    transform: translateX(-50%) translateY(5px);

}



.dropdown-menu li {

    width: 100%;

}



.dropdown-menu li a {

    display: block;

    padding: 10px 20px;

    color: var(--text-color, #2D2D2D);

    font-size: 12px;

    font-weight: 600;

    text-decoration: none;

    transition: background-color 0.2s, color 0.2s;

    text-align: left;

}



.dropdown-menu li a:hover {

    background-color: var(--color-cream-darker, #FFF3E8);

    color: var(--primary-orange);

}



/* Mobile Dropdown styles */

@media (max-width: 1024px) {

    .dropdown-menu {

        position: static;

        transform: none;

        box-shadow: none;

        border: none;

        padding: 0 0 0 15px;

        opacity: 1;

        visibility: visible;

        display: none;

        min-width: 100%;

    }



    .nav-item.dropdown:hover .dropdown-menu {

        transform: none;

        display: block;

    }



    .dropdown-menu li a {

        padding: 12px 0;

        font-size: 14px;

        border-bottom: 1px solid #F5F5F5;

    }

}



.title-border {

    width: 64px;

    height: 4px;

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

    border-radius: 2px;

    margin-bottom: 24px;

    transform: scaleX(0);

    transform-origin: left;

    animation: breadcrumbScaleXIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 0.3s forwards;

}





/* Inquiry Banner Container */

.inquiry-banner {

    background: linear-gradient(135deg, #FFF3E8 0%, #FFFDFB 100%);

    border: 1px solid rgba(243, 112, 2, 0.08);

    padding: 55px 48px;

    max-width: 100%;

    width: 100%;

    display: grid;

    grid-template-columns: 27% 70%;

    gap: 40px;

    align-items: center;

    position: relative;

    overflow: hidden;

    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.02);

    box-sizing: border-box;

}



/* Left Panel: Information */

.inquiry-info-panel {

    position: relative;

    height: 100%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding-bottom: 70px;

    /* Space for collage bottom-left */

    box-sizing: border-box;

}



.category-tag {

    font-size: 11px;

    font-weight: 700;

    color: #4C3C3A;

    letter-spacing: 1px;

    text-transform: uppercase;

}



.info-title {

    font-size: 30px;

    font-weight: 800;

    color: #2F1E1B;

    line-height: 1.25;

    margin: 12px 0 16px 0;

}



.info-desc {

    font-size: 13px;

    color: #5C4C4A;

    line-height: 1.6;

    font-weight: 500;

    margin: 0;

    position: relative;

    z-index: 9;

}



/* Bread Collage Background Bottom-Left */

.decor-collage-wrapper {

    position: absolute;

    bottom: -65px;

    left: -55px;

    width: 432px;

    z-index: 1;

    pointer-events: none;

    filter: drop-shadow(12px 12px 18px rgba(0, 0, 0, 0.12));

}



.decor-collage-img {

    width: 100%;

    height: auto;

    display: block;

    mix-blend-mode: multiply;

}



/* Right Panel: White Proposal Card */

.inquiry-form-card {

    background: #FFFFFF;

    border-radius: 10px;

    padding: 26px 30px;

    box-shadow: 0 10px 40px rgba(243, 112, 2, 0.03);

    /* display: grid;

    grid-template-columns: 69% 28%;

    gap: 24px; */

    align-items: center;

    z-index: 2;

    box-sizing: border-box;

}



/* Inputs Side */

.form-fields-grid {

    display: grid;

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

    gap: 16px 14px;

}



.input-field-group {

    position: relative;

    width: 100%;

}



.input-field-group input,

.input-field-group select,

.input-field-group textarea {

    background: #FFFFFF;

    border: 1.5px solid #F0F0F0;

    border-radius: 6px;

    padding: 13px 16px;

    font-family: 'Montserrat', sans-serif;

    font-size: 12.5px;

    font-weight: 600;

    color: #2D2D2D;

    width: 100%;

    box-sizing: border-box;

    transition: border-color 0.25s, box-shadow 0.25s;

}



.input-field-group input::placeholder,

.input-field-group textarea::placeholder {

    color: #A4A4A4;

    font-weight: 500;

}



/* Inputs States */

.input-field-group input:hover,

.input-field-group select:hover,

.input-field-group textarea:hover {

    border-color: rgba(243, 112, 2, 0.35);

}



.input-field-group input:focus,

.input-field-group select:focus,

.input-field-group textarea:focus {

    border-color: #F37002;

    box-shadow: 0 0 0 3.5px rgba(243, 112, 2, 0.08);

    outline: none;

}



/* Select wrapper drop arrow overlays */

.select-wrapper::after {

    content: '\f078';

    /* FontAwesome chevron-down */

    font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", "Font Awesome 5 Free", sans-serif;

    font-weight: 900;

    position: absolute;

    right: 16px;

    top: 50%;

    transform: translateY(-50%);

    font-size: 11px;

    color: #4C3C3A;

    pointer-events: none;

}



.select-wrapper select {

    appearance: none;

    -webkit-appearance: none;

    -moz-appearance: none;

    padding-right: 36px;

    cursor: pointer;

}



/* Textarea spanning entire grid width */

.textarea-field {

    grid-column: span 3;

}



.textarea-field textarea {

    height: 90px;

    resize: none;

}



/* Action Side */

.form-action-panel {

    display: flex;

    flex-direction: column;

    gap: 16px;

    box-sizing: border-box;

}



.submit-proposal-btn {
    position: relative !important;
    background-color: #F37002;

    color: #FFFFFF;

    border: none;

    border-radius: 6px;

    padding: 15px 12px;

    font-family: 'Montserrat', sans-serif;

    font-size: 11.5px;

    font-weight: 700;

    cursor: pointer;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    text-transform: uppercase;

    transition: background-color 0.25s, transform 0.25s, box-shadow 0.25s;

    box-sizing: border-box;

    width: 100%;

}



.submit-proposal-btn:hover {

    background-color: #D96200;

    transform: translateY(-1px);

    box-shadow: 0 6px 16px rgba(243, 112, 2, 0.22);

}



.proposal-footnote {

    display: flex;

    align-items: flex-start;

    gap: 8px;

    margin-top: auto;

}



.footnote-icon {

    width: 20px;

    height: 20px;

    border-radius: 50%;

    border: 1.5px solid #F37002;

    color: #F37002;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 11px;

    font-weight: 700;

    flex-shrink: 0;

}



.footnote-text {

    font-size: 11px;

    color: #5C4C4A;

    line-height: 1.4;

    font-weight: 500;

    margin: 0;

}



/* ==========================================================================

   RESPONSIVENESS AND TABLET/MOBILE ADAPTABILITY

   ========================================================================== */



@media (max-width: 1200px) {

    .inquiry-banner {

        grid-template-columns: 1fr;

        padding: 45px 35px;

        gap: 30px;

    }



    .inquiry-info-panel {

        padding-bottom: 0;

    }



    .decor-collage-wrapper {

        display: none;

        /* Hide background decor on tablet/mobile overlay */

    }

}



@media (max-width: 900px) {

    .inquiry-form-card {

        grid-template-columns: 1fr;

        padding: 24px;

        gap: 24px;

    }



    .form-action-panel {

        min-height: auto;

        flex-direction: row;

        align-items: center;

        justify-content: space-between;

    }



    .submit-proposal-btn {

        width: 45%;

    }



    .proposal-footnote {

        width: 50%;

        margin-top: 0;

    }

}



@media (max-width: 640px) {

    .inquiry-banner {

        padding: 30px 20px;

    }



    .form-fields-grid {

        grid-template-columns: 1fr;

        gap: 12px;

    }



    .textarea-field {

        grid-column: span 1;

    }



    .form-action-panel {

        flex-direction: column;

        align-items: stretch;

        gap: 15px;

    }



    .submit-proposal-btn {

        width: 100%;

    }



    .proposal-footnote {

        width: 100%;

        justify-content: center;

    }

}

.elementor-editor-active .reveal,
.elementor-edit-mode .reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
}
.preview-slide .slide-img,.book-cover-img {
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: 100% !important;
    max-width: 100% !important;
}
/* ==========================================================================
   iBake Elementor Widgets - Brochure Preview Slider Block
   ========================================================================== */

.preview-section {
    position: relative;
    padding: 95px 0;
    width: 100%;
    background-color: transparent;
    box-sizing: border-box;
}

.preview-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
    width: 100%;
}

.preview-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-bottom: 60px;
    text-align: center;
}

.preview-title-line {
    display: inline-block;
    height: 2px;
    width: 60px;
    background-color: #ff6b35; /* Orange accent line */
    flex-shrink: 0;
}

.preview-title {
    font-size: 26px;
    font-weight: 850;
    color: #1c1917;
    letter-spacing: 0.5px;
    margin: 0;
    text-transform: uppercase;
}

.preview-slider-container {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    gap: 30px;
    margin-bottom: 45px;
}

.preview-slider-viewport {
    overflow: hidden;
    width: 100%;
    position: relative;
}

.preview-slider-track {
    display: flex;
    gap: 20px;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}

.preview-slide {
    flex: 0 0 calc((100% - (var(--slide-columns, 4) - 1) * 20px) / var(--slide-columns, 4));
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.slide-card {
    width: 100%;
    aspect-ratio: 3 / 4;
    background-color: #ffffff;
    border-radius: 12px;
    border: 1px solid #f3efea;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slide-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    display: block;
}

.slide-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border-color: #ff6b35;
}

.slide-card:hover .slide-img {
    transform: scale(1.05);
}

.slide-label {
    font-size: 14.5px;
    font-weight: 800;
    color: #57534e;
    margin-top: 18px;
    display: inline-block;
    text-transform: uppercase;
}

.slider-arrow {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background-color: #ffffff;
    border: 1px solid #e7e5e4;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    color: #1c1917;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 8px 16px rgba(0,0,0,0.02);
    z-index: 10;
    flex-shrink: 0;
}

.slider-arrow:hover {
    background-color: #ff6b35;
    border-color: #ff6b35;
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(255,107,53,0.15);
}

.slider-arrow svg {
    width: 20px;
    height: 20px;
    stroke-width: 3;
}

.slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    align-items: center;
}

.dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #d6d3d1;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.dot.active {
    background-color: #ff6b35;
    width: 28px;
    border-radius: 4px;
}

/* ==========================================================================
   Brochure Preview Slider responsive queries
   ========================================================================== */

@media (max-width: 1024px) {
    .preview-slider-container {
        gap: 20px;
    }
    
    .slider-arrow {
        width: 46px;
        height: 46px;
    }
    
    .slider-arrow svg {
        width: 18px;
        height: 18px;
    }
    
    .preview-title {
        font-size: 22px;
    }
}

@media (max-width: 768px) {
    .preview-section {
        padding: 60px 0;
    }
    
    .preview-header {
        gap: 15px;
        margin-bottom: 40px;
    }
    
    .preview-title {
        font-size: 19px;
    }
    
    .preview-title-line {
        width: 30px;
    }
    
    .slide-label {
        font-size: 13.5px;
        margin-top: 14px;
    }
    
    .slider-arrow {
        display: none !important; /* Touch swipe navigation on mobile viewports */
    }
}

@media (max-width: 480px) {
    .preview-slider-track {
        gap: 16px;
    }
    
    .dot {
        width: 6px;
        height: 6px;
    }
    
    .dot.active {
        width: 20px;
    }
}

/* ==========================================================================
   Brochure Preview Lightbox Overlay Modal Styles
   ========================================================================== */

.brochure-lightbox-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(15, 23, 42, 0.95); /* Deep slate backdrop opacity */
    z-index: 99999;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    box-sizing: border-box;
}

.brochure-lightbox-modal.open {
    opacity: 1;
    pointer-events: auto;
}

.lightbox-close-btn {
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 50px;
    color: #ffffff;
    cursor: pointer;
    opacity: 0.7;
    transition: all 0.3s ease;
    z-index: 100000;
    user-select: none;
    line-height: 1;
}

.lightbox-close-btn:hover {
    color: #ff6b35;
    transform: rotate(90deg);
    opacity: 1;
}

.lightbox-nav-btn {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    z-index: 100000;
    box-sizing: border-box;
}

.lightbox-nav-btn:hover {
    background-color: #ff6b35;
    border-color: #ff6b35;
    color: #ffffff;
    transform: translateY(-50%) scale(1.05);
}

.lightbox-prev-btn {
    left: 40px;
}

.lightbox-next-btn {
    right: 40px;
}

.lightbox-nav-btn svg {
    width: 22px;
    height: 22px;
    stroke-width: 3;
}

.lightbox-content-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 80%;
    max-height: 80%;
    position: relative;
    z-index: 99999;
    box-sizing: border-box;
}

.lightbox-active-img {
    max-width: 100%;
    max-height: 72vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.45);
    transform: scale(0.95);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.brochure-lightbox-modal.open .lightbox-active-img {
    transform: scale(1);
}

.lightbox-active-label {
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 22px;
    text-align: center;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

/* ==========================================================================
   Lightbox Responsive Overrides
   ========================================================================== */

@media (max-width: 768px) {
    .lightbox-close-btn {
        top: 20px;
        right: 25px;
        font-size: 40px;
    }
    
    .lightbox-nav-btn {
        width: 46px;
        height: 46px;
    }
    
    .lightbox-prev-btn {
        left: 15px;
    }
    
    .lightbox-next-btn {
        right: 15px;
    }
    
    .lightbox-nav-btn svg {
        width: 18px;
        height: 18px;
    }
    
    .lightbox-content-box {
        max-width: 90%;
    }
    
    .lightbox-active-label {
        font-size: 14px;
        margin-top: 16px;
    }
}
.wpcf7-submit{
    position: absolute !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer;
}

.product-form-sec{
    display: grid;
    grid-template-columns: 69% 28%;
    gap: 24px;
    align-items: center !important;

}
.wpcf7-spinner,.wpcf7-response-output{
    display: none !important;
}
.newsletter-group p{
    display: flex;
    flex-direction: column;
}