@font-face {
	font-family: "Archivo";
	src: url("../fonts/archivo-latin.woff2") format("woff2");
	font-style: normal;
	font-weight: 500 700;
	font-display: swap;
}

@font-face {
	font-family: "Noto Sans";
	src: url("../fonts/noto-sans-latin.woff2") format("woff2");
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
}

@font-face {
	font-family: "Noto Sans Mono";
	src: url("../fonts/noto-sans-mono-latin.woff2") format("woff2");
	font-style: normal;
	font-weight: 500 600;
	font-display: swap;
}

:root {
	--ranama-blue: #223f99;
	--ranama-green: #406d5a;
	--ranama-amber: #d99a2b;
	--ranama-navy: #2b3e5b;
	--ranama-mist: #edf1f4;
	--ranama-white: #fff;
	--ranama-slate: #6c7f91;
	--ranama-steel: #a9b2bc;
	--ranama-ink: #17263b;
	--ranama-line: rgba(43, 62, 91, 0.18);
	--ranama-shell: min(1400px, calc(100vw - clamp(2rem, 7vw, 7rem)));
}

html {
	scroll-behavior: smooth;
}

body {
	background: var(--ranama-mist);
	color: var(--ranama-navy);
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	overflow-x: clip;
}

body.admin-bar .ranama-home-header {
	top: 32px;
}

.ranama-home,
.ranama-home *,
.ranama-home-header *,
.ranama-home-footer * {
	box-sizing: border-box;
}

.ranama-home {
	overflow: clip;
}

.ranama-home section {
	position: relative;
}

.ranama-home section[id] {
	scroll-margin-top: 5.25rem;
}

.ranama-home h1,
.ranama-home h2,
.ranama-home h3,
.ranama-home p,
.ranama-home figure,
.ranama-home-header p,
.ranama-home-footer p {
	margin: 0;
}

.ranama-home h1,
.ranama-home h2,
.ranama-home h3 {
	font-family: "Archivo", Arial, sans-serif;
	font-weight: 600;
	letter-spacing: -0.04em;
	line-height: 0.98;
}

.ranama-home h1 em,
.ranama-home h2 em {
	font-style: normal;
	font-weight: 500;
}

.ranama-home img,
.ranama-home-header img,
.ranama-home-footer img {
	display: block;
	max-width: 100%;
}

.ranama-home a,
.ranama-home-header a,
.ranama-home-footer a {
	color: inherit;
	text-decoration: none;
}

.ranama-home a:focus-visible,
.ranama-home-header a:focus-visible,
.ranama-home-header button:focus-visible,
.ranama-home-footer a:focus-visible,
.ranama-product:focus-visible {
	outline: 2px solid var(--ranama-amber);
	outline-offset: 5px;
}

.ranama-shell {
	margin-inline: auto;
	width: var(--ranama-shell);
}

.ranama-kicker,
.ranama-micro {
	align-items: center;
	display: flex;
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.68rem;
	font-weight: 600;
	gap: 0.8rem;
	letter-spacing: 0.11em;
	line-height: 1.35;
	text-transform: uppercase;
}

.ranama-kicker > span {
	align-items: center;
	background: var(--ranama-amber);
	color: var(--ranama-ink);
	display: inline-flex;
	font-size: 0.61rem;
	height: 1.55rem;
	justify-content: center;
	letter-spacing: 0;
	min-width: 1.8rem;
	padding-inline: 0.35rem;
}

.ranama-kicker--light {
	color: rgba(255, 255, 255, 0.78);
}

.ranama-actions,
.ranama-conversion__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1.4rem 2rem;
}

.ranama-button {
	align-items: center;
	display: inline-flex;
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 0.73rem;
	font-weight: 700;
	gap: 2.75rem;
	justify-content: space-between;
	letter-spacing: 0.08em;
	line-height: 1;
	min-height: 3.75rem;
	padding: 0 1.35rem;
	text-transform: uppercase;
	transition: background-color 220ms ease, color 220ms ease, transform 220ms ease;
}

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

.ranama-button--amber {
	background: var(--ranama-amber);
	color: var(--ranama-ink) !important;
	min-width: 13.75rem;
}

.ranama-button--amber:hover {
	background: var(--ranama-white);
}

.ranama-button--outline-light {
	border: 1px solid rgba(255, 255, 255, 0.48);
	color: var(--ranama-white) !important;
}

.ranama-button--outline-light:hover {
	background: var(--ranama-white);
	color: var(--ranama-navy) !important;
}

.ranama-text-link {
	align-items: center;
	border-bottom: 1px solid currentColor;
	display: inline-flex;
	font-size: 0.76rem;
	font-weight: 700;
	gap: 2rem;
	justify-content: space-between;
	letter-spacing: 0.055em;
	line-height: 1.35;
	padding-block: 0.55rem;
	text-transform: uppercase;
	transition: color 180ms ease, gap 180ms ease;
}

.ranama-text-link:hover {
	color: var(--ranama-blue);
	gap: 2.55rem;
}

.ranama-text-link--light {
	color: var(--ranama-white) !important;
}

.ranama-text-link--light:hover {
	color: var(--ranama-amber) !important;
}

/* Front-page control strip */
.ranama-skip-link {
	background: var(--ranama-white);
	color: var(--ranama-navy);
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 0.8rem;
	font-weight: 700;
	left: 1rem;
	padding: 0.8rem 1.1rem;
	position: fixed;
	top: -6rem;
	z-index: 10020;
}

.ranama-skip-link:focus {
	top: 1rem;
}

.ranama-home-header {
	color: var(--ranama-white);
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: background-color 240ms ease, box-shadow 240ms ease;
	z-index: 5000;
}

.ranama-home-header::after {
	background: rgba(255, 255, 255, 0.32);
	bottom: 0;
	content: "";
	height: 1px;
	left: clamp(1rem, 3vw, 3rem);
	position: absolute;
	right: clamp(1rem, 3vw, 3rem);
}

.ranama-home-header.is-scrolled,
.ranama-home-header.is-menu-open {
	background: rgba(43, 62, 91, 0.97);
	box-shadow: 0 12px 35px rgba(16, 31, 51, 0.15);
}

.ranama-home-header__bar {
	align-items: center;
	display: grid;
	grid-template-columns: auto 1fr;
	height: 5.25rem;
	margin-inline: auto;
	width: min(1600px, calc(100vw - clamp(2rem, 6vw, 6rem)));
}

.ranama-home-header__brand {
	align-items: center;
	display: flex;
	height: 100%;
	padding-right: clamp(1rem, 2.7vw, 3rem);
}

.ranama-home-header__brand img {
	height: auto;
	width: clamp(7.2rem, 9vw, 9.5rem);
}

.ranama-home-header__nav {
	height: 100%;
	justify-self: end;
}

.ranama-home-header__menu {
	display: flex;
	height: 100%;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ranama-home-header__menu > li {
	display: flex;
	position: relative;
}

.ranama-home-header__menu > li > a,
.ranama-home-header__menu > li > button {
	align-items: center;
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	display: flex;
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: 0.69rem;
	font-weight: 600;
	gap: 0.45rem;
	letter-spacing: 0.045em;
	padding-inline: clamp(0.65rem, 1.35vw, 1.4rem);
	position: relative;
	transition: background-color 180ms ease, color 180ms ease;
	white-space: nowrap;
}

.ranama-home-header__menu > li > a::after,
.ranama-home-header__menu > li > button::after {
	background: var(--ranama-amber);
	bottom: 0;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	right: 50%;
	transition: left 180ms ease, right 180ms ease;
}

.ranama-home-header__menu > li > a:hover::after,
.ranama-home-header__menu > li > a:focus-visible::after,
.ranama-home-header__menu > li > button:hover::after,
.ranama-home-header__menu > li > button:focus-visible::after,
.ranama-home-header__item--has-submenu.is-submenu-open > button::after,
.ranama-home-header__item--has-submenu:focus-within > button::after {
	left: 0;
	right: 0;
}

.ranama-home-header__menu > li > button > span {
	color: var(--ranama-amber);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.75rem;
	transition: transform 180ms ease;
}

.ranama-home-header__item--has-submenu.is-submenu-open > button > span {
	transform: rotate(45deg);
}

.ranama-home-header__submenu {
	background: rgba(23, 38, 59, 0.985);
	border-top: 3px solid var(--ranama-amber);
	display: grid;
	left: 0;
	min-width: 24rem;
	opacity: 0;
	padding: 0.7rem 1rem 1rem;
	pointer-events: none;
	position: absolute;
	top: calc(100% - 1px);
	transform: translateY(-0.6rem);
	transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
	visibility: hidden;
	z-index: 3;
}

.ranama-home-header__item--products .ranama-home-header__submenu {
	left: 50%;
	min-width: 29rem;
	transform: translate(-50%, -0.6rem);
}

.ranama-home-header__item--has-submenu:hover > .ranama-home-header__submenu,
.ranama-home-header__item--has-submenu:focus-within > .ranama-home-header__submenu,
.ranama-home-header__item--has-submenu.is-submenu-open > .ranama-home-header__submenu {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	visibility: visible;
}

.ranama-home-header__item--products:hover > .ranama-home-header__submenu,
.ranama-home-header__item--products:focus-within > .ranama-home-header__submenu,
.ranama-home-header__item--products.is-submenu-open > .ranama-home-header__submenu {
	transform: translate(-50%, 0);
}

.ranama-home-header__submenu a {
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.35;
	padding: 0.85rem 0.3rem;
	transition: color 180ms ease, padding-left 180ms ease;
}

.ranama-home-header__submenu a:hover,
.ranama-home-header__submenu a:focus-visible {
	color: var(--ranama-amber);
	padding-left: 0.7rem;
}

.ranama-home-header__submenu .ranama-home-header__submenu-child {
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.67rem;
	padding-left: 1.4rem;
}

.ranama-home-header__menu .ranama-home-header__quote {
	background: var(--ranama-amber);
	color: var(--ranama-ink);
	font-weight: 700;
	margin-left: 0.7rem;
	padding-inline: 1.25rem;
	text-transform: uppercase;
}

.ranama-home-header__menu .ranama-home-header__quote::after {
	display: none;
}

.ranama-home-header__menu .ranama-home-header__quote > span {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
}

.ranama-home-header__toggle {
	background: transparent;
	border: 0;
	color: var(--ranama-white);
	cursor: pointer;
	display: none;
	font: inherit;
}

/* Opening operating environment */
.ranama-hero {
	background: var(--ranama-navy);
	color: var(--ranama-white);
	min-height: max(49rem, 100svh);
}

.ranama-hero__image {
	bottom: 0;
	clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%, 0 74%, 6% 74%, 6% 30%, 12% 30%);
	left: 31%;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
}

.ranama-hero__image::after {
	background: linear-gradient(90deg, rgba(43, 62, 91, 0.84) 0%, rgba(43, 62, 91, 0.12) 40%, rgba(23, 38, 59, 0.08) 100%);
	content: "";
	inset: 0;
	position: absolute;
}

.ranama-hero__image img {
	height: 100%;
	object-fit: cover;
	object-position: 59% center;
	width: 100%;
}

.ranama-hero__cage {
	background-image: linear-gradient(rgba(255, 255, 255, 0.13) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.13) 1px, transparent 1px);
	background-size: clamp(4rem, 7.6vw, 8rem) clamp(4rem, 7.6vw, 8rem);
	bottom: 0;
	clip-path: polygon(47% 0, 100% 0, 100% 100%, 0 100%, 0 43%);
	inset-inline: 30% 0;
	op: 0;
	position: absolute;
}

.ranama-hero__plane {
	background: linear-gradient(118deg, var(--ranama-navy) 0%, var(--ranama-navy) 69%, rgba(43, 62, 91, 0.92) 85%, rgba(43, 62, 91, 0) 100%);
	clip-path: polygon(0 0, 88% 0, 100% 19%, 87% 38%, 93% 74%, 76% 100%, 0 100%);
	display: flex;
	flex-direction: column;
	inset: 0 auto 0 0;
	justify-content: space-between;
	padding: clamp(8.4rem, 17vh, 11rem) 0 clamp(2.5rem, 5.5vh, 4.5rem) max(3.5vw, calc((100vw - 1600px) / 2));
	position: absolute;
	width: min(58rem, 63vw);
	z-index: 2;
}

.ranama-hero__content {
	max-width: min(47rem, 54vw);
}

.ranama-hero h1 {
	font-size: clamp(3.25rem, 5.65vw, 6.75rem);
	line-height: 0.91;
	margin-top: clamp(1.25rem, 3vh, 2.2rem);
	max-width: 8.4em;
}

.ranama-hero h1 em {
	color: var(--ranama-amber);
	display: block;
}

.ranama-hero__copy {
	display: grid;
	font-size: clamp(0.84rem, 1vw, 1rem);
	gap: 1.5rem;
	grid-template-columns: minmax(12rem, 0.75fr) minmax(16rem, 1.25fr);
	line-height: 1.65;
	margin-top: clamp(1.7rem, 4vh, 2.8rem);
	max-width: 45rem;
}

.ranama-hero__copy p:first-child {
	font-size: 1.05em;
	font-weight: 600;
}

.ranama-hero__copy p:last-child {
	color: rgba(255, 255, 255, 0.75);
}

.ranama-hero .ranama-actions {
	margin-top: clamp(1.8rem, 4vh, 3rem);
}

.ranama-hero__register {
	border-top: 1px solid rgba(255, 255, 255, 0.32);
	display: grid;
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.61rem;
	grid-template-columns: repeat(3, 1fr);
	letter-spacing: 0.045em;
	line-height: 1.45;
	max-width: min(46rem, 51vw);
	padding-top: 0.9rem;
	text-transform: uppercase;
}

.ranama-hero__register p {
	border-right: 1px solid rgba(255, 255, 255, 0.22);
	padding-right: 1rem;
}

.ranama-hero__register p + p {
	padding-left: 1rem;
}

.ranama-hero__register p:last-child {
	border-right: 0;
}

.ranama-hero__register span {
	color: var(--ranama-amber);
	display: block;
	font-size: 0.51rem;
	margin-bottom: 0.25rem;
}

.ranama-process-origin {
	align-items: center;
	display: flex;
	left: min(59vw, 59rem);
	position: absolute;
	top: calc(100% - 1px);
	z-index: 4;
}

.ranama-process-origin__label {
	background: var(--ranama-amber);
	color: var(--ranama-ink);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.55rem;
	letter-spacing: 0.08em;
	padding: 0.55rem 0.8rem;
	text-transform: uppercase;
}

.ranama-process-origin i {
	background: var(--ranama-amber);
	height: 1px;
	width: 22vw;
}

/* Principal capability */
.ranama-capability {
	background: var(--ranama-mist);
	padding: clamp(8rem, 15vw, 14rem) 0 clamp(8rem, 13vw, 12rem);
}

.ranama-capability::before {
	background: var(--ranama-line);
	content: "";
	left: calc((100vw - var(--ranama-shell)) / 2 + 4.8rem);
	position: absolute;
	top: 0;
	width: 1px;
	height: 23%;
}

.ranama-capability__statement {
	padding-left: clamp(5rem, 12vw, 12rem);
}

.ranama-capability__statement h2 {
	color: var(--ranama-navy);
	font-size: clamp(3.3rem, 7.1vw, 7.8rem);
	line-height: 0.95;
	margin-top: clamp(1.8rem, 4vw, 3.5rem);
	max-width: 10.5em;
}

.ranama-capability__statement h2 em {
	color: var(--ranama-blue);
	display: block;
	max-width: 9em;
}

.ranama-capability__operation {
	align-items: end;
	display: grid;
	gap: clamp(3rem, 8vw, 8rem);
	grid-template-columns: minmax(0, 1.35fr) minmax(19rem, 0.65fr);
	margin-top: clamp(6rem, 12vw, 11rem);
}

.ranama-capability__aperture {
	clip-path: polygon(0 0, 82% 0, 82% 10%, 100% 10%, 100% 100%, 17% 100%, 17% 91%, 0 91%);
	height: clamp(27rem, 47vw, 43rem);
	overflow: hidden;
	position: relative;
}

.ranama-capability__aperture::after {
	border-right: 1px solid rgba(255, 255, 255, 0.58);
	border-top: 1px solid rgba(255, 255, 255, 0.58);
	content: "";
	height: 37%;
	position: absolute;
	right: 2.5rem;
	top: 2.5rem;
	width: 34%;
}

.ranama-capability__aperture img {
	height: 100%;
	object-fit: cover;
	object-position: 52% center;
	width: 100%;
}

.ranama-capability__aperture figcaption,
.ranama-about__people figcaption {
	background: var(--ranama-white);
	bottom: 0;
	color: var(--ranama-navy);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.58rem;
	letter-spacing: 0.07em;
	padding: 0.8rem 1rem;
	position: absolute;
	right: 0;
	text-transform: uppercase;
}

.ranama-capability__aperture figcaption span,
.ranama-about__people figcaption span {
	color: var(--ranama-blue);
	display: block;
	font-size: 0.5rem;
}

.ranama-capability__body {
	border-top: 3px solid var(--ranama-blue);
	font-size: clamp(0.92rem, 1.12vw, 1.05rem);
	padding-top: 2rem;
}

.ranama-capability__body p + p {
	margin-top: 1.25rem;
}

.ranama-capability__body .ranama-text-link {
	margin-top: 2.2rem;
}

/* Routed lifecycle process bay */
.ranama-lifecycle {
	background: var(--ranama-navy);
	color: var(--ranama-white);
	padding: clamp(8rem, 13vw, 12rem) 0 clamp(7rem, 10vw, 10rem);
}

.ranama-lifecycle::before {
	background-image: linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 7.5rem 7.5rem;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.ranama-lifecycle__intro {
	align-items: end;
	display: grid;
	gap: 5rem;
	grid-template-columns: 1.35fr 0.65fr;
	position: relative;
	z-index: 2;
}

.ranama-lifecycle__intro h2 {
	font-size: clamp(4rem, 8vw, 8.5rem);
	margin-top: 2rem;
}

.ranama-lifecycle__intro h2 em {
	color: var(--ranama-amber);
}

.ranama-lifecycle__intro > p {
	border-left: 1px solid rgba(255, 255, 255, 0.3);
	color: rgba(255, 255, 255, 0.76);
	font-size: clamp(0.98rem, 1.2vw, 1.15rem);
	padding: 0 0 0 2rem;
}

.ranama-lifecycle__bay {
	height: 112rem;
	margin-top: clamp(5rem, 9vw, 9rem);
	position: relative;
}

.ranama-lifecycle__route {
	height: 100%;
	inset: 0;
	overflow: visible;
	position: absolute;
	width: 100%;
}

.ranama-lifecycle__route-base,
.ranama-lifecycle__route-progress {
	fill: none;
	stroke-linecap: square;
	stroke-linejoin: miter;
	stroke-width: 2;
}

.ranama-lifecycle__route-base {
	stroke: rgba(255, 255, 255, 0.19);
}

.ranama-lifecycle__route-progress {
	stroke: var(--ranama-amber);
}

html.ranama-motion-ready .ranama-lifecycle__route-progress {
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
	transition: stroke-dashoffset 2.2s cubic-bezier(0.22, 1, 0.36, 1);
}

html.ranama-motion-ready .ranama-lifecycle.is-route-active .ranama-lifecycle__route-progress {
	stroke-dashoffset: 0;
}

.ranama-stage {
	position: absolute;
	z-index: 2;
}

.ranama-stage--01 {
	display: grid;
	gap: 2rem;
	grid-template-columns: minmax(19rem, 23rem) minmax(0, 1fr);
	left: 10%;
	top: 0;
	width: 76%;
}

.ranama-stage--01 .ranama-stage__copy {
	grid-column: 1;
	grid-row: 1;
}

.ranama-stage--01 .ranama-stage__image {
	grid-column: 2;
	grid-row: 1;
	height: 20rem;
	margin-top: 4rem;
	width: min(40rem, 48vw);
}

.ranama-stage--02 {
	display: grid;
	column-gap: 6rem;
	grid-template-columns: minmax(18rem, 31rem) 18rem;
	left: 0;
	top: 31rem;
}

.ranama-stage--02 .ranama-stage__copy {
	grid-column: 2;
	grid-row: 1;
	padding-top: 5rem;
}

.ranama-stage--02 .ranama-stage__image {
	grid-column: 1;
	grid-row: 1;
	height: 20rem;
	margin-left: -1rem;
}

.ranama-stage--03 {
	display: grid;
	gap: 2rem;
	grid-template-columns: 15rem minmax(20rem, 33rem);
	left: 35%;
	top: 48.5rem;
}

.ranama-stage--03 .ranama-stage__copy {
	grid-column: 2;
	grid-row: 1;
}

.ranama-stage--03 .ranama-stage__image {
	grid-column: 1;
	grid-row: 1;
	height: 20rem;
	margin-top: 8.5rem;
}

.ranama-stage--04,
.ranama-stage--05 {
	border-top: 0;
	padding-top: 0;
	top: 88.5rem;
	width: 24%;
}

.ranama-stage--04 {
	left: 52%;
}

.ranama-stage--05 {
	left: 76.5%;
	padding-top: 1.5rem;
	top: 95rem;
}

.ranama-stage__coordinate {
	align-items: center;
	display: flex;
	height: 2.2rem;
	position: relative;
}

.ranama-stage__coordinate span {
	color: var(--ranama-amber);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.ranama-stage__coordinate i {
	background: var(--ranama-amber);
	height: 7px;
	margin-left: 0.65rem;
	width: 7px;
}

.ranama-stage__copy .ranama-micro {
	color: rgba(255, 255, 255, 0.52);
	font-size: 0.53rem;
	margin-bottom: 0.8rem;
}

.ranama-stage h3 {
	font-size: clamp(2.1rem, 3.3vw, 3.6rem);
	line-height: 1;
}

.ranama-stage__copy > p:last-child {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.88rem;
	line-height: 1.65;
	margin-top: 1rem;
	max-width: 25rem;
}

.ranama-stage__image {
	overflow: hidden;
	position: relative;
}

.ranama-stage__image::after {
	border: 1px solid rgba(255, 255, 255, 0.58);
	content: "";
	inset: 1.2rem;
	position: absolute;
}

.ranama-stage__image img {
	height: 100%;
	object-fit: cover;
	transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
	width: 100%;
}

.ranama-stage__image:hover img {
	transform: scale(1.035);
}

.ranama-aperture--drum {
	clip-path: inset(0 round 8rem 8rem 0 0);
}

.ranama-aperture--handle {
	clip-path: polygon(0 0, 72% 0, 72% 13%, 100% 13%, 100% 100%, 0 100%);
}

.ranama-aperture--cage {
	clip-path: polygon(0 0, 90% 0, 90% 10%, 100% 10%, 100% 90%, 90% 90%, 90% 100%, 0 100%);
}

.ranama-lifecycle__branch {
	color: rgba(255, 255, 255, 0.48);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.54rem;
	left: calc(76.84% + 0.9rem);
	letter-spacing: 0.08em;
	position: absolute;
	text-transform: uppercase;
	top: 66.5rem;
	transform: rotate(180deg);
	writing-mode: vertical-rl;
}

.ranama-lifecycle__cta {
	bottom: 0;
	left: 4%;
	position: absolute;
	z-index: 3;
}

/* Product dispatch floor / object theatre */
.ranama-products {
	background: var(--ranama-mist);
	padding: clamp(8rem, 13vw, 12rem) 0 clamp(8rem, 11vw, 10rem);
}

.ranama-products__topline {
	background: var(--ranama-amber);
	height: 3px;
	left: 0;
	position: absolute;
	top: 0;
	width: 37%;
}

.ranama-products__topline::after {
	background: var(--ranama-line);
	content: "";
	height: 1px;
	left: 100%;
	position: absolute;
	top: 1px;
	width: 170%;
}

.ranama-products__topline span {
	background: var(--ranama-mist);
	color: var(--ranama-slate);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.53rem;
	letter-spacing: 0.08em;
	padding: 0.4rem 0.7rem;
	position: absolute;
	right: 0;
	top: -0.75rem;
	text-transform: uppercase;
}

.ranama-products__intro {
	align-items: end;
	display: grid;
	gap: clamp(3rem, 8vw, 8rem);
	grid-template-columns: 1.35fr 0.65fr;
}

.ranama-products__intro h2 {
	font-size: clamp(3.6rem, 6.7vw, 7.2rem);
	margin-top: 2rem;
}

.ranama-products__intro h2 em {
	color: var(--ranama-blue);
}

.ranama-products__intro > p {
	border-top: 3px solid var(--ranama-blue);
	font-size: 1rem;
	padding-top: 1.5rem;
}

.ranama-products__floor {
	height: 72rem;
	margin-top: clamp(6rem, 10vw, 10rem);
	position: relative;
}

.ranama-products__grid {
	background-image: linear-gradient(var(--ranama-line) 1px, transparent 1px), linear-gradient(90deg, var(--ranama-line) 1px, transparent 1px);
	background-size: 6.5rem 6.5rem;
	inset: -6.5rem 0 -6.5rem;
	position: absolute;
}

.ranama-products__grid::after {
	display: none;
}

.ranama-product {
	position: absolute;
	z-index: 2;
}

.ranama-product__object {
	filter: saturate(0.96) contrast(1.03);
	position: absolute;
	transition: filter 260ms ease, transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ranama-product__object img {
	height: 100%;
	mix-blend-mode: multiply;
	object-fit: contain;
	width: 100%;
}

.ranama-product__label {
	background: rgba(255, 255, 255, 0.92);
	border-top: 3px solid var(--ranama-blue);
	box-shadow: 0 18px 36px rgba(43, 62, 91, 0.08);
	padding: 1.1rem 1.25rem 1.3rem;
	position: absolute;
	transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
	z-index: 3;
}

.ranama-product__label .ranama-micro {
	color: var(--ranama-blue);
	font-size: 0.5rem;
	margin-bottom: 0.7rem;
}

.ranama-product__label h3 {
	font-family: "Noto Sans", Arial, sans-serif;
	font-size: clamp(1rem, 1.4vw, 1.35rem);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.12;
}

.ranama-product__label > p:not(.ranama-micro) {
	color: var(--ranama-slate);
	font-size: 0.76rem;
	line-height: 1.55;
	margin-top: 0.75rem;
}

.ranama-product__label a {
	border-top: 1px solid var(--ranama-line);
	display: flex;
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.54rem;
	font-weight: 600;
	justify-content: space-between;
	letter-spacing: 0.05em;
	margin-top: 1rem;
	padding-top: 0.75rem;
	text-transform: uppercase;
}

.ranama-product__label a:hover {
	color: var(--ranama-blue);
}

.ranama-product:hover .ranama-product__object,
.ranama-product:focus-within .ranama-product__object,
.ranama-product:focus .ranama-product__object {
	filter: saturate(1.08) contrast(1.06);
	transform: translateY(-0.75rem) scale(1.025);
}

.ranama-product:hover .ranama-product__label,
.ranama-product:focus-within .ranama-product__label,
.ranama-product:focus .ranama-product__label {
	transform: translateY(-0.35rem);
}

.ranama-product--ibc {
	height: 47rem;
	left: 36%;
	top: 0;
	width: 43%;
}

.ranama-product--ibc::before {
	display: none;
}

.ranama-product--ibc .ranama-product__object {
	height: 43rem;
	left: 1rem;
	top: -2rem;
	width: 31rem;
}

.ranama-product--ibc .ranama-product__label {
	right: -3rem;
	top: 9rem;
	width: 20rem;
}

.ranama-product--drum {
	height: 35rem;
	left: 0;
	top: 17rem;
	width: 32%;
}

.ranama-product--drum .ranama-product__object {
	height: 31rem;
	left: 0;
	top: -3rem;
	width: 19rem;
}

.ranama-product--drum .ranama-product__label {
	bottom: 0;
	left: 8rem;
	width: 18rem;
}

.ranama-product--jerrycan {
	height: 29rem;
	left: 22%;
	top: 43rem;
	width: 42%;
}

.ranama-product--jerrycan .ranama-product__object {
	height: 22rem;
	left: auto;
	right: 0;
	top: -1rem;
	width: 13rem;
}

.ranama-product--jerrycan .ranama-product__label {
	bottom: 0;
	left: auto;
	right: 11.5rem;
	width: 20rem;
}

.ranama-product--jumbo {
	height: 35rem;
	right: 0;
	top: 36rem;
	width: 34%;
}

.ranama-product--jumbo .ranama-product__object {
	height: 28rem;
	right: 0;
	top: -4rem;
	width: 20rem;
}

.ranama-product--jumbo .ranama-product__label {
	bottom: 0;
	right: 10rem;
	width: 19rem;
}

.ranama-products__footer {
	padding-top: 9rem;
	position: relative;
	z-index: 3;
}

.ranama-products__all {
	position: static;
}

/* Specialist route */
.ranama-specialist-flow {
	background: linear-gradient(to bottom, var(--ranama-mist) 0 28%, var(--ranama-white) 28% 100%);
	padding: clamp(5rem, 9vw, 9rem) 0 clamp(9rem, 13vw, 13rem);
	position: relative;
}

.ranama-specialist-flow::before {
	background: var(--ranama-blue);
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 3rem;
	width: calc((100vw - var(--ranama-shell)) / 2 + 18%);
}

.ranama-scheduled__frame {
	background: var(--ranama-navy);
	color: var(--ranama-white);
	display: grid;
	grid-template-columns: 1.08fr 0.92fr;
	min-height: 43rem;
	overflow: hidden;
	position: relative;
}

.ranama-scheduled__frame::before {
	background-image: linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
	background-size: 5.5rem 5.5rem;
	clip-path: polygon(0 0, 100% 0, 100% 36%, 82% 36%, 82% 100%, 0 100%);
	content: "";
	inset: 0;
	position: absolute;
}

.ranama-scheduled__image {
	clip-path: polygon(0 0, 82% 0, 82% 8%, 100% 8%, 100% 100%, 18% 100%, 18% 92%, 0 92%);
	margin: 3rem 2rem 3rem 3rem;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.ranama-scheduled__image::after {
	background: linear-gradient(90deg, transparent 58%, rgba(43, 62, 91, 0.58));
	content: "";
	inset: 0;
	position: absolute;
}

.ranama-scheduled__image img {
	height: 100%;
	object-fit: cover;
	object-position: 55% center;
	width: 100%;
}

.ranama-scheduled__content {
	align-self: center;
	margin-left: -1rem;
	padding: 5rem clamp(3rem, 6vw, 6rem) 5rem 0;
	position: relative;
	z-index: 2;
}

.ranama-scheduled h2 {
	font-size: clamp(2.8rem, 4.6vw, 5rem);
	margin: 2rem 0 2.2rem;
}

.ranama-scheduled h2 em {
	color: var(--ranama-amber);
	display: block;
}

.ranama-scheduled__content > p:not(.ranama-kicker) {
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.93rem;
	max-width: 35rem;
}

.ranama-scheduled__content > p + p {
	margin-top: 1rem;
}

.ranama-scheduled__content .ranama-text-link {
	margin-top: 2.2rem;
}

.ranama-scheduled__seal {
	align-items: center;
	display: flex;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 4;
}

.ranama-scheduled__seal span {
	background: var(--ranama-amber);
	color: var(--ranama-ink);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.51rem;
	letter-spacing: 0.08em;
	padding: 0.6rem 0.8rem;
	text-transform: uppercase;
}

.ranama-scheduled__seal i {
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 50%;
	height: 2rem;
	margin-left: 0.8rem;
	width: 2rem;
}

/* Facility, proof, and institutional depth */
.ranama-depth {
	background: var(--ranama-white);
}

.ranama-depth__facility {
	height: clamp(32rem, 66vw, 58rem);
	overflow: hidden;
	position: relative;
}

.ranama-depth__facility::after {
	background: linear-gradient(to bottom, rgba(23, 38, 59, 0.05) 35%, rgba(23, 38, 59, 0.7) 100%);
	content: "";
	inset: 0;
	position: absolute;
}

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

.ranama-depth__facility-label {
	bottom: 2rem;
	color: var(--ranama-white);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.62rem;
	left: calc((100vw - var(--ranama-shell)) / 2);
	letter-spacing: 0.08em;
	position: absolute;
	text-transform: uppercase;
	z-index: 2;
}

.ranama-depth__facility-label span {
	color: var(--ranama-amber);
	display: block;
	font-size: 0.52rem;
}

.ranama-depth__plane {
	background: var(--ranama-blue);
	clip-path: polygon(0 8rem, 31% 8rem, 31% 0, 100% 0, 100% 100%, 0 100%);
	color: var(--ranama-white);
	margin-top: -8rem;
	padding: clamp(10rem, 16vw, 16rem) 0 clamp(7rem, 10vw, 10rem);
	position: relative;
	z-index: 3;
}

.ranama-depth__proof {
	display: grid;
	gap: clamp(4rem, 10vw, 10rem);
	grid-template-columns: 0.9fr 1.1fr;
}

.ranama-depth__proof-intro,
.ranama-register,
.ranama-depth__proof > .ranama-text-link {
	grid-row: 1;
}

.ranama-depth__proof-intro {
	grid-column: 1;
}

.ranama-register {
	grid-column: 2;
}

.ranama-depth__proof-intro h2 {
	font-size: clamp(3.3rem, 5.5vw, 6rem);
	margin: 2rem 0;
}

.ranama-depth__proof-intro h2 em {
	color: var(--ranama-amber);
	display: block;
}

.ranama-depth__proof-intro > p:not(.ranama-kicker) {
	color: rgba(255, 255, 255, 0.77);
	max-width: 35rem;
}

.ranama-depth__proof-intro > p + p {
	margin-top: 1rem;
}

.ranama-register {
	border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.ranama-register__item {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
	display: grid;
	gap: 1.5rem;
	grid-template-columns: 4.5rem minmax(10rem, 1fr) minmax(8rem, 0.7fr);
	min-height: 6.3rem;
	padding: 1rem 0;
	position: relative;
}

.ranama-register__item span {
	color: var(--ranama-amber);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.55rem;
	letter-spacing: 0.07em;
}

.ranama-register__item strong {
	font-family: "Archivo", Arial, sans-serif;
	font-size: clamp(1.3rem, 2vw, 2rem);
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 1.05;
}

.ranama-register__item small {
	color: rgba(255, 255, 255, 0.65);
	font-size: 0.72rem;
	line-height: 1.35;
}

.ranama-register__item--verified::after {
	content: none;
}

.ranama-depth__proof > .ranama-text-link {
	align-self: end;
	grid-column: 2;
	justify-self: start;
	margin-top: 0;
}

.ranama-about {
	display: grid;
	gap: clamp(2rem, 5vw, 5rem);
	grid-template-columns: 0.18fr 1.1fr 0.72fr;
	padding-block: clamp(9rem, 14vw, 14rem);
}

.ranama-about__index {
	color: var(--ranama-steel);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	line-height: 2;
	padding-top: 0.4rem;
}

.ranama-about__content h2 {
	font-size: clamp(3rem, 5.2vw, 5.8rem);
	margin: 2rem 0 3rem;
}

.ranama-about__content h2 em {
	color: var(--ranama-blue);
	display: block;
}

.ranama-about__lead {
	font-size: clamp(1.2rem, 1.8vw, 1.7rem);
	font-weight: 600;
	line-height: 1.4;
	max-width: 35rem;
}

.ranama-about__columns {
	display: grid;
	gap: 2.5rem;
	grid-template-columns: repeat(2, 1fr);
	margin: 2.2rem 0;
}

.ranama-about__columns p {
	color: var(--ranama-slate);
	font-size: 0.9rem;
}

.ranama-about__people {
	height: clamp(24rem, 34vw, 34rem);
	margin-top: clamp(9rem, 14vw, 14rem);
	overflow: hidden;
	position: relative;
}

.ranama-about__people::after {
	background-image: linear-gradient(rgba(255, 255, 255, 0.25) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.25) 1px, transparent 1px);
	background-size: 5rem 5rem;
	content: "";
	inset: 0;
	position: absolute;
}

.ranama-about__people img {
	height: 100%;
	object-fit: cover;
	object-position: 63% center;
	width: 100%;
}

.ranama-about__people figcaption {
	z-index: 2;
}

/* Deliberately subordinate parallel operation */
.ranama-secondary {
	background: var(--ranama-mist);
	padding: clamp(7rem, 11vw, 10rem) 0;
}

.ranama-secondary__route {
	border-top: 1px solid var(--ranama-amber);
	position: absolute;
	right: 0;
	top: 3rem;
	width: 42%;
}

.ranama-secondary__route span {
	background: var(--ranama-mist);
	color: var(--ranama-slate);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.52rem;
	letter-spacing: 0.08em;
	padding: 0 0.8rem;
	position: absolute;
	right: 9vw;
	top: -0.65rem;
	text-transform: uppercase;
}

.ranama-secondary__inner {
	display: grid;
	gap: clamp(3rem, 7vw, 7rem);
	grid-template-columns: 0.85fr 0.82fr 0.33fr;
}

.ranama-secondary__image {
	clip-path: polygon(0 0, 100% 0, 100% 84%, 84% 84%, 84% 100%, 0 100%);
	height: clamp(24rem, 36vw, 35rem);
	overflow: hidden;
}

.ranama-secondary__image img {
	height: 100%;
	object-fit: cover;
	object-position: 44% center;
	width: 100%;
}

.ranama-secondary__content {
	align-self: center;
}

.ranama-secondary h2 {
	font-size: clamp(2.8rem, 4.8vw, 5.2rem);
	margin: 2rem 0;
}

.ranama-secondary h2 em {
	color: var(--ranama-blue);
	display: block;
}

.ranama-secondary__content > p:not(.ranama-kicker) {
	font-size: 0.92rem;
}

.ranama-secondary__content > p + p {
	margin-top: 1rem;
}

.ranama-secondary__content .ranama-text-link {
	margin-top: 2rem;
}

/* Editorial interval */
.ranama-knowledge {
	background: var(--ranama-white);
	padding: clamp(9rem, 15vw, 15rem) 0;
}

.ranama-knowledge__inner {
	position: relative;
}

.ranama-knowledge__inner::before {
	background: var(--ranama-blue);
	content: "";
	height: 100%;
	left: 15%;
	position: absolute;
	top: 0;
	width: 1px;
}

.ranama-knowledge__statement {
	display: grid;
	gap: clamp(4rem, 10vw, 10rem);
	grid-template-columns: 1.4fr 0.6fr;
	margin-left: 15%;
	padding: clamp(4rem, 7vw, 7rem) 0 clamp(2rem, 4vw, 4rem) clamp(3rem, 7vw, 7rem);
}

.ranama-knowledge h2 {
	font-size: clamp(3.6rem, 6.4vw, 6.8rem);
}

.ranama-knowledge h2 em {
	color: var(--ranama-blue);
	display: block;
}

.ranama-knowledge__statement > div {
	align-self: end;
	border-top: 3px solid var(--ranama-amber);
	padding-top: 1.5rem;
}

.ranama-knowledge__statement > div p {
	color: var(--ranama-slate);
}

.ranama-knowledge__statement .ranama-text-link {
	margin-top: 2rem;
}

/* Process conclusion */
.ranama-conversion {
	background: linear-gradient(122deg, var(--ranama-blue) 0%, var(--ranama-navy) 83%);
	color: var(--ranama-white);
	padding: clamp(8rem, 13vw, 13rem) 0 clamp(6rem, 9vw, 9rem);
}

.ranama-conversion::before {
	background-image: linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
	background-size: 7.5rem 7.5rem;
	clip-path: polygon(50% 0, 100% 0, 100% 100%, 74% 100%, 74% 78%, 50% 78%);
	content: "";
	inset: 0;
	position: absolute;
}

.ranama-conversion__line {
	align-items: center;
	display: flex;
	left: 0;
	position: absolute;
	top: 3rem;
	width: calc((100vw - var(--ranama-shell)) / 2 + 72%);
}

.ranama-conversion__line i {
	background: var(--ranama-amber);
	height: 3px;
	width: 100%;
}

.ranama-conversion__line span {
	background: var(--ranama-amber);
	color: var(--ranama-ink);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.51rem;
	letter-spacing: 0.08em;
	padding: 0.62rem 0.8rem;
	text-transform: uppercase;
	white-space: nowrap;
}

.ranama-conversion__inner {
	position: relative;
	z-index: 2;
}

.ranama-conversion__statement {
	display: grid;
	gap: clamp(4rem, 10vw, 10rem);
	grid-template-columns: 1.4fr 0.6fr;
	margin-top: clamp(3rem, 6vw, 6rem);
}

.ranama-conversion h2 {
	font-size: clamp(4rem, 8vw, 8.5rem);
	max-width: 8em;
}

.ranama-conversion h2 em {
	color: var(--ranama-amber);
	display: block;
}

.ranama-conversion__copy {
	align-self: end;
	border-top: 1px solid rgba(255, 255, 255, 0.5);
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.95rem;
	padding-top: 1.5rem;
}

.ranama-conversion__copy p + p {
	margin-top: 1rem;
}

.ranama-conversion__actions {
	margin-top: clamp(3rem, 6vw, 6rem);
}

.ranama-conversion__signature {
	border-top: 1px solid rgba(255, 255, 255, 0.28);
	font-family: "Archivo", Arial, sans-serif;
	font-size: clamp(1.3rem, 2.5vw, 2.5rem);
	font-weight: 600;
	letter-spacing: -0.03em;
	margin-top: clamp(6rem, 10vw, 10rem) !important;
	padding-top: 1.8rem;
	text-align: right;
}

/* Front-page colophon */
.ranama-home-footer {
	background: var(--ranama-ink);
	color: var(--ranama-white);
	font-family: "Noto Sans", Arial, sans-serif;
	padding: 0 0 3rem;
}

.ranama-home-footer__line {
	background: rgba(255, 255, 255, 0.12);
	height: 1px;
	position: relative;
}

.ranama-home-footer__line span {
	background: var(--ranama-amber);
	display: block;
	height: 3px;
	width: 28%;
}

.ranama-home-footer__inner {
	display: grid;
	gap: 4rem;
	grid-template-columns: 1fr auto;
	margin-inline: auto;
	padding-top: clamp(5rem, 8vw, 8rem);
	width: var(--ranama-shell);
}

.ranama-home-footer__brand img {
	height: auto;
	width: 10rem;
}

.ranama-home-footer__quote {
	align-items: center;
	align-self: start;
	background: var(--ranama-amber);
	color: var(--ranama-ink) !important;
	display: flex;
	font-size: 0.7rem;
	font-weight: 700;
	gap: 2.5rem;
	justify-self: end;
	letter-spacing: 0.05em;
	min-height: 3.4rem;
	padding: 0 1.25rem;
	text-transform: uppercase;
}

.ranama-home-footer__nav {
	display: grid;
	gap: clamp(2rem, 5vw, 5rem);
	grid-column: 1 / -1;
	grid-template-columns: 1.15fr 1fr 0.72fr 0.72fr;
}

.ranama-home-footer__group {
	align-content: start;
	border-top: 1px solid rgba(255, 255, 255, 0.24);
	display: grid;
}

.ranama-home-footer__group > p {
	color: var(--ranama-amber);
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.53rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	padding: 1rem 0 0.7rem;
	text-transform: uppercase;
}

.ranama-home-footer__group a {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	font-size: 0.72rem;
	font-weight: 600;
	padding: 0.8rem 0;
}

.ranama-home-footer__group a:hover {
	color: var(--ranama-amber);
}

.ranama-home-footer__meta {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	color: rgba(255, 255, 255, 0.48);
	display: flex;
	font-family: "Noto Sans Mono", monospace;
	font-size: 0.52rem;
	grid-column: 1 / -1;
	justify-content: space-between;
	letter-spacing: 0.07em;
	padding-top: 1rem;
	text-transform: uppercase;
}

/* Fail-safe reveal: content is hidden only after JavaScript opts in. */
html.ranama-motion-ready [data-reveal] {
	opacity: 0;
	transform: translateY(2rem);
	transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
}

html.ranama-motion-ready [data-reveal].is-in-view {
	opacity: 1;
	transform: translateY(0);
}

/* Laptop */
@media (max-width: 1280px) {
	.ranama-home-header__menu > li > a,
	.ranama-home-header__menu > li > button {
		padding-inline: 0.7rem;
	}

	.ranama-home-header__bar {
		grid-template-columns: auto 1fr;
	}

	.ranama-hero__plane {
		width: min(56rem, 69vw);
	}

	.ranama-stage--01 {
		width: 65%;
	}

	.ranama-stage--03 {
		left: 30%;
	}

	.ranama-product--ibc .ranama-product__label {
		right: -6rem;
	}

	.ranama-product--jumbo .ranama-product__label {
		right: 5rem;
	}
}

/* Tablet and compact navigation */
@media (max-width: 1080px) {
	:root {
		--ranama-shell: min(1400px, calc(100vw - 3rem));
	}

	.ranama-home-header__bar {
		grid-template-columns: auto 1fr auto;
		width: calc(100vw - 3rem);
	}

	.ranama-home-header__toggle {
		align-items: center;
		display: flex;
		gap: 1rem;
		grid-column: 3;
		justify-self: end;
	}

	.ranama-home-header__toggle-label {
		font-family: "Noto Sans Mono", monospace;
		font-size: 0.6rem;
		letter-spacing: 0.09em;
		text-transform: uppercase;
	}

	.ranama-home-header__toggle-lines {
		display: grid;
		gap: 0.4rem;
		width: 1.6rem;
	}

	.ranama-home-header__toggle-lines i {
		background: currentColor;
		display: block;
		height: 1px;
		transition: transform 220ms ease;
	}

	.ranama-home-header__nav {
		background: var(--ranama-navy);
		display: block;
		height: auto;
		left: 0;
		padding: 1.5rem;
		position: absolute;
		right: 0;
		top: 5.25rem;
	}

	.ranama-home-header__menu {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		height: auto;
	}

	html.ranama-home-js .ranama-home-header__nav {
		opacity: 0;
		pointer-events: none;
		transform: translateY(-0.75rem);
		transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
		visibility: hidden;
	}

	html.ranama-home-js .ranama-home-header.is-menu-open .ranama-home-header__nav {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
		visibility: visible;
	}

	.ranama-home-header__menu > li {
		display: block;
	}

	.ranama-home-header__menu > li > a,
	.ranama-home-header__menu > li > button {
		border-top: 1px solid rgba(255, 255, 255, 0.22);
		justify-content: space-between;
		min-height: 3.5rem;
		width: 100%;
	}

	.ranama-home-header__menu > li:last-child {
		grid-column: 1 / -1;
	}

	.ranama-home-header__menu .ranama-home-header__quote {
		justify-content: space-between;
		margin: 1rem 0 0;
	}

	.ranama-home-header__submenu,
	.ranama-home-header__item--products .ranama-home-header__submenu {
		border-top-width: 1px;
		display: none;
		left: auto;
		min-width: 0;
		opacity: 1;
		padding: 0 1rem 1rem;
		pointer-events: auto;
		position: static;
		transform: none;
		visibility: visible;
	}

	.ranama-home-header__item--has-submenu.is-submenu-open > .ranama-home-header__submenu,
	html:not(.ranama-home-js) .ranama-home-header__submenu {
		display: grid;
	}

	.ranama-home-header__submenu a {
		font-size: 0.68rem;
	}

	.ranama-home-header.is-menu-open .ranama-home-header__toggle-lines i:first-child {
		transform: translateY(0.2rem) rotate(45deg);
	}

	.ranama-home-header.is-menu-open .ranama-home-header__toggle-lines i:last-child {
		transform: translateY(-0.2rem) rotate(-45deg);
	}

	.ranama-hero__image {
		left: 22%;
	}

	.ranama-hero__plane {
		width: 77vw;
	}

	.ranama-hero__content {
		max-width: 63vw;
	}

	.ranama-capability__operation,
	.ranama-products__intro,
	.ranama-depth__proof,
	.ranama-knowledge__statement,
	.ranama-conversion__statement {
		gap: 3rem;
	}

	.ranama-stage--01 {
		left: 9%;
		width: 73%;
	}

	.ranama-stage--02 {
		left: 1%;
	}

	.ranama-stage--03 {
		left: 24%;
	}

	.ranama-product--ibc {
		left: 30%;
		width: 50%;
	}

	.ranama-product--ibc .ranama-product__label {
		right: -8rem;
	}

	.ranama-product--drum .ranama-product__label {
		left: 5rem;
	}

	.ranama-product--jumbo .ranama-product__label {
		right: 1rem;
	}

	.ranama-scheduled__frame {
		grid-template-columns: 0.9fr 1.1fr;
	}

	.ranama-depth__proof {
		grid-template-columns: 0.8fr 1.2fr;
	}

	.ranama-about {
		grid-template-columns: 0.1fr 1.1fr 0.8fr;
	}

	.ranama-secondary__inner {
		grid-template-columns: 0.9fr 1.1fr;
	}
}

/* Mid-size product theatre becomes an alternating dispatch procession. */
@media (min-width: 768px) and (max-width: 900px) {
	.ranama-products__floor {
		display: flex;
		flex-direction: column;
		height: auto;
	}

	.ranama-products__grid {
		bottom: -3rem;
		clip-path: none;
		inset-inline: 0;
		top: -3rem;
	}

	.ranama-products__grid::after {
		display: none;
	}

	.ranama-product,
	.ranama-product--ibc,
	.ranama-product--drum,
	.ranama-product--jerrycan,
	.ranama-product--jumbo {
		display: grid;
		grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
		height: 34rem;
		left: auto;
		position: relative;
		right: auto;
		top: auto;
		width: 100%;
	}

	.ranama-product:nth-of-type(even) {
		grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr);
	}

	.ranama-product:nth-of-type(even) .ranama-product__object {
		grid-column: 2;
	}

	.ranama-product:nth-of-type(even) .ranama-product__label {
		grid-column: 1;
		left: 0;
		right: -1rem;
	}

	.ranama-product__object,
	.ranama-product--ibc .ranama-product__object,
	.ranama-product--drum .ranama-product__object,
	.ranama-product--jerrycan .ranama-product__object,
	.ranama-product--jumbo .ranama-product__object {
		align-self: stretch;
		grid-column: 1;
		height: 100%;
		left: auto;
		position: relative;
		right: auto;
		top: auto;
		width: 100%;
	}

	.ranama-product--ibc::before {
		inset: 3rem 53% 3rem 0;
	}

	.ranama-product__label,
	.ranama-product--ibc .ranama-product__label,
	.ranama-product--drum .ranama-product__label,
	.ranama-product--jerrycan .ranama-product__label,
	.ranama-product--jumbo .ranama-product__label {
		align-self: center;
		bottom: auto;
		grid-column: 2;
		left: -1rem;
		position: relative;
		right: auto;
		top: auto;
		width: calc(100% + 1rem);
	}

	.ranama-products__all {
		align-self: flex-start;
		bottom: auto;
		left: auto;
		margin-top: 0;
		position: relative;
	}

	.ranama-products__footer {
		padding-top: 5rem;
	}
}

/* Mobile is re-composed as a vertical operating sequence. */
@media (max-width: 767px) {
	:root {
		--ranama-shell: calc(100vw - 2rem);
	}

	.ranama-home {
		font-size: 15px;
	}

	body.admin-bar .ranama-home-header {
		top: 46px;
	}

	.ranama-home-header__bar {
		height: 4.5rem;
		width: calc(100vw - 2rem);
	}

	.ranama-home-header__brand img {
		width: 7rem;
	}

	.ranama-home-header__nav {
		padding: 1rem;
		top: 4.5rem;
	}

	.ranama-home-header__menu {
		grid-template-columns: 1fr;
	}

	.ranama-home-header__menu > li:last-child,
	.ranama-home-header__menu .ranama-home-header__quote {
		grid-column: 1;
	}

	.ranama-hero {
		min-height: 76rem;
	}

	.ranama-hero__image {
		bottom: auto;
		clip-path: polygon(0 0, 100% 0, 100% 88%, 70% 88%, 70% 100%, 0 100%);
		height: 49%;
		left: 0;
		top: 0;
	}

	.ranama-hero__image::after {
		background: linear-gradient(to bottom, rgba(43, 62, 91, 0.05) 40%, var(--ranama-navy) 100%);
	}

	.ranama-hero__image img {
		object-position: 64% center;
	}

	.ranama-hero__cage {
		background-size: 4.25rem 4.25rem;
		inset-inline: 52% 0;
	}

	.ranama-hero__plane {
		background: linear-gradient(to bottom, rgba(43, 62, 91, 0) 0%, var(--ranama-navy) 19%, var(--ranama-navy) 100%);
		clip-path: none;
		inset: 31% 0 0;
		padding: 3rem 1rem 1.5rem;
		width: 100%;
	}

	.ranama-hero__content {
		max-width: none;
	}

	.ranama-hero h1 {
		font-size: clamp(3rem, 14vw, 4.25rem);
		margin-top: 1.3rem;
	}

	.ranama-hero__copy {
		display: block;
		font-size: 0.79rem;
		margin-top: 1.4rem;
	}

	.ranama-hero__copy p + p {
		margin-top: 0.75rem;
	}

	.ranama-hero .ranama-actions {
		gap: 0.8rem 1.2rem;
		margin-top: 1.4rem;
	}

	.ranama-button {
		font-size: 0.65rem;
		gap: 1.4rem;
		min-height: 3.25rem;
	}

	.ranama-button--amber {
		min-width: 11.5rem;
	}

	.ranama-text-link {
		font-size: 0.65rem;
		gap: 1rem;
	}

	.ranama-hero__register {
		font-size: 0.49rem;
		max-width: none;
		padding-top: 0.6rem;
	}

	.ranama-hero__register p {
		padding-right: 0.45rem;
	}

	.ranama-hero__register p + p {
		padding-left: 0.45rem;
	}

	.ranama-process-origin {
		left: 1rem;
	}

	.ranama-process-origin i {
		width: 42vw;
	}

	.ranama-capability {
		padding: 8rem 0 7rem;
	}

	.ranama-capability::before {
		height: 9rem;
		left: 2rem;
	}

	.ranama-capability__statement {
		padding-left: 2.6rem;
	}

	.ranama-capability__statement h2 {
		font-size: clamp(3rem, 13vw, 4.2rem);
		margin-top: 1.6rem;
	}

	.ranama-capability__operation {
		display: flex;
		flex-direction: column;
		gap: 3.2rem;
		margin-top: 5rem;
	}

	.ranama-capability__aperture {
		align-self: flex-end;
		clip-path: polygon(0 0, 83% 0, 83% 12%, 100% 12%, 100% 100%, 0 100%);
		height: 24rem;
		width: calc(100% - 2.5rem);
	}

	.ranama-capability__body {
		margin-left: 2.6rem;
	}

	.ranama-lifecycle {
		padding: 7rem 0;
	}

	.ranama-lifecycle::before {
		background-size: 4.5rem 4.5rem;
	}

	.ranama-lifecycle__intro {
		display: block;
	}

	.ranama-lifecycle__intro h2 {
		font-size: clamp(3.6rem, 16vw, 5.2rem);
	}

	.ranama-lifecycle__intro > p {
		margin: 2.5rem 0 0 2.5rem;
	}

	.ranama-lifecycle__bay {
		display: flex;
		flex-direction: column;
		height: auto;
		margin-top: 5rem;
		padding-left: 3.4rem;
	}

	.ranama-lifecycle__bay::before {
		background: rgba(255, 255, 255, 0.22);
		bottom: 2rem;
		content: "";
		left: 1rem;
		position: absolute;
		top: 0;
		width: 1px;
	}

	.ranama-lifecycle__bay::after {
		background: var(--ranama-amber);
		content: "";
		height: 47%;
		left: 0.94rem;
		position: absolute;
		top: 0;
		width: 3px;
	}

	.ranama-lifecycle__route {
		display: none;
	}

	.ranama-stage,
	.ranama-stage--01,
	.ranama-stage--02,
	.ranama-stage--03,
	.ranama-stage--04,
	.ranama-stage--05 {
		display: flex;
		flex-direction: column;
		gap: 1.3rem;
		left: auto;
		margin: 0 0 5.5rem;
		position: relative;
		top: auto;
		width: 100%;
	}

	.ranama-stage--04,
	.ranama-stage--05 {
		border-top: 0;
		padding-top: 0;
	}

	.ranama-stage__coordinate,
	.ranama-stage--02 .ranama-stage__coordinate {
		left: -2.75rem;
		position: absolute;
		transform: none;
	}

	.ranama-stage__coordinate i {
		box-shadow: 0 0 0 5px var(--ranama-navy);
	}

	.ranama-stage--01 .ranama-stage__image,
	.ranama-stage--02 .ranama-stage__image,
	.ranama-stage--03 .ranama-stage__image {
		grid-column: auto;
		grid-row: auto;
		height: 15rem;
		margin: 0;
		order: 2;
		width: 100%;
	}

	.ranama-stage--02 .ranama-stage__copy {
		grid-column: auto;
		grid-row: auto;
		padding-top: 0;
	}

	.ranama-stage h3 {
		font-size: 2.75rem;
	}

	.ranama-lifecycle__branch {
		border-top: 1px solid var(--ranama-amber);
		left: auto;
		margin: -2rem 0 4rem;
		padding-top: 0.7rem;
		position: relative;
		top: auto;
		transform: none;
		writing-mode: horizontal-tb;
	}

	.ranama-lifecycle__cta {
		align-self: flex-start;
		bottom: auto;
		left: auto;
		position: relative;
	}

	.ranama-products {
		padding: 7rem 0 8rem;
	}

	.ranama-products__intro {
		display: block;
	}

	.ranama-products__intro h2 {
		font-size: clamp(3.4rem, 14.5vw, 4.7rem);
	}

	.ranama-products__intro > p {
		margin: 2.5rem 0 0 2.5rem;
	}

	.ranama-products__floor {
		display: flex;
		flex-direction: column;
		height: auto;
		margin-top: 5rem;
	}

	.ranama-products__grid {
		background-size: 4.5rem 4.5rem;
		bottom: -2rem;
		clip-path: none;
		height: auto;
		left: -1rem;
		right: -1rem;
		top: -2rem;
	}

	.ranama-products__grid::after {
		display: none;
	}

	.ranama-product,
	.ranama-product--ibc,
	.ranama-product--drum,
	.ranama-product--jerrycan,
	.ranama-product--jumbo {
		display: grid;
		grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
		height: 29rem;
		left: auto;
		position: relative;
		right: auto;
		top: auto;
		width: 100%;
	}

	.ranama-product:nth-of-type(even) {
		grid-template-columns: minmax(0, 1.22fr) minmax(0, 0.78fr);
	}

	.ranama-product:nth-of-type(even) .ranama-product__object {
		grid-column: 2;
	}

	.ranama-product:nth-of-type(even) .ranama-product__label {
		grid-column: 1;
		left: 0;
		right: -1rem;
	}

	.ranama-product__object,
	.ranama-product--ibc .ranama-product__object,
	.ranama-product--drum .ranama-product__object,
	.ranama-product--jerrycan .ranama-product__object,
	.ranama-product--jumbo .ranama-product__object {
		align-self: stretch;
		grid-column: 1;
		height: 100%;
		left: auto;
		position: relative;
		right: auto;
		top: auto;
		width: 100%;
	}

	.ranama-product--ibc::before {
		inset: 3rem 52% 3rem 0;
	}

	.ranama-product__label,
	.ranama-product--ibc .ranama-product__label,
	.ranama-product--drum .ranama-product__label,
	.ranama-product--jerrycan .ranama-product__label,
	.ranama-product--jumbo .ranama-product__label {
		align-self: center;
		bottom: auto;
		grid-column: 2;
		left: -1rem;
		position: relative;
		right: auto;
		top: auto;
		width: calc(100% + 1rem);
	}

	.ranama-products__all {
		align-self: flex-start;
		bottom: auto;
		left: auto;
		margin-top: 0;
		position: relative;
	}

	.ranama-products__footer {
		padding-top: 4rem;
	}

	.ranama-specialist-flow {
		padding: 5rem 0 7rem;
	}

	.ranama-scheduled__frame {
		display: block;
		min-height: 0;
	}

	.ranama-scheduled__image {
		height: 22rem;
		margin: 1rem;
	}

	.ranama-scheduled__content {
		margin: -4rem 0 0;
		padding: 5.5rem 1.5rem 3rem;
	}

	.ranama-scheduled h2 {
		font-size: clamp(2.8rem, 12vw, 3.8rem);
	}

	.ranama-scheduled__seal {
		top: 1rem;
	}

	.ranama-depth__facility {
		height: 29rem;
	}

	.ranama-depth__facility img {
		object-position: 57% center;
	}

	.ranama-depth__facility-label {
		left: 1rem;
	}

	.ranama-depth__plane {
		clip-path: polygon(0 4rem, 27% 4rem, 27% 0, 100% 0, 100% 100%, 0 100%);
		margin-top: -4rem;
		padding: 8rem 0 7rem;
	}

	.ranama-depth__proof {
		display: block;
	}

	.ranama-depth__proof-intro h2 {
		font-size: clamp(3.2rem, 13vw, 4.3rem);
	}

	.ranama-register {
		margin-top: 4rem;
	}

	.ranama-register__item {
		gap: 0.75rem;
		grid-template-columns: 3.4rem 1fr;
		min-height: 6rem;
	}

	.ranama-register__item small {
		grid-column: 2;
	}

	.ranama-depth__proof > .ranama-text-link {
		margin-top: 3rem;
	}

	.ranama-about {
		display: block;
		padding-block: 7rem;
	}

	.ranama-about__index {
		border-left: 1px solid var(--ranama-blue);
		line-height: 1.5;
		margin-bottom: 3rem;
		padding-left: 1rem;
	}

	.ranama-about__content h2 {
		font-size: clamp(3rem, 12.7vw, 4.15rem);
	}

	.ranama-about__columns {
		display: block;
	}

	.ranama-about__columns p + p {
		margin-top: 1.2rem;
	}

	.ranama-about__people {
		height: 22rem;
		margin: 4rem 0 0 2.5rem;
	}

	.ranama-secondary {
		padding: 6rem 0;
	}

	.ranama-secondary__inner {
		display: block;
	}

	.ranama-secondary__image {
		height: 20rem;
		margin-right: 2.5rem;
	}

	.ranama-secondary__content {
		background: var(--ranama-mist);
		margin: -2rem 0 0 2.5rem;
		padding: 2rem 0 0 1.5rem;
		position: relative;
	}

	.ranama-secondary h2 {
		font-size: clamp(3rem, 13vw, 4.1rem);
	}

	.ranama-knowledge {
		padding: 8rem 0;
	}

	.ranama-knowledge__inner::before {
		left: 1rem;
	}

	.ranama-knowledge__statement {
		display: block;
		margin-left: 1rem;
		padding: 4rem 0 0 2rem;
	}

	.ranama-knowledge h2 {
		font-size: clamp(3.25rem, 13.5vw, 4.4rem);
	}

	.ranama-knowledge__statement > div {
		margin-top: 3rem;
	}

	.ranama-conversion {
		padding: 8rem 0 6rem;
	}

	.ranama-conversion::before {
		background-size: 4.5rem 4.5rem;
	}

	.ranama-conversion__line {
		width: 88%;
	}

	.ranama-conversion__statement {
		display: block;
	}

	.ranama-conversion h2 {
		font-size: clamp(4rem, 17vw, 5.5rem);
	}

	.ranama-conversion__copy {
		margin: 3rem 0 0 2.5rem;
	}

	.ranama-conversion__signature {
		font-size: 1.45rem;
		text-align: left;
	}

	.ranama-home-footer__inner {
		display: block;
		padding-top: 5rem;
	}

	.ranama-home-footer__quote {
		margin-top: 3rem;
	}

	.ranama-home-footer__nav {
		grid-template-columns: 1fr;
		margin-top: 4rem;
	}

	.ranama-home-footer__meta {
		gap: 0.7rem;
		margin-top: 4rem;
	}
}

@media (max-width: 390px) {
	.ranama-home-footer__nav {
		grid-template-columns: 1fr;
	}

	.ranama-hero__register {
		grid-template-columns: 1fr;
	}

	.ranama-hero__register p,
	.ranama-hero__register p + p {
		border-right: 0;
		padding: 0.28rem 0;
	}

	.ranama-product,
	.ranama-product--ibc,
	.ranama-product--drum,
	.ranama-product--jerrycan,
	.ranama-product--jumbo {
		display: block;
		height: auto;
		min-height: 34rem;
		padding-top: 18rem;
	}

	.ranama-product__object,
	.ranama-product--ibc .ranama-product__object,
	.ranama-product--drum .ranama-product__object,
	.ranama-product--jerrycan .ranama-product__object,
	.ranama-product--jumbo .ranama-product__object {
		height: 20rem;
		left: 50%;
		position: absolute;
		top: 0;
		transform: translateX(-50%);
		width: 14rem;
	}

	.ranama-product:hover .ranama-product__object,
	.ranama-product:focus-within .ranama-product__object,
	.ranama-product:focus .ranama-product__object {
		transform: translateX(-50%) translateY(-0.5rem) scale(1.02);
	}

	.ranama-product__label,
	.ranama-product--ibc .ranama-product__label,
	.ranama-product--drum .ranama-product__label,
	.ranama-product--jerrycan .ranama-product__label,
	.ranama-product--jumbo .ranama-product__label,
	.ranama-product:nth-of-type(even) .ranama-product__label {
		left: 0;
		right: auto;
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.ranama-home *,
	.ranama-home *::before,
	.ranama-home *::after,
	.ranama-home-header *,
	.ranama-home-footer * {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	html.ranama-motion-ready [data-reveal] {
		opacity: 1;
		transform: none;
	}

	html.ranama-motion-ready .ranama-lifecycle__route-progress {
		stroke-dashoffset: 0;
	}
}
