/* ═══════════════════════════════════════════════════════════
   Envíos & Devoluciones — Royal Chic Lingerie
   Depende de: royal-chic.css (variables globales)
   ═══════════════════════════════════════════════════════════ */

/* ── BREADCRUMB ─────────────────────────────────────────── */
.rc-breadcrumb {
	background: var(--rc-cream);
	border-bottom: 1px solid var(--rc-cream-border);
	border-top: 1px solid var(--rc-cream-border);
	padding: 16px 60px;
}
.rc-breadcrumb-inner {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 11px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--rc-muted);
}
.rc-breadcrumb a {
	color: var(--rc-muted);
	text-decoration: none;
	transition: color 0.2s;
}
.rc-breadcrumb a:hover {
	color: var(--rc-gold);
}
.rc-bc-sep {
	color: var(--rc-cream-border);
}
.rc-bc-current {
	color: var(--rc-ink);
}

/* ── HERO ───────────────────────────────────────────────── */
.env-hero {
	background: var(--rc-ink);
	color: var(--rc-cream);
	padding: 72px 60px 64px;
	border-bottom: 1px solid #1e1c18;
	position: relative;
	overflow: hidden;
}
.env-hero::before {
	content: "";
	background: url("data:image/svg+xml,%3Csvg viewBox='0 0 510 510' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M497.25,357v-51l-204-127.5V38.25C293.25,17.85,275.4,0,255,0c-20.4,0-38.25,17.85-38.25,38.25V178.5L12.75,306v51%20l204-63.75V433.5l-51,38.25V510L255,484.5l89.25,25.5v-38.25l-51-38.25V293.25L497.25,357z' fill='rgba(184,150,90,0.04)'/%3E%3C/svg%3E") no-repeat center;
	background-size: 320px 320px;
	width: 320px;
	height: 320px;
	pointer-events: none;
	position: absolute;
	top: -60px;
	right: 2%;
	transform: rotate(39deg);
}
.env-hero-inner {
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.env-hero .rc-eyebrow {
	color: var(--rc-gold);
	margin-bottom: 14px;
}
.env-hero h1 {
	font-family: "Playfair Display", serif;
	font-size: 52px;
	font-weight: 400;
	line-height: 1.08;
	margin-bottom: 16px;
	max-width: 680px;
	color: var(--rc-cream);
}
.env-hero h1 em {
	font-style: italic;
	color: var(--rc-gold);
}
.env-hero-sub {
	font-size: 15px;
	line-height: 1.85;
	color: #a09880;
	max-width: 560px;
	margin-bottom: 0;
}

/* Meta bar */
.env-hero-meta {
	display: flex;
	gap: 32px;
	flex-wrap: wrap;
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	max-width: 760px;
}
.env-hero-meta .item {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.env-hero-meta .lbl {
	font-size: var(--rc-fs-tag);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: #6a6055;
}
.env-hero-meta .val {
	font-size: 12px;
	color: var(--rc-cream);
	font-weight: 400;
}
.env-hero-meta .val b {
	color: var(--rc-gold);
	font-weight: 500;
}

/* Print button */
.hero-actions {
	position: absolute;
	top: 28px;
	right: 60px;
	display: flex;
	gap: 10px;
	z-index: 2;
}
.hero-action {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 10px 16px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--rc-cream);
	cursor: pointer;
	font-family: "Inter", sans-serif;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition:
		border-color 0.2s,
		color 0.2s;
}
.hero-action:hover {
	border-color: var(--rc-gold);
	color: var(--rc-gold);
}
.hero-action svg {
	width: 13px;
	height: 13px;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.5;
}

/* ── QUICK CARDS ────────────────────────────────────────── */
.env-cards {
	background: var(--rc-cream);
	padding: 56px 60px 48px;
	border-bottom: 1px solid var(--rc-cream-border);
}
.env-cards-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
	max-width: 1400px;
	margin: 0 auto;
}
.env-card {
	background: #fff;
	border: 1px solid var(--rc-cream-border);
	padding: 28px 22px;
	text-decoration: none;
	color: var(--rc-ink);
	display: block;
	transition:
		border-color 0.2s,
		transform 0.2s;
}
.env-card:hover {
	border-color: var(--rc-gold);
	transform: translateY(-2px);
}
.env-card-icon {
	width: 44px;
	height: 44px;
	border: 1px solid var(--rc-gold);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	transition: background 0.2s;
}
.env-card:hover .env-card-icon {
	background: rgba(184, 150, 90, 0.06);
}
.env-card-icon svg {
	width: 18px;
	height: 18px;
	stroke: var(--rc-gold);
	fill: none;
	stroke-width: 1.4;
}
.env-card-title {
	font-family: "Playfair Display", serif;
	font-size: 17px;
	margin-bottom: 8px;
}
.env-card-sub {
	font-size: 12px;
	color: var(--rc-muted);
	line-height: 1.6;
	margin-bottom: 14px;
}
.env-card-link {
	font-size: var(--rc-fs-tag);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--rc-gold);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.env-card-link::after {
	content: "→";
}

/* ── MAIN LAYOUT ────────────────────────────────────────── */
.env-main {
	display: grid;
	grid-template-columns: 260px 1fr 280px;
	gap: 56px;
	padding: 64px 60px 80px;
	max-width: 1400px;
	margin: 0 auto;
	align-items: start;
	background: var(--rc-cream);
}

/* ── TOC SIDEBAR ────────────────────────────────────────── */
.env-toc {
	position: sticky;
	top: 90px;
	border-right: 1px solid var(--rc-cream-border);
	padding-right: 24px;
}
.env-toc-label {
	font-size: var(--rc-fs-tag);
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--rc-gold);
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--rc-cream-border);
}
.env-toc ol {
	list-style: none;
	padding: 0;
	margin: 0;
	counter-reset: toc;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.env-toc a {
	display: flex;
	gap: 12px;
	padding: 9px 14px;
	font-size: 11.5px;
	color: var(--rc-ink);
	text-decoration: none;
	border-left: 2px solid transparent;
	line-height: 1.4;
	transition: all 0.2s;
	counter-increment: toc;
	align-items: baseline;
}
.env-toc a::before {
	content: counter(toc, decimal-leading-zero);
	font-family: "Playfair Display", serif;
	font-style: italic;
	color: var(--rc-cream-border);
	font-size: 12px;
	flex-shrink: 0;
	transition: color 0.2s;
	min-width: 22px;
}
.env-toc a:hover {
	color: var(--rc-gold);
	background: rgba(184, 150, 90, 0.03);
}
.env-toc a:hover::before {
	color: var(--rc-gold);
}
.env-toc a.active {
	color: var(--rc-ink);
	border-left-color: var(--rc-gold);
	font-weight: 500;
	background: rgba(184, 150, 90, 0.05);
}
.env-toc a.active::before {
	color: var(--rc-gold);
}

.env-toc-progress {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--rc-cream-border);
	font-size: var(--rc-fs-btn);
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--rc-muted);
}
.env-toc-bar {
	height: 3px;
	background: var(--rc-cream-border);
	margin-top: 10px;
	position: relative;
	overflow: hidden;
}
.env-toc-bar-fill {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	background: var(--rc-gold);
	width: 0%;
	transition: width 0.15s;
}

/* ── CONTENT ────────────────────────────────────────────── */
.env-content {
	min-width: 0;
	max-width: 780px;
}

/* Intro drop-cap */
.env-intro {
	font-size: 15px;
	line-height: 1.95;
	color: #3c3a35;
	margin-bottom: 44px;
	padding-bottom: 32px;
	border-bottom: 1px solid var(--rc-cream-border);
	font-family: "Playfair Display", serif;
	font-style: italic;
}
.env-intro::first-letter {
	font-size: 52px;
	float: left;
	line-height: 0.9;
	padding: 6px 12px 0 0;
	color: var(--rc-gold);
	font-family: "Playfair Display", serif;
	font-weight: 400;
	font-style: normal;
}
.env-intro strong {
	font-style: normal;
	color: var(--rc-ink);
}

/* Block title (H2 de bloque) */
.env-block-title {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin-bottom: 32px;
	padding-top: 8px;
}
.env-block-label {
	font-family: "Playfair Display", serif;
	font-size: 72px;
	color: rgba(184, 150, 90, 0.12);
	line-height: 0.85;
	font-style: italic;
	flex-shrink: 0;
}
.env-block-title h2 {
	font-family: "Playfair Display", serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1.15;
	color: var(--rc-ink);
	padding-top: 8px;
}
.env-block-title h2 em {
	font-style: italic;
	color: var(--rc-gold);
}

/* ── SECTIONS ───────────────────────────────────────────── */
.env-section {
	margin-bottom: 48px;
	scroll-margin-top: 100px;
}
.env-section-head {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin-bottom: 18px;
}
.env-section-num {
	font-family: "Playfair Display", serif;
	font-size: 40px;
	color: var(--rc-gold);
	line-height: 0.9;
	font-style: italic;
	flex-shrink: 0;
	width: 64px;
	opacity: 0.35;
}
.env-section-title {
	font-family: "Playfair Display", serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.25;
	padding-top: 6px;
	color: var(--rc-ink);
}

.env-body {
	padding-left: 82px;
	font-size: var(--rc-fs-reading);
	line-height: 1.9;
	color: #3c3a35;
}
.env-body p {
	margin-bottom: 14px;
}
.env-body strong {
	color: var(--rc-ink);
	font-weight: 500;
}
.env-body a {
	color: var(--rc-gold);
	text-decoration: underline;
	text-underline-offset: 2px;
	text-decoration-color: rgba(184, 150, 90, 0.4);
}
.env-body a:hover {
	text-decoration-color: var(--rc-gold);
}

/* Sub labels */
.env-sub {
	margin-top: 22px;
	margin-bottom: 12px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--rc-ink);
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 12px;
}
.env-sub::before {
	content: "";
	width: 20px;
	height: 1px;
	background: var(--rc-gold);
	flex-shrink: 0;
}

/* List */
.env-list {
	list-style: none;
	margin: 10px 0 16px;
	padding: 0;
}
.env-list li {
	padding: 6px 0 6px 22px;
	position: relative;
	font-size: 13.5px;
	line-height: 1.75;
}
.env-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 15px;
	width: 8px;
	height: 1px;
	background: var(--rc-gold);
}

/* Callout */
.env-callout {
	background: var(--rc-cream-dk);
	border-left: 2px solid var(--rc-gold);
	padding: 16px 20px;
	margin: 18px 0;
	font-size: var(--rc-fs-reading);
	line-height: 1.8;
	color: #3c3a35;
}
.env-callout b {
	color: var(--rc-ink);
	font-weight: 500;
}
.env-callout a {
	color: var(--rc-gold);
}
.env-callout--warn {
	background: #fff8ee;
}
.env-callout--info {
	background: #f5f3ee;
}
.env-callout ul {
	margin-top: 8px;
}
.env-callout ul li {
	list-style: none;
	padding: 4px 0 4px 18px;
	position: relative;
	font-size: var(--rc-fs-reading);
}
.env-callout ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 13px;
	width: 6px;
	height: 1px;
	background: var(--rc-gold);
}

/* Tabla */
.env-table-wrap {
	overflow-x: auto;
	margin: 14px 0 18px;
}
.env-table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--rc-fs-reading);
	background: #fff;
	border: 1px solid var(--rc-cream-border);
}
.env-table th {
	background: var(--rc-ink);
	color: var(--rc-gold-lt);
	padding: 11px 14px;
	font-size: var(--rc-fs-tag);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	font-weight: 500;
	text-align: left;
	border-bottom: 2px solid var(--rc-gold);
}
.env-table td {
	padding: 12px 14px;
	border-bottom: 1px solid var(--rc-cream-border);
	color: #3c3a35;
	vertical-align: top;
	line-height: 1.6;
}
.env-table tr:last-child td {
	border-bottom: none;
}
.env-table tbody tr {
	transition: background 0.15s;
}
.env-table tbody tr:hover {
	background: rgba(184, 150, 90, 0.03);
}

/* Intentos grid */
.env-attempts-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin: 16px 0;
}
.env-attempt {
	background: #fff;
	border: 1px solid var(--rc-cream-border);
	padding: 20px;
	transition: border-color 0.2s;
}
.env-attempt:hover {
	border-color: var(--rc-gold);
}
.env-attempt-city {
	font-size: var(--rc-fs-btn);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--rc-gold);
	font-weight: 500;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--rc-cream-border);
}
.env-attempt p {
	font-size: var(--rc-fs-reading);
	line-height: 1.75;
	color: #4a4640;
	margin: 0;
}
.env-attempt strong {
	color: var(--rc-ink);
}

/* Checklist */
.env-checklist {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 14px 0 18px;
}
.env-check-item {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 11px 0;
	border-bottom: 1px solid var(--rc-cream-border);
	font-size: 13.5px;
	color: #3c3a35;
}
.env-check-item:last-child {
	border-bottom: none;
}
.env-check-icon {
	width: 26px;
	height: 26px;
	flex-shrink: 0;
	background: rgba(184, 150, 90, 0.08);
	border: 1px solid rgba(184, 150, 90, 0.25);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	color: var(--rc-gold);
	font-style: normal;
}

/* Solutions (defecto fábrica) */
.env-solutions {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 14px 0;
}
.env-solution {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 16px 0;
	border-bottom: 1px solid var(--rc-cream-border);
}
.env-solution:last-child {
	border-bottom: none;
}
.env-solution-letter {
	font-family: "Playfair Display", serif;
	font-size: 28px;
	font-style: italic;
	color: var(--rc-gold);
	line-height: 1;
	flex-shrink: 0;
	width: 28px;
	margin-top: 2px;
}
.env-solution-title {
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--rc-ink);
	font-weight: 500;
	margin-bottom: 5px;
}
.env-solution p {
	font-size: var(--rc-fs-reading);
	line-height: 1.7;
	color: #4a4640;
	margin: 0;
}

/* WhatsApp inline button */
.env-btn-wa {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--rc-whatsapp);
	color: #fff;
	padding: 12px 22px;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-family: "Inter", sans-serif;
	font-weight: 500;
	text-decoration: none;
	margin-top: 14px;
	transition: opacity 0.2s;
}
.env-btn-wa:hover {
	opacity: 0.9;
}
.env-btn-wa svg {
	width: 15px;
	height: 15px;
	stroke: #fff;
	fill: none;
	stroke-width: 1.8;
}

/* Divider */
.env-divider {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 40px 0 36px;
	color: var(--rc-cream-border);
}
.env-divider::before,
.env-divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--rc-cream-border);
}
.env-divider span {
	font-family: "Playfair Display", serif;
	font-style: italic;
	color: var(--rc-gold);
	font-size: 14px;
}

/* CTA inline final */
.env-cta-inline {
	margin-top: 60px;
	padding: 36px;
	background: var(--rc-ink);
	color: var(--rc-cream);
	border-left: 3px solid var(--rc-gold);
	display: flex;
	align-items: center;
	gap: 40px;
	flex-wrap: wrap;
	justify-content: space-between;
}
.env-cta-inline-text h3 {
	font-family: "Playfair Display", serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.3;
	margin-bottom: 8px;
	color: var(--rc-cream);
}
.env-cta-inline-text h3 em {
	color: var(--rc-gold);
}
.env-cta-inline-text p {
	font-size: var(--rc-fs-reading);
	color: #988e78;
	margin: 0;
	line-height: 1.7;
}
.env-cta-inline-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	flex-shrink: 0;
	align-items: center;
}
.env-cta-inline-actions a {
	/* flex: 1 1 220px; */
	text-align: center;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	white-space: normal;
}

/* Botones estándar (heredados de royal-chic.css — declarados por si acaso) */
.btn-dark {
	display: inline-block;
	background: var(--rc-gold);
	color: #fff;
	padding: 14px 20px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 3px;
	text-transform: uppercase;
	border: none;
	cursor: pointer;
	transition: background 0.25s;
	text-decoration: none;
	font-family: "Inter", sans-serif;
	font-weight: 500;
}
.btn-dark:hover {
	background: var(--rc-gold-lt);
}
.btn-outline-gold {
	display: inline-block;
	border: 1px solid rgba(255, 255, 255, 0.25);
	color: var(--rc-cream);
	padding: 13px 28px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 3px;
	text-transform: uppercase;
	background: none;
	cursor: pointer;
	transition: all 0.25s;
	text-decoration: none;
	font-family: "Inter", sans-serif;
	font-weight: 500;
}
.btn-outline-gold:hover {
	border-color: var(--rc-gold);
	color: var(--rc-gold);
}

/* ── ASIDE ──────────────────────────────────────────────── */
.env-aside {
	position: sticky;
	top: 90px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.env-aside-card {
	background: #fff;
	border: 1px solid var(--rc-cream-border);
	padding: 24px;
}
.env-aside-dark {
	background: var(--rc-ink);
	border-color: transparent;
}
.env-aside-label {
	font-size: var(--rc-fs-tag);
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--rc-gold);
	margin-bottom: 14px;
}
.env-aside-title {
	font-family: "Playfair Display", serif;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 10px;
	font-weight: 400;
	color: var(--rc-cream);
}
.env-aside-title em {
	font-style: italic;
	color: var(--rc-gold);
}
.env-aside-text {
	font-size: 12px;
	line-height: 1.8;
	color: #988e78;
	margin-bottom: 16px;
}

.env-btn-wa-full {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	background: var(--rc-whatsapp);
	color: #fff;
	border: none;
	padding: 13px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 2px;
	text-transform: uppercase;
	font-family: "Inter", sans-serif;
	font-weight: 500;
	cursor: pointer;
	text-decoration: none;
	transition: opacity 0.2s;
}
.env-btn-wa-full:hover {
	opacity: 0.9;
}
.env-btn-wa-full svg {
	width: 15px;
	height: 15px;
	stroke: #fff;
	fill: none;
	stroke-width: 1.8;
}

.env-aside-hours {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: var(--rc-fs-btn);
	letter-spacing: 1px;
	color: #6a6055;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.env-hours-dot {
	width: 6px;
	height: 6px;
	background: #6b8e4e;
	border-radius: 50%;
	flex-shrink: 0;
	box-shadow: 0 0 0 3px rgba(107, 142, 78, 0.2);
}

.env-aside-links {
	list-style: none;
	padding: 0;
	margin: 0;
}
.env-aside-links li {
	border-bottom: 1px solid var(--rc-cream-border);
}
.env-aside-links li:last-child {
	border-bottom: none;
}
.env-aside-links a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 0;
	font-size: 12.5px;
	color: var(--rc-ink);
	text-decoration: none;
	transition: color 0.2s;
}
.env-aside-links a:hover {
	color: var(--rc-gold);
}
.env-aside-links a::after {
	content: "→";
	color: var(--rc-gold);
	font-size: 11px;
	opacity: 0.4;
	transition:
		opacity 0.2s,
		transform 0.2s;
}
.env-aside-links a:hover::after {
	opacity: 1;
	transform: translateX(2px);
}

/* Trust list */
.env-trust-list {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.env-trust-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 11px 0;
	border-bottom: 1px solid var(--rc-cream-border);
	font-size: var(--rc-fs-reading);
	color: var(--rc-ink);
}
.env-trust-item:last-child {
	border-bottom: none;
}
.env-trust-item svg {
	width: 15px;
	height: 15px;
	stroke: var(--rc-gold);
	fill: none;
	stroke-width: 1.4;
	flex-shrink: 0;
}

/* ── BACK TO TOP ────────────────────────────────────────── */
.env-back-top {
	position: fixed;
	bottom: 28px;
	right: 28px;
	width: 44px;
	height: 44px;
	background: var(--rc-ink);
	color: var(--rc-gold-lt);
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 400;
	opacity: 0;
	transform: translateY(10px);
	transition: all 0.25s;
	border-radius: 50%;
}
.env-back-top.show {
	opacity: 1;
	transform: translateY(0);
}
.env-back-top:hover {
	background: var(--rc-gold);
	color: #fff;
}
.env-back-top svg {
	width: 14px;
	height: 14px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
}

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 1100px) {
	.env-main {
		grid-template-columns: 240px 1fr;
		gap: 36px;
		padding: 56px 32px 64px;
	}
	.env-content {
		max-width: 100%;
	}
	.env-aside {
		display: none;
	}
	.env-cards-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 900px) {
	.env-hero {
		padding: 56px 28px 48px;
	}
	.env-hero h1 {
		font-size: 38px;
	}
	.hero-actions {
		position: static;
		margin-top: 20px;
	}
	.rc-breadcrumb {
		padding: 14px 20px;
		font-size: var(--rc-fs-btn);
	}
	.env-cards {
		padding: 40px 20px 32px;
	}
	.env-main {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 40px 20px 56px;
	}
	.env-toc {
		position: static;
		border-right: none;
		padding-right: 0;
		padding-bottom: 20px;
		border-bottom: 1px solid var(--rc-cream-border);
		overflow-x: auto;
	}
	.env-toc ol {
		flex-direction: row;
		overflow-x: auto;
		gap: 0;
		padding-bottom: 6px;
		flex-wrap: nowrap;
		scroll-snap-type: x proximity;
		-webkit-overflow-scrolling: touch;
	}
	.env-toc a {
		border-left: none;
		border-bottom: 2px solid transparent;
		padding: 8px 12px;
		white-space: nowrap;
		flex-shrink: 0;
		font-size: 11px;
		scroll-snap-align: start;
	}
	.env-toc a:hover,
	.env-toc a.active {
		border-left-color: transparent;
		border-bottom-color: var(--rc-gold);
		background: none;
	}
	.env-toc a::before {
		display: none;
	}
	.env-toc-progress {
		display: none;
	}
	.env-body {
		padding-left: 0;
		word-break: break-word;
	}
	.env-section-num {
		font-size: 30px;
		width: 48px;
	}
	.env-section-title {
		font-size: 19px;
	}
	.env-block-title h2 {
		font-size: 26px;
	}
	.env-block-label {
		font-size: 52px;
	}
	.env-attempts-grid {
		grid-template-columns: 1fr;
	}
	.env-cta-inline {
		flex-direction: column;
		gap: 24px;
	}
	.env-cta-inline-actions {
		width: 100%;
		align-items: stretch;
	}
	.env-cta-inline-actions a {
		width: 100%;
	}
}
@media (max-width: 700px) {
	.env-cards {
		display: none;
	}
}

@media (max-width: 480px) {
	.env-hero h1 {
		font-size: 30px;
	}
	.env-hero-meta {
		gap: 20px;
	}
	.env-cards-grid {
		grid-template-columns: 1fr;
	}
	.env-intro {
		font-size: 14px;
	}
	.env-intro::first-letter {
		font-size: 38px;
	}
	.env-cta-inline {
		padding: 24px;
	}
}

/* ── PRINT ──────────────────────────────────────────────── */
@media print {
	.env-toc,
	.hero-actions,
	.env-back-top,
	.env-aside,
	.env-cards {
		display: none !important;
	}
	.env-main {
		grid-template-columns: 1fr;
		padding: 0;
	}
	.env-hero {
		background: #fff;
		color: var(--rc-ink);
		padding: 24px 0;
	}
	.env-hero::before {
		display: none;
	}
	.env-hero h1,
	.env-hero .rc-eyebrow {
		color: var(--rc-ink);
	}
	.env-hero-sub {
		color: #555;
	}
	.env-body {
		padding-left: 56px;
	}
	.env-section {
		page-break-inside: avoid;
	}
	.env-table {
		border: 1px solid #ccc;
	}
	.env-callout {
		border-left-color: #999;
		background: #f5f5f5;
	}
}
