.elementor-1999 .elementor-element.elementor-element-fb46039{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS */@font-face {
font-family: "OTORUS Aldrich";
font-style: normal;
font-display: swap;
font-weight: 400;
src: url("https://cdn.jsdelivr.net/fontsource/fonts/aldrich@5.3.0/latin-400-normal.woff2") format("woff2");
}

@font-face {
font-family: "OTORUS Quicksand";
font-style: normal;
font-display: swap;
font-weight: 300 700;
src: url("https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@5.3.0/latin-wght-normal.woff2") format("woff2-variations");
}

/* =========================================================
OTORUS® — WHAT IS OTORUS?
Paste into Elementor Page Settings > Advanced > Custom CSS.
All rules are scoped to .otorus-explainer.
========================================================= */

.otorus-explainer {
--oe-forest-950: #0f1d12;
--oe-forest-900: #142719;
--oe-forest-800: #203923;
--oe-forest-700: #315335;
--oe-forest-500: #6f9367;
--oe-cream-500: #e7d5aa;
--oe-cream-300: #f0e4c9;
--oe-cream-100: #f8f3e9;
--oe-paper: #fbfaf7;
--oe-white: #ffffff;
--oe-ink: #1d2820;
--oe-copy: #626b64;
--oe-line: rgba(30, 52, 33, 0.12);
--oe-line-light: rgba(255, 255, 255, 0.15);
--oe-radius-xl: 34px;
--oe-radius-lg: 26px;
--oe-radius-md: 18px;
--oe-shadow-soft:
0 1px 0 rgba(255, 255, 255, 0.72) inset,
0 24px 70px rgba(26, 42, 28, 0.11);
--oe-shadow-deep:
0 1px 0 rgba(255, 255, 255, 0.12) inset,
0 34px 90px rgba(7, 18, 10, 0.24);
position: relative;
isolation: isolate;
width: 100%;
background: var(--oe-paper);
color: var(--oe-ink);
font-family: inherit;
line-height: 1.5;
}

.otorus-explainer *,
.otorus-explainer *::before,
.otorus-explainer *::after {
box-sizing: border-box;
}

.otorus-explainer img {
display: block;
max-width: 100%;
}

.otorus-explainer h1,
.otorus-explainer h2,
.otorus-explainer h3,
.otorus-explainer p,
.otorus-explainer figure,
.otorus-explainer ol,
.otorus-explainer ul {
margin-top: 0;
}

.otorus-explainer h1,
.otorus-explainer h2,
.otorus-explainer h3 {
color: inherit;
font-weight: 100;
text-wrap: balance;
}

.otorus-explainer p,
.otorus-explainer li {
text-wrap: pretty;
}

.otorus-explainer a {
color: inherit;
text-decoration: none;
}

.otorus-explainer a:focus-visible {
outline: 3px solid rgba(231, 213, 170, 0.88);
outline-offset: 4px;
}

.oe-shell {
width: min(100% - clamp(34px, 6vw, 96px), 1380px);
margin-inline: auto;
}

.oe-section {
position: relative;
padding-block: clamp(82px, 10vw, 150px);
scroll-margin-top: 110px;
}

.oe-kicker {
margin-bottom: 20px;
color: #b38d3d;
font-size: 11px;
font-weight: 800;
letter-spacing: 0.2em;
line-height: 1.2;
text-transform: uppercase;
}

.oe-lead {
font-size: clamp(20px, 1.75vw, 27px);
line-height: 1.48;
}

.oe-section-heading {
width: min(100%, 760px);
margin-bottom: clamp(44px, 6vw, 76px);
}

.oe-section-heading--center {
margin-inline: auto;
text-align: center;
}

.oe-section-heading h2,
.oe-intro h2,
.oe-translation h2,
.oe-construction h2,
.oe-materials h2,
.oe-experience h2,
.oe-not-therapy h2,
.oe-cta h2 {
margin-bottom: 24px;
font-size: clamp(42px, 5.4vw, 78px);
font-weight: 430;
letter-spacing: -0.052em;
line-height: 0.98;
}

.oe-section-heading > p:last-child,
.oe-intro__copy > p,
.oe-translation__copy > p,
.oe-construction__copy > p,
.oe-materials__copy > p,
.oe-experience__copy > p,
.oe-not-therapy__card > p,
.oe-cta__copy > p {
color: var(--oe-copy);
font-size: clamp(16px, 1.25vw, 20px);
line-height: 1.7;
}

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

1. HERO
   ========================================================= */

.oe-hero {
--scene-p: 0.5;
--hero-max-y: 0px;
--hero-mini-y: 0px;
--hero-passive-y: 0px;
position: relative;
min-height: max(720px, calc(100svh - 40px));
display: grid;
align-items: center;
overflow: clip;
background:
radial-gradient(circle at 76% 44%, rgba(126, 162, 114, 0.25), transparent 28%),
radial-gradient(circle at 12% 12%, rgba(231, 213, 170, 0.10), transparent 32%),
linear-gradient(135deg, var(--oe-forest-950) 0%, #17321d 58%, #234328 100%);
color: var(--oe-white);
}

.oe-hero::before {
position: absolute;
inset: 0;
background:
linear-gradient(115deg, rgba(255, 255, 255, 0.045), transparent 32%),
repeating-linear-gradient(
90deg,
transparent 0,
transparent calc(25% - 1px),
rgba(255, 255, 255, 0.027) 25%
);
content: "";
pointer-events: none;
}

.oe-hero__grid {
position: relative;
z-index: 2;
display: grid;
grid-template-columns: minmax(0, 0.82fr) minmax(500px, 1.18fr);
gap: clamp(48px, 7vw, 112px);
align-items: center;
padding-block: clamp(90px, 11vw, 150px);
}

.oe-hero__copy {
max-width: 650px;
}

.oe-hero__copy .oe-kicker,
.oe-construction .oe-kicker,
.oe-cta .oe-kicker {
color: var(--oe-cream-500);
}

.oe-hero h1 {
margin-bottom: 30px;
color: var(--oe-cream-300);
max-width: 12ch;
font-size: clamp(38px, 4vw, 60px);
font-weight: 400;
letter-spacing: -0.035em;
line-height: 1.02;
}

.oe-hero .oe-lead {
max-width: 38em;
margin-bottom: 18px;
color: rgba(255, 255, 255, 0.92);
font-size: clamp(18px, 1.35vw, 22px);
line-height: 1.5;
}

.oe-hero__detail {
max-width: 38em;
margin-bottom: 34px;
color: rgba(255, 255, 255, 0.62);
font-size: clamp(15px, 1.05vw, 18px);
line-height: 1.68;
}

.oe-actions {
display: flex;
flex-wrap: wrap;
gap: 18px 26px;
align-items: center;
}

.oe-button {
min-height: 54px;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 15px 25px;
border: 1px solid transparent;
border-radius: 999px;
font-size: 15px;
font-weight: 700;
line-height: 1;
transition:
transform 220ms ease,
box-shadow 220ms ease,
background-color 220ms ease;
}

.oe-button:hover {
transform: translateY(-2px);
}

.oe-button--cream {
background: var(--oe-cream-300);
box-shadow: 0 14px 34px rgba(0, 0, 0, 0.2);
color: var(--oe-forest-950) !important;
}

.oe-button--cream:hover {
background: #f7ebcf;
box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
}

.oe-text-link {
display: inline-flex;
gap: 9px;
align-items: center;
color: rgba(255, 255, 255, 0.82) !important;
font-size: 15px;
font-weight: 650;
transition: color 200ms ease;
}

.oe-text-link span {
font-size: 20px;
transition: transform 200ms ease;
}

.oe-text-link:hover {
color: var(--oe-white) !important;
}

.oe-text-link:hover span {
transform: translateY(3px);
}

.oe-hero__visual {
position: relative;
min-height: clamp(530px, 55vw, 760px);
perspective: 1300px;
}

.oe-hero__visual::before {
position: absolute;
inset: 10% 4% 5%;
border: 1px solid rgba(255, 255, 255, 0.10);
border-radius: 50%;
background:
radial-gradient(circle at 50% 50%, rgba(219, 231, 208, 0.14), transparent 48%),
linear-gradient(145deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.01));
box-shadow:
0 0 100px rgba(131, 171, 116, 0.16),
inset 0 1px 0 rgba(255, 255, 255, 0.12);
content: "";
}

.oe-product-float {
position: absolute;
z-index: 2;
width: clamp(190px, 18vw, 290px);
margin: 0;
overflow: visible;
border: 0;
border-radius: 0;
background: transparent;
box-shadow: none;
transform-style: preserve-3d;
transition: filter 250ms ease;
}

.oe-product-float:hover {
z-index: 6;
filter: brightness(1.035);
}

.oe-product-float img {
display: block;
width: 100%;
aspect-ratio: 0.78;
object-fit: contain;
object-position: center;
background: transparent;
filter: drop-shadow(0 32px 34px rgba(0, 0, 0, 0.34));
}

.oe-product-float figcaption {
position: absolute;
bottom: -8px;
left: 50%;
display: flex;
align-items: center;
justify-content: space-between;
width: max-content;
min-width: 112px;
padding: 8px 12px;
border: 1px solid rgba(255, 255, 255, 0.13);
border-radius: 999px;
background: rgba(10, 28, 15, 0.58);
color: var(--oe-cream-300);
font-size: 10px;
font-weight: 800;
letter-spacing: 0.1em;
transform: translateX(-50%);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
}

.oe-product-float figcaption span {
margin-left: 16px;
color: rgba(255, 255, 255, 0.6);
font-size: 10px;
font-weight: 650;
letter-spacing: 0.03em;
}

.oe-product-float--max {
z-index: 4;
top: 7%;
left: 50%;
width: clamp(230px, 22vw, 350px);
transform:
translate3d(-50%, var(--hero-max-y), 30px)
rotateY(-2deg);
}

.oe-product-float--mini {
top: 16%;
left: 0;
width: clamp(190px, 18vw, 290px);
transform:
translate3d(0, var(--hero-mini-y), -80px)
rotateY(8deg)
rotateZ(-3deg);
}

.oe-product-float--passive {
top: 24%;
right: 0;
width: clamp(170px, 16vw, 250px);
transform:
translate3d(0, var(--hero-passive-y), -110px)
rotateY(-9deg)
rotateZ(3deg);
}

.oe-orbit {
position: absolute;
z-index: 1;
top: 44%;
left: 50%;
border: 1px solid rgba(231, 213, 170, 0.25);
border-radius: 50%;
transform: translate(-50%, -50%) rotate(-12deg);
pointer-events: none;
}

.oe-orbit--one {
width: 86%;
height: 30%;
}

.oe-orbit--two {
width: 63%;
height: 52%;
transform: translate(-50%, -50%) rotate(68deg);
}

.oe-scroll-cue {
position: absolute;
z-index: 3;
bottom: 30px;
left: 50%;
display: flex;
gap: 12px;
align-items: center;
color: rgba(255, 255, 255, 0.54);
font-size: 11px;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
transform: translateX(-50%);
}

.oe-scroll-cue span {
position: relative;
width: 1px;
height: 34px;
overflow: hidden;
background: rgba(255, 255, 255, 0.16);
}

.oe-scroll-cue span::after {
position: absolute;
inset: 0;
background: var(--oe-cream-500);
content: "";
animation: oe-scroll-cue 1.8s ease-in-out infinite;
transform: translateY(-100%);
}

@keyframes oe-scroll-cue {
0% { transform: translateY(-100%); }
55%, 100% { transform: translateY(100%); }
}

/* =========================================================
2. INTRO + TRANSLATION
========================================================= */

.oe-intro {
background:
radial-gradient(circle at 12% 20%, rgba(231, 213, 170, 0.28), transparent 28%),
var(--oe-paper);
}

.oe-intro__grid {
display: grid;
grid-template-columns: minmax(160px, 0.45fr) minmax(0, 1.55fr);
gap: clamp(40px, 9vw, 150px);
align-items: start;
}

.oe-intro__copy {
max-width: 980px;
}

.oe-intro h2 {
color: var(--oe-forest-900);
}

.oe-intro__copy > p {
max-width: 48em;
}

.oe-translation {
padding-block: clamp(42px, 6vw, 82px);
overflow: clip;
background: var(--oe-cream-100);
}

.oe-translation__card {
display: grid;
grid-template-columns: minmax(300px, 0.68fr) minmax(0, 1.32fr);
overflow: hidden;
border: 1px solid rgba(30, 52, 33, 0.10);
border-radius: var(--oe-radius-xl);
background: var(--oe-white);
box-shadow: var(--oe-shadow-soft);
}

.oe-translation__copy {
display: flex;
flex-direction: column;
justify-content: center;
padding: clamp(46px, 6vw, 82px);
}

.oe-translation h2 {
color: var(--oe-forest-900);
font-size: clamp(38px, 4.5vw, 67px);
}

.oe-translation__visual {
position: relative;
min-height: 520px;
margin: 0;
overflow: hidden;
background: var(--oe-forest-900);
}

.oe-translation__visual::after {
position: absolute;
inset: 0;
background:
linear-gradient(90deg, rgba(18, 39, 23, 0.14), transparent 35%),
linear-gradient(0deg, rgba(10, 23, 13, 0.32), transparent 24%);
content: "";
pointer-events: none;
}

.oe-translation__visual img {
width: 100%;
height: 100%;
object-fit: cover;
}

.oe-translation__visual figcaption {
position: absolute;
z-index: 2;
right: 22px;
bottom: 18px;
color: rgba(255, 255, 255, 0.66);
font-size: 11px;
letter-spacing: 0.02em;
}

/* =========================================================
3. SIGNAL PATH
========================================================= */

.oe-signal {
overflow: clip;
background:
radial-gradient(circle at 90% 8%, rgba(111, 147, 103, 0.13), transparent 30%),
var(--oe-paper);
}

.oe-signal-path {
position: relative;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 14px;
margin: 0;
padding: 0;
list-style: none;
}

.oe-signal-path::before {
position: absolute;
z-index: 0;
top: 43px;
right: 7%;
left: 7%;
height: 1px;
background: linear-gradient(90deg, transparent, #c7a75d 15%, #6f9367 85%, transparent);
content: "";
}

.oe-signal-step {
position: relative;
z-index: 1;
min-height: 290px;
display: flex;
flex-direction: column;
gap: 30px;
padding: 20px;
border: 1px solid var(--oe-line);
border-radius: 22px;
background: rgba(255, 255, 255, 0.82);
box-shadow: 0 16px 48px rgba(30, 48, 31, 0.07);
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
}

.oe-signal-step__number {
width: 46px;
height: 46px;
display: inline-flex;
align-items: center;
justify-content: center;
border: 1px solid rgba(179, 141, 61, 0.34);
border-radius: 50%;
background: var(--oe-cream-100);
color: #967331;
font-size: 11px;
font-weight: 800;
letter-spacing: 0.08em;
}

.oe-signal-step h3 {
margin-bottom: 12px;
color: var(--oe-forest-900);
font-size: clamp(18px, 1.55vw, 23px);
font-weight: 650;
letter-spacing: -0.025em;
line-height: 1.13;
}

.oe-signal-step p {
margin-bottom: 0;
color: var(--oe-copy);
font-size: 14px;
line-height: 1.6;
}

/* =========================================================
4. STICKY CONSTRUCTION SCENE
========================================================= */

.oe-construction {
--scene-p: 0;
--field-opacity: 0;
--field-scale: 0.82;
--ring-scale: 0.94;
--cap-y: 0px;
--cap-rotate: 0deg;
--cap-opacity: 1;
--callout-opacity: 0;
position: relative;
min-height: 220svh;
color: var(--oe-white);
background:
radial-gradient(circle at 75% 42%, rgba(102, 144, 92, 0.22), transparent 30%),
linear-gradient(135deg, #102015 0%, #162e1b 58%, #1b3820 100%);
}

.oe-construction__sticky {
position: sticky;
top: 82px;
height: calc(100svh - 82px);
min-height: 690px;
display: flex;
align-items: center;
overflow: clip;
}

.oe-construction__sticky::before {
position: absolute;
inset: 0;
background:
linear-gradient(115deg, rgba(255, 255, 255, 0.04), transparent 38%),
repeating-linear-gradient(
90deg,
transparent 0,
transparent calc(20% - 1px),
rgba(255, 255, 255, 0.025) 20%
);
content: "";
pointer-events: none;
}

.oe-construction__grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: minmax(320px, 0.76fr) minmax(500px, 1.24fr);
gap: clamp(36px, 7vw, 112px);
align-items: center;
}

.oe-construction__copy {
max-width: 560px;
}

.oe-construction h2 {
color: var(--oe-cream-300);
}

.oe-construction__copy > p {
color: rgba(255, 255, 255, 0.67);
}

.oe-construction__hint {
display: flex;
gap: 12px;
align-items: center;
margin-top: 34px;
color: rgba(255, 255, 255, 0.46) !important;
font-size: 12px !important;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
}

.oe-construction__hint::before {
width: 34px;
height: 1px;
background: var(--oe-cream-500);
content: "";
}

.oe-exploded {
position: relative;
min-height: min(72vh, 720px);
}

.oe-exploded::before {
position: absolute;
inset: 6% 6% 3%;
border: 1px solid rgba(255, 255, 255, 0.10);
border-radius: 50%;
background:
radial-gradient(circle at 50% 55%, rgba(231, 213, 170, 0.16), transparent 26%),
rgba(255, 255, 255, 0.025);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
content: "";
}

.oe-field-lines {
position: absolute;
z-index: 1;
inset: 0;
width: 100%;
height: 100%;
opacity: var(--field-opacity);
transform: scale(var(--field-scale));
transform-origin: 50% 64%;
}

.oe-field-lines ellipse {
stroke-dasharray: 7 10;
animation: oe-field-flow 9s linear infinite;
}

.oe-field-lines ellipse:nth-child(2n) {
animation-direction: reverse;
animation-duration: 12s;
}

@keyframes oe-field-flow {
to { stroke-dashoffset: -180; }
}

.oe-product-layers {
position: absolute;
z-index: 3;
inset: 0;
display: grid;
place-items: center;
pointer-events: none;
}

.oe-product-layer {
position: absolute;
width: min(57%, 430px);
max-height: 94%;
object-fit: contain;
filter: drop-shadow(0 30px 42px rgba(0, 0, 0, 0.26));
transform-origin: center center;
}

.oe-product-layer--ring {
transform: scale(var(--ring-scale));
}

.oe-product-layer--cap {
opacity: var(--cap-opacity);
transform:
translate3d(0, var(--cap-y), 0)
rotate(var(--cap-rotate));
}

.oe-callout {
position: absolute;
z-index: 6;
min-width: 180px;
padding: 13px 15px;
border: 1px solid rgba(255, 255, 255, 0.13);
border-radius: 14px;
background: rgba(15, 29, 18, 0.72);
box-shadow: 0 18px 44px rgba(0, 0, 0, 0.18);
opacity: var(--callout-opacity);
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
}

.oe-callout::before {
position: absolute;
top: 50%;
width: 62px;
height: 1px;
background: rgba(231, 213, 170, 0.52);
content: "";
}

.oe-callout > span {
position: absolute;
top: calc(50% - 3px);
width: 7px;
height: 7px;
border: 1px solid var(--oe-cream-500);
border-radius: 50%;
background: var(--oe-forest-900);
}

.oe-callout strong,
.oe-callout small {
display: block;
}

.oe-callout strong {
color: var(--oe-cream-300);
font-size: 12px;
letter-spacing: 0.035em;
}

.oe-callout small {
margin-top: 4px;
color: rgba(255, 255, 255, 0.56);
font-size: 10px;
}

.oe-callout--jack {
top: 18%;
left: 1%;
}

.oe-callout--winding {
right: 0;
bottom: 24%;
}

.oe-callout--torus {
bottom: 7%;
left: 7%;
}

.oe-callout--jack::before,
.oe-callout--torus::before {
right: -62px;
}

.oe-callout--jack > span,
.oe-callout--torus > span {
right: -66px;
}

.oe-callout--winding::before {
left: -62px;
}

.oe-callout--winding > span {
left: -66px;
}

/* =========================================================
5. PRODUCT FAMILY
========================================================= */

.oe-family {
overflow: clip;
background:
radial-gradient(circle at 50% 0%, rgba(231, 213, 170, 0.32), transparent 32%),
var(--oe-cream-100);
}

.oe-family-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(16px, 2vw, 28px);
align-items: stretch;
}

.oe-family-card {
position: relative;
overflow: hidden;
border: 1px solid var(--oe-line);
border-radius: var(--oe-radius-lg);
background: rgba(255, 255, 255, 0.82);
box-shadow: var(--oe-shadow-soft);
transition: transform 280ms ease, box-shadow 280ms ease;
}

.oe-family-card:hover {
transform: translateY(-8px);
box-shadow:
0 1px 0 rgba(255, 255, 255, 0.8) inset,
0 34px 80px rgba(26, 42, 28, 0.16);
}

.oe-family-card--featured {
transform: translateY(-20px);
}

.oe-family-card--featured:hover {
transform: translateY(-28px);
}

.oe-family-card__media {
position: relative;
overflow: hidden;
background:
radial-gradient(circle at 50% 40%, rgba(255, 255, 255, 0.98), rgba(234, 230, 218, 0.88));
}

.oe-family-card__media::after {
position: absolute;
right: 15%;
bottom: 5%;
left: 15%;
height: 24px;
border-radius: 50%;
background: rgba(25, 43, 27, 0.16);
filter: blur(13px);
content: "";
}

.oe-family-card__media img {
position: relative;
z-index: 1;
display: block;
width: 100%;
aspect-ratio: 1 / 1;
object-fit: contain;
object-position: center;
background: #f7f5ee;
transition: transform 500ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.oe-family-card:hover .oe-family-card__media img {
transform: scale(1.012);
}

.oe-family-card__body {
padding: clamp(25px, 3vw, 40px);
}

.oe-family-card__type {
margin-bottom: 12px;
color: #aa8437;
font-size: 10px;
font-weight: 800;
letter-spacing: 0.18em;
}

.oe-family-card h3 {
margin-bottom: 10px;
color: var(--oe-forest-900);
font-size: clamp(27px, 2.4vw, 38px);
font-weight: 520;
letter-spacing: -0.04em;
line-height: 1.05;
}

.oe-family-card__spec {
margin-bottom: 22px;
color: var(--oe-forest-500);
font-size: 13px;
font-weight: 750;
letter-spacing: 0.04em;
}

.oe-family-card__body > p:last-child {
margin-bottom: 0;
color: var(--oe-copy);
font-size: 15px;
line-height: 1.65;
}

/* =========================================================
6. USE MODES
========================================================= */

.oe-use {
background: var(--oe-paper);
}

.oe-use-grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(400px, 0.9fr);
gap: clamp(28px, 5vw, 76px);
align-items: stretch;
}

.oe-use-image {
position: relative;
min-height: 660px;
margin: 0;
overflow: hidden;
border: 1px solid var(--oe-line);
border-radius: var(--oe-radius-xl);
background: var(--oe-cream-100);
box-shadow: var(--oe-shadow-soft);
}

.oe-use-image img {
width: 100%;
height: 100%;
object-fit: cover;
}

.oe-use-image__inset {
position: absolute;
right: 24px;
bottom: 24px;
width: clamp(150px, 31%, 230px);
aspect-ratio: 0.82;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.78);
border-radius: 22px;
background: var(--oe-cream-100);
box-shadow: 0 22px 48px rgba(16, 38, 23, 0.23);
}

.oe-use-image__inset img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 28%;
}

.oe-use-list {
display: grid;
gap: 14px;
}

.oe-use-card {
display: grid;
grid-template-columns: 46px minmax(0, 1fr);
gap: 20px;
align-items: start;
padding: clamp(23px, 3vw, 34px);
border: 1px solid var(--oe-line);
border-radius: 20px;
background: rgba(255, 255, 255, 0.78);
transition: transform 220ms ease, background-color 220ms ease;
}

.oe-use-card:hover {
background: var(--oe-white);
transform: translateX(6px);
}

.oe-use-card > span {
width: 38px;
height: 38px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background: var(--oe-forest-900);
color: var(--oe-cream-300);
font-size: 10px;
font-weight: 800;
}

.oe-use-card h3 {
margin-bottom: 8px;
color: var(--oe-forest-900);
font-size: clamp(21px, 1.8vw, 27px);
font-weight: 580;
letter-spacing: -0.03em;
}

.oe-use-card p {
margin-bottom: 0;
color: var(--oe-copy);
font-size: 14px;
line-height: 1.62;
}

/* =========================================================
7. MATERIALS
========================================================= */

.oe-materials {
overflow: clip;
background:
radial-gradient(circle at 16% 14%, rgba(255, 255, 255, 0.74), transparent 31%),
var(--oe-cream-100);
}

.oe-materials__grid {
display: grid;
grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
gap: clamp(44px, 8vw, 120px);
align-items: center;
}

.oe-materials__copy {
max-width: 620px;
}

.oe-materials h2 {
color: var(--oe-forest-900);
}

.oe-material-chips {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin: 34px 0 0;
padding: 0;
list-style: none;
}

.oe-material-chips li {
padding: 10px 14px;
border: 1px solid rgba(30, 52, 33, 0.12);
border-radius: 999px;
background: rgba(255, 255, 255, 0.62);
color: var(--oe-forest-800);
font-size: 12px;
font-weight: 700;
}

.oe-materials__media {
position: relative;
margin: 0;
overflow: hidden;
border: 1px solid var(--oe-line);
border-radius: var(--oe-radius-xl);
background: #e6e1d6;
box-shadow: var(--oe-shadow-soft);
}

.oe-materials__media img {
width: 100%;
aspect-ratio: 1 / 0.95;
object-fit: cover;
transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.oe-materials__media:hover img {
transform: scale(1.045);
}

.oe-materials__media figcaption {
position: absolute;
right: 18px;
bottom: 18px;
padding: 9px 12px;
border: 1px solid rgba(255, 255, 255, 0.5);
border-radius: 999px;
background: rgba(250, 247, 239, 0.72);
color: var(--oe-forest-900);
font-size: 10px;
font-weight: 750;
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
}

/* =========================================================
8. ECOSYSTEM
========================================================= */

.oe-ecosystem {
overflow: clip;
background:
radial-gradient(circle at 86% 16%, rgba(111, 147, 103, 0.12), transparent 28%),
var(--oe-paper);
}

.oe-ecosystem-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(16px, 2vw, 26px);
}

.oe-ecosystem .oe-section-heading h2 {
max-width: 18ch;
margin-inline: auto;
font-size: clamp(38px, 4.8vw, 68px);
text-wrap: wrap;
word-break: keep-all;
overflow-wrap: normal;
}

.oe-system-card {
overflow: hidden;
border: 1px solid var(--oe-line);
border-radius: var(--oe-radius-lg);
background: var(--oe-white);
box-shadow: 0 20px 60px rgba(29, 45, 30, 0.08);
transition: transform 260ms ease, box-shadow 260ms ease;
}

.oe-system-card:hover {
transform: translateY(-7px);
box-shadow: 0 30px 74px rgba(29, 45, 30, 0.14);
}

.oe-system-card__media {
display: grid;
place-items: center;
min-height: 330px;
padding: 24px;
overflow: hidden;
background:
radial-gradient(circle at 50% 45%, #ffffff 0%, #efede5 72%);
}

.oe-system-card__media img {
width: 100%;
max-height: 300px;
object-fit: contain;
filter: drop-shadow(0 22px 24px rgba(17, 26, 18, 0.15));
transition: transform 420ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.oe-system-card:hover .oe-system-card__media img {
transform: scale(1.04) translateY(-4px);
}

.oe-ecosystem-grid .oe-system-card:nth-child(2) .oe-system-card__media,
.oe-ecosystem-grid .oe-system-card:nth-child(3) .oe-system-card__media {
height: clamp(280px, 23vw, 350px);
min-height: 0;
padding: 0;
background: #e9e6dc;
}

.oe-ecosystem-grid .oe-system-card:nth-child(2) .oe-system-card__media img,
.oe-ecosystem-grid .oe-system-card:nth-child(3) .oe-system-card__media img {
width: 100%;
height: 100%;
max-height: none;
object-fit: cover;
object-position: center;
filter: none;
}

.oe-ecosystem-grid .oe-system-card:nth-child(2):hover .oe-system-card__media img,
.oe-ecosystem-grid .oe-system-card:nth-child(3):hover .oe-system-card__media img {
transform: scale(1.025);
}

.oe-system-card__body {
position: relative;
padding: clamp(24px, 3vw, 38px);
}

.oe-system-card__index {
position: absolute;
top: 29px;
right: 30px;
margin: 0;
color: rgba(30, 52, 33, 0.28);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.1em;
}

.oe-system-card h3 {
max-width: 80%;
margin-bottom: 14px;
color: var(--oe-forest-900);
font-size: clamp(23px, 2vw, 31px);
font-weight: 560;
letter-spacing: -0.035em;
line-height: 1.08;
}

.oe-system-card__body > p:last-child {
margin-bottom: 0;
color: var(--oe-copy);
font-size: 14px;
line-height: 1.62;
}

/* =========================================================
9. EXPERIENCE + DISCLAIMER
========================================================= */

.oe-experience {
background:
radial-gradient(circle at 10% 12%, rgba(231, 213, 170, 0.09), transparent 30%),
var(--oe-forest-900);
color: var(--oe-white);
}

.oe-experience__grid {
display: grid;
grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.15fr);
gap: clamp(34px, 6vw, 94px);
align-items: center;
}

.oe-experience h2 {
color: var(--oe-cream-300);
}

.oe-experience__copy > p {
color: rgba(255, 255, 255, 0.68);
}

.oe-experience-list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
margin: 32px 0 26px;
padding: 0;
list-style: none;
}

.oe-experience-list li {
padding: 13px 15px;
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 14px;
background: rgba(255, 255, 255, 0.055);
color: rgba(255, 255, 255, 0.86);
font-size: 13px;
font-weight: 650;
}

.oe-note {
margin-bottom: 0;
padding-left: 15px;
border-left: 1px solid rgba(231, 213, 170, 0.5);
color: rgba(255, 255, 255, 0.47) !important;
font-size: 12px !important;
line-height: 1.6 !important;
}

.oe-experience__media {
min-height: 650px;
margin: 0;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: var(--oe-radius-xl);
box-shadow: var(--oe-shadow-deep);
}

.oe-experience__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}

.oe-not-therapy {
padding-block: clamp(54px, 8vw, 100px);
background: var(--oe-paper);
}

.oe-not-therapy__card {
padding: clamp(45px, 7vw, 88px);
border: 1px solid var(--oe-line);
border-radius: var(--oe-radius-xl);
background:
radial-gradient(circle at 88% 12%, rgba(111, 147, 103, 0.17), transparent 28%),
linear-gradient(135deg, #ffffff, #f6f5ee);
box-shadow: var(--oe-shadow-soft);
}

.oe-not-therapy h2 {
max-width: 13ch;
color: var(--oe-forest-900);
}

.oe-not-therapy__card > p:last-child {
max-width: 54em;
margin-bottom: 0;
}

/* =========================================================
10. CTA
========================================================= */

.oe-cta {
position: relative;
overflow: clip;
padding-block: clamp(90px, 12vw, 170px);
background:
radial-gradient(circle at 78% 50%, rgba(111, 147, 103, 0.28), transparent 27%),
linear-gradient(135deg, var(--oe-forest-950), #1c3821 72%, #294b2e);
color: var(--oe-white);
}

.oe-cta::after {
position: absolute;
top: 50%;
right: -8vw;
width: min(52vw, 740px);
aspect-ratio: 1;
border: 1px solid rgba(231, 213, 170, 0.15);
border-radius: 50%;
box-shadow:
0 0 0 38px rgba(231, 213, 170, 0.035),
0 0 0 80px rgba(231, 213, 170, 0.022),
0 0 0 126px rgba(231, 213, 170, 0.014);
content: "";
transform: translateY(-50%);
pointer-events: none;
}

.oe-cta__inner {
position: relative;
z-index: 2;
display: flex;
gap: 42px;
align-items: flex-end;
justify-content: space-between;
}

.oe-cta__copy {
max-width: 780px;
}

.oe-cta h2 {
color: var(--oe-cream-300);
}

.oe-cta__copy > p:last-child {
margin-bottom: 0;
color: rgba(255, 255, 255, 0.62);
}

.oe-cta .oe-actions {
flex: 0 0 auto;
align-items: flex-start;
flex-direction: column;
}

.oe-text-link--light:hover span {
transform: translateX(4px);
}

/* =========================================================
SCROLL REVEAL
========================================================= */

.oe-reveal {
opacity: 0;
transform: translate3d(0, 28px, 0);
transition:
opacity 750ms cubic-bezier(0.22, 1, 0.36, 1),
transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
}

.oe-reveal.is-visible {
opacity: 1;
transform: translate3d(0, 0, 0);
}

.oe-signal-step:nth-child(2),
.oe-family-card:nth-child(2),
.oe-system-card:nth-child(2) {
transition-delay: 90ms;
}

.oe-signal-step:nth-child(3),
.oe-family-card:nth-child(3),
.oe-system-card:nth-child(3) {
transition-delay: 180ms;
}

.oe-signal-step:nth-child(4) { transition-delay: 270ms; }
.oe-signal-step:nth-child(5) { transition-delay: 360ms; }

/* =========================================================
TABLET
========================================================= */

@media (max-width: 1100px) {
.oe-hero__grid {
grid-template-columns: minmax(0, 0.9fr) minmax(440px, 1.1fr);
gap: 36px;
}

.oe-product-float--mini { left: -2%; }
.oe-product-float--passive { right: -2%; }

.oe-signal-path {
grid-template-columns: repeat(2, minmax(0, 1fr));
}

.oe-signal-path::before {
display: none;
}

.oe-signal-step {
min-height: 0;
}

.oe-signal-step:last-child {
grid-column: 1 / -1;
}

.oe-construction__grid {
grid-template-columns: minmax(270px, 0.72fr) minmax(440px, 1.28fr);
gap: 32px;
}

.oe-callout--jack { left: -3%; }
.oe-callout--winding { right: -2%; }

.oe-family-grid,
.oe-ecosystem-grid {
gap: 15px;
}

.oe-family-card__body,
.oe-system-card__body {
padding: 25px;
}

.oe-use-grid {
grid-template-columns: minmax(0, 0.9fr) minmax(380px, 1.1fr);
gap: 28px;
}

.oe-use-image {
min-height: 600px;
}
}

/* =========================================================
MOBILE / SMALL TABLET
========================================================= */

@media (max-width: 820px) {
.oe-shell {
width: min(100% - 32px, 680px);
}

.oe-section {
padding-block: 82px;
}

.oe-hero {
min-height: auto;
}

.oe-hero__grid {
grid-template-columns: 1fr;
gap: 30px;
padding-block: 92px 82px;
}

.oe-hero__copy {
max-width: 610px;
}

.oe-hero h1 {
max-width: 12ch;
font-size: clamp(34px, 8.5vw, 52px);
}

.oe-hero__visual {
min-height: 560px;
}

.oe-product-float {
width: min(37vw, 235px);
}

.oe-product-float--max {
top: 5%;
left: 50%;
width: min(44vw, 285px);
}

.oe-product-float--mini {
top: 18%;
left: 2%;
width: min(37vw, 235px);
}

.oe-product-float--passive {
top: 23%;
right: 2%;
width: min(34vw, 210px);
}

.oe-scroll-cue {
display: none;
}

.oe-intro__grid,
.oe-translation__card,
.oe-materials__grid,
.oe-experience__grid {
grid-template-columns: 1fr;
}

.oe-intro__grid {
gap: 22px;
}

.oe-translation__copy {
padding: 46px 30px;
}

.oe-translation__visual {
min-height: 400px;
}

.oe-construction {
min-height: auto;
padding-block: 86px;
}

.oe-construction__sticky {
position: relative;
top: auto;
height: auto;
min-height: 0;
overflow: visible;
}

.oe-construction__grid {
grid-template-columns: 1fr;
}

.oe-exploded {
min-height: 660px;
}

.oe-product-layer {
width: min(58%, 390px);
}

.oe-product-layer--cap {
transform: translate3d(0, -82px, 0) rotate(2deg);
}

.oe-field-lines {
opacity: 0.82;
transform: scale(1);
}

.oe-callout {
opacity: 1;
}

.oe-family-grid,
.oe-ecosystem-grid {
grid-template-columns: 1fr;
}

.oe-family-card--featured,
.oe-family-card--featured:hover {
transform: none;
}

.oe-family-card__media img {
aspect-ratio: 1 / 0.92;
}

.oe-use-grid {
grid-template-columns: 1fr;
}

.oe-use-image {
min-height: 520px;
}

.oe-materials__copy {
order: 1;
}

.oe-materials__media {
order: 0;
}

.oe-experience__media {
min-height: 540px;
}

.oe-cta__inner {
align-items: flex-start;
flex-direction: column;
}
}

/* =========================================================
PHONE
========================================================= */

@media (max-width: 560px) {
.oe-shell {
width: min(100% - 24px, 520px);
}

.oe-section {
padding-block: 68px;
}

.oe-section-heading h2,
.oe-intro h2,
.oe-translation h2,
.oe-construction h2,
.oe-materials h2,
.oe-experience h2,
.oe-not-therapy h2,
.oe-cta h2 {
font-size: clamp(38px, 12vw, 58px);
}

.oe-kicker {
margin-bottom: 15px;
font-size: 10px;
}

.oe-hero__grid {
padding-block: 74px 60px;
}

.oe-hero h1 {
max-width: 12ch;
font-size: clamp(32px, 10vw, 46px);
}

.oe-hero__visual {
min-height: 470px;
}

.oe-product-float {
border-radius: 18px;
}

.oe-product-float figcaption {
padding: 10px 11px;
font-size: 9px;
}

.oe-product-float figcaption span {
font-size: 8px;
}

.oe-product-float--max {
top: 8%;
left: 50%;
width: min(45vw, 240px);
}

.oe-product-float--mini {
top: 21%;
left: -1%;
width: min(36vw, 195px);
}

.oe-product-float--passive {
top: 25%;
right: -1%;
}

.oe-actions {
align-items: flex-start;
flex-direction: column;
}

.oe-button {
width: 100%;
}

.oe-translation {
padding-block: 18px;
}

.oe-translation__card {
border-radius: 24px;
}

.oe-translation__visual {
min-height: 300px;
}

.oe-translation__visual figcaption {
display: none;
}

.oe-signal-path {
grid-template-columns: 1fr;
}

.oe-signal-step:last-child {
grid-column: auto;
}

.oe-signal-step {
min-height: 0;
flex-direction: row;
gap: 18px;
}

.oe-signal-step__number {
flex: 0 0 42px;
width: 42px;
height: 42px;
}

.oe-exploded {
min-height: 560px;
}

.oe-product-layer {
width: min(70%, 330px);
}

.oe-callout {
min-width: 0;
padding: 10px 11px;
}

.oe-callout::before,
.oe-callout > span {
display: none;
}

.oe-callout--jack {
top: 14%;
left: 0;
}

.oe-callout--winding {
right: 0;
bottom: 24%;
}

.oe-callout--torus {
bottom: 8%;
left: 0;
}

.oe-family-card__media img {
aspect-ratio: 1 / 0.9;
}

.oe-use-image,
.oe-experience__media {
min-height: 420px;
}

.oe-use-card {
grid-template-columns: 40px minmax(0, 1fr);
gap: 15px;
padding: 21px;
}

.oe-materials__media img {
aspect-ratio: 1;
}

.oe-system-card__media {
min-height: 270px;
}

.oe-experience-list {
grid-template-columns: 1fr;
}

.oe-not-therapy__card {
padding: 36px 26px;
border-radius: 24px;
}

.oe-cta::after {
width: 90vw;
opacity: 0.7;
}
}

/* =========================================================
REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
.otorus-explainer *,
.otorus-explainer *::before,
.otorus-explainer *::after {
scroll-behavior: auto !important;
animation-duration: 0.001ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.001ms !important;
}

.oe-reveal {
opacity: 1;
transform: none;
}

.oe-product-layer--cap {
transform: translate3d(0, -120px, 0);
}

.oe-callout,
.oe-field-lines {
opacity: 1;
}
}

/* Keep heading weights consistent across all cards and sections. */
.otorus-explainer h1,
.otorus-explainer h2,
.otorus-explainer h3 {
font-weight: 400;
}

.oe-brand-lockup{white-space:nowrap;}
.oe-registered{margin-left:.06em;font-size:.32em;font-weight:400;line-height:0;vertical-align:super;}

/* =========================================================
FINAL PAGE TYPOGRAPHY OVERRIDE
H1: Aldrich, bold and uppercase.
All remaining page text: smaller Quicksand.
========================================================= */

.otorus-explainer,
.otorus-explainer p,
.otorus-explainer p *,
.otorus-explainer li,
.otorus-explainer li *,
.otorus-explainer a,
.otorus-explainer button,
.otorus-explainer input,
.otorus-explainer textarea,
.otorus-explainer select,
.otorus-explainer label,
.otorus-explainer figcaption {
font-family: "OTORUS Quicksand", sans-serif !important;
}

.otorus-explainer h1,
.otorus-explainer h1 *,
.otorus-explainer .oe-hero h1,
.otorus-explainer .oe-hero h1 * {
font-family: "OTORUS Aldrich", sans-serif !important;
font-weight: 700 !important;
font-style: normal !important;
text-transform: uppercase !important;
}

.otorus-explainer h1,
.otorus-explainer .oe-hero h1 {
font-size: clamp(38px, 4vw, 60px) !important;
line-height: 1.04 !important;
letter-spacing: 0.015em !important;
}

.otorus-explainer .oe-registered {
font-family: inherit !important;
font-size: 0.32em !important;
font-weight: 400 !important;
line-height: 0 !important;
}

.otorus-explainer h2,
.otorus-explainer h2 *,
.otorus-explainer h3,
.otorus-explainer h3 *,
.otorus-explainer h4,
.otorus-explainer h4 *,
.otorus-explainer h5,
.otorus-explainer h5 *,
.otorus-explainer h6,
.otorus-explainer h6 * {
font-family: "OTORUS Quicksand", sans-serif !important;
font-style: normal !important;
font-weight: 600 !important;
letter-spacing: -0.015em !important;
line-height: 1.2 !important;
text-transform: none !important;
}

.otorus-explainer h2 {
font-size: clamp(27px, 2.8vw, 40px) !important;
}

.otorus-explainer h3 {
font-size: clamp(23px, 2.1vw, 30px) !important;
}

.otorus-explainer h4 {
font-size: clamp(19px, 1.6vw, 24px) !important;
}

.otorus-explainer h5 {
font-size: clamp(17px, 1.25vw, 20px) !important;
}

.otorus-explainer h6 {
font-size: clamp(15px, 1vw, 17px) !important;
letter-spacing: 0.04em !important;
}

.otorus-explainer p:not(.oe-kicker),
.otorus-explainer li {
font-size: clamp(15px, 0.95vw, 17px) !important;
line-height: 1.65 !important;
}

.otorus-explainer .oe-lead {
font-size: clamp(17px, 1.15vw, 20px) !important;
line-height: 1.55 !important;
}

.otorus-explainer .oe-kicker {
font-size: 10px !important;
}

.otorus-explainer .oe-button,
.otorus-explainer button {
font-size: 14px !important;
}

@media (max-width: 767px) {
.otorus-explainer h1,
.otorus-explainer .oe-hero h1 {
font-size: clamp(32px, 10vw, 46px) !important;
}

.otorus-explainer h2 {
font-size: clamp(25px, 7vw, 34px) !important;
}

.otorus-explainer h3 {
font-size: clamp(21px, 5.3vw, 27px) !important;
}
}

/* =========================================================
   OTORUS HOMEPAGE VISUAL ALIGNMENT — SEPTEMBER 2026
   Softer off-white surfaces, homepage greens and hero type.
   ========================================================= */

.otorus-explainer {
--oe-forest-950: #182718;
--oe-forest-900: #314a2d;
--oe-forest-800: #384c2c;
--oe-forest-700: #496447;
--oe-forest-500: #6f9367;
--oe-cream-500: #e7d8b5;
--oe-cream-300: #f1e9da;
--oe-cream-100: #f3ebdd;
--oe-paper: #f3eee4;
--oe-white: #f7f2e8;
--oe-ink: #314a2d;
--oe-copy: #5e625d;
--oe-line: rgba(49, 74, 45, 0.14);
--oe-line-light: rgba(241, 233, 218, 0.17);
--oe-shadow-soft:
0 1px 0 rgba(241, 233, 218, 0.76) inset,
0 24px 70px rgba(49, 74, 45, 0.11);
--oe-shadow-deep:
0 1px 0 rgba(241, 233, 218, 0.14) inset,
0 34px 90px rgba(24, 39, 24, 0.24);
}

.otorus-explainer .oe-hero h1,
.otorus-explainer .oe-hero h1 * {
font-family: "OTORUS Aldrich", Aldrich, sans-serif !important;
font-size: clamp(48px, 5vw, 76px) !important;
font-weight: 400 !important;
letter-spacing: -0.045em !important;
line-height: 0.98 !important;
}

.oe-product-float figcaption {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 14px;
white-space: nowrap;
}

.oe-product-float figcaption span {
margin-left: 0;
white-space: nowrap;
}

.oe-signal-step,
.oe-family-card,
.oe-use-card,
.oe-system-card {
background: rgba(247, 242, 232, 0.88);
}

.oe-family-card__media {
background: radial-gradient(circle at 50% 40%, #f7f2e8, #eee6d8 78%);
}

.oe-family-card__media img {
background: #f3ebdd;
}

.oe-system-card__media {
background: radial-gradient(circle at 50% 45%, #f7f2e8 0%, #eee6d8 72%);
}

.oe-not-therapy__card {
background:
radial-gradient(circle at 88% 12%, rgba(111, 147, 103, 0.17), transparent 28%),
linear-gradient(135deg, #f7f2e8, #f1e9da);
}

.oe-materials {
background:
radial-gradient(circle at 16% 14%, rgba(247, 242, 232, 0.78), transparent 31%),
var(--oe-cream-100);
}

.oe-material-chips li {
background: rgba(247, 242, 232, 0.68);
}

.oe-construction {
--cap-y: 18px;
background:
radial-gradient(circle at 75% 42%, rgba(102, 144, 92, 0.22), transparent 30%),
linear-gradient(135deg, #182718 0%, #203a22 58%, #29482c 100%);
}

.oe-product-layer {
filter: drop-shadow(0 30px 42px rgba(24, 39, 24, 0.28));
}

@media (max-width: 820px) {
.otorus-explainer .oe-hero h1,
.otorus-explainer .oe-hero h1 * {
font-size: clamp(40px, 9vw, 60px) !important;
}

.oe-product-layer--cap {
transform: translate3d(0, -74px, 0) rotate(2deg);
}
}

@media (max-width: 560px) {
.otorus-explainer .oe-hero h1,
.otorus-explainer .oe-hero h1 * {
font-size: clamp(34px, 10vw, 48px) !important;
}
}

/* Kleinere header What is OTORUS */
.otorus-explainer .oe-hero h1,
.otorus-explainer .oe-hero h1 * {
  font-size: clamp(40px, 4.2vw, 60px) !important;
}

@media (max-width: 820px) {
  .otorus-explainer .oe-hero h1,
  .otorus-explainer .oe-hero h1 * {
    font-size: clamp(36px, 8vw, 52px) !important;
  }
}

@media (max-width: 560px) {
  .otorus-explainer .oe-hero h1,
  .otorus-explainer .oe-hero h1 * {
    font-size: clamp(32px, 9vw, 42px) !important;
  }
}

/* Productlabels lager plaatsen */
.oe-product-float figcaption {
  bottom: -30px;
}

/* Rotatie van de MINI-tekst corrigeren */
.oe-product-float--mini figcaption {
  transform: translateX(-50%) rotate(3deg);
}

/* Rotatie van de PASSIVE-tekst corrigeren */
.oe-product-float--passive figcaption {
  transform: translateX(-50%) rotate(-3deg);
}

/* MAX blijft horizontaal */
.oe-product-float--max figcaption {
  transform: translateX(-50%);
}/* End custom CSS */