:root {
    --ink: #25211e;
    --ink-soft: #665f58;
    --ivory: #f7f1e9;
    --paper: rgba(255, 253, 249, .84);
    --gold: #a97d3f;
    --gold-dark: #7c5625;
    --orange: #e85425;
    --line: rgba(126, 91, 45, .22);
    --serif: var(--font-serif);
    --sans: var(--font-sans);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ivory); }
body { margin: 0; color: var(--ink); background: var(--ivory); font-family: var(--sans); font-weight: 400; overflow-x: hidden; }
a { color: inherit; }
img { display: block; max-width: 100%; }

.scroll-progress { position: fixed; inset: 0 0 auto; height: 3px; z-index: 50; background: rgba(255,255,255,.18); }
.scroll-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #8d642d, #e0b66f, #ee7044); box-shadow: 0 0 16px rgba(224, 182, 111, .7); }

.scene { position: relative; min-height: min(1000px, 100svh); overflow: hidden; isolation: isolate; }
.scene__media, .scene__media img, .scene__veil { position: absolute; inset: 0; width: 100%; height: 100%; }
.scene__media { z-index: -3; }
.scene__media img { object-fit: cover; }
.scene__veil { z-index: -2; pointer-events: none; }
.scene__content { position: relative; width: min(1500px, calc(100% - 10vw)); margin-inline: auto; }

.scene--hero { min-height: 100svh; }
.scene__veil--hero { background: linear-gradient(90deg, rgba(248,244,238,.92) 0%, rgba(248,244,238,.42) 35%, transparent 54%); }
.hero-copy { min-height: 100svh; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 5.5rem 0 11rem; }
.eyebrow { display: flex; align-items: center; gap: .85rem; margin: 0 0 1.5rem; color: var(--gold-dark); font-size: .68rem; font-weight: 600; letter-spacing: .25em; text-transform: uppercase; }
.eyebrow > span { width: 2.8rem; height: 1px; background: linear-gradient(90deg, var(--gold), rgba(169,125,63,.15)); }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; }
h1 { margin-bottom: 1.2rem; font-size: clamp(4.2rem, 7vw, 8rem); line-height: .84; }
h1 em, h2 em { color: var(--gold); font-style: normal; }
.hero-copy__lead { max-width: 560px; margin-bottom: 1rem; font-family: var(--serif); font-size: clamp(1.4rem, 2vw, 2rem); line-height: 1.25; }
.hero-copy__text, .scene__content > p:not(.eyebrow) { max-width: 560px; color: var(--ink-soft); font-size: 1rem; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 1rem; min-height: 52px; padding: 0 1.55rem; border: 1px solid transparent; border-radius: 3px; font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; transition: transform .25s ease, background .25s ease, box-shadow .25s ease; }
.button:hover { transform: translateY(-2px); }
.button--gold { color: #fff; background: linear-gradient(135deg, #8b612b, #c79b56); box-shadow: 0 14px 34px rgba(125, 82, 31, .2); }
.button--gold:hover { box-shadow: 0 18px 40px rgba(125, 82, 31, .3); }
.button--ghost { border-color: rgba(93,70,42,.28); background: rgba(255,255,255,.4); backdrop-filter: blur(8px); }
.hero-facts { position: absolute; left: 0; right: 0; bottom: 2.4rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: min(1160px, 76vw); margin-inline: auto; transform: none; border: 1px solid rgba(145,109,62,.18); border-radius: 10px; background: rgba(255,253,249,.72); box-shadow: 0 20px 60px rgba(87,67,43,.12); backdrop-filter: blur(18px); }
.hero-facts article { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: 90px; padding: 1rem 1.7rem; }
.hero-facts article + article::before { content: ""; position: absolute; inset: 22% auto 22% 0; width: 1px; background: var(--line); }
.hero-facts strong { font-family: var(--serif); color: var(--gold-dark); font-size: 1.45rem; font-weight: 400; }
.hero-facts span { margin-top: .25rem; color: var(--ink-soft); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.scroll-cue { position: absolute; right: 2.6rem; bottom: 2.8rem; display: flex; align-items: center; gap: .7rem; color: #745b3e; font-size: .62rem; font-weight: 600; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; writing-mode: vertical-rl; }
.scroll-cue span { width: 1px; height: 42px; background: #9e7947; animation: pulse-line 1.8s ease-in-out infinite; }

.scene--science, .scene--experience, .scene--cta { min-height: 930px; }
.scene__veil--left { background: linear-gradient(90deg, rgba(250,247,241,.82) 0%, rgba(250,247,241,.24) 43%, transparent 62%); }
.science-copy, .experience-copy, .cta-copy { min-height: 930px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding-bottom: 2rem; }
h2 { margin-bottom: 1.25rem; font-size: clamp(3rem, 5vw, 6rem); line-height: 1.02; }
.wavelengths { display: flex; flex-wrap: wrap; gap: 0.8rem; margin-top: 2.2rem; }
.wavelengths span { display: flex; align-items: baseline; justify-content: center; min-width: 95px; padding: 1.1rem 0.85rem; border: 1px solid rgba(184,126,67,.45); border-radius: 6px; color: var(--gold-dark); background: rgba(255,253,249,.9); font-family: var(--serif); font-size: 1.75rem; box-shadow: 0 10px 25px rgba(87,67,43,.12); backdrop-filter: blur(12px); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.wavelengths span:hover { transform: translateY(-3px); box-shadow: 0 15px 35px rgba(87,67,43,.18); }
.wavelengths small { margin-left: .2rem; font-family: var(--sans); font-size: .6rem; color: var(--ink-soft); letter-spacing: .05em; }
.spectrum-key { display: flex; gap: 1.4rem; margin-top: 1rem; color: var(--ink-soft); font-size: .7rem; }
.spectrum-key span { display: flex; align-items: center; gap: .45rem; }
.spectrum-key i { width: .6rem; height: .6rem; border-radius: 50%; box-shadow: 0 0 12px currentColor; }
.spectrum-key__red { color: #ff563c; background: currentColor; }
.spectrum-key__nir { color: #9d311e; background: currentColor; }

.scene__veil--experience { background: linear-gradient(90deg, rgba(250,247,242,.62) 0%, rgba(250,247,242,.08) 45%, transparent 65%); }
.experience-copy { justify-content: flex-start; padding-top: 11vh; }
.benefit-rail { position: absolute; left: max(5vw, calc((100vw - 1500px)/2)); bottom: 10vh; display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; width: min(660px, 42vw); }
.benefit-rail article { min-height: 190px; padding: 1.4rem 1.35rem; border: 1px solid rgba(133,100,59,.16); border-radius: 9px; background: rgba(255,253,249,.68); backdrop-filter: blur(13px); }
.line-icon { display: grid; place-items: center; width: 36px; height: 36px; margin-bottom: 1rem; border: 1px solid rgba(169,125,63,.38); border-radius: 50%; color: var(--gold); font-family: var(--serif); }
.benefit-rail h3 { margin-bottom: .45rem; font-family: var(--serif); font-size: 1.25rem; font-weight: 400; }
.benefit-rail p { margin-bottom: 0; color: var(--ink-soft); font-size: .75rem; line-height: 1.55; }

.scene--models { min-height: 1240px; }
.scene__veil--models { background: linear-gradient(180deg, rgba(249,245,239,.5) 0%, transparent 42%, rgba(247,241,233,.62) 100%); }
.models-heading { position: relative; width: min(1500px, calc(100% - 10vw)); margin: 0 auto; padding-top: 6vh; text-align: center; }
.eyebrow--center { justify-content: center; }
.eyebrow--center span:last-child { transform: scaleX(-1); }
.models-heading h2 { margin-bottom: .55rem; }
.models-heading > p:last-child { color: var(--ink-soft); }
.model-cards { position: absolute; left: 0; right: 0; bottom: 3.4rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; width: min(1220px, 88vw); margin-inline: auto; transform: none; }
.model-card { padding: 1.4rem 1.45rem 1.25rem; border: 1px solid rgba(135,101,58,.2); border-radius: 10px; background: rgba(255,253,249,.8); box-shadow: 0 15px 40px rgba(102,75,43,.1); backdrop-filter: blur(16px); }
.model-card--featured { border-color: rgba(180,129,60,.44); background: rgba(255,251,244,.9); transform: translateY(-14px); }
.model-card__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; color: var(--gold); }
.model-card__top span { font-family: var(--serif); font-size: 1.25rem; }
.model-card__top small { font-size: .58rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.model-card h3 { margin-bottom: .45rem; font-family: var(--serif); font-size: 2rem; font-weight: 400; }
.model-card > p { min-height: 42px; margin-bottom: 1rem; color: var(--ink-soft); font-size: .76rem; line-height: 1.55; }
.model-card dl { margin: 0; }
.model-card dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-top: 1px solid rgba(123,94,58,.14); font-size: .7rem; }
.model-card dt { color: var(--ink-soft); }
.model-card dd { margin: 0; font-weight: 600; }
.model-features { display: grid; gap: .35rem; margin: .9rem 0 0; padding: 0; list-style: none; color: var(--ink-soft); font-size: .68rem; line-height: 1.4; }
.model-features li { position: relative; padding-left: 1rem; }
.model-features li::before { content: "•"; position: absolute; left: 0; color: var(--gold); }

.model-showcase { position: relative; overflow: hidden; padding: clamp(5rem, 7vw, 7rem) 1.5rem; background: #fbf7f0; }
.model-showcase__inner { width: min(1320px, 100%); margin: 0 auto; }
.model-showcase__heading { margin-bottom: clamp(2.4rem, 4vw, 3.8rem); }
.model-showcase__heading h2 { font-size: clamp(2.6rem, 3.8vw, 4.4rem); }
.model-showcase__heading > p:last-child { color: var(--ink-soft); font-size: .9rem; }
.model-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; align-items: stretch; }
.model-product-card { position: relative; display: flex; flex-direction: column; overflow: hidden; border: 1px solid rgba(132,98,57,.15); border-radius: 12px; background: rgba(255,253,249,1); box-shadow: 0 10px 40px rgba(86,64,39,.05); transition: transform 0.4s ease, box-shadow 0.4s ease; }
.model-product-card:hover { transform: translateY(-5px); box-shadow: 0 15px 50px rgba(86,64,39,.1); }
.model-product-card--featured { border-color: rgba(169,125,63,.4); transform: translateY(-10px); box-shadow: 0 20px 60px rgba(86,64,39,.08); }
.model-product-card--featured:hover { transform: translateY(-15px); }
.model-product-card__image { display: block; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; border-bottom: 1px solid rgba(132,98,57,.1); background: transparent; padding: 0; }
.model-product-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.6s ease; }
.model-product-card:hover .model-product-card__image img { transform: scale(1.03); }
.model-product-card__body { flex: 1; display: flex; flex-direction: column; padding: 2.2rem 2.2rem 2.5rem; }
.model-product-card__title h3 { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 2.2rem; font-weight: 400; line-height: 1.1; }
.model-product-card__title span { display: block; margin-top: .4rem; color: var(--gold-dark); font-family: var(--serif); font-size: 1.05rem; font-weight: 400; letter-spacing: 0.02em; }
.model-product-card__intro { margin: 1.2rem 0 2.2rem; color: var(--ink-soft); font-size: 0.95rem; line-height: 1.6; }
.model-product-card ul { display: grid; gap: 0.9rem; margin: auto 0 0; padding: 1.8rem 0 0; border-top: 1px solid rgba(132,98,57,.15); list-style: none; }
.model-product-card li { position: relative; padding-left: 1.6rem; color: var(--ink-soft); font-size: 0.9rem; line-height: 1.5; }
.model-product-card li::before { content: "✓"; position: absolute; left: 0; top: -1px; color: var(--gold); font-weight: 700; font-size: 1.1rem; }

.text-section { position: relative; padding: clamp(5.5rem, 8vw, 9rem) 0; overflow: hidden; border-top: 1px solid rgba(135,101,58,.12); border-bottom: 1px solid rgba(135,101,58,.12); background: #f8f3ec; }
.text-section::before { content: ""; position: absolute; inset: -50% auto auto -8%; width: 42vw; height: 42vw; border-radius: 50%; background: radial-gradient(circle, rgba(203,164,109,.11), transparent 68%); pointer-events: none; }
.text-section--planning { background: #f3ece3; }
.text-section--planning::before { inset: auto -8% -60% auto; }
.text-section__inner { position: relative; display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.45fr); gap: clamp(3rem, 7vw, 8rem); width: min(1320px, calc(100% - 10vw)); margin-inline: auto; }
.text-section__heading h2 { margin-bottom: 1.25rem; font-size: clamp(2.8rem, 4.2vw, 5rem); }
.text-section__heading > p:last-child { max-width: 490px; margin-bottom: 0; color: var(--ink-soft); font-size: .9rem; line-height: 1.75; }
.text-section__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; }
.text-section__items article { min-height: 245px; padding: .4rem clamp(1.3rem, 2.4vw, 2.5rem); border-left: 1px solid rgba(126,91,45,.18); }
.text-section__items article:last-child { border-right: 1px solid rgba(126,91,45,.18); }
.text-section__items span { display: block; margin-bottom: 3.2rem; color: var(--gold); font-family: var(--serif); font-size: 1rem; }
.text-section__items h3 { margin-bottom: .75rem; font-family: var(--serif); font-size: 1.45rem; font-weight: 400; }
.text-section__items p { margin-bottom: 0; color: var(--ink-soft); font-size: .76rem; line-height: 1.7; }

.vorteile-section { position: relative; z-index: 2; padding: clamp(4rem, 5.2vw, 6rem) 1.5rem; overflow: hidden; background: #fbf7f0; }
.vorteile-background, .vorteile-background img { position: absolute; inset: 0; width: 100%; height: 100%; }
.vorteile-background { z-index: -1; }
.vorteile-background img { object-fit: cover; }
.vorteile-shell { width: min(1450px, 100%); margin: 0 auto; }
.vorteile-heading { max-width: 1240px; margin: 0 auto clamp(2.2rem, 3vw, 3.2rem); text-align: center; }
.vorteile-kicker { margin: 0 0 .65rem; color: var(--gold-dark); font-size: .66rem; font-weight: 600; letter-spacing: .32em; text-transform: uppercase; }
.vorteile-heading-line { display: block; width: 38px; height: 2px; margin: 0 auto 1rem; background: var(--gold); }
.vorteile-heading h2 { margin-bottom: .8rem; color: var(--ink); font-size: clamp(2.45rem, 3vw, 3.6rem); line-height: 1.08; }
.vorteile-heading h2 em { color: var(--gold); font-style: normal; }
.vorteile-intro { max-width: 760px; margin: 0 auto; color: var(--ink-soft); font-size: .9rem; line-height: 1.65; }
.vorteile-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.vorteil-card { position: relative; display: grid; grid-template-columns: 55px minmax(0, 1fr); gap: 1.1rem; min-height: 150px; padding: 1.4rem 1.4rem; overflow: hidden; border: 1px solid rgba(169,125,63,.25); border-radius: 12px; background: rgba(255,253,249,.95); box-shadow: 0 8px 25px rgba(87,67,43,.05); backdrop-filter: blur(12px); transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease, border-color 0.4s ease; cursor: default; }
.vorteil-card:hover { transform: translateY(-6px); box-shadow: 0 15px 35px rgba(87,67,43,.12); border-color: rgba(169,125,63,.5); }
.vorteil-number { position: absolute; top: 1rem; right: 1.1rem; color: rgba(169,125,63,.15); font-family: var(--serif); font-size: 3.2rem; line-height: 1; font-weight: 500; transition: transform 0.5s ease, opacity 0.5s ease, color 0.4s ease; }
.vorteil-card:hover .vorteil-number { transform: scale(1.08) translate(-2px, 2px); opacity: 0.25; color: rgba(169,125,63,.3); }
.vorteil-icon { position: relative; z-index: 1; display: grid; place-items: center; width: 52px; height: 52px; color: var(--gold-dark); border: 1.5px solid rgba(169,125,63,.4); border-radius: 50%; font-size: 1.2rem; transition: all 0.4s ease; }
.vorteil-card:hover .vorteil-icon { background: var(--gold); color: #fff; border-color: var(--gold); transform: scale(1.05); }
.vorteil-icon svg { width: 28px !important; height: 28px !important; }
.vorteil-card > div:last-child { position: relative; z-index: 1; padding-top: .15rem; }
.vorteil-card h3 { margin: 0 0 .8rem !important; color: var(--ink) !important; font-family: var(--serif) !important; font-size: 1.15rem !important; font-weight: 500 !important; line-height: 1.3 !important; }
.vorteil-card h3 span { color: var(--gold-dark); font-style: italic; }
.vorteil-card h3::after { content: ""; display: block; width: 35px; height: 2px; margin-top: .6rem; background: var(--gold); transition: width 0.4s ease; }
.vorteil-card:hover h3::after { width: 50px; }
.vorteil-card p { max-width: 320px; margin: 0 !important; color: #4a4238 !important; font-family: var(--sans) !important; font-size: 0.84rem !important; line-height: 1.55 !important; font-weight: 400 !important; }

.scene--dark { min-height: 980px; color: #f8f2e9; background: #050505; }
.scene--dark h2 em { color: #d5a45f; }
.scene--dark .scene__media img { object-position: center; }
.scene__veil--dark-left { background: linear-gradient(90deg, rgba(3,3,3,.96) 0%, rgba(3,3,3,.68) 35%, transparent 59%); }
.eyebrow--dark { color: #d5a45f; }
.eyebrow--dark > span { background: linear-gradient(90deg, #d5a45f, rgba(213,164,95,.08)); }
.dark-copy { min-height: 980px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.dark-copy > p:not(.eyebrow) { max-width: 570px; color: rgba(247,239,229,.68); font-size: .95rem; line-height: 1.75; }
.dark-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; width: min(560px, 42vw); margin-top: 1.25rem; }
.dark-feature-grid article { display: flex; align-items: center; gap: 1rem; min-height: 78px; padding: .9rem 1rem; border: 1px solid rgba(215,164,92,.22); border-radius: 8px; background: rgba(18,16,15,.68); backdrop-filter: blur(10px); }
.dark-feature-grid strong { flex: 0 0 auto; min-width: 46px; color: #e0ad65; font-family: var(--serif); font-size: 1.45rem; font-weight: 400; }
.dark-feature-grid span { color: rgba(255,249,240,.74); font-size: .7rem; line-height: 1.45; }
.dark-note { margin-top: 1rem !important; color: rgba(224,173,101,.8) !important; font-size: .68rem !important; }

.scene--applications { min-height: 1020px; }
.scene__veil--applications { background: linear-gradient(90deg, rgba(4,4,4,.94) 0%, rgba(4,4,4,.42) 37%, transparent 62%), linear-gradient(0deg, rgba(3,3,3,.82) 0%, transparent 34%); }
.applications-copy { min-height: 1020px; padding-top: 8vh; }
.applications-copy > p:not(.eyebrow) { max-width: 540px; color: rgba(247,239,229,.7); font-size: .95rem; line-height: 1.75; }
.application-cards { position: absolute; left: 0; right: 0; bottom: 4.2rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; width: min(1320px, 84vw); margin-inline: auto; }
.application-cards article { min-height: 154px; padding: 1.2rem 1.25rem; border: 1px solid rgba(220,172,105,.28); border-radius: 9px; background: rgba(12,11,10,.62); backdrop-filter: blur(13px); }
.application-cards span { color: #d6a05b; font-family: var(--serif); font-size: 1rem; }
.application-cards h3 { margin: .9rem 0 .35rem; color: #fff8ef; font-family: var(--serif); font-size: 1.25rem; font-weight: 400; }
.application-cards p { margin: 0; color: rgba(247,239,229,.62); font-size: .7rem; line-height: 1.5; }

.scene--cta { min-height: 650px !important; }
.cta-copy { min-height: 650px !important; padding-top: 0; padding-bottom: 0; justify-content: center; }
.cta-copy .eyebrow { font-size: 0.75rem; letter-spacing: 0.35em; margin-bottom: 1.5rem; }
.cta-copy h2 { font-size: clamp(3.2rem, 5vw, 4.5rem); line-height: 1.1; margin-bottom: 1.2rem; }
.cta-copy h2 em { opacity: 0.9; }
.cta-copy > p:not(.eyebrow) { font-size: 1.05rem; line-height: 1.7; color: #4a4238; max-width: 580px; }
.scene__veil--cta { background: linear-gradient(90deg, rgba(250,247,241,.9) 0%, rgba(250,247,241,.6) 45%, transparent 65%); }
.cta-copy .button { margin-top: 2rem; padding: 0 2.5rem; min-height: 54px; letter-spacing: 0.2em; font-size: 0.75rem; }
.service-list { display: flex; flex-wrap: wrap; gap: 0.8rem 1.8rem; margin-top: 2.5rem; color: #6c5943; font-size: 0.72rem; letter-spacing: .05em; }
.service-list span::before { content: "◇"; margin-right: .45rem; color: var(--gold); }
.disclaimer { max-width: 590px !important; margin-top: 2.5rem !important; font-size: .6rem !important; line-height: 1.5 !important; opacity: .5; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .9s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes pulse-line { 0%,100% { opacity: .35; transform: scaleY(.7); } 50% { opacity: 1; transform: scaleY(1); } }

/* --- DESKTOP HERO BANNER REDESIGN --- */
.desktop-only-hero { display: flex; flex-direction: column; justify-content: center; }
.desktop-only-facts { display: grid; }
.mobile-only-hero, .mobile-only-facts { display: none; }

.desktop-only-hero h1 { margin-bottom: 0.5rem; line-height: 0.95; font-size: clamp(4.2rem, 6.5vw, 7.5rem); }
.desktop-only-hero .hero-copy__lead { font-family: var(--sans); font-weight: 600; font-size: clamp(1.2rem, 1.6vw, 1.55rem); line-height: 1.3; margin-bottom: 1rem; color: var(--ink); }
.desktop-only-hero .hero-copy__text { font-family: var(--sans); font-weight: 400; font-size: 0.95rem; line-height: 1.6; color: var(--ink); margin-bottom: 2rem; max-width: 600px; }
.star-icon { margin-bottom: 0.5rem; margin-left: -5px; }

.desktop-only-facts.hero-facts {
    grid-template-columns: repeat(5, 1fr);
    width: min(1300px, 92vw);
    gap: 0.8rem;
    border: none;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    bottom: 2rem;
}
.desktop-only-facts article {
    border: 1px solid rgba(145,109,62,.2);
    border-radius: 12px;
    background: rgba(255,253,249,.85);
    box-shadow: 0 10px 30px rgba(87,67,43,.05);
    align-items: center;
    text-align: center;
    justify-content: center;
    padding: 1.4rem 0.5rem;
}
.desktop-only-facts article::before { display: none !important; }
.desktop-only-facts .fact-icon { margin-bottom: 1rem; color: var(--gold-dark); width: 34px; height: 34px; stroke-width: 1.2; }
.desktop-only-facts span { margin-top: 0; color: var(--ink); font-size: 0.75rem; font-weight: 600; letter-spacing: 0; text-transform: none; line-height: 1.4; }
/* --- PRODUCT TICKER BAR --- */
.product-ticker {
    background: #050505;
    color: var(--gold);
    padding: 1.25rem 0;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 10;
    display: flex;
    white-space: nowrap;
    border-top: 1px solid rgba(169,125,63,0.15);
    border-bottom: 1px solid rgba(169,125,63,0.15);
}
.product-ticker__track {
    display: inline-flex;
    gap: 3rem;
    padding-right: 3rem;
    animation: ticker-right 45s linear infinite;
    will-change: transform;
}
.product-ticker__track span {
    font-family: var(--sans);
    font-weight: 600;
    font-size: 0.85rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
}
@keyframes ticker-right {
    0% { transform: translateX(-50%); }
    100% { transform: translateX(0); }
}
/* ------------------------------------ */

@media (max-width: 1100px) {
    .hero-facts { width: calc(100% - 9rem); }
    .desktop-only-facts.hero-facts { width: calc(100% - 2.5rem); grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.4rem; bottom: 1rem; }
    .desktop-only-facts article { padding: 1rem 0.5rem; }
    .desktop-only-facts .fact-icon { width: 28px; height: 28px; margin-bottom: .65rem; }
    .desktop-only-facts span { font-size: .64rem; }
    .scroll-cue { display: none; }
    .benefit-rail { width: 49vw; }
    .vorteile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .model-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .model-product-card--featured { transform: none; }
}

@media (max-width: 760px) {
    .desktop-only-hero, .desktop-only-facts { display: none !important; }
    .mobile-only-hero { display: flex !important; }
    .mobile-only-facts { display: grid !important; }
    .scene { min-height: 1160px; }
    .scene__media img { object-position: center; }
    .scene__content { width: calc(100% - 2.5rem); }
    .scene__veil--hero, .scene__veil--left, .scene__veil--experience, .scene__veil--cta { background: linear-gradient(180deg, rgba(250,247,241,.78) 0%, rgba(250,247,241,.2) 43%, transparent 60%); }
    .scene--hero { min-height: 1120px; }
    .hero-copy { min-height: auto; padding: 4.5rem 0 0; }
    .eyebrow { margin-bottom: 1rem; font-size: .6rem; }
    .eyebrow > span { width: 2rem; }
    h1 { font-size: clamp(4.35rem, 22vw, 6.5rem); }
    h2 { font-size: clamp(3.2rem, 14vw, 4.8rem); }
    .hero-copy__lead { max-width: 92%; font-size: 1.35rem; }
    .hero-copy__text, .scene__content > p:not(.eyebrow) { max-width: 95%; font-size: .88rem; line-height: 1.65; }
    .hero-actions { width: 100%; }
    .button { min-height: 48px; padding: 0 1rem; font-size: .62rem; }
    .hero-facts { left: 1.25rem; right: 1.25rem; bottom: 1.25rem; grid-template-columns: repeat(2, 1fr); width: auto; transform: none; }
    .hero-facts article { min-height: 72px; padding: .7rem 1rem; }
    .hero-facts article:nth-child(3)::before { inset: 0 8% auto; width: auto; height: 1px; }
    .hero-facts strong { font-size: 1.2rem; }
    .hero-facts span { font-size: .56rem; }

    .scene--science { min-height: 1200px; }
    .science-copy { min-height: auto; padding-top: 4.5rem; }
    .wavelengths { display: grid; grid-template-columns: repeat(5, 1fr); width: 100%; gap: .3rem; margin-top: 1.1rem; }
    .wavelengths span { min-width: 0; padding: .7rem .2rem; font-size: 1rem; }

    .scene--experience { min-height: 1260px; }
    .experience-copy { min-height: auto; padding-top: 4.5rem; }
    .benefit-rail { left: 1.25rem; right: 1.25rem; bottom: 1.25rem; grid-template-columns: 1fr; width: auto; gap: .55rem; }
    .benefit-rail article { min-height: auto; padding: .9rem 1rem; }
    .line-icon { float: left; width: 31px; height: 31px; margin: .1rem .8rem 1rem 0; }
    .benefit-rail h3 { margin-bottom: .2rem; font-size: 1.1rem; }

    .scene--dark { min-height: 1360px; }
    .scene__veil--dark-left { background: linear-gradient(180deg, rgba(2,2,2,.96) 0%, rgba(2,2,2,.78) 38%, transparent 58%); }
    .dark-copy { min-height: auto; padding-top: 4.5rem; }
    .dark-copy > p:not(.eyebrow) { max-width: 100%; font-size: .85rem; line-height: 1.65; }
    .dark-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; gap: .45rem; margin-top: .75rem; }
    .dark-feature-grid article { min-height: 70px; padding: .7rem; gap: .6rem; }
    .dark-feature-grid strong { min-width: 34px; font-size: 1.05rem; }
    .dark-feature-grid span { font-size: .6rem; }
    .dark-note { max-width: 100% !important; }

    .text-section { padding: 4.5rem 0; }
    .text-section__inner { grid-template-columns: 1fr; gap: 2.8rem; width: calc(100% - 2.5rem); }
    .text-section__heading h2 { font-size: clamp(3rem, 13vw, 4.3rem); }
    .text-section__heading > p:last-child { font-size: .84rem; }
    .text-section__items { grid-template-columns: 1fr; }
    .text-section__items article { min-height: auto; padding: 1.25rem 0; border-left: 0; border-top: 1px solid rgba(126,91,45,.18); }
    .text-section__items article:last-child { border-right: 0; border-bottom: 1px solid rgba(126,91,45,.18); }
    .text-section__items span { float: left; width: 2.4rem; margin: .15rem .7rem 1rem 0; }
    .text-section__items h3 { margin-bottom: .35rem; font-size: 1.3rem; }
    .text-section__items p { font-size: .73rem; }

    .vorteile-section { padding: 3.8rem 1.25rem; }
    .vorteile-background img { object-position: center top; }
    .vorteile-heading { margin-bottom: 2rem; }
    .vorteile-kicker { font-size: .62rem; }
    .vorteile-heading h2 { font-size: clamp(2.2rem, 10vw, 3.25rem); }
    .vorteile-intro { max-width: 34rem; font-size: .84rem; line-height: 1.65; }
    .vorteile-grid { grid-template-columns: 1fr; gap: .7rem; }
    .vorteil-card { grid-template-columns: 58px minmax(0, 1fr); gap: .9rem; min-height: 166px; padding: 1.4rem 1.2rem; }
    .vorteil-number { top: 1rem; right: 1rem; font-size: 3rem; }
    .vorteil-icon { width: 56px; height: 56px; border-width: 2px; font-size: 1.2rem; }
    .vorteil-icon svg { width: 31px !important; height: 31px !important; }
    .vorteil-card h3 { margin-bottom: 1rem !important; padding-right: 2.5rem; font-size: 1.25rem !important; }
    .vorteil-card h3::after { margin-top: .7rem; }
    .vorteil-card p { max-width: none; font-size: 0.85rem !important; }

    .model-showcase { padding: 4.5rem 1.25rem; }
    .model-showcase__heading { margin-bottom: 2.2rem; }
    .model-showcase__heading h2 { font-size: clamp(2.55rem, 12vw, 4rem); }
    .model-product-grid { grid-template-columns: 1fr; gap: .85rem; }
    .model-product-card--featured { transform: none; }
    .model-product-card__image { aspect-ratio: 4 / 3; }
    .model-product-card__body { padding: 1.2rem 1.2rem 1.35rem; }
    .model-product-card__intro { min-height: auto; }

    .scene--applications { min-height: 1580px; }
    .scene__veil--applications { background: linear-gradient(180deg, rgba(3,3,3,.96) 0%, rgba(3,3,3,.74) 34%, transparent 55%), linear-gradient(0deg, rgba(3,3,3,.88) 0%, transparent 39%); }
    .applications-copy { min-height: auto; padding-top: 4.5rem; }
    .applications-copy > p:not(.eyebrow) { max-width: 100%; font-size: .85rem; line-height: 1.65; }
    .application-cards { bottom: 1.25rem; grid-template-columns: 1fr; gap: .5rem; width: calc(100% - 2.5rem); }
    .application-cards article { min-height: 94px; padding: .8rem 1rem; }
    .application-cards h3 { margin: .3rem 0 .15rem; font-size: 1.1rem; }

    .scene--models { min-height: 1940px; }
    .models-heading { width: calc(100% - 2.5rem); padding-top: 4.5rem; }
    .models-heading h2 { font-size: clamp(3rem, 13vw, 4.3rem); }
    .model-cards { bottom: 1.25rem; grid-template-columns: 1fr; gap: .65rem; width: calc(100% - 2.5rem); }
    .model-card, .model-card--featured { padding: 1rem 1.1rem; transform: none; }
    .model-card h3 { font-size: 1.7rem; }
    .model-card > p { min-height: auto; }

    .scene--cta { 
        min-height: 650px !important; /* Narrower background */
        display: flex;
        align-items: center;
    }
    .scene__veil--cta {
        background: linear-gradient(180deg, rgba(250,247,241,0.96) 0%, rgba(250,247,241,0.85) 45%, rgba(250,247,241,0.3) 100%) !important;
    }
    .cta-copy { 
        min-height: auto; 
        padding-top: 3rem; 
        padding-bottom: 2rem;
        align-items: center; 
        text-align: center;
        width: 100%;
    }
    .cta-copy .eyebrow {
        justify-content: center;
        font-size: 0.75rem;
        letter-spacing: 0.35em;
        margin-bottom: 1.5rem;
        margin-left: 1.5rem; /* Offset for optical centering due to letter-spacing */
    }
    .cta-copy .eyebrow > span { display: none; }
    .cta-copy h2 {
        font-size: clamp(2.8rem, 11vw, 3.8rem);
        line-height: 1.15;
        margin-bottom: 1.5rem;
    }
    .cta-copy h2 em {
        display: block;
        font-size: clamp(2.4rem, 9.5vw, 3.2rem);
        margin-top: 0.3rem;
        opacity: 0.9;
    }
    .cta-copy > p:not(.eyebrow) {
        font-size: 0.95rem;
        line-height: 1.7;
        color: #4a4238;
        max-width: 92%;
        margin: 0 auto;
    }
    .cta-copy .button {
        margin-top: 2.2rem;
        min-height: 54px;
        padding: 0 2.5rem;
        letter-spacing: 0.2em;
        font-weight: 500;
        font-size: 0.7rem;
        border-radius: 4px;
    }
    .service-list { 
        justify-content: center;
        max-width: 100%; 
        margin-top: 2.5rem; 
        gap: 0.8rem 1.2rem;
        font-size: 0.72rem;
    }
    .disclaimer { 
        margin-top: 2.5rem; 
        font-size: .6rem !important; 
        text-align: center;
        max-width: 90% !important;
        opacity: 0.5;
    }

    .produktdetails-section { 
        display: flex !important; 
        flex-direction: column !important; 
        padding: 2.5rem 0 0 0 !important; 
    }
    .produktdetails-inner {
        order: 1;
        padding: 0 1rem;
        position: relative !important;
        z-index: 2 !important;
    }
    .produktdetails-background {
        position: relative !important;
        inset: auto !important;
        order: 2;
        height: 280px !important;
        width: 100% !important;
        margin-top: 1rem !important;
        z-index: 1 !important;
    }
    .produktdetails-background img {
        object-fit: cover !important;
        object-position: center bottom !important;
    }
    .produktdetails-inner > div {
        margin-left: 0 !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 0.4rem !important;
    }
    .produktdetails-inner > div > div:first-child {
        grid-column: 1 / -1;
        background: rgba(255, 253, 249, 0.92);
        padding: 1rem 1rem 0.3rem;
        border-radius: 12px;
        backdrop-filter: blur(12px);
        border: 1px solid rgba(169,125,63,0.2);
        margin-bottom: 0.2rem !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    }
    .produktdetails-inner > div > div:not(:first-child) {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        background: rgba(255, 253, 249, 0.92);
        padding: 0.75rem 0.4rem;
        border-radius: 12px;
        backdrop-filter: blur(12px);
        border: 1px solid rgba(169,125,63,0.2);
        box-shadow: 0 4px 15px rgba(0,0,0,0.06);
        gap: 0.4rem !important;
    }
    .produktdetails-inner > div > div:not(:first-child) > div:first-child {
        width: 26px !important;
        height: 26px !important;
        margin: 0 auto !important;
    }
    .produktdetails-inner > div > div:not(:first-child) > div:first-child svg {
        width: 13px !important;
        height: 13px !important;
    }
    .produktdetails-inner > div > div:not(:first-child) > div:last-child h3 {
        font-size: 0.78rem !important;
        margin-bottom: 0.2rem !important;
        line-height: 1.2 !important;
    }
    .produktdetails-inner > div > div:not(:first-child) > div:last-child p {
        font-size: 0.65rem !important;
        line-height: 1.35 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; }
    .reveal { opacity: 1; transform: none; }
}
