:root {
	--ry-brand: #ff6b1a;
	--ry-brand-deep: #c74300;
	--ry-ink: #11181c;
	--ry-slate: #334149;
	--ry-muted: #69767e;
	--ry-line: #dde3e6;
	--ry-fog: #f3f6f7;
	--ry-white: #fff;
	--ry-wide: 1280px;
	--ry-card-radius: 22px;
	--ry-header-height: 76px;
	--ry-shadow: 0 18px 55px rgba(17, 24, 28, .1);
	--ry-shadow-float: 0 28px 80px rgba(17, 24, 28, .2);
	--ry-ease: cubic-bezier(.2, .7, .2, 1);
}

html {
	scroll-behavior: smooth;
	overflow-x: clip;
}

body {
	margin: 0;
	overflow-x: clip;
	background: var(--ry-white);
	color: var(--ry-ink);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body,
button,
input,
select,
textarea {
	font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.wp-site-blocks {
	padding: 0;
}

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

img,
svg,
video {
	max-width: 100%;
}

img {
	height: auto;
}

a {
	text-underline-offset: .18em;
	text-decoration-thickness: .08em;
}

button,
input,
select,
textarea,
a {
	-webkit-tap-highlight-color: transparent;
}

:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--ry-brand) 78%, white);
	outline-offset: 3px;
}

::selection {
	background: var(--ry-brand);
	color: var(--ry-ink);
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.ry-skip-link {
	position: fixed;
	top: 10px;
	left: 10px;
	z-index: 10000;
	padding: 12px 18px;
	border-radius: 10px;
	background: var(--ry-white);
	color: var(--ry-ink);
	font-weight: 800;
	transform: translateY(-160%);
	transition: transform .2s var(--ry-ease);
}

.ry-skip-link:focus {
	transform: translateY(0);
}

.ry-shell {
	width: min(100%, calc(var(--ry-wide) + clamp(2rem, 6vw, 4rem)));
	margin-inline: auto;
	padding-inline: clamp(1rem, 3vw, 2rem);
}

.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	background-color: var(--ry-brand-deep);
	color: var(--ry-white);
	transition: transform .2s var(--ry-ease), background-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 24px color-mix(in srgb, var(--ry-brand) 25%, transparent);
}

/* Header */
.ry-site-header {
	position: relative;
	z-index: 100;
	width: 100%;
	margin: 0;
	background: var(--ry-white);
}

.has-atlas-sticky-header .ry-site-header {
	position: sticky;
	top: 0;
}

.admin-bar.has-atlas-sticky-header .ry-site-header {
	top: 32px;
}

.ry-announcement {
	min-height: 34px;
	margin: 0;
	padding: 0;
	background: var(--ry-ink);
	color: var(--ry-white);
}

.ry-announcement .ry-shell {
	min-height: 34px;
}

.ry-announcement__text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--ry-white);
	font-size: .75rem;
	font-weight: 750;
	letter-spacing: .02em;
	text-decoration: none;
}

.ry-announcement__text span:last-child {
	color: var(--ry-brand);
	font-size: 1rem;
	transition: transform .2s var(--ry-ease);
}

.ry-announcement__text:hover span:last-child {
	transform: translateX(4px);
}

.ry-announcement:not(:has(.ry-announcement__text)) {
	display: none;
}

.ry-header-main {
	min-height: var(--ry-header-height);
	gap: 22px;
	margin: 0 auto;
	transition: min-height .2s ease, box-shadow .2s ease;
}

.ry-site-header.is-scrolled {
	box-shadow: 0 8px 30px rgba(17, 24, 28, .09);
}

.ry-site-header.is-scrolled .ry-header-main {
	min-height: 66px;
}

.ry-brand-lockup {
	flex: 0 0 auto;
	gap: 10px;
}

.ry-brand-lockup .wp-block-site-logo img,
.ry-footer-brand .wp-block-site-logo img {
	display: block;
	width: auto;
	max-width: 220px;
	max-height: 48px;
	object-fit: contain;
}

.ry-brand-lockup .wp-block-site-title,
.ry-footer-brand .wp-block-site-title {
	margin: 0;
	font-size: 1.35rem;
	font-weight: 900;
	letter-spacing: -.045em;
}

.ry-brand-lockup .wp-block-site-title a,
.ry-footer-brand .wp-block-site-title a {
	color: inherit;
	text-decoration: none;
}

.ry-primary-nav {
	margin-left: auto;
}

.ry-primary-nav .wp-block-navigation-item__content {
	position: relative;
	padding-block: 26px;
	color: var(--ry-ink);
	text-decoration: none;
}

.ry-primary-nav .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 18px;
	left: 0;
	height: 2px;
	border-radius: 2px;
	background: var(--ry-brand);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .24s var(--ry-ease);
}

.ry-primary-nav .current-menu-item > .wp-block-navigation-item__content::after,
.ry-primary-nav .wp-block-navigation-item__content:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

.ry-primary-nav .wp-block-navigation__submenu-container {
	min-width: 235px !important;
	padding: 10px !important;
	border: 1px solid var(--ry-line) !important;
	border-radius: 14px;
	background: var(--ry-white) !important;
	box-shadow: var(--ry-shadow);
}

.ry-primary-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 10px 12px;
	border-radius: 8px;
	color: var(--ry-ink);
}

.ry-primary-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
	display: none;
}

.ry-primary-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: var(--ry-fog);
	color: var(--ry-brand-deep);
}

.ry-header-actions {
	flex: 0 0 auto;
	gap: 10px;
}

.ry-header-search {
	width: min(290px, 24vw);
	margin: 0;
	transition: width .25s ease;
}

.ry-header-search.wp-block-search__searchfield-hidden {
	width: 44px;
}

.ry-header-search .wp-block-search__inside-wrapper {
	justify-content: flex-end;
	width: 100%;
	padding: 0;
	border: 0;
	gap: 8px;
}

.ry-header-search .wp-block-search__input {
	min-width: 0;
	height: 44px;
	padding: 0 15px;
	border: 1px solid var(--ry-line);
	border-radius: 999px;
	background: var(--ry-white);
	color: var(--ry-ink);
}

.ry-header-search .wp-block-search__input:focus {
	outline: 2px solid var(--ry-brand-deep);
	outline-offset: 2px;
}

.ry-header-search .wp-block-search__button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--ry-line);
	border-radius: 50%;
	background: var(--ry-white);
	color: var(--ry-ink);
}

.ry-header-search .wp-block-search__button:hover {
	border-color: var(--ry-brand-deep);
	color: var(--ry-brand-deep);
}

.ry-header-cta {
	margin: 0;
}

.ry-header-cta .wp-block-button__link {
	min-height: 44px;
	padding-inline: 18px;
	white-space: nowrap;
}

.ry-reading-progress {
	position: absolute;
	right: 0;
	bottom: -2px;
	left: 0;
	height: 2px;
	overflow: hidden;
	pointer-events: none;
}

.ry-reading-progress__bar {
	display: block;
	width: 100%;
	height: 100%;
	background: var(--ry-brand);
	transform: scaleX(0);
	transform-origin: left;
	will-change: transform;
}

body:not(.has-atlas-reading-progress) .ry-reading-progress,
body:not(.is-atlas-singular) .ry-reading-progress {
	display: none;
}

/* Hero */
.ry-home-flow {
	display: flex;
	flex-direction: column;
}

.ry-hero {
	position: relative;
	min-height: min(780px, calc(100svh - 76px));
	margin: 0;
	padding: 0;
	overflow: hidden;
	border-radius: 0;
	background: var(--ry-ink);
}

.ry-hero .ry-hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 66% center;
}

.ry-hero .wp-block-cover__background {
	z-index: 1;
	background: linear-gradient(90deg, rgba(10, 15, 18, .9) 0%, rgba(10, 15, 18, .72) 38%, rgba(10, 15, 18, .28) 72%, rgba(10, 15, 18, .12) 100%) !important;
	opacity: 1 !important;
}

.ry-hero .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100%;
}

.ry-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(270px, .5fr);
	align-items: end;
	gap: clamp(30px, 6vw, 90px);
	min-height: min(780px, calc(100svh - 76px));
	padding-top: clamp(78px, 10vh, 130px);
	padding-bottom: clamp(54px, 8vh, 90px);
}

.ry-hero-content {
	max-width: 850px;
	margin: 0;
}

.ry-hero-kicker,
.ry-kicker {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 16px;
	color: var(--ry-brand-deep);
	font-size: .75rem;
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.ry-hero-kicker {
	color: var(--ry-brand);
}

.ry-section--ink .ry-kicker,
.ry-archive-hero .ry-kicker,
.ry-newsletter .ry-kicker {
	color: var(--ry-brand);
}

.ry-hero-kicker > span {
	display: block;
	width: 28px;
	height: 2px;
	background: currentColor;
}

.ry-hero h1 {
	max-width: 920px;
	margin: 0;
	color: var(--ry-white);
	font-size: clamp(3rem, 6.6vw, 6.45rem);
	font-weight: 880;
	letter-spacing: -.065em;
	line-height: .95;
	text-wrap: balance;
}

.ry-hero-lead {
	max-width: 670px;
	margin: 26px 0 0;
	color: rgba(255, 255, 255, .82);
	font-size: clamp(1.05rem, 1.55vw, 1.3rem);
	line-height: 1.62;
	text-wrap: pretty;
}

.ry-destination-search {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	width: min(100%, 690px);
	min-height: 66px;
	margin-top: 34px;
	padding: 7px 8px 7px 20px;
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 999px;
	background: var(--ry-white);
	box-shadow: 0 22px 60px rgba(0, 0, 0, .24);
}

.ry-search-pin {
	display: grid;
	place-items: center;
	color: var(--ry-brand-deep);
}

.ry-search-pin svg {
	width: 22px;
	height: 22px;
	fill: currentColor;
}

.ry-destination-search input {
	min-width: 0;
	height: 48px;
	padding: 0 4px;
	border: 0;
	outline: 0;
	background: transparent;
	color: var(--ry-ink);
	font-size: 1rem;
}

.ry-destination-search input::placeholder {
	color: #7a858c;
	opacity: 1;
}

.ry-destination-search button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-width: 128px;
	min-height: 50px;
	padding: 0 20px;
	border: 0;
	border-radius: 999px;
	background: var(--ry-brand-deep);
	color: var(--ry-white);
	font-size: .875rem;
	font-weight: 850;
	cursor: pointer;
	transition: background-color .2s ease, transform .2s var(--ry-ease);
}

.ry-destination-search button:hover {
	background: var(--ry-ink);
	transform: translateX(2px);
}

.ry-hero-links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin-top: 18px;
	color: rgba(255, 255, 255, .65);
	font-size: .78rem;
}

.ry-hero-links > span {
	color: rgba(255, 255, 255, .48);
	font-weight: 750;
}

.ry-hero-links a {
	padding: 5px 9px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	color: var(--ry-white);
	font-weight: 700;
	text-decoration: none;
}

.ry-hero-links a:hover {
	border-color: var(--ry-brand-deep);
	background: var(--ry-brand-deep);
}

.ry-hero-side {
	align-self: end;
	width: 100%;
	margin: 0;
}

.ry-hero-side__label {
	margin: 0 0 10px;
	color: rgba(255, 255, 255, .66);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ry-hero-spotlight {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	min-height: 112px;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: var(--ry-card-radius);
	background: rgba(17, 24, 28, .78);
	color: var(--ry-white);
	text-decoration: none;
	box-shadow: 0 20px 50px rgba(0, 0, 0, .2);
	transition: transform .22s var(--ry-ease), border-color .22s ease;
}

.ry-hero-spotlight:hover {
	transform: translateY(-4px);
	border-color: var(--ry-brand);
}

.ry-hero-spotlight__index {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--ry-brand-deep);
	font-size: .72rem;
	font-weight: 900;
}

.ry-hero-spotlight > span:nth-child(2) {
	display: grid;
	gap: 5px;
}

.ry-hero-spotlight em {
	color: rgba(255, 255, 255, .58);
	font-size: .68rem;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ry-hero-spotlight strong {
	display: -webkit-box;
	overflow: hidden;
	font-size: .95rem;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ry-hero-spotlight__arrow {
	color: var(--ry-brand);
	font-size: 1.3rem;
}

.ry-hero-metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin-top: 10px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: calc(var(--ry-card-radius) - 6px);
	background: rgba(255, 255, 255, .14);
}

.ry-hero-metrics p {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 5px;
	min-width: 0;
	margin: 0;
	padding: 12px 8px;
	background: rgba(17, 24, 28, .78);
	color: var(--ry-white);
}

.ry-hero-metrics strong {
	font-size: 1.1rem;
}

.ry-hero-metrics span {
	color: rgba(255, 255, 255, .58);
	font-size: .66rem;
}

/* Quick discovery */
.ry-quick-discovery {
	margin: 0;
	padding: 24px 0;
	border-bottom: 1px solid var(--ry-line);
	background: var(--ry-white);
}

.ry-quick-discovery > .ry-shell {
	gap: 22px;
}

.ry-quick-discovery__label {
	flex: 0 0 auto;
	margin: 0;
	font-size: .82rem;
	font-weight: 800;
	white-space: nowrap;
}

.ry-quick-discovery__label span {
	color: var(--ry-brand-deep);
}

.ry-quick-links {
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	gap: 8px;
	min-width: 0;
	margin: 0;
	padding: 0;
	overflow-x: auto;
	list-style: none;
	scrollbar-width: none;
}

.ry-quick-links::-webkit-scrollbar {
	display: none;
}

.ry-quick-links li {
	margin: 0;
}

.ry-quick-links a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 14px;
	border: 1px solid var(--ry-line);
	border-radius: 999px;
	color: var(--ry-slate);
	font-size: .78rem;
	font-weight: 750;
	text-decoration: none;
	white-space: nowrap;
	transition: border-color .2s ease, color .2s ease, background .2s ease;
}

.ry-quick-links a span {
	color: var(--ry-brand-deep);
}

.ry-quick-links a:hover {
	border-color: var(--ry-brand);
	background: color-mix(in srgb, var(--ry-brand) 8%, white);
	color: var(--ry-ink);
}

/* Sections */
.ry-home-flow > [class*="ry-home-section--"] {
	content-visibility: auto;
	contain-intrinsic-size: auto 760px;
}

.ry-section {
	margin: 0;
	padding: clamp(72px, 9vw, 116px) 0;
	background: var(--ry-white);
}

.ry-section--compact {
	padding: clamp(48px, 6vw, 76px) 0;
}

.ry-section--fog,
.ry-section--sand {
	background: var(--ry-fog);
}

.ry-section--ink {
	background: var(--ry-ink);
	color: var(--ry-white);
}

.ry-section-head {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(240px, .7fr);
	align-items: end;
	gap: clamp(25px, 6vw, 90px);
	margin: 0 0 clamp(30px, 5vw, 54px);
}

.ry-section-head h2 {
	max-width: 800px;
	margin: 0;
	font-size: clamp(2.15rem, 4.5vw, 4.4rem);
	font-weight: 870;
	letter-spacing: -.06em;
	line-height: .98;
	text-wrap: balance;
}

.ry-section-head > p {
	max-width: 470px;
	margin: 0;
	color: var(--ry-muted);
	font-size: .98rem;
	line-height: 1.7;
}

.ry-section--ink .ry-section-head h2,
.ry-section--ink .ry-section-head a {
	color: var(--ry-white);
}

.ry-section--ink .ry-section-head > p {
	color: rgba(255, 255, 255, .62);
}

.ry-link-arrow {
	margin: 0;
	font-size: .8rem;
	font-weight: 850;
	text-align: right;
}

.ry-link-arrow a {
	text-decoration: none;
}

/* Regions */
.ry-region-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.ry-region-card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 235px;
	padding: 22px;
	overflow: hidden;
	border-radius: var(--ry-card-radius);
	background-color: #35444d;
	background-image: linear-gradient(145deg, rgba(255, 255, 255, .08), rgba(0, 0, 0, .22));
	color: var(--ry-white);
	text-decoration: none;
	isolation: isolate;
	transition: transform .25s var(--ry-ease), box-shadow .25s ease;
}

.ry-region-card:first-child {
	grid-column: span 2;
}

.ry-region-card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(180deg, transparent 20%, rgba(9, 14, 17, .82) 100%);
}

.ry-region-card::after {
	content: "";
	position: absolute;
	top: -45px;
	right: -45px;
	z-index: -1;
	width: 150px;
	height: 150px;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 50%;
	box-shadow: 0 0 0 26px rgba(255, 255, 255, .04), 0 0 0 52px rgba(255, 255, 255, .025);
}

.ry-region-card:hover {
	z-index: 2;
	transform: translateY(-6px);
	box-shadow: var(--ry-shadow-float);
}

.ry-region-card--marmara,
.ry-region-card--1 { background-color: #315a69; }
.ry-region-card--ege,
.ry-region-card--2 { background-color: #1f7180; }
.ry-region-card--akdeniz,
.ry-region-card--3 { background-color: #c15b2a; }
.ry-region-card--ic-anadolu,
.ry-region-card--4 { background-color: #796649; }
.ry-region-card--karadeniz,
.ry-region-card--5 { background-color: #315f50; }
.ry-region-card--dogu-anadolu,
.ry-region-card--6 { background-color: #4b526c; }
.ry-region-card--guneydogu-anadolu,
.ry-region-card--7 { background-color: #8a5132; }

.ry-card-eyebrow,
.ry-region-card .ry-card-eyebrow {
	margin: 0 0 7px;
	color: rgba(255, 255, 255, .65);
	font-size: .67rem;
	font-weight: 850;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ry-region-card strong {
	max-width: 85%;
	font-size: clamp(1.35rem, 2vw, 2rem);
	line-height: 1.08;
}

.ry-card-arrow {
	position: absolute;
	right: 20px;
	bottom: 20px;
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 50%;
	font-size: 1rem;
	transition: background .2s ease, color .2s ease;
}

.ry-region-card:hover .ry-card-arrow {
	background: var(--ry-white);
	color: var(--ry-ink);
}

/* Destination cards */
.ry-place-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ry-place-grid--editorial {
	grid-template-columns: 1.2fr .8fr .8fr;
	grid-auto-rows: minmax(245px, auto);
}

.ry-place-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	background: var(--ry-white);
	box-shadow: 0 8px 30px rgba(17, 24, 28, .05);
	transition: transform .25s var(--ry-ease), box-shadow .25s ease, border-color .25s ease;
}

.ry-place-card:hover {
	transform: translateY(-6px);
	border-color: color-mix(in srgb, var(--ry-brand) 45%, var(--ry-line));
	box-shadow: var(--ry-shadow);
}

.ry-place-card__media {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #27343b;
}

.ry-place-card__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 58%, rgba(10, 15, 18, .22));
	pointer-events: none;
}

.ry-place-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .65s var(--ry-ease);
}

.ry-place-card:hover .ry-place-card__media img {
	transform: scale(1.045);
}

.ry-place-card__placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #26353d, #11181c);
	color: var(--ry-brand);
	font-size: 1.4rem;
	font-weight: 900;
}

.ry-place-card__body,
.ry-card-body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	padding: 20px;
}

.ry-place-card__location,
.ry-place-card__body .wp-block-post-terms,
.ry-card-body .wp-block-post-terms {
	margin: 0 0 9px;
	color: var(--ry-brand-deep);
	font-size: .68rem;
	font-weight: 850;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ry-place-card__location a,
.ry-card-body .wp-block-post-terms a {
	color: inherit;
	text-decoration: none;
}

.ry-place-card__title,
.ry-card-body .wp-block-post-title {
	margin: 0;
	font-size: clamp(1.15rem, 1.7vw, 1.55rem);
	line-height: 1.15;
}

.ry-place-card__title a,
.ry-card-body .wp-block-post-title a {
	color: var(--ry-ink);
	text-decoration: none;
}

.ry-place-card__excerpt,
.ry-place-card__body > p,
.ry-card-body .wp-block-post-excerpt {
	margin: 12px 0 0;
	color: var(--ry-muted);
	font-size: .86rem;
	line-height: 1.65;
}

.ry-place-card__excerpt p,
.ry-card-body .wp-block-post-excerpt p {
	margin: 0;
}

.ry-card-read,
.ry-card-body .wp-block-post-excerpt__more-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
	padding-top: 18px;
	color: var(--ry-ink);
	font-size: .76rem;
	font-weight: 850;
	text-decoration: none;
}

.ry-card-read span {
	color: var(--ry-brand-deep);
}

.ry-place-grid--editorial .ry-place-card:first-child {
	grid-row: span 2;
}

.ry-place-grid--editorial .ry-place-card:first-child .ry-place-card__media {
	flex: 1 1 auto;
	min-height: 390px;
	aspect-ratio: auto;
}

.ry-place-grid--editorial .ry-place-card:first-child .ry-place-card__title {
	font-size: clamp(1.6rem, 2.5vw, 2.45rem);
}

.ry-place-grid--editorial .ry-place-card:not(:first-child) {
	display: grid;
	grid-template-columns: minmax(110px, .82fr) minmax(0, 1.18fr);
}

.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__media {
	height: 100%;
	aspect-ratio: auto;
}

.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__body {
	padding: 16px;
}

.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__excerpt,
.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__body > p,
.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-card-read {
	display: none;
}

.ry-section--ink .ry-place-card {
	border-color: rgba(255, 255, 255, .12);
	background: #1a242a;
	box-shadow: none;
}

.ry-section--ink .ry-place-card__title a,
.ry-section--ink .ry-card-read {
	color: var(--ry-white);
}

.ry-section--ink .ry-place-card__excerpt,
.ry-section--ink .ry-place-card__body > p {
	color: rgba(255, 255, 255, .58);
}

/* Interests */
.ry-interest-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ry-interest-card {
	position: relative;
	min-height: 410px;
	padding: clamp(28px, 5vw, 58px);
	overflow: hidden;
	border-radius: var(--ry-card-radius);
	background: var(--ry-ink);
	color: var(--ry-white);
	isolation: isolate;
}

.ry-interest-card::after {
	position: absolute;
	right: 20px;
	bottom: -38px;
	z-index: -1;
	color: rgba(255, 255, 255, .08);
	font-size: clamp(9rem, 18vw, 15rem);
	font-weight: 900;
	letter-spacing: -.1em;
	line-height: .8;
}

.ry-interest-card--nature {
	background: linear-gradient(135deg, #173a32, #315f50);
}

.ry-interest-card--nature::after { content: "01"; }

.ry-interest-card--culture {
	background: linear-gradient(135deg, #34261e, #8a5132);
}

.ry-interest-card--culture::after { content: "02"; }

.ry-interest-card h3 {
	max-width: 420px;
	margin: 12px 0 18px;
	color: var(--ry-white);
	font-size: clamp(2.1rem, 4vw, 4.2rem);
	line-height: .98;
}

.ry-interest-card > p:not(.ry-card-eyebrow) {
	max-width: 420px;
	color: rgba(255, 255, 255, .68);
}

.ry-interest-card .wp-block-buttons {
	position: absolute;
	left: clamp(28px, 5vw, 58px);
	bottom: clamp(28px, 5vw, 50px);
}

.ry-interest-card .is-style-outline .wp-block-button__link {
	border-color: rgba(255, 255, 255, .42);
	background: transparent;
	color: var(--ry-white);
}

.ry-interest-card .is-style-outline .wp-block-button__link:hover {
	border-color: var(--ry-white);
	background: var(--ry-white);
	color: var(--ry-ink);
}

/* 81-city feature */
.ry-feature-band {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
	min-height: 430px;
	padding: clamp(34px, 6vw, 72px);
	overflow: hidden;
	border-radius: calc(var(--ry-card-radius) + 8px);
	background: var(--ry-brand-deep);
	color: var(--ry-white);
	isolation: isolate;
}

.ry-feature-band::before {
	content: "";
	position: absolute;
	inset: -45% -15% -45% 42%;
	z-index: -1;
	border: 1px solid rgba(255, 255, 255, .23);
	border-radius: 50%;
	box-shadow: 0 0 0 55px rgba(255, 255, 255, .08), 0 0 0 110px rgba(255, 255, 255, .05), 0 0 0 165px rgba(255, 255, 255, .03);
}

.ry-feature-band__copy {
	align-self: center;
	max-width: 700px;
}

.ry-feature-band .ry-hero-kicker {
	color: var(--ry-white);
}

.ry-feature-band h2 {
	max-width: 680px;
	margin: 0;
	color: var(--ry-white);
	font-size: clamp(2.4rem, 5.2vw, 5.4rem);
	line-height: .94;
}

.ry-feature-band__copy > p:not(.ry-hero-kicker) {
	max-width: 590px;
	color: rgba(255, 255, 255, .78);
}

.ry-feature-band .wp-block-button__link {
	background: var(--ry-white);
	color: var(--ry-ink);
}

.ry-feature-band__art {
	position: relative;
	min-height: 260px;
}

.ry-feature-band__art::before {
	content: "81";
	position: absolute;
	right: 0;
	bottom: -24px;
	color: rgba(17, 24, 28, .87);
	font-size: clamp(9rem, 22vw, 19rem);
	font-weight: 920;
	letter-spacing: -.12em;
	line-height: .75;
}

/* Post queries */
.ry-post-grid > .wp-block-post-template,
.ry-post-grid .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
}

.ry-post-grid .wp-block-post {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	background: var(--ry-white);
	box-shadow: 0 8px 30px rgba(17, 24, 28, .05);
	transition: transform .25s var(--ry-ease), box-shadow .25s ease;
}

.ry-post-grid .wp-block-post:hover {
	transform: translateY(-5px);
	box-shadow: var(--ry-shadow);
}

.ry-post-grid .wp-block-post-featured-image {
	margin: 0;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #e7ebed;
}

.ry-post-grid .wp-block-post-featured-image a,
.ry-post-grid .wp-block-post-featured-image img {
	display: block;
	width: 100%;
	height: 100%;
}

.ry-post-grid .wp-block-post-featured-image img {
	object-fit: cover;
	transition: transform .6s var(--ry-ease);
}

.ry-post-grid .wp-block-post:hover .wp-block-post-featured-image img {
	transform: scale(1.045);
}

.ry-post-grid .ry-card-body {
	flex: 1 1 auto;
}

.ry-post-grid--editorial .wp-block-post-template {
	grid-template-columns: 1.25fr .75fr .75fr;
}

.ry-post-grid--editorial .wp-block-post:first-child {
	grid-column: span 2;
	grid-row: span 2;
}

.ry-post-grid--editorial .wp-block-post:first-child .wp-block-post-featured-image {
	aspect-ratio: 16 / 9;
}

.ry-post-grid--editorial .wp-block-post:first-child .wp-block-post-title {
	font-size: clamp(1.7rem, 3vw, 2.8rem);
}

.ry-post-grid--editorial .wp-block-post:not(:first-child) .wp-block-post-excerpt {
	display: none;
}

.ry-pagination {
	gap: 8px;
	margin-top: 48px;
}

.ry-pagination a,
.ry-pagination .page-numbers {
	display: grid;
	place-items: center;
	min-width: 42px;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid var(--ry-line);
	border-radius: 10px;
	color: var(--ry-ink);
	text-decoration: none;
}

.ry-pagination .current,
.ry-pagination a:hover {
	border-color: var(--ry-brand);
	background: var(--ry-brand-deep);
	color: var(--ry-white);
}

.ry-no-results,
.ry-empty-state {
	padding: 34px;
	border: 1px dashed #b7c1c6;
	border-radius: var(--ry-card-radius);
	background: var(--ry-fog);
	color: var(--ry-muted);
	text-align: center;
}

/* City index */
.ry-city-links {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid #cfd7db;
	border-left: 1px solid #cfd7db;
}

.ry-city-link {
	position: relative;
	display: grid;
	gap: 12px;
	min-height: 185px;
	padding: 22px;
	border-right: 1px solid #cfd7db;
	border-bottom: 1px solid #cfd7db;
	color: var(--ry-ink);
	text-decoration: none;
	transition: background .2s ease, color .2s ease;
}

.ry-city-link > span {
	color: var(--ry-muted);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.ry-city-link strong {
	align-self: end;
	font-size: clamp(1.3rem, 2vw, 2rem);
	letter-spacing: -.035em;
}

.ry-city-link em {
	color: var(--ry-brand-deep);
	font-size: .72rem;
	font-style: normal;
	font-weight: 800;
}

.ry-city-link:hover {
	z-index: 1;
	background: var(--ry-ink);
	color: var(--ry-white);
}

.ry-city-link:hover > span,
.ry-city-link:hover em {
	color: var(--ry-brand);
}

.ry-city-grid .ry-region-card:first-child {
	grid-column: auto;
}

/* CTA */
.ry-newsletter {
	position: relative;
	gap: 30px;
	padding: clamp(38px, 6vw, 68px);
	overflow: hidden;
	border-radius: calc(var(--ry-card-radius) + 6px);
	background: linear-gradient(135deg, var(--ry-ink), #26343c);
	color: var(--ry-white);
}

.ry-newsletter::after {
	content: "";
	position: absolute;
	right: -95px;
	bottom: -160px;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	background: var(--ry-brand);
	opacity: .84;
}

.ry-newsletter > * {
	position: relative;
	z-index: 1;
}

.ry-newsletter h2 {
	max-width: 720px;
	margin: 0;
	color: var(--ry-white);
	font-size: clamp(2rem, 4vw, 4rem);
}

.ry-newsletter p:not(.ry-kicker) {
	max-width: 680px;
	color: rgba(255, 255, 255, .65);
}

.ry-newsletter .wp-block-buttons {
	margin-right: 80px;
}

/* Archive */
.ry-archive-hero {
	margin: 0;
	padding: clamp(58px, 8vw, 100px) 0;
	background: var(--ry-ink);
	color: var(--ry-white);
}

.ry-archive-hero h1 {
	max-width: 930px;
	margin: 0;
	color: var(--ry-white);
	font-size: clamp(2.7rem, 6vw, 6rem);
	line-height: .95;
}

.ry-archive-hero .wp-block-term-description,
.ry-archive-hero > .ry-shell > p {
	max-width: 720px;
	color: rgba(255, 255, 255, .65);
}

.ry-archive-hero .wp-block-search {
	max-width: 660px;
	margin-top: 28px;
}

.ry-archive-hero .wp-block-search__inside-wrapper {
	min-height: 54px;
	padding: 5px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	background: var(--ry-white);
}

.ry-archive-hero .wp-block-search__input {
	border: 0;
	background: transparent;
}

.ry-archive-hero .wp-block-search__button {
	border: 0;
	border-radius: 999px;
	background: var(--ry-brand-deep);
}

/* Articles */
.ry-article-hero {
	max-width: 1120px;
	padding-top: clamp(54px, 8vw, 105px);
	padding-bottom: clamp(32px, 5vw, 60px);
	text-align: center;
}

.ry-article-hero .ry-breadcrumbs {
	justify-content: center;
}

.ry-article-hero > .wp-block-post-terms {
	display: flex;
	justify-content: center;
	gap: 8px;
}

.ry-article-hero > .wp-block-post-terms a {
	padding: 6px 10px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--ry-brand) 10%, white);
	color: var(--ry-brand-deep);
	text-decoration: none;
}

.ry-article-hero .wp-block-post-title {
	max-width: 1050px;
	margin: 15px auto 0;
	font-size: clamp(2.8rem, 6.4vw, 6.1rem);
	line-height: .96;
	text-wrap: balance;
}

.ry-article-deck {
	max-width: 790px;
	margin: 24px auto 0;
	color: var(--ry-muted);
	font-size: clamp(1.05rem, 1.8vw, 1.32rem);
	line-height: 1.65;
}

.ry-article-deck p {
	margin: 0;
}

.ry-meta-row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px 12px;
	margin-top: 24px;
	color: var(--ry-muted);
	font-size: .78rem;
	font-weight: 700;
}

.ry-meta-row a {
	color: inherit;
}

.ry-meta-row > * {
	margin: 0;
}

.ry-meta-label {
	color: var(--ry-brand-deep);
	font-size: .66rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ry-meta-chip {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 7px 10px;
	border: 1px solid var(--ry-line);
	border-radius: 999px;
	background: var(--ry-white);
}

.ry-article-image {
	width: min(calc(100% - 2rem), var(--ry-wide));
	margin: 0 auto;
	overflow: hidden;
	border-radius: calc(var(--ry-card-radius) + 6px);
	background: #e7ebed;
}

.ry-article-image img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.ry-article-layout {
	display: grid;
	grid-template-columns: minmax(0, 760px) minmax(240px, 300px);
	justify-content: center;
	gap: clamp(36px, 7vw, 90px);
	padding-top: clamp(48px, 7vw, 86px);
	padding-bottom: clamp(48px, 6vw, 76px);
}

.ry-article-content {
	min-width: 0;
	color: #263238;
	font-size: 1.09rem;
	line-height: 1.82;
}

.ry-article-content > :first-child {
	margin-top: 0;
}

.ry-article-content h2,
.ry-article-content h3 {
	scroll-margin-top: 120px;
	color: var(--ry-ink);
}

.ry-article-content h2 {
	margin-top: 2.4em;
	font-size: clamp(1.8rem, 3.2vw, 2.7rem);
}

.ry-article-content h3 {
	margin-top: 2em;
	font-size: clamp(1.35rem, 2.2vw, 1.8rem);
}

.ry-article-content a {
	font-weight: 650;
}

.ry-article-content figure {
	margin-block: 2.2rem;
}

.ry-article-content img {
	border-radius: var(--ry-card-radius);
}

.ry-article-content blockquote {
	margin: 2.2rem 0;
	padding: 1.3rem 0 1.3rem 1.6rem;
	border-left: 4px solid var(--ry-brand);
	color: var(--ry-slate);
	font-size: 1.2rem;
}

.ry-article-content .wp-block-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.ry-article-content table {
	width: 100%;
	border-collapse: collapse;
	font-size: .92rem;
}

.ry-article-content th,
.ry-article-content td {
	padding: 12px;
	border: 1px solid var(--ry-line);
	text-align: left;
}

.ry-article-content th {
	background: var(--ry-fog);
}

.ry-article-sidebar {
	align-self: start;
	position: sticky;
	top: 112px;
}

.ry-breadcrumbs {
	display: flex;
	margin-bottom: 22px;
	color: var(--ry-muted);
	font-size: .72rem;
	font-weight: 700;
}

.ry-breadcrumbs ol {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ry-breadcrumbs li:not(:last-child)::after {
	content: "/";
	margin-left: 7px;
	color: #b0b8bd;
}

.ry-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.ry-breadcrumbs a:hover {
	color: var(--ry-brand-deep);
}

.ry-toc,
.ry-info-card {
	padding: 22px;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	background: var(--ry-fog);
}

.ry-toc h3,
.ry-info-card h3 {
	margin: 0 0 15px;
	font-size: 1rem;
}

.ry-toc ol {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: atlas-toc;
}

.ry-toc li {
	position: relative;
	padding-left: 25px;
	counter-increment: atlas-toc;
}

.ry-toc li::before {
	content: counter(atlas-toc, decimal-leading-zero);
	position: absolute;
	top: .1em;
	left: 0;
	color: var(--ry-brand-deep);
	font-size: .64rem;
	font-weight: 850;
}

.ry-toc a {
	color: var(--ry-slate);
	font-size: .78rem;
	line-height: 1.45;
	text-decoration: none;
}

.ry-toc a:hover {
	color: var(--ry-brand-deep);
}

.ry-toc .ry-toc-level-3 {
	margin-left: 12px;
}

.ry-info-list {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ry-info-list li {
	display: grid;
	gap: 3px;
	padding: 11px 0;
	border-top: 1px solid var(--ry-line);
}

.ry-info-list span {
	color: var(--ry-muted);
	font-size: .68rem;
	font-weight: 750;
	text-transform: uppercase;
}

.ry-info-list strong {
	font-size: .82rem;
	line-height: 1.45;
}

.ry-map {
	margin-top: 50px;
}

.ry-map-frame {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: var(--ry-card-radius);
	background: var(--ry-fog);
}

.ry-ad-slot {
	width: min(100%, 970px);
	min-height: 1px;
	margin: 28px auto;
	text-align: center;
}

.ry-author-wrap {
	max-width: 760px;
	padding-bottom: 26px;
}

.ry-author-card.wp-block-post-author {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 4px 18px;
	margin: 0;
	padding: 24px;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	background: var(--ry-fog);
}

.ry-author-card .wp-block-post-author__avatar {
	grid-row: span 3;
}

.ry-author-card .wp-block-post-author__avatar img {
	border-radius: 50%;
}

.ry-author-card .wp-block-post-author__byline,
.ry-author-card .wp-block-post-author__name,
.ry-author-card .wp-block-post-author__bio {
	margin: 0;
}

.ry-author-card .wp-block-post-author__byline {
	color: var(--ry-brand-deep);
	font-size: .67rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ry-author-card .wp-block-post-author__name {
	font-size: 1.08rem;
	font-weight: 850;
}

.ry-author-card .wp-block-post-author__bio {
	color: var(--ry-muted);
	font-size: .84rem;
	line-height: 1.6;
}

.ry-ad-after-hero:empty,
.ry-ad-before-footer:empty {
	display: none;
}

/* Footer */
.ry-site-footer {
	margin: 0;
	padding: clamp(60px, 8vw, 100px) 0 22px;
	background: var(--ry-ink);
	color: rgba(255, 255, 255, .68);
}

.ry-footer-lead {
	align-items: end;
	gap: 35px;
	padding-bottom: clamp(45px, 7vw, 75px);
	border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.ry-footer-lead h2 {
	max-width: 850px;
	margin: 0;
	color: var(--ry-white);
	font-size: clamp(2.7rem, 6.2vw, 6.2rem);
	line-height: .92;
}

.ry-footer-lead h2 em {
	color: var(--ry-brand);
	font-style: normal;
}

.ry-footer-lead > p {
	max-width: 360px;
	margin: 0;
	font-size: .92rem;
	line-height: 1.7;
}

.ry-footer-grid {
	display: grid;
	grid-template-columns: 1.5fr repeat(3, minmax(130px, .7fr));
	gap: clamp(30px, 6vw, 78px);
	padding-top: clamp(40px, 6vw, 65px);
	padding-bottom: clamp(40px, 6vw, 65px);
}

.ry-footer-brand {
	max-width: 330px;
}

.ry-footer-brand .wp-block-site-title,
.ry-footer-brand .wp-block-site-title a {
	color: var(--ry-white);
}

.ry-footer-title {
	margin: 0 0 17px;
	color: var(--ry-white);
	font-size: .78rem;
	font-weight: 850;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ry-footer-links {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ry-footer-links li {
	margin: 0;
}

.ry-footer-links a {
	color: rgba(255, 255, 255, .62);
	font-size: .82rem;
	text-decoration: none;
}

.ry-footer-links a:hover {
	color: var(--ry-brand);
}

.ry-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}

.ry-social-links a {
	display: inline-flex;
	gap: 6px;
	padding: 7px 10px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 999px;
	color: var(--ry-white);
	font-size: .7rem;
	text-decoration: none;
}

.ry-social-links a span {
	color: var(--ry-brand);
}

.ry-footer-bottom {
	gap: 18px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, .14);
	font-size: .7rem;
}

.ry-footer-bottom p {
	margin: 0;
}

.ry-footer-bottom a {
	color: var(--ry-white);
	text-decoration: none;
}

.ry-footer-bottom span {
	color: var(--ry-brand);
}

.ry-mobile-dock {
	display: none;
}

/* Mobile navigation */
.wp-block-navigation__responsive-container.is-menu-open {
	padding: 24px;
	background: var(--ry-ink) !important;
	color: var(--ry-white) !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	top: 22px;
	right: 22px;
	color: var(--ry-white);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch !important;
	width: 100%;
	gap: 0 !important;
	margin-top: 70px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	width: 100%;
	padding: 14px 0;
	color: var(--ry-white);
	font-size: 1.12rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	padding: 0 0 14px 16px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none;
}

@media (max-width: 1120px) {
	.ry-primary-nav { display: flex; }
	.ry-primary-nav > .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
	.ry-primary-nav .wp-block-navigation__responsive-container-open { display: flex !important; }
	.ry-header-main { justify-content: space-between; }
	.ry-header-actions { margin-left: auto; }
	.ry-hero-grid { grid-template-columns: minmax(0, 1fr) 290px; }
	.ry-place-grid--editorial { grid-template-columns: 1fr 1fr; }
	.ry-place-grid--editorial .ry-place-card:first-child { grid-column: span 2; grid-row: auto; }
	.ry-place-grid--editorial .ry-place-card:first-child .ry-place-card__media { min-height: 390px; }
	.ry-post-grid--editorial .wp-block-post-template { grid-template-columns: 1fr 1fr; }
	.ry-post-grid--editorial .wp-block-post:first-child { grid-column: span 2; grid-row: auto; }
	.ry-footer-grid { grid-template-columns: 1.3fr repeat(3, 1fr); }
}

@media (max-width: 782px) {
	:root {
		--ry-header-height: 64px;
		--ry-card-radius: 22px;
	}

	.admin-bar.has-atlas-sticky-header .ry-site-header { top: 46px; }
	.ry-announcement { display: none; }
	.ry-header-main { min-height: 64px; gap: 10px; }
	.ry-site-header.is-scrolled .ry-header-main { min-height: 58px; }
	.ry-brand-lockup .wp-block-site-logo img { max-width: 170px; max-height: 40px; }
	.ry-brand-lockup .wp-block-site-title { font-size: 1.08rem; }
	.ry-header-cta { display: none; }
	.ry-header-search { display: none; }
	.ry-primary-nav { display: flex; margin-left: auto; }
	.ry-primary-nav .wp-block-navigation__responsive-container-open { display: flex; }

	.ry-hero,
	.ry-hero-grid {
		min-height: min(680px, calc(100svh - 58px)) !important;
	}

	.ry-hero .ry-hero-image { object-position: 68% center; }
	.ry-hero .wp-block-cover__background {
		background: linear-gradient(180deg, rgba(10, 15, 18, .34) 0%, rgba(10, 15, 18, .68) 45%, rgba(10, 15, 18, .94) 100%) !important;
	}

	.ry-hero-grid {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: stretch;
		gap: 18px;
		padding-top: 90px;
		padding-bottom: 26px;
	}

	.ry-hero-content { max-width: 100%; }
	.ry-hero-kicker { margin-bottom: 12px; font-size: .66rem; }
	.ry-hero h1 { max-width: 620px; font-size: clamp(2.75rem, 12vw, 4.5rem); line-height: .96; }
	.ry-hero-lead { margin-top: 16px; font-size: .97rem; line-height: 1.55; }
	.ry-destination-search {
		grid-template-columns: 24px minmax(0, 1fr) auto;
		min-height: 58px;
		margin-top: 22px;
		padding: 5px 5px 5px 15px;
	}
	.ry-destination-search input { height: 46px; font-size: .92rem; }
	.ry-destination-search button { min-width: 50px; min-height: 48px; padding: 0 15px; font-size: 0; }
	.ry-destination-search button span { font-size: 1.15rem; }
	.ry-hero-links { flex-wrap: nowrap; margin-top: 13px; padding-bottom: 4px; overflow-x: auto; scrollbar-width: none; }
	.ry-hero-links::-webkit-scrollbar { display: none; }
	.ry-hero-links > span { flex: 0 0 auto; }
	.ry-hero-links a { flex: 0 0 auto; }
	.ry-hero-side { display: none; }

	.ry-quick-discovery { padding: 16px 0; }
	.ry-quick-discovery > .ry-shell { display: block; }
	.ry-quick-discovery__label { margin-bottom: 10px; }
	.ry-quick-links { margin-right: -1rem; padding-right: 1rem; scroll-snap-type: x proximity; }
	.ry-quick-links li { scroll-snap-align: start; }

	.ry-section { padding: 68px 0; }
	.ry-section--compact { padding: 42px 0; }
	.ry-section-head { grid-template-columns: 1fr; gap: 14px; margin-bottom: 28px; }
	.ry-section-head h2 { font-size: clamp(2rem, 10vw, 3rem); line-height: 1; }
	.ry-section-head > p { font-size: .9rem; }
	.ry-link-arrow { text-align: left; }

	.ry-region-grid {
		display: flex;
		gap: 12px;
		margin-right: -1rem;
		padding-right: 1rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.ry-region-grid::-webkit-scrollbar { display: none; }
	.ry-region-card,
	.ry-region-card:first-child {
		flex: 0 0 min(78vw, 330px);
		min-height: 300px;
		grid-column: auto;
		scroll-snap-align: start;
	}

	.ry-place-grid,
	.ry-place-grid--editorial,
	.ry-place-grid--related {
		display: flex;
		gap: 13px;
		margin-right: -1rem;
		padding-right: 1rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.ry-place-grid::-webkit-scrollbar { display: none; }
	.ry-place-grid .ry-place-card,
	.ry-place-grid--editorial .ry-place-card:first-child,
	.ry-place-grid--editorial .ry-place-card:not(:first-child) {
		display: flex;
		flex: 0 0 min(84vw, 350px);
		grid-column: auto;
		grid-row: auto;
		scroll-snap-align: start;
	}
	.ry-place-grid--editorial .ry-place-card:first-child .ry-place-card__media,
	.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__media {
		flex: none;
		height: auto;
		min-height: 0;
		aspect-ratio: 4 / 3;
	}
	.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__body { padding: 20px; }
	.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__excerpt,
	.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-place-card__body > p,
	.ry-place-grid--editorial .ry-place-card:not(:first-child) .ry-card-read { display: block; }

	.ry-interest-grid { grid-template-columns: 1fr; }
	.ry-interest-card { min-height: 370px; }
	.ry-feature-band { grid-template-columns: 1fr; min-height: 580px; }
	.ry-feature-band__art { min-height: 190px; }
	.ry-feature-band__art::before { right: -12px; font-size: min(54vw, 15rem); }

	.ry-post-grid > .wp-block-post-template,
	.ry-post-grid .wp-block-post-template,
	.ry-post-grid--editorial .wp-block-post-template {
		grid-template-columns: 1fr 1fr;
		gap: 12px;
	}
	.ry-post-grid--editorial .wp-block-post:first-child { grid-column: span 2; }
	.ry-post-grid .ry-card-body { padding: 15px; }
	.ry-post-grid .wp-block-post-title { font-size: 1rem; }
	.ry-post-grid .wp-block-post-excerpt { display: none; }
	.ry-post-grid--editorial .wp-block-post:first-child .wp-block-post-title { font-size: 1.55rem; }

	.ry-city-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ry-city-link { min-height: 150px; padding: 17px; }
	.ry-newsletter { align-items: flex-start !important; }
	.ry-newsletter .wp-block-buttons { margin: 0; }

	.ry-archive-hero { padding: 54px 0; }
	.ry-archive-hero h1 { font-size: clamp(2.55rem, 12vw, 4.2rem); }
	.ry-article-hero { padding-top: 48px; text-align: left; }
	.ry-article-hero .ry-breadcrumbs,
	.ry-article-hero > .wp-block-post-terms,
	.ry-article-hero .ry-meta-row { justify-content: flex-start; }
	.ry-article-hero .wp-block-post-title { margin-left: 0; font-size: clamp(2.55rem, 11vw, 4rem); }
	.ry-article-deck { margin-left: 0; font-size: 1.02rem; }
	.ry-article-image { width: calc(100% - 2rem); border-radius: var(--ry-card-radius); }
	.ry-article-layout { grid-template-columns: 1fr; gap: 26px; padding-top: 42px; }
	.ry-article-sidebar { position: static; grid-row: 1; }
	.ry-article-content { font-size: 1.035rem; line-height: 1.78; }
	.ry-toc { padding: 18px; }

	.ry-footer-lead { align-items: flex-start; }
	.ry-footer-grid { grid-template-columns: 1fr 1fr; }
	.ry-footer-brand { grid-column: span 2; max-width: 520px; }
	.ry-footer-bottom { align-items: flex-start; flex-direction: column; }

	.has-atlas-mobile-dock { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
	.has-atlas-mobile-dock .ry-mobile-dock {
		position: fixed;
		right: 10px;
		bottom: calc(8px + env(safe-area-inset-bottom));
		left: 10px;
		z-index: 120;
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		min-height: 62px;
		padding: 6px;
		border: 1px solid rgba(255, 255, 255, .16);
		border-radius: 18px;
		background: rgba(17, 24, 28, .96);
		box-shadow: 0 16px 45px rgba(0, 0, 0, .3);
	}
	.ry-mobile-dock a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 0;
		border-radius: 12px;
		color: rgba(255, 255, 255, .72);
		font-size: .62rem;
		font-weight: 750;
		text-decoration: none;
	}
	.ry-mobile-dock a:hover,
	.ry-mobile-dock a:focus-visible { color: var(--ry-white); background: rgba(255, 255, 255, .08); }
	.ry-mobile-dock svg {
		width: 20px;
		height: 20px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
	}
	.ry-mobile-dock__main { color: var(--ry-brand) !important; }
	.ry-mobile-dock__main svg { fill: color-mix(in srgb, var(--ry-brand) 22%, transparent); }
}

@media (max-width: 520px) {
	.ry-shell { padding-inline: 1rem; }
	.ry-hero-grid { padding-bottom: 22px; }
	.ry-hero h1 { letter-spacing: -.055em; }
	.ry-post-grid > .wp-block-post-template,
	.ry-post-grid .wp-block-post-template { grid-template-columns: 1fr; }
	.ry-post-grid--editorial .wp-block-post-template { grid-template-columns: 1fr 1fr; }
	.ry-post-grid--editorial .wp-block-post:first-child { grid-column: span 2; }
	.ry-post-grid--editorial .wp-block-post:not(:first-child) .wp-block-post-title { font-size: .95rem; }
	.ry-footer-grid { grid-template-columns: 1fr 1fr; gap: 34px 20px; }
}

@media (max-width: 380px) {
	.ry-brand-lockup .wp-block-site-logo img { max-width: 145px; }
	.ry-brand-lockup .wp-block-site-title { font-size: .96rem; }
	.ry-hero h1 { font-size: 2.55rem; }
	.ry-city-links { grid-template-columns: 1fr; }
	.ry-footer-grid { grid-template-columns: 1fr; }
	.ry-footer-brand { grid-column: auto; }
}

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

@media print {
	.ry-site-header,
	.ry-site-footer,
	.ry-mobile-dock,
	.ry-article-sidebar,
	.ry-ad-slot,
	.ry-reading-progress {
		display: none !important;
	}
	.ry-article-layout {
		display: block;
		padding: 0;
	}
	.ry-article-content {
		max-width: none;
		color: #000;
		font-size: 11pt;
	}
	a {
		color: #000;
		text-decoration: underline;
	}
}

/* Atlas 2.1 panel presentation ------------------------------------------------ */
:root {
	--ry-copy: #38444b;
	--ry-article-width: 760px;
	--ry-base-size: 17px;
	--ry-font-display: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ry-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ry-hero-height: 700px;
	--ry-hero-overlay: .54;
	--ry-archive-columns: 3;
}

body {
	color: var(--ry-copy);
	font-family: var(--ry-font-body);
	font-size: var(--ry-base-size);
}

button,
input,
select,
textarea {
	font-family: var(--ry-font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-post-title {
	font-family: var(--ry-font-display);
}

.ry-hero {
	min-height: min(var(--ry-hero-height), calc(100svh - var(--ry-header-height)));
}

.ry-hero > .wp-block-cover__background {
	opacity: var(--ry-hero-overlay);
}

.ry-interest-card--nature {
	background: linear-gradient(135deg, #173a32, #315f50);
}

.ry-interest-card--culture {
	background: linear-gradient(135deg, #34261e, #8a5132);
}

.ry-interest-card__image {
	position: absolute;
	inset: 0;
	z-index: -3;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ry-interest-card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -2;
}

.ry-interest-card--nature::before {
	background: linear-gradient(135deg, rgba(12, 45, 37, .94), rgba(28, 72, 58, .75));
}

.ry-interest-card--culture::before {
	background: linear-gradient(135deg, rgba(52, 38, 30, .94), rgba(105, 57, 31, .72));
}

/* Panel-managed header */
.ry-header-main--panel {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
}

.ry-panel-brand {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
	color: var(--ry-ink);
	font-weight: 900;
	letter-spacing: -.045em;
	line-height: 1;
	text-decoration: none;
}

.ry-panel-brand picture {
	display: contents;
}

.ry-panel-logo {
	display: block;
	width: auto;
	max-width: 220px;
	max-height: 48px;
	object-fit: contain;
}

.ry-panel-brand__name {
	font-size: 1.25rem;
	white-space: nowrap;
}

.ry-panel-nav {
	justify-self: end;
	min-width: 0;
	margin-left: auto;
}

.ry-menu-toggle {
	display: none;
}

.ry-panel-menu,
.ry-panel-submenu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ry-panel-menu {
	display: flex;
	align-items: stretch;
	gap: clamp(16px, 2vw, 28px);
}

.ry-panel-menu > li {
	position: relative;
}

.ry-menu-item-row {
	display: flex;
	align-items: center;
}

.ry-panel-menu > li > .ry-menu-item-row > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: var(--ry-header-height);
	color: var(--ry-ink);
	font-size: .83rem;
	font-weight: 760;
	text-decoration: none;
	white-space: nowrap;
}

.ry-panel-menu > li > .ry-menu-item-row > a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 18px;
	left: 0;
	height: 2px;
	border-radius: 2px;
	background: var(--ry-brand);
	transform: scaleX(0);
	transition: transform .2s var(--ry-ease);
}

.ry-panel-menu > li:hover > .ry-menu-item-row > a::after,
.ry-panel-menu > li:focus-within > .ry-menu-item-row > a::after {
	transform: scaleX(1);
}

.ry-submenu-toggle {
	display: grid;
	place-items: center;
	width: 24px;
	height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ry-muted);
	cursor: pointer;
}

.ry-submenu-toggle svg {
	width: 10px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
}

.ry-panel-submenu {
	position: absolute;
	top: calc(100% - 8px);
	left: -16px;
	z-index: 8;
	visibility: hidden;
	width: max-content;
	min-width: 230px;
	padding: 10px;
	border: 1px solid var(--ry-line);
	border-radius: 14px;
	background: var(--ry-white);
	box-shadow: var(--ry-shadow);
	opacity: 0;
	transform: translateY(7px);
	transition: opacity .16s ease, transform .16s ease, visibility .16s;
}

.ry-panel-menu > li:hover > .ry-panel-submenu,
.ry-panel-menu > li:focus-within > .ry-panel-submenu,
.ry-panel-menu > li.is-open > .ry-panel-submenu {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}

.ry-panel-submenu a {
	display: block;
	padding: 10px 12px;
	border-radius: 8px;
	color: var(--ry-ink);
	font-size: .8rem;
	font-weight: 700;
	text-decoration: none;
}

.ry-panel-submenu a:hover,
.ry-panel-submenu a:focus-visible {
	background: var(--ry-fog);
	color: var(--ry-brand-deep);
}

.ry-header-actions--panel {
	display: flex;
	align-items: center;
	margin-left: 20px;
}

.ry-header-search-button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--ry-line);
	border-radius: 50%;
	background: var(--ry-white);
	color: var(--ry-ink);
	cursor: pointer;
	text-decoration: none;
}

.ry-header-search-button:hover {
	border-color: var(--ry-brand-deep);
	color: var(--ry-brand-deep);
}

.ry-header-search-button svg,
.ry-menu-toggle svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.ry-header-panel-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	background: var(--ry-brand-deep);
	color: var(--ry-white);
	font-size: .78rem;
	font-weight: 820;
	text-decoration: none;
	white-space: nowrap;
}

.ry-header-panel-cta:hover {
	background: var(--ry-ink);
}

.ry-search-overlay[hidden] {
	display: none !important;
}

.ry-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: grid;
	place-items: start center;
	padding: clamp(80px, 14vh, 150px) 18px 30px;
	opacity: 0;
	transition: opacity .16s ease;
}

.ry-search-overlay.is-open {
	opacity: 1;
}

.ry-search-overlay__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	background: rgba(10, 15, 18, .8);
	backdrop-filter: blur(8px);
	cursor: default;
}

.ry-search-overlay__panel {
	position: relative;
	z-index: 1;
	width: min(100%, 760px);
	padding: clamp(28px, 5vw, 52px);
	border-radius: calc(var(--ry-card-radius) + 6px);
	background: var(--ry-white);
	box-shadow: var(--ry-shadow-float);
	transform: translateY(-10px);
	transition: transform .18s var(--ry-ease);
}

.ry-search-overlay.is-open .ry-search-overlay__panel {
	transform: translateY(0);
}

.ry-search-overlay__close {
	position: absolute;
	top: 14px;
	right: 14px;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid var(--ry-line);
	border-radius: 50%;
	background: transparent;
	color: var(--ry-ink);
	font-size: 1.7rem;
	cursor: pointer;
}

.ry-search-overlay h2 {
	max-width: 620px;
	margin: 0 0 26px;
	color: var(--ry-ink);
	font-size: clamp(2rem, 6vw, 4rem);
	line-height: .98;
}

.ry-search-overlay form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

.ry-search-overlay input {
	min-width: 0;
	height: 58px;
	padding: 0 18px;
	border: 1px solid var(--ry-line);
	border-radius: 999px;
	background: var(--ry-fog);
	color: var(--ry-ink);
	font-size: 1rem;
}

.ry-search-overlay form button {
	min-width: 110px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: var(--ry-brand-deep);
	color: var(--ry-white);
	font-weight: 820;
	cursor: pointer;
}

.has-atlas-search-open,
.has-atlas-menu-open {
	overflow: hidden;
}

/* Panel-managed footer */
.ry-site-footer--panel .ry-footer-lead,
.ry-site-footer--panel .ry-footer-bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	flex-wrap: wrap;
}

.ry-site-footer--panel .ry-panel-brand {
	color: var(--ry-white);
}

.ry-site-footer--panel .ry-panel-logo {
	max-width: 220px;
	max-height: 56px;
}

.ry-site-footer--panel .ry-footer-brand > p {
	margin: 20px 0 0;
	font-size: .82rem;
	line-height: 1.65;
}

/* Fuller article reading experience */
.ry-article-main {
	background: linear-gradient(180deg, #f7f9f9 0, var(--ry-white) 520px);
}

.ry-article-hero {
	max-width: 1040px;
	padding-top: clamp(48px, 7vw, 90px);
	padding-bottom: clamp(30px, 4vw, 48px);
	text-align: left;
}

.ry-article-hero .ry-breadcrumbs {
	justify-content: flex-start;
	margin-bottom: 26px;
}

.ry-article-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 31px;
	padding: 0 11px;
	border: 1px solid color-mix(in srgb, var(--ry-brand) 28%, var(--ry-line));
	border-radius: 999px;
	background: color-mix(in srgb, var(--ry-brand) 9%, white);
	color: var(--ry-brand-deep);
	font-size: .68rem;
	font-weight: 850;
	letter-spacing: .1em;
	text-decoration: none;
	text-transform: uppercase;
}

.ry-article-hero .wp-block-post-title {
	max-width: 980px;
	margin: 17px 0 0;
	color: var(--ry-ink);
	font-size: clamp(2.75rem, 5.4vw, 5.2rem);
	line-height: .98;
}

.ry-article-deck {
	max-width: 800px;
	margin: 23px 0 0;
	color: var(--ry-muted);
	font-size: clamp(1.04rem, 1.6vw, 1.25rem);
	line-height: 1.66;
}

.ry-article-meta {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0;
	margin-top: 25px;
}

.ry-article-meta > span {
	display: grid;
	gap: 3px;
	min-width: 125px;
	padding: 0 20px;
	border-left: 1px solid var(--ry-line);
	color: var(--ry-slate);
	font-size: .78rem;
	font-weight: 720;
}

.ry-article-meta > span:first-child {
	padding-left: 0;
	border-left: 0;
}

.ry-article-meta small {
	color: var(--ry-muted);
	font-size: .62rem;
	font-weight: 820;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ry-article-meta a {
	color: inherit;
}

.ry-article-image {
	box-shadow: 0 22px 60px rgba(17, 24, 28, .11);
}

.no-atlas-article-featured .ry-article-image,
.no-atlas-article-excerpt .ry-article-deck,
.no-atlas-article-category .ry-article-kicker,
.no-atlas-article-category .ry-article-hero > .wp-block-post-terms {
	display: none !important;
}

.ry-article-layout {
	grid-template-columns: minmax(0, var(--ry-article-width)) minmax(280px, 330px);
	align-items: start;
	gap: clamp(38px, 5vw, 72px);
	padding-top: clamp(42px, 6vw, 76px);
	padding-bottom: clamp(44px, 6vw, 78px);
}

.ry-article-content-stack {
	min-width: 0;
	max-width: var(--ry-article-width);
}

.ry-article-content {
	max-width: var(--ry-article-width);
	color: var(--ry-copy);
	font-size: clamp(1.02rem, 1.2vw, 1.1rem);
	line-height: 1.84;
}

.has-atlas-drop-cap .ry-article-content > p:first-of-type::first-letter {
	float: left;
	margin: .08em .12em 0 0;
	color: var(--ry-brand-deep);
	font-family: var(--ry-font-display);
	font-size: 4.4em;
	font-weight: 850;
	line-height: .76;
}

.atlas-article-sidebar-left .ry-article-content-stack {
	grid-column: 2;
}

.atlas-article-sidebar-left .ry-article-sidebar {
	grid-column: 1;
	grid-row: 1;
}

.atlas-article-no-sidebar .ry-article-layout,
.atlas-article-wide .ry-article-layout {
	grid-template-columns: minmax(0, 1fr);
}

.ry-article-layout:not(:has(.ry-article-sidebar)) {
	grid-template-columns: minmax(0, 1fr);
}

body:not(.atlas-article-wide) .ry-article-layout:not(:has(.ry-article-sidebar)) .ry-article-content-stack {
	width: min(100%, var(--ry-article-width));
	margin-inline: auto;
}

.atlas-article-no-sidebar .ry-article-content-stack {
	width: min(100%, var(--ry-article-width));
	margin-inline: auto;
}

.atlas-article-wide .ry-article-content-stack,
.atlas-article-wide .ry-article-content {
	width: 100%;
	max-width: 980px;
	margin-inline: auto;
}

.ry-article-share {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0 0 30px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--ry-line);
}

.ry-article-share strong {
	margin-right: 6px;
	color: var(--ry-ink);
	font-size: .72rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ry-article-share a,
.ry-article-share button {
	display: inline-flex;
	align-items: center;
	min-height: 35px;
	padding: 0 11px;
	border: 1px solid var(--ry-line);
	border-radius: 999px;
	background: var(--ry-white);
	color: var(--ry-slate);
	font-size: .68rem;
	font-weight: 760;
	text-decoration: none;
	cursor: pointer;
}

.ry-article-share a:hover,
.ry-article-share button:hover {
	border-color: var(--ry-brand);
	color: var(--ry-brand-deep);
}

.ry-article-sidebar--panel {
	display: grid;
	gap: 16px;
	width: 100%;
}

.ry-sidebar-card,
.ry-article-sidebar--panel > .ry-info-card,
.ry-article-sidebar--panel > .ry-toc {
	padding: 22px;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	background: var(--ry-white);
	box-shadow: 0 12px 34px rgba(17, 24, 28, .055);
}

.ry-sidebar-card--toc > .ry-toc {
	padding: 0;
	border: 0;
	background: transparent;
}

.ry-sidebar-eyebrow,
.ry-sidebar-cta > span {
	color: var(--ry-brand-deep);
	font-size: .62rem;
	font-weight: 850;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ry-sidebar-latest h2,
.ry-sidebar-cta h2 {
	margin: 7px 0 15px;
	color: var(--ry-ink);
	font-size: 1.25rem;
	line-height: 1.1;
}

.ry-sidebar-latest ol {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: atlas-latest;
}

.ry-sidebar-latest li {
	counter-increment: atlas-latest;
}

.ry-sidebar-latest li + li {
	border-top: 1px solid var(--ry-line);
}

.ry-sidebar-latest a {
	position: relative;
	display: grid;
	gap: 4px;
	padding: 12px 0 12px 30px;
	color: var(--ry-ink);
	text-decoration: none;
}

.ry-sidebar-latest a::before {
	content: counter(atlas-latest, decimal-leading-zero);
	position: absolute;
	top: 14px;
	left: 0;
	color: var(--ry-brand-deep);
	font-size: .62rem;
	font-weight: 850;
}

.ry-sidebar-latest strong {
	display: -webkit-box;
	overflow: hidden;
	font-size: .78rem;
	line-height: 1.45;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ry-sidebar-latest time {
	color: var(--ry-muted);
	font-size: .62rem;
}

.ry-sidebar-cta {
	position: relative;
	overflow: hidden;
	border-color: transparent;
	background: var(--ry-ink);
	color: rgba(255, 255, 255, .7);
}

.ry-sidebar-cta::after {
	content: "";
	position: absolute;
	right: -60px;
	bottom: -65px;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: var(--ry-brand);
	opacity: .18;
}

.ry-sidebar-cta > * {
	position: relative;
	z-index: 1;
}

.ry-sidebar-cta h2 {
	color: var(--ry-white);
}

.ry-sidebar-cta p {
	font-size: .78rem;
	line-height: 1.6;
}

.ry-sidebar-cta > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 4px;
	color: var(--ry-brand);
	font-size: .72rem;
	font-weight: 820;
	text-decoration: none;
}

.ry-author-wrap {
	max-width: var(--ry-article-width);
}

.ry-post-navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	max-width: 1040px;
	padding-top: 12px;
	padding-bottom: clamp(50px, 7vw, 80px);
}

.ry-post-navigation a {
	display: grid;
	gap: 8px;
	min-height: 120px;
	padding: 22px;
	border: 1px solid var(--ry-line);
	border-radius: var(--ry-card-radius);
	color: var(--ry-ink);
	text-decoration: none;
	transition: border-color .2s ease, transform .2s var(--ry-ease);
}

.ry-post-navigation a:hover {
	border-color: var(--ry-brand);
	transform: translateY(-3px);
}

.ry-post-navigation__next {
	grid-column: 2;
	text-align: right;
}

.ry-post-navigation span {
	color: var(--ry-brand-deep);
	font-size: .65rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ry-post-navigation strong {
	align-self: end;
	font-size: 1rem;
	line-height: 1.35;
}

.ry-related-section {
	padding-top: clamp(52px, 7vw, 88px);
	padding-bottom: clamp(60px, 9vw, 110px);
	border-top: 1px solid var(--ry-line);
}

/* Archive panel choices */
.archive .ry-section .ry-post-grid > .wp-block-post-template,
.archive .ry-section .ry-post-grid .wp-block-post-template,
.search .ry-section .ry-post-grid .wp-block-post-template,
.blog .ry-section .ry-post-grid .wp-block-post-template {
	grid-template-columns: repeat(var(--ry-archive-columns), minmax(0, 1fr));
}

.archive.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template,
.search.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template,
.blog.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template {
	grid-template-columns: 1.25fr repeat(2, minmax(0, .875fr));
}

.archive.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post:first-child,
.search.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post:first-child,
.blog.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post:first-child {
	grid-column: span 2;
}

.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template,
.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template,
.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template {
	grid-template-columns: 1fr;
}

.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post {
	display: grid;
	grid-template-columns: minmax(220px, 34%) minmax(0, 1fr);
}

.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image {
	height: 100%;
	min-height: 235px;
}

.archive.atlas-archive-ratio-16-9 .ry-section .ry-post-grid .wp-block-post-featured-image,
.search.atlas-archive-ratio-16-9 .ry-section .ry-post-grid .wp-block-post-featured-image,
.blog.atlas-archive-ratio-16-9 .ry-section .ry-post-grid .wp-block-post-featured-image {
	aspect-ratio: 16 / 9;
}

.archive.atlas-archive-ratio-1-1 .ry-section .ry-post-grid .wp-block-post-featured-image,
.search.atlas-archive-ratio-1-1 .ry-section .ry-post-grid .wp-block-post-featured-image,
.blog.atlas-archive-ratio-1-1 .ry-section .ry-post-grid .wp-block-post-featured-image {
	aspect-ratio: 1;
}

.archive.no-atlas-archive-excerpt .ry-section .ry-post-grid .wp-block-post-excerpt,
.search.no-atlas-archive-excerpt .ry-section .ry-post-grid .wp-block-post-excerpt,
.blog.no-atlas-archive-excerpt .ry-section .ry-post-grid .wp-block-post-excerpt,
.archive.no-atlas-archive-category .ry-section .ry-post-grid .wp-block-post-terms,
.search.no-atlas-archive-category .ry-section .ry-post-grid .wp-block-post-terms,
.blog.no-atlas-archive-category .ry-section .ry-post-grid .wp-block-post-terms {
	display: none;
}

/* The dock supports buttons as well as links without an icon-font request. */
.ry-mobile-dock button {
	border: 0;
	background: transparent;
}

@media (max-width: 1240px) {
	.ry-panel-menu { gap: 15px; }
	.ry-panel-menu > li > .ry-menu-item-row > a { font-size: .78rem; }
	.ry-header-actions--panel { margin-left: 12px; }
	.ry-header-panel-cta { padding-inline: 14px; }
}

@media (max-width: 1100px) {
	.ry-header-main--panel {
		grid-template-columns: auto minmax(0, 1fr) auto;
		gap: 12px;
	}
	.ry-panel-logo { max-width: 185px; max-height: 42px; }
	.ry-panel-nav { justify-self: end; order: 2; margin: 0; }
	.ry-header-actions--panel { order: 3; margin: 0; }
	.ry-menu-toggle {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		min-height: 42px;
		padding: 0 12px;
		border: 1px solid var(--ry-line);
		border-radius: 999px;
		background: var(--ry-white);
		color: var(--ry-ink);
		font-size: .72rem;
		font-weight: 800;
		cursor: pointer;
	}
	.ry-menu-panel {
		position: fixed;
		top: calc(var(--ry-header-height) + 34px);
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 90;
		display: none;
		overflow-y: auto;
		padding: 22px clamp(18px, 5vw, 50px) 90px;
		background: var(--ry-ink);
	}
	.ry-site-header:not(:has(.ry-announcement__text)) .ry-menu-panel { top: var(--ry-header-height); }
	.ry-menu-panel.is-open { display: block; }
	.ry-panel-menu { display: grid; gap: 0; }
	.ry-panel-menu > li { border-bottom: 1px solid rgba(255, 255, 255, .12); }
	.ry-panel-menu > li > .ry-menu-item-row > a {
		flex: 1 1 auto;
		min-height: 58px;
		color: var(--ry-white);
		font-size: 1.05rem;
	}
	.ry-panel-menu > li > .ry-menu-item-row > a::after { display: none; }
	.ry-submenu-toggle { width: 48px; color: rgba(255, 255, 255, .75); }
	.ry-submenu-toggle svg { transition: transform .16s ease; }
	.has-children.is-open .ry-submenu-toggle svg { transform: rotate(180deg); }
	.ry-panel-submenu {
		position: static;
		display: none;
		visibility: visible;
		width: auto;
		min-width: 0;
		padding: 0 0 14px 15px;
		border: 0;
		background: transparent;
		box-shadow: none;
		opacity: 1;
		transform: none;
		transition: none;
	}
	.has-children.is-open > .ry-panel-submenu { display: grid; }
	.ry-panel-submenu a { color: rgba(255, 255, 255, .72); }
	.ry-panel-submenu a:hover { background: rgba(255, 255, 255, .08); color: var(--ry-white); }
	.ry-article-layout { grid-template-columns: minmax(0, var(--ry-article-width)) minmax(250px, 300px); gap: 34px; }
	.ry-footer-grid { gap: 34px; }
}

@media (max-width: 782px) {
	.ry-header-main--panel { grid-template-columns: minmax(0, 1fr) auto auto; }
	.ry-panel-brand { min-width: 0; }
	.ry-panel-logo { max-width: min(46vw, 170px); max-height: 40px; }
	.ry-panel-brand__name { overflow: hidden; font-size: 1.05rem; text-overflow: ellipsis; }
	.ry-menu-toggle { width: 42px; padding: 0; justify-content: center; }
	.ry-menu-toggle span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
	.ry-header-panel-cta { display: none; }
	.ry-header-search-button { width: 42px; height: 42px; }
	.ry-menu-panel { top: var(--ry-header-height); }
	.ry-search-overlay { padding: 72px 12px 20px; }
	.ry-search-overlay__panel { padding: 30px 20px 24px; }
	.ry-search-overlay h2 { margin-right: 34px; font-size: clamp(2rem, 10vw, 3rem); }
	.ry-search-overlay form { grid-template-columns: 1fr; }
	.ry-search-overlay form button { min-height: 52px; }
	.ry-hero { min-height: min(var(--ry-hero-height), calc(100svh - 58px)) !important; }
	.ry-article-main { background: linear-gradient(180deg, #f7f9f9 0, var(--ry-white) 360px); }
	.ry-article-hero { padding-top: 38px; padding-bottom: 28px; }
	.ry-article-hero .wp-block-post-title { font-size: clamp(2.35rem, 11vw, 3.8rem); line-height: 1; }
	.ry-article-deck { margin-top: 18px; font-size: 1rem; }
	.ry-article-meta { gap: 13px 0; }
	.ry-article-meta > span { min-width: 50%; padding: 0 12px; }
	.ry-article-meta > span:nth-child(odd) { padding-left: 0; border-left: 0; }
	.ry-article-layout,
	.atlas-article-sidebar-left .ry-article-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 38px;
		padding-top: 38px;
	}
	.atlas-article-sidebar-left .ry-article-content-stack { grid-column: 1; }
	.atlas-article-sidebar-left .ry-article-sidebar,
	.ry-article-sidebar,
	.ry-article-sidebar--panel { position: static; grid-column: 1; grid-row: auto; }
	.ry-article-content-stack,
	.ry-article-content { width: 100%; max-width: none; }
	.ry-article-content { font-size: 1.02rem; line-height: 1.78; }
	.ry-article-share { flex-wrap: nowrap; margin-right: -1rem; padding-right: 1rem; overflow-x: auto; scrollbar-width: none; }
	.ry-article-share > * { flex: 0 0 auto; }
	.ry-sidebar-card,
	.ry-article-sidebar--panel > .ry-info-card,
	.ry-article-sidebar--panel > .ry-toc { padding: 20px; }
	.ry-author-wrap { width: 100%; max-width: none; }
	.ry-post-navigation { grid-template-columns: 1fr; }
	.ry-post-navigation__next { grid-column: 1; }
	.ry-related-section { overflow: hidden; }
	.ry-site-footer--panel .ry-footer-lead { align-items: flex-start; }
	.ry-mobile-dock a,
	.ry-mobile-dock button {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 0;
		border-radius: 12px;
		color: rgba(255, 255, 255, .72);
		font-size: .62rem;
		font-weight: 750;
		text-decoration: none;
		cursor: pointer;
	}
	.ry-mobile-dock a:hover,
	.ry-mobile-dock button:hover,
	.ry-mobile-dock a:focus-visible,
	.ry-mobile-dock button:focus-visible { color: var(--ry-white); background: rgba(255, 255, 255, .08); }
	.archive.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template,
	.search.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template,
	.blog.atlas-archive-editorial .ry-section .ry-post-grid .wp-block-post-template,
	.archive .ry-section .ry-post-grid > .wp-block-post-template,
	.search .ry-section .ry-post-grid > .wp-block-post-template,
	.blog .ry-section .ry-post-grid > .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template,
	.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template,
	.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-template { grid-template-columns: 1fr; }
	.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
	.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
	.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post { grid-template-columns: minmax(110px, 34%) minmax(0, 1fr); }
	.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
	.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
	.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image { min-height: 150px; }
}

@media (max-width: 520px) {
	.ry-article-meta > span { min-width: 100%; padding-left: 0; border-left: 0; }
	.ry-post-navigation a { min-height: 105px; padding: 18px; }
	.ry-site-footer--panel .ry-footer-grid { grid-template-columns: 1fr 1fr; }
	.ry-site-footer--panel .ry-footer-brand { grid-column: span 2; }
	.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
	.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post,
	.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post { grid-template-columns: 1fr; }
	.archive.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
	.search.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image,
	.blog.atlas-archive-list .ry-section .ry-post-grid .wp-block-post-featured-image { min-height: 0; }
}
