/* * BIOTEN Developer V2.4 / DBC V4.0.0 finishing layer * A compact engineering interface for the four BIOTEN Packaging domains. */ body.dv24-page { --dv24-blue: #0b5ba3; --dv24-green: #117e5d; --dv24-ink: #102535; --dv24-body: #455b6b; --dv24-line: rgb(16 65 96 / .14); --dv24-paper: #fbfcfc; --dv24-soft: #edf4f5; --dv24-shell: min(1240px, calc(100% - clamp(32px, 6vw, 96px))); background: #f2f6f7; } body.dv24-page .dv2-shell { width: var(--dv24-shell) !important; max-width: none !important; } body.dv24-page :is(.dv21-hero__media, .dv2-passport-showcase__media) figcaption, body.dv24-page figcaption:empty { display: none !important; } /* Developer hero: serious technical entry, not an oversized campaign banner. */ body.dv24-page .dv21-hero { min-height: 0 !important; padding-block: clamp(3.6rem, 6vw, 5.6rem) !important; } body.dv24-page .dv21-hero__grid { grid-template-columns: minmax(0, .83fr) minmax(28rem, 1.17fr) !important; gap: clamp(2rem, 5vw, 5rem) !important; align-items: center; min-height: 0 !important; } body.dv24-page .dv21-hero__copy { padding-block: 0 !important; } body.dv24-page .dv21-hero__copy h1 { max-width: 13ch !important; margin-block: .7rem 1.05rem !important; color: #0b3658 !important; font-size: clamp(2.7rem, 4.5vw, 4.55rem) !important; font-weight: 620 !important; line-height: 1.01 !important; letter-spacing: -.055em !important; } body.dv24-page .dv21-hero__lead { max-width: 35rem !important; font-size: clamp(.94rem, 1.12vw, 1.05rem) !important; line-height: 1.72 !important; } body.dv24-page .dv21-hero__media { width: 100%; min-width: 0; aspect-ratio: 16 / 9; overflow: hidden; margin: 0; border: 1px solid var(--dv24-line); border-radius: 14px !important; background: #dfe9e9; box-shadow: 0 24px 70px rgb(9 48 72 / .1) !important; } body.dv24-page .dv21-hero__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.76) contrast(1.04) brightness(.97); } body.dv24-page :is(.dv2-action, .dv2-action--accent, .dv2-action--secondary) { min-height: 2.75rem; padding: .7rem 1rem; border-radius: 8px !important; box-shadow: none !important; font-size: .82rem; font-weight: 680; } body.dv24-page .dv2-action--accent { background: var(--dv24-green) !important; } body.dv24-page .dv2-action--secondary { border-color: rgb(11 91 163 / .23) !important; color: #0b4f82 !important; background: rgb(255 255 255 / .72) !important; } /* Four equal domains. Images identify the application before the copy does. */ body.dv24-page .dv21-domain-explorer { padding-block: clamp(4.4rem, 7vw, 6.3rem) !important; background: #f8fafb !important; } body.dv24-page :is(.dv21-section-intro, .dv2-section__head) { margin-bottom: clamp(1.65rem, 3vw, 2.55rem) !important; } body.dv24-page :is(.dv21-section-intro, .dv2-section__head) h2 { max-width: 16ch; color: #0b3658 !important; font-size: clamp(2.15rem, 3.8vw, 3.65rem) !important; font-weight: 620 !important; line-height: 1.04 !important; letter-spacing: -.05em !important; } body.dv24-page :is(.dv21-section-intro, .dv2-section__head) > p { max-width: 46rem; color: var(--dv24-body) !important; font-size: .91rem !important; line-height: 1.72 !important; } body.dv24-page .dv21-domain-tabs { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: .75rem !important; } body.dv24-page .dv21-domain-tab { grid-template-rows: 8.4rem auto auto auto; min-height: 17.8rem !important; padding: 0 1rem 1rem !important; overflow: hidden; border: 1px solid var(--dv24-line) !important; border-radius: 11px !important; color: var(--dv24-ink) !important; background: rgb(255 255 255 / .78) !important; box-shadow: none !important; text-align: left; } body.dv24-page .dv21-domain-tab__media { width: calc(100% + 2rem); height: 8.4rem !important; margin: 0 -1rem .85rem; overflow: hidden; border-radius: 0 !important; } body.dv24-page .dv21-domain-tab__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.04) brightness(.9); transition: transform .85s cubic-bezier(.16, 1, .3, 1), filter .35s ease; } body.dv24-page .dv21-domain-tab:is(:hover, :focus-visible, [aria-selected="true"]) { border-color: rgb(17 126 93 / .4) !important; background: #fff !important; box-shadow: 0 15px 38px rgb(10 48 75 / .075) !important; } body.dv24-page .dv21-domain-tab:is(:hover, [aria-selected="true"]) .dv21-domain-tab__media img { filter: saturate(.86) contrast(1.04) brightness(.96); transform: scale(1.025); } body.dv24-page .dv21-domain-tab__number { margin-bottom: .45rem; color: var(--dv24-green) !important; font-size: .56rem !important; font-weight: 760; letter-spacing: .1em; } body.dv24-page .dv21-domain-tab strong { color: var(--dv24-ink) !important; font-size: 1.02rem !important; line-height: 1.3 !important; } body.dv24-page .dv21-domain-tab__copy { margin-top: .45rem; color: #61727e !important; font-size: .69rem !important; line-height: 1.5 !important; } body.dv24-page .dv21-domain-panels { margin-top: .85rem; } body.dv24-page .dv21-domain-panel { padding: clamp(1.25rem, 2.6vw, 2rem) !important; border: 1px solid var(--dv24-line) !important; border-radius: 12px !important; background: rgb(255 255 255 / .78) !important; box-shadow: none !important; } body.dv24-page .dv21-domain-status { color: var(--dv24-green) !important; background: transparent !important; } /* One local index only; the journey bar becomes a non-sticky page outline. */ body.dv24-page .dv2-local-nav { top: 4.5rem !important; border-block: 1px solid var(--dv24-line) !important; background: rgb(248 251 252 / .93) !important; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); } body.dv24-page .dv2-local-nav__inner { gap: 1.25rem !important; padding-block: .75rem !important; } body.dv24-page .dv2-local-nav a { border-radius: 0 !important; font-size: .72rem !important; } body.dv24-page .dv23-journey-nav { position: relative !important; top: auto !important; z-index: 1 !important; justify-content: center; gap: 0; width: var(--dv24-shell); margin: 1rem auto 0; padding: .4rem; border: 1px solid var(--dv24-line); border-radius: 10px; background: rgb(255 255 255 / .64); box-shadow: none !important; } body.dv24-page .dv23-journey-nav a { min-height: 2.2rem; border-radius: 7px !important; font-size: .68rem; } /* Technical sections share an editorial rhythm instead of stacked promo cards. */ body.dv24-page :is(.dv21-progressive, .dv2-section, .dv22-section, .dv23-section) { padding-block: clamp(4rem, 6.5vw, 6rem) !important; } body.dv24-page :is(.dv2-section--soft, .dv22-section--soft) { background: #edf4f5 !important; } body.dv24-page :is(.dv2-section--surface, .dv22-section--surface) { background: #f8fafb !important; } body.dv24-page :is( .dv21-progressive-steps li, .dv2-asset, .dv2-tool-row, .dv2-gate, .dv22-card, .dv22-resource-card, .dv23-boundary-definitions article ) { border: 1px solid var(--dv24-line) !important; border-radius: 10px !important; background: rgb(255 255 255 / .73) !important; box-shadow: none !important; } body.dv24-page :is( .dv21-progressive-steps li, .dv2-asset, .dv2-tool-row, .dv2-gate, .dv22-card, .dv22-resource-card ):is(:hover, :focus-within) { border-color: rgb(11 91 163 / .28) !important; background: #fff !important; } body.dv24-page .dv2-evidence-contract { border: 1px solid var(--dv24-line) !important; border-radius: 14px !important; background: radial-gradient(circle at 94% 4%, rgb(17 126 93 / .09), transparent 22rem), linear-gradient(145deg, #f8fbfb, #eaf2f3) !important; box-shadow: none !important; } body.dv24-page .dv21-boundary-note, body.dv24-page .dv2-note, body.dv24-page .dv22-boundary-note { border-left: 2px solid rgb(17 126 93 / .48) !important; border-radius: 0 !important; color: #526674 !important; background: rgb(235 244 241 / .62) !important; font-size: .75rem !important; line-height: 1.65 !important; } /* Form becomes a clear project brief. */ body.dv24-page .request-form, body.dv24-page .sample-form { border: 1px solid var(--dv24-line) !important; border-radius: 14px !important; background: rgb(255 255 255 / .8) !important; box-shadow: 0 18px 55px rgb(10 48 75 / .065) !important; } body.dv24-page :is(input, select, textarea) { border-color: rgb(16 65 96 / .2) !important; border-radius: 8px !important; background: #fff !important; } body.dv24-page :is(input, select, textarea):focus { border-color: rgb(11 91 163 / .62) !important; box-shadow: 0 0 0 3px rgb(11 91 163 / .1) !important; } @media (max-width: 980px) { body.dv24-page .dv21-hero__grid { grid-template-columns: minmax(0, .9fr) minmax(22rem, 1.1fr) !important; gap: 2rem !important; } body.dv24-page .dv21-domain-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } } @media (max-width: 760px) { body.dv24-page { --dv24-shell: calc(100% - 32px); } body.dv24-page .dv21-hero { padding-block: 3.25rem 2.5rem !important; } body.dv24-page .dv21-hero__grid { grid-template-columns: 1fr !important; gap: 1.5rem !important; } body.dv24-page .dv21-hero__copy h1 { max-width: 100% !important; font-size: clamp(2.25rem, 11vw, 3.25rem) !important; } body.dv24-page .dv21-hero__media { aspect-ratio: 4 / 3; } body.dv24-page .dv21-domain-explorer { padding-block: 4rem !important; } body.dv24-page :is(.dv21-section-intro, .dv2-section__head) h2 { max-width: 100%; font-size: clamp(2rem, 9.6vw, 2.85rem) !important; } body.dv24-page .dv21-domain-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: .62rem !important; } body.dv24-page .dv21-domain-tab { grid-template-rows: 6.2rem auto auto; min-height: 13.2rem !important; padding: 0 .75rem .75rem !important; } body.dv24-page .dv21-domain-tab__media { width: calc(100% + 1.5rem); height: 6.2rem !important; margin-inline: -.75rem; } body.dv24-page .dv21-domain-tab__copy { display: none; } body.dv24-page .dv21-domain-tab strong { font-size: .88rem !important; } body.dv24-page .dv2-local-nav__inner, body.dv24-page .dv23-journey-nav { justify-content: flex-start; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; } body.dv24-page .dv2-local-nav__inner::-webkit-scrollbar, body.dv24-page .dv23-journey-nav::-webkit-scrollbar { display: none; } body.dv24-page :is(.dv2-local-nav a, .dv23-journey-nav a) { flex: 0 0 auto; scroll-snap-align: center; } body.dv24-page :is(.dv21-progressive, .dv2-section, .dv22-section, .dv23-section) { padding-block: 3.7rem !important; } } @media (max-width: 390px) { body.dv24-page { --dv24-shell: calc(100% - 28px); } body.dv24-page .dv21-domain-tabs { grid-template-columns: minmax(0, 1fr) !important; gap: .72rem !important; } body.dv24-page .dv21-domain-tab { grid-template-rows: 7.4rem auto auto auto; min-height: 0 !important; padding: 0 .9rem .95rem !important; } body.dv24-page .dv21-domain-tab__media { width: calc(100% + 1.8rem); height: 7.4rem !important; margin-inline: -.9rem; } body.dv24-page .dv21-domain-tab__copy { display: block; font-size: .72rem !important; line-height: 1.48 !important; } body.dv24-page .dv21-domain-tab__number { font-size: .5rem !important; } } @media (prefers-reduced-motion: reduce) { body.dv24-page .dv21-domain-tab__media img { transition: none !important; } }