/*
 * 833 Off Road Tours — Rally Atlas visual system
 * Original design: angular expedition panels, route lines and topographic texture.
 */
:root {
	--ort-asphalt: #0d1112;
	--ort-graphite: #171c1d;
	--ort-panel: #121718;
	--ort-paper: #ffffff;
	--ort-dust: #f2efea;
	--ort-muted: #a4aaab;
	--ort-red: #b31519;
	--ort-red-bright: #d62024;
	--ort-sand: #cbbba2;
	--ort-border: rgba(242, 239, 234, .14);
	--ort-content: min(1320px, calc(100% - clamp(2rem, 6vw, 6rem)));
	--ort-display: "Arial Narrow", "Roboto Condensed", Impact, sans-serif;
	--ort-mono: "Courier New", monospace;
}
html { scroll-behavior: smooth; }
body {
	background: var(--ort-asphalt);
	color: var(--ort-dust);
	overflow-x: hidden;
}
body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -2;
	background:
		radial-gradient(circle at 78% 18%, rgba(179,21,25,.18), transparent 29%),
		linear-gradient(125deg, #0d1112 0%, #111718 52%, #090c0d 100%);
}
body::after {
	content:"";
	position: fixed;
	inset:0;
	z-index:-1;
	opacity:.16;
	pointer-events:none;
	background-image:
		repeating-radial-gradient(ellipse at 70% 20%, transparent 0, transparent 22px, rgba(255,255,255,.15) 23px, transparent 24px),
		linear-gradient(90deg, transparent 0 49.8%, rgba(255,255,255,.08) 50%, transparent 50.2%);
	background-size: 430px 260px, 100% 100%;
}
.wp-site-blocks { min-height: 100vh; }
.ort-container, .site-header__inner, .site-footer__inner {
	width: var(--ort-content);
	margin-inline: auto;
}
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	/* Keep the fixed navigation overlay relative to the viewport.
	 * A backdrop-filter here creates a containing block and traps it in the header. */
	background: var(--ort-asphalt);
	border-bottom: 1px solid var(--ort-border);
}
.admin-bar .site-header { top: 32px; }
.site-header__inner {
	min-height: 92px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(1rem, 4vw, 3rem);
}
.site-header .custom-logo-link { display:block; line-height:0; }
.site-header .custom-logo {
	display:block;
	height:auto;
	width:min(270px, 34vw);
	min-width: 160px;
}
.site-header .wp-block-site-title {
	font-family: var(--ort-display);
	text-transform: uppercase;
	font-style: italic;
	font-size: 1.4rem;
}
.site-header .wp-block-navigation {
	margin-left: auto;
	font-size: .94rem;
}
.site-header .wp-block-navigation-item__content {
	padding: .65rem .2rem;
	position: relative;
}
.site-header .wp-block-navigation-item__content::after {
	content:"";
	position:absolute;
	left:0;
	bottom:.3rem;
	width:100%;
	height:2px;
	background:var(--ort-red-bright);
	transform:scaleX(0);
	transform-origin:left;
	transition:transform .2s ease;
}
.site-header .wp-block-navigation-item__content:hover::after,
.site-header .current-menu-item > .wp-block-navigation-item__content::after { transform:scaleX(1); }
.site-header .wp-block-page-list > li:last-child > a,
.site-header .wp-block-navigation__container > li:last-child > a {
	background: var(--ort-red);
	padding: .82rem 1.15rem;
	clip-path: polygon(8% 0,100% 0,92% 100%,0 100%);
}
.site-header .wp-block-page-list > li:last-child > a::after,
.site-header .wp-block-navigation__container > li:last-child > a::after { display:none; }
/* Full-screen WordPress navigation, for saved menus and the page-list fallback. */
.site-header .wp-block-navigation__responsive-container.is-menu-open {
	position: fixed;
	inset: 0;
	width: 100%;
	max-width: none;
	height: 100vh;
	height: 100dvh;
	margin: 0;
	box-sizing: border-box;
	overflow-y: auto;
	background: var(--ort-asphalt) !important;
	color: var(--ort-paper) !important;
	padding: clamp(1.25rem, 5vw, 2rem);
}
.site-header .is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: flex-start;
	padding-top: 3.5rem;
}
.site-header .is-menu-open .wp-block-navigation__container,
.site-header .is-menu-open .wp-block-page-list {
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	font-size: 1.45rem;
	gap: 1rem;
}
.site-header .is-menu-open .wp-block-navigation-item__content {
	white-space: normal;
	overflow-wrap: anywhere;
}

/* Homepage hero */
.ort-hero {
	position: relative;
	padding: clamp(5rem, 10vw, 8.8rem) 0 clamp(4.4rem, 8vw, 7rem);
	overflow: hidden;
	border-bottom: 1px solid var(--ort-border);
}
.ort-hero::before {
	content:"";
	position:absolute;
	right:-12vw;
	top:0;
	width:min(62vw, 920px);
	height:100%;
	clip-path: polygon(18% 0,100% 0,100% 86%,0 100%);
	background:
		linear-gradient(135deg, rgba(0,0,0,.08), rgba(0,0,0,.72)),
		repeating-linear-gradient(125deg, rgba(255,255,255,.08) 0 1px, transparent 1px 62px),
		linear-gradient(120deg, #273031, #121617);
	border-left: 3px solid rgba(179,21,25,.8);
}
.ort-hero::after {
	content:"";
	position:absolute;
	right: clamp(1rem, 8vw, 8rem);
	bottom: clamp(2rem, 6vw, 5rem);
	width: clamp(140px, 22vw, 290px);
	height: 78px;
	background:
		radial-gradient(circle, var(--ort-red-bright) 0 6px, transparent 7px) left center/39px 40px repeat-x;
	transform: rotate(-15deg);
	opacity:.84;
}
.ort-kicker {
	display:inline-flex;
	align-items:center;
	gap:.7rem;
	font-family:var(--ort-mono);
	letter-spacing:.12em;
	font-size:.76rem;
	font-weight:700;
	color:var(--ort-red-bright);
	text-transform:uppercase;
}
.ort-kicker::before {
	content:"";
	width:42px;height:2px;background:currentColor;
}
.ort-hero h1 {
	max-width: 720px;
	margin: .9rem 0 1.3rem;
	font-size: var(--wp--preset--font-size--hero);
	font-style: italic;
	position:relative;
	z-index:1;
}
.ort-hero .ort-lead {
	max-width: 510px;
	color: #d6d3cd;
	font-size: clamp(1.05rem,1rem + .35vw,1.2rem);
	position: relative;
	z-index: 1;
}
.ort-hero .wp-block-buttons { margin-top:2.2rem; position:relative; z-index:1; }
.ort-button-outline .wp-block-button__link {
	background:transparent !important;
	border:1px solid rgba(242,239,234,.38);
}
.wp-block-button__link {
	transition: transform .2s ease, background .2s ease, border-color .2s ease;
	clip-path: polygon(5% 0,100% 0,95% 100%,0 100%);
	padding: .95rem 1.55rem;
}
.wp-block-button__link:hover {
	transform: translateY(-2px);
	background: var(--ort-red-bright) !important;
	border-color: var(--ort-red-bright);
}

/* Metric route bar */
.ort-routebar {
	width:var(--ort-content);
	margin: clamp(-1.4rem, -3vw, -2rem) auto 0;
	position:relative;
	z-index:3;
	display:grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap:0 !important;
	background:var(--ort-dust);
	color:var(--ort-asphalt);
	clip-path: polygon(2.2% 0,100% 0,97.8% 100%,0 100%);
	box-shadow:0 24px 48px rgba(0,0,0,.28);
}
.ort-routebar .ort-stat {
	padding: clamp(1.2rem,2.5vw,1.8rem) clamp(1.25rem,3vw,2.1rem);
	border-right:1px solid rgba(13,17,18,.12);
}
.ort-routebar .ort-stat:last-child { border-right:none; }
.ort-stat strong {
	display:block;
	font-family:var(--ort-display);
	font-size:clamp(1.45rem,2vw,1.9rem);
	line-height:1;
	text-transform:uppercase;
	font-style:italic;
	color:var(--ort-asphalt);
}
.ort-stat span {
	display:block;
	font-family:var(--ort-mono);
	font-size:.74rem;
	text-transform:uppercase;
	color:#555d5e;
	margin-top:.45rem;
	letter-spacing:.06em;
}

/* Sections */
.ort-section { padding: clamp(4.5rem,8vw,7rem) 0; }
.ort-section--paper {
	background: var(--ort-dust);
	color: var(--ort-asphalt);
}
.ort-section--paper h2, .ort-section--paper h3,
.ort-section--paper p { color:var(--ort-asphalt); }
.ort-heading-row {
	display:flex !important;
	align-items:end !important;
	justify-content:space-between !important;
	gap:2rem;
	margin-bottom: clamp(2rem,4vw,3.2rem);
}
.ort-heading-row h2 { max-width:700px; margin:0; }
.ort-heading-row p { max-width:395px; color:var(--ort-muted); margin:0; }
.ort-section--paper .ort-heading-row p { color:#555d5e; }
.ort-grid-3 {
	display:grid !important;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: clamp(1rem,2vw,1.35rem) !important;
}
.ort-card {
	min-height: 320px;
	position:relative;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	padding: clamp(1.35rem,3vw,2rem);
	background: #151b1c;
	border:1px solid var(--ort-border);
	overflow:hidden;
}
.ort-card::before {
	content:"";
	position:absolute;
	top:0;right:0;
	width:76px;height:6px;
	background:var(--ort-red-bright);
}
.ort-card::after {
	content:"";
	position:absolute;
	inset:0;
	opacity:.23;
	background-image: repeating-linear-gradient(130deg, transparent 0 28px, rgba(255,255,255,.09) 29px, transparent 30px);
	pointer-events:none;
}
.ort-card > * { position:relative; z-index:1; }
.ort-card__index {
	font-family:var(--ort-mono);
	color:var(--ort-red-bright) !important;
	font-size:.78rem;
	letter-spacing:.15em;
	margin:0 0 auto !important;
}
.ort-card h3 { margin:3rem 0 .6rem; font-size:clamp(1.5rem,2vw,1.9rem); }
.ort-card p { color:#bfc2be; margin:0 0 1.1rem; }
.ort-card a { font-family:var(--ort-display); font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:.86rem; }
.ort-step-grid {
	display:grid !important;
	grid-template-columns:repeat(4,1fr);
	gap: clamp(1.25rem,3vw,2rem) !important;
	counter-reset: step;
}
.ort-step { border-top:2px solid var(--ort-red); padding-top:1.2rem; }
.ort-step::before {
	counter-increment:step;
	content:"0" counter(step);
	display:block;
	font-family:var(--ort-mono);
	font-size:.76rem;
	color:var(--ort-red-bright);
	letter-spacing:.14em;
	margin-bottom:1.5rem;
}
.ort-step h3 { margin:0 0 .7rem; font-size:1.3rem; }
.ort-step p { color:var(--ort-muted); margin:0; font-size:.95rem; }

/* Page heroes */
.ort-page-hero {
	padding: clamp(4rem,8vw,7rem) 0 clamp(3rem,5vw,4.5rem);
	border-bottom: 1px solid var(--ort-border);
	position:relative;
}
.ort-page-hero::after {
	content:"ROUTE / PORTUGAL / 833";
	position:absolute;
	bottom:1rem;
	right:max(calc((100vw - 1320px) / 2), 2rem);
	font-family:var(--ort-mono);
	font-size:.7rem;
	letter-spacing:.18em;
	color:var(--ort-red-bright);
}
.ort-page-hero h1, .ort-page-hero h2 { max-width:830px; margin:.8rem 0 1.2rem; font-size:clamp(2.5rem,5vw,4.8rem); font-style:italic;}
.ort-page-hero p { max-width:650px; color:var(--ort-muted); font-size:1.08rem; }

/* Dynamic lists from plugin */
.ort-listing {
	width: var(--ort-content);
	margin-inline:auto;
	padding: clamp(3.5rem,6vw,5.5rem) 0 clamp(5rem,8vw,7rem);
}
.ort-listing-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:clamp(1.1rem,2vw,1.5rem);
}
.ort-entry {
	display:flex;
	flex-direction:column;
	background:var(--ort-panel);
	border:1px solid var(--ort-border);
	transition:transform .2s ease,border-color .2s ease;
}
.ort-entry:hover { transform:translateY(-4px); border-color:rgba(214,32,36,.55); }
.ort-entry__media {
	aspect-ratio: 16 / 10;
	background:
		linear-gradient(132deg,rgba(179,21,25,.26),transparent 42%),
		repeating-linear-gradient(145deg, transparent 0 24px, rgba(255,255,255,.05) 25px, transparent 26px),
		#202728;
	overflow:hidden;
}
.ort-entry__media img { width:100%;height:100%;object-fit:cover;display:block; }
.ort-entry__body { padding:1.35rem; }
.ort-entry__type {
	font:700 .7rem/1 var(--ort-mono);
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--ort-red-bright);
}
.ort-entry h3 { margin:.65rem 0 .65rem; font-size:1.55rem; }
.ort-entry h3 a { color:var(--ort-paper); text-decoration:none; }
.ort-entry p { margin:0 0 1.2rem; color:var(--ort-muted); font-size:.94rem; }
.ort-entry__meta { display:flex;flex-wrap:wrap;gap:.45rem; margin-bottom:1rem; }
.ort-pill {
	display:inline-block;
	border:1px solid var(--ort-border);
	padding:.28rem .48rem;
	font-family:var(--ort-mono);
	font-size:.68rem;
	text-transform:uppercase;
	color:#bdc3c3;
}
.ort-empty {
	padding:3rem;
	border:1px dashed rgba(242,239,234,.25);
	text-align:center;
	color:var(--ort-muted);
}

/* Content/article */
.ort-page-wrap { padding:clamp(3.5rem,7vw,6rem) 0; }
.ort-article {
	width:min(880px, calc(100% - clamp(2rem,6vw,6rem)));
	margin:0 auto;
}
.ort-article .wp-block-post-featured-image img { margin-bottom:2rem; }
.ort-article .wp-block-post-content > * { margin-block-start:1.25rem; }
.ort-article .wp-block-post-content > h2 { margin-block-start:3rem; }
.ort-meta-panel {
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
	gap:1px;
	background:rgba(242,239,234,.16);
	margin:1.5rem 0 2.4rem;
}
.ort-meta-panel__item { background:var(--ort-panel); padding:1.05rem; }
.ort-meta-panel__label {
	display:block;color:var(--ort-red-bright);font:700 .66rem/1 var(--ort-mono);
	text-transform:uppercase;letter-spacing:.14em;margin-bottom:.6rem;
}
.ort-meta-panel__value { font-family:var(--ort-display);font-size:1.1rem;font-weight:700;text-transform:uppercase; }

/* Form */
.ort-form-shell {
	width:var(--ort-content);
	margin-inline:auto;
	padding:clamp(3.5rem,6vw,5rem) 0 clamp(5rem,8vw,7rem);
	display:grid;
	grid-template-columns:minmax(230px,.8fr) minmax(330px,1.35fr);
	gap:clamp(2rem,6vw,6rem);
}
.ort-form-aside h2 { margin:.7rem 0 1rem; font-size:clamp(2rem,3vw,2.8rem); font-style:italic; }
.ort-form-aside p { color:var(--ort-muted); }
.ort-detail-list { margin:2.3rem 0 0; padding:0; list-style:none; }
.ort-detail-list li {
	border-top:1px solid var(--ort-border);
	padding:1rem 0;
	font-family:var(--ort-mono);
	font-size:.78rem;
	letter-spacing:.08em;
	text-transform:uppercase;
}
.ort-form {
	background:var(--ort-dust);
	color:var(--ort-asphalt);
	padding:clamp(1.5rem,4vw,2.5rem);
	clip-path: polygon(2% 0,100% 0,100% 98%,0 100%,0 2%);
}
.ort-form h3 { color:var(--ort-asphalt); margin:0 0 1.6rem; }
.ort-field-grid { display:grid;grid-template-columns:1fr 1fr;gap:1.15rem; }
.ort-field { margin-bottom:1.15rem; }
.ort-field--full { grid-column:1/-1; }
.ort-field label {
	display:block;
	font-family:var(--ort-display);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.07em;
	font-size:.82rem;
	margin-bottom:.38rem;
}
.ort-field input, .ort-field select, .ort-field textarea {
	box-sizing:border-box;
	width:100%;
	padding:.88rem .9rem;
	background:#fff;
	border:1px solid rgba(13,17,18,.2);
	border-radius:0;
	color:#0d1112;
	font:inherit;
}
.ort-field textarea { min-height:138px; resize:vertical; }
.ort-field input:focus, .ort-field select:focus, .ort-field textarea:focus {
	outline:2px solid var(--ort-red);
	outline-offset:1px;
}
.ort-checkbox { display:flex;align-items:flex-start;gap:.65rem;margin:1rem 0 1.4rem;font-size:.9rem; }
.ort-checkbox input { width:auto;margin-top:.32rem; }
.ort-submit {
	border:0;
	background:var(--ort-red);
	color:#fff;
	font:700 .95rem/1 var(--ort-display);
	letter-spacing:.1em;
	text-transform:uppercase;
	padding:1.05rem 1.7rem;
	cursor:pointer;
	clip-path: polygon(5% 0,100% 0,95% 100%,0 100%);
}
.ort-submit:hover { background:var(--ort-red-bright); }
.ort-notice { padding:1rem 1.1rem;margin-bottom:1.3rem;font-size:.94rem; }
.ort-notice--success { background:#e0ede3;color:#154624; }
.ort-notice--error { background:#f6dddd;color:#72191b; }

/* CTA */
.ort-cta {
	width:var(--ort-content);
	margin:0 auto clamp(4rem,8vw,7rem);
	padding: clamp(2.4rem,5vw,4.5rem);
	position:relative;
	background: var(--ort-red);
	clip-path: polygon(3% 0,100% 0,97% 100%,0 100%);
	overflow:hidden;
}
.ort-cta::after {
	content:"";
	position:absolute;
	right:-20px;top:-40px;width:42%;height:180%;
	background:rgba(0,0,0,.16);
	transform:rotate(-14deg);
}
.ort-cta h2 { margin:0 0 1rem; max-width:720px; font-size:clamp(2rem,3.7vw,3.5rem); font-style:italic; position:relative;z-index:1;}
.ort-cta p { max-width:530px;position:relative;z-index:1; }
.ort-cta .wp-block-button__link { background:var(--ort-asphalt) !important; position:relative;z-index:1; }

/* Footer */
.site-footer { border-top:1px solid var(--ort-border); padding:clamp(2.6rem,5vw,4rem) 0 1.8rem; }
.site-footer__grid {
	display:grid !important;
	grid-template-columns:1.1fr .8fr .8fr;
	gap:clamp(2rem,6vw,5rem) !important;
	align-items:start !important;
}
.site-footer .custom-logo { max-width:270px;height:auto; }
.site-footer__text { color:var(--ort-muted);max-width:370px;font-size:.93rem; }
.site-footer h3 { font-size:.92rem; letter-spacing:.12em;margin:0 0 1rem;color:var(--ort-red-bright); }
.site-footer .wp-block-page-list, .site-footer ul { list-style:none;padding:0;margin:0;display:grid;gap:.55rem; }
.site-footer a { text-decoration:none; color:#cad0cc; }
.site-footer__bottom {
	width:var(--ort-content);margin:3.2rem auto 0;padding-top:1.2rem;
	border-top:1px solid var(--ort-border);font: .72rem/1.6 var(--ort-mono);
	letter-spacing:.1em;text-transform:uppercase;color:var(--ort-muted);
	display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
}

/* WP query defaults */
.ort-blog-query .wp-block-post-template {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:1.35rem;
}
.ort-blog-query .wp-block-post {
	border:1px solid var(--ort-border);
	background:var(--ort-panel);
	padding:1.2rem;
}
.wp-block-query-pagination { margin-top:2.5rem; }

/* Responsive */
@media (max-width: 980px) {
	.site-header__inner { min-height:76px; }
	.ort-hero::before { opacity:.32; width:100%; right:0; }
	.ort-grid-3, .ort-listing-grid, .ort-blog-query .wp-block-post-template { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.ort-step-grid { grid-template-columns:repeat(2,1fr); }
	.ort-form-shell, .site-footer__grid { grid-template-columns:1fr; }
}
@media (max-width: 680px) {
	.admin-bar .site-header { top:0; }
	.ort-routebar, .ort-grid-3, .ort-listing-grid, .ort-step-grid, .ort-blog-query .wp-block-post-template { grid-template-columns:1fr; }
	.ort-routebar { clip-path:none; }
	.ort-routebar .ort-stat { border-right:0;border-bottom:1px solid rgba(13,17,18,.12); }
	.ort-heading-row { display:block !important; }
	.ort-heading-row p { margin-top:1rem; }
	.ort-field-grid { grid-template-columns:1fr; }
	.site-header .custom-logo { width:190px; }
	.ort-page-hero::after { display:none; }
}

/* Editable placeholder image strips */
.ort-media-strip {
	width: var(--ort-content);
	margin: clamp(2rem, 4vw, 3.5rem) auto 0;
}
.ort-placeholder-image {
	margin: 0;
	position: relative;
}
.ort-placeholder-image img,
.ort-empty img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid var(--ort-border);
	clip-path: polygon(2.5% 0, 100% 0, 97.5% 100%, 0 100%);
	box-shadow: 0 24px 60px rgba(0,0,0,.28);
}
.ort-empty img {
	max-width: 760px;
	margin: 0 auto 1.5rem;
}

/* Availability calendar */
.ort-availability {
	margin-top: 2rem;
	padding: 1.25rem;
	background: rgba(242,239,234,.06);
	border: 1px solid var(--ort-border);
}
.ort-availability__head h3 {
	margin: .55rem 0 .5rem;
	font-size: 1.35rem;
	font-style: italic;
}
.ort-availability__head p {
	font-size: .92rem;
	margin: 0 0 1.2rem;
	color: var(--ort-muted);
}
.ort-calendar-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 1rem;
}
.ort-form-aside .ort-calendar-grid {
	grid-template-columns: 1fr;
}
.ort-calendar-month {
	background: var(--ort-dust);
	color: var(--ort-asphalt);
	padding: 1rem;
	clip-path: polygon(4% 0,100% 0,96% 100%,0 100%);
}
.ort-calendar-month h4 {
	margin: 0 0 .75rem;
	font-family: var(--ort-display);
	font-size: 1.05rem;
	font-style: italic;
	text-transform: uppercase;
}
.ort-calendar-weekdays,
.ort-calendar-days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: .25rem;
}
.ort-calendar-weekdays span {
	font: 700 .6rem/1 var(--ort-mono);
	letter-spacing: .06em;
	text-align: center;
	color: #667071;
	padding: 0 0 .35rem;
	text-transform: uppercase;
}
.ort-calendar-day {
	min-width: 0;
	aspect-ratio: 1;
	border: 1px solid rgba(13,17,18,.12);
	background: rgba(13,17,18,.04);
	color: rgba(13,17,18,.55);
	display: flex;
	align-items: center;
	justify-content: center;
	font: 700 .82rem/1 var(--ort-mono);
}
button.ort-calendar-day {
	cursor: pointer;
	font: 700 .82rem/1 var(--ort-mono);
}
.ort-calendar-day.is-empty {
	visibility: hidden;
}
.ort-calendar-day.is-available {
	background: var(--ort-red);
	border-color: var(--ort-red);
	color: #fff;
	box-shadow: inset 0 0 0 2px rgba(255,255,255,.15);
}
.ort-calendar-day.is-available:hover,
.ort-calendar-day.is-selected {
	background: var(--ort-asphalt);
	border-color: var(--ort-asphalt);
	color: #fff;
}
.ort-availability-list {
	list-style: none;
	padding: 0;
	margin: 1rem 0 0;
	display: grid;
	gap: .55rem;
}
.ort-availability-list li {
	padding: .75rem 0;
	border-top: 1px solid var(--ort-border);
}
.ort-availability-list strong,
.ort-availability-list span {
	display: block;
}
.ort-availability-list strong {
	font-family: var(--ort-display);
	font-size: 1rem;
	font-style: italic;
}
.ort-availability-list span {
	font-size: .82rem;
	color: var(--ort-muted);
	margin-top: .2rem;
}
.ort-availability-empty {
	font-size: .9rem;
	color: var(--ort-muted);
	margin-bottom: 0;
}

@media (max-width: 680px) {
	.ort-media-strip { margin-top: 1.6rem; }
	.ort-placeholder-image img,
	.ort-empty img { clip-path: none; }
	.ort-availability { padding: 1rem; }
}
