/*
Theme Name: Rouh Wa Rihan
Template: twentytwentyfive
Version: 0.4.0
Text Domain: rouh-wa-rihan
*/

:root {
	--green: #078b4b;
	--green-dark: #05713d;
	--red: #e61d4f;
	--ink: #183126;
	--soft: #eef9f3;
	--line: #cce7d8;
}

.rwr-header {
	position: sticky;
	top: 0;
	z-index: 9999;
	padding: 10px 16px;
	background: #f7fbf9;
}

.rwr-header-box {
	box-sizing: border-box;
	max-width: 1450px;
	min-height: 72px;
	margin: 0 auto !important;
	padding: 0 18px 0 14px !important;

	background: var(--soft);
	border: 1px solid var(--line);
	border-radius: 24px;

	box-shadow: 0 10px 30px rgba(13, 73, 44, .08);
}

.rwr-brand {
	gap: 11px !important;
	margin: 0 !important;
	flex-shrink: 0;
}

.rwr-logo {
	margin: 0 !important;
}

.rwr-logo img {
	width: 44px !important;
	height: 44px !important;
	object-fit: contain;
	border-radius: 50%;
	background: #fff;
	padding: 4px;
	box-sizing: border-box;
}

.rwr-title {
	margin: 0 !important;
}

.rwr-title a {
	color: #123b2a;
	font-family: Arial, sans-serif;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -.3px;
	text-decoration: none;
	white-space: nowrap;
}

.rwr-nav {
	margin: 0 auto !important;
}

.rwr-nav .wp-block-navigation__container {
	gap: 30px;
}

.rwr-nav .wp-block-navigation-item__content {
	position: relative;
	padding: 25px 0;
	color: var(--ink);
	font-family: Arial, sans-serif;
	font-size: 14.5px;
	font-weight: 600;
	text-decoration: none;
}

.rwr-nav .wp-block-navigation-item__content:hover {
	color: var(--green);
}

.rwr-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--green);
}

.rwr-nav .current-menu-item > .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 16px;
	height: 2px;
	background: var(--red);
	border-radius: 3px;
}

.rwr-actions {
	gap: 12px !important;
	margin: 0 !important;
	flex-shrink: 0;
}

.rwr-language {
	margin: 0 !important;
	color: var(--green);
	font-family: Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;
}

.rwr-cta {
	margin: 0 !important;
}

.rwr-cta .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;

	background: var(--green);
	color: #fff;

	border-radius: 16px;
	box-shadow: 0 7px 16px rgba(7,139,75,.18);

	font-family: Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;

	transition: .18s ease;
}

.rwr-cta .wp-block-button__link:hover {
	background: var(--green-dark);
	transform: translateY(-1px);
}


/* MOBILE */

@media (max-width: 900px) {

	.rwr-header {
		padding: 8px;
	}

	.rwr-header-box {
		min-height: 62px;
		padding: 0 10px 0 9px !important;
		border-radius: 19px;
		gap: 8px;
	}

	.rwr-logo img {
		width: 40px !important;
		height: 40px !important;
	}

	.rwr-title a {
		font-size: 15px;
	}

	.rwr-nav {
		order: 3;
		margin: 0 !important;
	}

	.rwr-actions {
		margin-left: auto !important;
		gap: 7px !important;
	}

	.rwr-language {
		display: none;
	}

	.rwr-cta .wp-block-button__link {
		min-height: 38px;
		padding: 0 13px;
		border-radius: 12px;
		font-size: 12.5px;
	}

	.rwr-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 40px;
		height: 40px;

		padding: 0;
		border: 0;
		border-radius: 50%;

		background: #fff;
		color: var(--ink);
	}

	.rwr-nav .wp-block-navigation__responsive-container-open svg {
		width: 23px;
		height: 23px;
	}

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open {
		padding: 22px;
		background: #f7fbf9;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content {
		padding-top: 70px !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__container {
		width: 100%;
		gap: 0;
	}

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item {
		width: 100%;
		border-bottom: 1px solid #dfe9e3;
	}

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content {
		display: block;
		width: 100%;
		padding: 16px 0;
		font-size: 17px;
		font-weight: 600;
	}
}

@media (max-width: 480px) {
	.rwr-title {
		display: none;
	}
}

.admin-bar .rwr-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .rwr-header {
		top: 46px;
	}
}

/* ================================
   MODERN MOBILE NAV DRAWER
================================ */

@media (max-width: 900px) {

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		z-index: 99999 !important;

		display: flex !important;
		justify-content: flex-end !important;

		padding: 0 !important;
		background: rgba(10, 25, 18, .34) !important;
		backdrop-filter: blur(3px);
		-webkit-backdrop-filter: blur(3px);
	}

	.rwr-nav .wp-block-navigation__responsive-dialog {
		position: relative !important;
		width: min(88vw, 390px) !important;
		height: 100dvh !important;
		margin: 0 !important;

		background: #ffffff !important;
		border-left: 1px solid #e4ebe7;

		box-shadow: -20px 0 50px rgba(15, 40, 27, .13);
	}

	.rwr-nav .wp-block-navigation__responsive-container-close {
		position: absolute !important;
		top: 18px !important;
		right: 18px !important;

		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 42px !important;
		height: 42px !important;

		padding: 0 !important;
		border: 1px solid #e7ece9 !important;
		border-radius: 12px !important;

		background: #f7faf8 !important;
		color: #173326 !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-close svg {
		width: 22px !important;
		height: 22px !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content {
		box-sizing: border-box !important;
		width: 100% !important;
		height: 100% !important;

		padding: 86px 24px 30px !important;

		display: flex !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation__container {
		width: 100% !important;
		gap: 0 !important;

		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item {
		width: 100% !important;
		margin: 0 !important;

		border: 0 !important;
		border-bottom: 1px solid #edf1ef !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content {
		box-sizing: border-box !important;

		display: flex !important;
		align-items: center !important;

		width: 100% !important;
		min-height: 58px !important;

		padding: 0 4px !important;

		color: #20332a !important;

		font-family: Arial, sans-serif !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;

		text-decoration: none !important;

		border: 0 !important;
		outline: 0 !important;
		background: transparent !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content:hover {
		color: #078b4b !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.current-menu-item > .wp-block-navigation-item__content {
		color: #078b4b !important;
	}

	.rwr-nav .wp-block-navigation-item__content:focus,
	.rwr-nav .wp-block-navigation-item__content:focus-visible {
		outline: none !important;
		box-shadow: none !important;
	}

}


/* FINAL MOBILE DRAWER FIX */
@media (max-width: 900px) {

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		padding: 0 !important;
		background: rgba(15, 28, 21, .42) !important;
	}

	.rwr-nav .wp-block-navigation__responsive-close {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		width: min(86vw, 380px) !important;
		max-width: none !important;
		height: 100dvh !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
		box-shadow: -18px 0 45px rgba(0,0,0,.12) !important;
	}

	.rwr-nav .wp-block-navigation__responsive-dialog {
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-close {
		position: absolute !important;
		top: 18px !important;
		right: 18px !important;
		width: 42px !important;
		height: 42px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 50% !important;
		background: #f1f6f3 !important;
		color: #173b2a !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content {
		width: 100% !important;
		padding: 82px 22px 30px !important;
		box-sizing: border-box !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		gap: 0 !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item {
		width: 100% !important;
		border: 0 !important;
		border-bottom: 1px solid #e9eeeb !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content {
		display: block !important;
		width: 100% !important;
		padding: 17px 3px !important;
		border: 0 !important;
		outline: 0 !important;
		background: transparent !important;
		color: #1b3227 !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		box-sizing: border-box !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content:focus,
	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content:focus-visible {
		outline: none !important;
		box-shadow: none !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.current-menu-item > .wp-block-navigation-item__content {
		color: #078b4b !important;
	}
}


/* FINAL MOBILE DRAWER FIX */
@media (max-width: 900px) {

	.rwr-nav .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		padding: 0 !important;
		background: rgba(15, 28, 21, .42) !important;
	}

	.rwr-nav .wp-block-navigation__responsive-close {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		width: min(86vw, 380px) !important;
		max-width: none !important;
		height: 100dvh !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
		box-shadow: -18px 0 45px rgba(0,0,0,.12) !important;
	}

	.rwr-nav .wp-block-navigation__responsive-dialog {
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-close {
		position: absolute !important;
		top: 18px !important;
		right: 18px !important;
		width: 42px !important;
		height: 42px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 50% !important;
		background: #f1f6f3 !important;
		color: #173b2a !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content {
		width: 100% !important;
		padding: 82px 22px 30px !important;
		box-sizing: border-box !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		gap: 0 !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item {
		width: 100% !important;
		border: 0 !important;
		border-bottom: 1px solid #e9eeeb !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content {
		display: block !important;
		width: 100% !important;
		padding: 17px 3px !important;
		border: 0 !important;
		outline: 0 !important;
		background: transparent !important;
		color: #1b3227 !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		box-sizing: border-box !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content:focus,
	.rwr-nav .wp-block-navigation__responsive-container-content
	.wp-block-navigation-item__content:focus-visible {
		outline: none !important;
		box-shadow: none !important;
	}

	.rwr-nav .wp-block-navigation__responsive-container-content
	.current-menu-item > .wp-block-navigation-item__content {
		color: #078b4b !important;
	}
}


/* ===== ROUH & RIHAN CUSTOM HEADER ===== */

.rr-header{
  position:sticky;
  top:0;
  z-index:9999;
  padding:12px 20px;
  background:#f5faf7;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

.rr-header-card{
  position:relative;
  max-width:1440px;
  min-height:72px;
  margin:auto;
  padding:0 18px;
  display:flex;
  align-items:center;
  gap:28px;
  background:#eaf7f0;
  border:1px solid #cde9da;
  border-radius:28px;
  box-shadow:0 10px 28px rgba(24,76,50,.08);
}

.rr-brand{
  display:flex;
  align-items:center;
  gap:11px;
  color:#15392a;
  text-decoration:none;
  flex-shrink:0;
}

.rr-brand-mark{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#078b4b;
  font-size:20px;
  font-weight:800;
  box-shadow:0 2px 8px rgba(0,0,0,.05);
}

.rr-brand-name{
  font-size:17px;
  font-weight:750;
  letter-spacing:-.35px;
  white-space:nowrap;
}

.rr-desktop-nav{
  display:flex;
  align-items:center;
  gap:28px;
  margin-left:auto;
}

.rr-desktop-nav a{
  color:#253a30;
  text-decoration:none;
  font-size:14.5px;
  font-weight:600;
  transition:.15s ease;
}

.rr-desktop-nav a:hover{
  color:#078b4b;
}

.rr-actions{
  display:flex;
  align-items:center;
  gap:12px;
}

.rr-lang{
  color:#078b4b;
  font-size:13px;
  font-weight:750;
}

.rr-trial{
  min-height:46px;
  padding:0 21px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#078b4b;
  color:white;
  text-decoration:none;
  font-size:14px;
  font-weight:750;
  box-shadow:0 7px 18px rgba(7,139,75,.18);
}

.rr-trial:hover{
  background:#05733e;
}

.rr-menu-btn{
  display:none;
  width:42px;
  height:42px;
  padding:10px;
  border:0;
  border-radius:13px;
  background:#fff;
  cursor:pointer;
}

.rr-menu-btn span{
  display:block;
  height:2px;
  margin:5px 0;
  border-radius:2px;
  background:#17392a;
  transition:.2s ease;
}

.rr-mobile-menu{
  display:none;
}


/* MOBILE */

@media(max-width:900px){

  .rr-header{
    padding:8px;
  }

  .rr-header-card{
    min-height:62px;
    padding:0 10px 0 11px;
    border-radius:21px;
    gap:8px;
  }

  .rr-brand-mark{
    width:40px;
    height:40px;
  }

  .rr-brand-name{
    font-size:15px;
  }

  .rr-desktop-nav,
  .rr-lang{
    display:none;
  }

  .rr-actions{
    margin-left:auto;
    gap:7px;
  }

  .rr-trial{
    min-height:38px;
    padding:0 13px;
    border-radius:12px;
    font-size:12.5px;
  }

  .rr-menu-btn{
    display:block;
  }

  .rr-mobile-menu{
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    right:0;
    padding:10px;
    background:#fff;
    border:1px solid #dce9e1;
    border-radius:20px;
    box-shadow:0 18px 45px rgba(22,55,37,.14);
  }

  .rr-mobile-menu.is-open{
    display:block;
  }

  .rr-mobile-menu > a{
    min-height:48px;
    padding:0 14px;
    display:flex;
    align-items:center;
    color:#20372b;
    text-decoration:none;
    font-size:15px;
    font-weight:650;
    border-radius:11px;
  }

  .rr-mobile-menu > a:hover{
    background:#f1f8f4;
    color:#078b4b;
  }

  .rr-mobile-menu .rr-mobile-trial{
    margin-top:8px;
    justify-content:space-between;
    background:#078b4b;
    color:#fff;
  }

  .rr-mobile-menu .rr-mobile-trial:hover{
    background:#05733e;
    color:#fff;
  }
}

@media(max-width:480px){
  .rr-brand-name{
    display:none;
  }
}

.admin-bar .rr-header{
  top:32px;
}

@media(max-width:782px){
  .admin-bar .rr-header{
    top:46px;
  }
}

/* Hide Free Trial + hamburger on desktop */
@media (min-width: 901px) {
  .rr-actions {
    display: none !important;
  }
}

/* Desktop: show actions */
@media (min-width: 901px) {
  .rr-actions {
    display: flex !important;
  }
}

/* Mobile: hide Free Trial + menu button */
@media (max-width: 900px) {
  .rr-actions {
    display: none !important;
  }
}

/* Mobile: keep menu button, hide only Free Trial */
@media (max-width: 900px) {
  .rr-actions {
    display: flex !important;
  }

  .rr-trial {
    display: none !important;
  }

  .rr-menu-btn {
    display: block !important;
  }
}

/* Brand logo + academy name */

.rr-brand-logo {
  display: block;
  width: 48px;
  height: 48px;
  object-fit: contain;
  flex-shrink: 0;
}

.rr-brand-name {
  display: inline-block !important;
  color: #15392a;
  font-size: 17px;
  font-weight: 750;
  line-height: 1.1;
  letter-spacing: -.3px;
  white-space: nowrap;
}

@media (max-width: 900px) {

  .rr-brand {
    gap: 8px !important;
    min-width: 0;
  }

  .rr-brand-logo {
    width: 40px;
    height: 40px;
  }

  .rr-brand-name {
    display: inline-block !important;
    font-size: 14px !important;
    font-weight: 700;
  }

  /* hide Free Trial only */
  .rr-trial {
    display: none !important;
  }

  /* keep hamburger */
  .rr-actions {
    display: flex !important;
    margin-left: auto !important;
  }

  .rr-menu-btn {
    display: block !important;
  }
}

@media (max-width: 360px) {
  .rr-brand-name {
    font-size: 13px !important;
  }

  .rr-brand-logo {
    width: 36px;
    height: 36px;
  }
}


/* === RWR HOME START === */

:root {
  --rw-green: #078b4b;
  --rw-green-dark: #056b3b;
  --rw-red: #e61d4f;
  --rw-cyan: #18bcd0;
  --rw-ink: #162c22;
  --rw-text: #405047;
  --rw-muted: #68766e;
  --rw-soft: #f4faf6;
  --rw-mint: #e9f6ef;
  --rw-line: #dbe9e1;
  --rw-white: #ffffff;
}

.rw-home {
  width: 100%;
  overflow: hidden;
  background: #fff;
  color: var(--rw-ink);
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;
}

.rw-home * {
  box-sizing: border-box;
}

.rw-wrap {
  width: min(100% - 32px, 1240px);
  margin-inline: auto;
}

.rw-section {
  padding: 82px 0;
}

.rw-kicker {
  display: block;
  margin-bottom: 14px;
  color: var(--rw-red);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.rw-home h1,
.rw-home h2,
.rw-home h3,
.rw-home p {
  margin-top: 0;
}

.rw-home h2 {
  margin-bottom: 0;
  color: var(--rw-ink);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.06;
  letter-spacing: -.045em;
}

.rw-home p {
  color: var(--rw-text);
  line-height: 1.72;
}


/* HERO */

.rw-hero {
  padding: 32px 0 54px;
  background:
    linear-gradient(180deg, #f4faf6 0%, #ffffff 100%);
}

.rw-hero-grid {
  display: grid;
  grid-template-columns: 1.04fr .96fr;
  align-items: center;
  gap: 64px;
  min-height: 650px;
}

.rw-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  color: var(--rw-green-dark);
  font-size: 14px;
  font-weight: 700;
}

.rw-eyebrow::before {
  content: "";
  width: 26px;
  height: 3px;
  background: var(--rw-red);
}

.rw-hero h1 {
  max-width: 750px;
  margin-bottom: 24px;
  color: var(--rw-ink);
  font-size: clamp(44px, 5.7vw, 76px);
  font-weight: 780;
  line-height: .99;
  letter-spacing: -.058em;
}

.rw-hero h1 span {
  color: var(--rw-green);
}

.rw-hero-text {
  max-width: 650px;
  margin-bottom: 28px;
  font-size: 18px;
}

.rw-hero-actions,
.rw-final-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.rw-btn {
  min-height: 50px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  font-size: 15px;
  font-weight: 750;
  text-decoration: none;
  transition: .18s ease;
}

.rw-btn-primary {
  background: var(--rw-red);
  color: #fff;
}

.rw-btn-primary:hover {
  background: #ca1743;
  transform: translateY(-1px);
}

.rw-btn-secondary {
  border: 1px solid #b9d4c4;
  background: #fff;
  color: var(--rw-green-dark);
}

.rw-btn-secondary:hover {
  border-color: var(--rw-green);
}

.rw-hero-meta {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
}

.rw-hero-meta span {
  position: relative;
  padding-left: 13px;
  color: #56645c;
  font-size: 13px;
  font-weight: 650;
}

.rw-hero-meta span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--rw-cyan);
}


/* IMAGES */

.rw-media {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(135deg, #dcefe4 0%, #f5faf7 100%);
}

.rw-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rw-hero-media {
  height: 560px;
  border-radius: 30px 30px 30px 6px;
}

.rw-hero-media::after {
  content: "";
  position: absolute;
  right: 24px;
  bottom: 24px;
  width: 56px;
  height: 8px;
  border-radius: 10px;
  background: var(--rw-red);
}

.rw-program-image {
  height: 220px;
  border-radius: 14px 14px 0 0;
}

.rw-large-media {
  min-height: 540px;
  border-radius: 20px;
}


/* TRUST */

.rw-trust {
  border-top: 1px solid var(--rw-line);
  border-bottom: 1px solid var(--rw-line);
}

.rw-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.rw-trust-grid > div {
  padding: 26px 28px;
  border-right: 1px solid var(--rw-line);
}

.rw-trust-grid > div:last-child {
  border-right: 0;
}

.rw-trust strong,
.rw-trust span {
  display: block;
}

.rw-trust strong {
  margin-bottom: 5px;
  color: var(--rw-green-dark);
  font-size: 15px;
}

.rw-trust span {
  color: var(--rw-muted);
  font-size: 13px;
}


/* SECTION HEAD */

.rw-section-head {
  margin-bottom: 38px;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 60px;
  align-items: end;
}

.rw-section-head p {
  margin-bottom: 4px;
  font-size: 16px;
}


/* PROGRAMS */

.rw-program-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.rw-program-card {
  overflow: hidden;
  border: 1px solid var(--rw-line);
  border-radius: 15px;
  background: #fff;
}

.rw-program-content {
  padding: 25px;
}

.rw-program-number {
  display: block;
  margin-bottom: 22px;
  color: var(--rw-red);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.rw-program-card h3 {
  margin-bottom: 12px;
  font-size: 23px;
  letter-spacing: -.025em;
}

.rw-program-card p {
  min-height: 82px;
  margin-bottom: 18px;
  font-size: 14px;
}

.rw-program-card a,
.rw-text-link {
  color: var(--rw-green-dark);
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}

.rw-program-card a span,
.rw-text-link span {
  color: var(--rw-red);
}


/* AUDIENCE */

.rw-audience {
  background: var(--rw-soft);
}

.rw-split {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 72px;
  align-items: center;
}

.rw-split-reverse {
  grid-template-columns: 1.08fr .92fr;
}

.rw-split-copy > p {
  max-width: 630px;
  margin: 22px 0 28px;
  font-size: 16px;
}

.rw-audience-list {
  border-top: 1px solid #cedfd5;
}

.rw-audience-list > div {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 20px;
  padding: 18px 0;
  border-bottom: 1px solid #cedfd5;
}

.rw-audience-list strong {
  color: var(--rw-green-dark);
  font-size: 15px;
}

.rw-audience-list span {
  color: var(--rw-text);
  font-size: 14px;
}


/* WHY */

.rw-why {
  background: var(--rw-green-dark);
}

.rw-section-head-light h2,
.rw-section-head-light p {
  color: #fff;
}

.rw-section-head-light .rw-kicker {
  color: #ffb1c5;
}

.rw-section-head-light p {
  opacity: .82;
}

.rw-why-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(255,255,255,.2);
}

.rw-why-grid article {
  padding: 32px 25px;
  border-right: 1px solid rgba(255,255,255,.18);
}

.rw-why-grid article:last-child {
  border-right: 0;
}

.rw-why-grid span {
  color: #ff8fac;
  font-size: 12px;
  font-weight: 800;
}

.rw-why-grid h3 {
  margin: 35px 0 13px;
  color: #fff;
  font-size: 19px;
}

.rw-why-grid p {
  margin: 0;
  color: rgba(255,255,255,.73);
  font-size: 14px;
}


/* HOW */

.rw-centered-head {
  max-width: 720px;
  margin: 0 auto 45px;
  text-align: center;
}

.rw-centered-head p {
  margin-top: 18px;
}

.rw-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--rw-line);
  border-bottom: 1px solid var(--rw-line);
}

.rw-step {
  min-height: 220px;
  padding: 30px 24px;
  border-right: 1px solid var(--rw-line);
}

.rw-step:last-child {
  border-right: 0;
}

.rw-step > span {
  color: var(--rw-red);
  font-size: 12px;
  font-weight: 800;
}

.rw-step h3 {
  margin: 52px 0 10px;
  font-size: 18px;
}

.rw-step p {
  margin: 0;
  font-size: 14px;
}


/* TEACHING */

.rw-teaching {
  background: #fbfcfb;
}


/* GLOBAL */

.rw-global {
  padding: 68px 0;
  background: #edf8f2;
  border-top: 1px solid #d5e9dd;
  border-bottom: 1px solid #d5e9dd;
}

.rw-global-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: center;
}

.rw-global h2 {
  max-width: 580px;
}

.rw-global p {
  max-width: 600px;
  margin: 20px 0 0;
}

.rw-country-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid #c8ded2;
}

.rw-country-list span {
  padding: 15px 4px;
  color: var(--rw-green-dark);
  font-size: 14px;
  font-weight: 700;
  border-bottom: 1px solid #c8ded2;
}


/* FAQ */

.rw-faq-layout {
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 80px;
}

.rw-faq-intro {
  position: sticky;
  top: 120px;
  align-self: start;
}

.rw-faq-intro p {
  margin: 20px 0 25px;
}

.rw-faq-list {
  border-top: 1px solid var(--rw-line);
}

.rw-faq-list details {
  border-bottom: 1px solid var(--rw-line);
}

.rw-faq-list summary {
  position: relative;
  padding: 23px 42px 23px 0;
  cursor: pointer;
  color: var(--rw-ink);
  font-size: 17px;
  font-weight: 700;
  list-style: none;
}

.rw-faq-list summary::-webkit-details-marker {
  display: none;
}

.rw-faq-list summary::after {
  content: "+";
  position: absolute;
  right: 5px;
  top: 20px;
  color: var(--rw-green);
  font-size: 24px;
  font-weight: 400;
}

.rw-faq-list details[open] summary::after {
  content: "−";
}

.rw-faq-list details p {
  max-width: 720px;
  padding: 0 40px 22px 0;
  margin: 0;
  font-size: 14px;
}


/* FINAL CTA */

.rw-final {
  padding: 74px 0;
  background: var(--rw-green);
}

.rw-final-grid {
  display: grid;
  grid-template-columns: 1.05fr .65fr;
  gap: 70px;
  align-items: center;
}

.rw-final-label {
  display: block;
  margin-bottom: 14px;
  color: #a8edcb;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.rw-final h2 {
  max-width: 720px;
  color: #fff;
}

.rw-final p {
  margin: 20px 0 26px;
  color: rgba(255,255,255,.82);
}

.rw-btn-white {
  background: #fff;
  color: var(--rw-green-dark);
}

.rw-final-link {
  padding: 12px 4px;
  color: #fff;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}

.rw-final-image {
  height: 310px;
  border-radius: 18px;
}


/* RESPONSIVE */

@media (max-width: 900px) {

  .rw-wrap {
    width: min(100% - 28px, 720px);
  }

  .rw-section {
    padding: 62px 0;
  }

  .rw-hero {
    padding: 22px 0 45px;
  }

  .rw-hero-grid,
  .rw-split,
  .rw-split-reverse,
  .rw-global-inner,
  .rw-faq-layout,
  .rw-final-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .rw-hero-grid {
    min-height: auto;
  }

  .rw-hero h1 {
    font-size: clamp(39px, 11vw, 59px);
  }

  .rw-hero-text {
    font-size: 16px;
  }

  .rw-hero-media {
    height: min(105vw, 520px);
    border-radius: 22px 22px 22px 5px;
  }

  .rw-trust-grid {
    grid-template-columns: 1fr;
  }

  .rw-trust-grid > div {
    padding: 17px 2px;
    border-right: 0;
    border-bottom: 1px solid var(--rw-line);
  }

  .rw-trust-grid > div:last-child {
    border-bottom: 0;
  }

  .rw-section-head {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 30px;
  }

  .rw-program-grid {
    grid-template-columns: 1fr;
  }

  .rw-program-image {
    height: 240px;
  }

  .rw-program-card p {
    min-height: 0;
  }

  .rw-large-media {
    min-height: min(110vw, 520px);
  }

  .rw-audience-list > div {
    grid-template-columns: 110px 1fr;
  }

  .rw-why-grid,
  .rw-steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .rw-why-grid article:nth-child(2),
  .rw-step:nth-child(2) {
    border-right: 0;
  }

  .rw-why-grid article:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.18);
  }

  .rw-step:nth-child(-n+2) {
    border-bottom: 1px solid var(--rw-line);
  }

  .rw-faq-intro {
    position: static;
  }

  .rw-country-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .rw-final-image {
    height: min(80vw, 380px);
  }
}

@media (max-width: 520px) {

  .rw-wrap {
    width: calc(100% - 28px);
  }

  .rw-section {
    padding: 52px 0;
  }

  .rw-home h2 {
    font-size: 31px;
  }

  .rw-hero h1 {
    font-size: 42px;
  }

  .rw-hero-actions {
    align-items: stretch;
  }

  .rw-hero-actions .rw-btn {
    flex: 1 1 100%;
  }

  .rw-hero-meta {
    display: grid;
    gap: 10px;
  }

  .rw-program-content {
    padding: 22px;
  }

  .rw-why-grid,
  .rw-steps {
    grid-template-columns: 1fr;
  }

  .rw-why-grid article,
  .rw-why-grid article:nth-child(2),
  .rw-step,
  .rw-step:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.18);
  }

  .rw-step,
  .rw-step:nth-child(2) {
    border-bottom-color: var(--rw-line);
  }

  .rw-why-grid article:last-child,
  .rw-step:last-child {
    border-bottom: 0;
  }

  .rw-step {
    min-height: auto;
    padding: 25px 4px;
  }

  .rw-step h3 {
    margin-top: 22px;
  }

  .rw-audience-list > div {
    display: block;
  }

  .rw-audience-list strong,
  .rw-audience-list span {
    display: block;
  }

  .rw-audience-list span {
    margin-top: 5px;
  }

  .rw-country-list {
    grid-template-columns: 1fr;
  }

  .rw-final-actions {
    align-items: stretch;
  }

  .rw-final-actions .rw-btn,
  .rw-final-actions .rw-final-link {
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}

/* === RWR HOME END === */

/* RWR FOOTER */

.rr-footer {
  padding: 58px max(20px, calc((100vw - 1240px) / 2));
  background: #11291e;
  color: #fff;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;
}

.rr-footer-main {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 70px;
  padding-bottom: 45px;
}

.rr-footer-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  text-decoration: none;
}

.rr-footer-logo img {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

.rr-footer-logo strong {
  font-size: 18px;
}

.rr-footer-brand p {
  max-width: 430px;
  margin: 20px 0 0;
  color: rgba(255,255,255,.65);
  font-size: 14px;
  line-height: 1.7;
}

.rr-footer-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

.rr-footer-links > div {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.rr-footer-links strong {
  margin-bottom: 4px;
  color: #9fe1bf;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.rr-footer-links a {
  color: rgba(255,255,255,.82);
  font-size: 14px;
  text-decoration: none;
}

.rr-footer-links a:hover {
  color: #fff;
}

.rr-footer-bottom {
  padding-top: 22px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.48);
  font-size: 12px;
}

@media (max-width: 700px) {

  .rr-footer {
    padding: 45px 20px 28px;
  }

  .rr-footer-main {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .rr-footer-bottom {
    flex-direction: column;
  }
}


/* === RWR 2027 START === */

/*
 * Rouh & Rihan 2027
 * Mobile-first / Facebook-inspired UI
 */

:root {
  --r27-green: #078b4b;
  --r27-green-dark: #066f3e;
  --r27-red: #e61d4f;
  --r27-cyan: #18bcd0;

  --r27-bg: #f4f7f5;
  --r27-card: #ffffff;
  --r27-soft: #eaf6ef;

  --r27-text: #17241d;
  --r27-body: #526058;
  --r27-muted: #7b8680;
  --r27-line: #e1e7e3;

  --r27-radius: 16px;
}


/* =========================
   GENERAL
========================= */

.rw-home {
  background: var(--r27-bg) !important;
  color: var(--r27-text);
  text-align: center;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;
}

.rw-home h1,
.rw-home h2,
.rw-home h3 {
  font-family:
    "Avenir Next",
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  color: var(--r27-text);
  text-align: center;

  font-weight: 700;
  letter-spacing: -.035em;
}

.rw-home p {
  color: var(--r27-body);
  text-align: center;
  line-height: 1.7;
}

.rw-wrap {
  width: min(calc(100% - 28px), 1180px);
}

.rw-section {
  padding: 64px 0;
}

.rw-kicker {
  margin-bottom: 11px;
  color: var(--r27-green);
  text-align: center;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .08em;
}


/* =========================
   HERO
========================= */

.rw-hero {
  padding: 46px 0 34px !important;
  background: var(--r27-bg) !important;
}

.rw-hero-grid {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  gap: 34px !important;
  min-height: auto !important;
}

.rw-hero-copy {
  width: min(100%, 850px);
  margin-inline: auto;
  text-align: center;
}

.rw-eyebrow {
  margin: 0 auto 16px !important;
  display: inline-flex;
  justify-content: center;
  color: var(--r27-green-dark);
  font-size: 13px;
}

.rw-eyebrow::before {
  display: none !important;
}

.rw-hero h1 {
  max-width: 880px;
  margin: 0 auto 20px !important;

  font-size: clamp(39px, 7vw, 68px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.052em !important;
}

.rw-hero h1 span {
  color: var(--r27-green);
}

.rw-hero-text {
  max-width: 690px !important;
  margin: 0 auto 24px !important;
  font-size: 17px !important;
}

.rw-hero-actions {
  justify-content: center;
  gap: 9px !important;
}

.rw-btn {
  min-height: 44px !important;
  padding: 0 18px !important;

  border-radius: 9px !important;

  font-size: 14px !important;
  font-weight: 650 !important;

  box-shadow: none !important;
}

.rw-btn-primary {
  background: var(--r27-green) !important;
}

.rw-btn-primary:hover {
  background: var(--r27-green-dark) !important;
  transform: none !important;
}

.rw-btn-secondary {
  border: 1px solid var(--r27-line) !important;
  background: #fff !important;
  color: var(--r27-text) !important;
}

.rw-hero-meta {
  justify-content: center;
  margin-top: 20px !important;
  gap: 7px !important;
}

.rw-hero-meta span {
  padding: 7px 11px !important;

  border: 1px solid var(--r27-line);
  border-radius: 999px;

  background: #fff;

  color: #657169;
  font-size: 12px;
  font-weight: 600;
}

.rw-hero-meta span::before {
  display: none !important;
}


/* hero photo */

.rw-hero-media {
  width: min(100%, 970px);
  height: clamp(300px, 53vw, 540px) !important;
  margin-inline: auto;

  border: 1px solid var(--r27-line);
  border-radius: 20px !important;

  background: var(--r27-soft);
}

.rw-hero-media::after {
  display: none !important;
}


/* =========================
   QUICK LEARNING AREAS
   Facebook-like quick cards
========================= */

.rw-trust {
  padding: 0 0 34px !important;

  border: 0 !important;
  background: var(--r27-bg);
}

.rw-trust-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.rw-trust-grid > div {
  position: relative;

  min-height: 104px;
  padding: 18px 14px !important;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border: 1px solid var(--r27-line) !important;
  border-radius: 16px;

  background: #fff;

  box-shadow:
    0 1px 2px rgba(25, 45, 34, .04) !important;
}

.rw-trust-grid > div::before {
  content: "";

  width: 34px;
  height: 34px;
  margin-bottom: 9px;

  display: block;

  border-radius: 10px;

  background-color: var(--r27-green);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-position: center;
  mask-position: center;

  -webkit-mask-size: 21px;
  mask-size: 21px;
}


/* Quran icon */
.rw-trust-grid > div:nth-child(1)::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5.5A2.5 2.5 0 0 1 6.5 3H11v16H6.5A2.5 2.5 0 0 0 4 21.5z'/%3E%3Cpath d='M20 5.5A2.5 2.5 0 0 0 17.5 3H13v16h4.5a2.5 2.5 0 0 1 2.5 2.5z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5.5A2.5 2.5 0 0 1 6.5 3H11v16H6.5A2.5 2.5 0 0 0 4 21.5z'/%3E%3Cpath d='M20 5.5A2.5 2.5 0 0 0 17.5 3H13v16h4.5a2.5 2.5 0 0 1 2.5 2.5z'/%3E%3C/svg%3E");
}


/* Arabic icon */
.rw-trust-grid > div:nth-child(2)::before {
  background-color: var(--r27-red);

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 6h14'/%3E%3Cpath d='M12 4v2'/%3E%3Cpath d='M8 10c1 4 3 6 7 8'/%3E%3Cpath d='M16 10c-1 4-3 6-7 8'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 6h14'/%3E%3Cpath d='M12 4v2'/%3E%3Cpath d='M8 10c1 4 3 6 7 8'/%3E%3Cpath d='M16 10c-1 4-3 6-7 8'/%3E%3C/svg%3E");
}


/* Islamic studies icon */
.rw-trust-grid > div:nth-child(3)::before {
  background-color: var(--r27-cyan);

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 3 8l9 5 9-5z'/%3E%3Cpath d='m7 11v5c3 2 7 2 10 0v-5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 3 8l9 5 9-5z'/%3E%3Cpath d='m7 11v5c3 2 7 2 10 0v-5'/%3E%3C/svg%3E");
}

.rw-trust strong {
  margin: 0 0 4px !important;

  color: var(--r27-text) !important;

  font-family:
    "Avenir Next",
    "Trebuchet MS",
    sans-serif;

  font-size: 15px !important;
  font-weight: 700;
}

.rw-trust span {
  color: var(--r27-muted) !important;
  font-size: 12px !important;
}


/* =========================
   SECTION HEADINGS
========================= */

.rw-section-head {
  display: block !important;

  max-width: 760px;
  margin: 0 auto 32px !important;

  text-align: center;
}

.rw-section-head > div,
.rw-section-head > p {
  width: 100%;
}

.rw-section-head p {
  max-width: 620px;
  margin: 16px auto 0 !important;
}


/* =========================
   PROGRAMS
   Feed/story-style cards
========================= */

.rw-programs {
  background: #fff;
}

.rw-program-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px !important;
}

.rw-program-card {
  overflow: hidden;

  border: 1px solid var(--r27-line) !important;
  border-radius: 16px !important;

  background: var(--r27-card);

  box-shadow:
    0 2px 8px rgba(29, 48, 38, .04) !important;

  text-align: center;
}

.rw-program-card:hover {
  border-color: #cddbd3 !important;
}

.rw-program-image {
  height: 190px !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: var(--r27-soft);
}

.rw-program-content {
  position: relative;
  padding: 24px 20px 22px !important;
  text-align: center;
}

.rw-program-number {
  display: none !important;
}

.rw-program-content::before {
  content: "";

  width: 38px;
  height: 38px;

  margin: -43px auto 14px;

  position: relative;
  z-index: 3;

  display: block;

  border: 4px solid #fff;
  border-radius: 50%;

  background-color: var(--r27-green);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-position: center;
  mask-position: center;

  -webkit-mask-size: 21px;
  mask-size: 21px;
}

.rw-program-card:nth-child(1) .rw-program-content::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M4 5a2 2 0 0 1 2-2h5v16H6a2 2 0 0 0-2 2z'/%3E%3Cpath d='M20 5a2 2 0 0 0-2-2h-5v16h5a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M4 5a2 2 0 0 1 2-2h5v16H6a2 2 0 0 0-2 2z'/%3E%3Cpath d='M20 5a2 2 0 0 0-2-2h-5v16h5a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}

.rw-program-card:nth-child(2) .rw-program-content::before {
  background-color: var(--r27-red);

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M5 6h14M12 4v2M8 10c1 4 3 6 7 8M16 10c-1 4-3 6-7 8'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M5 6h14M12 4v2M8 10c1 4 3 6 7 8M16 10c-1 4-3 6-7 8'/%3E%3C/svg%3E");
}

.rw-program-card:nth-child(3) .rw-program-content::before {
  background-color: var(--r27-cyan);

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M12 3 3 8l9 5 9-5z'/%3E%3Cpath d='m7 11v5c3 2 7 2 10 0v-5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M12 3 3 8l9 5 9-5z'/%3E%3Cpath d='m7 11v5c3 2 7 2 10 0v-5'/%3E%3C/svg%3E");
}

.rw-program-card h3 {
  margin-bottom: 9px !important;
  font-size: 21px !important;
}

.rw-program-card p {
  min-height: 0 !important;
  margin-bottom: 15px !important;

  font-size: 13.5px !important;
  line-height: 1.6 !important;
}

.rw-program-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;

  color: var(--r27-green-dark) !important;
  font-size: 13px !important;
}


/* =========================
   SPLIT SECTIONS
========================= */

.rw-audience,
.rw-teaching {
  background: var(--r27-bg) !important;
}

.rw-split,
.rw-split-reverse {
  gap: 54px !important;
}

.rw-split-copy {
  text-align: center;
}

.rw-split-copy > p {
  margin: 18px auto 25px !important;
}

.rw-large-media {
  min-height: 480px !important;
  border-radius: 18px !important;
}


/* audience items */

.rw-audience-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9px;

  border: 0 !important;
}

.rw-audience-list > div {
  display: block !important;

  padding: 15px !important;

  border: 1px solid var(--r27-line) !important;
  border-radius: 12px;

  background: #fff;

  text-align: center;
}

.rw-audience-list strong,
.rw-audience-list span {
  display: block;
  text-align: center;
}

.rw-audience-list strong {
  margin-bottom: 5px;
}

.rw-audience-list span {
  font-size: 12.5px !important;
}


/* =========================
   WHY US
========================= */

.rw-why {
  background: var(--r27-green-dark) !important;
}

.rw-section-head-light {
  max-width: 760px;
}

.rw-section-head-light h2,
.rw-section-head-light p {
  text-align: center;
}

.rw-why-grid {
  gap: 10px !important;
  border: 0 !important;
}

.rw-why-grid article {
  padding: 28px 18px !important;

  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 14px;

  background: rgba(255,255,255,.055);

  text-align: center;
}

.rw-why-grid article span,
.rw-why-grid article h3,
.rw-why-grid article p {
  text-align: center;
}

.rw-why-grid article h3 {
  margin: 20px 0 9px !important;
}


/* =========================
   STEPS
========================= */

.rw-centered-head {
  text-align: center;
}

.rw-steps {
  gap: 10px;
  border: 0 !important;
}

.rw-step {
  min-height: 180px !important;

  padding: 24px 17px !important;

  border: 1px solid var(--r27-line) !important;
  border-radius: 14px;

  background: #fff;

  text-align: center;
}

.rw-step > span,
.rw-step h3,
.rw-step p {
  text-align: center;
}

.rw-step h3 {
  margin: 24px 0 8px !important;
}


/* =========================
   GLOBAL AREAS
========================= */

.rw-global {
  background: var(--r27-soft) !important;
}

.rw-global-inner {
  display: block !important;
  max-width: 900px;
  text-align: center;
}

.rw-global-inner > div:first-child {
  max-width: 700px;
  margin: 0 auto 30px;
}

.rw-global h2,
.rw-global p {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.rw-country-list {
  display: flex !important;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;

  border: 0 !important;
}

.rw-country-list span {
  padding: 9px 13px !important;

  border: 1px solid #cfe2d6 !important;
  border-radius: 999px;

  background: #fff;

  font-size: 12.5px !important;
}


/* =========================
   FAQ
========================= */

.rw-faq-layout {
  display: block !important;
  max-width: 850px;
}

.rw-faq-intro {
  position: static !important;
  max-width: 650px;
  margin: 0 auto 32px;

  text-align: center;
}

.rw-faq-intro p {
  text-align: center;
}

.rw-faq-list {
  border: 0 !important;
}

.rw-faq-list details {
  margin-bottom: 9px;

  border: 1px solid var(--r27-line) !important;
  border-radius: 13px;

  background: #fff;

  overflow: hidden;
}

.rw-faq-list summary {
  padding: 18px 45px 18px 18px !important;

  text-align: left;
  font-size: 15px !important;
}

.rw-faq-list summary::after {
  top: 15px !important;
  right: 17px !important;
}

.rw-faq-list details p {
  padding: 0 18px 18px !important;
  text-align: left;
}


/* =========================
   FINAL CTA
========================= */

.rw-final {
  background: var(--r27-green) !important;
}

.rw-final-grid {
  display: block !important;
  max-width: 850px;

  text-align: center;
}

.rw-final h2,
.rw-final p {
  text-align: center;
}

.rw-final p {
  max-width: 600px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.rw-final-actions {
  justify-content: center;
}

.rw-final-image {
  max-width: 720px;
  height: 340px !important;
  margin: 32px auto 0;

  border-radius: 16px !important;
}


/* =========================
   MOBILE
========================= */

@media (max-width: 700px) {

  .rw-section {
    padding: 48px 0 !important;
  }

  .rw-home h2 {
    font-size: 29px !important;
    line-height: 1.08;
  }

  .rw-hero {
    padding-top: 32px !important;
  }

  .rw-hero h1 {
    font-size: 39px !important;
    line-height: 1.01 !important;
  }

  .rw-hero-text {
    font-size: 15px !important;
  }


  /* simple mobile buttons */

  .rw-hero-actions {
    display: flex !important;
    justify-content: center !important;
    flex-direction: row !important;
  }

  .rw-hero-actions .rw-btn {
    width: auto !important;
    flex: 0 0 auto !important;

    min-height: 41px !important;
    padding: 0 14px !important;

    border-radius: 8px !important;

    font-size: 12.5px !important;
  }


  /* Quick cards as horizontally scrollable Facebook row */

  .rw-trust {
    overflow: hidden;
  }

  .rw-trust-grid {
    width: calc(100% + 14px);

    display: flex !important;
    gap: 9px !important;

    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;

    padding: 2px 14px 8px 0;

    scrollbar-width: none;
  }

  .rw-trust-grid::-webkit-scrollbar {
    display: none;
  }

  .rw-trust-grid > div {
    flex: 0 0 165px;
    min-height: 112px;

    scroll-snap-align: start;
  }


  /* Programs become horizontal cards instead of bricks */

  .rw-program-grid {
    width: calc(100% + 14px);

    display: flex !important;
    gap: 11px !important;

    overflow-x: auto;
    scroll-snap-type: x mandatory;

    padding: 2px 14px 10px 0;

    scrollbar-width: none;
  }

  .rw-program-grid::-webkit-scrollbar {
    display: none;
  }

  .rw-program-card {
    flex: 0 0 min(82vw, 330px);
    scroll-snap-align: start;
  }

  .rw-program-image {
    height: 180px !important;
  }


  .rw-audience-list {
    grid-template-columns: 1fr 1fr !important;
  }


  .rw-why-grid,
  .rw-steps {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .rw-why-grid article,
  .rw-step {
    min-height: 155px !important;
    padding: 19px 12px !important;
  }

  .rw-why-grid article h3,
  .rw-step h3 {
    font-size: 15px !important;
  }

  .rw-why-grid article p,
  .rw-step p {
    font-size: 12px !important;
  }

  .rw-large-media {
    min-height: 390px !important;
  }

  .rw-final-image {
    height: 270px !important;
  }

}


/* Small phones */

@media (max-width: 390px) {

  .rw-hero h1 {
    font-size: 35px !important;
  }

  .rw-hero-actions {
    gap: 7px !important;
  }

  .rw-hero-actions .rw-btn {
    padding: 0 11px !important;
    font-size: 12px !important;
  }

  .rw-audience-list {
    grid-template-columns: 1fr !important;
  }

}


/* === RWR 2027 END === */


/* === RWR FB 2027 START === */

:root {
  --rf-green:#078b4b;
  --rf-green-dark:#075f38;
  --rf-red:#e61d4f;
  --rf-cyan:#18bcd0;

  --rf-bg:#f0f3f1;
  --rf-card:#ffffff;
  --rf-line:#dde4df;

  --rf-title:#153829;
  --rf-text:#516158;
  --rf-muted:#77837c;

  --rf-shadow:
    0 1px 2px rgba(25,45,34,.06),
    0 4px 14px rgba(25,45,34,.035);
}


.rf-home {
  width:100%;
  padding:24px 0 70px;

  background:var(--rf-bg);

  color:var(--rf-title);

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;
}


.rf-home * {
  box-sizing:border-box;
}


.rf-home h1,
.rf-home h2,
.rf-home h3,
.rf-home strong {
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;
}


.rf-home h1,
.rf-home h2,
.rf-home h3,
.rf-home p {
  text-align:center;
}


/* PROFILE */

.rf-profile {
  width:min(calc(100% - 28px),1180px);
  margin:0 auto 14px;

  overflow:hidden;

  border:1px solid var(--rf-line);
  border-radius:18px;

  background:#fff;

  box-shadow:var(--rf-shadow);
}


.rf-cover {
  position:relative;

  height:clamp(260px,36vw,460px);

  overflow:hidden;

  background:
    radial-gradient(circle at 20% 20%,rgba(24,188,208,.18),transparent 33%),
    radial-gradient(circle at 82% 30%,rgba(230,29,79,.12),transparent 28%),
    linear-gradient(135deg,#dff3e7,#f8fbf9 56%,#e8f5ed);
}


.rf-cover::after {
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      to bottom,
      transparent 62%,
      rgba(9,55,34,.12)
    );
}


.rf-cover img {
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;
}


.rf-profile-info {
  position:relative;

  padding:
    0 24px 28px;

  text-align:center;
}


.rf-avatar {
  width:112px;
  height:112px;

  margin:-56px auto 14px;

  position:relative;
  z-index:4;

  display:block;

  object-fit:contain;

  border:5px solid #fff;
  border-radius:50%;

  background:#fff;

  box-shadow:0 3px 14px rgba(21,56,41,.14);
}


.rf-profile-label {
  display:inline-block;

  margin-bottom:8px;

  color:var(--rf-green);

  font-size:12px;
  font-weight:800;

  letter-spacing:.06em;
  text-transform:uppercase;
}


.rf-profile h1 {
  max-width:850px;

  margin:0 auto 12px;

  color:var(--rf-title);

  font-size:clamp(36px,5vw,56px);
  font-weight:800;

  line-height:1.04;
  letter-spacing:-.045em;
}


.rf-profile h1 strong {
  color:var(--rf-red);
}


.rf-profile-info > p {
  max-width:680px;

  margin:0 auto 20px;

  color:var(--rf-text);

  font-size:16px;
  line-height:1.65;
}


.rf-actions {
  display:flex;

  justify-content:center;
  align-items:center;

  gap:8px;

  flex-wrap:wrap;
}


.rf-primary,
.rf-secondary {
  min-height:42px;

  padding:0 17px;

  display:inline-flex;

  align-items:center;
  justify-content:center;

  border-radius:8px;

  font-size:13px;
  font-weight:700;

  text-decoration:none;
}


.rf-primary {
  background:var(--rf-red);
  color:#fff;
}


.rf-primary:hover {
  background:#c91845;
  color:#fff;
}


.rf-secondary {
  border:1px solid #cad9d0;

  background:#f6f8f7;

  color:var(--rf-green-dark);
}


.rf-profile-meta {
  margin-top:17px;

  display:flex;

  justify-content:center;

  gap:8px;

  flex-wrap:wrap;
}


.rf-profile-meta span,
.rf-countries span {
  padding:7px 11px;

  border:1px solid var(--rf-line);
  border-radius:20px;

  background:#f7f9f8;

  color:#69766f;

  font-size:11.5px;
  font-weight:600;
}


/* SHORTCUTS */

.rf-shortcuts {
  width:min(calc(100% - 28px),1180px);

  margin:0 auto 14px;

  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:9px;
}


.rf-shortcut {
  min-height:78px;

  padding:12px;

  display:flex;

  align-items:center;

  gap:11px;

  border:1px solid var(--rf-line);
  border-radius:14px;

  background:#fff;

  box-shadow:var(--rf-shadow);

  text-decoration:none;
}


.rf-icon {
  width:42px;
  height:42px;

  flex:0 0 42px;

  display:grid;

  place-items:center;

  border-radius:12px;
}


.rf-icon svg {
  width:22px;
  height:22px;

  fill:none;

  stroke:currentColor;

  stroke-width:1.8;

  stroke-linecap:round;
  stroke-linejoin:round;
}


.rf-icon-green {
  background:#e8f6ee;
  color:var(--rf-green);
}


.rf-icon-red {
  background:#fff0f4;
  color:var(--rf-red);
}


.rf-icon-cyan {
  background:#e9f9fb;
  color:#079fb1;
}


.rf-shortcut-copy {
  min-width:0;

  flex:1;

  text-align:left;
}


.rf-shortcut-copy strong,
.rf-shortcut-copy small {
  display:block;

  text-align:left;
}


.rf-shortcut-copy strong {
  margin-bottom:3px;

  color:var(--rf-title);

  font-size:14px;
}


.rf-shortcut-copy small {
  color:var(--rf-muted);

  font-size:11.5px;

  white-space:nowrap;

  overflow:hidden;
  text-overflow:ellipsis;
}


.rf-arrow {
  color:#a2aca6;

  font-size:22px;
}


/* FEED CARDS */

.rf-feed-card {
  width:min(calc(100% - 28px),1180px);

  margin:0 auto 14px;

  padding:38px;

  border:1px solid var(--rf-line);
  border-radius:16px;

  background:#fff;

  box-shadow:var(--rf-shadow);
}


.rf-section-head {
  max-width:720px;

  margin:0 auto 30px;

  text-align:center;
}


.rf-section-head > span {
  display:block;

  margin-bottom:8px;

  color:var(--rf-green);

  font-size:12px;
  font-weight:800;

  letter-spacing:.07em;

  text-transform:uppercase;
}


.rf-section-head h2 {
  margin:0;

  color:var(--rf-title);

  font-size:clamp(28px,4vw,42px);

  line-height:1.08;

  letter-spacing:-.04em;
}


.rf-section-head p {
  max-width:620px;

  margin:12px auto 0;

  color:var(--rf-text);

  font-size:14.5px;
  line-height:1.65;
}


/* PROGRAM STORIES */

.rf-stories {
  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:12px;
}


.rf-story {
  position:relative;

  height:380px;

  overflow:hidden;

  border-radius:15px;

  background:#dceee4;

  text-decoration:none;
}


.rf-story img {
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;
}


.rf-story-overlay {
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      to top,
      rgba(8,32,21,.86) 0%,
      rgba(8,32,21,.2) 55%,
      transparent 78%
    );
}


.rf-story-content {
  position:absolute;

  left:20px;
  right:20px;
  bottom:19px;

  z-index:3;

  color:#fff;

  text-align:center;
}


.rf-story-icon {
  width:35px;
  height:35px;

  margin:0 auto 10px;

  display:grid;

  place-items:center;

  border-radius:50%;

  background:var(--rf-green);

  color:#fff;

  font-size:11px;
  font-weight:800;
}


.rf-story-red {
  background:var(--rf-red);
}


.rf-story-cyan {
  background:var(--rf-cyan);
}


.rf-story h3 {
  margin:0 0 5px;

  color:#fff;

  font-size:21px;
}


.rf-story p {
  margin:0;

  color:rgba(255,255,255,.8);

  font-size:12px;
}


/* FEATURES */

.rf-features {
  display:grid;

  grid-template-columns:repeat(4,1fr);

  gap:10px;
}


.rf-feature {
  padding:23px 15px;

  border:1px solid var(--rf-line);
  border-radius:13px;

  background:#f8faf9;

  text-align:center;
}


.rf-feature-icon {
  width:38px;
  height:38px;

  margin:0 auto 13px;

  display:grid;

  place-items:center;

  border-radius:50%;

  background:#e8f6ee;

  color:var(--rf-green);

  font-size:18px;
  font-weight:700;
}


.rf-feature-icon.red {
  background:#fff0f4;
  color:var(--rf-red);
}


.rf-feature-icon.cyan {
  background:#e8f9fb;
  color:#079eaf;
}


.rf-feature strong {
  display:block;

  color:var(--rf-title);

  text-align:center;

  font-size:14px;
}


.rf-feature p {
  margin:7px 0 0;

  color:var(--rf-muted);

  font-size:12px;
  line-height:1.5;
}


/* STEPS */

.rf-steps {
  display:grid;

  grid-template-columns:repeat(4,1fr);

  gap:10px;
}


.rf-steps > div {
  padding:24px 14px;

  border:1px solid var(--rf-line);
  border-radius:13px;

  background:#f8faf9;

  text-align:center;
}


.rf-steps > div > span {
  width:34px;
  height:34px;

  margin:0 auto 13px;

  display:grid;

  place-items:center;

  border-radius:50%;

  background:var(--rf-green);

  color:#fff;

  font-size:12px;
  font-weight:800;
}


.rf-steps > div:nth-child(2) > span {
  background:var(--rf-red);
}


.rf-steps > div:nth-child(3) > span {
  background:var(--rf-cyan);
}


.rf-steps strong {
  display:block;

  color:var(--rf-title);

  text-align:center;

  font-size:14px;
}


.rf-steps p {
  margin:7px 0 0;

  color:var(--rf-muted);

  font-size:12px;

  line-height:1.5;
}


/* COUNTRIES */

.rf-countries {
  display:flex;

  justify-content:center;

  flex-wrap:wrap;

  gap:8px;
}


/* REVIEWS */

.rf-reviews {
  display:grid;

  grid-template-columns:repeat(3,1fr);

  gap:10px;
}


.rf-reviews article {
  padding:22px;

  border:1px solid var(--rf-line);
  border-radius:13px;

  background:#f8faf9;

  text-align:center;
}


.rf-review-avatar {
  width:38px;
  height:38px;

  margin:0 auto 14px;

  display:grid;

  place-items:center;

  border-radius:50%;

  background:var(--rf-green);

  color:#fff;

  font-size:14px;
  font-weight:800;
}


.rf-review-avatar.red {
  background:var(--rf-red);
}


.rf-review-avatar.cyan {
  background:var(--rf-cyan);
}


.rf-reviews p {
  margin:0 0 12px;

  color:var(--rf-text);

  font-size:13px;

  line-height:1.65;
}


.rf-reviews strong {
  color:var(--rf-green-dark);

  font-size:12px;
}


/* FAQ */

.rf-faq {
  max-width:900px;
}


.rf-faq details {
  margin-bottom:8px;

  overflow:hidden;

  border:1px solid var(--rf-line);
  border-radius:11px;

  background:#f9faf9;
}


.rf-faq summary {
  position:relative;

  padding:17px 46px 17px 17px;

  cursor:pointer;

  color:var(--rf-title);

  text-align:left;

  font-size:14px;
  font-weight:700;

  list-style:none;
}


.rf-faq summary::-webkit-details-marker {
  display:none;
}


.rf-faq summary::after {
  content:"+";

  position:absolute;

  right:17px;
  top:12px;

  color:var(--rf-green);

  font-size:22px;
  font-weight:400;
}


.rf-faq details[open] summary::after {
  content:"−";
}


.rf-faq details p {
  margin:0;

  padding:0 17px 17px;

  color:var(--rf-text);

  text-align:left;

  font-size:13px;

  line-height:1.6;
}


/* CTA */

.rf-cta {
  width:min(calc(100% - 28px),1180px);

  margin:0 auto;

  padding:55px 30px;

  border-radius:18px;

  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(24,188,208,.18),
      transparent 28%
    ),
    var(--rf-green-dark);

  text-align:center;
}


.rf-cta > span {
  color:#99e2b9;

  font-size:12px;
  font-weight:800;

  letter-spacing:.06em;

  text-transform:uppercase;
}


.rf-cta h2 {
  max-width:760px;

  margin:10px auto 12px;

  color:#fff;

  font-size:clamp(30px,4vw,44px);

  line-height:1.05;
}


.rf-cta h2 strong {
  color:#ff7799;
}


.rf-cta p {
  margin:0 auto 20px;

  color:rgba(255,255,255,.75);
}


.rf-cta-link {
  padding:10px;

  color:#fff;

  font-size:13px;
  font-weight:700;

  text-decoration:none;
}


/* MOBILE */

@media (max-width:700px) {

  .rf-home {
    padding-top:10px;
  }


  .rf-profile {
    width:calc(100% - 16px);

    border-radius:14px;
  }


  .rf-cover {
    height:230px;
  }


  .rf-profile-info {
    padding:0 16px 22px;
  }


  .rf-avatar {
    width:92px;
    height:92px;

    margin-top:-46px;
  }


  .rf-profile h1 {
    font-size:34px;
  }


  .rf-profile-info > p {
    font-size:14px;
  }


  .rf-primary,
  .rf-secondary {
    min-height:39px;

    padding:0 13px;

    font-size:12px;
  }


  .rf-shortcuts {
    width:calc(100% - 16px);

    display:flex;

    overflow-x:auto;

    gap:8px;

    padding-bottom:4px;

    scroll-snap-type:x proximity;

    scrollbar-width:none;
  }


  .rf-shortcuts::-webkit-scrollbar {
    display:none;
  }


  .rf-shortcut {
    flex:0 0 235px;

    min-height:71px;

    scroll-snap-align:start;
  }


  .rf-feed-card {
    width:calc(100% - 16px);

    padding:25px 14px;

    border-radius:14px;
  }


  .rf-section-head {
    margin-bottom:22px;
  }


  .rf-section-head h2 {
    font-size:28px;
  }


  .rf-section-head p {
    font-size:13px;
  }


  .rf-stories {
    display:flex;

    overflow-x:auto;

    gap:9px;

    padding-bottom:6px;

    scroll-snap-type:x mandatory;

    scrollbar-width:none;
  }


  .rf-stories::-webkit-scrollbar {
    display:none;
  }


  .rf-story {
    flex:0 0 74vw;

    max-width:300px;

    height:390px;

    scroll-snap-align:start;
  }


  .rf-features,
  .rf-steps {
    grid-template-columns:repeat(2,1fr);

    gap:8px;
  }


  .rf-feature,
  .rf-steps > div {
    padding:18px 10px;
  }


  .rf-reviews {
    display:flex;

    overflow-x:auto;

    gap:8px;

    padding-bottom:5px;

    scroll-snap-type:x proximity;

    scrollbar-width:none;
  }


  .rf-reviews::-webkit-scrollbar {
    display:none;
  }


  .rf-reviews article {
    flex:0 0 82%;

    scroll-snap-align:start;
  }


  .rf-cta {
    width:calc(100% - 16px);

    padding:42px 18px;
  }

}


@media (max-width:380px) {

  .rf-profile h1 {
    font-size:30px;
  }


  .rf-features,
  .rf-steps {
    grid-template-columns:1fr;
  }

}

/* === RWR FB 2027 END === */

/* =========================================
   RWR WIDER / RELAXED DESKTOP LAYOUT
========================================= */

@media (min-width: 901px) {

  /* نفس عرض الهيدر تقريباً */
  .rf-profile,
  .rf-shortcuts,
  .rf-feed-card,
  .rf-cta {
    width: calc(100% - 48px) !important;
    max-width: 1440px !important;
  }

  /* الغلاف ياخد مساحة أقوى */
  .rf-cover {
    height: clamp(340px, 36vw, 540px) !important;
  }

  /* محتوى الكروت أريح */
  .rf-feed-card {
    padding: 48px clamp(36px, 4vw, 64px) !important;
  }

  /* العناوين مش مضغوطة */
  .rf-section-head {
    max-width: 880px !important;
    margin-bottom: 38px !important;
  }

  .rf-section-head h2 {
    max-width: 850px;
    margin-inline: auto !important;
  }

  .rf-section-head p {
    max-width: 720px !important;
  }

  /* البرامج أوسع */
  .rf-stories {
    gap: 18px !important;
  }

  .rf-story {
    height: 430px !important;
  }

  /* Quick shortcuts */
  .rf-shortcuts {
    gap: 12px !important;
  }

  .rf-shortcut {
    min-height: 86px !important;
    padding: 15px 18px !important;
  }

  /* Why / Steps / Reviews */
  .rf-features,
  .rf-steps,
  .rf-reviews {
    gap: 14px !important;
  }

  .rf-feature,
  .rf-steps > div,
  .rf-reviews article {
    padding: 28px 22px !important;
  }

  /* CTA */
  .rf-cta {
    padding: 70px 50px !important;
  }
}


/* الشاشات الكبيرة */
@media (min-width: 1500px) {

  .rf-profile,
  .rf-shortcuts,
  .rf-feed-card,
  .rf-cta {
    width: calc(100% - 64px) !important;
    max-width: 1520px !important;
  }

}


/* الموبايل يفضل مريح وغير ملزق */
@media (max-width: 700px) {

  .rf-profile,
  .rf-shortcuts,
  .rf-feed-card,
  .rf-cta {
    width: calc(100% - 16px) !important;
  }

}

/* =========================================
   SMALLER COVER + STICKY HEADER
========================================= */

/* Keep main header visible while scrolling */
.rr-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
}

/* WordPress admin bar */
.admin-bar .rr-header {
  top: 32px !important;
}


/* Smaller Facebook-style cover */
.rf-cover {
  height: clamp(230px, 23vw, 330px) !important;
}

/* Slightly smaller profile logo */
.rf-avatar {
  width: 94px !important;
  height: 94px !important;
  margin-top: -47px !important;
}


/* Mobile */
@media (max-width: 700px) {

  .rf-cover {
    height: 180px !important;
  }

  .rf-avatar {
    width: 78px !important;
    height: 78px !important;
    margin-top: -39px !important;
  }

}


/* Mobile with WordPress admin bar */
@media screen and (max-width: 782px) {

  .admin-bar .rr-header {
    top: 46px !important;
  }

}

/* =========================================
   FIXED HEADER + REMOVE GAP BEFORE COVER
========================================= */

:root {
  --rr-header-height: 104px;
}

/* Header always visible */
.rr-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 999999 !important;
  margin: 0 !important;
}

/* Logged-in WordPress admin */
.admin-bar .rr-header {
  top: 32px !important;
}

/* Make room for fixed header, but NO extra visual gap */
.rf-home {
  padding-top: var(--rr-header-height) !important;
}

/* Cover starts immediately under header */
.rf-profile {
  margin-top: 0 !important;
}

.rf-home > .rf-profile:first-child {
  margin-top: 0 !important;
}


/* Mobile */
@media (max-width: 900px) {

  :root {
    --rr-header-height: 78px;
  }

  .rf-home {
    padding-top: var(--rr-header-height) !important;
  }

}


/* WordPress mobile admin bar */
@media screen and (max-width: 782px) {

  .admin-bar .rr-header {
    top: 46px !important;
  }

}

/* FIX WHITE GAP UNDER FIXED HEADER */

:root {
  --rr-header-height: 84px;
}

.rr-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 999999 !important;

  padding: 12px 20px 0 !important;
  margin: 0 !important;

  background: #f0f3f1 !important;
}

.rf-home {
  padding-top: var(--rr-header-height) !important;
  margin-top: 0 !important;
}

.rf-profile {
  margin-top: 0 !important;
}


/* Mobile */
@media (max-width: 900px) {

  :root {
    --rr-header-height: 70px;
  }

  .rr-header {
    padding: 8px 8px 0 !important;
  }

  .rf-home {
    padding-top: var(--rr-header-height) !important;
  }
}


/* WordPress admin bar */
.admin-bar .rr-header {
  top: 32px !important;
}

@media screen and (max-width: 782px) {
  .admin-bar .rr-header {
    top: 46px !important;
  }
}


/* === RWR SOCIAL ICONS START === */

.rf-socials {
  width: max-content;
  margin: 20px auto 0;
  padding: 7px 10px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  border: 1px solid #d6e5dd;
  border-radius: 28px;

  background: #fff;

  box-shadow:
    0 8px 24px rgba(21,56,41,.07);
}

.rf-social-btn {
  width: 43px;
  height: 43px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: #f7f9f8;
}

.rf-social-btn svg {
  width: 21px;
  height: 21px;
}

.rf-social-btn.facebook {
  color: #1877f2;
}

.rf-social-btn.facebook svg {
  fill: currentColor;
}

.rf-social-btn.whatsapp {
  color: #20c763;
}

.rf-social-btn.whatsapp svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rf-social-btn.youtube {
  color: #ff0000;
}

.rf-social-btn.youtube svg {
  fill: currentColor;
}

.rf-social-btn.youtube .play {
  fill: #fff;
}

.rf-social-btn.instagram {
  color: #e1306c;
}

.rf-social-btn.instagram svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

.rf-social-btn.instagram .dot {
  fill: currentColor;
  stroke: none;
}

@media (max-width: 700px) {

  .rf-socials {
    margin-top: 17px;
    padding: 6px 8px;
    gap: 6px;
  }

  .rf-social-btn {
    width: 39px;
    height: 39px;
  }

  .rf-social-btn svg {
    width: 19px;
    height: 19px;
  }

}

/* === RWR SOCIAL ICONS END === */


/* Rounded buttons across the whole site */

button,
.wp-block-button__link,
.rr-trial,
.rf-primary,
.rf-secondary,
.rf-cta-link,
.rw-btn,
input[type="submit"],
input[type="button"] {
  border-radius: 12px !important;
}

/* Mobile: softer and more compact */
@media (max-width: 700px) {
  button,
  .wp-block-button__link,
  .rr-trial,
  .rf-primary,
  .rf-secondary,
  .rf-cta-link,
  .rw-btn,
  input[type="submit"],
  input[type="button"] {
    border-radius: 10px !important;
  }
}


/* =========================================
   MODERN LEARNING SHORTCUTS
========================================= */

.rf-shortcuts {
  width: min(calc(100% - 48px), 1520px) !important;
  margin: 0 auto 14px !important;
  padding: 8px 10px !important;

  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;

  background: #ffffff !important;
  border: 1px solid #e0e8e3 !important;
  border-radius: 18px !important;

  box-shadow:
    0 2px 8px rgba(17, 48, 32, .04) !important;
}


/* One clean item - no individual card */
.rf-shortcut {
  position: relative;

  min-height: 78px !important;
  padding: 10px 20px !important;

  display: flex !important;
  align-items: center !important;
  gap: 13px !important;

  border: 0 !important;
  border-radius: 12px !important;

  background: transparent !important;
  box-shadow: none !important;

  text-decoration: none !important;

  transition:
    background-color .16s ease,
    transform .16s ease;
}


/* soft separators */
.rf-shortcut:not(:last-child)::after {
  content: "";

  position: absolute;
  top: 17px;
  right: 0;
  bottom: 17px;

  width: 1px;

  background: #e6ece8;
}


.rf-shortcut:hover {
  background: #f5faf7 !important;
  transform: none !important;
}


/* Icons */

.rf-icon {
  width: 46px !important;
  height: 46px !important;
  flex: 0 0 46px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 14px !important;
}


.rf-icon-green {
  background: #e7f6ed !important;
  color: #078b4b !important;
}


.rf-icon-red {
  background: #fff0f4 !important;
  color: #e61d4f !important;
}


.rf-icon-cyan {
  background: #e8f9fb !important;
  color: #0aa7b9 !important;
}


.rf-icon svg {
  width: 23px !important;
  height: 23px !important;
  stroke-width: 1.8 !important;
}


/* Text */

.rf-shortcut-copy {
  min-width: 0;
  flex: 1;
}


.rf-shortcut-copy strong {
  margin: 0 0 4px !important;

  color: #153829 !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif !important;

  font-size: 15px !important;
  font-weight: 700 !important;

  line-height: 1.15 !important;
}


.rf-shortcut-copy small {
  color: #738078 !important;

  font-size: 12px !important;
  font-weight: 450 !important;

  line-height: 1.3 !important;
}


/* Arrow */

.rf-arrow {
  width: 28px;
  height: 28px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  color: #8b9790 !important;
  background: #f5f7f6;

  font-size: 19px !important;

  transition: .16s ease;
}


.rf-shortcut:hover .rf-arrow {
  color: #078b4b !important;
  background: #e7f6ed;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

  .rf-shortcuts {
    width: calc(100% - 16px) !important;

    padding: 7px !important;

    display: flex !important;
    gap: 5px !important;

    overflow-x: auto !important;

    border-radius: 16px !important;

    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }


  .rf-shortcuts::-webkit-scrollbar {
    display: none;
  }


  .rf-shortcut {
    flex: 0 0 82% !important;

    min-height: 72px !important;

    padding: 9px 12px !important;

    border-radius: 12px !important;

    background: #f8faf9 !important;

    scroll-snap-align: start;
  }


  .rf-shortcut:not(:last-child)::after {
    display: none !important;
  }


  .rf-icon {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;

    border-radius: 12px !important;
  }


  .rf-icon svg {
    width: 21px !important;
    height: 21px !important;
  }


  .rf-shortcut-copy strong {
    font-size: 14px !important;
  }


  .rf-shortcut-copy small {
    font-size: 11.5px !important;
  }


  .rf-arrow {
    width: 26px;
    height: 26px;
  }

}

/* =========================================
   NATURAL MOMENTUM / INERTIAL SCROLL
========================================= */

html,
body {
  overflow-x: hidden;
  overflow-y: auto !important;

  overscroll-behavior-y: auto;

  -webkit-overflow-scrolling: touch;

  scroll-behavior: smooth;
}

body {
  touch-action: pan-y pinch-zoom;
}

/* Keep vertical page movement completely natural */
.rf-home {
  overflow: visible !important;
  touch-action: pan-y pinch-zoom;
}

/* Horizontal sliders still move sideways naturally */
.rf-shortcuts,
.rf-stories,
.rf-reviews {
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;

  scroll-snap-stop: normal !important;
}

/* Don't make animations fight with finger scrolling */
@media (pointer: coarse) {
  * {
    scroll-behavior: smooth;
  }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  html,
  body {
    scroll-behavior: auto !important;
  }
}

/* =========================================
   ROUH & RIHAN BRAND TEXT COLORS
========================================= */

:root {
  --brand-green: #078b4b;
  --brand-green-dark: #12452f;
  --brand-red: #e61d4f;
  --brand-cyan: #18bcd0;
  --brand-body: #385246;
}

/* Main headings */
.rf-home h1,
.rf-home h2,
.rf-home h3 {
  color: var(--brand-green-dark) !important;
}

/* Hero highlighted words */
.rf-profile h1 strong,
.rf-cta h2 strong {
  color: var(--brand-red) !important;
}

/* Section labels */
.rf-section-head > span,
.rf-profile-label,
.rf-cta > span {
  color: var(--brand-red) !important;
}

/* Normal paragraphs */
.rf-home p {
  color: var(--brand-body) !important;
}

/* Quran / Arabic / Islamic shortcuts */
.rf-shortcut:nth-child(1) strong {
  color: var(--brand-green) !important;
}

.rf-shortcut:nth-child(2) strong {
  color: var(--brand-red) !important;
}

.rf-shortcut:nth-child(3) strong {
  color: #0aa6b8 !important;
}

.rf-shortcut-copy small {
  color: #567064 !important;
}

/* Learning path titles */
.rf-story:nth-child(1) h3 {
  color: #ffffff !important;
}

.rf-story:nth-child(2) h3 {
  color: #ffffff !important;
}

.rf-story:nth-child(3) h3 {
  color: #ffffff !important;
}

/* Feature titles */
.rf-feature strong,
.rf-steps strong {
  color: var(--brand-green-dark) !important;
}

/* Alternate brand accents */
.rf-feature:nth-child(2) strong,
.rf-steps > div:nth-child(2) strong {
  color: var(--brand-red) !important;
}

.rf-feature:nth-child(3) strong,
.rf-steps > div:nth-child(3) strong {
  color: #079fb1 !important;
}

/* FAQ */
.rf-faq summary {
  color: var(--brand-green-dark) !important;
}

.rf-faq details[open] summary {
  color: var(--brand-green) !important;
}

/* Reviews */
.rf-reviews strong {
  color: var(--brand-red) !important;
}

/* Countries */
.rf-countries span {
  color: var(--brand-green-dark) !important;
}

/* Links */
.rf-home a:not(.rf-primary):not(.rf-secondary):not(.rf-story) {
  color: var(--brand-green) !important;
}

/* White text areas */
.rf-primary,
.rf-cta,
.rf-cta p,
.rf-cta-link,
.rf-story-content,
.rf-story-content h3,
.rf-story-content p {
  color: #ffffff !important;
}


/* === RWR PROGRAM PAGES START === */

/* Home program cards buttons */
.rf-story {
  display: block;
}

.rf-story-content {
  left: 18px;
  right: 18px;
  bottom: 18px;
}

.rf-story-actions {
  margin-top: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}

.rf-story-btn {
  min-height: 38px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
}

.rf-story-btn-primary {
  background: #e61d4f;
  color: #ffffff !important;
}

.rf-story-btn-secondary {
  border: 1px solid rgba(255,255,255,.38);
  background: rgba(255,255,255,.14);
  color: #ffffff !important;
  backdrop-filter: blur(6px);
}

/* Program pages */
.rwr-program-page {
  width: min(calc(100% - 28px), 1320px);
  margin: 18px auto 70px;
  color: #153829;
}

.rwr-program-page * {
  box-sizing: border-box;
}

.rwr-program-panel {
  border: 1px solid #dde5df;
  border-radius: 18px;
  background: #ffffff;
  box-shadow:
    0 1px 2px rgba(21,56,41,.05),
    0 8px 24px rgba(21,56,41,.04);
}

.rwr-program-hero {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 14px;
  margin-bottom: 14px;
}

.rwr-program-copy {
  padding: 34px;
}

.rwr-program-kicker,
.rwr-program-section-head > span,
.rwr-program-final > span {
  display: inline-block;
  margin-bottom: 8px;
  color: #e61d4f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.rwr-program-copy h1,
.rwr-program-section-head h2,
.rwr-program-final h2 {
  margin: 0;
  color: #12452f;
  font-family: "Trebuchet MS","Segoe UI",sans-serif;
  font-size: clamp(31px,4vw,48px);
  line-height: 1.06;
  letter-spacing: -.04em;
}

.rwr-program-copy p,
.rwr-program-section-head p,
.rwr-program-list-grid p,
.rwr-mini-card p,
.rwr-program-final p {
  color: #4c6157;
  font-size: 15px;
  line-height: 1.7;
}

.rwr-program-copy p {
  max-width: 640px;
  margin: 14px 0 18px;
}

.rwr-program-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.rwr-program-btn {
  min-height: 42px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
}

.rwr-program-btn-primary {
  background: #078b4b;
  color: #ffffff !important;
}

.rwr-program-btn-secondary {
  background: #f7f9f8;
  border: 1px solid #d7e1db;
  color: #12452f !important;
}

.rwr-program-pills {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rwr-program-pills span {
  padding: 7px 12px;
  border-radius: 999px;
  background: #f4f8f6;
  border: 1px solid #dde6e0;
  color: #12452f;
  font-size: 12px;
  font-weight: 700;
}

.rwr-program-image {
  overflow: hidden;
  min-height: 100%;
}

.rwr-program-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 18px;
}

.rwr-program-section {
  margin-bottom: 14px;
  padding: 30px;
}

.rwr-program-section-head {
  max-width: 760px;
  margin: 0 auto 24px;
  text-align: center;
}

.rwr-program-card-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}

.rwr-mini-card {
  padding: 22px;
  border-radius: 16px;
  background: #f7faf8;
  border: 1px solid #e2e9e4;
}

.rwr-mini-card h3 {
  margin: 0 0 8px;
  color: #12452f;
  font-family: "Trebuchet MS","Segoe UI",sans-serif;
  font-size: 20px;
}

.rwr-mini-card p {
  margin: 0;
}

.rwr-program-gallery {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 12px;
}

.rwr-program-gallery figure {
  margin: 0;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid #e2e9e4;
  background: #f9fbfa;
}

.rwr-program-gallery img {
  width: 100%;
  aspect-ratio: 4 / 4.5;
  display: block;
  object-fit: cover;
}

.rwr-program-gallery figcaption {
  padding: 10px 12px 12px;
  color: #12452f;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

.rwr-program-list-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}

.rwr-program-list-grid > div {
  padding: 22px;
  border-radius: 16px;
  border: 1px solid #e2e9e4;
  background: #f7faf8;
}

.rwr-program-list-grid strong {
  display: block;
  margin-bottom: 6px;
  color: #e61d4f;
  font-size: 18px;
  font-family: "Trebuchet MS","Segoe UI",sans-serif;
}

.rwr-program-list-grid p {
  margin: 0;
}

.rwr-program-final {
  padding: 36px;
  text-align: center;
}

.rwr-program-final p {
  max-width: 620px;
  margin: 12px auto 20px;
}

/* responsive */
@media (max-width: 1000px) {
  .rwr-program-hero,
  .rwr-program-card-grid,
  .rwr-program-list-grid {
    grid-template-columns: 1fr;
  }

  .rwr-program-gallery {
    grid-template-columns: repeat(2,1fr);
  }
}

@media (max-width: 700px) {
  .rwr-program-page {
    width: calc(100% - 16px);
    margin-top: 10px;
  }

  .rwr-program-copy,
  .rwr-program-section,
  .rwr-program-final {
    padding: 20px 14px;
  }

  .rwr-program-copy h1,
  .rwr-program-section-head h2,
  .rwr-program-final h2 {
    font-size: 28px;
  }

  .rwr-program-copy p,
  .rwr-program-section-head p,
  .rwr-program-list-grid p,
  .rwr-mini-card p,
  .rwr-program-final p {
    font-size: 14px;
  }

  .rwr-program-gallery {
    grid-template-columns: 1fr;
  }

  .rf-story {
    height: 420px !important;
  }

  .rf-story-btn {
    min-height: 36px;
    padding: 0 12px;
    font-size: 11.5px;
  }
}

/* === RWR PROGRAM PAGES END === */

/* === RWR PERMANENT PAGE WIDTH START === */

/*
 * Permanent layout for all WordPress Pages.
 * Removes Twenty Twenty-Five constrained page width.
 */

.rwr-page-shell {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  /* space for our fixed header */
  padding: calc(var(--rr-header-height, 84px) + 18px) 0 55px !important;
}


.rwr-page-shell > .wp-block-post-content,
.rwr-page-shell .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/*
 * We create the H1 ourselves inside each page.
 * Never show the generic WordPress page title.
 */
body.page .wp-block-post-title {
  display: none !important;
}


/* ==============================
   PROGRAM PAGES
============================== */

.rwr-program-page {
  width: min(calc(100% - 48px), 1440px) !important;

  max-width: 1440px !important;

  margin: 0 auto 70px !important;
  padding: 0 !important;
}


.rwr-program-hero {
  width: 100% !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr) !important;

  gap: 18px !important;

  align-items: stretch !important;

  margin: 0 0 18px !important;
}


.rwr-program-copy {
  width: 100% !important;

  padding:
    clamp(32px, 4vw, 58px)
    clamp(30px, 4vw, 58px) !important;

  display: flex;
  flex-direction: column;
  justify-content: center;
}


.rwr-program-copy h1 {
  max-width: 780px !important;

  font-size: clamp(40px, 4vw, 58px) !important;
  line-height: 1.04 !important;
}


.rwr-program-copy > p {
  max-width: 720px !important;

  font-size: 16px !important;
}


.rwr-program-image {
  width: 100% !important;

  min-height: 520px !important;
}


.rwr-program-image img {
  width: 100% !important;
  height: 100% !important;

  object-fit: cover !important;
}


.rwr-program-section,
.rwr-program-final {
  width: 100% !important;

  margin-left: 0 !important;
  margin-right: 0 !important;
}


.rwr-program-section {
  padding: 42px clamp(24px, 4vw, 54px) !important;
}


.rwr-program-section-head {
  max-width: 850px !important;
}


.rwr-program-card-grid,
.rwr-program-list-grid {
  gap: 16px !important;
}


.rwr-program-gallery {
  gap: 14px !important;
}


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

@media (max-width: 1050px) {

  .rwr-program-page {
    width: calc(100% - 28px) !important;
  }

  .rwr-program-hero {
    grid-template-columns: 1fr !important;
  }

  .rwr-program-image {
    min-height: 420px !important;
  }

}


/* ==============================
   MOBILE
============================== */

@media (max-width: 700px) {

  .rwr-page-shell {
    padding-top:
      calc(var(--rr-header-height, 70px) + 10px) !important;

    padding-bottom: 35px !important;
  }


  .rwr-program-page {
    width: calc(100% - 16px) !important;

    margin-bottom: 45px !important;
  }


  .rwr-program-hero {
    gap: 10px !important;
    margin-bottom: 10px !important;
  }


  .rwr-program-copy {
    padding: 26px 18px !important;
  }


  .rwr-program-copy h1 {
    font-size: 34px !important;
    line-height: 1.05 !important;
  }


  .rwr-program-copy > p {
    font-size: 14px !important;
  }


  .rwr-program-image {
    min-height: 310px !important;
  }


  .rwr-program-section,
  .rwr-program-final {
    padding: 28px 16px !important;
  }

}

/* === RWR PERMANENT PAGE WIDTH END === */

/* === RWR PERMANENT TYPOGRAPHY START === */

/* ==================================================
   PERMANENT TEXT SYSTEM
   Applies to current + future academy pages
================================================== */

.rwr-page-shell,
.rwr-program-page {
  text-align: center !important;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif !important;
}


/* All normal text centered */

.rwr-program-page p,
.rwr-program-page li,
.rwr-program-page span,
.rwr-program-page strong,
.rwr-program-page figcaption,
.rwr-program-page .rwr-mini-card,
.rwr-program-page .rwr-program-list-grid > div {
  text-align: center !important;
}


/* ==================================================
   MAIN H1
================================================== */

.rwr-program-copy {
  text-align: center !important;
  align-items: center !important;
}

.rwr-program-copy h1 {
  position: relative;

  max-width: 860px !important;

  margin:
    8px auto
    22px !important;

  padding-bottom: 22px;

  color: #12452f !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif !important;

  font-size:
    clamp(38px, 4.6vw, 62px) !important;

  font-weight: 700 !important;

  line-height: 1.04 !important;

  letter-spacing: -.045em !important;

  text-align: center !important;
}


/* Brand accent below H1 */

.rwr-program-copy h1::after {
  content: "";

  position: absolute;

  left: 50%;
  bottom: 0;

  width: 76px;
  height: 5px;

  transform: translateX(-50%);

  border-radius: 999px;

  background:
    linear-gradient(
      90deg,
      #078b4b 0%,
      #078b4b 52%,
      #e61d4f 52%,
      #e61d4f 100%
    );
}


/* Program label */

.rwr-program-kicker {
  margin:
    0 auto
    8px !important;

  padding:
    7px
    13px;

  display: inline-flex !important;

  align-items: center;
  justify-content: center;

  border: 1px solid #d6e8dd;

  border-radius: 999px;

  background: #edf8f2;

  color: #078b4b !important;

  font-size: 11px !important;

  font-weight: 800 !important;

  letter-spacing: .09em !important;

  text-align: center !important;
}


/* Hero paragraph */

.rwr-program-copy > p {
  max-width: 720px !important;

  margin:
    0 auto
    22px !important;

  color: #456054 !important;

  font-size: 16px !important;

  line-height: 1.75 !important;

  text-align: center !important;
}


/* Hero actions */

.rwr-program-actions {
  justify-content: center !important;
}


/* Tags */

.rwr-program-pills {
  justify-content: center !important;
}


/* ==================================================
   SECTION HEADINGS
================================================== */

.rwr-program-section-head {
  max-width: 820px !important;

  margin:
    0 auto
    32px !important;

  text-align: center !important;
}


.rwr-program-section-head > span,
.rwr-program-final > span {
  margin:
    0 auto
    10px !important;

  display: inline-block !important;

  color: #e61d4f !important;

  font-size: 11px !important;

  font-weight: 800 !important;

  letter-spacing: .11em !important;

  text-transform: uppercase;

  text-align: center !important;
}


.rwr-program-section-head h2,
.rwr-program-final h2 {
  position: relative;

  max-width: 850px;

  margin:
    0 auto
    19px !important;

  padding-bottom: 18px;

  color: #12452f !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif !important;

  font-size:
    clamp(29px, 3.7vw, 44px) !important;

  font-weight: 700 !important;

  line-height: 1.08 !important;

  letter-spacing: -.035em !important;

  text-align: center !important;
}


/* Small modern underline */

.rwr-program-section-head h2::after,
.rwr-program-final h2::after {
  content: "";

  position: absolute;

  left: 50%;
  bottom: 0;

  width: 48px;
  height: 3px;

  transform: translateX(-50%);

  border-radius: 999px;

  background: #18bcd0;
}


.rwr-program-section-head p,
.rwr-program-final p {
  max-width: 700px !important;

  margin:
    0 auto !important;

  color: #50665b !important;

  text-align: center !important;
}


/* ==================================================
   SMALL CARD TITLES
================================================== */

.rwr-mini-card,
.rwr-program-list-grid > div {
  text-align: center !important;
}


.rwr-mini-card h3 {
  position: relative;

  margin:
    0 auto
    11px !important;

  color: #078b4b !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif !important;

  font-size: 20px !important;

  font-weight: 700 !important;

  text-align: center !important;
}


.rwr-mini-card:nth-child(2) h3 {
  color: #e61d4f !important;
}


.rwr-mini-card:nth-child(3) h3 {
  color: #079fb1 !important;
}


.rwr-program-list-grid strong {
  color: #e61d4f !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif !important;

  text-align: center !important;
}


/* Gallery captions */

.rwr-program-gallery figcaption {
  text-align: center !important;

  color: #12452f !important;

  font-weight: 700 !important;
}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 700px) {

  .rwr-program-copy {
    padding:
      30px
      17px !important;
  }


  .rwr-program-copy h1 {
    max-width: 100% !important;

    font-size: 36px !important;

    line-height: 1.04 !important;

    padding-bottom: 18px;
  }


  .rwr-program-copy h1::after {
    width: 58px;
    height: 4px;
  }


  .rwr-program-copy > p {
    max-width: 100% !important;

    font-size: 14px !important;

    line-height: 1.7 !important;
  }


  .rwr-program-section-head h2,
  .rwr-program-final h2 {
    font-size: 29px !important;
  }


  .rwr-program-section-head {
    margin-bottom: 25px !important;
  }

}

/* === RWR PERMANENT TYPOGRAPHY END === */


/* === RWR INTERNAL LINKING START === */

.rwr-related {
  margin: 14px 0 0;
  padding: 38px clamp(18px,4vw,50px);
  text-align: center;
}

.rwr-related-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 12px;
  max-width: 980px;
  margin: 0 auto;
}

.rwr-related-card {
  padding: 24px 20px;
  display: block;

  border: 1px solid #dfe8e2;
  border-radius: 18px;

  background: #f8fbf9;

  text-decoration: none;
  text-align: center;
}

.rwr-related-card:hover {
  border-color: #bcd8c7;
  background: #f1f8f4;
}

.rwr-related-label {
  display: block;
  margin-bottom: 7px;

  color: #e61d4f;
  font-size: 10px;
  font-weight: 800;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.rwr-related-card strong {
  display: block;

  color: #078b4b;
  font-family: "Trebuchet MS","Segoe UI",sans-serif;
  font-size: 20px;

  text-align: center;
}

.rwr-related-card p {
  max-width: 440px;
  margin: 9px auto 14px;

  color: #486055;
  font-size: 13px;
  line-height: 1.6;

  text-align: center;
}

.rwr-related-arrow {
  color: #12452f;
  font-size: 12px;
  font-weight: 700;
}

.rwr-context-links {
  margin-top: 24px;

  display: flex;
  justify-content: center;
  align-items: center;

  gap: 8px;
  flex-wrap: wrap;
}

.rwr-context-links a {
  padding: 8px 12px;

  border: 1px solid #dce7e0;
  border-radius: 999px;

  background: #fff;

  color: #12452f !important;

  font-size: 12px;
  font-weight: 650;

  text-decoration: none;
}

.rwr-context-links a:hover {
  color: #078b4b !important;
  border-color: #bad7c5;
}

@media (max-width:700px) {

  .rwr-related {
    padding: 28px 13px;
  }

  .rwr-related-grid {
    grid-template-columns: 1fr;
  }

  .rwr-related-card {
    padding: 20px 15px;
  }

}

/* === RWR INTERNAL LINKING END === */




/* === RWR WHY MODERN START === */

.rf-why-modern {
  padding: 18px !important;
}

.rf-why-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 42px;
  align-items: center;
}

.rf-why-photo {
  min-height: 500px;
  overflow: hidden;
  border-radius: 20px;
  background: #eaf6ef;
}

.rf-why-photo img {
  width: 100%;
  height: 100%;
  min-height: 500px;
  display: block;
  object-fit: cover;
}

.rf-why-content {
  padding: 34px 40px 34px 0;
  text-align: center;
}

.rf-why-label {
  display: inline-block;
  margin-bottom: 10px;
  color: #e61d4f;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.rf-why-content h2 {
  max-width: 650px;
  margin: 0 auto 15px;
  color: #12452f;
  font-family: "Trebuchet MS","Segoe UI",sans-serif;
  font-size: clamp(32px,4vw,46px);
  line-height: 1.06;
  letter-spacing: -.04em;
  text-align: center;
}

.rf-why-intro {
  max-width: 600px;
  margin: 0 auto 28px !important;
  color: #53685d !important;
  text-align: center !important;
}

.rf-why-list {
  max-width: 650px;
  margin: 0 auto;
  border-top: 1px solid #e1e8e4;
}

.rf-why-item {
  padding: 17px 0;
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 14px;
  align-items: center;
  border-bottom: 1px solid #e1e8e4;
}

.rf-why-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  font-size: 18px;
  font-weight: 700;
}

.rf-why-icon.green {
  background: #e7f6ed;
  color: #078b4b;
}

.rf-why-icon.red {
  background: #fff0f4;
  color: #e61d4f;
}

.rf-why-icon.cyan {
  background: #e8f9fb;
  color: #0aa6b8;
}

.rf-why-item strong {
  display: block;
  margin-bottom: 4px;
  color: #12452f;
  font-size: 15px;
  text-align: left;
}

.rf-why-item p {
  margin: 0 !important;
  color: #64736b !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

@media (max-width: 800px) {

  .rf-why-modern {
    padding: 10px !important;
  }

  .rf-why-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .rf-why-photo {
    min-height: 330px;
    border-radius: 16px 16px 0 0;
  }

  .rf-why-photo img {
    min-height: 330px;
  }

  .rf-why-content {
    padding: 28px 14px 18px;
  }

  .rf-why-content h2 {
    font-size: 30px;
  }

}

 /* === RWR WHY MODERN END === */


/* =========================================
   WHY ROUH & RIHAN V2
========================================= */

.rf-why-v2 {
  padding: 50px !important;
  overflow: hidden;
}


.rf-why-v2-copy {
  max-width: 800px;
  margin: 0 auto 38px;
  text-align: center;
}


.rf-why-v2-label {
  display: inline-block;
  margin-bottom: 10px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}


.rf-why-v2-copy h2 {
  margin: 0 auto 15px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: clamp(34px, 4vw, 50px);
  line-height: 1.03;
  letter-spacing: -.045em;

  text-align: center;
}


.rf-why-v2-copy h2 strong {
  color: #e61d4f;
}


.rf-why-v2-copy p {
  max-width: 680px;
  margin: 0 auto;

  color: #53685d !important;

  font-size: 15px;
  line-height: 1.7;

  text-align: center !important;
}


.rf-why-v2-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
  align-items: stretch;
}


/* IMAGE */

.rf-why-v2-visual {
  position: relative;

  min-height: 460px;

  overflow: hidden;

  border-radius: 22px;

  background:
    linear-gradient(
      135deg,
      #e7f6ed,
      #f7fbf9
    );
}


.rf-why-v2-visual img {
  width: 100%;
  height: 100%;

  min-height: 460px;

  display: block;

  object-fit: cover;
}


.rf-why-v2-badge {
  position: absolute;

  left: 18px;
  right: 18px;
  bottom: 18px;

  padding: 15px 18px;

  border: 1px solid rgba(255,255,255,.35);
  border-radius: 16px;

  background: rgba(255,255,255,.9);

  backdrop-filter: blur(12px);

  text-align: left;
}


.rf-why-v2-badge span,
.rf-why-v2-badge strong {
  display: block;
  text-align: left;
}


.rf-why-v2-badge span {
  margin-bottom: 3px;

  color: #e61d4f;

  font-size: 10px;
  font-weight: 800;

  text-transform: uppercase;
  letter-spacing: .08em;
}


.rf-why-v2-badge strong {
  color: #12452f;

  font-size: 17px;
}


/* LIST */

.rf-why-v2-list {
  display: flex;
  flex-direction: column;

  justify-content: center;

  border-top: 1px solid #dfe7e2;
}


.rf-why-v2-item {
  padding: 22px 6px;

  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 17px;

  align-items: center;

  border-bottom: 1px solid #dfe7e2;
}


.rf-why-v2-num {
  width: 44px;
  height: 44px;

  display: grid;
  place-items: center;

  border-radius: 14px;

  font-size: 12px;
  font-weight: 800;
}


.rf-why-v2-item.green .rf-why-v2-num {
  background: #e7f6ed;
  color: #078b4b;
}


.rf-why-v2-item.red .rf-why-v2-num {
  background: #fff0f4;
  color: #e61d4f;
}


.rf-why-v2-item.cyan .rf-why-v2-num {
  background: #e8f9fb;
  color: #0aa6b8;
}


.rf-why-v2-item strong {
  display: block;

  margin-bottom: 5px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 18px;

  text-align: left !important;
}


.rf-why-v2-item.red strong {
  color: #e61d4f;
}


.rf-why-v2-item.cyan strong {
  color: #079fb1;
}


.rf-why-v2-item p {
  margin: 0 !important;

  color: #65746c !important;

  font-size: 13px !important;
  line-height: 1.5 !important;

  text-align: left !important;
}


/* MOBILE */

@media (max-width: 800px) {

  .rf-why-v2 {
    padding: 27px 13px !important;
  }


  .rf-why-v2-copy {
    margin-bottom: 25px;
  }


  .rf-why-v2-copy h2 {
    font-size: 31px;
  }


  .rf-why-v2-main {
    grid-template-columns: 1fr;
    gap: 20px;
  }


  .rf-why-v2-visual,
  .rf-why-v2-visual img {
    min-height: 330px;
  }


  .rf-why-v2-item {
    padding: 17px 3px;
  }


  .rf-why-v2-item strong {
    font-size: 15px;
  }

}


/* =========================================
   WHY ROUH & RIHAN 2027
========================================= */

.rf-why-2027 {
  padding: 18px !important;
  overflow: hidden;
}

.rf-why-2027-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 54px;
  align-items: center;
}


/* IMAGE */

.rf-why-2027-visual {
  position: relative;

  min-height: 560px;

  overflow: hidden;

  border-radius: 22px;

  background: #e9f6ef;
}

.rf-why-2027-visual img {
  width: 100%;
  height: 100%;

  min-height: 560px;

  display: block;

  object-fit: cover;
}

.rf-why-2027-caption {
  position: absolute;

  left: 18px;
  right: 18px;
  bottom: 18px;

  padding: 16px 18px;

  border: 1px solid rgba(255,255,255,.45);
  border-radius: 16px;

  background: rgba(255,255,255,.91);

  backdrop-filter: blur(12px);

  text-align: left;
}

.rf-why-2027-caption span,
.rf-why-2027-caption strong {
  display: block;
  text-align: left;
}

.rf-why-2027-caption span {
  margin-bottom: 3px;

  color: #e61d4f;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.rf-why-2027-caption strong {
  color: #12452f;

  font-size: 17px;
}


/* CONTENT */

.rf-why-2027-content {
  padding-right: 34px;

  text-align: center;
}

.rf-why-2027-label {
  display: inline-block;

  margin-bottom: 11px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .1em;
  text-transform: uppercase;
}

.rf-why-2027-content h2 {
  max-width: 680px;

  margin: 0 auto 17px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: clamp(36px,4.3vw,54px);

  line-height: 1.03;

  letter-spacing: -.05em;

  text-align: center;
}

.rf-why-2027-content h2 strong {
  color: #e61d4f;
}

.rf-why-2027-intro {
  max-width: 620px;

  margin: 0 auto 30px !important;

  color: #50665b !important;

  font-size: 15px !important;

  line-height: 1.7 !important;

  text-align: center !important;
}


/* LIST */

.rf-why-2027-list {
  max-width: 680px;

  margin: 0 auto;

  border-top: 1px solid #dee7e1;
}

.rf-why-2027-item {
  position: relative;

  min-height: 93px;

  padding: 16px 52px 16px 0;

  display: grid;

  grid-template-columns: 48px 1fr;

  gap: 15px;

  align-items: center;

  border-bottom: 1px solid #dee7e1;

  text-align: left;
}

.rf-why-2027-item > div {
  text-align: left;
}

.rf-why-2027-item strong {
  display: block;

  margin-bottom: 5px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 16px;

  text-align: left !important;
}

.rf-why-2027-item:nth-child(2) strong {
  color: #e61d4f;
}

.rf-why-2027-item:nth-child(3) strong {
  color: #079fb1;
}

.rf-why-2027-item p {
  margin: 0 !important;

  color: #69776f !important;

  font-size: 12.5px !important;

  line-height: 1.5 !important;

  text-align: left !important;
}


/* ICONS */

.rf-why-2027-icon {
  width: 44px;
  height: 44px;

  display: grid;

  place-items: center;

  border-radius: 14px;
}

.rf-why-2027-icon.green {
  background: #e7f6ed;
  color: #078b4b;
}

.rf-why-2027-icon.red {
  background: #fff0f4;
  color: #e61d4f;
}

.rf-why-2027-icon.cyan {
  background: #e8f9fb;
  color: #08a2b5;
}

.rf-why-2027-icon svg {
  width: 22px;
  height: 22px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* NUMBER */

.rf-why-2027-number {
  position: absolute;

  right: 5px;

  color: #c4cec8;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .06em;
}


/* subtle interaction */

.rf-why-2027-item {
  transition:
    padding-left .18s ease,
    background-color .18s ease;
}

.rf-why-2027-item:hover {
  padding-left: 8px;

  background:
    linear-gradient(
      90deg,
      #f5faf7,
      transparent
    );
}


/* MOBILE */

@media (max-width: 850px) {

  .rf-why-2027 {
    padding: 10px !important;
  }

  .rf-why-2027-grid {
    grid-template-columns: 1fr;

    gap: 30px;
  }

  .rf-why-2027-visual,
  .rf-why-2027-visual img {
    min-height: 350px;
  }

  .rf-why-2027-content {
    padding: 0 8px 12px;
  }

  .rf-why-2027-content h2 {
    font-size: 32px;
  }

}


/* Small mobile */

@media (max-width: 480px) {

  .rf-why-2027-visual,
  .rf-why-2027-visual img {
    min-height: 290px;
  }

  .rf-why-2027-item {
    padding-right: 38px;

    grid-template-columns: 42px 1fr;

    gap: 11px;
  }

  .rf-why-2027-icon {
    width: 39px;
    height: 39px;

    border-radius: 12px;
  }

}


/* =========================================
   WHY - EDITORIAL 2027
========================================= */

.rf-why-next {
  position: relative;
  overflow: hidden;

  padding: 64px 42px 38px !important;

  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #f5faf7 100%
    ) !important;
}


.rf-why-next-head {
  position: relative;
  z-index: 2;

  max-width: 870px;
  margin: 0 auto 55px;

  text-align: center;
}


.rf-why-next-label {
  display: inline-block;

  margin-bottom: 12px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .12em;
  text-transform: uppercase;
}


.rf-why-next-head h2 {
  margin: 0;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: clamp(40px,5vw,68px);

  line-height: .98;

  letter-spacing: -.055em;

  text-align: center;
}


.rf-why-next-head h2 strong {
  color: #e61d4f;
}


.rf-why-next-head p {
  max-width: 650px;

  margin: 19px auto 0 !important;

  color: #53675d !important;

  font-size: 15px;

  line-height: 1.7;

  text-align: center !important;
}


/* Stage */

.rf-why-next-stage {
  position: relative;

  max-width: 1250px;

  margin: 0 auto;

  padding-top: 90px;
}


/* huge background word */

.rf-why-next-watermark {
  position: absolute;

  top: -38px;
  left: 50%;

  transform: translateX(-50%);

  color: rgba(7,139,75,.045);

  font-family:
    "Arial Black",
    "Trebuchet MS",
    sans-serif;

  font-size: clamp(140px,18vw,270px);

  font-weight: 900;

  line-height: .8;

  letter-spacing: -.09em;

  pointer-events: none;
  user-select: none;
}


/* rail */

.rf-why-next-rail {
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: repeat(4,1fr);

  border-top: 1px solid #d9e4dd;
  border-bottom: 1px solid #d9e4dd;
}


.rf-why-next-rail article {
  position: relative;

  min-height: 245px;

  padding: 32px 26px;

  text-align: center;
}


.rf-why-next-rail article:not(:last-child) {
  border-right: 1px solid #d9e4dd;
}


.rf-next-icon {
  width: 46px;
  height: 46px;

  margin: 0 auto 24px;

  display: grid;
  place-items: center;

  border-radius: 15px;
}


.rf-next-icon.green {
  background: #e7f6ed;
  color: #078b4b;
}


.rf-next-icon.red {
  background: #fff0f4;
  color: #e61d4f;
}


.rf-next-icon.cyan {
  background: #e8f9fb;
  color: #0aa6b8;
}


.rf-next-icon svg {
  width: 23px;
  height: 23px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


.rf-next-index {
  position: absolute;

  top: 19px;
  right: 20px;

  color: #a7b2ac;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .09em;
}


.rf-why-next-rail h3 {
  margin: 0 0 9px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 20px;

  text-align: center;
}


.rf-why-next-rail article:nth-child(2) h3 {
  color: #e61d4f;
}


.rf-why-next-rail article:nth-child(3) h3 {
  color: #079fb1;
}


.rf-why-next-rail p {
  max-width: 240px;

  margin: 0 auto !important;

  color: #68776f !important;

  font-size: 12.5px !important;

  line-height: 1.6 !important;

  text-align: center !important;
}


/* interaction */

.rf-why-next-rail article {
  transition:
    background-color .18s ease,
    transform .18s ease;
}


.rf-why-next-rail article:hover {
  background: rgba(255,255,255,.72);

  transform: translateY(-4px);
}


/* Tablet */

@media (max-width: 900px) {

  .rf-why-next {
    padding: 48px 20px 28px !important;
  }


  .rf-why-next-stage {
    padding-top: 55px;
  }


  .rf-why-next-rail {
    grid-template-columns: repeat(2,1fr);
  }


  .rf-why-next-rail article:nth-child(2) {
    border-right: 0;
  }


  .rf-why-next-rail article:nth-child(-n+2) {
    border-bottom: 1px solid #d9e4dd;
  }

}


/* Mobile */

@media (max-width: 560px) {

  .rf-why-next {
    padding: 39px 13px 18px !important;
  }


  .rf-why-next-head {
    margin-bottom: 30px;
  }


  .rf-why-next-head h2 {
    font-size: 38px;
  }


  .rf-why-next-stage {
    padding-top: 26px;
  }


  .rf-why-next-watermark {
    top: -10px;

    font-size: 125px;
  }


  .rf-why-next-rail {
    display: block;

    border-top: 0;
  }


  .rf-why-next-rail article,
  .rf-why-next-rail article:nth-child(2) {
    min-height: auto;

    padding: 20px 12px;

    border-right: 0;
    border-top: 1px solid #d9e4dd;
  }


  .rf-next-icon {
    margin-bottom: 13px;
  }


  .rf-next-index {
    top: 18px;
  }

}


/* === RWR REAL MAP START === */

/* section spacing */
.rf-feed-card:has(.rf-countries) {
  overflow: hidden;
}

.rf-feed-card:has(.rf-countries) .rf-section-head {
  margin-bottom: 18px !important;
}

/* real map stage */
.rf-countries {
  position: relative;
  width: min(100%, 1150px);
  min-height: 430px;
  margin: 26px auto 0 !important;
  padding: 0 !important;

  display: block !important;

  border: 0 !important;
  background: transparent !important;
}

/* real world map svg */
.rf-countries::before {
  content: "";

  position: absolute;
  inset: 0;

  background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 520'>\
<rect width='1200' height='520' fill='none'/>\
<g fill='%23dceee5'>\
<path d='M83 221l21-20 20-7 15-18 23 1 11 20 16 13 18 1 13-11 17 0 19 14 25 5 17 19 11 26-8 20-19 12-30 3-27-10-17-16-21-1-22 8-32 9-25-2-23-14-12-27 0-25z'/>\
<path d='M266 310l28-10 23 4 20 20 13 19 18 12 18 0 20-8 26-5 21 10 5 18-17 14-31 10-55 2-34 11-37 0-23-18-3-26z'/>\
<path d='M439 177l20-10 24 6 18 17 19 1 13-9 21-4 28 3 24 18 7 17-9 13-28 5-24-4-17 4-10 11-24 0-16-15-22-5-25-16-10-16z'/>\
<path d='M500 247l13-13 18 3 8 18-10 16-22 1-10-11z'/>\
<path d='M536 281l18-7 18 6 6 18-11 12-21 1-13-8z'/>\
<path d='M598 177l20-14 39-4 26 7 26 15 12 18 22 6 34 2 44 14 36 20 24 28-4 22-30 12-66 1-45-10-28 4-22 15-34 7-40-5-28-18-16-23 1-23 10-13-7-15-27-2-19-12z'/>\
<path d='M649 314l24-3 27 9 10 18-11 15-29 5-28-6-11-17z'/>\
<path d='M787 346l22-3 19 11 5 18-9 18-25 8-24-6-10-16 5-18z'/>\
<path d='M904 197l25-17 31-9 38 1 36 12 29 21 15 22-6 29-28 22-38 9-41 0-32-9-23-20-11-25 5-19z'/>\
<path d='M1013 326l23-10 22 1 17 13 5 16-8 17-19 10-24 1-19-11-6-18z'/>\
<path d='M1084 400l23-7 23 7 10 17-8 16-24 8-23-7-10-17z'/>\
</g>\
</svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% auto;

  opacity: 1;
  pointer-events: none;
}

/* pills */
.rf-countries > span,
.rf-countries > a {
  position: absolute;
  z-index: 2;

  margin: 0 !important;
  padding: 11px 16px !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 9px;

  border: 1px solid #d6e5dd !important;
  border-radius: 999px !important;

  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 10px 26px rgba(18,69,47,.08);

  color: #12452f !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  white-space: nowrap;
}

.rf-countries > span::before,
.rf-countries > a::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #18bcd0;
  box-shadow: 0 0 0 6px rgba(24,188,208,.14);
  flex: 0 0 10px;
}

/* desktop positions */
.rf-countries > :nth-child(1) { top: 40%; left: 10%; }  /* United States */
.rf-countries > :nth-child(2) { top: 27%; left: 40%; }  /* United Kingdom */
.rf-countries > :nth-child(3) { top: 34%; left: 47%; }  /* France */
.rf-countries > :nth-child(4) { top: 44%; left: 49%; }  /* Europe */
.rf-countries > :nth-child(5) { top: 28%; left: 77%; }  /* Canada */
.rf-countries > :nth-child(6) { top: 69%; left: 86%; }  /* Australia */


/* medium screens */
@media (max-width: 980px) {
  .rf-countries {
    min-height: 360px;
  }

  .rf-countries > span,
  .rf-countries > a {
    padding: 9px 13px !important;
    font-size: 13px !important;
  }

  .rf-countries > :nth-child(1) { top: 41%; left: 8%; }
  .rf-countries > :nth-child(2) { top: 27%; left: 37%; }
  .rf-countries > :nth-child(3) { top: 35%; left: 45%; }
  .rf-countries > :nth-child(4) { top: 45%; left: 48%; }
  .rf-countries > :nth-child(5) { top: 29%; left: 74%; }
  .rf-countries > :nth-child(6) { top: 70%; left: 82%; }
}


/* mobile - still real map, not chips */
@media (max-width: 700px) {
  .rf-countries {
    width: 100%;
    min-height: 310px;
    margin-top: 18px !important;
  }

  .rf-countries::before {
    background-size: 100% auto;
    background-position: center 52%;
  }

  .rf-countries > span,
  .rf-countries > a {
    padding: 7px 10px !important;
    gap: 7px;
    font-size: 11px !important;
    box-shadow: 0 6px 16px rgba(18,69,47,.07);
  }

  .rf-countries > span::before,
  .rf-countries > a::before {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    box-shadow: 0 0 0 4px rgba(24,188,208,.14);
  }

  .rf-countries > :nth-child(1) { top: 43%; left: 2%; }   /* United States */
  .rf-countries > :nth-child(2) { top: 26%; left: 31%; }  /* United Kingdom */
  .rf-countries > :nth-child(3) { top: 35%; left: 42%; }  /* France */
  .rf-countries > :nth-child(4) { top: 47%; left: 44%; }  /* Europe */
  .rf-countries > :nth-child(5) { top: 26%; left: 71%; }  /* Canada */
  .rf-countries > :nth-child(6) { top: 72%; left: 72%; }  /* Australia */
}

/* === RWR REAL MAP END === */


/* =========================================
   REAL MAP MOBILE FIX
========================================= */

@media (max-width: 700px) {

  .rf-countries {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    min-height: 320px !important;

    margin: 18px auto 0 !important;
    padding: 0 !important;

    overflow: visible !important;
  }

  /* Force world map to stay visible */
  .rf-countries::before {
    display: block !important;

    position: absolute !important;
    inset: 0 !important;

    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;

    opacity: 1 !important;
  }

  /* Country markers must float over the map */
  .rf-countries > span,
  .rf-countries > a {
    position: absolute !important;

    padding: 6px 8px !important;

    border-radius: 999px !important;

    font-size: 9.5px !important;
    line-height: 1 !important;

    white-space: nowrap !important;
  }

  .rf-countries > span::before,
  .rf-countries > a::before {
    width: 6px !important;
    height: 6px !important;
    flex: 0 0 6px !important;

    margin-right: 5px !important;
  }

  /* Mobile marker locations */

  .rf-countries > :nth-child(1) {
    top: 42% !important;
    left: 1% !important;
  }

  .rf-countries > :nth-child(2) {
    top: 25% !important;
    left: 29% !important;
  }

  .rf-countries > :nth-child(3) {
    top: 36% !important;
    left: 39% !important;
  }

  .rf-countries > :nth-child(4) {
    top: 48% !important;
    left: 43% !important;
  }

  .rf-countries > :nth-child(5) {
    top: 27% !important;
    left: 68% !important;
  }

  .rf-countries > :nth-child(6) {
    top: 70% !important;
    left: 69% !important;
  }

}


/* Extra-small phones */

@media (max-width: 390px) {

  .rf-countries {
    min-height: 280px !important;
  }

  .rf-countries > span,
  .rf-countries > a {
    padding: 5px 7px !important;
    font-size: 8.5px !important;
  }

}

/* === RWR MINDMAP START === */

.rf-why-mindmap-section {
  overflow: hidden;
}

.rf-section-head--mindmap {
  max-width: 780px;
  margin: 0 auto 26px !important;
  text-align: center !important;
}

.rf-section-head--mindmap h2 {
  margin-bottom: 12px !important;
}

.rf-section-head--mindmap p {
  max-width: 680px;
  margin: 0 auto !important;
  text-align: center !important;
}

.rf-mindmap {
  position: relative;
  max-width: 1120px;
  min-height: 620px;
  margin: 10px auto 0;
}

.rf-mindmap::before,
.rf-mindmap::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  pointer-events: none;
}

.rf-mindmap::before {
  width: 520px;
  height: 520px;
  border: 1px dashed #d9e7df;
}

.rf-mindmap::after {
  width: 360px;
  height: 360px;
  border: 1px dashed #e6efea;
}

.rf-mindmap-center {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 5;
  width: 290px;
  min-height: 290px;
  padding: 34px 28px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background:
    radial-gradient(circle at top, #19b9ce 0%, #11aac0 16%, #0a8d53 100%);
  color: #fff;
  box-shadow: 0 24px 50px rgba(7, 139, 75, .18);
}

.rf-mindmap-center__eyebrow {
  display: inline-block;
  margin-bottom: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.rf-mindmap-center h3 {
  margin: 0 0 10px !important;
  color: #fff !important;
  font-family: "Trebuchet MS","Segoe UI",sans-serif !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  text-align: center !important;
}

.rf-mindmap-center p {
  margin: 0 !important;
  color: rgba(255,255,255,.94) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  text-align: center !important;
}

.rf-mindmap-node {
  position: absolute;
  z-index: 6;
  width: 250px;
  min-height: 175px;
  padding: 22px 20px 20px;
  border: 1px solid #dde8e1;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(16, 56, 39, .07);
  text-align: center;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.rf-mindmap-node:hover {
  transform: translateY(-4px);
  border-color: #cfe0d6;
  box-shadow: 0 18px 38px rgba(16, 56, 39, .10);
}

.rf-mindmap-node::before {
  content: "";
  position: absolute;
  z-index: 1;
  height: 2px;
  background: linear-gradient(90deg, #d7e7df, #cde5dd);
  transform-origin: left center;
}

.rf-mindmap-node::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #18bcd0;
  box-shadow: 0 0 0 7px rgba(24,188,208,.12);
}

.rf-mindmap-icon {
  width: 54px;
  height: 54px;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  font-size: 22px;
  font-weight: 700;
}

.rf-mindmap-icon.green {
  background: #e7f6ed;
  color: #078b4b;
}

.rf-mindmap-icon.red {
  background: #fff0f4;
  color: #e61d4f;
}

.rf-mindmap-icon.cyan {
  background: #e8f9fb;
  color: #11a9bf;
}

.rf-mindmap-node h3 {
  margin: 0 0 8px !important;
  font-family: "Trebuchet MS","Segoe UI",sans-serif !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
  text-align: center !important;
}

.rf-mindmap-node p {
  margin: 0 !important;
  color: #66756d !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

.rf-mindmap .node-1 h3 { color: #078b4b !important; }
.rf-mindmap .node-2 h3 { color: #e61d4f !important; }
.rf-mindmap .node-3 h3 { color: #11a9bf !important; }
.rf-mindmap .node-4 h3 { color: #078b4b !important; }

.rf-mindmap .node-1 {
  top: 30px;
  left: 35px;
}
.rf-mindmap .node-1::before {
  width: 160px;
  right: -142px;
  top: 115px;
  transform: rotate(25deg);
}
.rf-mindmap .node-1::after {
  right: -8px;
  top: 106px;
}

.rf-mindmap .node-2 {
  top: 30px;
  right: 35px;
}
.rf-mindmap .node-2::before {
  width: 160px;
  left: -142px;
  top: 115px;
  transform: rotate(-25deg);
}
.rf-mindmap .node-2::after {
  left: -8px;
  top: 106px;
}

.rf-mindmap .node-3 {
  bottom: 30px;
  left: 35px;
}
.rf-mindmap .node-3::before {
  width: 160px;
  right: -142px;
  top: 52px;
  transform: rotate(-25deg);
}
.rf-mindmap .node-3::after {
  right: -8px;
  top: 47px;
}

.rf-mindmap .node-4 {
  bottom: 30px;
  right: 35px;
}
.rf-mindmap .node-4::before {
  width: 160px;
  left: -142px;
  top: 52px;
  transform: rotate(25deg);
}
.rf-mindmap .node-4::after {
  left: -8px;
  top: 47px;
}

/* tablet */
@media (max-width: 980px) {
  .rf-mindmap {
    min-height: 760px;
  }

  .rf-mindmap-center {
    width: 240px;
    min-height: 240px;
    padding: 24px 22px;
  }

  .rf-mindmap-center h3 {
    font-size: 22px !important;
  }

  .rf-mindmap-node {
    width: 220px;
    min-height: 165px;
    padding: 18px 16px;
  }

  .rf-mindmap .node-1,
  .rf-mindmap .node-3 {
    left: 10px;
  }

  .rf-mindmap .node-2,
  .rf-mindmap .node-4 {
    right: 10px;
  }
}

/* mobile */
@media (max-width: 700px) {
  .rf-mindmap {
    min-height: auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-top: 0;
  }

  .rf-mindmap::before,
  .rf-mindmap::after {
    display: none;
  }

  .rf-mindmap-center {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
    min-height: auto;
    padding: 26px 20px;
    border-radius: 28px;
    margin-bottom: 4px;
  }

  .rf-mindmap-center h3 {
    font-size: 24px !important;
  }

  .rf-mindmap-node,
  .rf-mindmap .node-1,
  .rf-mindmap .node-2,
  .rf-mindmap .node-3,
  .rf-mindmap .node-4 {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    min-height: auto;
  }

  .rf-mindmap-node::before,
  .rf-mindmap-node::after {
    display: none;
  }
}

/* === RWR MINDMAP END === */


/* =========================================
   SAME MIND MAP ON MOBILE
========================================= */

@media (max-width: 700px) {

  .rf-mindmap {
    position: relative !important;

    display: block !important;

    width: 100% !important;
    min-height: 470px !important;

    margin: 20px auto 0 !important;
    padding: 0 !important;
  }

  /* circles / orbit visible on mobile too */
  .rf-mindmap::before {
    display: block !important;

    width: 310px !important;
    height: 310px !important;

    top: 50% !important;
    left: 50% !important;

    transform: translate(-50%, -50%) !important;
  }

  .rf-mindmap::after {
    display: block !important;

    width: 220px !important;
    height: 220px !important;

    top: 50% !important;
    left: 50% !important;

    transform: translate(-50%, -50%) !important;
  }


  /* CENTER */

  .rf-mindmap-center {
    position: absolute !important;

    top: 50% !important;
    left: 50% !important;

    width: 145px !important;
    min-height: 145px !important;

    padding: 18px 13px !important;

    transform: translate(-50%, -50%) !important;

    border-radius: 50% !important;
  }

  .rf-mindmap-center__eyebrow {
    padding: 4px 7px !important;
    font-size: 7px !important;
  }

  .rf-mindmap-center h3 {
    font-size: 14px !important;
    line-height: 1.08 !important;
  }

  .rf-mindmap-center p {
    font-size: 8px !important;
    line-height: 1.35 !important;
  }


  /* ALL 4 NODES */

  .rf-mindmap-node,
  .rf-mindmap .node-1,
  .rf-mindmap .node-2,
  .rf-mindmap .node-3,
  .rf-mindmap .node-4 {
    position: absolute !important;

    width: 125px !important;
    min-height: 112px !important;

    padding: 12px 8px !important;

    border-radius: 15px !important;
  }


  /* TOP LEFT */
  .rf-mindmap .node-1 {
    top: 8px !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
  }

  /* TOP RIGHT */
  .rf-mindmap .node-2 {
    top: 8px !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
  }

  /* BOTTOM LEFT */
  .rf-mindmap .node-3 {
    bottom: 8px !important;
    left: 0 !important;
    right: auto !important;
    top: auto !important;
  }

  /* BOTTOM RIGHT */
  .rf-mindmap .node-4 {
    bottom: 8px !important;
    right: 0 !important;
    left: auto !important;
    top: auto !important;
  }


  /* ICONS */

  .rf-mindmap-icon {
    width: 34px !important;
    height: 34px !important;

    margin-bottom: 7px !important;

    border-radius: 10px !important;

    font-size: 14px !important;
  }


  /* TEXT */

  .rf-mindmap-node h3 {
    margin-bottom: 4px !important;

    font-size: 11px !important;
    line-height: 1.1 !important;
  }

  .rf-mindmap-node p {
    font-size: 8.5px !important;
    line-height: 1.3 !important;
  }


  /* CONNECTION LINES */

  .rf-mindmap-node::before,
  .rf-mindmap-node::after {
    display: block !important;
  }


  .rf-mindmap .node-1::before {
    width: 66px !important;
    right: -54px !important;
    top: 88px !important;

    transform: rotate(35deg) !important;
  }

  .rf-mindmap .node-1::after {
    right: -7px !important;
    top: 81px !important;
  }


  .rf-mindmap .node-2::before {
    width: 66px !important;
    left: -54px !important;
    top: 88px !important;

    transform: rotate(-35deg) !important;
  }

  .rf-mindmap .node-2::after {
    left: -7px !important;
    top: 81px !important;
  }


  .rf-mindmap .node-3::before {
    width: 66px !important;
    right: -54px !important;
    top: 20px !important;

    transform: rotate(-35deg) !important;
  }

  .rf-mindmap .node-3::after {
    right: -7px !important;
    top: 14px !important;
  }


  .rf-mindmap .node-4::before {
    width: 66px !important;
    left: -54px !important;
    top: 20px !important;

    transform: rotate(35deg) !important;
  }

  .rf-mindmap .node-4::after {
    left: -7px !important;
    top: 14px !important;
  }

}


/* very small phones */
@media (max-width: 380px) {

  .rf-mindmap {
    min-height: 440px !important;
  }

  .rf-mindmap-node,
  .rf-mindmap .node-1,
  .rf-mindmap .node-2,
  .rf-mindmap .node-3,
  .rf-mindmap .node-4 {
    width: 112px !important;
  }

  .rf-mindmap-center {
    width: 135px !important;
    min-height: 135px !important;
  }

}

/* =========================================
   COMPACT MIND MAP MOBILE FIX
========================================= */

@media (max-width: 700px) {

  .rf-mindmap {
    position: relative !important;

    width: min(100%, 390px) !important;
    height: auto !important;
    min-height: 0 !important;

    aspect-ratio: 1 / 1 !important;

    margin: 18px auto 0 !important;
    padding: 0 !important;
  }


  /* orbit */
  .rf-mindmap::before {
    width: 72% !important;
    height: 72% !important;
  }

  .rf-mindmap::after {
    width: 52% !important;
    height: 52% !important;
  }


  /* center */
  .rf-mindmap-center {
    top: 50% !important;
    left: 50% !important;

    width: 35% !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;

    padding: 12px !important;

    transform: translate(-50%, -50%) !important;
  }

  .rf-mindmap-center__eyebrow {
    margin-bottom: 4px !important;
    padding: 3px 6px !important;
    font-size: 6.5px !important;
  }

  .rf-mindmap-center h3 {
    margin-bottom: 4px !important;

    font-size: 12px !important;
    line-height: 1.05 !important;
  }

  .rf-mindmap-center p {
    font-size: 7px !important;
    line-height: 1.25 !important;
  }


  /* nodes */
  .rf-mindmap-node,
  .rf-mindmap .node-1,
  .rf-mindmap .node-2,
  .rf-mindmap .node-3,
  .rf-mindmap .node-4 {
    width: 31% !important;
    height: 27% !important;
    min-height: 0 !important;

    padding: 9px 6px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    border-radius: 14px !important;
  }


  .rf-mindmap .node-1 {
    top: 2% !important;
    left: 1% !important;
  }

  .rf-mindmap .node-2 {
    top: 2% !important;
    right: 1% !important;
  }

  .rf-mindmap .node-3 {
    bottom: 2% !important;
    left: 1% !important;
  }

  .rf-mindmap .node-4 {
    bottom: 2% !important;
    right: 1% !important;
  }


  /* icons */
  .rf-mindmap-icon {
    width: 29px !important;
    height: 29px !important;

    margin: 0 auto 5px !important;

    border-radius: 9px !important;

    font-size: 12px !important;
  }


  /* node typography */
  .rf-mindmap-node h3 {
    margin: 0 0 3px !important;

    font-size: 9.5px !important;
    line-height: 1.05 !important;
  }

  .rf-mindmap-node p {
    margin: 0 !important;

    font-size: 7.5px !important;
    line-height: 1.2 !important;
  }


  /* cleaner connection lines */
  .rf-mindmap .node-1::before,
  .rf-mindmap .node-2::before,
  .rf-mindmap .node-3::before,
  .rf-mindmap .node-4::before {
    width: 46px !important;
  }

  .rf-mindmap .node-1::before {
    right: -38px !important;
    top: 72% !important;
  }

  .rf-mindmap .node-2::before {
    left: -38px !important;
    top: 72% !important;
  }

  .rf-mindmap .node-3::before {
    right: -38px !important;
    top: 24% !important;
  }

  .rf-mindmap .node-4::before {
    left: -38px !important;
    top: 24% !important;
  }

}


/* Very small phones */
@media (max-width: 370px) {

  .rf-mindmap {
    width: 100% !important;
  }

  .rf-mindmap-center h3 {
    font-size: 11px !important;
  }

  .rf-mindmap-node h3 {
    font-size: 9px !important;
  }

}

/* Website social icon */
.rf-social-btn.website {
  color: #078b4b;
}

.rf-social-btn.website svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Make all social icons feel clickable */
.rf-social-btn {
  text-decoration: none !important;
  cursor: pointer;
  transition: transform .15s ease, background-color .15s ease;
}

.rf-social-btn:hover {
  transform: translateY(-2px);
  background: #ffffff;
}


/* =========================================
   ORIGINAL SOCIAL MEDIA COLORS
========================================= */

/* Website */
.rf-social-btn.website {
  color: #078b4b !important;
}

/* Facebook */
.rf-social-btn.facebook {
  color: #1877F2 !important;
}

/* WhatsApp */
.rf-social-btn.whatsapp {
  color: #25D366 !important;
}

/* Instagram */
.rf-social-btn.instagram {
  color: #E1306C !important;
}


/* Website icon */
.rf-social-btn.website svg {
  fill: none !important;
  stroke: #078b4b !important;
}

/* Facebook icon */
.rf-social-btn.facebook svg {
  fill: #1877F2 !important;
  stroke: none !important;
}

/* WhatsApp icon */
.rf-social-btn.whatsapp svg {
  fill: none !important;
  stroke: #25D366 !important;
}

/* Instagram icon */
.rf-social-btn.instagram svg {
  fill: none !important;
  stroke: #E1306C !important;
}

.rf-social-btn.instagram .dot {
  fill: #E1306C !important;
  stroke: none !important;
}


/* Keep circles clean and white */
.rf-social-btn {
  background: #ffffff !important;
  border: 0 !important;
}

/* Hover keeps original identity color */
.rf-social-btn:hover {
  background: #f7f9f8 !important;
  transform: translateY(-2px);
}


/* === RWR ABOUT 2027 START === */

.rwa-about {
  width: min(calc(100% - 48px), 1440px);
  margin: 0 auto 70px;

  color: #12452f;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  text-align: center;
}

.rwa-about *,
.rwa-about h1,
.rwa-about h2,
.rwa-about h3,
.rwa-about p {
  box-sizing: border-box;
  text-align: center;
}


/* LABEL */

.rwa-label {
  display: inline-block;

  margin-bottom: 11px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .11em;
  text-transform: uppercase;
}


/* TYPOGRAPHY */

.rwa-about h1,
.rwa-about h2,
.rwa-about h3 {
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;
}

.rwa-about h1 {
  max-width: 1050px;

  margin: 0 auto 20px;

  color: #12452f;

  font-size: clamp(42px, 6vw, 72px);
  font-weight: 700;

  line-height: .99;
  letter-spacing: -.055em;
}

.rwa-about h1 strong {
  color: #e61d4f;
}

.rwa-about h2 {
  color: #12452f;

  font-size: clamp(31px, 4vw, 48px);
  line-height: 1.06;

  letter-spacing: -.04em;
}

.rwa-about h3 {
  color: #12452f;
}

.rwa-about p {
  color: #52675c;

  line-height: 1.72;
}


/* HERO */

.rwa-hero {
  margin-bottom: 16px;
  padding: 62px 42px 20px;

  overflow: hidden;

  border: 1px solid #dde7e1;
  border-radius: 22px;

  background:
    radial-gradient(circle at 12% 20%, rgba(24,188,208,.08), transparent 30%),
    radial-gradient(circle at 90% 20%, rgba(230,29,79,.07), transparent 28%),
    #ffffff;
}

.rwa-hero > p {
  max-width: 760px;

  margin: 0 auto 34px;

  font-size: 17px;
}

.rwa-hero-media {
  position: relative;

  width: min(100%, 1180px);
  height: clamp(330px, 40vw, 560px);

  margin: 0 auto;

  overflow: hidden;

  border-radius: 20px 20px 6px 6px;

  background:
    linear-gradient(135deg, #e7f6ed, #f8fbf9);
}

.rwa-hero-media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}


/* Missing images still look intentional */

.rwa-hero-media.is-missing::after,
.rwa-scene-media.is-missing::after {
  content: "Rouh & Rihan";

  position: absolute;
  inset: 0;

  display: grid;
  place-items: center;

  color: rgba(7,139,75,.18);

  font-family:
    "Trebuchet MS",
    sans-serif;

  font-size: clamp(26px,5vw,60px);
  font-weight: 700;
}


/* INTRO */

.rwa-story-intro {
  margin-bottom: 16px;

  padding: 64px clamp(24px, 6vw, 90px);

  border: 1px solid #dde7e1;
  border-radius: 22px;

  background: #f7faf8;
}

.rwa-story-intro h2 {
  margin: 0 auto 20px;
}

.rwa-big-copy {
  max-width: 900px;

  margin: 0 auto 22px !important;

  color: #078b4b !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: clamp(22px,3vw,32px) !important;

  line-height: 1.35 !important;
}

.rwa-story-intro > p:not(.rwa-big-copy) {
  max-width: 800px;
  margin: 0 auto 15px;
}

.rwa-story-intro strong {
  color: #e61d4f;
}


/* STORY SCENES */

.rwa-scene {
  margin-bottom: 16px;
  padding: 18px;

  display: grid;
  grid-template-columns: .95fr 1.05fr;

  gap: 50px;
  align-items: center;

  border: 1px solid #dde7e1;
  border-radius: 22px;

  background: #ffffff;
}

.rwa-scene-reverse .rwa-scene-media {
  order: 2;
}

.rwa-scene-reverse .rwa-scene-copy {
  order: 1;
}

.rwa-scene-media {
  position: relative;

  min-height: 480px;

  overflow: hidden;

  border-radius: 18px;

  background:
    linear-gradient(135deg, #e7f6ed, #f9fbfa);
}

.rwa-scene-media img {
  width: 100%;
  height: 100%;
  min-height: 480px;

  display: block;

  object-fit: cover;
}

.rwa-scene-copy {
  padding: 35px 34px;
}

.rwa-number {
  width: 45px;
  height: 45px;

  margin: 0 auto 17px;

  display: grid;
  place-items: center;

  border-radius: 14px;

  background: #e7f6ed;

  color: #078b4b;

  font-size: 12px;
  font-weight: 800;
}

.rwa-number.red {
  background: #fff0f4;
  color: #e61d4f;
}

.rwa-number.cyan {
  background: #e8f9fb;
  color: #0aa6b8;
}

.rwa-scene-copy h2 {
  max-width: 620px;

  margin: 0 auto 18px;
}

.rwa-scene-copy p {
  max-width: 610px;

  margin: 0 auto 13px;

  font-size: 15px;
}


/* BELIEFS */

.rwa-beliefs,
.rwa-programs {
  margin-bottom: 16px;

  padding: 58px clamp(20px,4vw,60px);

  border: 1px solid #dde7e1;
  border-radius: 22px;

  background: #fff;
}

.rwa-section-head {
  max-width: 800px;

  margin: 0 auto 35px;
}

.rwa-section-head h2 {
  margin: 0;
}

.rwa-section-head p {
  max-width: 680px;

  margin: 15px auto 0;
}

.rwa-belief-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);

  gap: 12px;
}

.rwa-belief-grid article {
  padding: 28px 21px;

  border: 1px solid #e1e9e4;
  border-radius: 18px;

  background: #f8faf9;
}

.rwa-belief-icon {
  width: 48px;
  height: 48px;

  margin: 0 auto 17px;

  display: grid;
  place-items: center;

  border-radius: 15px;

  font-size: 12px;
  font-weight: 800;
}

.rwa-belief-icon.green {
  color: #078b4b;
  background: #e7f6ed;
}

.rwa-belief-icon.red {
  color: #e61d4f;
  background: #fff0f4;
}

.rwa-belief-icon.cyan {
  color: #0aa6b8;
  background: #e8f9fb;
}

.rwa-belief-grid h3 {
  margin: 0 0 10px;

  font-size: 20px;
}

.rwa-belief-grid p {
  margin: 0;

  font-size: 13px;
}


/* PROGRAM LINKS */

.rwa-program-links {
  display: grid;
  grid-template-columns: repeat(3,1fr);

  gap: 12px;
}

.rwa-program-links a {
  min-height: 200px;

  padding: 28px 20px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border: 1px solid #dfe8e2;
  border-radius: 18px;

  background: #f8faf9;

  text-decoration: none;

  transition:
    transform .16s ease,
    border-color .16s ease;
}

.rwa-program-links a:hover {
  transform: translateY(-3px);
  border-color: #bfd8c8;
}

.rwa-program-links span,
.rwa-program-links strong,
.rwa-program-links em {
  display: block;
}

.rwa-program-links span {
  margin-bottom: 8px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.rwa-program-links strong {
  color: #12452f;

  font-size: 17px;
}

.rwa-program-links em {
  margin-top: 20px;

  color: #078b4b;

  font-size: 12px;
  font-weight: 700;

  font-style: normal;
}


/* FINAL */

.rwa-final {
  padding: 65px 30px;

  border-radius: 22px;

  background:
    radial-gradient(circle at 85% 10%, rgba(24,188,208,.18), transparent 27%),
    #075f38;

  color: #fff;
}

.rwa-final .rwa-label {
  color: #ff91ad;
}

.rwa-final h2 {
  max-width: 900px;

  margin: 0 auto 17px;

  color: #fff;
}

.rwa-final h2 strong {
  color: #ff86a5;
}

.rwa-final > p {
  max-width: 650px;

  margin: 0 auto 24px;

  color: rgba(255,255,255,.8);
}

.rwa-actions {
  display: flex;

  justify-content: center;
  align-items: center;

  gap: 9px;

  flex-wrap: wrap;
}

.rwa-btn {
  min-height: 43px;

  padding: 0 17px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  font-size: 13px;
  font-weight: 700;

  text-decoration: none;
}

.rwa-btn-primary {
  background: #e61d4f;
  color: #fff !important;
}

.rwa-btn-secondary {
  background: #fff;
  color: #075f38 !important;
}


/* TABLET */

@media (max-width: 900px) {

  .rwa-about {
    width: calc(100% - 24px);
  }

  .rwa-scene {
    grid-template-columns: 1fr;

    gap: 15px;
  }

  .rwa-scene-reverse .rwa-scene-media,
  .rwa-scene-reverse .rwa-scene-copy {
    order: initial;
  }

  .rwa-scene-media,
  .rwa-scene-media img {
    min-height: 390px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .rwa-about {
    width: calc(100% - 16px);

    margin-bottom: 45px;
  }

  .rwa-hero {
    padding: 39px 14px 10px;
  }

  .rwa-about h1 {
    font-size: 38px;

    line-height: 1.01;
  }

  .rwa-hero > p {
    font-size: 14px;
  }

  .rwa-hero-media {
    height: 270px;

    border-radius: 17px;
  }

  .rwa-story-intro {
    padding: 40px 16px;
  }

  .rwa-story-intro h2,
  .rwa-scene-copy h2,
  .rwa-section-head h2,
  .rwa-final h2 {
    font-size: 30px;
  }

  .rwa-big-copy {
    font-size: 21px !important;
  }

  .rwa-scene {
    padding: 9px;

    gap: 0;
  }

  .rwa-scene-media,
  .rwa-scene-media img {
    min-height: 300px;
  }

  .rwa-scene-copy {
    padding: 30px 12px;
  }

  .rwa-scene-copy p {
    font-size: 14px;
  }

  .rwa-beliefs,
  .rwa-programs {
    padding: 40px 13px;
  }

  .rwa-belief-grid,
  .rwa-program-links {
    grid-template-columns: 1fr;
  }

  .rwa-program-links a {
    min-height: 150px;
  }

  .rwa-final {
    padding: 45px 16px;
  }

}

/* === RWR ABOUT 2027 END === */

/* === RWR PROGRAM LIBRARY START === */

.rwp-programs {
  width: min(calc(100% - 48px), 1440px);
  margin: 0 auto 70px;
  text-align: center;
  color: #12452f;
}

.rwp-programs *,
.rwp-programs p,
.rwp-programs h1,
.rwp-programs h2,
.rwp-programs h3 {
  box-sizing: border-box;
  text-align: center;
}


/* HERO */

.rwp-programs-hero {
  padding: 62px 25px 54px;
  margin-bottom: 16px;

  border: 1px solid #dce7e0;
  border-radius: 22px;

  background:
    radial-gradient(circle at 15% 20%, rgba(24,188,208,.08), transparent 27%),
    radial-gradient(circle at 87% 25%, rgba(230,29,79,.07), transparent 27%),
    #fff;
}

.rwp-eyebrow {
  display: inline-block;
  margin-bottom: 12px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.rwp-programs-hero h1 {
  max-width: 950px;
  margin: 0 auto 18px;

  color: #12452f;

  font-family: "Trebuchet MS","Segoe UI",sans-serif;

  font-size: clamp(42px,5.5vw,68px);
  line-height: 1;
  letter-spacing: -.055em;
}

.rwp-programs-hero h1 strong {
  color: #e61d4f;
}

.rwp-programs-hero > p {
  max-width: 760px;
  margin: 0 auto 22px;

  color: #53685d;
  font-size: 16px;
  line-height: 1.7;
}

.rwp-hero-tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7px;
}

.rwp-hero-tags span {
  padding: 7px 12px;

  border: 1px solid #dce6e0;
  border-radius: 999px;

  background: #f7faf8;

  color: #12452f;

  font-size: 11px;
  font-weight: 700;
}


/* ==============================
   LEVEL FOLDERS
============================== */

.rwp-folder {
  position: relative;

  margin: 0 0 16px;

  overflow: visible;
}

.rwp-folder summary {
  position: relative;
  z-index: 3;

  width: min(520px, 100%);

  margin: 0 0 -1px 22px;
  padding: 14px 18px;

  display: flex;
  align-items: center;
  gap: 13px;

  border: 1px solid #dce7e0;
  border-bottom: 0;
  border-radius: 18px 18px 0 0;

  background: #fff;

  cursor: pointer;
  list-style: none;

  text-align: left !important;
}

.rwp-folder summary::-webkit-details-marker {
  display: none;
}

.rwp-folder-icon {
  width: 46px;
  height: 46px;

  flex: 0 0 46px;

  display: grid;
  place-items: center;

  border-radius: 14px;
}

.foundation .rwp-folder-icon {
  background: #e7f6ed;
  color: #078b4b;
}

.developing .rwp-folder-icon {
  background: #fff0f4;
  color: #e61d4f;
}

.advanced .rwp-folder-icon {
  background: #e8f9fb;
  color: #0aa6b8;
}

.rwp-folder-icon svg {
  width: 24px;
  height: 24px;

  fill: none;
  stroke: currentColor;

  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rwp-folder-copy {
  flex: 1;
  min-width: 0;

  text-align: left !important;
}

.rwp-folder-copy > * {
  text-align: left !important;
}

.rwp-level {
  display: block;

  margin-bottom: 2px;

  color: #e61d4f;

  font-size: 9px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.rwp-folder-copy strong {
  display: block;

  color: #12452f;

  font-family: "Trebuchet MS","Segoe UI",sans-serif;

  font-size: 19px;
}

.rwp-folder-copy small {
  display: block;

  margin-top: 2px;

  color: #718078;

  font-size: 11px;
}

.rwp-folder-toggle {
  width: 32px;
  height: 32px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: #f4f7f5;

  color: #12452f;

  font-size: 20px;
  font-weight: 400;
}

.rwp-folder[open] .rwp-folder-toggle {
  transform: rotate(45deg);
}


/* actual folder content */

.rwp-folder-content {
  padding: 45px 28px 30px;

  border: 1px solid #dce7e0;
  border-radius: 0 22px 22px 22px;

  background: #fff;

  box-shadow:
    0 8px 28px rgba(18,69,47,.045);
}


/* LEVEL INTRO */

.rwp-level-intro {
  max-width: 760px;
  margin: 0 auto 30px;
}

.rwp-level-intro > span {
  display: inline-block;
  margin-bottom: 8px;

  color: #078b4b;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.developing .rwp-level-intro > span {
  color: #e61d4f;
}

.advanced .rwp-level-intro > span {
  color: #0aa6b8;
}

.rwp-level-intro h2 {
  margin: 0 auto 11px;

  color: #12452f;

  font-family: "Trebuchet MS","Segoe UI",sans-serif;

  font-size: clamp(28px,3vw,39px);
  line-height: 1.08;
}

.rwp-level-intro p {
  max-width: 650px;
  margin: 0 auto;

  color: #617168;

  font-size: 14px;
  line-height: 1.65;
}


/* ==============================
   PROGRAM CARDS
============================== */

.rwp-program-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 13px;
}

.rwp-program-card {
  position: relative;

  padding: 25px 20px 21px;

  display: flex;
  flex-direction: column;

  border: 1px solid #e0e8e3;
  border-radius: 18px;

  background: #f9fbfa;

  transition:
    transform .16s ease,
    border-color .16s ease,
    box-shadow .16s ease;
}

.rwp-program-card:hover {
  transform: translateY(-3px);

  border-color: #c8dcd0;

  box-shadow:
    0 13px 28px rgba(18,69,47,.065);
}

.rwp-program-top {
  margin-bottom: 15px;

  display: flex;
  align-items: center;
  justify-content: center;

  gap: 8px;
}

.rwp-subject-icon {
  width: 40px;
  height: 40px;

  display: grid;
  place-items: center;

  border-radius: 13px;
}

.rwp-program-card.quran .rwp-subject-icon {
  background: #e7f6ed;
  color: #078b4b;
}

.rwp-program-card.arabic .rwp-subject-icon {
  background: #fff0f4;
  color: #e61d4f;
}

.rwp-program-card.islamic .rwp-subject-icon {
  background: #e8f9fb;
  color: #0aa6b8;
}

.rwp-subject-icon svg {
  width: 21px;
  height: 21px;

  fill: none;
  stroke: currentColor;

  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.rwp-subject-name {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.rwp-program-card.quran .rwp-subject-name {
  color: #078b4b;
}

.rwp-program-card.arabic .rwp-subject-name {
  color: #e61d4f;
}

.rwp-program-card.islamic .rwp-subject-name {
  color: #0a9bad;
}

.rwp-program-card h3 {
  margin: 0 0 10px;

  color: #12452f;

  font-family: "Trebuchet MS","Segoe UI",sans-serif;

  font-size: 21px;
  line-height: 1.15;
}

.rwp-program-card > p {
  flex: 1;

  margin: 0 auto 17px;

  max-width: 330px;

  color: #65746c;

  font-size: 13px;
  line-height: 1.6;
}


/* tags */

.rwp-program-tags {
  min-height: 62px;

  margin-bottom: 17px;

  display: flex;
  justify-content: center;
  align-content: flex-start;
  flex-wrap: wrap;

  gap: 6px;
}

.rwp-program-tags span {
  padding: 6px 9px;

  border-radius: 999px;

  background: #fff;
  border: 1px solid #e0e8e3;

  color: #5d7065;

  font-size: 10px;
  font-weight: 650;
}


/* buttons */

.rwp-program-actions {
  display: flex;
  align-items: center;
  justify-content: center;

  gap: 7px;
  flex-wrap: wrap;
}

.rwp-btn {
  min-height: 38px;

  padding: 0 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  text-decoration: none;

  font-size: 11.5px;
  font-weight: 750;
}

.rwp-btn-primary {
  background: #e61d4f;
  color: #fff !important;
}

.rwp-btn-light {
  border: 1px solid #d5e2da;

  background: #fff;

  color: #078b4b !important;
}


/* ==============================
   HELP CTA
============================== */

.rwp-help {
  margin-top: 16px;

  padding: 52px 22px;

  border-radius: 22px;

  background:
    radial-gradient(circle at 85% 10%, rgba(24,188,208,.18), transparent 27%),
    #075f38;

  color: #fff;
}

.rwp-help > span {
  display: block;

  margin-bottom: 8px;

  color: #ff91ad;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.rwp-help h2 {
  margin: 0 auto 12px;

  color: #fff;

  font-family: "Trebuchet MS","Segoe UI",sans-serif;

  font-size: clamp(29px,4vw,43px);
}

.rwp-help p {
  max-width: 650px;

  margin: 0 auto 20px;

  color: rgba(255,255,255,.78);

  font-size: 14px;
}

.rwp-help > a {
  min-height: 42px;

  padding: 0 17px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e61d4f;

  color: #fff !important;

  text-decoration: none;

  font-size: 12px;
  font-weight: 750;
}


/* INTERNAL LINKS */

.rwp-internal-links {
  margin-top: 17px;

  display: flex;
  justify-content: center;
  flex-wrap: wrap;

  gap: 7px;
}

.rwp-internal-links a {
  padding: 7px 11px;

  border: 1px solid #dce6e0;
  border-radius: 999px;

  background: #fff;

  color: #12452f !important;

  font-size: 10.5px;
  font-weight: 650;

  text-decoration: none;
}


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

@media (max-width: 950px) {

  .rwp-program-grid {
    grid-template-columns: 1fr;
  }

  .rwp-program-card {
    max-width: 650px;
    width: 100%;
    margin: 0 auto;
  }

}


/* ==============================
   MOBILE
============================== */

@media (max-width: 700px) {

  .rwp-programs {
    width: calc(100% - 16px);

    margin-bottom: 45px;
  }

  .rwp-programs-hero {
    padding: 39px 14px;
  }

  .rwp-programs-hero h1 {
    font-size: 38px;
  }

  .rwp-programs-hero > p {
    font-size: 14px;
  }


  /* folder tab */

  .rwp-folder summary {
    width: calc(100% - 18px);

    margin-left: 9px;

    padding: 12px;

    gap: 9px;
  }

  .rwp-folder-icon {
    width: 39px;
    height: 39px;
    flex-basis: 39px;

    border-radius: 12px;
  }

  .rwp-folder-copy strong {
    font-size: 16px;
  }

  .rwp-folder-copy small {
    font-size: 9.5px;
  }

  .rwp-folder-toggle {
    width: 28px;
    height: 28px;

    font-size: 18px;
  }


  .rwp-folder-content {
    padding: 32px 10px 12px;

    border-radius: 0 17px 17px 17px;
  }


  .rwp-level-intro {
    margin-bottom: 22px;
    padding: 0 8px;
  }

  .rwp-level-intro h2 {
    font-size: 28px;
  }

  .rwp-level-intro p {
    font-size: 12.5px;
  }


  .rwp-program-card {
    padding: 21px 13px;

    border-radius: 15px;
  }

  .rwp-program-card h3 {
    font-size: 19px;
  }

  .rwp-program-card > p {
    font-size: 12.5px;
  }

  .rwp-program-tags {
    min-height: auto;
  }

}

/* === RWR PROGRAM LIBRARY END === */


/* === RWR LEVEL IMAGES START === */

.rwp-level-visual {
  position: relative;

  width: min(100%, 1220px);
  height: clamp(260px, 30vw, 420px);

  margin: 0 auto 28px;

  overflow: hidden;

  border-radius: 22px;

  background:
    linear-gradient(
      135deg,
      #e7f6ed,
      #f7faf8
    );
}

.rwp-level-visual img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}

.rwp-level-visual-overlay {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      to top,
      rgba(10,43,28,.72) 0%,
      rgba(10,43,28,.15) 55%,
      transparent 78%
    );

  pointer-events: none;
}

.rwp-level-visual-copy {
  position: absolute;

  left: 26px;
  right: 26px;
  bottom: 24px;

  z-index: 2;

  text-align: center !important;
}

.rwp-level-visual-copy span,
.rwp-level-visual-copy strong {
  display: block;

  text-align: center !important;
}

.rwp-level-visual-copy span {
  margin-bottom: 5px;

  color: #ffffff;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .1em;
  text-transform: uppercase;
}

.rwp-level-visual-copy strong {
  color: #ffffff;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: clamp(22px,3vw,34px);

  line-height: 1.1;
}


/* If image hasn't been uploaded yet */

.rwp-level-visual.is-missing {
  min-height: 300px;

  display: grid;
  place-items: center;
}

.rwp-level-visual.is-missing::before {
  content: "Image coming soon";

  color: #8a9b91;

  font-size: 13px;
  font-weight: 700;
}

.rwp-level-visual.is-missing .rwp-level-visual-overlay,
.rwp-level-visual.is-missing .rwp-level-visual-copy {
  display: none;
}


/* Different subtle identity treatment */

.foundation-visual {
  border: 1px solid #cfe6d8;
}

.developing-visual {
  border: 1px solid #f1cfda;
}

.advanced-visual {
  border: 1px solid #ccecf0;
}


/* MOBILE */

@media (max-width: 700px) {

  .rwp-level-visual {
    width: 100%;

    height: 230px;

    margin-bottom: 18px;

    border-radius: 16px;
  }

  .rwp-level-visual-copy {
    left: 14px;
    right: 14px;
    bottom: 15px;
  }

  .rwp-level-visual-copy strong {
    font-size: 22px;
  }

}

/* === RWR LEVEL IMAGES END === */


/* === LEVEL COVER IMAGES === */

.rwr-level-cover{
  position:relative;
  width:100%;
  max-width:1200px;
  height:360px;
  margin:0 auto 28px;
  overflow:hidden;
  border-radius:22px;
  background:#eef5f1;
}

.rwr-level-cover img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.rwr-level-cover-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(
    0deg,
    rgba(7,55,34,.72) 0%,
    rgba(7,55,34,.18) 52%,
    rgba(7,55,34,0) 78%
  );
}

.rwr-level-cover-text{
  position:absolute;
  z-index:2;
  left:25px;
  right:25px;
  bottom:24px;
  text-align:center;
}

.rwr-level-cover-text span{
  display:block;
  margin-bottom:5px;
  color:#fff;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.rwr-level-cover-text strong{
  display:block;
  color:#fff;
  font-family:"Trebuchet MS","Segoe UI",sans-serif;
  font-size:30px;
  line-height:1.1;
  text-align:center;
}

@media(max-width:700px){

  .rwr-level-cover{
    height:220px;
    margin-bottom:18px;
    border-radius:16px;
  }

  .rwr-level-cover-text{
    left:12px;
    right:12px;
    bottom:15px;
  }

  .rwr-level-cover-text strong{
    font-size:21px;
  }

}

/* === RWR FAQ KNOWLEDGE HUB START === */

.rfaq-hub,
.rfaq-topic-page {
  width:min(calc(100% - 48px),1440px);
  margin:0 auto 70px;
  color:#12452f;
  text-align:center;
}

.rfaq-hub *,
.rfaq-topic-page *,
.rfaq-hub p,
.rfaq-topic-page p,
.rfaq-hub h1,
.rfaq-hub h2,
.rfaq-hub h3,
.rfaq-topic-page h1,
.rfaq-topic-page h2,
.rfaq-topic-page h3 {
  box-sizing:border-box;
  text-align:center;
}

.rfaq-hub h1,
.rfaq-hub h2,
.rfaq-hub h3,
.rfaq-topic-page h1,
.rfaq-topic-page h2,
.rfaq-topic-page h3 {
  font-family:"Trebuchet MS","Segoe UI",sans-serif;
}


/* HERO */

.rfaq-hero,
.rfaq-topic-hero {
  padding:68px 28px 58px;
  margin-bottom:16px;

  border:1px solid #dce7e0;
  border-radius:24px;

  background:
    radial-gradient(circle at 12% 18%,rgba(24,188,208,.10),transparent 28%),
    radial-gradient(circle at 89% 18%,rgba(230,29,79,.08),transparent 27%),
    #fff;
}

.rfaq-kicker {
  display:inline-block;
  margin-bottom:12px;

  color:#e61d4f;

  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.rfaq-hero h1,
.rfaq-topic-hero h1 {
  max-width:980px;
  margin:0 auto 18px;

  color:#12452f;

  font-size:clamp(44px,5.5vw,72px);
  line-height:.99;
  letter-spacing:-.055em;
}

.rfaq-hero h1 strong {
  color:#e61d4f;
}

.rfaq-hero > p,
.rfaq-topic-hero > p {
  max-width:760px;
  margin:0 auto 28px;

  color:#5b6e64;

  font-size:16px;
  line-height:1.7;
}


/* GLOBAL SEARCH */

.rfaq-global-search,
.rfaq-topic-search {
  width:min(100%,850px);
  min-height:66px;

  margin:0 auto;

  padding:8px 13px 8px 18px;

  display:flex;
  align-items:center;
  gap:10px;

  border:1px solid #cee0d5;
  border-radius:20px;

  background:#fff;

  box-shadow:0 16px 40px rgba(18,69,47,.08);
}

.rfaq-search-icon,
.rfaq-topic-search > span {
  color:#078b4b;
  font-size:25px;
}

.rfaq-global-search input,
.rfaq-topic-search input {
  flex:1;
  min-width:0;

  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;

  background:transparent !important;

  color:#12452f;

  font-size:14px;

  text-align:left !important;
}

.rfaq-search-count {
  padding:7px 10px;

  border-radius:999px;

  background:#e7f6ed;

  color:#078b4b;

  font-size:11px;
  font-weight:800;
}


/* STATS */

.rfaq-stats {
  margin-top:19px;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px;
}

.rfaq-stats span {
  padding:7px 11px;

  border:1px solid #e0e8e3;
  border-radius:999px;

  background:#f8faf9;

  color:#63736a;

  font-size:10px;
}

.rfaq-stats strong {
  color:#078b4b;
}


/* SHARED SECTION */

.rfaq-library,
.rfaq-search-results,
.rfaq-topic-list {
  margin-bottom:16px;

  padding:54px 25px;

  border:1px solid #dce7e0;
  border-radius:23px;

  background:#fff;
}

.rfaq-section-head {
  max-width:790px;
  margin:0 auto 31px;
}

.rfaq-section-head > span {
  display:block;
  margin-bottom:8px;

  color:#e61d4f;

  font-size:10px;
  font-weight:800;

  letter-spacing:.1em;
  text-transform:uppercase;
}

.rfaq-section-head h2 {
  margin:0 auto 12px;

  color:#12452f;

  font-size:clamp(30px,4vw,46px);
  line-height:1.05;
}

.rfaq-section-head p {
  max-width:650px;
  margin:0 auto;

  color:#687970;

  font-size:14px;
  line-height:1.65;
}


/* FILTERS */

.rfaq-filter-row {
  margin-bottom:25px;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px;
}

.rfaq-filter-row button {
  padding:9px 13px;

  border:1px solid #dbe6df !important;
  border-radius:999px !important;

  background:#f8faf9 !important;

  color:#12452f !important;

  font-size:11px;
  font-weight:700;

  cursor:pointer;
}

.rfaq-filter-row button.active {
  border-color:#078b4b !important;
  background:#078b4b !important;
  color:#fff !important;
}


/* TOPIC FOLDERS */

.rfaq-topic-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:11px;
}

.rfaq-topic-card {
  min-height:190px;

  padding:20px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  border:1px solid #e0e8e3;
  border-radius:19px;

  background:#f9fbfa;

  text-decoration:none;

  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease;
}

.rfaq-topic-card:hover {
  transform:translateY(-3px);

  border-color:#c8dcd0;

  box-shadow:0 14px 28px rgba(18,69,47,.07);
}

.rfaq-folder-top {
  width:100%;

  margin-bottom:14px;

  display:flex;
  justify-content:center;
  align-items:center;
  gap:7px;
}

.rfaq-folder-icon {
  width:39px;
  height:39px;

  display:grid;
  place-items:center;

  border-radius:12px;

  background:#e7f6ed;

  color:#078b4b;

  font-size:20px;
}

.rfaq-amount {
  padding:5px 8px;

  border-radius:999px;

  background:#fff;

  color:#e61d4f;

  font-size:9px;
  font-weight:800;
}

.rfaq-topic-card > strong {
  display:block;

  margin-bottom:5px;

  color:#12452f;

  font-family:"Trebuchet MS","Segoe UI",sans-serif;

  font-size:17px;
  line-height:1.15;
}

.rfaq-topic-card > small {
  color:#718078;
  font-size:10px;
}

.rfaq-open-topic {
  margin-top:15px;

  color:#078b4b;

  font-size:10px;
  font-weight:750;
}


/* SEARCH RESULT */

#rfaq-results-list {
  max-width:1000px;

  margin:0 auto;

  display:grid;
  gap:8px;
}

.rfaq-result-card {
  padding:24px 20px;

  border:1px solid #e0e8e3;
  border-radius:17px;

  background:#f9fbfa;
}

.rfaq-result-card > span {
  display:block;
  margin-bottom:7px;

  color:#e61d4f;

  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}

.rfaq-result-card h3 {
  max-width:800px;

  margin:0 auto 9px;

  color:#12452f;

  font-size:18px;
}

.rfaq-result-card p {
  max-width:850px;

  margin:0 auto 14px;

  color:#63746b;

  font-size:13px;
  line-height:1.65;
}

.rfaq-result-card a {
  color:#078b4b !important;

  font-size:11px;
  font-weight:750;

  text-decoration:none;
}

.rfaq-empty,
.rfaq-no-local-results {
  padding:30px;

  color:#65766d;

  text-align:center;
}


/* TOPIC PAGE */

.rfaq-back {
  display:inline-block;

  margin-bottom:18px;

  color:#078b4b !important;

  font-size:11px;
  font-weight:700;

  text-decoration:none;
}

.rfaq-topic-count {
  margin-bottom:22px;
}

.rfaq-topic-count strong,
.rfaq-topic-count span {
  display:block;
}

.rfaq-topic-count strong {
  color:#e61d4f;

  font-size:35px;
}

.rfaq-topic-count span {
  color:#75847c;

  font-size:11px;
}


/* QUESTIONS */

.rfaq-questions {
  width:min(100%,1050px);
  margin:0 auto;

  display:grid;
  gap:8px;
}

.rfaq-item {
  overflow:hidden;

  border:1px solid #e0e8e3;
  border-radius:16px;

  background:#f9fbfa;
}

.rfaq-item summary {
  min-height:76px;

  padding:14px 17px;

  display:grid;
  grid-template-columns:38px 1fr 30px;

  gap:11px;
  align-items:center;

  cursor:pointer;

  list-style:none;
}

.rfaq-item summary::-webkit-details-marker {
  display:none;
}

.rfaq-q {
  width:38px;
  height:38px;

  display:grid;
  place-items:center;

  border-radius:12px;

  background:#e7f6ed;

  color:#078b4b;

  font-size:12px;
  font-weight:800;
}

.rfaq-item summary h3 {
  margin:0;

  color:#12452f;

  font-size:15px;
  line-height:1.3;

  text-align:center !important;
}

.rfaq-plus {
  width:29px;
  height:29px;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#fff;

  color:#e61d4f;

  font-size:18px;

  transition:transform .15s ease;
}

.rfaq-item[open] .rfaq-plus {
  transform:rotate(45deg);
}

.rfaq-answer {
  padding:2px 25px 23px;
}

.rfaq-answer p {
  max-width:830px;

  margin:0 auto;

  color:#5e7066;

  font-size:13px;
  line-height:1.75;

  text-align:center !important;
}


/* HUMAN NOTE / CTA */

.rfaq-human-note,
.rfaq-topic-cta {
  padding:56px 25px;

  border-radius:23px;

  background:
    radial-gradient(circle at 88% 12%,rgba(24,188,208,.20),transparent 29%),
    #075f38;

  color:#fff;
}

.rfaq-human-note > span,
.rfaq-topic-cta > span {
  display:block;

  margin-bottom:8px;

  color:#ff92ae;

  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.rfaq-human-note h2,
.rfaq-topic-cta h2 {
  max-width:850px;

  margin:0 auto 13px;

  color:#fff;

  font-size:clamp(29px,4vw,44px);
}

.rfaq-human-note p,
.rfaq-topic-cta p {
  max-width:690px;

  margin:0 auto 21px;

  color:rgba(255,255,255,.80);

  font-size:14px;
  line-height:1.7;
}

.rfaq-human-note a,
.rfaq-topic-cta a {
  min-height:42px;

  padding:0 17px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;

  background:#e61d4f;

  color:#fff !important;

  font-size:12px;
  font-weight:750;

  text-decoration:none;
}


/* TABLET */

@media(max-width:1050px) {

  .rfaq-topic-grid {
    grid-template-columns:repeat(2,1fr);
  }

}


/* MOBILE */

@media(max-width:700px) {

  .rfaq-hub,
  .rfaq-topic-page {
    width:calc(100% - 16px);
    margin-bottom:45px;
  }

  .rfaq-hero,
  .rfaq-topic-hero {
    padding:41px 13px;
  }

  .rfaq-hero h1,
  .rfaq-topic-hero h1 {
    font-size:38px;
  }

  .rfaq-hero > p,
  .rfaq-topic-hero > p {
    font-size:14px;
  }

  .rfaq-global-search,
  .rfaq-topic-search {
    min-height:58px;

    padding:7px 9px 7px 12px;

    border-radius:16px;
  }

  .rfaq-global-search input,
  .rfaq-topic-search input {
    font-size:12px;
  }

  .rfaq-search-count {
    font-size:9px;
  }

  .rfaq-library,
  .rfaq-search-results,
  .rfaq-topic-list {
    padding:39px 9px;
  }

  .rfaq-topic-grid {
    grid-template-columns:1fr;
  }

  .rfaq-topic-card {
    min-height:155px;
  }

  .rfaq-item summary {
    min-height:70px;

    padding:11px 9px;

    grid-template-columns:32px 1fr 27px;

    gap:7px;
  }

  .rfaq-q {
    width:32px;
    height:32px;
  }

  .rfaq-item summary h3 {
    font-size:12.5px;
  }

  .rfaq-answer {
    padding:2px 12px 18px;
  }

  .rfaq-answer p {
    font-size:12px;
  }

  .rfaq-human-note,
  .rfaq-topic-cta {
    padding:43px 15px;
  }

}

/* === RWR FAQ KNOWLEDGE HUB END === */


/* === RWR FREE TRIAL 2027 START === */


.rft-page {
  width: min(calc(100% - 48px), 1480px);

  margin: 0 auto 70px;

  color: #12452f;

  text-align: center;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;
}


.rft-page * {
  box-sizing: border-box;
}


.rft-page h1,
.rft-page h2,
.rft-page h3 {
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  text-align: center;
}


.rft-page p {
  text-align: center;
}


/* ======================================
   FACEBOOK PROFILE HERO
====================================== */

.rft-profile {
  margin-bottom: 15px;

  overflow: hidden;

  border: 1px solid #dce6e0;
  border-radius: 23px;

  background: #fff;

  box-shadow:
    0 5px 22px rgba(18,69,47,.045);
}


.rft-cover {
  width: 100%;
  height: clamp(230px,26vw,390px);

  overflow: hidden;

  background:
    radial-gradient(
      circle at 20% 20%,
      rgba(24,188,208,.18),
      transparent 35%
    ),
    radial-gradient(
      circle at 80% 30%,
      rgba(230,29,79,.13),
      transparent 32%
    ),
    #eaf6ef;
}


.rft-cover img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}


.rft-avatar {
  position: relative;
  z-index: 4;

  width: 112px;
  height: 112px;

  margin: -56px auto 0;

  padding: 6px;

  border-radius: 50%;

  background: #fff;

  box-shadow:
    0 8px 24px rgba(18,69,47,.13);
}


.rft-avatar img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: contain;

  border-radius: 50%;
}


.rft-profile-content {
  padding:
    25px
    clamp(18px,5vw,70px)
    38px;
}


.rft-eyebrow,
.rft-label {
  display: inline-block;

  margin-bottom: 10px;

  color: #e61d4f;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .105em;
  text-transform: uppercase;
}


.rft-profile h1 {
  max-width: 980px;

  margin: 0 auto 18px;

  color: #12452f;

  font-size:
    clamp(43px,5.6vw,72px);

  font-weight: 700;

  line-height: .99;

  letter-spacing: -.055em;
}


.rft-profile h1 strong {
  color: #e61d4f;
}


.rft-hero-copy {
  max-width: 760px;

  margin: 0 auto 24px !important;

  color: #546a5e !important;

  font-size: 16px;

  line-height: 1.75;
}


.rft-actions {
  display: flex;

  align-items: center;
  justify-content: center;

  gap: 9px;

  flex-wrap: wrap;
}


.rft-btn {
  min-height: 43px;

  padding: 0 17px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  border-radius: 999px;

  font-size: 12px;
  font-weight: 750;

  text-decoration: none;
}


.rft-primary {
  background: #e61d4f;

  color: #fff !important;
}


.rft-secondary {
  border: 1px solid #d5e1da;

  background: #f8faf9;

  color: #078b4b !important;
}


.rft-trust-row {
  margin-top: 20px;

  display: flex;

  justify-content: center;

  gap: 7px;

  flex-wrap: wrap;
}


.rft-trust-row span {
  padding: 7px 11px;

  border: 1px solid #dde6e0;
  border-radius: 999px;

  background: #f8faf9;

  color: #52675c;

  font-size: 10.5px;
  font-weight: 650;
}



/* ======================================
   STANDARD FEED CARD
====================================== */

.rft-card {
  margin-bottom: 15px;

  padding:
    52px
    clamp(18px,4vw,56px);

  border: 1px solid #dce6e0;
  border-radius: 23px;

  background: #fff;

  box-shadow:
    0 4px 20px rgba(18,69,47,.035);
}


.rft-card h2 {
  max-width: 870px;

  margin: 0 auto 18px;

  color: #12452f;

  font-size:
    clamp(31px,4vw,49px);

  line-height: 1.05;

  letter-spacing: -.04em;
}


.rft-card h2 strong {
  color: #e61d4f;
}


.rft-card p {
  max-width: 740px;

  margin: 0 auto 14px;

  color: #596c62;

  font-size: 15px;

  line-height: 1.75;
}



/* ======================================
   HUMAN INTRO
====================================== */

.rft-intro {
  background:
    radial-gradient(
      circle at 12% 10%,
      rgba(24,188,208,.07),
      transparent 28%
    ),
    #fff;
}


.rft-large-copy {
  margin-bottom: 17px !important;

  color: #078b4b !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:
    clamp(21px,3vw,30px) !important;

  font-weight: 700;
}



/* ======================================
   STORY SCENES
====================================== */

.rft-scene {
  padding: 17px;

  display: grid;

  grid-template-columns:
    minmax(0,.95fr)
    minmax(0,1.05fr);

  gap: 48px;

  align-items: center;
}


.rft-scene-reverse .rft-scene-image {
  order: 2;
}


.rft-scene-reverse .rft-scene-copy {
  order: 1;
}


.rft-scene-image {
  min-height: 475px;

  overflow: hidden;

  border-radius: 19px;

  background:
    linear-gradient(
      135deg,
      #e7f6ed,
      #f8faf9
    );
}


.rft-scene-image img {
  width: 100%;
  height: 100%;

  min-height: 475px;

  display: block;

  object-fit: cover;
}


.rft-scene-copy {
  padding:
    30px
    clamp(12px,3vw,38px);
}


.rft-step {
  width: 45px;
  height: 45px;

  margin: 0 auto 16px;

  display: grid;

  place-items: center;

  border-radius: 14px;

  background: #e7f6ed;

  color: #078b4b;

  font-size: 11px;
  font-weight: 800;
}


.rft-step.red {
  background: #fff0f4;

  color: #e61d4f;
}


.rft-step.cyan {
  background: #e8f9fb;

  color: #0aa6b8;
}


.rft-scene-copy h2 {
  font-size:
    clamp(29px,3.5vw,44px);
}



/* ======================================
   HUMAN QUOTE
====================================== */

.rft-quote {
  max-width: 580px;

  margin: 23px auto;

  padding: 20px 18px;

  border: 1px solid #eed6dd;
  border-radius: 18px;

  background: #fff7f9;
}


.rft-quote span,
.rft-quote strong,
.rft-quote p {
  display: block;

  text-align: center;
}


.rft-quote span {
  margin-bottom: 7px;

  color: #7c6b70;

  font-size: 11px;
}


.rft-quote strong {
  color: #e61d4f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 21px;

  line-height: 1.3;
}


.rft-quote p {
  margin:
    7px
    auto
    0 !important;

  color: #12452f !important;

  font-size: 12px !important;

  font-weight: 700;
}



/* ======================================
   SECTION HEADER
====================================== */

.rft-section-head {
  max-width: 820px;

  margin: 0 auto 32px;
}


.rft-section-head h2 {
  margin-bottom: 12px;
}


.rft-section-head p {
  max-width: 680px;
}



/* ======================================
   PROCESS
====================================== */

.rft-process-line {
  position: relative;

  max-width: 1180px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  gap: 0;

  border-top: 1px solid #dce6e0;
  border-bottom: 1px solid #dce6e0;
}


.rft-process-line article {
  position: relative;

  min-height: 235px;

  padding: 29px 21px;

  display: flex;

  flex-direction: column;

  align-items: center;
  justify-content: center;
}


.rft-process-line article:not(:last-child) {
  border-right: 1px solid #dce6e0;
}


.rft-process-number {
  width: 43px;
  height: 43px;

  margin-bottom: 15px;

  display: grid;

  place-items: center;

  border-radius: 50%;

  color: #fff;

  font-weight: 800;
}


.rft-process-number.green {
  background: #078b4b;
}


.rft-process-number.red {
  background: #e61d4f;
}


.rft-process-number.cyan {
  background: #18bcd0;
}


.rft-process-line h3 {
  margin: 0 0 8px;

  color: #12452f;

  font-size: 17px;
}


.rft-process-line p {
  max-width: 235px;

  margin: 0 auto;

  color: #66776e;

  font-size: 12px;

  line-height: 1.55;
}



/* ======================================
   VIDEO
====================================== */

.rft-video-frame {
  width: min(100%,1050px);

  margin: 0 auto;

  overflow: hidden;

  border-radius: 22px;

  background: #0a2419;

  box-shadow:
    0 14px 34px rgba(11,47,31,.10);
}


.rft-video-frame video {
  width: 100%;

  aspect-ratio: 16 / 9;

  display: block;

  object-fit: cover;

  background: #0a2419;
}



/* ======================================
   PROMISE
====================================== */

.rft-promise {
  background: #f8faf9;
}


.rft-promise > p {
  max-width: 760px;

  margin-bottom: 30px;
}


.rft-promise-grid {
  max-width: 1080px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 11px;
}


.rft-promise-grid article {
  padding: 27px 18px;

  border: 1px solid #dee7e1;
  border-radius: 18px;

  background: #fff;
}


.rft-promise-grid article > span {
  width: 45px;
  height: 45px;

  margin: 0 auto 14px;

  display: grid;

  place-items: center;

  border-radius: 14px;

  background: #e7f6ed;

  color: #078b4b;

  font-size: 19px;
  font-weight: 800;
}


.rft-promise-grid article:nth-child(2) > span {
  background: #fff0f4;

  color: #e61d4f;
}


.rft-promise-grid article:nth-child(3) > span {
  background: #e8f9fb;

  color: #0aa6b8;
}


.rft-promise-grid strong {
  display: block;

  margin-bottom: 7px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 17px;

  text-align: center;
}


.rft-promise-grid p {
  margin: 0 auto;

  color: #687970;

  font-size: 12px;

  line-height: 1.55;
}



/* ======================================
   FAQ
====================================== */

.rft-faq-list {
  max-width: 900px;

  margin: 0 auto;

  border-top: 1px solid #dce6e0;
}


.rft-faq-list details {
  border-bottom: 1px solid #dce6e0;
}


.rft-faq-list summary {
  padding: 20px 8px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 16px;
  font-weight: 700;

  text-align: center;

  cursor: pointer;
}


.rft-faq-list details[open] summary {
  color: #e61d4f;
}


.rft-faq-list details p {
  max-width: 720px;

  padding-bottom: 20px;

  font-size: 13px;
}



/* ======================================
   FINAL CTA
====================================== */

.rft-final {
  padding:
    61px
    clamp(18px,4vw,60px);

  border-radius: 23px;

  background:
    radial-gradient(
      circle at 88% 10%,
      rgba(24,188,208,.20),
      transparent 29%
    ),
    #075f38;

  color: #fff;
}


.rft-final .rft-label {
  color: #ff9ab2;
}


.rft-final h2 {
  max-width: 900px;

  margin: 0 auto 16px;

  color: #fff;

  font-size:
    clamp(31px,4.3vw,50px);

  line-height: 1.04;

  letter-spacing: -.04em;
}


.rft-final h2 strong {
  color: #ff8ba7;
}


.rft-final p {
  max-width: 660px;

  margin: 0 auto 23px;

  color: rgba(255,255,255,.80);

  font-size: 14px;

  line-height: 1.7;
}


.rft-final > a {
  min-height: 44px;

  padding: 0 18px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e61d4f;

  color: #fff !important;

  font-size: 12px;
  font-weight: 750;

  text-decoration: none;
}



/* ======================================
   INTERNAL LINKS
====================================== */

.rft-internal-links {
  margin-top: 17px;

  display: flex;

  justify-content: center;

  gap: 7px;

  flex-wrap: wrap;
}


.rft-internal-links a {
  padding: 7px 11px;

  border: 1px solid #dce6e0;
  border-radius: 999px;

  background: #fff;

  color: #12452f !important;

  font-size: 10px;
  font-weight: 650;

  text-decoration: none;
}



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

@media (max-width: 900px) {

  .rft-page {
    width: calc(100% - 24px);
  }


  .rft-scene {
    grid-template-columns: 1fr;

    gap: 5px;
  }


  .rft-scene-reverse .rft-scene-image,
  .rft-scene-reverse .rft-scene-copy {
    order: initial;
  }


  .rft-scene-image,
  .rft-scene-image img {
    min-height: 390px;
  }


  .rft-process-line {
    grid-template-columns:
      repeat(2,1fr);
  }


  .rft-process-line article:nth-child(2) {
    border-right: 0;
  }


  .rft-process-line article:nth-child(-n+2) {
    border-bottom: 1px solid #dce6e0;
  }

}



/* ======================================
   MOBILE
====================================== */

@media (max-width: 700px) {

  .rft-page {
    width: calc(100% - 16px);

    margin-bottom: 45px;
  }


  .rft-profile {
    border-radius: 18px;
  }


  .rft-cover {
    height: 190px;
  }


  .rft-avatar {
    width: 82px;
    height: 82px;

    margin-top: -41px;
  }


  .rft-profile-content {
    padding:
      20px
      13px
      27px;
  }


  .rft-profile h1 {
    font-size: 37px;

    line-height: 1.01;
  }


  .rft-hero-copy {
    font-size: 14px;
  }


  .rft-btn {
    min-height: 39px;

    padding: 0 13px;

    font-size: 11px;
  }


  .rft-card {
    padding: 37px 13px;

    border-radius: 18px;
  }


  .rft-card h2 {
    font-size: 29px;
  }


  .rft-card p {
    font-size: 14px;
  }


  .rft-scene {
    padding: 8px;
  }


  .rft-scene-image,
  .rft-scene-image img {
    min-height: 285px;
  }


  .rft-scene-image {
    border-radius: 15px;
  }


  .rft-scene-copy {
    padding:
      27px
      7px;
  }


  .rft-quote strong {
    font-size: 18px;
  }


  .rft-process-line {
    display: block;

    border-top: 0;
  }


  .rft-process-line article {
    min-height: auto;

    padding: 21px 10px;

    border-top: 1px solid #dce6e0;
    border-right: 0 !important;
  }


  .rft-promise-grid {
    grid-template-columns: 1fr;
  }


  .rft-video-frame {
    border-radius: 15px;
  }


  .rft-final {
    padding: 43px 14px;
  }


  .rft-final h2 {
    font-size: 30px;
  }

}


/* === RWR FREE TRIAL 2027 END === */


/* === RWR TEACHERS 2027 START === */

.rrt-teachers {
  width:min(calc(100% - 48px),1440px);
  margin:0 auto 70px;

  color:#12452f;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  text-align:center;
}

.rrt-teachers *,
.rrt-teachers h1,
.rrt-teachers h2,
.rrt-teachers h3,
.rrt-teachers p {
  box-sizing:border-box;
  text-align:center;
}

.rrt-teachers h1,
.rrt-teachers h2,
.rrt-teachers h3 {
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;
}

.rrt-teachers p {
  color:#5d7065;
  line-height:1.72;
}


.rrt-kicker {
  display:inline-block;

  margin-bottom:11px;

  color:#e61d4f;

  font-size:10px;
  font-weight:800;

  letter-spacing:.11em;
  text-transform:uppercase;
}


/* HERO */

.rrt-hero {
  margin-bottom:16px;

  padding:62px 34px 18px;

  overflow:hidden;

  border:1px solid #dce7e0;
  border-radius:23px;

  background:
    radial-gradient(circle at 10% 20%,rgba(24,188,208,.09),transparent 28%),
    radial-gradient(circle at 90% 20%,rgba(230,29,79,.07),transparent 27%),
    #fff;
}

.rrt-hero h1 {
  max-width:1040px;

  margin:0 auto 20px;

  color:#12452f;

  font-size:clamp(43px,5.8vw,72px);

  line-height:.99;

  letter-spacing:-.055em;
}

.rrt-hero h1 strong,
.rrt-teachers h2 strong {
  color:#e61d4f;
}

.rrt-hero-intro {
  max-width:790px;

  margin:0 auto 34px !important;

  font-size:16px;
}


.rrt-hero-image,
.rrt-culture-image {
  position:relative;

  width:100%;

  overflow:hidden;

  border-radius:20px;

  background:#edf5f0;
}

.rrt-hero-image {
  height:clamp(330px,38vw,540px);
}

.rrt-hero-image img,
.rrt-culture-image img {
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;
}

.rrt-image-shade {
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      to top,
      rgba(7,58,34,.72),
      rgba(7,58,34,.08) 62%,
      transparent
    );
}

.rrt-image-caption {
  position:absolute;

  z-index:3;

  left:20px;
  right:20px;
  bottom:25px;
}

.rrt-image-caption span,
.rrt-image-caption strong {
  display:block;
  color:#fff;
}

.rrt-image-caption span {
  margin-bottom:5px;

  font-size:10px;
  font-weight:800;

  letter-spacing:.08em;
  text-transform:uppercase;
}

.rrt-image-caption strong {
  font-size:clamp(23px,3vw,35px);
}


/* INTRO */

.rrt-intro {
  margin-bottom:16px;

  padding:62px clamp(20px,6vw,95px);

  border:1px solid #dce7e0;
  border-radius:23px;

  background:#f8faf9;
}

.rrt-intro h2,
.rrt-section-head h2,
.rrt-culture-copy h2,
.rrt-story-copy h2 {
  max-width:850px;

  margin:0 auto 18px;

  color:#12452f;

  font-size:clamp(30px,4vw,47px);

  line-height:1.05;

  letter-spacing:-.04em;
}

.rrt-big-copy {
  max-width:900px;

  margin:0 auto 20px !important;

  color:#078b4b !important;

  font-family:"Trebuchet MS","Segoe UI",sans-serif;

  font-size:clamp(21px,2.7vw,31px) !important;

  line-height:1.35 !important;
}

.rrt-intro > p:not(.rrt-big-copy) {
  max-width:790px;
  margin:0 auto 13px;
}


/* STORIES */

.rrt-story {
  margin-bottom:16px;

  padding:17px;

  display:grid;
  grid-template-columns:.94fr 1.06fr;

  gap:45px;
  align-items:center;

  border:1px solid #dce7e0;
  border-radius:23px;

  background:#fff;
}

.rrt-reverse .rrt-story-image {
  order:2;
}

.rrt-reverse .rrt-story-copy {
  order:1;
}

.rrt-story-image {
  min-height:470px;

  overflow:hidden;

  border-radius:18px;

  background:#edf5f0;
}

.rrt-story-image img {
  width:100%;
  height:100%;
  min-height:470px;

  display:block;

  object-fit:cover;
}

.rrt-story-copy {
  padding:35px 30px;
}

.rrt-number {
  width:45px;
  height:45px;

  margin:0 auto 16px;

  display:grid;
  place-items:center;

  border-radius:14px;

  background:#e7f6ed;

  color:#078b4b;

  font-size:11px;
  font-weight:800;
}

.rrt-number.red {
  background:#fff0f4;
  color:#e61d4f;
}

.rrt-number.cyan {
  background:#e8f9fb;
  color:#0aa6b8;
}

.rrt-story-copy > p {
  max-width:610px;

  margin:0 auto 13px;

  font-size:14px;
}


/* CULTURE */

.rrt-culture {
  position:relative;

  margin-bottom:16px;

  overflow:hidden;

  border:1px solid #dce7e0;
  border-radius:23px;

  background:#fff;
}

.rrt-culture-image {
  height:430px;

  border-radius:0;
}

.rrt-culture-copy {
  padding:48px clamp(20px,6vw,90px);
}

.rrt-culture-copy p {
  max-width:790px;

  margin:0 auto 13px;
}


/* VALUES */

.rrt-values,
.rrt-expertise,
.rrt-video-section,
.rrt-learners {
  margin-bottom:16px;

  padding:55px clamp(18px,4vw,55px);

  border:1px solid #dce7e0;
  border-radius:23px;

  background:#fff;
}

.rrt-section-head {
  max-width:820px;

  margin:0 auto 31px;
}

.rrt-section-head p {
  max-width:670px;

  margin:0 auto;
}


.rrt-values-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:10px;
}

.rrt-values-grid article {
  padding:27px 18px;

  border:1px solid #e0e8e3;
  border-radius:18px;

  background:#f8faf9;
}

.rrt-values-grid article > span {
  width:43px;
  height:43px;

  margin:0 auto 14px;

  display:grid;
  place-items:center;

  border-radius:13px;

  background:#e7f6ed;

  color:#078b4b;

  font-size:10px;
  font-weight:800;
}

.rrt-values-grid article:nth-child(2) > span {
  background:#fff0f4;
  color:#e61d4f;
}

.rrt-values-grid article:nth-child(3) > span {
  background:#e8f9fb;
  color:#0aa6b8;
}

.rrt-values-grid h3 {
  margin:0 0 8px;

  color:#12452f;

  font-size:18px;
}

.rrt-values-grid p {
  margin:0;

  font-size:12.5px;
}


/* EXPERTISE */

.rrt-expertise {
  background:#f8faf9;
}

.rrt-expertise-map {
  max-width:960px;

  margin:0 auto;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:10px;
}

.rrt-expertise-center {
  grid-column:1 / -1;

  max-width:470px;

  margin:0 auto 8px;

  padding:30px 25px;

  border-radius:25px;

  background:
    radial-gradient(circle at 90% 10%,rgba(24,188,208,.26),transparent 34%),
    #075f38;

  color:#fff;
}

.rrt-expertise-center span,
.rrt-expertise-center strong,
.rrt-expertise-center small {
  display:block;
}

.rrt-expertise-center span {
  margin-bottom:6px;

  color:#ff91ad;

  font-size:10px;
  font-weight:800;

  text-transform:uppercase;
}

.rrt-expertise-center strong {
  font-size:28px;
}

.rrt-expertise-center small {
  margin-top:7px;

  color:rgba(255,255,255,.78);
}

.rrt-expertise-card {
  min-height:135px;

  padding:24px 15px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  border:1px solid #dce7e0;
  border-radius:18px;

  background:#fff;
}

.rrt-expertise-card span,
.rrt-expertise-card strong {
  display:block;
}

.rrt-expertise-card span {
  margin-bottom:6px;

  color:#078b4b;

  font-size:10px;
  font-weight:800;

  text-transform:uppercase;
}

.rrt-expertise-card.red span {
  color:#e61d4f;
}

.rrt-expertise-card.cyan span {
  color:#0aa6b8;
}

.rrt-expertise-card strong {
  color:#12452f;

  font-size:16px;
}


/* VIDEO */

.rrt-video-box {
  position:relative;

  width:min(100%,1050px);

  aspect-ratio:16/9;

  margin:0 auto;

  overflow:hidden;

  border-radius:22px;

  background:#0b2f20;

  box-shadow:0 20px 44px rgba(18,69,47,.12);
}

.rrt-video-box video {
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;

  background:#0b2f20;
}

.rrt-video-badge {
  position:absolute;

  left:15px;
  top:15px;

  padding:7px 11px;

  border-radius:999px;

  background:rgba(255,255,255,.91);

  color:#078b4b;

  font-size:9px;
  font-weight:800;

  pointer-events:none;
}


/* LEARNERS */

.rrt-learner-pills {
  max-width:950px;

  margin:0 auto;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:8px;
}

.rrt-learner-pills span {
  padding:10px 14px;

  border:1px solid #dce7e0;
  border-radius:999px;

  background:#f8faf9;

  color:#12452f;

  font-size:11px;
  font-weight:700;
}


/* FINAL */

.rrt-final {
  padding:61px 25px;

  border-radius:23px;

  background:
    radial-gradient(circle at 87% 10%,rgba(24,188,208,.2),transparent 28%),
    #075f38;

  color:#fff;
}

.rrt-final .rrt-kicker {
  color:#ff91ad;
}

.rrt-final h2 {
  max-width:880px;

  margin:0 auto 15px;

  color:#fff;

  font-family:"Trebuchet MS","Segoe UI",sans-serif;

  font-size:clamp(30px,4vw,46px);

  line-height:1.05;
}

.rrt-final h2 strong {
  color:#ff87a6;
}

.rrt-final > p {
  max-width:660px;

  margin:0 auto 23px;

  color:rgba(255,255,255,.8);
}

.rrt-actions {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:8px;
}

.rrt-btn {
  min-height:43px;

  padding:0 17px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;

  text-decoration:none;

  font-size:12px;
  font-weight:750;
}

.rrt-primary {
  background:#e61d4f;

  color:#fff !important;
}

.rrt-secondary {
  background:#fff;

  color:#075f38 !important;
}


/* LINKS */

.rrt-internal-links {
  margin-top:17px;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:7px;
}

.rrt-internal-links a {
  padding:7px 11px;

  border:1px solid #dce7e0;
  border-radius:999px;

  background:#fff;

  color:#12452f !important;

  font-size:10px;
  font-weight:650;

  text-decoration:none;
}


/* MISSING IMAGE */

.rrt-hero-image.is-missing,
.rrt-story-image.is-missing,
.rrt-culture-image.is-missing {
  display:grid;
  place-items:center;

  background:
    linear-gradient(135deg,#e7f6ed,#f8faf9);
}

.rrt-hero-image.is-missing::after,
.rrt-story-image.is-missing::after,
.rrt-culture-image.is-missing::after {
  content:"Rouh & Rihan Teachers";

  color:rgba(7,139,75,.18);

  font-family:"Trebuchet MS",sans-serif;

  font-size:clamp(24px,5vw,55px);

  font-weight:700;
}


/* TABLET */

@media(max-width:950px) {

  .rrt-teachers {
    width:calc(100% - 24px);
  }

  .rrt-story {
    grid-template-columns:1fr;

    gap:0;
  }

  .rrt-reverse .rrt-story-image,
  .rrt-reverse .rrt-story-copy {
    order:initial;
  }

  .rrt-values-grid {
    grid-template-columns:repeat(2,1fr);
  }

}


/* MOBILE */

@media(max-width:700px) {

  .rrt-teachers {
    width:calc(100% - 16px);

    margin-bottom:45px;
  }

  .rrt-hero {
    padding:40px 12px 10px;
  }

  .rrt-hero h1 {
    font-size:38px;
  }

  .rrt-hero-intro {
    font-size:14px;
  }

  .rrt-hero-image {
    height:265px;

    border-radius:16px;
  }

  .rrt-intro {
    padding:40px 15px;
  }

  .rrt-intro h2,
  .rrt-story-copy h2,
  .rrt-culture-copy h2,
  .rrt-section-head h2 {
    font-size:29px;
  }

  .rrt-big-copy {
    font-size:20px !important;
  }

  .rrt-story {
    padding:8px;

    border-radius:17px;
  }

  .rrt-story-image,
  .rrt-story-image img {
    min-height:295px;
  }

  .rrt-story-copy {
    padding:30px 12px;
  }

  .rrt-story-copy > p {
    font-size:13px;
  }

  .rrt-culture-image {
    height:270px;
  }

  .rrt-culture-copy {
    padding:35px 14px;
  }

  .rrt-values,
  .rrt-expertise,
  .rrt-video-section,
  .rrt-learners {
    padding:39px 12px;
  }

  .rrt-values-grid,
  .rrt-expertise-map {
    grid-template-columns:1fr;
  }

  .rrt-expertise-center {
    grid-column:auto;

    width:100%;
  }

  .rrt-video-box {
    border-radius:16px;
  }

  .rrt-final {
    padding:44px 15px;
  }

}

/* === RWR TEACHERS 2027 END === */




/* === RWR SUPPORT POLICIES 2027 START === */

.rrp-page{
  --rr-green:#078b4b;
  --rr-dark:#0b3f2b;
  --rr-red:#e61d4f;
  --rr-cyan:#18bcd0;
  --rr-ink:#123c2d;
  --rr-muted:#687970;
  --rr-line:rgba(12,74,48,.10);

  position:relative;

  width:min(calc(100% - 42px),1520px);
  margin:0 auto 80px;

  color:var(--rr-ink);

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  text-align:center;
}

.rrp-page *,
.rrp-page h1,
.rrp-page h2,
.rrp-page h3,
.rrp-page p{
  box-sizing:border-box;
  text-align:center;
}

.rrp-page h1,
.rrp-page h2,
.rrp-page h3{
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;
}


/* =========================================
   IMMERSIVE HERO
========================================= */

.rrp-hero{
  position:relative;

  min-height:610px;

  margin-bottom:14px;
  padding:95px 26px 70px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border:1px solid var(--rr-line);
  border-radius:34px;

  background:
    radial-gradient(circle at 15% 16%,
      rgba(24,188,208,.15),
      transparent 26%),
    radial-gradient(circle at 88% 14%,
      rgba(230,29,79,.12),
      transparent 25%),
    radial-gradient(circle at 50% 95%,
      rgba(7,139,75,.10),
      transparent 35%),
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fbfdfc 100%
    );

  isolation:isolate;
}

.rrp-hero::before{
  content:"";

  position:absolute;
  inset:22px;

  z-index:-1;

  border:1px solid rgba(7,139,75,.07);
  border-radius:26px;

  pointer-events:none;
}

.rrp-hero::after{
  content:"";

  position:absolute;

  width:520px;
  height:520px;

  left:50%;
  bottom:-390px;

  transform:translateX(-50%);

  border:1px solid rgba(7,139,75,.13);
  border-radius:50%;

  box-shadow:
    0 0 0 55px rgba(7,139,75,.025),
    0 0 0 110px rgba(24,188,208,.018);

  z-index:-1;
}


/* eyebrow */

.rrp-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:31px;

  margin-bottom:22px;
  padding:0 13px;

  border:1px solid rgba(230,29,79,.14);
  border-radius:999px;

  background:rgba(255,255,255,.75);

  color:var(--rr-red);

  font-size:10px;
  font-weight:800;

  letter-spacing:.13em;
  text-transform:uppercase;

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}


/* main title */

.rrp-hero h1{
  max-width:1120px;

  margin:0 auto 20px;

  color:var(--rr-dark);

  font-size:clamp(52px,7vw,92px);
  font-weight:700;

  line-height:.92;
  letter-spacing:-.065em;

  text-wrap:balance;
}


/* human headline */

.rrp-human-headline{
  max-width:900px;

  margin:0 auto 20px;

  color:var(--rr-green);

  font-size:clamp(22px,2.7vw,34px);
  font-weight:500;

  line-height:1.18;
  letter-spacing:-.03em;

  text-wrap:balance;
}


/* intro */

.rrp-intro{
  max-width:790px;

  margin:0 auto 27px;

  color:#66776e;

  font-size:15px;
  line-height:1.8;

  text-wrap:pretty;
}


/* date chip */

.rrp-update{
  min-height:35px;

  padding:0 14px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(7,139,75,.10);
  border-radius:999px;

  background:rgba(255,255,255,.72);

  box-shadow:
    0 10px 30px rgba(18,69,47,.05);

  color:#74837b;

  font-size:10px;
  font-weight:650;

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}


/* =========================================
   EDITORIAL DOCUMENT FLOW
========================================= */

.rrp-content{
  position:relative;

  margin-bottom:14px;
  padding:34px 0;

  overflow:hidden;

  border:1px solid var(--rr-line);
  border-radius:34px;

  background:
    linear-gradient(
      180deg,
      rgba(247,251,249,.86),
      #fff
    );
}


/* central vertical line */

.rrp-content::before{
  content:"";

  position:absolute;

  top:70px;
  bottom:70px;
  left:50%;

  width:1px;

  transform:translateX(-50%);

  background:
    linear-gradient(
      180deg,
      transparent,
      rgba(7,139,75,.14) 15%,
      rgba(24,188,208,.13) 50%,
      rgba(230,29,79,.12) 85%,
      transparent
    );
}


.rrp-grid{
  position:relative;
  z-index:2;

  display:flex;
  flex-direction:column;

  gap:18px;

  padding:10px 26px;
}


/* sections are not cards anymore */

.rrp-card{
  position:relative;

  width:min(100%,980px);
  min-height:330px;

  margin:0 auto;
  padding:58px clamp(25px,5vw,80px);

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border:1px solid rgba(10,74,49,.095);
  border-radius:28px;

  background:
    rgba(255,255,255,.83);

  box-shadow:
    0 18px 60px rgba(18,69,47,.045);

  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);

  transition:
    transform .24s ease,
    box-shadow .24s ease,
    border-color .24s ease;
}


/* alternate width = editorial rhythm */

.rrp-card:nth-child(2n){
  width:min(92%,1100px);
}

.rrp-card:nth-child(3n){
  width:min(96%,1030px);
}


.rrp-card:hover{
  transform:translateY(-4px);

  border-color:rgba(7,139,75,.18);

  box-shadow:
    0 26px 70px rgba(18,69,47,.075);
}


/* giant editorial section number */

.rrp-card-number{
  position:absolute;

  top:-8px;
  left:50%;

  transform:translateX(-50%);

  width:auto;
  height:auto;

  margin:0;

  background:transparent !important;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:clamp(85px,10vw,145px);
  font-weight:700;

  line-height:1;

  letter-spacing:-.07em;

  opacity:.055;

  pointer-events:none;
}


.rrp-card.green .rrp-card-number{
  color:var(--rr-green);
}

.rrp-card.red .rrp-card-number{
  color:var(--rr-red);
}

.rrp-card.cyan .rrp-card-number{
  color:var(--rr-cyan);
}


/* small color signal */

.rrp-card::before{
  content:"";

  width:42px;
  height:5px;

  margin-bottom:24px;

  border-radius:99px;

  background:var(--rr-green);
}

.rrp-card.red::before{
  background:var(--rr-red);
}

.rrp-card.cyan::before{
  background:var(--rr-cyan);
}


/* heading */

.rrp-card h2{
  position:relative;
  z-index:2;

  max-width:760px;

  margin:0 auto 17px;

  color:var(--rr-dark);

  font-size:clamp(28px,3vw,42px);
  font-weight:600;

  line-height:1.05;
  letter-spacing:-.045em;

  text-wrap:balance;
}


/* body */

.rrp-card p{
  position:relative;
  z-index:2;

  max-width:760px;

  margin:0 auto;

  color:#64766c;

  font-size:14px;
  line-height:1.82;

  text-wrap:pretty;
}


/* =========================================
   FLOATING CONTACT PANEL
========================================= */

.rrp-contact{
  position:relative;

  margin-bottom:14px;

  min-height:430px;

  padding:70px 25px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border-radius:34px;

  background:
    radial-gradient(
      circle at 85% 16%,
      rgba(24,188,208,.26),
      transparent 31%
    ),
    radial-gradient(
      circle at 15% 80%,
      rgba(230,29,79,.16),
      transparent 32%
    ),
    #073f2b;

  color:#fff;
}

.rrp-contact::after{
  content:"";

  position:absolute;

  width:480px;
  height:480px;

  right:-250px;
  bottom:-290px;

  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;

  box-shadow:
    0 0 0 55px rgba(255,255,255,.025),
    0 0 0 110px rgba(255,255,255,.018);
}


.rrp-contact > span{
  display:inline-block;

  margin-bottom:10px;

  color:#ff9bb4;

  font-size:10px;
  font-weight:800;

  letter-spacing:.12em;
  text-transform:uppercase;
}


.rrp-contact h2{
  max-width:850px;

  margin:0 auto 15px;

  color:#fff;

  font-size:clamp(38px,5vw,64px);
  font-weight:600;

  line-height:.98;
  letter-spacing:-.05em;
}


.rrp-contact p{
  max-width:670px;

  margin:0 auto 26px;

  color:rgba(255,255,255,.72);

  font-size:14px;
  line-height:1.75;
}


/* buttons */

.rrp-contact-actions{
  position:relative;
  z-index:3;

  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;

  gap:9px;
}

.rrp-contact-actions a{
  min-height:48px;

  padding:0 20px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:15px;

  text-decoration:none;

  font-size:12px;
  font-weight:750;

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}

.rrp-contact-actions a:hover{
  transform:translateY(-2px);
}

.rrp-whatsapp{
  background:var(--rr-red);

  color:#fff !important;

  box-shadow:
    0 10px 24px rgba(230,29,79,.20);
}

.rrp-contact-link{
  border:1px solid rgba(255,255,255,.18);

  background:rgba(255,255,255,.10);

  color:#fff !important;

  backdrop-filter:blur(12px);
}


/* =========================================
   POLICY NAV = HORIZONTAL KNOWLEDGE RAIL
========================================= */

.rrp-policy-nav{
  margin-bottom:14px;

  padding:34px 24px;

  border:1px solid var(--rr-line);
  border-radius:28px;

  background:#fff;
}

.rrp-policy-label{
  display:block;

  margin-bottom:18px;

  color:var(--rr-red);

  font-size:10px;
  font-weight:800;

  letter-spacing:.12em;
  text-transform:uppercase;
}


.rrp-policy-nav > div{
  display:flex;

  justify-content:center;
  flex-wrap:wrap;

  gap:8px;
}


.rrp-policy-nav a{
  min-height:39px;

  padding:0 14px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(9,76,49,.09);
  border-radius:12px;

  background:#f8faf9;

  color:var(--rr-dark) !important;

  font-size:10.5px;
  font-weight:650;

  text-decoration:none;

  transition:
    transform .16s ease,
    background .16s ease,
    color .16s ease;
}

.rrp-policy-nav a:hover{
  transform:translateY(-2px);

  background:var(--rr-dark);

  color:#fff !important;
}


/* =========================================
   MAIN LINKS
========================================= */

.rrp-main-links{
  padding:15px;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:7px;
}

.rrp-main-links a{
  padding:7px 11px;

  color:#64756c !important;

  font-size:10px;
  font-weight:650;

  text-decoration:none;

  border-radius:10px;

  transition:
    color .15s ease,
    background .15s ease;
}

.rrp-main-links a:hover{
  color:var(--rr-green) !important;

  background:#eef7f2;
}


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

@media(max-width:900px){

  .rrp-page{
    width:calc(100% - 24px);
  }

  .rrp-hero{
    min-height:540px;
  }

  .rrp-card,
  .rrp-card:nth-child(2n),
  .rrp-card:nth-child(3n){
    width:min(100%,860px);
  }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:700px){

  .rrp-page{
    width:calc(100% - 14px);

    margin-bottom:50px;
  }


  /* hero */

  .rrp-hero{
    min-height:500px;

    padding:65px 16px 55px;

    border-radius:24px;
  }

  .rrp-hero::before{
    inset:10px;

    border-radius:18px;
  }

  .rrp-hero h1{
    font-size:44px;

    line-height:.94;
  }

  .rrp-human-headline{
    font-size:22px;
  }

  .rrp-intro{
    max-width:94%;

    font-size:13px;
  }


  /* content */

  .rrp-content{
    padding:12px 0;

    border-radius:24px;
  }

  .rrp-content::before{
    display:none;
  }

  .rrp-grid{
    gap:9px;

    padding:6px;
  }


  /* modern full-width sections */

  .rrp-card,
  .rrp-card:nth-child(2n),
  .rrp-card:nth-child(3n){
    width:100%;

    min-height:310px;

    padding:50px 18px 34px;

    border-radius:20px;
  }

  .rrp-card-number{
    top:4px;

    font-size:92px;
  }

  .rrp-card::before{
    margin-bottom:20px;
  }

  .rrp-card h2{
    font-size:29px;
  }

  .rrp-card p{
    max-width:95%;

    font-size:12.5px;
    line-height:1.76;
  }


  /* CTA */

  .rrp-contact{
    min-height:400px;

    padding:55px 17px;

    border-radius:24px;
  }

  .rrp-contact h2{
    font-size:40px;
  }


  /* horizontal policy rail */

  .rrp-policy-nav{
    padding:28px 12px;

    border-radius:22px;
  }

  .rrp-policy-nav > div{
    width:calc(100% + 12px);

    margin-left:-6px;

    padding:0 6px 7px;

    justify-content:flex-start;
    flex-wrap:nowrap;

    overflow-x:auto;

    scroll-snap-type:x proximity;

    scrollbar-width:none;
  }

  .rrp-policy-nav > div::-webkit-scrollbar{
    display:none;
  }

  .rrp-policy-nav a{
    flex:0 0 auto;

    scroll-snap-align:start;
  }

}

/* === RWR SUPPORT POLICIES 2027 END === */


/* === RWR MODERN MEGA FOOTER START === */

.rr-footer{
  --rrf-green:#078b4b;
  --rrf-dark:#063a29;
  --rrf-deep:#042d21;
  --rrf-red:#e61d4f;
  --rrf-cyan:#18bcd0;

  position:relative;

  width:100%;

  padding:16px 20px 20px;

  background:#f1f5f2;

  color:#fff;

  text-align:center;
}


.rr-footer *,
.rr-footer h2,
.rr-footer p,
.rr-footer a{
  box-sizing:border-box;
}


.rr-footer-shell{
  position:relative;

  width:min(100%,1520px);

  margin:0 auto;

  overflow:hidden;

  border-radius:34px;

  background:
    radial-gradient(
      circle at 8% 14%,
      rgba(24,188,208,.15),
      transparent 25%
    ),
    radial-gradient(
      circle at 91% 15%,
      rgba(230,29,79,.13),
      transparent 24%
    ),
    linear-gradient(
      145deg,
      #073e2c 0%,
      #052f23 55%,
      #04281e 100%
    );

  box-shadow:
    0 24px 60px rgba(6,58,41,.13);
}


/* =========================================
   TOP CTA
========================================= */

.rr-footer-cta{
  position:relative;

  margin:18px;
  padding:42px clamp(22px,4vw,60px);

  display:grid;
  grid-template-columns:1.4fr auto;

  gap:30px;
  align-items:center;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.10);
  border-radius:25px;

  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.095),
      rgba(255,255,255,.035)
    );

  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}


.rr-footer-cta::after{
  content:"";

  position:absolute;

  width:300px;
  height:300px;

  right:-170px;
  top:-190px;

  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;

  box-shadow:
    0 0 0 45px rgba(255,255,255,.02),
    0 0 0 90px rgba(255,255,255,.012);

  pointer-events:none;
}


.rr-footer-cta-copy{
  text-align:left;
}


.rr-footer-kicker{
  display:block;

  margin-bottom:8px;

  color:#ff98b2;

  font-size:10px;
  font-weight:800;

  letter-spacing:.11em;
  text-transform:uppercase;
}


.rr-footer-cta h2{
  max-width:760px;

  margin:0 0 11px;

  color:#fff;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:clamp(30px,4vw,48px);
  font-weight:600;

  line-height:1;

  letter-spacing:-.045em;

  text-align:left;
}


.rr-footer-cta h2 strong{
  color:#6ee4ef;
}


.rr-footer-cta p{
  max-width:650px;

  margin:0;

  color:rgba(255,255,255,.70);

  font-size:13px;

  line-height:1.65;

  text-align:left;
}


.rr-footer-cta-actions{
  position:relative;
  z-index:3;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:8px;
}


.rr-footer-btn{
  min-height:46px;

  padding:0 18px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:14px;

  color:#fff !important;

  font-size:11.5px;
  font-weight:750;

  text-decoration:none;

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}


.rr-footer-btn:hover{
  transform:translateY(-2px);
}


.rr-footer-btn-primary{
  background:var(--rrf-red);

  box-shadow:
    0 12px 28px rgba(230,29,79,.22);
}


.rr-footer-btn-whatsapp{
  background:#25d366;

  box-shadow:
    0 12px 28px rgba(37,211,102,.18);
}


/* =========================================
   MAIN AREA
========================================= */

.rr-footer-main{
  padding:55px clamp(22px,4vw,60px);

  display:grid;

  grid-template-columns:
    minmax(260px,1.5fr)
    repeat(4,minmax(130px,.75fr));

  gap:34px;

  align-items:start;
}


/* BRAND */

.rr-footer-brand{
  text-align:center;
}


.rr-footer-logo{
  width:82px;
  height:82px;

  margin:0 auto 16px;

  display:grid;
  place-items:center;

  overflow:hidden;

  border-radius:24px;

  background:#fff;

  box-shadow:
    0 14px 30px rgba(0,0,0,.12);
}


.rr-footer-logo img{
  width:100%;
  height:100%;

  display:block;

  object-fit:contain;

  padding:5px;
}


.rr-footer-brand h2{
  margin:0 0 10px;

  color:#fff;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:23px;
  font-weight:600;

  letter-spacing:-.03em;

  text-align:center;
}


.rr-footer-brand > p{
  max-width:330px;

  margin:0 auto 20px;

  color:rgba(255,255,255,.62);

  font-size:11.5px;

  line-height:1.7;

  text-align:center;
}


/* SOCIALS */

.rr-footer-socials{
  display:flex;
  justify-content:center;

  gap:8px;
}


.rrf-social{
  width:43px;
  height:43px;

  display:grid;
  place-items:center;

  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;

  background:rgba(255,255,255,.08);

  text-decoration:none;

  backdrop-filter:blur(10px);

  transition:
    transform .16s ease,
    background .16s ease;
}


.rrf-social:hover{
  transform:translateY(-3px);

  background:#fff;
}


.rrf-social svg{
  width:19px;
  height:19px;
}


/* Original social colors */

.rrf-social.website svg{
  fill:none;
  stroke:#4bd98b;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}


.rrf-social.facebook svg{
  fill:#1877f2;
}


.rrf-social.whatsapp svg{
  fill:none;
  stroke:#25d366;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}


.rrf-social.instagram svg{
  fill:none;
  stroke:#e1306c;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}


.rrf-social.instagram .dot{
  fill:#e1306c;
  stroke:none;
}


/* LINKS */

.rr-footer-links{
  display:flex;
  flex-direction:column;
  align-items:center;

  gap:10px;

  text-align:center;
}


.rr-footer-link-title{
  position:relative;

  margin-bottom:9px;
  padding-bottom:10px;

  color:#fff;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:14px;
  font-weight:700;
}


.rr-footer-link-title::after{
  content:"";

  position:absolute;

  left:50%;
  bottom:0;

  width:30px;
  height:3px;

  transform:translateX(-50%);

  border-radius:99px;

  background:
    linear-gradient(
      90deg,
      var(--rrf-cyan),
      var(--rrf-red)
    );
}


.rr-footer-links a{
  position:relative;

  color:rgba(255,255,255,.69) !important;

  font-size:11px;
  line-height:1.35;

  text-decoration:none;

  transition:
    color .15s ease,
    transform .15s ease;
}


.rr-footer-links a:hover{
  color:#fff !important;

  transform:translateY(-1px);
}


/* =========================================
   BOTTOM BAR
========================================= */

.rr-footer-bottom{
  margin:0 18px 18px;

  padding:20px;

  display:grid;
  grid-template-columns:1fr auto 1fr;

  gap:16px;
  align-items:center;

  border-top:1px solid rgba(255,255,255,.09);
}


.rr-footer-bottom p{
  margin:0;

  color:rgba(255,255,255,.48);

  font-size:9.5px;

  text-align:left;
}


.rr-footer-bottom-links{
  display:flex;
  justify-content:center;
  align-items:center;

  gap:7px;
}


.rr-footer-bottom-links a,
.rr-footer-bottom-links span{
  color:rgba(255,255,255,.52) !important;

  font-size:9px;

  text-decoration:none;
}


.rr-footer-bottom-links a:hover{
  color:#fff !important;
}


.rr-footer-note{
  text-align:right !important;

  letter-spacing:.03em;
}


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

@media(max-width:1050px){

  .rr-footer-main{
    grid-template-columns:
      repeat(2,minmax(0,1fr));

    gap:38px 20px;
  }

  .rr-footer-brand{
    grid-column:1 / -1;
  }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:700px){

  .rr-footer{
    padding:8px;
  }


  .rr-footer-shell{
    border-radius:24px;
  }


  /* CTA */

  .rr-footer-cta{
    margin:8px;
    padding:38px 15px;

    grid-template-columns:1fr;

    gap:22px;

    border-radius:19px;
  }


  .rr-footer-cta-copy,
  .rr-footer-cta h2,
  .rr-footer-cta p{
    text-align:center;
  }


  .rr-footer-cta h2{
    font-size:34px;
  }


  .rr-footer-cta p{
    margin:0 auto;
  }


  .rr-footer-btn{
    min-height:44px;

    border-radius:12px;
  }


  /* MAIN */

  .rr-footer-main{
    padding:42px 15px 35px;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    gap:35px 10px;
  }


  .rr-footer-brand{
    grid-column:1 / -1;

    margin-bottom:5px;
  }


  .rr-footer-logo{
    width:74px;
    height:74px;

    border-radius:21px;
  }


  .rr-footer-brand h2{
    font-size:21px;
  }


  .rr-footer-links{
    gap:9px;
  }


  .rr-footer-link-title{
    font-size:13px;
  }


  .rr-footer-links a{
    font-size:10px;
  }


  /* bottom */

  .rr-footer-bottom{
    margin:0 8px 8px;

    padding:20px 10px;

    grid-template-columns:1fr;

    gap:11px;
  }


  .rr-footer-bottom p,
  .rr-footer-note{
    text-align:center !important;
  }

}


/* SMALL PHONE */

@media(max-width:390px){

  .rr-footer-main{
    grid-template-columns:1fr;
  }

  .rr-footer-brand{
    grid-column:auto;
  }

}

/* === RWR MODERN MEGA FOOTER END === */


/* === RWR CONTACT 2027 START === */

.rrc-contact{
  --rr-green:#078b4b;
  --rr-dark:#0a402c;
  --rr-red:#e61d4f;
  --rr-cyan:#18bcd0;

  width:min(calc(100% - 48px),1480px);

  margin:0 auto 70px;

  color:#12452f;

  text-align:center;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;
}


.rrc-contact *,
.rrc-contact h1,
.rrc-contact h2,
.rrc-contact h3,
.rrc-contact p{
  box-sizing:border-box;
  text-align:center;
}


.rrc-contact h1,
.rrc-contact h2,
.rrc-contact h3{
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;
}


/* HERO */

.rrc-hero{
  position:relative;

  min-height:600px;

  margin-bottom:14px;
  padding:80px 25px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border:1px solid rgba(7,139,75,.11);
  border-radius:34px;

  background:
    radial-gradient(
      circle at 12% 15%,
      rgba(24,188,208,.14),
      transparent 27%
    ),
    radial-gradient(
      circle at 88% 16%,
      rgba(230,29,79,.11),
      transparent 27%
    ),
    radial-gradient(
      circle at 50% 105%,
      rgba(7,139,75,.10),
      transparent 35%
    ),
    #fff;
}


.rrc-hero::after{
  content:"";

  position:absolute;

  width:470px;
  height:470px;

  bottom:-360px;

  border:1px solid rgba(7,139,75,.11);
  border-radius:50%;

  box-shadow:
    0 0 0 55px rgba(7,139,75,.025),
    0 0 0 110px rgba(24,188,208,.018);
}


.rrc-kicker{
  display:inline-block;

  margin-bottom:14px;

  color:var(--rr-red);

  font-size:10px;
  font-weight:800;

  letter-spacing:.12em;
  text-transform:uppercase;
}


.rrc-hero h1{
  max-width:1100px;

  margin:0 auto 23px;

  color:var(--rr-dark);

  font-size:clamp(52px,7vw,88px);

  line-height:.93;

  letter-spacing:-.065em;

  text-wrap:balance;
}


.rrc-hero h1 strong{
  display:block;

  color:var(--rr-red);
}


.rrc-hero > p{
  max-width:780px;

  margin:0 auto 25px;

  color:#63756b;

  font-size:15px;

  line-height:1.75;
}


.rrc-hero-pills{
  display:flex;

  justify-content:center;
  flex-wrap:wrap;

  gap:7px;
}


.rrc-hero-pills span{
  padding:8px 12px;

  border:1px solid #dce7e0;
  border-radius:999px;

  background:rgba(255,255,255,.75);

  color:#12452f;

  font-size:10px;
  font-weight:700;

  backdrop-filter:blur(10px);
}


/* SECTION HEAD */

.rrc-section-head,
.rrc-form-intro{
  max-width:820px;

  margin:0 auto 32px;
}


.rrc-section-head > span{
  display:block;

  margin-bottom:8px;

  color:var(--rr-red);

  font-size:10px;
  font-weight:800;

  letter-spacing:.1em;
  text-transform:uppercase;
}


.rrc-section-head h2,
.rrc-form-intro h2{
  margin:0 auto 13px;

  color:var(--rr-dark);

  font-size:clamp(31px,4vw,48px);

  line-height:1.05;

  letter-spacing:-.045em;
}


.rrc-form-intro h2 strong{
  color:var(--rr-red);
}


.rrc-section-head p,
.rrc-form-intro p{
  max-width:680px;

  margin:0 auto;

  color:#687970;

  font-size:14px;

  line-height:1.7;
}


/* JOURNEY */

.rrc-journey{
  margin-bottom:14px;

  padding:58px 25px;

  border:1px solid rgba(7,139,75,.10);
  border-radius:30px;

  background:#f8fbf9;
}


.rrc-journey-line{
  position:relative;

  max-width:1050px;

  margin:0 auto;

  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:10px;
}


.rrc-journey-line::before{
  content:"";

  position:absolute;

  top:31px;
  left:16%;
  right:16%;

  height:1px;

  background:
    linear-gradient(
      90deg,
      var(--rr-green),
      var(--rr-cyan),
      var(--rr-red)
    );

  opacity:.25;
}


.rrc-journey-line article{
  position:relative;
  z-index:2;

  padding:12px;
}


.rrc-journey-line article > span{
  width:62px;
  height:62px;

  margin:0 auto 14px;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#fff;

  border:1px solid #d9e6df;

  color:var(--rr-green);

  font-size:11px;
  font-weight:800;

  box-shadow:0 10px 25px rgba(18,69,47,.06);
}


.rrc-journey-line article:nth-child(2) > span{
  color:var(--rr-cyan);
}


.rrc-journey-line article:nth-child(3) > span{
  color:var(--rr-red);
}


.rrc-journey-line strong{
  display:block;

  margin-bottom:7px;

  color:#12452f;

  font-size:16px;
}


.rrc-journey-line p{
  margin:0;

  color:#77877f;

  font-size:11px;
}


/* FORM SECTION */

.rrc-form-section{
  position:relative;

  margin-bottom:14px;

  padding:65px clamp(14px,5vw,75px);

  overflow:hidden;

  border:1px solid rgba(7,139,75,.11);
  border-radius:34px;

  background:
    radial-gradient(
      circle at 92% 8%,
      rgba(24,188,208,.08),
      transparent 25%
    ),
    #fff;
}


.rrc-form{
  width:min(100%,1050px);

  margin:0 auto;

  padding:34px;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:12px;

  border:1px solid rgba(7,139,75,.10);
  border-radius:28px;

  background:#f8faf9;

  box-shadow:
    0 22px 60px rgba(18,69,47,.055);
}


.rrc-field{
  display:flex;
  flex-direction:column;

  gap:8px;
}


.rrc-wide{
  grid-column:1 / -1;
}


.rrc-field label{
  display:block;

  color:#12452f;

  font-size:11px;
  font-weight:750;

  text-align:center !important;
}


.rrc-field input,
.rrc-field select,
.rrc-field textarea{
  width:100%;

  border:1px solid #dce7e0 !important;
  border-radius:15px !important;

  outline:none;

  background:#fff !important;

  color:#183e2e;

  font:inherit;

  font-size:13px;

  text-align:center !important;

  transition:
    border-color .15s ease,
    box-shadow .15s ease;
}


.rrc-field input,
.rrc-field select{
  min-height:52px;

  padding:0 14px;
}


.rrc-field textarea{
  min-height:130px;

  padding:15px;

  resize:vertical;
}


.rrc-field input:focus,
.rrc-field select:focus,
.rrc-field textarea:focus{
  border-color:rgba(7,139,75,.55) !important;

  box-shadow:
    0 0 0 4px rgba(7,139,75,.07) !important;
}


.rrc-field input::placeholder,
.rrc-field textarea::placeholder{
  color:#9aa8a0;
}


/* CONSENT */

.rrc-consent{
  padding:10px 0 3px;
}


.rrc-consent label{
  display:flex;

  justify-content:center;
  align-items:flex-start;

  gap:9px;

  cursor:pointer;
}


.rrc-consent input{
  width:17px;
  height:17px;

  margin-top:2px;

  accent-color:var(--rr-green);
}


.rrc-consent span{
  max-width:600px;

  color:#697970;

  font-size:10.5px;

  line-height:1.5;
}


/* SUBMIT */

.rrc-submit-wrap{
  padding-top:7px;
}


.rrc-submit{
  min-height:54px;

  padding:0 23px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  gap:9px;

  border:0 !important;
  border-radius:16px !important;

  background:
    linear-gradient(
      135deg,
      #078b4b,
      #0aa768
    ) !important;

  color:#fff !important;

  font-size:13px;
  font-weight:800;

  cursor:pointer;

  box-shadow:
    0 15px 30px rgba(7,139,75,.18);

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}


.rrc-submit:hover{
  transform:translateY(-2px);

  box-shadow:
    0 19px 36px rgba(7,139,75,.23);
}


.rrc-submit svg{
  width:18px;
  height:18px;

  fill:none;
  stroke:currentColor;

  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}


.rrc-submit-wrap p{
  max-width:600px;

  margin:11px auto 0;

  color:#849189;

  font-size:9.5px;

  line-height:1.5;
}


/* CONNECT */

.rrc-connect{
  margin-bottom:14px;

  padding:58px 25px;

  border:1px solid rgba(7,139,75,.10);
  border-radius:30px;

  background:#fff;
}


.rrc-connect-grid{
  max-width:1050px;

  margin:0 auto;

  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:10px;
}


.rrc-connect-card{
  min-height:230px;

  padding:30px 18px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  border:1px solid #e0e8e3;
  border-radius:22px;

  background:#f8faf9;

  text-decoration:none;

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}


.rrc-connect-card:hover{
  transform:translateY(-4px);

  box-shadow:
    0 17px 34px rgba(18,69,47,.07);
}


.rrc-connect-icon{
  width:52px;
  height:52px;

  margin-bottom:15px;

  display:grid;
  place-items:center;

  border-radius:16px;

  background:#fff;

  font-size:20px;
  font-weight:800;
}


.rrc-connect-card.whatsapp .rrc-connect-icon{
  color:#25d366;
}


.rrc-connect-card.facebook .rrc-connect-icon{
  color:#1877f2;
}


.rrc-connect-card.instagram .rrc-connect-icon{
  color:#e1306c;
}


.rrc-connect-card strong{
  margin-bottom:8px;

  color:#12452f;

  font-size:18px;
}


.rrc-connect-card small{
  max-width:260px;

  color:#75857c;

  font-size:11px;

  line-height:1.55;
}


.rrc-connect-card em{
  margin-top:17px;

  color:var(--rr-green);

  font-size:10px;
  font-weight:750;

  font-style:normal;
}


/* HUMAN CTA */

.rrc-human{
  position:relative;

  margin-bottom:14px;

  padding:70px 25px;

  overflow:hidden;

  border-radius:32px;

  background:
    radial-gradient(
      circle at 88% 15%,
      rgba(24,188,208,.22),
      transparent 29%
    ),
    #073f2b;

  color:#fff;
}


.rrc-human > span{
  display:block;

  margin-bottom:10px;

  color:#ff91ad;

  font-size:10px;
  font-weight:800;

  letter-spacing:.1em;
  text-transform:uppercase;
}


.rrc-human h2{
  max-width:900px;

  margin:0 auto 18px;

  color:#fff;

  font-size:clamp(36px,5vw,58px);

  line-height:1;

  letter-spacing:-.05em;
}


.rrc-human h2 strong{
  color:#78e5ed;
}


.rrc-human p{
  max-width:720px;

  margin:0 auto 10px;

  color:rgba(255,255,255,.75);

  font-size:14px;

  line-height:1.75;
}


/* LINKS */

.rrc-links{
  padding:16px;

  display:flex;
  justify-content:center;
  flex-wrap:wrap;

  gap:7px;
}


.rrc-links a{
  padding:7px 11px;

  border-radius:999px;

  color:#64756c !important;

  font-size:10px;
  font-weight:650;

  text-decoration:none;
}


/* TABLET */

@media(max-width:900px){

  .rrc-contact{
    width:calc(100% - 24px);
  }

}


/* MOBILE */

@media(max-width:700px){

  .rrc-contact{
    width:calc(100% - 14px);

    margin-bottom:45px;
  }


  .rrc-hero{
    min-height:520px;

    padding:60px 15px;

    border-radius:24px;
  }


  .rrc-hero h1{
    font-size:44px;
  }


  .rrc-hero > p{
    font-size:13px;
  }


  .rrc-journey{
    padding:42px 13px;

    border-radius:23px;
  }


  .rrc-journey-line{
    grid-template-columns:1fr;

    gap:21px;
  }


  .rrc-journey-line::before{
    display:none;
  }


  .rrc-form-section{
    padding:45px 8px;

    border-radius:24px;
  }


  .rrc-form{
    padding:18px 9px;

    grid-template-columns:1fr;

    border-radius:20px;
  }


  .rrc-wide{
    grid-column:auto;
  }


  .rrc-field input,
  .rrc-field select{
    min-height:50px;
  }


  .rrc-connect{
    padding:42px 10px;

    border-radius:23px;
  }


  .rrc-connect-grid{
    grid-template-columns:1fr;
  }


  .rrc-connect-card{
    min-height:190px;
  }


  .rrc-human{
    padding:55px 16px;

    border-radius:24px;
  }


  .rrc-human h2{
    font-size:40px;
  }

}

/* === RWR CONTACT 2027 END === */



/* ===== Modern language button ===== */
.rwr-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.rwr-header__right {
  gap: 14px;
  align-items: center;
}

.rwr-lang-switcher {
  position: relative;
  display: inline-block;
  margin: 0;
}

.rwr-lang-switcher summary {
  list-style: none;
}

.rwr-lang-switcher summary::-webkit-details-marker {
  display: none;
}

.rwr-lang-button {
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: linear-gradient(180deg, #eef8f3 0%, #e6f5ed 100%);
  border: 1px solid rgba(21, 149, 88, 0.16);
  box-shadow: 0 10px 24px rgba(8, 54, 33, 0.08);
  color: #159558;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}

.rwr-lang-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(8, 54, 33, 0.12);
  background: linear-gradient(180deg, #ffffff 0%, #eef8f3 100%);
}

.rwr-lang-button__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
}

.rwr-lang-button__icon svg {
  width: 24px;
  height: 24px;
  display: block;
}

.rwr-lang-switcher[open] .rwr-lang-button {
  color: #ffffff;
  background: linear-gradient(135deg, #159558 0%, #14b87b 100%);
  border-color: transparent;
}

.rwr-lang-menu {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  min-width: 170px;
  padding: 10px;
  border-radius: 18px;
  background: rgba(255,255,255,0.97);
  border: 1px solid rgba(21, 149, 88, 0.12);
  box-shadow: 0 18px 40px rgba(8, 54, 33, 0.12);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.rwr-lang-menu a {
  display: block;
  text-decoration: none;
  text-align: center;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .02em;
  color: #0d3b2a;
  padding: 12px 14px;
  border-radius: 14px;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

.rwr-lang-menu a:hover {
  background: #eef8f3;
  color: #159558;
  transform: translateY(-1px);
}

/* Hide old language items if Polylang/menu switcher exists */
.rwr-navigation .lang-item,
.rwr-navigation .menu-item-language,
.rwr-navigation .pll-parent-menu-item {
  display: none !important;
}

/* Mobile */
@media (max-width: 991px) {
  .rwr-header__right {
    gap: 10px;
  }

  .rwr-lang-button {
    width: 46px;
    height: 46px;
    border-radius: 16px;
  }

  .rwr-lang-button__icon svg {
    width: 22px;
    height: 22px;
  }

  .rwr-lang-menu {
    right: 0;
    min-width: 150px;
  }
}

/* === RWR REAL LANGUAGE ICON START === */

.rr-lang-switcher{
  position:relative;
  z-index:10020;

  margin:0;
  padding:0;
}

.rr-lang-switcher > summary{
  list-style:none !important;
}

.rr-lang-switcher > summary::-webkit-details-marker{
  display:none !important;
}


/* MAIN BUTTON */

.rr-lang-trigger{
  width:44px;
  height:44px;

  padding:0 !important;
  margin:0 !important;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(7,139,75,.12);
  border-radius:14px;

  background:#eaf7f0;

  cursor:pointer;

  box-shadow:
    0 8px 22px rgba(7,80,47,.06);

  transition:
    transform .16s ease,
    background .16s ease,
    box-shadow .16s ease;
}

.rr-lang-trigger:hover{
  transform:translateY(-2px);

  background:#fff;

  box-shadow:
    0 12px 28px rgba(7,80,47,.10);
}


/* ICON */

.rr-translate-icon{
  width:26px;
  height:26px;

  display:flex;
  align-items:center;
  justify-content:center;
}

.rr-translate-icon svg{
  width:26px;
  height:26px;

  display:block;

  overflow:visible;
}

.rr-translate-icon path{
  fill:none;

  stroke-width:2.15;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.rr-ti-green{
  stroke:#078b4b;
}

.rr-ti-red{
  stroke:#e61d4f;
}

.rr-ti-cyan{
  fill:#18bcd0;
  stroke:none;
}


/* OPEN STATE */

.rr-lang-switcher[open] .rr-lang-trigger{
  background:#078b4b;

  border-color:#078b4b;
}

.rr-lang-switcher[open] .rr-ti-green,
.rr-lang-switcher[open] .rr-ti-red{
  stroke:#fff;
}

.rr-lang-switcher[open] .rr-ti-cyan{
  fill:#fff;
}


/* DROPDOWN */

.rr-lang-dropdown{
  position:absolute;

  top:calc(100% + 11px);
  right:0;

  width:185px;

  padding:8px;

  display:grid;
  gap:4px;

  border:1px solid rgba(7,139,75,.10);
  border-radius:17px;

  background:rgba(255,255,255,.97);

  box-shadow:
    0 20px 50px rgba(10,65,42,.14);

  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

.rr-lang-dropdown::before{
  content:"";

  position:absolute;

  top:-5px;
  right:16px;

  width:10px;
  height:10px;

  transform:rotate(45deg);

  background:#fff;

  border-left:1px solid rgba(7,139,75,.10);
  border-top:1px solid rgba(7,139,75,.10);
}


.rr-lang-dropdown a{
  min-height:48px;

  padding:7px 11px;

  display:grid;
  grid-template-columns:34px 1fr;

  gap:8px;
  align-items:center;

  border-radius:12px;

  color:#12452f !important;

  text-decoration:none !important;

  transition:
    background .15s ease,
    transform .15s ease;
}

.rr-lang-dropdown a:hover{
  background:#eef8f3;

  transform:translateX(-2px);
}


.rr-lang-dropdown a > span{
  width:32px;
  height:32px;

  display:grid;
  place-items:center;

  border-radius:10px;

  background:#e8f6ee;

  color:#078b4b;

  font-size:9px;
  font-weight:800;
}


.rr-lang-dropdown a:nth-child(2) > span{
  background:#fff0f4;

  color:#e61d4f;
}


.rr-lang-dropdown a:nth-child(3) > span{
  background:#e8f9fb;

  color:#0aa6b8;
}


.rr-lang-dropdown strong{
  color:#12452f;

  font-size:12px;
  font-weight:700;

  text-align:left;
}


/* MOBILE — KEEP HAMBURGER */

@media(max-width:700px){

  .rr-lang-trigger{
    width:39px;
    height:39px;

    border-radius:12px;
  }

  .rr-translate-icon,
  .rr-translate-icon svg{
    width:23px;
    height:23px;
  }

  .rr-lang-dropdown{
    position:fixed;

    top:78px;
    right:10px;

    width:180px;
  }

}

/* === RWR REAL LANGUAGE ICON END === */


/* Current selected language */
.rr-lang-dropdown a.is-current{
  background:#eef8f3 !important;
}

.rr-lang-dropdown a.is-current strong{
  color:#078b4b !important;
}

/* Arabic translated pages */
html[lang^="ar"] body{
  direction:rtl;
}

html[lang^="ar"] .rr-lang-dropdown{
  direction:ltr;
}

html[lang^="ar"] .rr-lang-dropdown a{
  direction:ltr;
}

html[lang^="ar"] .rr-lang-dropdown a[lang="ar"]{
  direction:rtl;
}


/* === RWR EDITORIAL SYSTEM START === */


/* ==============================
   ARTICLE SHELL
============================== */

.rwr-post-shell {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    calc(var(--rr-header-height,84px) + 18px)
    0
    70px !important;

  background: #f0f3f1;
}


.rwr-post-shell > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ==============================
   ARTICLE
============================== */

.rwr-article {
  width: min(calc(100% - 32px), 1080px);

  margin: 0 auto;

  color: #385246;

  font-family:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  text-align: center;
}


.rwr-article * {
  box-sizing: border-box;
}


.rwr-article h1,
.rwr-article h2,
.rwr-article h3 {
  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  text-align: center;
}


/* HERO */

.rwr-article-hero {
  margin-bottom: 14px;

  padding:
    clamp(38px,6vw,72px)
    clamp(18px,6vw,74px);

  border: 1px solid #dce6e0;
  border-radius: 22px;

  background:
    radial-gradient(
      circle at 12% 15%,
      rgba(24,188,208,.09),
      transparent 29%
    ),
    radial-gradient(
      circle at 88% 15%,
      rgba(230,29,79,.07),
      transparent 28%
    ),
    #fff;

  box-shadow:
    0 5px 20px rgba(18,69,47,.035);
}


.rwr-article-kicker {
  display: inline-block;

  margin-bottom: 11px;

  color: #e61d4f;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .1em;
  text-transform: uppercase;
}


.rwr-article-hero h1 {
  max-width: 920px;

  margin: 0 auto 18px;

  color: #12452f;

  font-size: clamp(38px,5.4vw,64px);

  line-height: 1;

  letter-spacing: -.05em;
}


.rwr-article-hero h1 strong {
  color: #e61d4f;
}


.rwr-article-lead {
  max-width: 760px;

  margin: 0 auto !important;

  color: #556a5f !important;

  font-size: 16px;

  line-height: 1.75;

  text-align: center !important;
}


/* QUICK ANSWER */

.rwr-quick-answer {
  margin-bottom: 14px;

  padding:
    27px
    clamp(16px,4vw,45px);

  border: 1px solid #cfe3d8;
  border-radius: 19px;

  background: #f4faf6;
}


.rwr-quick-answer > span {
  display: inline-block;

  margin-bottom: 7px;

  color: #078b4b;

  font-size: 10px;
  font-weight: 800;

  text-transform: uppercase;
  letter-spacing: .09em;
}


.rwr-quick-answer p {
  max-width: 780px;

  margin: 0 auto !important;

  color: #294d3b !important;

  font-size: 16px;

  line-height: 1.7;

  text-align: center !important;
}


/* BODY SECTIONS */

.rwr-article-section {
  margin-bottom: 14px;

  padding:
    43px
    clamp(18px,5vw,65px);

  border: 1px solid #dce6e0;
  border-radius: 20px;

  background: #fff;
}


.rwr-article-section h2 {
  position: relative;

  max-width: 820px;

  margin: 0 auto 21px;

  padding-bottom: 16px;

  color: #12452f;

  font-size:
    clamp(27px,3.5vw,40px);

  line-height: 1.07;

  letter-spacing: -.035em;
}


.rwr-article-section h2::after {
  content: "";

  position: absolute;

  left: 50%;
  bottom: 0;

  width: 46px;
  height: 3px;

  transform: translateX(-50%);

  border-radius: 999px;

  background:
    linear-gradient(
      90deg,
      #078b4b 0 50%,
      #e61d4f 50% 100%
    );
}


.rwr-article-section h3 {
  max-width: 760px;

  margin:
    28px
    auto
    11px;

  color: #078b4b;

  font-size: 21px;
}


.rwr-article-section p {
  max-width: 790px;

  margin:
    0
    auto
    16px !important;

  color: #4f665a !important;

  font-size: 15px;

  line-height: 1.78;

  text-align: center !important;
}


/* EXPLANATORY WORDS */

.rwr-term-link {
  padding:
    1px
    3px;

  border-bottom:
    1px dashed currentColor;

  color: #078b4b !important;

  font-weight: 700;

  text-decoration: none !important;
}


.rwr-term-link:hover {
  color: #e61d4f !important;
}


/* INTERNAL LINKS INSIDE TEXT */

.rwr-context-link {
  color: #e61d4f !important;

  font-weight: 700;

  text-decoration:
    underline;

  text-decoration-thickness: 1px;

  text-underline-offset: 3px;
}


/* CALLOUT */

.rwr-article-callout {
  max-width: 810px;

  margin: 25px auto !important;

  padding: 23px 20px;

  border: 1px solid #d5e5dc;
  border-radius: 17px;

  background: #f7faf8;
}


.rwr-article-callout strong {
  display: block;

  margin-bottom: 8px;

  color: #e61d4f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 18px;

  text-align: center;
}


.rwr-article-callout p {
  margin: 0 auto !important;
}


/* VIDEO */

.rwr-video-section {
  margin-bottom: 14px;

  padding:
    43px
    clamp(13px,4vw,45px);

  border: 1px solid #dce6e0;
  border-radius: 20px;

  background: #fff;
}


.rwr-video-section h2 {
  margin: 0 auto 10px;

  color: #12452f;

  font-size:
    clamp(27px,3.5vw,39px);
}


.rwr-video-section > p {
  max-width: 680px;

  margin:
    0
    auto
    23px !important;

  color: #64756c !important;

  text-align: center !important;
}


.rwr-video-grid {
  width: min(100%,900px);

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    repeat(
      auto-fit,
      minmax(280px,1fr)
    );

  gap: 10px;
}


.rwr-video-frame {
  overflow: hidden;

  border-radius: 17px;

  background: #0a2419;
}


.rwr-video-frame iframe {
  width: 100%;

  aspect-ratio: 16 / 9;

  display: block;

  border: 0;
}


/* FAQ */

.rwr-article-faq {
  margin-bottom: 14px;

  padding:
    43px
    clamp(15px,4vw,48px);

  border: 1px solid #dce6e0;
  border-radius: 20px;

  background: #fff;
}


.rwr-article-faq h2 {
  margin:
    0
    auto
    25px;

  color: #12452f;

  font-size:
    clamp(27px,3.4vw,39px);
}


.rwr-article-faq details {
  max-width: 820px;

  margin: 0 auto 8px;

  overflow: hidden;

  border: 1px solid #dfe7e2;
  border-radius: 13px;

  background: #f8faf9;
}


.rwr-article-faq summary {
  padding: 17px 15px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 14px;
  font-weight: 700;

  text-align: center;

  cursor: pointer;
}


.rwr-article-faq details[open] summary {
  color: #e61d4f;
}


.rwr-article-faq details p {
  max-width: 700px;

  margin:
    0
    auto
    16px !important;

  padding:
    0
    14px;

  color: #5d7066 !important;

  font-size: 13px;

  line-height: 1.65;

  text-align: center !important;
}


/* RELATED */

.rwr-related-articles {
  margin-bottom: 14px;

  padding:
    38px
    clamp(13px,4vw,40px);

  border: 1px solid #dce6e0;
  border-radius: 20px;

  background: #fff;
}


.rwr-related-articles h2 {
  margin:
    0
    auto
    23px;

  color: #12452f;

  font-size: 30px;
}


.rwr-related-grid {
  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 9px;
}


.rwr-related-grid a {
  min-height: 120px;

  padding: 18px 14px;

  display: flex;
  flex-direction: column;

  align-items: center;
  justify-content: center;

  border: 1px solid #dfe8e2;
  border-radius: 15px;

  background: #f8faf9;

  color: #12452f !important;

  font-size: 13px;
  font-weight: 700;

  line-height: 1.4;

  text-align: center;

  text-decoration: none;
}


/* ARTICLE CTA */

.rwr-article-cta {
  padding:
    48px
    clamp(16px,4vw,45px);

  border-radius: 20px;

  background:
    radial-gradient(
      circle at 88% 10%,
      rgba(24,188,208,.20),
      transparent 28%
    ),
    #075f38;

  color: #fff;
}


.rwr-article-cta span {
  display: block;

  margin-bottom: 7px;

  color: #ff96ae;

  font-size: 10px;
  font-weight: 800;

  text-transform: uppercase;
  letter-spacing: .08em;
}


.rwr-article-cta h2 {
  max-width: 800px;

  margin: 0 auto 12px;

  color: #fff;

  font-size:
    clamp(27px,3.7vw,42px);
}


.rwr-article-cta p {
  max-width: 620px;

  margin: 0 auto 18px !important;

  color:
    rgba(255,255,255,.8) !important;

  text-align: center !important;
}


.rwr-article-cta a {
  min-height: 40px;

  padding: 0 15px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e61d4f;

  color: #fff !important;

  font-size: 11px;
  font-weight: 750;

  text-decoration: none;
}


/* ==============================
   LIBRARY
============================== */

.rwr-library {
  width:
    min(
      calc(100% - 48px),
      1440px
    );

  margin:
    0
    auto
    70px;

  text-align: center;
}


.rwr-library-hero {
  margin-bottom: 15px;

  padding:
    60px
    clamp(18px,5vw,70px);

  border: 1px solid #dce6e0;
  border-radius: 22px;

  background:
    radial-gradient(
      circle at 12% 15%,
      rgba(24,188,208,.09),
      transparent 28%
    ),
    #fff;
}


.rwr-library-label,
.rwr-library-heading > span {
  display: inline-block;

  margin-bottom: 9px;

  color: #e61d4f;

  font-size: 10px;
  font-weight: 800;

  letter-spacing: .09em;
  text-transform: uppercase;
}


.rwr-library-hero h1 {
  max-width: 940px;

  margin: 0 auto 16px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:
    clamp(40px,5vw,65px);

  line-height: 1;

  letter-spacing: -.05em;
}


.rwr-library-hero h1 strong {
  color: #e61d4f;
}


.rwr-library-hero p {
  max-width: 730px;

  margin:
    0
    auto
    22px;

  color: #566b60;

  line-height: 1.7;
}


.rwr-library-nav {
  display: flex;

  justify-content: center;

  gap: 7px;

  flex-wrap: wrap;
}


.rwr-library-nav a {
  padding: 7px 11px;

  border: 1px solid #dce6e0;
  border-radius: 999px;

  background: #f8faf9;

  color: #12452f !important;

  font-size: 10px;
  font-weight: 700;

  text-decoration: none;
}


.rwr-library-cluster {
  margin-bottom: 15px;

  padding:
    43px
    clamp(13px,3vw,36px);

  border: 1px solid #dce6e0;
  border-radius: 22px;

  background: #fff;
}


.rwr-library-heading h2 {
  margin:
    0
    auto
    27px;

  color: #12452f;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size:
    clamp(28px,3.5vw,40px);
}


.rwr-library-grid {
  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 10px;
}


.rwr-library-card {
  padding: 23px 17px;

  border: 1px solid #e0e8e3;
  border-radius: 16px;

  background: #f8faf9;
}


.rwr-library-card-topic {
  display: block;

  margin-bottom: 8px;

  color: #e61d4f;

  font-size: 9px;
  font-weight: 800;

  text-transform: uppercase;
  letter-spacing: .07em;
}


.rwr-library-card h3 {
  margin:
    0
    auto
    10px;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 19px;

  line-height: 1.2;
}


.rwr-library-card h3 a {
  color: #12452f !important;

  text-decoration: none;
}


.rwr-library-card p {
  margin:
    0
    auto
    15px;

  color: #64756c;

  font-size: 12px;

  line-height: 1.55;
}


.rwr-library-read {
  color: #078b4b !important;

  font-size: 11px;
  font-weight: 750;

  text-decoration: none;
}


.rwr-library-cta {
  padding:
    48px
    20px;

  border-radius: 22px;

  background: #075f38;

  color: #fff;
}


.rwr-library-cta > span {
  display: block;

  color: #ff91ad;

  font-size: 10px;
  font-weight: 800;

  text-transform: uppercase;
}


.rwr-library-cta h2 {
  margin:
    8px
    auto
    17px;

  color: #fff;

  font-family:
    "Trebuchet MS",
    "Segoe UI",
    sans-serif;

  font-size: 34px;
}


.rwr-library-cta a {
  padding:
    10px
    15px;

  display: inline-flex;

  border-radius: 999px;

  background: #e61d4f;

  color: #fff !important;

  font-size: 11px;
  font-weight: 750;

  text-decoration: none;
}


/* ==============================
   MOBILE
============================== */

@media (max-width: 700px) {

  .rwr-post-shell {
    padding-top:
      calc(
        var(--rr-header-height,70px)
        + 10px
      ) !important;
  }


  .rwr-article {
    width: calc(100% - 16px);
  }


  .rwr-article-hero {
    padding:
      38px
      14px;

    border-radius: 18px;
  }


  .rwr-article-hero h1 {
    font-size: 37px;
  }


  .rwr-article-lead,
  .rwr-quick-answer p {
    font-size: 14px;
  }


  .rwr-article-section,
  .rwr-video-section,
  .rwr-article-faq,
  .rwr-related-articles {
    padding:
      32px
      13px;

    border-radius: 18px;
  }


  .rwr-article-section h2 {
    font-size: 28px;
  }


  .rwr-article-section p {
    font-size: 14px;
  }


  .rwr-video-grid {
    grid-template-columns: 1fr;
  }


  .rwr-related-grid {
    display: flex;

    overflow-x: auto;

    gap: 8px;

    padding-bottom: 5px;

    scrollbar-width: none;
  }


  .rwr-related-grid::-webkit-scrollbar {
    display: none;
  }


  .rwr-related-grid a {
    flex: 0 0 78%;

    min-height: 105px;
  }


  .rwr-library {
    width: calc(100% - 16px);
  }


  .rwr-library-hero {
    padding:
      40px
      13px;
  }


  .rwr-library-hero h1 {
    font-size: 37px;
  }


  .rwr-library-cluster {
    padding:
      31px
      9px;
  }


  .rwr-library-grid {
    display: flex;

    overflow-x: auto;

    gap: 8px;

    padding-bottom: 5px;

    scroll-snap-type: x proximity;

    scrollbar-width: none;
  }


  .rwr-library-grid::-webkit-scrollbar {
    display: none;
  }


  .rwr-library-card {
    flex: 0 0 80%;

    scroll-snap-align: start;
  }

}


/* === RWR EDITORIAL SYSTEM END === */




/* === RWR ARTICLE IMAGES START === */

.rwr-article-image {
  width: min(100%, 980px);

  margin:
    15px
    auto;

  overflow: hidden;

  border:
    1px solid
    #dce6e0;

  border-radius:
    22px;

  background:
    #f5f3ec;

  box-shadow:
    0 10px 32px
    rgba(18,69,47,.06);
}


.rwr-article-image img {
  width: 100%;
  height: auto;

  display: block;

  object-fit: cover;

  border: 0;
}


.rwr-article-image-1 {
  width:
    min(100%, 1040px);
}


.rwr-article-image-2 {
  width:
    min(94%, 900px);
}


.rwr-article-image-3 {
  width:
    min(100%, 970px);
}


.rwr-article-image-4 {
  width:
    min(94%, 900px);
}


.rwr-article-image-5 {
  width:
    min(98%, 950px);
}


@media (hover:hover) {

  .rwr-article-image img {
    transition:
      transform .35s ease;
  }

  .rwr-article-image:hover img {
    transform:
      scale(1.008);
  }

}


@media (max-width:700px) {

  .rwr-article-image,
  .rwr-article-image-1,
  .rwr-article-image-2,
  .rwr-article-image-3,
  .rwr-article-image-4,
  .rwr-article-image-5 {

    width:
      100%;

    margin:
      9px
      auto;

    border-radius:
      16px;
  }


  .rwr-article-image img {
    width:
      100%;

    height:
      auto;

    aspect-ratio:
      auto;

    object-fit:
      contain;
  }

}


/* === RWR ARTICLE IMAGES END === */


/* === RWR DYNAMIC IMAGE SLOTS START === */

.rwr-article-image-slot {
  width:
    min(100%, 980px);

  margin:
    14px auto;

  overflow:
    hidden;

  border-radius:
    21px;

  border:
    1px solid #dce6e0;

  background:
    #f4f7f5;

  box-shadow:
    0 8px 28px
    rgba(18,69,47,.05);
}


.rwr-article-image-slot img {
  width:
    100%;

  height:
    auto;

  aspect-ratio:
    16 / 9;

  display:
    block;

  object-fit:
    cover;

  object-position:
    center;
}


.rwr-article-image-slot.rwr-article-image-missing:not(.rwr-image-admin-preview) {
  display:
    none !important;
}


.rwr-image-awaiting {
  min-height:
    220px;

  padding:
    25px;

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  background:
    linear-gradient(
      145deg,
      #f5f3ec,
      #edf6f1
    );

  color:
    #12452f;

  text-align:
    center;
}


.rwr-image-awaiting span {
  color:
    #e61d4f;

  font-size:
    11px;

  font-weight:
    800;

  text-transform:
    uppercase;

  letter-spacing:
    .07em;
}


.rwr-image-awaiting code {
  max-width:
    100%;

  padding:
    8px 11px;

  overflow-wrap:
    anywhere;

  border-radius:
    8px;

  background:
    #fff;

  color:
    #078b4b;

  font-size:
    12px;
}


@media (max-width:700px) {

  .rwr-article-image-slot {
    width:
      100%;

    margin:
      9px auto;

    border-radius:
      16px;
  }


  .rwr-article-image-slot img {
    aspect-ratio:
      4 / 3;
  }


  .rwr-image-awaiting {
    min-height:
      150px;

    padding:
      16px 10px;
  }

}

/* === RWR DYNAMIC IMAGE SLOTS END === */

