* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { overflow-x: hidden; }
body { font-family: 'Segoe UI', Arial, sans-serif; color: #333; }
a { text-decoration: none; color: inherit; }

/* Navbar */
.navbar {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px calc((100% - 1200px) / 2 + 40px); background: #fff;
    position: sticky; top: 0; left: 0;
    width: 100%; z-index: 100; box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.navbar .logo { display: flex; align-items: center; }
.navbar .logo-img { height: 60px; width: auto; }
.nav-links { display: flex; gap: 24px; align-items: center; }
.nav-links a { font-size: 17px; color: #333; font-weight: 500; transition: color .2s; }
.nav-links .btn-outline { margin-left: 8px; }
.nav-links a:hover { color: #7e287e; }

/* Dropdown */
.dropdown { position: relative; }
.dropdown > a { display: flex; align-items: center; gap: 5px; }
.dropdown-menu {
    position: absolute; top: calc(100% + 12px); left: 0; min-width: 260px;
    background: #fff; border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    padding: 10px 0; opacity: 0; visibility: hidden;
    transform: translateY(10px); transition: all .3s; z-index: 50;
}
.dropdown:hover .dropdown-menu {
    opacity: 1; visibility: visible; transform: translateY(0);
}
.dropdown-menu a {
    display: block; padding: 10px 20px; color: #333 !important;
    font-size: 14px !important; font-weight: 500; transition: background .2s;
}
.dropdown-menu a:hover { background: #e8eaf6; color: #7e287e !important; }
.nav-btns { display: flex; gap: 10px; }
.btn-outline {
    padding: 8px 20px; border: 2px solid #7e287e; color: #7e287e;
    border-radius: 4px; font-weight: 600; font-size: 14px; cursor: pointer;
    background: transparent; transition: all .2s;
}
.btn-outline:hover { background: #7e287e; color: #fff; }
.btn-primary {
    padding: 8px 20px; border: 2px solid #7e287e; background: #7e287e;
    color: #fff; border-radius: 4px; font-weight: 600; font-size: 14px;
    cursor: pointer; transition: all .2s;
}
.btn-primary:hover { background: #6b2260; }
.hamburger { display: none; font-size: 26px; cursor: pointer; color: #7e287e; }

/* Hero Slider */
.hero-slider { position: relative; }
.heroSwiper { width: 100%; height: 360px; }
.hero-slide {
    background-size: cover; background-position: center;
    display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative;
}
.hero-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(126,40,126,0.88), rgba(26,35,126,0.75));
}
.hero-content {
    position: relative; z-index: 2; color: #fff;
    max-width: 650px; padding: 0 20px;
}
.hero-content h1 {
    font-size: 36px; font-weight: 700; line-height: 1.15; margin-bottom: 10px;
}
.hero-content p {
    font-size: 16px; opacity: 0.9; margin-bottom: 20px; line-height: 1.5;
}
.hero-btns { display: none; /* commented out */ }

/* Hero Intro Slide */
.hero-intro-slide {
    background-size: cover; background-position: center;
}
.hero-intro-content {
    max-width: 800px;
}
.hero-intro-heading {
    font-size: 70px; font-weight: 700; line-height: 1.3;
    animation: introZoomIn 1.5s ease-out both;
    white-space: nowrap;
    margin-top: -50px;
}
@keyframes introZoomIn {
    from { opacity: 0; transform: scale(0.5); }
    to { opacity: 1; transform: scale(1); }
}
.hero-btns .btn-hero-primary {
    padding: 12px 28px; background: #7e287e; color: #fff; border: 2px solid #fff;
    border-radius: 4px; font-size: 15px; font-weight: 600; cursor: pointer;
    transition: background .2s;
}
.hero-btns .btn-hero-primary:hover { background: #1565c0; }
.hero-btns .btn-hero-outline {
    padding: 12px 28px; background: #fff; color: #7e287e; border: none;
    border-radius: 4px; font-size: 15px; font-weight: 600; cursor: pointer;
    transition: opacity .2s;
}
.hero-btns .btn-hero-outline:hover { opacity: 0.85; }

/* Products */
.products { padding: 0 40px 50px; background: transparent; margin-top: -80px; position: relative; z-index: 10; }
.products-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
    max-width: 1200px; margin: 0 auto;
}
.product-card {
    border-radius: 12px; overflow: hidden; position: relative;
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; display: flex; flex-direction: column;
    cursor: pointer; transition: transform .3s, box-shadow .3s, outline .3s;
    outline: 3px solid transparent;
    border: 1px solid #e0e0e0;
}
.product-card:hover { transform: translateY(-4px); }
.product-card.active {
    outline: 3px solid #fff;
    box-shadow: 0 0 20px rgba(13,71,161,0.6);
    transform: translateY(-6px);
}
.product-card .card-img {
    width: 100%; height: 160px; object-fit: cover;
}
a.card-text { color: #fff; text-decoration: none; }
.product-card .card-text { padding: 8px 12px; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.product-card .card-text h3 { font-size: 15px; font-weight: 700; margin-bottom: 2px; }
.product-card .card-text p { font-size: 13px; opacity: 0.9; }

/* Progress bar on active card */
.product-card.active::after {
    content: '';
    position: absolute; bottom: 0; left: 0;
    height: 3px; background: #fff;
    animation: cardProgress 5s linear forwards;
}
@keyframes cardProgress {
    from { width: 0; }
    to { width: 100%; }
}

/* Manufacturing */
.manufacturing { padding: 60px 40px; text-align: center; background: #f5f7fa; }
.section-title {
    font-size: 27px; font-weight: 700; color: #462c6b; margin-bottom: 10px;
    position: relative; display: inline-block;
}
.section-title::after {
    content: ''; display: block; width: 60%; height: 3px;
    background: #462c6b; margin: 8px auto 0;
}
.mfg-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px;
    max-width: 1200px; margin: 40px auto 0;
}
.mfg-item { text-align: center; }
.mfg-item .icon {
    width: 64px; height: 64px; border: 3px solid #7e287e; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 12px; font-size: 26px; color: #7e287e;
}
.mfg-item h4 { font-size: 15px; color: #333; font-weight: 600; }

/* Global Presence */
.global {
    padding: 40px 0; text-align: center; background: #fff;
}
.global .section-title { margin-bottom: 40px; }
.global-map-wrapper {
    max-width: 1200px; margin: 0 auto; background: #fff;
    padding: 40px;
}
.global-map-wrapper .map-title {
    font-size: 28px; font-weight: 700; color: #462c6b;
    border-bottom: 3px solid #462c6b; padding-bottom: 8px;
    display: inline-block; margin-bottom: 30px;
}
.global .world-map {
    width: 100%; max-width: 900px; display: block; margin: 0 auto;
}

/* CTA */
.cta {
    background: linear-gradient(135deg, #7e287e, #1a237e);
    padding: 60px 40px; text-align: center; color: #fff;
}
.cta h2 { font-size: 34px; font-weight: 700; margin-bottom: 24px; }
.cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.cta-btns .btn-cta-primary {
    padding: 14px 36px; background: #1565c0; color: #fff; border: 2px solid #fff;
    border-radius: 4px; font-size: 16px; font-weight: 600; cursor: pointer;
}
.cta-btns .btn-cta-outline {
    padding: 14px 36px; background: transparent; color: #fff;
    border: 2px solid #fff; border-radius: 4px; font-size: 16px;
    font-weight: 600; cursor: pointer;
}

/* Footer */
.footer { background: #0a1a3a; color: #ccc; padding: 50px 40px 20px; }
.footer-grid {
    display: grid; grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 40px; max-width: 1200px; margin: 0 auto;
}
.footer-col h3 { color: #fff; font-size: 18px; margin-bottom: 16px; }
.footer-col p, .footer-col a { font-size: 14px; color: #aab; line-height: 1.8; display: block; }
.footer-col a:hover { color: #fff; }
.footer-col .logo-text { font-size: 24px; font-weight: 700; color: #fff; margin-bottom: 10px; }
.footer-socials { display: flex; gap: 14px; margin-top: 14px; }
.footer-socials a {
    width: 36px; height: 36px; border-radius: 50%; border: 1px solid #556;
    display: flex; align-items: center; justify-content: center;
    color: #aab; font-size: 16px; transition: all .2s;
}
.footer-socials a:hover { background: #7e287e; border-color: #7e287e; color: #fff; }
.footer-bottom {
    text-align: center; border-top: 1px solid #223; margin-top: 30px;
    padding-top: 16px; font-size: 13px; color: #667;
}

/* Mobile Nav Overlay */
.mobile-nav {
    display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.95); z-index: 200; flex-direction: column;
    align-items: center; justify-content: center; gap: 24px;
}
.mobile-nav.active { display: flex; }
.mobile-nav a { color: #fff; font-size: 22px; font-weight: 600; }
.mobile-nav .close-btn {
    position: absolute; top: 20px; right: 24px; font-size: 32px;
    color: #fff; cursor: pointer;
}

/* Mobile Dropdown */
.mobile-dropdown { text-align: center; }
.mobile-dropdown > a { display: inline-flex; align-items: center; gap: 6px; }
.mobile-dropdown-menu {
    display: none; flex-direction: column; gap: 10px; margin-top: 10px;
}
.mobile-dropdown.open .mobile-dropdown-menu { display: flex; }
.mobile-dropdown-menu a {
    font-size: 16px !important; opacity: 0.8;
}

/* Responsive */
@media (max-width: 992px) {
    .nav-links, .nav-btns { display: none; }
    .hamburger { display: block; }
    .products-grid { grid-template-columns: repeat(4, 1fr); }
    .mfg-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
    .navbar { padding: 10px 16px; }
    .navbar .logo-img { height: 40px; }
    .hero-content h1 { font-size: 26px; }
    .hero-content p { font-size: 14px; }
    .hero-intro-heading { font-size: 24px; white-space: normal; margin-top: -20px; }
    .products { padding: 0 16px 30px; margin-top: -60px; }
    .products-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
    .product-card { height: auto; }
    .product-card .card-text h3 { font-size: 11px; }
    .product-card .card-text p { font-size: 10px; }
    .product-card .card-img { height: 90px; }
    .manufacturing, .global, .cta { padding: 40px 16px; }
    .section-title { font-size: 22px; }
    .mfg-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .cta h2 { font-size: 22px; }
    .footer { padding: 30px 16px 14px; }
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
}


/* Inner Page Banner */
.inner-banner {
    position: relative; height: 200px; display: flex; align-items: center;
    justify-content: center; padding: 20px;
    background: url('https://images.unsplash.com/photo-1530026405186-ed1f139313f8?w=1400&h=400&fit=crop') center/cover no-repeat;
}
.inner-banner[style*="background-image"] {
    background-size: cover; background-position: center;
}
.inner-banner-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(126,40,126,0.70), rgba(26,35,126,0.60));
}
.inner-banner-content {
    position: relative; z-index: 2; text-align: center; color: #fff;
    max-width: 900px; padding: 0 16px;
}
.inner-banner-content h1 {
    font-size: 36px; font-weight: 700; word-wrap: break-word;
}

/* Coming Soon */
.coming-soon {
    padding: 80px 40px; text-align: center; min-height: 300px;
    display: flex; align-items: center; justify-content: center;
}
.coming-soon-box { max-width: 500px; }
.coming-soon-box i {
    font-size: 48px; color: #7e287e; margin-bottom: 20px;
}
.coming-soon-box h2 {
    font-size: 28px; color: #333; margin-bottom: 10px;
}
.coming-soon-box p {
    font-size: 16px; color: #666; line-height: 1.6;
}

@media (max-width: 600px) {
    .inner-banner { height: auto; min-height: 120px; padding: 30px 16px; }
    .inner-banner-content h1 { font-size: 22px; }
    .coming-soon { padding: 50px 16px; }
    .coming-soon-box i { font-size: 36px; }
    .coming-soon-box h2 { font-size: 22px; }
}


/* About Section */
.about-section {
    padding: 60px 40px 10px; max-width: 1200px; margin: 0 auto;
}
.about-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: start;
}
.about-text .section-title {
    text-align: left; margin-bottom: 20px;
}
.about-text .section-title::after {
    margin: 8px 0 0;
}
.about-text p {
    font-size: 15px; line-height: 1.8; color: #555; margin-bottom: 16px; text-align: justify;
}
.about-image img {
    width: 100%; height: 100%; max-height: 500px; object-fit: cover;
    border-radius: 12px; box-shadow: 0 8px 30px rgba(0,0,0,0.12);
    margin-top: 80px;
}
.about-full-width {
    margin-top: 30px;
}
.about-full-width p {
    font-size: 15px; line-height: 1.8; color: #555; margin-bottom: 16px; text-align: justify;
}

@media (max-width: 992px) {
    .about-grid { grid-template-columns: 1fr; gap: 30px; }
    .about-image img { max-height: 350px; }
}
@media (max-width: 600px) {
    .about-section { padding: 40px 16px; }
    .about-text p { font-size: 14px; }
}


/* Product Portfolio Title */
.portfolio-title-section {
    padding: 30px 40px 20px; text-align: center;
}

/* Product Sections */
.prod-section { padding: 60px 40px; }
.prod-light { background: #fff; }
.prod-dark { background: #f5f7fa; }
.prod-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
    align-items: center; max-width: 1200px; margin: 0 auto;
}
.prod-reverse { direction: rtl; }
.prod-reverse > * { direction: ltr; }
.prod-image img {
    width: 100%; max-height: 300px; object-fit: contain;
    border-radius: 12px; background: #f8fafd; padding: 16px;
}
.prod-content { padding: 10px 0; }
.prod-number {
    font-size: 48px; font-weight: 800; color: rgba(126,40,126,0.12);
    line-height: 1; margin-bottom: 6px;
}
.prod-content h3 {
    font-size: 24px; font-weight: 700; color: #7e287e; margin-bottom: 8px;
}
.prod-subtitle {
    font-size: 15px; font-weight: 600; color: #555; margin-bottom: 10px;
    font-style: italic;
}
.prod-content ul {
    list-style: none; padding: 0; margin-top: 12px;
}
.prod-content ul li {
    font-size: 15px; color: #444; line-height: 1.6; padding: 6px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.prod-content ul li i {
    color: #7e287e; font-size: 14px; margin-top: 4px; flex-shrink: 0;
}
.prod-content .sub-list {
    margin-top: 6px; margin-left: 24px;
}
.prod-content .sub-list li {
    font-size: 14px; color: #666; padding: 3px 0;
    display: list-item; list-style: disc;
}

/* Global Reach CTA */
.global-reach {
    position: relative; padding: 80px 40px; text-align: center;
    background: url('../images/world-map.png') center/contain no-repeat, linear-gradient(135deg, #0a1a3a, #7e287e);
    min-height: 450px; display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.global-reach-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(10,26,58,0.88), rgba(126,40,126,0.85));
}
.global-reach-content {
    position: relative; z-index: 2; color: #fff; max-width: 1200px;
}
.gr-badge {
    width: 70px; height: 70px; border-radius: 50%; margin: 0 auto 20px;
    background: rgba(255,255,255,0.1); border: 2px solid rgba(255,255,255,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 30px; color: #fff;
}
.global-reach-content h2 {
    font-size: 38px; font-weight: 700; margin-bottom: 8px; letter-spacing: 1px;
}
.gr-divider {
    width: 60px; height: 3px; background: #fff; margin: 12px auto 24px; border-radius: 3px;
}
.gr-main {
    font-size: 19px; line-height: 1.7; opacity: 0.95; margin-bottom: 8px;
}
.gr-sub {
    font-size: 17px; line-height: 1.7; opacity: 0.8; font-style: italic;
}
.gr-stats {
    display: flex; justify-content: center; gap: 50px; margin: 32px 0;
}
.gr-stat { text-align: center; }
.gr-stat-num {
    font-size: 36px; font-weight: 800; color: #fff; line-height: 1;
}
.gr-stat-label {
    font-size: 13px; color: rgba(255,255,255,0.7); margin-top: 6px;
    text-transform: uppercase; letter-spacing: 1px; font-weight: 600;
}
.global-reach-btns {
    display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-top: 10px;
}
.global-reach-btns .btn-cta-primary {
    padding: 14px 36px; background: #fff; color: #7e287e; border: 2px solid #fff;
    border-radius: 4px; font-size: 16px; font-weight: 700; text-decoration: none;
    transition: all .2s;
}
.global-reach-btns .btn-cta-primary:hover { background: transparent; color: #fff; }
.global-reach-btns .btn-cta-outline {
    padding: 14px 36px; background: transparent; color: #fff;
    border: 2px solid rgba(255,255,255,0.6); border-radius: 4px; font-size: 16px;
    font-weight: 600; text-decoration: none; transition: all .2s;
}
.global-reach-btns .btn-cta-outline:hover { background: rgba(255,255,255,0.15); border-color: #fff; }

@media (max-width: 992px) {
    .prod-grid { grid-template-columns: 1fr; gap: 30px; }
    .prod-reverse { direction: ltr; }
    .prod-image img { height: 280px; }
}
@media (max-width: 600px) {
    .portfolio-title-section { padding: 30px 16px 5px; }
    .prod-section { padding: 40px 16px; }
    .prod-number { font-size: 36px; }
    .prod-content h3 { font-size: 20px; }
    .prod-image img { height: 220px; }
    .global-reach { padding: 50px 16px; min-height: 300px; }
    .global-reach-content h2 { font-size: 26px; }
    .gr-main { font-size: 14px; }
    .gr-sub { font-size: 13px; }
    .gr-stats { gap: 24px; }
    .gr-stat-num { font-size: 26px; }
    .gr-stat-label { font-size: 11px; }
    .gr-badge { width: 54px; height: 54px; font-size: 24px; }
}


/* Contact Section */
.contact-section {
    padding: 60px 40px; background: #f5f7fa;
}
.contact-grid {
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 0;
    max-width: 1200px; margin: 0 auto; border-radius: 12px;
    overflow: hidden; box-shadow: 0 8px 30px rgba(0,0,0,0.1);
}

/* Left Info Card */
.contact-info-card {
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; padding: 50px 40px;
}
.contact-info-card h2 {
    font-size: 28px; font-weight: 700; margin-bottom: 16px;
}
.contact-divider {
    width: 100%; height: 1px; background: rgba(255,255,255,0.25); margin: 20px 0;
}
.contact-info-item {
    display: flex; gap: 16px; align-items: flex-start; margin-bottom: 24px;
}
.contact-icon {
    width: 46px; height: 46px; border: 2px solid rgba(255,255,255,0.4);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: 18px; flex-shrink: 0; color: #fff;
}
.contact-info-item h4 {
    font-size: 16px; font-weight: 600; margin-bottom: 4px;
}
.contact-info-item p {
    font-size: 14px; line-height: 1.6; opacity: 0.9;
}
.contact-socials {
    display: flex; gap: 12px; margin-top: 10px;
}
.contact-socials a {
    width: 40px; height: 40px; border-radius: 50%;
    background: rgba(255,255,255,0.15); display: flex;
    align-items: center; justify-content: center;
    color: #fff; font-size: 16px; transition: all .2s;
}
.contact-socials a:hover {
    background: #fff; color: #7e287e;
}

/* Right Form Card */
.contact-form-card {
    background: #fff; padding: 50px 40px;
}
.form-label {
    font-size: 13px; font-weight: 700; color: #7e287e;
    text-transform: uppercase; letter-spacing: 1px;
    display: flex; align-items: center; gap: 10px;
}
.form-label-line {
    display: inline-block; width: 40px; height: 2px; background: #7e287e;
}
.form-title {
    font-size: 32px; font-weight: 700; color: #333; margin: 6px 0 30px;
}
.form-title span { font-weight: 400; }
.form-group {
    display: flex; align-items: flex-start; gap: 12px;
    border-bottom: 1px solid #e0e0e0; padding: 14px 0;
}
.form-group i {
    color: #7e287e; font-size: 16px; margin-top: 4px; flex-shrink: 0;
}
.form-group input,
.form-group textarea {
    width: 100%; border: none; outline: none; font-size: 15px;
    font-family: 'Segoe UI', Arial, sans-serif; color: #333;
    background: transparent; resize: vertical;
}
.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #999;
}
.btn-send {
    margin-top: 28px; padding: 14px 40px; background: #7e287e;
    color: #fff; border: none; border-radius: 4px; font-size: 15px;
    font-weight: 700; letter-spacing: 1px; cursor: pointer;
    transition: background .2s;
}
.btn-send:hover { background: #6b2260; }

@media (max-width: 992px) {
    .contact-grid { grid-template-columns: 1fr; }
    .contact-info-card { padding: 40px 30px; }
    .contact-form-card { padding: 40px 30px; }
}
@media (max-width: 600px) {
    .contact-section { padding: 30px 16px; }
    .contact-info-card { padding: 30px 20px; }
    .contact-form-card { padding: 30px 20px; }
    .contact-info-card h2 { font-size: 24px; }
    .form-title { font-size: 26px; }
    .contact-icon { width: 38px; height: 38px; font-size: 15px; }
}


/* Inner Banner Tall Variant */
.inner-banner-tall { min-height: 300px; height: auto; padding: 80px 40px; display: flex; }
.inner-banner-subtitle {
    font-size: 22px; font-weight: 600; color: #fff; margin-top: 10px;
    opacity: 0.95; word-wrap: break-word;
}
.inner-banner-desc {
    font-size: 15px; line-height: 1.8; color: #fff; opacity: 0.9;
    max-width: 850px; margin: 14px auto 0; text-align: center;
    word-wrap: break-word;
}
.inner-banner-desc strong { color: #fff; }

@media (max-width: 768px) {
    .inner-banner-tall { min-height: 220px; padding: 50px 20px; }
    .inner-banner-content h1 { font-size: 26px; }
    .inner-banner-subtitle { font-size: 17px; }
    .inner-banner-desc { font-size: 13px; line-height: 1.6; }
}
@media (max-width: 600px) {
    .inner-banner-tall { min-height: 180px; padding: 40px 16px; }
    .inner-banner-content h1 { font-size: 22px; }
    .inner-banner-subtitle { font-size: 15px; }
    .inner-banner-desc { font-size: 12px; }
}


/* Portfolio Section */
.portfolio-section {
    padding: 0 40px 60px; max-width: 1200px; margin: 0 auto;
}
.portfolio-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
}

/* Portfolio Card */
.port-card {
    background: #fff; border-radius: 12px; padding: 28px 30px;
    border: 1px solid #e0e0e0; position: relative;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: box-shadow .3s, transform .3s;
}
.port-card:hover {
    box-shadow: 0 6px 24px rgba(13,71,161,0.12); transform: translateY(-3px);
}

/* Featured Card - Full Width */
.port-featured {
    grid-column: 1 / -1; padding: 0; overflow: hidden;
}
.port-card-inner {
    display: grid; grid-template-columns: 1fr 1fr; align-items: center;
}
.port-card-content { padding: 30px 35px; }
.port-card-img img {
    width: 100%; height: 100%; min-height: 280px; object-fit: cover;
}

/* Card Number */
.port-card-num {
    font-size: 20px; font-weight: 800; color: #7e287e;
    display: inline-block; margin-bottom: 4px;
}

/* Card Title */
.port-card h3 {
    font-size: 20px; font-weight: 700; color: #1a1a1a; margin-bottom: 6px;
    display: inline;
}
.port-card h3 span { font-weight: 400; color: #555; }
.port-highlight { color: #7e287e !important; font-weight: 600 !important; }

/* Brand Name */
.port-brand {
    font-size: 14px; color: #7e287e; font-weight: 600; margin: 8px 0 4px;
    display: flex; align-items: center; gap: 6px;
}
.port-brand i { font-size: 12px; }

/* Sub Heading */
.port-sub-head {
    font-size: 14px; font-weight: 700; color: #333; margin-bottom: 4px;
}

/* Card List */
.port-card ul {
    list-style: disc; padding-left: 18px; margin-top: 10px;
}
.port-card ul li {
    font-size: 14px; color: #555; line-height: 1.7; padding: 2px 0;
}

/* Featured card list override */
.port-card-content ul { margin-top: 10px; }

@media (max-width: 992px) {
    .portfolio-grid { grid-template-columns: 1fr 1fr; }
    .port-featured { grid-column: 1 / -1; }
    .port-card-inner { grid-template-columns: 1fr; }
    .port-card-img img { min-height: 200px; max-height: 250px; }
}
@media (max-width: 600px) {
    .portfolio-section { padding: 0 16px 40px; }
    .portfolio-grid { grid-template-columns: 1fr; gap: 16px; }
    .port-featured { grid-column: auto; }
    .port-card { padding: 22px 20px; }
    .port-card-content { padding: 22px 20px; }
    .port-card h3 { font-size: 18px; }
}


/* Product Portfolio - Timeline Style */
.pf-section {
    padding: 0 40px 60px; max-width: 1200px; margin: 0 auto;
    position: relative;
}
/* Vertical center line */
.pf-wrapper {
    position: relative;
}
.pf-wrapper::before {
    content: ''; position: absolute; left: 28px; top: 0; bottom: 0;
    width: 3px; background: linear-gradient(to bottom, #7e287e, #1a237e);
    border-radius: 3px;
}

/* Each product item */
.pf-item {
    position: relative; margin-bottom: 40px; padding-left: 70px;
}
.pf-item:last-child { margin-bottom: 0; }

/* Numbered badge */
.pf-badge {
    position: absolute; left: 8px; top: 20px;
    width: 44px; height: 44px; border-radius: 50%;
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; font-size: 16px; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    z-index: 2; box-shadow: 0 4px 14px rgba(126,40,126,0.35);
}

/* Body grid */
.pf-body {
    display: grid; grid-template-columns: 1fr 1fr; gap: 0;
    align-items: stretch; background: #fff; border-radius: 14px;
    overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.07);
    border-left: 4px solid #7e287e;
    transition: box-shadow .3s, transform .3s;
}
.pf-body:hover {
    box-shadow: 0 8px 32px rgba(126,40,126,0.15); transform: translateY(-4px);
}

/* Reverse layout */
.pf-reverse .pf-body { direction: rtl; }
.pf-reverse .pf-body > * { direction: ltr; }
.pf-reverse .pf-body { border-left: none; border-right: 4px solid #7e287e; }

/* Text */
.pf-text { padding: 30px; }
.pf-text h3 {
    font-size: 22px; font-weight: 700; color: #1a1a1a; margin-bottom: 6px;
}
.pf-text h3 span { font-weight: 400; color: #666; }
.pf-brand {
    display: inline-block; background: linear-gradient(135deg, #7e287e, #6b2260);
    color: #fff; font-size: 12px; font-weight: 700; padding: 4px 14px;
    border-radius: 20px; margin: 8px 0 14px; letter-spacing: 0.5px;
}
.pf-sub {
    font-size: 14px; font-weight: 700; color: #7e287e; margin-bottom: 4px;
}
.pf-text ul {
    list-style: none; padding: 0; margin: 0;
}
.pf-text ul li {
    font-size: 14px; color: #555; line-height: 1.6; padding: 5px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.pf-text ul li i {
    color: #7e287e; font-size: 10px; margin-top: 6px; flex-shrink: 0;
}

/* Image */
.pf-img img {
    width: 100%; height: 100%; min-height: 260px; object-fit: cover;
    display: block;
}

/* Alternating background */
.pf-item:nth-child(odd) .pf-body { background: #fff; }
.pf-item:nth-child(even) .pf-body { background: #f8fafd; }

@media (max-width: 992px) {
    .pf-body { grid-template-columns: 1fr; }
    .pf-reverse .pf-body { direction: ltr; border-right: none; border-left: 4px solid #7e287e; }
    .pf-img img { min-height: 200px; max-height: 250px; }
}
@media (max-width: 600px) {
    .pf-section { padding: 0 16px 40px; }
    .pf-wrapper::before { left: 18px; }
    .pf-badge { left: 0; width: 38px; height: 38px; font-size: 14px; }
    .pf-item { padding-left: 52px; margin-bottom: 24px; }
    .pf-text { padding: 20px; }
    .pf-text h3 { font-size: 18px; }
    .pf-img img { min-height: 180px; }
}


/* Brochure Links */
.pf-brochures {
    display: flex; gap: 14px; margin-top: 18px; flex-wrap: wrap;
}
.pf-brochure-link {
    display: block; border-radius: 8px; overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); transition: transform .2s, box-shadow .2s;
}
.pf-brochure-link:hover {
    transform: translateY(-3px); box-shadow: 0 6px 20px rgba(13,71,161,0.2);
}
.pf-brochure-link img {
    display: block; width: 140px; height: auto; object-fit: contain;
}

@media (max-width: 600px) {
    .pf-brochure-link img { width: 120px; }
}


/* Implant Portfolio Cards */
.implant-portfolio {
    padding: 0 40px 50px; max-width: 1200px; margin: 0 auto;
}
.implant-cards {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.implant-card {
    background: #fff; border-radius: 14px; padding: 0 0 30px;
    border: 1px solid #e0e0e0; position: relative; overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
    transition: transform .3s, box-shadow .3s;
    border-top: 4px solid #7e287e; text-align: center;
}
.implant-card:hover {
    transform: translateY(-4px); box-shadow: 0 8px 28px rgba(126,40,126,0.14);
}
.implant-card-img {
    width: 100%; max-height: 220px; object-fit: contain;
}
.implant-card-num {
    position: absolute; top: 12px; left: 12px;
    width: 36px; height: 36px; border-radius: 50%;
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; font-size: 16px; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 3px 10px rgba(126,40,126,0.3); z-index: 2;
}
.implant-card h3 {
    font-size: 22px; font-weight: 700; color: #7e287e; margin: 14px 28px 14px;
}
.implant-card ul { list-style: none; padding: 0; }
.implant-card ul li {
    font-size: 14px; color: #555; line-height: 1.6; padding: 5px 0 5px 28px;
    display: flex; align-items: flex-start; gap: 10px; text-align: left;
}
.implant-card ul li i {
    color: #7e287e; font-size: 13px; margin-top: 4px; flex-shrink: 0;
}
.brochure-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: #7e287e; color: #fff; padding: 10px 22px;
    border-radius: 6px; font-size: 14px; font-weight: 600;
    margin: 18px auto 0; text-decoration: none;
    transition: background .2s;
}
.brochure-btn:hover { background: #6b2260; color: #fff; }
.brochure-btn i { font-size: 20px; }

/* Why Choose Section */
.why-choose {
    padding: 60px 40px; background: #f5f7fa;
}
.why-choose-inner {
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
    align-items: center; max-width: 1200px; margin: 0 auto;
}
.why-choose-text .section-title { text-align: left; margin-bottom: 20px; }
.why-choose-text .section-title::after { margin: 8px 0 0; }
.why-choose-text ul { list-style: none; padding: 0; }
.why-choose-text ul li {
    font-size: 15px; color: #444; line-height: 1.6; padding: 7px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.why-choose-text ul li i {
    color: #7e287e; font-size: 14px; margin-top: 4px; flex-shrink: 0;
}
.why-choose-img img {
    width: 100%; height: 100%; max-height: 380px; object-fit: cover;
    border-radius: 12px; box-shadow: 0 6px 24px rgba(0,0,0,0.1);
}

/* Implant Variants */
.implant-variants {
    padding: 60px 40px; background: #fff;
}
.implant-variants-inner {
    max-width: 1200px; margin: 0 auto; text-align: center;
}
.variant-cards {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    margin-top: 36px;
}
.variant-card {
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; border-radius: 12px; padding: 30px 24px;
    text-align: center; transition: transform .3s;
}
.variant-card:hover { transform: translateY(-4px); }
.variant-icon {
    width: 56px; height: 56px; border-radius: 50%;
    background: rgba(255,255,255,0.15); border: 2px solid rgba(255,255,255,0.3);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 14px; font-size: 22px;
}
.variant-card h4 { font-size: 18px; font-weight: 700; margin-bottom: 6px; }
.variant-card p { font-size: 14px; opacity: 0.85; }

/* Clinical Confidence & Surgical Kits */
.clinical-kits {
    padding: 60px 40px; background: #f5f7fa;
}
.clinical-kits-inner {
    display: grid; grid-template-columns: 1fr 1fr; gap: 40px;
    max-width: 1200px; margin: 0 auto;
}
.clinical-kits-with-img {
    grid-template-columns: 1fr 1fr; align-items: center;
}
.clinical-kits-img img {
    width: 100%; border-radius: 12px; object-fit: cover;
    box-shadow: 0 6px 24px rgba(0,0,0,0.1);
}
.clinical-kits-content {
    display: flex; flex-direction: column; gap: 30px;
}
.clinical-col .section-title,
.kits-col .section-title { text-align: left; font-size: 22px; margin-bottom: 16px; }
.clinical-col .section-title::after,
.kits-col .section-title::after { margin: 8px 0 0; }
.clinical-col ul,
.kits-col ul { list-style: none; padding: 0; }
.clinical-col ul li,
.kits-col ul li {
    font-size: 15px; color: #444; line-height: 1.6; padding: 5px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.clinical-col ul li i,
.kits-col ul li i {
    color: #7e287e; font-size: 13px; margin-top: 4px; flex-shrink: 0;
}
.kits-col p {
    font-size: 15px; color: #555; line-height: 1.7; margin-bottom: 12px;
}

@media (max-width: 992px) {
    .implant-cards { grid-template-columns: 1fr; }
    .why-choose-inner { grid-template-columns: 1fr; }
    .variant-cards { grid-template-columns: 1fr; }
    .clinical-kits-inner { grid-template-columns: 1fr; }
    .clinical-kits-with-img { grid-template-columns: 1fr; }
    .clinical-kits-img img { max-height: 350px; }
}
@media (max-width: 600px) {
    .implant-portfolio { padding: 0 16px 30px; }
    .implant-card { padding: 24px 20px; }
    .implant-card h3 { font-size: 19px; }
    .why-choose { padding: 40px 16px; }
    .implant-variants { padding: 40px 16px; }
    .clinical-kits { padding: 40px 16px; }
    .variant-card { padding: 24px 18px; }
}


/* Critical Care Page */
.cc-products {
    padding: 60px 40px; text-align: center; background: #f0f4f8;
}
.cc-products .section-title { margin-bottom: 40px; }
.cc-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    max-width: 1200px; margin: 0 auto;
}
.cc-card {
    background: #fff; border-radius: 14px; overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.07); position: relative;
    transition: transform .3s, box-shadow .3s;
}
.cc-card:hover {
    transform: translateY(-5px); box-shadow: 0 8px 30px rgba(13,71,161,0.15);
}
.cc-num {
    position: absolute; top: 12px; left: 12px;
    width: 32px; height: 32px; border-radius: 6px;
    background: linear-gradient(135deg, #7e287e, #1a237e);
    color: #fff; font-size: 15px; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    z-index: 2;
}
.cc-card img {
    width: calc(100% - 20px); height: 200px; object-fit: cover;
    margin: 10px;
    border-radius: 8px;
}
.cc-card h3 {
    font-size: 16px; font-weight: 700; color: #1a1a1a;
    padding: 14px 16px 6px; text-align: center;
}
.cc-note {
    font-size: 13px; color: #7e287e; font-weight: 600;
    padding: 0 16px 14px; text-align: center;
}
.cc-card h3:last-child { padding-bottom: 16px; }

/* Why Choose - Critical Care */
.cc-why {
    padding: 70px 40px; text-align: center; background: #fff;
}
.cc-why .section-title { margin-bottom: 40px; }
.cc-why-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px;
    max-width: 1200px; margin: 0 auto;
}
.cc-why-card {
    background: #f5f7fa; border-radius: 12px; padding: 30px 20px;
    text-align: center; border-top: 4px solid #7e287e;
    transition: transform .3s, box-shadow .3s;
}
.cc-why-card:hover {
    transform: translateY(-4px); box-shadow: 0 6px 24px rgba(13,71,161,0.12);
}
.cc-why-icon {
    width: 60px; height: 60px; border-radius: 50%;
    background: linear-gradient(135deg, #7e287e, #6b2260);
    color: #fff; font-size: 24px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 16px;
}
.cc-why-card h4 {
    font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: 8px;
}
.cc-why-card p {
    font-size: 14px; color: #666; line-height: 1.5;
}

@media (max-width: 992px) {
    .cc-grid { grid-template-columns: repeat(2, 1fr); }
    .cc-why-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .cc-products { padding: 40px 16px; }
    .cc-grid { grid-template-columns: 1fr; gap: 16px; }
    .cc-why { padding: 40px 16px; }
    .cc-why-grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .cc-why-card { padding: 24px 16px; }
}


/* PFS Page */
.pfs-tag {
    display: inline-flex; align-items: center; gap: 6px;
    background: #f3e8f3; color: #7e287e;
    padding: 8px 16px; border-radius: 8px; font-size: 14px; font-weight: 600;
}
.pfs-sub-head {
    font-size: 15px; font-weight: 700; color: #7e287e; margin-bottom: 6px;
}

/* PFS Hero Section */
.pfs-hero-section {
    padding: 50px 40px 30px; text-align: center; background: #f5f7fa;
}
.pfs-hero-section .section-title { margin-bottom: 30px; }
.pfs-hero-card {
    display: grid; grid-template-columns: 1fr 1fr; gap: 40px;
    align-items: center; max-width: 1200px; margin: 0 auto;
    background: #fff; border-radius: 14px; padding: 36px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06);
}
.pfs-hero-text { text-align: left; }
.pfs-hero-text p {
    font-size: 16px; color: #555; line-height: 1.7; margin-bottom: 10px;
}
.pfs-tags { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.pfs-hero-img { text-align: center; }
.pfs-hero-img img {
    max-width: 100%; max-height: 260px; object-fit: contain;
}

/* PFS Manufacturing - Blue BG */
.pfs-mfg {
    padding: 60px 40px; text-align: center; background: #7e287e; color: #fff;
}
.pfs-mfg .section-title { color: #fff; margin-bottom: 36px; }
.pfs-mfg .section-title::after { background: #fff; }
.pfs-mfg-grid {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px;
    max-width: 1200px; margin: 0 auto;
}
.pfs-mfg-item {
    background: rgba(255,255,255,0.1); border-radius: 12px; padding: 24px 16px;
    display: flex; flex-direction: column; align-items: center; gap: 12px;
    border: 1px solid rgba(255,255,255,0.15); transition: background .3s;
}
.pfs-mfg-item:hover { background: rgba(255,255,255,0.18); }
.pfs-mfg-item i { font-size: 28px; color: #fff; }
.pfs-mfg-item span { font-size: 14px; line-height: 1.5; opacity: 0.9; }

@media (max-width: 992px) {
    .pfs-mfg-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
    .pfs-mfg { padding: 40px 16px; }
    .pfs-mfg-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .pfs-mfg-item { padding: 18px 12px; }
}

/* PFS Manufacturing Section - Unused */
.pfs-mfg-section {
    padding: 60px 40px; background: #fff;
}
.pfs-mfg-section .section-title { text-align: center; display: block; margin-bottom: 36px; }
.pfs-mfg-section .section-title::after { margin: 8px auto 0; }
.pfs-mfg-layout {
    display: grid; grid-template-columns: 1fr 1fr; gap: 40px;
    align-items: center; max-width: 1200px; margin: 0 auto;
}
.pfs-mfg-img img {
    width: 100%; max-height: 320px; object-fit: cover;
    border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}
.pfs-mfg-list ul { list-style: none; padding: 0; }
.pfs-mfg-list ul li {
    font-size: 16px; color: #444; line-height: 1.6; padding: 8px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.pfs-mfg-list ul li i {
    color: #7e287e; font-size: 16px; margin-top: 4px; flex-shrink: 0;
}

/* PFS Products Row */
.pfs-products-row {
    display: grid; grid-template-columns: 1fr 1fr; gap: 28px;
    max-width: 1200px; margin: 0 auto; padding: 50px 40px;
    background: #f5f7fa;
}
.pfs-prod-card {
    background: #fff; border-radius: 14px; overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    border-top: 4px solid #7e287e;
    transition: transform .3s, box-shadow .3s;
    display: flex; flex-direction: column;
}
.pfs-prod-card:hover {
    transform: translateY(-4px); box-shadow: 0 8px 30px rgba(13,71,161,0.12);
}
.pfs-prod-card h3 {
    font-size: 20px; font-weight: 700; color: #1a1a1a; margin-bottom: 8px;
}
.pfs-prod-card h3 span { color: #7e287e; font-weight: 600; }
.pfs-prod-img {
    text-align: center; padding: 20px;
    background: #f8fafd; flex-shrink: 0;
}
.pfs-prod-img img {
    height: 160px; max-width: 100%; object-fit: contain;
}
.pfs-prod-info {
    padding: 20px 24px;
}
.pfs-prod-info ul { list-style: none; padding: 0; margin: 0; }
.pfs-prod-info ul li {
    font-size: 15px; color: #444; line-height: 1.6; padding: 5px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.pfs-prod-info ul li i { color: #7e287e; font-size: 14px; margin-top: 4px; flex-shrink: 0; }
.pfs-prod-info p { font-size: 15px; color: #555; line-height: 1.7; }
.pfs-prod-inner {
    display: flex; flex-direction: column;
}

@media (max-width: 992px) {
    .pfs-hero-card { grid-template-columns: 1fr; }
    .pfs-mfg-layout { grid-template-columns: 1fr; }
    .pfs-products-row { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .pfs-hero-section { padding: 30px 16px 20px; }
    .pfs-hero-card { padding: 20px; gap: 20px; }
    .pfs-mfg-section { padding: 40px 16px; }
    .pfs-products-row { padding: 30px 16px; gap: 16px; }
    .pfs-prod-inner { flex-direction: column; }
    .pfs-prod-card { padding: 20px; }
}


/* Gastro Page */
.gastro-spatz {
    padding: 60px 40px; background: #fff;
}
.gastro-spatz-inner {
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
    align-items: start; max-width: 1200px; margin: 0 auto;
}
.gastro-spatz-text .section-title {
    text-align: left; margin-bottom: 16px;
}
.gastro-spatz-text .section-title::after { margin: 8px 0 0; }
.gastro-desc {
    font-size: 15px; color: #555; line-height: 1.8; margin-bottom: 18px;
}
.gastro-spatz-text ul { list-style: none; padding: 0; }
.gastro-spatz-text ul li {
    font-size: 15px; color: #444; line-height: 1.6; padding: 6px 0;
    display: flex; align-items: flex-start; gap: 10px;
}
.gastro-spatz-text ul li i {
    color: #7e287e; font-size: 14px; margin-top: 4px; flex-shrink: 0;
}
.gastro-spatz-text .brochure-btn { margin-top: 20px; }
.gastro-spatz-img img {
    width: 100%; max-height: 400px; object-fit: contain;
    border-radius: 12px; background: #f8fafd; padding: 20px;
}

/* Gastro Full Width Text Section */
.gastro-spatz-full {
    max-width: 1200px; margin: 0 auto; text-align: center;
}
.gastro-spatz-text-full {
    max-width: 1200px; margin: 0 auto;
}
.gastro-spatz-text-full .section-title {
    text-align: center; margin-bottom: 20px;
}
.gastro-spatz-text-full .section-title::after {
    margin: 8px auto 0;
}
.gastro-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
    list-style: none; padding: 0; margin: 20px 0;
    max-width: 600px; margin-left: auto; margin-right: auto;
}
.gastro-features li {
    font-size: 15px; color: #444; line-height: 1.6;
    display: flex; align-items: flex-start; gap: 10px; text-align: left;
}
.gastro-features li i {
    color: #7e287e; font-size: 14px; margin-top: 4px; flex-shrink: 0;
}

/* Videos Section */
.gastro-videos-section {
    padding: 50px 40px; background: #f5f7fa;
}
.gastro-videos-container {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    max-width: 1200px; margin: 0 auto;
}

/* Gastro Videos */
.gastro-videos {
    display: flex; flex-direction: column; gap: 20px;
}
.gastro-video-item {
    background: #fff; border-radius: 12px; padding: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    border: 1px solid #e8eaf6;
    transition: transform .3s, box-shadow .3s;
}
.gastro-video-item:hover {
    transform: translateY(-3px); box-shadow: 0 8px 30px rgba(126,40,126,0.12);
}
.video-wrapper {
    position: relative; width: 100%; height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    border-radius: 8px; overflow: hidden;
}
.video-wrapper iframe,
.video-wrapper video {
    position: absolute; top: 0; left: 0;
    width: 100%; height: 100%; border: none;
    border-radius: 8px; object-fit: cover;
}

@media (max-width: 992px) {
    .gastro-spatz-inner { grid-template-columns: 1fr; gap: 30px; }
    .gastro-videos-container { grid-template-columns: 1fr; gap: 20px; }
    .gastro-features { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .gastro-spatz { padding: 40px 16px; }
    .gastro-spatz-img img { max-height: 260px; }
    .gastro-videos { gap: 16px; }
    .gastro-video-item { padding: 12px; }
    .gastro-videos-section { padding: 30px 16px; }
    .gastro-features { gap: 8px; }
}


/* OEM Services Page */
.oem-highlights {
    padding: 50px 40px; background: #fff;
}
.oem-highlights-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
    max-width: 1200px; margin: 0 auto;
}
.oem-hl-card {
    text-align: center; padding: 28px 16px; border: 1px solid #e0e0e0;
    border-radius: 12px; transition: transform .3s, box-shadow .3s;
}
.oem-hl-card:hover { transform: translateY(-4px); box-shadow: 0 6px 20px rgba(0,0,0,0.08); }
.oem-hl-img {
    width: 54px; height: 54px; object-fit: contain; margin: 0 auto 14px; display: block;
}
.oem-hl-card h4 { font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: 6px; }
.oem-hl-card p { font-size: 13px; color: #666; line-height: 1.5; }

/* OEM Product Sections */
.oem-product-section { padding: 60px 40px; background: #f5f7fa; }
.oem-alt { background: #fff; }
.oem-product-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 40px;
    align-items: center; max-width: 1200px; margin: 0 auto;
}
.oem-reverse { direction: rtl; }
.oem-reverse > * { direction: ltr; }
.oem-product-img img {
    width: 100%; max-height: 340px; object-fit: cover;
    border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}
.oem-product-content h2 {
    font-size: 26px; font-weight: 700; color: #7e287e; margin-bottom: 20px;
    border-bottom: 3px solid #7e287e; padding-bottom: 8px; display: inline-block;
}
.oem-features-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
}
.oem-feature {
    display: flex; align-items: flex-start; gap: 10px;
    font-size: 14px; color: #444; line-height: 1.5;
}
.oem-feature i { color: #7e287e; font-size: 16px; margin-top: 2px; flex-shrink: 0; }

/* OEM Capabilities */
.oem-capabilities {
    padding: 70px 40px; text-align: center; background: #7e287e; color: #fff;
}
.oem-capabilities .section-title { color: #fff; margin-bottom: 40px; }
.oem-capabilities .section-title::after { background: #fff; }
.oem-cap-grid {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px;
    max-width: 1200px; margin: 0 auto;
}
.oem-cap-item {
    text-align: center; padding: 24px 14px;
    background: rgba(255,255,255,0.08); border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.15);
    transition: background .3s, transform .3s;
}
.oem-cap-item:hover { background: rgba(255,255,255,0.16); transform: translateY(-4px); }
.oem-cap-item i {
    font-size: 30px; color: #fff; margin-bottom: 12px; display: block;
}
.oem-cap-item span { font-size: 13px; color: rgba(255,255,255,0.9); font-weight: 600; line-height: 1.4; }

/* OEM Process */
.oem-process {
    padding: 70px 40px; text-align: center; background: #fff;
}
.oem-process .section-title { margin-bottom: 50px; }
.oem-process-grid {
    display: flex; align-items: center; justify-content: center;
    gap: 0; max-width: 1200px; margin: 0 auto;
}
.oem-step { text-align: center; flex: 1; }
.oem-step-icon {
    width: 80px; height: 80px; border-radius: 50%;
    background: #02376b; color: #fff; font-size: 30px; margin: 0 auto 14px;
    display: flex; align-items: center; justify-content: center;
    border: 4px solid #e0e8f0;
    transition: transform .3s;
}
.oem-step-dark .oem-step-icon { background: #02376b; }
.oem-step-teal .oem-step-icon { background: #0e99ac; }
.oem-step:hover .oem-step-icon { transform: scale(1.08); }
.oem-step p { font-size: 13px; font-weight: 600; color: #333; max-width: 110px; margin: 0 auto; line-height: 1.4; }
.oem-arrow { color: #bbb; font-size: 22px; padding: 0 4px; margin-top: -20px; }

/* OEM CTA */
.oem-cta {
    background: linear-gradient(135deg, #0a1a3a, #7e287e); padding: 60px 40px; color: #fff;
}
.oem-cta-inner {
    display: flex; align-items: center; justify-content: space-between;
    max-width: 1200px; margin: 0 auto; gap: 30px; flex-wrap: wrap;
}
.oem-cta-text h2 { font-size: 28px; font-weight: 700; margin-bottom: 8px; }
.oem-cta-text p { font-size: 15px; opacity: 0.85; }
.oem-cta-btns { display: flex; gap: 14px; flex-wrap: wrap; }
.oem-cta-btns .btn-cta-primary {
    padding: 14px 30px; background: #fff; color: #7e287e; border: 2px solid #fff;
    border-radius: 4px; font-size: 15px; font-weight: 700; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all .2s;
}
.oem-cta-btns .btn-cta-primary:hover { background: transparent; color: #fff; }
.oem-cta-btns .btn-cta-outline {
    padding: 14px 30px; background: transparent; color: #fff;
    border: 2px solid rgba(255,255,255,0.6); border-radius: 4px; font-size: 15px;
    font-weight: 600; text-decoration: none; display: inline-flex;
    align-items: center; gap: 8px; transition: all .2s;
}
.oem-cta-btns .btn-cta-outline:hover { background: rgba(255,255,255,0.15); border-color: #fff; }

@media (max-width: 992px) {
    .oem-highlights-grid { grid-template-columns: repeat(2, 1fr); }
    .oem-product-grid { grid-template-columns: 1fr; }
    .oem-reverse { direction: ltr; }
    .oem-cap-grid { grid-template-columns: repeat(3, 1fr); }
    .oem-cta-inner { flex-direction: column; text-align: center; }
}
@media (max-width: 600px) {
    .oem-highlights { padding: 30px 16px; }
    .oem-highlights-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
    .oem-product-section { padding: 40px 16px; }
    .oem-features-grid { grid-template-columns: 1fr; }
    .oem-capabilities { padding: 40px 16px; }
    .oem-cap-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .oem-process { padding: 40px 16px; }
    .oem-arrow { display: none; }
    .oem-process-grid { gap: 20px; }
    .oem-cta { padding: 40px 16px; }
    .oem-cta-text h2 { font-size: 22px; }
}


/* OEM Banner Badges */
.oem-banner-badges {
    display: flex; align-items: center; justify-content: center;
    gap: 30px; margin-top: 30px; flex-wrap: wrap;
}
.oem-badge-item {
    display: flex; align-items: flex-start; gap: 12px; text-align: left;
}
.oem-badge-icon {
    width: 44px; height: 44px; border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.4); flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; color: #fff;
}
.oem-badge-item strong {
    display: block; font-size: 15px; color: #fff; margin-bottom: 2px;
}
.oem-badge-item span {
    font-size: 13px; color: rgba(255,255,255,0.8); line-height: 1.4;
}
.oem-badge-divider {
    width: 1px; height: 50px; background: rgba(255,255,255,0.3);
}

@media (max-width: 600px) {
    .oem-banner-badges { flex-direction: column; gap: 16px; align-items: center; }
    .oem-badge-divider { width: 60px; height: 1px; }
    .oem-badge-item { text-align: center; flex-direction: column; align-items: center; }
}


/* Distribution Page */
.dist-about { padding: 60px 40px; background: #fff; }
.dist-about-inner {
    max-width: 1200px; margin: 0 auto;
}
.dist-about-text {
    margin-bottom: 40px;
}
.dist-about-text h2 {
    font-size: 26px; font-weight: 700; color: #02376b; margin-bottom: 14px;
    border-bottom: 3px solid #02376b; padding-bottom: 10px; display: inline-block;
}
.dist-about-text p { font-size: 15px; color: #555; line-height: 1.8; margin-top: 14px; }
.dist-highlights {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px;
}
.dist-hl-item { text-align: center; padding: 24px 16px; border: 1px solid #e8eaf6; border-radius: 12px; transition: transform .3s, box-shadow .3s; }
.dist-hl-item:hover { transform: translateY(-4px); box-shadow: 0 6px 20px rgba(0,0,0,0.08); }
.dist-hl-icon {
    width: 56px; height: 56px; margin: 0 auto 14px;
    color: #0e99ac; font-size: 32px;
    display: flex; align-items: center; justify-content: center;
}
.dist-hl-item h4 { font-size: 15px; font-weight: 700; color: #02376b; margin-bottom: 6px; }
.dist-hl-item p { font-size: 13px; color: #666; line-height: 1.5; }

/* Distribution Form */
.dist-form-section { padding: 60px 40px; background: #f5f7fa; }
.dist-form-wrapper {
    display: grid; grid-template-columns: 2fr 1fr; gap: 0;
    max-width: 1200px; margin: 0 auto; border-radius: 14px;
    overflow: hidden; box-shadow: 0 6px 30px rgba(0,0,0,0.08);
    border: 2px solid #02376b;
}
.dist-form-left { background: #fff; padding: 40px; }
.dist-form-left h2 { font-size: 24px; font-weight: 700; color: #02376b; margin-bottom: 6px; }
.dist-form-left > p { font-size: 14px; color: #666; margin-bottom: 24px; }
.dist-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.dist-form-group { margin-bottom: 14px; }
.dist-form-group label {
    display: block; font-size: 13px; font-weight: 700; color: #333;
    margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.5px;
}
.dist-form-group input,
.dist-form-group select {
    width: 100%; padding: 12px 14px; border: 1px solid #ddd; border-radius: 6px;
    font-size: 14px; font-family: 'Segoe UI', Arial, sans-serif;
    color: #333; background: #f9fafb; transition: border .2s;
}
.dist-form-group input:focus,
.dist-form-group select:focus { border-color: #7e287e; outline: none; }
.dist-submit-btn {
    padding: 14px 32px; background: #02376b; color: #fff; border: none;
    border-radius: 6px; font-size: 15px; font-weight: 700; cursor: pointer;
    display: inline-flex; align-items: center; gap: 8px; margin-top: 10px;
    transition: background .2s;
}
.dist-submit-btn:hover { background: #0e99ac; }
.dist-form-right {
    background: linear-gradient(135deg, #02376b, #0e99ac);
    display: flex; align-items: center; justify-content: center; padding: 40px;
}
.dist-form-badge { text-align: center; color: #fff; }
.dist-form-badge i { font-size: 48px; margin-bottom: 16px; opacity: 0.9; }
.dist-form-badge h3 { font-size: 22px; font-weight: 700; margin-bottom: 8px; }
.dist-form-badge p { font-size: 14px; opacity: 0.85; line-height: 1.5; }

/* Distribution Strength */
.dist-strength { padding: 70px 40px; text-align: center; background: #fff; }
.dist-strength .section-title { margin-bottom: 40px; }
.dist-strength-grid {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px;
    max-width: 1200px; margin: 0 auto;
}
.dist-str-item {
    text-align: center; padding: 24px 14px;
    border: 1px solid #e8eaf6; border-radius: 12px;
    transition: transform .3s, box-shadow .3s;
}
.dist-str-item:hover { transform: translateY(-4px); box-shadow: 0 6px 20px rgba(0,0,0,0.08); }
.dist-str-icon {
    width: 56px; height: 56px; margin: 0 auto 14px; border-radius: 50%;
    background: #f0f8f9; color: #0e99ac; font-size: 26px;
    display: flex; align-items: center; justify-content: center;
}
.dist-str-item h4 { font-size: 13px; font-weight: 700; color: #02376b; line-height: 1.4; }

@media (max-width: 992px) {
    .dist-about-inner { grid-template-columns: 1fr; }
    .dist-highlights { grid-template-columns: repeat(2, 1fr); }
    .dist-form-wrapper { grid-template-columns: 1fr; }
    .dist-form-right { padding: 30px; }
    .dist-strength-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
    .dist-about { padding: 40px 16px; }
    .dist-highlights { grid-template-columns: 1fr 1fr; gap: 14px; }
    .dist-form-section { padding: 30px 16px; }
    .dist-form-left { padding: 24px; }
    .dist-form-row { grid-template-columns: 1fr; gap: 0; }
    .dist-strength { padding: 40px 16px; }
    .dist-strength-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}


/* Distribution Banner Tags */
.dist-banner-tags {
    display: flex; align-items: center; justify-content: center;
    gap: 16px; margin-top: 24px; flex-wrap: wrap;
}
.dist-banner-tags span {
    font-size: 15px; color: #fff; font-weight: 600;
    display: inline-flex; align-items: center; gap: 8px;
}
.dist-banner-tags span i { font-size: 16px; color: #0e99ac; }
.dist-tag-divider { opacity: 0.4; font-weight: 300; }

@media (max-width: 600px) {
    .dist-banner-tags { gap: 10px; }
    .dist-banner-tags span { font-size: 13px; }
}


/* Distribution CTA */
.dist-cta {
    background: linear-gradient(135deg, #021d3a, #02376b);
    padding: 50px 40px; color: #fff; text-align: center;
}
.dist-cta-inner {
    display: flex; flex-direction: column; align-items: center;
    max-width: 1200px; margin: 0 auto; gap: 20px;
}
.dist-cta-text h2 { font-size: 26px; font-weight: 700; margin-bottom: 8px; }
.dist-cta-text p { font-size: 15px; opacity: 0.85; line-height: 1.6; }
.dist-cta-btn {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 16px 28px; border: 2px solid rgba(255,255,255,0.5);
    border-radius: 8px; color: #fff; font-size: 15px; font-weight: 700;
    text-decoration: none; transition: all .2s; margin-top: 10px;
}
.dist-cta-btn:hover { background: rgba(255,255,255,0.1); border-color: #fff; }
.dist-cta-btn i { font-size: 18px; }

@media (max-width: 600px) {
    .dist-cta { padding: 40px 16px; }
    .dist-cta-text h2 { font-size: 22px; }
}


/* Interventional Radiology Page */
.ir-ordering { padding: 60px 40px; background: #fff; }
.ir-ordering .section-title { display: block; text-align: left; margin-bottom: 30px; }
.ir-ordering .section-title::after { margin: 8px 0 0; }
.ir-tables {
    display: grid; grid-template-columns: 1fr 1fr; gap: 30px;
    max-width: 1200px; margin: 0 auto;
}
.ir-table-badge {
    display: inline-block; background: #02376b; color: #fff;
    padding: 6px 16px; border-radius: 4px; font-size: 14px;
    font-weight: 700; margin-bottom: 12px;
}
.ir-table {
    width: 100%; border-collapse: collapse; font-size: 13px;
}
.ir-table th {
    background: #02376b; color: #fff; padding: 10px 8px;
    text-align: center; font-weight: 600;
}
.ir-table td {
    padding: 9px 8px; text-align: center; border: 1px solid #e0e0e0;
    color: #333;
}
.ir-table tbody tr:nth-child(even) { background: #f8fafd; }
.ir-table td:first-child { font-weight: 700; color: #02376b; }

/* Product Image Section */
.ir-product-img {
    padding: 50px 40px; text-align: center; background: #f5f7fa;
    max-width: 1200px; margin: 0 auto;
}
.ir-product-img > img {
    max-width: 100%; max-height: 300px; object-fit: contain; margin-bottom: 30px;
}
.ir-features-row {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;
    max-width: 800px; margin: 0 auto;
}
.ir-feat { text-align: center; }
.ir-feat h4 { font-size: 15px; font-weight: 700; color: #02376b; margin-bottom: 4px; }
.ir-feat p { font-size: 13px; color: #666; line-height: 1.4; }

/* Specs & Applications */
.ir-specs-section { padding: 60px 40px; background: #fff; }
.ir-specs-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
    max-width: 1200px; margin: 0 auto;
}
.ir-specs-block .section-title,
.ir-apps-block .section-title {
    text-align: left; font-size: 20px; margin-bottom: 20px;
}
.ir-specs-block .section-title::after,
.ir-apps-block .section-title::after { margin: 8px 0 0; }
.ir-specs-table { width: 100%; border-collapse: collapse; }
.ir-specs-table tr { border-bottom: 1px solid #eee; }
.ir-specs-table td {
    padding: 10px 8px; font-size: 14px; color: #444; vertical-align: middle;
}
.ir-specs-table td:first-child { width: 30px; color: #0e99ac; font-size: 14px; }
.ir-specs-table td:nth-child(2) { font-weight: 600; color: #333; width: 200px; }
.ir-specs-table td:nth-child(3) { color: #555; }
.ir-apps-block ul { list-style: none; padding: 0; }
.ir-apps-block ul li {
    font-size: 14px; color: #444; line-height: 1.6; padding: 10px 0;
    display: flex; align-items: flex-start; gap: 12px;
    border-bottom: 1px solid #f0f0f0;
}
.ir-apps-block ul li:last-child { border-bottom: none; }
.ir-apps-block ul li i { color: #0e99ac; font-size: 18px; margin-top: 2px; flex-shrink: 0; }

@media (max-width: 992px) {
    .ir-tables { grid-template-columns: 1fr; }
    .ir-specs-grid { grid-template-columns: 1fr; }
    .ir-features-row { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 600px) {
    .ir-ordering { padding: 40px 16px; }
    .ir-table { font-size: 11px; }
    .ir-product-img { padding: 30px 16px; }
    .ir-specs-section { padding: 40px 16px; }
    .ir-specs-table td:nth-child(2) { width: auto; }
}


/* IR Page - UI Overrides */
.ir-table {
    border-radius: 8px; overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.ir-table th { border: 1px solid #034a8a; padding: 12px 10px; }
.ir-table td { padding: 10px 8px; }
.ir-table tbody tr:hover { background: #e8f0fa; }
.ir-table td:first-child { background: #f0f4f8; }
.ir-table-badge { padding: 8px 20px; border-radius: 6px; }

.ir-product-img { padding: 60px 40px; }
.ir-product-img img { max-height: 240px; border-radius: 8px; }
.ir-features-row { border-top: 2px solid #e8eaf6; padding-top: 24px; margin-top: 10px; }
.ir-feat h4 { margin-bottom: 6px; }

.ir-specs-section .ir-specs-grid { gap: 30px; }
.ir-specs-block, .ir-apps-block {
    background: #f8fafd; border-radius: 14px; padding: 30px;
    border: 1px solid #e8eaf6;
}
.ir-specs-table tr:last-child { border-bottom: none; }
.ir-specs-table td:first-child { font-size: 15px; }
.ir-specs-table td:nth-child(2) { font-weight: 700; color: #02376b; }
.ir-apps-block ul li { padding: 12px 0; border-bottom: 1px solid #e4e8ee; }
.ir-apps-block ul li:last-child { border-bottom: none; }
.ir-apps-block ul li i { font-size: 18px; }

@media (max-width: 600px) {
    .ir-product-img { padding: 30px 16px; }
    .ir-specs-block, .ir-apps-block { padding: 20px; }
}


/* IR Balloon Image below table */
.ir-balloon-img {
    margin-top: 30px; text-align: center;
    background: #f8fafd; border-radius: 12px; padding: 30px;
}
.ir-balloon-img > img {
    max-width: 100%; max-height: 220px; object-fit: contain; margin-bottom: 20px;
}
.ir-balloon-img .ir-features-row {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
    border-top: 2px solid #e8eaf6; padding-top: 16px;
}


/* IR Ordering Title Center */
.ir-ordering .section-title { text-align: center; display: block; }
.ir-ordering .section-title::after { margin: 8px auto 0; }


/* IR Apps with Icon Circles */
.ir-apps-list { display: flex; flex-direction: column; gap: 20px; }
.ir-app-item {
    display: flex; align-items: flex-start; gap: 14px;
}
.ir-app-icon {
    width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0;
    background: #e8f6f8; color: #0e99ac; font-size: 18px;
    display: flex; align-items: center; justify-content: center;
}
.ir-app-item p { font-size: 14px; color: #444; line-height: 1.6; }

/* IR Specs Table - unique icons */
.ir-specs-table td:first-child i { color: #0e99ac; font-size: 16px; }


/* IR Page Fixes */
.ir-ordering .section-title::after { display: none; }
.ir-ordering .section-title { margin-bottom: 24px; font-size: 28px; }
.ir-table-badge {
    background: #02376b; color: #fff; padding: 10px 24px;
    border-radius: 6px 6px 0 0; font-size: 15px; font-weight: 700;
    margin-bottom: 0; display: inline-block;
    letter-spacing: 0.5px;
}
.ir-table-block { margin-bottom: 0; }
.ir-specs-section { padding-top: 40px; }
.ir-specs-block, .ir-apps-block { margin-top: 0; }


/* IR Table Badge - Simple */
.ir-table-badge {
    background: transparent; color: #02376b; padding: 0 0 8px;
    border-radius: 0; font-size: 16px; font-weight: 700;
    margin-bottom: 12px; display: inline-block;
    letter-spacing: 0; border-bottom: 2px solid #02376b;
}


.ir-ordering .section-title { margin-bottom: 36px; }


/* IR Quality Statement */
.ir-quality {
    padding: 50px 40px; text-align: center;
    background: linear-gradient(135deg, #e8f4f8, #f0f6fa);
    border-top: 1px solid #dce8ee;
}
.ir-quality p {
    font-size: 17px; color: #444; line-height: 1.7;
    max-width: 800px; margin: 0 auto; font-style: italic;
}

@media (max-width: 600px) {
    .ir-quality { padding: 30px 16px; }
    .ir-quality p { font-size: 14px; }
}


.ir-quality {
    background: url('../images/radiology-last-bg.jpg') center/cover no-repeat;
    position: relative;
}
.ir-quality::before {
    content: ''; position: absolute; inset: 0;
    background: rgba(255,255,255,0.85);
}
.ir-quality p { position: relative; z-index: 2; }


.ir-quality { min-height: 200px; padding: 80px 40px; display: flex; align-items: center; justify-content: center; }


/* IR Banner */
.ir-banner { min-height: 400px; }
.ir-banner-tagline {
    font-size: 18px; font-weight: 700; color: #0e99ac;
    letter-spacing: 3px; margin: 20px 0 30px;
}
.ir-banner-features {
    display: flex; gap: 30px; justify-content: center; flex-wrap: wrap;
}
.ir-bf-item {
    display: flex; align-items: flex-start; gap: 10px; text-align: left;
}
.ir-bf-icon {
    width: 40px; height: 40px; border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.4); flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; color: #0e99ac;
}
.ir-bf-item strong {
    display: block; font-size: 14px; color: #fff;
}
.ir-bf-item span {
    font-size: 12px; color: rgba(255,255,255,0.75); line-height: 1.3;
}

@media (max-width: 600px) {
    .ir-banner { min-height: 320px; }
    .ir-banner-tagline { font-size: 14px; letter-spacing: 2px; margin: 14px 0 20px; }
    .ir-banner-features { gap: 16px; }
    .ir-bf-icon { width: 34px; height: 34px; font-size: 14px; }
    .ir-bf-item strong { font-size: 12px; }
    .ir-bf-item span { font-size: 11px; }
}


.ir-bf-icon { color: #fff; }
.ir-bf-item { white-space: nowrap; }
.ir-bf-item strong { white-space: nowrap; }
.ir-bf-item span { white-space: nowrap; }


.ir-banner-features { gap: 20px; }


.ir-banner-tagline { color: #5ee6f5; }


/* IR Banner Split Layout */
.ir-banner-split {
    display: flex; align-items: center; justify-content: center;
    gap: 40px; width: 100%; max-width: 1000px;
}
.ir-banner-left, .ir-banner-right {
    flex: 1; text-align: center;
}
.ir-banner-left h1, .ir-banner-right h1 {
    font-size: 38px; margin-bottom: 8px;
}
.ir-banner-right sup { font-size: 16px; }
.ir-banner-sub {
    font-size: 16px; color: rgba(255,255,255,0.85); margin-bottom: 14px; line-height: 1.4;
}
.ir-banner-divider {
    width: 2px; height: 180px; background: rgba(255,255,255,0.3); flex-shrink: 0;
}
.ir-catalog-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 22px; background: transparent; color: #fff;
    border: 2px solid rgba(255,255,255,0.6); border-radius: 6px;
    font-size: 14px; font-weight: 600; text-decoration: none;
    margin-top: 16px; transition: all .2s;
}
.ir-catalog-btn:hover { background: rgba(255,255,255,0.15); border-color: #fff; }
.ir-banner-split .ir-banner-tagline { margin: 12px 0 0; font-size: 14px; letter-spacing: 2px; }

@media (max-width: 768px) {
    .ir-banner-split { flex-direction: column; gap: 24px; }
    .ir-banner-divider { width: 80px; height: 2px; }
    .ir-banner-left h1, .ir-banner-right h1 { font-size: 28px; }
    .ir-banner-sub { font-size: 14px; }
}


.ir-catalog-btn {
    background: #fff; color: #02376b; border: 2px solid #fff;
}
.ir-catalog-btn:hover { background: rgba(255,255,255,0.9); color: #02376b; border-color: #fff; }
.ir-catalog-btn i { color: #02376b; }


/* Career Form */
.career-form-section {
    padding: 60px 40px; background: #f5f7fa;
}
.career-form-wrapper {
    max-width: 800px; margin: 0 auto; background: #fff;
    border-radius: 14px; padding: 40px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.07);
    border-top: 4px solid #7e287e;
}
.career-form-wrapper .section-title {
    text-align: center; margin-bottom: 30px;
}
.career-form-row {
    display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px;
}
.career-form-group {
    display: flex; align-items: center; gap: 12px;
    border: 1px solid #e0e0e0; border-radius: 8px; padding: 14px 16px;
    transition: border-color .2s;
}
.career-form-group:focus-within { border-color: #7e287e; }
.career-form-group i { color: #7e287e; font-size: 16px; flex-shrink: 0; }
.career-form-group input {
    width: 100%; border: none; outline: none; font-size: 15px;
    font-family: 'Segoe UI', Arial, sans-serif; color: #333; background: transparent;
}
.career-form-group input::placeholder { color: #999; }
.career-form-group.full-width { grid-column: 1 / -1; }
.career-file-group { padding: 0; border: 2px dashed #e0e0e0; }
.career-file-group:focus-within { border-color: #7e287e; }
.career-file-label {
    display: flex; align-items: center; gap: 12px; padding: 14px 16px;
    cursor: pointer; width: 100%;
}
.career-file-label input[type="file"] { display: none; }
.career-file-text { font-size: 15px; color: #999; }
.career-submit-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 14px 36px; background: #7e287e; color: #fff; border: none;
    border-radius: 6px; font-size: 15px; font-weight: 700; cursor: pointer;
    margin-top: 10px; transition: background .2s;
}
.career-submit-btn:hover { background: #6b2260; }

@media (max-width: 600px) {
    .career-form-section { padding: 30px 16px; }
    .career-form-wrapper { padding: 24px 20px; }
    .career-form-row { grid-template-columns: 1fr; gap: 12px; }
    .career-form-group.full-width { grid-column: auto; }
}


/* Media Page */
.media-section {
    padding: 60px 40px; text-align: center; background: #f5f7fa;
}
.media-img-wrapper {
    max-width: 900px; margin: 0 auto;
}
.media-img-wrapper img {
    width: 100%; border-radius: 12px;
    box-shadow: 0 6px 30px rgba(0,0,0,0.1);
}

@media (max-width: 600px) {
    .media-section { padding: 30px 16px; }
}


/* Nested Sub-Dropdown (Desktop) */
.dropdown-submenu {
    position: relative;
}
.dropdown-submenu > a {
    display: flex; align-items: center; justify-content: space-between;
    padding: 10px 20px; color: #333 !important; font-size: 14px !important;
    font-weight: 500; transition: background .2s;
}
.dropdown-submenu > a:hover { background: #e8eaf6; color: #7e287e !important; }
.dropdown-submenu-menu {
    position: absolute; left: 100%; top: 0; min-width: 180px;
    background: #fff; border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    padding: 10px 0; opacity: 0; visibility: hidden;
    transform: translateX(10px); transition: all .3s; z-index: 60;
}
.dropdown-submenu:hover .dropdown-submenu-menu {
    opacity: 1; visibility: visible; transform: translateX(0);
}
.dropdown-submenu-menu a {
    display: block; padding: 10px 20px; color: #333 !important;
    font-size: 14px !important; font-weight: 500; transition: background .2s;
}
.dropdown-submenu-menu a:hover { background: #e8eaf6; color: #7e287e !important; }

/* Mobile Sub-Dropdown */
.mobile-sub-dropdown { padding-left: 16px; }
.mobile-sub-dropdown > a {
    font-size: 15px !important; opacity: 0.85;
    display: inline-flex; align-items: center; gap: 6px;
}
.mobile-sub-dropdown-menu { display: none; padding-left: 16px; margin-top: 8px; }
.mobile-sub-dropdown.open .mobile-sub-dropdown-menu { display: flex; flex-direction: column; gap: 8px; }
.mobile-sub-dropdown-menu a { font-size: 14px !important; opacity: 0.75; }


/* ENOVO Page */
.eno-glance {
    padding: 40px 40px 20px; background: #fff;
}
.eno-glance-inner {
    max-width: 1100px; margin: 0 auto; background: #f0f4f8;
    border-radius: 14px; padding: 30px; border: 2px solid #02376b;
}
.eno-glance-badge {
    display: inline-flex; align-items: center; gap: 10px;
    background: #02376b; color: #fff; padding: 10px 20px;
    border-radius: 8px; font-size: 14px; font-weight: 700;
    margin-bottom: 20px;
}
.eno-glance-badge i { font-size: 20px; }
.eno-glance-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;
}
.eno-glance-item {
    text-align: center; padding: 16px 12px;
    background: #fff; border-radius: 10px;
    border: 1px solid #e0e8f0;
}
.eno-glance-item i { font-size: 24px; color: #02376b; margin-bottom: 8px; }
.eno-glance-item h4 { font-size: 13px; font-weight: 700; color: #02376b; margin-bottom: 6px; }
.eno-glance-item p { font-size: 12px; color: #555; line-height: 1.5; }

/* ENOVO Sections */
.eno-sections {
    padding: 30px 40px; background: #fff;
}
.eno-sections-alt { background: #f5f7fa; }
.eno-sections-inner {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    max-width: 1100px; margin: 0 auto;
}
.eno-four-grid { grid-template-columns: repeat(2, 1fr); }

/* ENOVO Card */
.eno-card {
    background: #fff; border-radius: 12px; border: 1px solid #e0e8f0;
    overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}
.eno-sections-alt .eno-card { background: #fff; }
.eno-card-header {
    background: #f0f4f8; padding: 14px 20px;
    font-size: 14px; font-weight: 800; color: #02376b;
    text-transform: uppercase; letter-spacing: 0.5px;
    display: flex; align-items: center; gap: 10px;
    border-bottom: 2px solid #02376b;
}
.eno-card-header span {
    width: 28px; height: 28px; border-radius: 50%;
    background: #02376b; color: #fff; font-size: 13px; font-weight: 700;
    display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.eno-card-body {
    padding: 20px;
}
.eno-card-body h5 {
    font-size: 14px; font-weight: 700; color: #02376b; margin: 12px 0 6px;
}
.eno-card-body h5:first-child { margin-top: 0; }
.eno-card-body p {
    font-size: 13px; color: #444; line-height: 1.6; margin-bottom: 8px;
}
.eno-card-body ul {
    list-style: disc; padding-left: 18px; margin: 8px 0;
}
.eno-card-body ul li {
    font-size: 13px; color: #444; line-height: 1.6; padding: 2px 0;
}
.eno-sub-list {
    list-style: none !important; padding-left: 12px !important; margin-top: 4px !important;
}
.eno-sub-list li::before { content: "– "; color: #666; }
.eno-note {
    font-size: 12px !important; color: #666 !important; font-style: italic;
    margin-top: 12px !important; padding-top: 10px; border-top: 1px solid #eee;
}

/* Numbered list */
.eno-numbered {
    list-style: none; padding-left: 0 !important; counter-reset: eno-counter;
}
.eno-numbered li {
    counter-increment: eno-counter; padding-left: 28px !important; position: relative;
    margin-bottom: 6px;
}
.eno-numbered li::before {
    content: counter(eno-counter);
    position: absolute; left: 0; top: 2px;
    width: 20px; height: 20px; border-radius: 50%;
    background: #02376b; color: #fff; font-size: 11px; font-weight: 700;
    display: flex; align-items: center; justify-content: center;
}

/* Hierarchy */
.eno-hierarchy { margin-top: 10px; }
.eno-h-item {
    display: flex; align-items: center; gap: 10px;
    padding: 8px 12px; border: 1px solid #e0e8f0; border-radius: 6px;
    margin-bottom: 6px; font-size: 13px; color: #333;
}
.eno-h-item span {
    width: 22px; height: 22px; border-radius: 4px;
    background: #02376b; color: #fff; font-size: 11px; font-weight: 700;
    display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
}

/* Alert & Check lists */
.eno-alert-list, .eno-check-list {
    list-style: none !important; padding-left: 0 !important;
}
.eno-alert-list li, .eno-check-list li {
    display: flex; align-items: flex-start; gap: 8px; padding: 4px 0 !important;
}
.eno-alert-list li i { color: #d32f2f; font-size: 14px; margin-top: 2px; flex-shrink: 0; }
.eno-check-list li i { color: #2e7d32; font-size: 14px; margin-top: 2px; flex-shrink: 0; }

/* Conclusion badge */
.eno-conclusion-badge {
    display: flex; align-items: center; gap: 12px;
    background: #e8f5e9; border-radius: 8px; padding: 14px;
    margin-top: 12px; border: 1px solid #c8e6c9;
}
.eno-conclusion-badge i { font-size: 28px; color: #2e7d32; flex-shrink: 0; }
.eno-conclusion-badge p { font-size: 12px; color: #2e7d32; font-weight: 600; margin: 0 !important; }

/* Follow-up Timeline */
.eno-timeline {
    display: flex; justify-content: space-between; align-items: center;
    gap: 10px; padding: 10px 0; position: relative;
}
.eno-timeline::before {
    content: ''; position: absolute; top: 50%; left: 30px; right: 30px;
    height: 3px; background: #02376b; transform: translateY(-8px);
}
.eno-tl-item {
    text-align: center; position: relative; z-index: 2; flex: 1;
}
.eno-tl-item i {
    width: 40px; height: 40px; border-radius: 50%;
    background: #02376b; color: #fff; font-size: 16px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 8px;
}
.eno-tl-item span { font-size: 11px; font-weight: 600; color: #333; }

/* Disclaimer */
.eno-disclaimer {
    padding: 20px 40px; background: #02376b;
}
.eno-disclaimer-inner {
    max-width: 1100px; margin: 0 auto;
    display: flex; align-items: center; gap: 14px; color: #fff;
}
.eno-disclaimer-inner i { font-size: 20px; flex-shrink: 0; opacity: 0.8; }
.eno-disclaimer-inner p { font-size: 13px; opacity: 0.85; line-height: 1.5; flex: 1; margin: 0 !important; }
.eno-disclaimer-inner strong { font-size: 14px; color: #fff; white-space: nowrap; }

@media (max-width: 992px) {
    .eno-glance-grid { grid-template-columns: repeat(2, 1fr); }
    .eno-sections-inner { grid-template-columns: 1fr; }
    .eno-four-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .eno-glance { padding: 20px 16px; }
    .eno-glance-inner { padding: 20px 16px; }
    .eno-glance-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .eno-sections { padding: 20px 16px; }
    .eno-card-body { padding: 16px; }
    .eno-timeline { flex-wrap: wrap; gap: 16px; }
    .eno-timeline::before { display: none; }
    .eno-disclaimer { padding: 16px; }
    .eno-disclaimer-inner { flex-wrap: wrap; gap: 10px; }
}


/* ENOVO Banner */
.eno-banner {
    position: relative; min-height: 380px; display: flex; align-items: center;
    justify-content: center; text-align: center; padding: 60px 40px;
    background: linear-gradient(135deg, #0a1a3a 0%, #0d2b5e 50%, #1a3a6b 100%);
    overflow: hidden;
}
.eno-banner::before {
    content: ''; position: absolute; inset: 0;
    background: radial-gradient(ellipse at 70% 50%, rgba(14,153,172,0.15) 0%, transparent 60%);
}
.eno-banner-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,0.3) 100%);
}
.eno-banner-content {
    position: relative; z-index: 2; color: #fff; max-width: 750px;
}
.eno-banner-content h1 {
    font-size: 32px; font-weight: 800; letter-spacing: 1px; margin-bottom: 8px;
}
.eno-banner-content h2 {
    font-size: 20px; font-weight: 600; color: #4dd0e1; margin-bottom: 16px;
}
.eno-banner-divider {
    width: 60px; height: 3px; background: #4dd0e1; margin: 0 auto 20px; border-radius: 3px;
}
.eno-banner-content > p {
    font-size: 15px; line-height: 1.7; opacity: 0.9; max-width: 600px; margin: 0 auto 30px;
}
.eno-banner-features {
    display: flex; justify-content: center; gap: 40px; flex-wrap: wrap;
}
.eno-bf-item {
    display: flex; align-items: center; gap: 10px; text-align: left;
}
.eno-bf-item i {
    width: 42px; height: 42px; border-radius: 50%;
    border: 2px solid rgba(77,208,225,0.5); display: flex;
    align-items: center; justify-content: center;
    font-size: 16px; color: #4dd0e1; flex-shrink: 0;
}
.eno-bf-item span {
    font-size: 13px; font-weight: 600; color: #fff; line-height: 1.4;
}

@media (max-width: 768px) {
    .eno-banner { min-height: 300px; padding: 40px 20px; }
    .eno-banner-content h1 { font-size: 22px; }
    .eno-banner-content h2 { font-size: 16px; }
    .eno-banner-content > p { font-size: 13px; }
    .eno-banner-features { gap: 20px; }
    .eno-bf-item i { width: 36px; height: 36px; font-size: 14px; }
    .eno-bf-item span { font-size: 12px; }
}
@media (max-width: 480px) {
    .eno-banner { min-height: auto; padding: 36px 16px; }
    .eno-banner-content h1 { font-size: 18px; letter-spacing: 0; }
    .eno-banner-content h2 { font-size: 14px; }
    .eno-banner-features { flex-direction: column; align-items: center; gap: 14px; }
}


/* SINEW Banner */
.sinew-banner {
    position: relative; min-height: 380px; display: flex; align-items: center;
    justify-content: center; text-align: center; padding: 60px 40px;
    background: linear-gradient(135deg, #1a0a3a 0%, #2d1b69 50%, #462c6b 100%);
    overflow: hidden;
}
.sinew-banner::before {
    content: ''; position: absolute; inset: 0;
    background: radial-gradient(ellipse at 30% 50%, rgba(126,40,126,0.2) 0%, transparent 60%);
}
.sinew-banner-content {
    position: relative; z-index: 2; color: #fff; max-width: 750px;
}
.sinew-banner-content h1 {
    font-size: 30px; font-weight: 800; letter-spacing: 0.5px; margin-bottom: 10px; line-height: 1.2; white-space: nowrap;
}
.sinew-banner-content h2 {
    font-size: 18px; font-weight: 700; color: #b388ff; margin-bottom: 16px; letter-spacing: 1px;
}
.sinew-banner-divider {
    width: 60px; height: 3px; background: #b388ff; margin: 0 auto 20px; border-radius: 3px;
}
.sinew-banner-content > p {
    font-size: 15px; line-height: 1.7; opacity: 0.9; max-width: 600px; margin: 0 auto 30px;
}
.sinew-banner-features {
    display: flex; justify-content: center; gap: 40px; flex-wrap: wrap;
}
.sinew-bf-item {
    display: flex; align-items: center; gap: 10px; text-align: left;
}
.sinew-bf-item i {
    width: 42px; height: 42px; border-radius: 50%;
    border: 2px solid rgba(179,136,255,0.5); display: flex;
    align-items: center; justify-content: center;
    font-size: 16px; color: #b388ff; flex-shrink: 0;
}
.sinew-bf-item span {
    font-size: 13px; font-weight: 600; color: #fff; line-height: 1.4;
}

/* SINEW Glance */
.sinew-glance {
    padding: 40px 40px 20px; background: #fff; text-align: center;
}
.sinew-glance .section-title { margin-bottom: 24px; }
.sinew-glance-inner {
    max-width: 1100px; margin: 0 auto; background: #f8f5ff;
    border-radius: 14px; padding: 30px; border: 2px solid #7e287e;
}
.sinew-glance-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;
}
.sinew-glance-item {
    text-align: center; padding: 16px 12px;
    background: #fff; border-radius: 10px; border: 1px solid #e8dff0;
}
.sinew-glance-item i { font-size: 24px; color: #7e287e; margin-bottom: 8px; }
.sinew-glance-item h4 { font-size: 12px; font-weight: 700; color: #7e287e; margin-bottom: 6px; text-transform: uppercase; }
.sinew-glance-item p { font-size: 12px; color: #555; line-height: 1.5; }

/* SINEW Assess Box */
.sinew-assess-box {
    background: #f0f4f8; border-radius: 8px; padding: 14px; margin-top: 12px;
    border: 1px solid #e0e8f0;
}
.sinew-assess-box strong { font-size: 12px; color: #02376b; display: block; margin-bottom: 8px; }
.sinew-assess-items {
    display: flex; flex-wrap: wrap; gap: 8px 16px;
}
.sinew-assess-items span {
    font-size: 12px; color: #444; display: inline-flex; align-items: center; gap: 4px;
}
.sinew-assess-items span i { color: #2e7d32; font-size: 12px; }

@media (max-width: 768px) {
    .sinew-banner { min-height: 300px; padding: 40px 20px; }
    .sinew-banner-content h1 { font-size: 22px; }
    .sinew-banner-content h2 { font-size: 16px; }
    .sinew-banner-content > p { font-size: 13px; }
    .sinew-banner-features { gap: 20px; }
    .sinew-bf-item i { width: 36px; height: 36px; font-size: 14px; }
    .sinew-bf-item span { font-size: 12px; }
    .sinew-glance-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
    .sinew-banner { min-height: auto; padding: 36px 16px; }
    .sinew-banner-content h1 { font-size: 18px; letter-spacing: 0; }
    .sinew-banner-content h2 { font-size: 14px; }
    .sinew-banner-features { flex-direction: column; align-items: center; gap: 14px; }
    .sinew-glance { padding: 20px 16px; }
    .sinew-glance-inner { padding: 20px 16px; }
    .sinew-glance-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
}
