﻿/* ==========================================
   GENIENT ONCOLOGY NGS PRODUCT PAGES
========================================== */

.oncology-hero-copy {
   max-width: 900px;
   margin: 0 auto;
}

.oncology-hero-label,
.oncology-kicker {
   color: var(--primary-color);
   display: inline-block;
   font-family: var(--font-weight-600);
   font-size: 14px;
   letter-spacing: 0;
   margin-bottom: 10px;
   text-transform: uppercase;
}

.oncology-hero-label {
   color: rgba(255, 255, 255, .82);
}

.oncology-intro-card,
.oncology-spec-panel {
   /* background: #fff;
   border-left: 5px solid var(--primary-color); */
   border-radius: 8px;
   /* box-shadow: 0 12px 35px rgba(118, 9, 128, .08); */
   padding: 30px;
}

.oncology-product-image {
   /* background: #fff; */
   /* box-shadow: 0 12px 35px rgba(118, 9, 128, .08); */
   object-fit: cover;
}

.oncology-chip,
.oncology-badge {
   border-radius: 4px;
   display: inline-flex;
   font-family: var(--font-weight-600);
   font-size: 12px;
   line-height: 1;
   margin: 0 6px 8px 0;
   padding: 8px 10px;
}

.oncology-chip {
   border: 1px solid rgba(118, 9, 128, .18);
   color: var(--secondary-color);
}

.oncology-badge {
   background: rgba(239, 65, 14, .1);
   color: var(--primary-color);
}

.oncology-badge.secondary {
   background: rgba(118, 9, 128, .1);
   color: var(--secondary-color);
}

.oncology-badge-row {
   margin: 14px 0 8px;
}

.oncology-workflow-card {
   border-radius: 8px;
   height: 100%;
   padding: 28px;
}

.oncology-workflow-card i {
   color: var(--primary-color);
   font-size: 34px;
   margin-bottom: 18px;
}

.oncology-detail-list {
   list-style: none;
   margin: 0;
   padding: 0;
}

.oncology-detail-list li {
   color: var(--text-color);
   font-family: var(--font-weight-400);
   font-size: 16px;
   line-height: 26px;
   margin-bottom: 12px;
   padding-left: 28px;
   position: relative;
}

.oncology-detail-list li::before {
   color: var(--primary-color);
   content: "\f058";
   font-family: "Font Awesome 7 Free";
   font-weight: 900;
   left: 0;
   position: absolute;
   top: 0;
}

.oncology-spec-panel h3 {
   color: var(--secondary-color);
   font-family: var(--font-weight-700);
   font-size: 24px;
   margin-bottom: 22px;
}

.oncology-spec-list {
   display: grid;
   gap: 0;
   margin: 0;
}

.oncology-spec-list dt,
.oncology-spec-list dd {
   border-bottom: 1px solid rgba(118, 9, 128, .1);
   margin: 0;
   padding: 12px 0;
}

.oncology-spec-list dt {
   color: var(--secondary-color);
   font-family: var(--font-weight-600);
}

.oncology-spec-list dd {
   color: var(--text-color);
}

.oncology-cta-panel {
   align-items: center;
   border-radius: 8px;
   display: flex;
   gap: 24px;
   justify-content: space-between;
   padding: 34px;
}

.oncology-cta-panel .btn {
   flex: 0 0 auto;
}

.oncology-related-grid {
   display: grid;
   gap: 12px;
   grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oncology-related-link {
   align-items: center;
   background: #fff;
   border: 1px solid rgba(118, 9, 128, .12);
   border-radius: 8px;
   color: var(--text-color);
   display: flex;
   font-family: var(--font-weight-600);
   gap: 12px;
   justify-content: space-between;
   line-height: 1.35;
   min-height: 62px;
   padding: 14px 16px;
   text-decoration: none;
   transition: border-color .2s ease, color .2s ease, transform .2s ease;
}

.oncology-related-link i {
   color: var(--primary-color);
   flex: 0 0 auto;
}

.oncology-related-link:hover,
.oncology-related-link:focus {
   border-color: rgba(239, 65, 14, .34);
   color: var(--primary-color);
   transform: translateY(-2px);
}

.oncology-assay-card .blog__section {
   display: flex;
   flex-direction: column;
   min-height: 100%;
}

.oncology-assay-card .blog__img {
   align-items: center;
   background: #fff;
   display: flex;
   justify-content: center;
}

.oncology-assay-card .blog__img img {
   height: 185px;
   object-fit: contain;
   padding: 18px;
}

.oncology-assay-card p {
   flex: 1;
}

.oncology-group-section {
   position: relative;
}

@media (min-width: 768px) {
   .oncology-spec-list {
      grid-template-columns: 165px minmax(0, 1fr);
   }

   .oncology-spec-list dt {
      padding-right: 18px;
   }
}

@media (max-width: 991px) {
   .oncology-cta-panel {
      align-items: flex-start;
      flex-direction: column;
   }

   .oncology-related-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}

@media (max-width: 767px) {
   .oncology-intro-card,
   .oncology-spec-panel,
   .oncology-cta-panel {
      padding: 22px;
   }

   .oncology-related-grid {
      grid-template-columns: 1fr;
   }

   .oncology-assay-card .blog__img img {
      height: 150px;
   }
}

/* ==========================================================================
   PREMIUM HIGH-TECH ONCOLOGY NGS HERO DESIGN
   ========================================================================== */

/* Main Hero Section */
.top_heading.oncology-product-hero {
    background-color: #f5ede0;
    background-image: 
        radial-gradient(circle at 9% 12%, rgba(168, 216, 238, .56) 0%, transparent 31%),
        radial-gradient(circle at 78% 7%, rgba(232, 215, 229, .72) 0%, transparent 34%),
        radial-gradient(circle at 88% 82%, rgba(245, 196, 154, .64) 0%, transparent 35%),
        linear-gradient(135deg, #faf6ee 0%, #f5ede0 52%, #ede0d4 100%);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 100px 0;
    border-bottom: 2px solid transparent;
    border-image: linear-gradient(90deg, rgba(72, 5, 67, .22), rgba(240, 120, 32, .42), rgba(43, 158, 212, .26)) 1;
    overflow: hidden;
    position: relative;
}

/* Clear default gray overlay */
.top_heading.oncology-product-hero::after {
    display: none;
}

/* Asymmetric Left-Aligned Layout Content Container */
.oncology-product-hero .oncology-hero-copy {
    text-align: left;
    max-width: 780px;
    margin: 0;
    position: relative;
    z-index: 2;
}

/* Glowing DNA Double Helix Icon Floating on the Right */
.top_heading.oncology-product-hero::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 10%;
    width: 250px;
    height: 260px;
    margin-top: -130px;
    background-image: url('../images/vactor/dna-svgrepo-com.svg');
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0.22;
    filter: hue-rotate(18deg) saturate(.85) drop-shadow(0 22px 38px rgba(72, 5, 67, .16));
    animation: dna-hologram-float 8s ease-in-out infinite alternate;
    pointer-events: none;
    z-index: 1;
}

/* Technical Dashed Rotating Orbit Background Ring */
.top_heading.oncology-product-hero .container::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 7%;
    width: 320px;
    height: 320px;
    margin-top: -160px;
    border: 1px dashed rgba(72, 5, 67, .15);
    border-radius: 50%;
    animation: spin-orbit-clockwise 30s linear infinite;
    pointer-events: none;
    z-index: 0;
}

@keyframes dna-hologram-float {
    0% {
        transform: translateY(-8px) rotate(-1deg);
        filter: drop-shadow(0 0 15px rgba(118, 9, 128, 0.4));
    }
    100% {
        transform: translateY(8px) rotate(3deg);
        filter: drop-shadow(0 0 25px rgba(239, 65, 14, 0.55));
    }
}

@keyframes spin-orbit-clockwise {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Title Styling - Brand Color Accented Left Boundary */
.oncology-product-hero h1.heading {
    font-family: var(--font-weight-700);
    font-size: 54px;
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 20px;
    padding-left: 24px;
    border-left: 5px solid;
    border-image: linear-gradient(to bottom, #760980, #EF410E) 1 100%;
    background: linear-gradient(135deg, #2b0a29 18%, #480543 58%, #a5501f 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;
}

/* Modern Pill Badge for label */
.oncology-product-hero .oncology-hero-label {
    background: rgba(255, 255, 255, .58);
    border: 1px solid rgba(72, 5, 67, .16);
    color: #480543 !important;
    border-radius: 4px;
    padding: 6px 16px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
    margin-left: 24px;
    margin-bottom: 18px;
    backdrop-filter: blur(10px);
    box-shadow: 0 14px 34px rgba(72, 5, 67, .08);
}

/* Text Description */
.oncology-product-hero p {
    font-size: 16px;
    line-height: 1.7;
    color: rgba(43, 10, 41, .72) !important;
    max-width: 720px;
    margin: 0 0 0 24px !important;
    text-align: left !important;
    text-shadow: none;
}

/* Responsive Overrides */
@media (max-width: 991px) {
    .top_heading.oncology-product-hero::before,
    .top_heading.oncology-product-hero .container::before {
        display: none; /* Hide graphics on mobile for better text space */
    }
    
    .oncology-product-hero .oncology-hero-copy {
        text-align: center;
        margin: 0 auto;
    }
    
    .oncology-product-hero h1.heading {
        border-left: none;
        padding-left: 0;
        font-size: 40px;
        background: linear-gradient(135deg, #2b0a29 18%, #480543 58%, #a5501f 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    
    .oncology-product-hero .oncology-hero-label {
        margin-left: 0;
    }
    
    .oncology-product-hero p {
        margin: 0 auto !important;
        text-align: center !important;
    }
}

@media (max-width: 767px) {
    .top_heading.oncology-product-hero {
        padding: 70px 0;
    }
    
    .oncology-product-hero h1.heading {
        font-size: 32px;
    }
    
    .oncology-product-hero p {
        font-size: 15px;
        line-height: 1.5;
    }
}

/* ==========================================================================
   LIGHT THEME MODIFIER (Add 'light-theme' class to apply)
   ========================================================================== */
.top_heading.oncology-product-hero.light-theme {
    background-color: #f7f9fc;
    background-image: 
        radial-gradient(circle at 10% 25%, rgba(118, 9, 128, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(239, 65, 14, 0.06) 0%, transparent 45%),
        repeating-linear-gradient(0deg, rgba(118, 9, 128, 0.015) 0px, rgba(118, 9, 128, 0.015) 1px, transparent 1px, transparent 36px),
        repeating-linear-gradient(90deg, rgba(118, 9, 128, 0.015) 0px, rgba(118, 9, 128, 0.015) 1px, transparent 1px, transparent 36px),
        linear-gradient(135deg, #ffffff 0%, #f6f8fb 100%);
    border-bottom: 1px solid rgba(118, 9, 128, 0.08);
    border-image: none;
}

.top_heading.oncology-product-hero.light-theme::before {
    opacity: 0.9;
    filter: drop-shadow(0 0 15px rgba(118, 9, 128, 0.2));
}

.top_heading.oncology-product-hero.light-theme .container::before {
    border: 1px dashed rgba(118, 9, 128, 0.12);
}

.oncology-product-hero.light-theme h1.heading {
    background: linear-gradient(135deg, #1f0224 40%, #520659 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;
}

.oncology-product-hero.light-theme .oncology-hero-label {
    background: rgba(118, 9, 128, 0.05);
    border: 1px solid rgba(118, 9, 128, 0.15);
    color: #760980 !important;
    box-shadow: none;
    backdrop-filter: none;
}

.oncology-product-hero.light-theme p {
    color: #4a4a4a !important;
}

@media (max-width: 767px) {
    .top_heading.oncology-product-hero.light-theme {
        padding: 70px 0;
    }
}

/* ==========================================================================
   LILAC PASTEL THEME (PANTONE 13-3804 / 13-3820 / 14-3905 / 14-3812)
   Add 'lilac-theme' class to hero section to apply.
   ========================================================================== */
.top_heading.oncology-product-hero.lilac-theme {
    background-color: #FAFAFA;
    background-image: 
        radial-gradient(circle at 10% 25%, rgba(205, 185, 224, 0.5) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(246, 214, 230, 0.45) 0%, transparent 45%),
        repeating-linear-gradient(0deg, rgba(75, 46, 131, 0.015) 0px, rgba(75, 46, 131, 0.015) 1px, transparent 1px, transparent 36px),
        repeating-linear-gradient(90deg, rgba(75, 46, 131, 0.015) 0px, rgba(75, 46, 131, 0.015) 1px, transparent 1px, transparent 36px),
        linear-gradient(135deg, #FAFAFA 0%, #E9E2F2 50%, #D4CCE8 100%);
    border-bottom: 2px solid transparent;
    border-image: linear-gradient(90deg, #4B2E83, #CDB9E0, #4B2E83) 1;
}

/* Float DNA vector on right with soft lilac drop-shadow */
.top_heading.oncology-product-hero.lilac-theme::before {
    opacity: 0.9;
    filter: drop-shadow(0 0 20px rgba(75, 46, 131, 0.25));
}

/* Dashed Orbit Ring in soft purple */
.top_heading.oncology-product-hero.lilac-theme .container::before {
    border: 1.5px dashed rgba(75, 46, 131, 0.15);
}

/* Lilac theme typography (Deep Purple & Indigo Navy) */
.oncology-product-hero.lilac-theme h1.heading {
    background: linear-gradient(135deg, #2D2F6F 0%, #4B2E83 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    border-left-width: 5px;
    border-image: linear-gradient(to bottom, #4B2E83, #CDB9E0) 1 100%;
    text-shadow: none;
}

/* Lilac theme tag badge */
.oncology-product-hero.lilac-theme .oncology-hero-label {
    background: rgba(205, 185, 224, 0.35);
    border: 1px solid rgba(75, 46, 131, 0.2);
    color: #4B2E83 !important; /* PANTONE Deep Purple contrast */
    box-shadow: 0 4px 15px rgba(75, 46, 131, 0.08);
}

/* Lilac theme paragraph description (PANTONE Charcoal contrast) */
.oncology-product-hero.lilac-theme p {
    color: #333333 !important; /* PANTONE Charcoal contrast */
}

@media (max-width: 767px) {
    .top_heading.oncology-product-hero.lilac-theme {
        padding: 70px 0;
    }
}

/* ==========================================================================
   LIGHT BLUE THEME (Clinical & Advanced Biotech Blue Layout)
   Add 'blue-theme' class to hero section to apply.
   ========================================================================== */
.top_heading.oncology-product-hero.blue-theme {
    background-color: #FAFAFA;
    background-image: 
        radial-gradient(circle at 10% 25%, rgba(15, 76, 129, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(50, 130, 184, 0.06) 0%, transparent 45%),
        repeating-linear-gradient(0deg, rgba(15, 76, 129, 0.015) 0px, rgba(15, 76, 129, 0.015) 1px, transparent 1px, transparent 36px),
        repeating-linear-gradient(90deg, rgba(15, 76, 129, 0.015) 0px, rgba(15, 76, 129, 0.015) 1px, transparent 1px, transparent 36px),
        linear-gradient(135deg, #FAFAFA 0%, #E2EAF4 50%, #C9D6DF 100%);
    border-bottom: 2px solid transparent;
    border-image: linear-gradient(90deg, #0F4C81, #3282B8, #0F4C81) 1;
}

/* Float DNA vector on right, shifting colors to blue/teal via hue-rotate filter */
.top_heading.oncology-product-hero.blue-theme::before {
    opacity: 0.95;
    filter: hue-rotate(185deg) brightness(0.9) drop-shadow(0 0 20px rgba(15, 76, 129, 0.25));
}

/* Dashed Orbit Ring in soft steel blue */
.top_heading.oncology-product-hero.blue-theme .container::before {
    border: 1.5px dashed rgba(15, 76, 129, 0.15);
}

/* Blue theme typography (Deep Navy Slate & Cobalt) */
.oncology-product-hero.blue-theme h1.heading {
    background: linear-gradient(135deg, #1B262C 0%, #0F4C81 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    border-left-width: 5px;
    border-image: linear-gradient(to bottom, #0F4C81, #3282B8) 1 100%;
    text-shadow: none;
}

/* Blue theme tag badge */
.oncology-product-hero.blue-theme .oncology-hero-label {
    background: rgba(15, 76, 129, 0.08);
    border: 1px solid rgba(15, 76, 129, 0.2);
    color: #0F4C81 !important;
    box-shadow: 0 4px 15px rgba(15, 76, 129, 0.06);
}

/* Blue theme paragraph description */
.oncology-product-hero.blue-theme p {
    color: #2D3748 !important; /* Slate gray contrast */
}

@media (max-width: 767px) {
    .top_heading.oncology-product-hero.blue-theme {
        padding: 70px 0;
    }
}

/* Final UN:BLOC-inspired product hero override */
.page_warp > .top_heading.oncology-product-hero {
    background-color: #f5ede0 !important;
    background-image:
        radial-gradient(circle at 9% 12%, rgba(168, 216, 238, .56) 0%, transparent 31%),
        radial-gradient(circle at 78% 7%, rgba(232, 215, 229, .72) 0%, transparent 34%),
        radial-gradient(circle at 88% 82%, rgba(245, 196, 154, .64) 0%, transparent 35%),
        linear-gradient(135deg, #faf6ee 0%, #f5ede0 52%, #ede0d4 100%) !important;
    border-image: linear-gradient(90deg, rgba(72, 5, 67, .22), rgba(240, 120, 32, .42), rgba(43, 158, 212, .26)) 1 !important;
}

.page_warp > .top_heading.oncology-product-hero::before {
    opacity: .22 !important;
    filter: hue-rotate(18deg) saturate(.85) drop-shadow(0 22px 38px rgba(72, 5, 67, .16)) !important;
}

.page_warp > .top_heading.oncology-product-hero .container::before {
    border-color: rgba(72, 5, 67, .15) !important;
}

.page_warp > .oncology-product-hero h1.heading {
    background: linear-gradient(135deg, #2b0a29 18%, #480543 58%, #a5501f 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    text-shadow: none !important;
}

.page_warp > .oncology-product-hero .oncology-hero-label {
    background: rgba(255, 255, 255, .58) !important;
    border-color: rgba(72, 5, 67, .16) !important;
    box-shadow: 0 14px 34px rgba(72, 5, 67, .08) !important;
    color: #480543 !important;
}

.page_warp > .oncology-product-hero p {
    color: rgba(43, 10, 41, .72) !important;
}

.oncology-cta-panel.top_heading {
    min-height: auto !important;
    overflow: hidden;
    text-align: left !important;
}

.oncology-cta-panel.top_heading::before,
.oncology-cta-panel.top_heading::after,
.oncology-cta-panel.top_heading .container::before,
.oncology-cta-panel.top_heading h1::before,
.oncology-cta-panel.top_heading h2::before,
.oncology-cta-panel.top_heading h3::before {
    content: none !important;
    display: none !important;
}

.oncology-cta-panel.top_heading h2,
.oncology-cta-panel.top_heading h3,
.oncology-cta-panel.top_heading p {
    background: none !important;
    border-left: 0 !important;
    color: var(--text-color) !important;
    font-size: inherit;
    padding-left: 0 !important;
    text-align: left !important;
    -webkit-text-fill-color: currentColor !important;
}

.oncology-cta-panel.top_heading .oncology-hero-label {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    margin-left: 0 !important;
    padding: 0 !important;
}

/* fastGEN product pages - clean product-detail layout */
.fastgen-product-page .fastgen-overview-section,
.fastgen-product-page .fastgen-detail-section,
.fastgen-product-page .fastgen-resource-section,
.fastgen-product-page .fastgen-contact-section,
.fastgen-product-page .fastgen-related-section {
    overflow: hidden;
    position: relative;
}

.fastgen-product-page .fastgen-overview-section {
    background: linear-gradient(180deg, #fff 0%, #fbf7f2 100%);
    padding: 74px 0 52px;
}

.fastgen-product-page .fastgen-overview-layout {
    align-items: center;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 1.04fr) minmax(320px, .82fr);
}

.fastgen-product-page .fastgen-overview-copy {
    max-width: 760px;
}

.fastgen-product-page .fastgen-overview-copy .heading-md {
    color: var(--secondary-color);
    font-family: var(--font-weight-700);
    font-size: 34px;
    line-height: 1.2;
}

.fastgen-product-page .fastgen-overview-copy p {
    font-size: 17px;
    line-height: 1.78;
    margin-bottom: 0;
}

.fastgen-product-page .fastgen-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.fastgen-product-page .fastgen-chip-row span {
    background: rgba(255, 255, 255, .72);
    border-radius: 4px;
    color: var(--secondary-color);
    font-family: var(--font-weight-600);
    font-size: 13px;
    line-height: 1;
    padding: 10px 12px;
}

.fastgen-product-page .fastgen-product-media {
    align-items: center;
    /* background:
        linear-gradient(135deg, rgba(118, 9, 128, .07), rgba(239, 65, 14, .05)),
        #fff; */
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 350px;
    padding: 28px;
}

.fastgen-product-page .fastgen-product-media img {
    height: auto;
    max-height: 340px;
    max-width: 100%;
    object-fit: contain;
}

.fastgen-product-page .fastgen-fact-strip {
    background: rgba(255, 255, 255, .92);
    border-radius: 8px;
    box-shadow: 0 16px 42px rgba(72, 5, 67, .07);
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-top: 40px;
    overflow: hidden;
}

.fastgen-product-page .fastgen-fact-strip div {
    min-height: 88px;
    padding: 18px 20px;
    position: relative;
}

.fastgen-product-page .fastgen-fact-strip div + div::before {
    background: rgba(118, 9, 128, .1);
    content: "";
    height: 42px;
    left: 0;
    position: absolute;
    top: 23px;
    width: 1px;
}

.fastgen-product-page .fastgen-fact-strip span {
    color: rgba(68, 68, 68, .72);
    display: block;
    font-family: var(--font-weight-600);
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.fastgen-product-page .fastgen-fact-strip strong {
    color: var(--secondary-color);
    display: block;
    font-family: var(--font-weight-700);
    font-size: 18px;
    line-height: 1.25;
}

.fastgen-product-page .fastgen-detail-section {
    background: #fff;
    padding: 66px 0 60px;
}

.fastgen-product-page .fastgen-section-heading {
    margin: 0 auto 34px;
    max-width: 840px;
}

.fastgen-product-page .fastgen-section-heading .heading {
    font-size: 42px;
}

.fastgen-product-page .fastgen-section-heading p {
    color: var(--text-color);
    font-size: 17px;
    line-height: 1.65;
    margin: 0;
}

.fastgen-product-page .fastgen-detail-layout {
    align-items: start;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
}

.fastgen-product-page .fastgen-benefit-list {
    counter-reset: benefit;
    list-style: none;
    margin: 0;
    padding: 0;
}

.fastgen-product-page .fastgen-benefit-list li {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: 46px minmax(0, 1fr);
    padding: 14px 0;
}

.fastgen-product-page .fastgen-benefit-list li + li {
    border-top: 1px solid rgba(118, 9, 128, .1);
}

.fastgen-product-page .fastgen-benefit-list span {
    align-items: center;
    background: linear-gradient(135deg, rgba(118, 9, 128, .1), rgba(239, 65, 14, .11));
    border-radius: 50%;
    color: var(--secondary-color);
    display: inline-flex;
    font-family: var(--font-weight-700);
    font-size: 13px;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.fastgen-product-page .fastgen-benefit-list p {
    color: var(--text-color);
    font-size: 15.5px;
    line-height: 1.58;
    margin: 0;
}

.fastgen-product-page .fastgen-spec-panel {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(250, 246, 252, .96)),
        #fff;
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(72, 5, 67, .06);
    padding: 26px;
}

.fastgen-product-page .fastgen-spec-panel h3 {
    color: var(--secondary-color);
    font-family: var(--font-weight-700);
    font-size: 24px;
    margin-bottom: 20px;
}

.fastgen-product-page .fastgen-spec-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

.fastgen-product-page .fastgen-spec-grid div {
    background: rgba(255, 255, 255, .68);
    border-radius: 6px;
    min-height: 68px;
    padding: 12px 14px;
}

.fastgen-product-page .fastgen-spec-grid dt,
.fastgen-product-page .fastgen-spec-grid dd {
    margin: 0;
}

.fastgen-product-page .fastgen-spec-grid dt {
    color: rgba(68, 68, 68, .68);
    font-family: var(--font-weight-600);
    font-size: 12px;
    line-height: 1.35;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.fastgen-product-page .fastgen-spec-grid dd {
    color: var(--secondary-color);
    font-family: var(--font-weight-600);
    font-size: 13.5px;
    line-height: 1.42;
    overflow-wrap: anywhere;
}

.fastgen-product-page .fastgen-fact-strip strong {
    overflow-wrap: anywhere;
}

.fastgen-product-page .fastgen-resource-section {
    background: #fbf7f2;
    padding: 72px 0;
}

.fastgen-product-page .fastgen-resource-layout {
    align-items: start;
    display: grid;
    gap: 52px;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1fr);
}

.fastgen-product-page .fastgen-resource-layout .heading {
    font-size: 42px;
}

.fastgen-product-page .fastgen-resource-layout p {
    line-height: 1.7;
}

.fastgen-product-page .fastgen-resource-list {
    display: grid;
    gap: 22px 28px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fastgen-product-page .fastgen-resource-list > div {
    display: grid;
    gap: 14px;
    grid-template-columns: 42px minmax(0, 1fr);
}

.fastgen-product-page .fastgen-resource-list i {
    align-items: center;
    background: #fff;
    border-radius: 50%;
    color: var(--primary-color);
    display: inline-flex;
    font-size: 18px;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.fastgen-product-page .fastgen-resource-list h6 {
    color: var(--secondary-color);
    font-family: var(--font-weight-700);
    font-size: 17px;
    margin-bottom: 6px;
}

.fastgen-product-page .fastgen-resource-list p {
    color: var(--text-color);
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}

.fastgen-product-page .fastgen-contact-section {
    background: #fff;
    padding: 72px 0;
}

.fastgen-product-page .fastgen-contact-band {
    align-items: center;
    background:
        radial-gradient(circle at 90% 20%, rgba(239, 65, 14, .22), transparent 34%),
        linear-gradient(135deg, #480543 0%, #760980 62%, #ef410e 100%);
    border-radius: 8px;
    display: flex;
    gap: 28px;
    justify-content: space-between;
    overflow: hidden;
    padding: 36px 40px;
}

.fastgen-product-page .fastgen-contact-band span {
    color: rgba(255, 255, 255, .8);
    display: block;
    font-family: var(--font-weight-600);
    font-size: 12px;
    letter-spacing: 0;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.fastgen-product-page .fastgen-contact-band h2 {
    color: #fff;
    font-family: var(--font-weight-700);
    font-size: 30px;
    line-height: 1.25;
    margin-bottom: 8px;
}

.fastgen-product-page .fastgen-contact-band p {
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
    line-height: 1.65;
    margin: 0;
    max-width: 790px;
}

.fastgen-product-page .fastgen-contact-band .btn {
    background: #fff !important;
    border-color: #fff !important;
    color: var(--secondary-color) !important;
    flex: 0 0 auto;
}

.fastgen-product-page .fastgen-related-section {
    padding: 0 0 84px;
}

.fastgen-product-page .fastgen-related-section .heading {
    font-size: 42px;
}

.fastgen-product-page .fastgen-related-links {
    display: grid;
    gap: 0 34px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fastgen-product-page .fastgen-related-links a {
    align-items: center;
    border-top: 1px solid rgba(118, 9, 128, .14);
    color: var(--text-color);
    display: flex;
    font-family: var(--font-weight-600);
    gap: 16px;
    justify-content: space-between;
    line-height: 1.4;
    min-height: 74px;
    padding: 18px 0;
    text-decoration: none;
    transition: color .2s ease;
}

.fastgen-product-page .fastgen-related-links i {
    color: var(--primary-color);
    flex: 0 0 auto;
    transition: transform .2s ease;
}

.fastgen-product-page .fastgen-related-links a:hover,
.fastgen-product-page .fastgen-related-links a:focus {
    color: var(--primary-color);
}

.fastgen-product-page .fastgen-related-links a:hover i,
.fastgen-product-page .fastgen-related-links a:focus i {
    transform: translateX(4px);
}

@media (max-width: 1199px) {
    .fastgen-product-page .fastgen-fact-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fastgen-product-page .fastgen-fact-strip div:nth-child(4)::before {
        display: none;
    }
}

@media (max-width: 991px) {
    .fastgen-product-page .fastgen-overview-layout,
    .fastgen-product-page .fastgen-detail-layout,
    .fastgen-product-page .fastgen-resource-layout {
        grid-template-columns: 1fr;
    }

    .fastgen-product-page .fastgen-product-media {
        min-height: 280px;
    }

    .fastgen-product-page .fastgen-related-links {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .fastgen-product-page .fastgen-overview-section,
    .fastgen-product-page .fastgen-detail-section,
    .fastgen-product-page .fastgen-resource-section,
    .fastgen-product-page .fastgen-contact-section {
        padding: 56px 0;
    }

    .fastgen-product-page .fastgen-section-heading .heading,
    .fastgen-product-page .fastgen-resource-layout .heading,
    .fastgen-product-page .fastgen-related-section .heading {
        font-size: 34px;
    }

    .fastgen-product-page .fastgen-overview-copy .heading-md {
        font-size: 30px;
    }

    .fastgen-product-page .fastgen-fact-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fastgen-product-page .fastgen-resource-list {
        grid-template-columns: 1fr;
    }

    .fastgen-product-page .fastgen-fact-strip div::before {
        display: none !important;
    }

    .fastgen-product-page .fastgen-fact-strip div + div {
        border-top: 0;
    }

    .fastgen-product-page .fastgen-fact-strip div:nth-child(n + 3) {
        border-top: 1px solid rgba(118, 9, 128, .1);
    }

    .fastgen-product-page .fastgen-spec-panel {
        padding: 24px;
    }

    .fastgen-product-page .fastgen-spec-grid {
        grid-template-columns: 1fr;
    }

    .fastgen-product-page .fastgen-benefit-list li {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .fastgen-product-page .fastgen-benefit-list span {
        height: 36px;
        width: 36px;
    }

    .fastgen-product-page .fastgen-contact-band {
        align-items: flex-start;
        flex-direction: column;
        padding: 28px;
    }

    .fastgen-product-page .fastgen-contact-band h2 {
        font-size: 25px;
    }

    .fastgen-product-page .fastgen-related-section {
        padding-bottom: 60px;
    }
}

