Jump to content
Toggle menu
  • 63 articles
  • 2 files
  • 2 users
  • 222 edits
Virginia.wiki
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Common.css

MediaWiki interface page
Revision as of 00:01, 30 September 2026 by Agthorne (talk | contribs)

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* =========================================================
   VIRGINIA.WIKI — COMPLETE SITE STYLES
   ========================================================= */

/* =========================================================
   SHARED VARIABLES
   ========================================================= */

.vw-home,
.vw-place,
.vw-attraction {
	--vw-navy: #0b2f4f;
	--vw-blue: #3e718f;
	--vw-green: #56725d;
	--vw-sky: #dceaf2;
	--vw-cream: #f6f2e7;
	--vw-text: #172535;
}


/* =========================================================
   MAIN PAGE
   ========================================================= */

.vw-home {
	max-width: 1380px;
	margin: 0 auto;
	color: var(--vw-text);
}

body.page-Main_Page .mw-first-heading,
body.page-Main_Page #firstHeading {
	display: none;
}

.vw-card-grid > p,
.vw-photo-card-grid > p,
.vw-feature-grid > p,
.vw-link-grid > p,
.vw-destination-grid > p,
.vw-secondary-destinations > p {
	display: none !important;
}


/* HERO */

.vw-hero {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	min-height: 430px;
	padding: clamp(3rem, 7vw, 6.5rem);
	margin: 0 0 4.5rem;
	border-radius: 30px;
	color: #fff;
	background:
		radial-gradient(circle at 82% 18%, rgba(255,214,132,.55), transparent 18%),
		linear-gradient(135deg, #092943 0%, #356d8b 58%, #657d64 100%);
	box-shadow: 0 22px 60px rgba(11,47,79,.20);
}

.vw-hero::before {
	content: "";
	position: absolute;
	left: -5%;
	right: -5%;
	bottom: -2%;
	height: 42%;
	background: rgba(17,57,78,.48);
	clip-path: polygon(
		0 70%, 10% 48%, 20% 60%, 32% 28%,
		43% 62%, 55% 38%, 66% 61%, 77% 35%,
		89% 58%, 100% 37%, 100% 100%, 0 100%
	);
}

.vw-hero::after {
	content: "";
	position: absolute;
	left: -5%;
	right: -5%;
	bottom: -8%;
	height: 33%;
	background: rgba(24,75,78,.48);
	clip-path: polygon(
		0 60%, 14% 37%, 28% 67%, 44% 29%,
		58% 57%, 73% 31%, 87% 59%, 100% 42%,
		100% 100%, 0 100%
	);
}

.vw-hero-inner {
	position: relative;
	z-index: 2;
	max-width: 850px;
}

.vw-eyebrow {
	margin-bottom: .9rem;
	font-size: .83rem;
	font-weight: 800;
	letter-spacing: .19em;
	text-transform: uppercase;
	color: rgba(255,255,255,.92);
}

.vw-hero-title {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(3.7rem, 8vw, 7rem);
	font-weight: 700;
	line-height: .94;
	letter-spacing: -.045em;
	color: #fff;
}

.vw-hero-subtitle {
	max-width: 780px;
	margin-top: 1.55rem;
	font-size: clamp(1.05rem, 2vw, 1.35rem);
	line-height: 1.6;
	color: rgba(255,255,255,.96);
}


/* HERO SEARCH */

.vw-search {
	position: relative;
	z-index: 3;
	max-width: 700px;
	margin-top: 2.2rem;
}

.vw-search .mw-inputbox-centered {
	text-align: left !important;
}

.vw-search form {
	display: flex;
	align-items: stretch;
	width: 100%;
	gap: .7rem;
}

.vw-search input[type="text"] {
	flex: 1;
	min-width: 0;
	height: 58px;
	box-sizing: border-box;
	padding: 0 1.25rem;
	border: 1px solid rgba(255,255,255,.45);
	border-radius: 14px;
	background: rgba(255,255,255,.96);
	color: #172535;
	font-size: 1.05rem;
	box-shadow: 0 9px 25px rgba(0,0,0,.13);
}

.vw-search input[type="text"]:focus {
	outline: 3px solid rgba(255,255,255,.25);
	border-color: #fff;
}

.vw-search input[type="submit"],
.vw-search button {
	min-height: 58px;
	padding: 0 1.7rem;
	border: 0 !important;
	border-radius: 14px !important;
	background: #fff !important;
	color: var(--vw-navy) !important;
	font-size: 1rem;
	font-weight: 800;
	cursor: pointer;
	box-shadow: 0 9px 25px rgba(0,0,0,.13);
}

.vw-search input[type="submit"]:hover,
.vw-search button:hover {
	background: var(--vw-cream) !important;
}


/* HOMEPAGE SECTIONS */

.vw-home-section {
	margin: 4.75rem 0;
}

.vw-home-section > h2 {
	margin: 0 0 1.9rem;
	padding: 0;
	border: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 4vw, 3.15rem);
	line-height: 1.08;
	color: var(--vw-navy);
}


/* DISCOVER CARDS */

.vw-card-grid,
.vw-photo-card-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 1.2rem !important;
	align-items: stretch;
}

.vw-card-grid > .vw-card,
.vw-photo-card-grid > .vw-card {
	min-width: 0;
	width: auto;
}

.vw-card {
	min-width: 0;
	min-height: 180px;
	padding: 1.7rem;
	border: 1px solid rgba(11,47,79,.10);
	border-radius: 22px;
	background: rgba(255,255,255,.82);
	box-shadow: 0 8px 28px rgba(11,47,79,.07);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.vw-card:hover {
	transform: translateY(-5px);
	border-color: rgba(11,47,79,.20);
	box-shadow: 0 16px 35px rgba(11,47,79,.13);
}

.vw-card h3 {
	margin: 0 0 .9rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.6rem;
	color: var(--vw-navy);
}

.vw-photo-card {
	display: flex;
	flex-direction: column;
	min-height: 400px;
	padding: 0 !important;
	overflow: hidden;
	background: #fff;
}

.vw-card-image {
	display: block;
	width: 100%;
	height: 200px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: var(--vw-sky);
	line-height: 0;
}

.vw-card-image > span,
.vw-card-image > p,
.vw-card-image .mw-default-size,
.vw-card-image .mw-file-description,
.vw-card-image a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.vw-card-image img,
.vw-card-image .mw-file-element {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 200px !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
}

.vw-card-content {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	padding: 1.45rem 1.55rem 1.55rem;
	line-height: 1.6;
}

.vw-card-content h3 {
	margin: 0 0 .75rem;
}

.vw-card-content h3 a,
.vw-card-content h3 a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-card-content h3 a:hover {
	text-decoration: underline !important;
}

.vw-card-link {
	margin-top: auto;
	padding-top: 1.2rem;
	font-size: .93rem;
	font-weight: 800;
}

.vw-card-link a,
.vw-card-link a.new {
	color: var(--vw-blue) !important;
	text-decoration: none !important;
}

.vw-card-link a:hover {
	text-decoration: underline !important;
}


/* HOMEPAGE RED LINKS */

body.page-Main_Page .vw-home a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

body.page-Main_Page .vw-home a.new:hover {
	text-decoration: underline !important;
}

body.page-Main_Page .vw-card-link a.new {
	color: var(--vw-blue) !important;
}


/* POPULAR DESTINATIONS */

.vw-destination-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.3rem;
}

.vw-destination-card {
	position: relative;
	overflow: hidden;
	min-width: 0;
	height: 340px;
	border-radius: 24px;
	background: var(--vw-navy);
	box-shadow: 0 12px 32px rgba(11,47,79,.12);
	transition: transform .2s ease, box-shadow .2s ease;
}

.vw-destination-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 42px rgba(11,47,79,.20);
}

.vw-destination-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	line-height: 0;
}

.vw-destination-image > span,
.vw-destination-image > p,
.vw-destination-image .mw-default-size,
.vw-destination-image .mw-file-description,
.vw-destination-image a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.vw-destination-image img,
.vw-destination-image .mw-file-element {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
	transition: transform .5s ease;
}

.vw-destination-card:hover .vw-destination-image img {
	transform: scale(1.04);
}

.vw-destination-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(
			to top,
			rgba(2,18,31,.97) 0%,
			rgba(2,18,31,.82) 34%,
			rgba(2,18,31,.32) 63%,
			rgba(2,18,31,.03) 82%
		);
}

.vw-destination-overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 1.8rem 2rem 2rem;
}

.vw-destination-title-text {
	margin: 0 0 .55rem;
	color: #fff !important;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 700;
	line-height: 1.02;
	text-shadow: 0 2px 5px rgba(0,0,0,.8), 0 5px 15px rgba(0,0,0,.4);
}

.vw-destination-description {
	max-width: 560px;
	color: #fff !important;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	text-shadow: 0 1px 3px rgba(0,0,0,.8);
}

.vw-destination-cta {
	margin-top: .8rem;
	font-size: .92rem;
	font-weight: 800;
}

body.page-Main_Page .vw-destination-cta a,
body.page-Main_Page .vw-destination-cta a.new,
body.page-Main_Page .vw-destination-cta a:visited {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	text-decoration: none !important;
	text-shadow: 0 1px 3px rgba(0,0,0,.8);
}

body.page-Main_Page .vw-destination-cta a:hover {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	text-decoration: underline !important;
}


/* SECONDARY DESTINATIONS */

.vw-secondary-destinations {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .85rem;
	margin-top: 1rem;
}

.vw-secondary-destinations > a {
	display: block;
	padding: 1rem 1.15rem;
	border: 1px solid rgba(11,47,79,.11);
	border-radius: 14px;
	background: rgba(255,255,255,.84);
	color: var(--vw-navy) !important;
	font-weight: 700;
	text-align: center;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.vw-secondary-destinations > a.new {
	color: var(--vw-navy) !important;
}

.vw-secondary-destinations > a:hover {
	transform: translateY(-2px);
	background: #fff;
	box-shadow: 0 8px 20px rgba(11,47,79,.08);
}


/* EXPLORE VIRGINIA FEATURE CARDS */

.vw-feature-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 1.25rem !important;
	align-items: stretch;
}

.vw-feature-grid > .vw-feature {
	min-width: 0;
	width: auto;
}

.vw-feature {
	min-width: 0;
	min-height: 185px;
	margin: 0 !important;
	padding: 1.9rem;
	border: 1px solid rgba(11,47,79,.08);
	border-radius: 23px;
	background:
		linear-gradient(
			145deg,
			rgba(220,234,242,.92),
			rgba(246,242,231,.92)
		);
	line-height: 1.6;
}

.vw-feature h3 {
	margin: 0 0 .85rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.6rem;
	color: var(--vw-navy);
}

.vw-feature h3 a,
.vw-feature h3 a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-feature h3 a:hover {
	text-decoration: underline !important;
}


/* START EXPLORING */

.vw-home-bottom {
	padding: 2.5rem 2.7rem;
	border-radius: 26px;
	background: linear-gradient(135deg, #092943, #174a69);
	color: #fff !important;
	box-shadow: 0 16px 38px rgba(11,47,79,.16);
}

.vw-bottom-title {
	margin: 0 0 1.25rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 700;
	line-height: 1.1;
	color: #fff !important;
}

.vw-bottom-text,
.vw-home-bottom,
.vw-home-bottom p,
.vw-home-bottom div,
.vw-home-bottom span,
.vw-home-bottom h2,
.vw-home-bottom h3 {
	color: #fff !important;
}

.vw-bottom-text {
	font-size: 1.05rem;
	line-height: 1.65;
}

.vw-home-bottom a,
.vw-home-bottom a:hover {
	color: #fff !important;
}


/* =========================================================
   PLACE PAGES
   ========================================================= */

.vw-place {
	max-width: 1280px;
	margin: 0 auto;
	color: var(--vw-text);
}

body.page-Williamsburg_Virginia .mw-first-heading,
body.page-Williamsburg_Virginia #firstHeading {
	display: none;
}

.vw-place-hero {
	position: relative;
	overflow: hidden;
	min-height: 470px;
	margin-bottom: 1.4rem;
	border-radius: 28px;
	background: var(--vw-navy);
	box-shadow: 0 20px 50px rgba(11,47,79,.16);
}

.vw-place-hero-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	line-height: 0;
}

.vw-place-hero-image > span,
.vw-place-hero-image > p,
.vw-place-hero-image .mw-default-size,
.vw-place-hero-image .mw-file-description,
.vw-place-hero-image a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.vw-place-hero-image img,
.vw-place-hero-image .mw-file-element {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
}

.vw-place-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(
			to top,
			rgba(3,20,34,.92) 0%,
			rgba(3,20,34,.62) 40%,
			rgba(3,20,34,.16) 72%
		);
}

.vw-place-hero-overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: clamp(2rem, 5vw, 4rem);
}

.vw-place-kicker {
	margin-bottom: .8rem;
	color: rgba(255,255,255,.88) !important;
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.vw-place-title {
	margin: 0;
	color: #fff !important;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(3.4rem, 8vw, 6.4rem);
	font-weight: 700;
	line-height: .95;
	letter-spacing: -.035em;
	text-shadow: 0 3px 12px rgba(0,0,0,.45);
}

.vw-place-summary {
	max-width: 820px;
	margin-top: 1.2rem;
	color: #fff !important;
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	line-height: 1.55;
	text-shadow: 0 2px 6px rgba(0,0,0,.55);
}

.vw-place-quickfacts {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .8rem;
	margin: 1rem 0 3rem;
}

.vw-place-quickfacts > div {
	min-width: 0;
	padding: 1.15rem 1.25rem;
	border: 1px solid rgba(11,47,79,.10);
	border-radius: 16px;
	background: rgba(255,255,255,.82);
	box-shadow: 0 5px 18px rgba(11,47,79,.05);
	line-height: 1.5;
}

.vw-place-quickfacts strong {
	color: var(--vw-navy);
}

.vw-place-intro {
	max-width: 920px;
	margin: 0 auto 3.5rem;
	font-size: 1.08rem;
	line-height: 1.75;
}

body.page-Williamsburg_Virginia .mw-parser-output > .mw-heading h2 {
	margin-top: 3.6rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 4vw, 2.8rem);
	color: var(--vw-navy);
}

.vw-place-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.7rem 0 3rem;
}

.vw-place-card-grid > p,
.vw-place-explore-grid > p {
	display: none !important;
}

.vw-place-card {
	min-width: 0;
	padding: 1.55rem;
	border: 1px solid rgba(11,47,79,.09);
	border-radius: 20px;
	background:
		linear-gradient(
			145deg,
			rgba(220,234,242,.88),
			rgba(246,242,231,.92)
		);
	box-shadow: 0 6px 20px rgba(11,47,79,.05);
	transition: transform .18s ease, box-shadow .18s ease;
}

.vw-place-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 13px 28px rgba(11,47,79,.11);
}

.vw-place-card h3 {
	margin: 0 0 .65rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.35rem;
	color: var(--vw-navy);
}

.vw-place-card h3 a,
.vw-place-card h3 a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-place-card h3 a:hover {
	text-decoration: underline !important;
}

.vw-place-explore-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.6rem 0 3rem;
}

.vw-place-explore-grid > div {
	min-width: 0;
	padding: 1.4rem 1.5rem;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(11,47,79,.10);
	box-shadow: 0 6px 18px rgba(11,47,79,.05);
	line-height: 1.55;
}

.vw-place-explore-grid a,
.vw-place-explore-grid a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-place-explore-grid a:hover {
	text-decoration: underline !important;
}

body.page-Williamsburg_Virginia .wikitable {
	width: 100%;
	margin: 1.5rem 0 2.5rem;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid rgba(11,47,79,.12);
	border-radius: 16px;
	background: #fff;
}

body.page-Williamsburg_Virginia .wikitable th {
	padding: .9rem 1rem;
	background: var(--vw-navy);
	color: #fff;
	text-align: left;
}

body.page-Williamsburg_Virginia .wikitable td {
	padding: .9rem 1rem;
	border-color: rgba(11,47,79,.08);
}

body.page-Williamsburg_Virginia .references {
	font-size: .9rem;
	line-height: 1.5;
}

body.page-Williamsburg_Virginia .mw-parser-output a.new {
	color: #8d3040;
}

body.page-Williamsburg_Virginia .vw-place-card a.new,
body.page-Williamsburg_Virginia .vw-place-explore-grid a.new {
	color: var(--vw-navy) !important;
}


/* =========================================================
   ATTRACTION PAGES
   ========================================================= */

.vw-attraction {
	max-width: 1280px;
	margin: 0 auto;
	color: var(--vw-text);
}

body.page-Colonial_Williamsburg .mw-first-heading,
body.page-Colonial_Williamsburg #firstHeading {
	display: none !important;
}

.vw-attraction-hero {
	position: relative;
	overflow: hidden;
	min-height: 490px;
	margin: 0 0 1.4rem;
	border-radius: 28px;
	background: var(--vw-navy);
	box-shadow: 0 20px 52px rgba(11,47,79,.17);
}

.vw-attraction-hero-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	line-height: 0;
}

.vw-attraction-hero-image > span,
.vw-attraction-hero-image > p,
.vw-attraction-hero-image .mw-default-size,
.vw-attraction-hero-image .mw-file-description,
.vw-attraction-hero-image a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.vw-attraction-hero-image img,
.vw-attraction-hero-image .mw-file-element {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
}

.vw-attraction-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(
			to top,
			rgba(3,20,34,.94) 0%,
			rgba(3,20,34,.68) 40%,
			rgba(3,20,34,.18) 72%,
			rgba(3,20,34,.04) 100%
		);
}

.vw-attraction-hero-overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: clamp(2rem, 5vw, 4rem);
}

.vw-attraction-kicker {
	margin-bottom: .8rem;
	color: rgba(255,255,255,.90) !important;
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
	text-shadow: 0 1px 4px rgba(0,0,0,.6);
}

.vw-attraction-title {
	margin: 0;
	color: #fff !important;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(3.1rem, 7vw, 6.1rem);
	font-weight: 700;
	line-height: .95;
	letter-spacing: -.035em;
	text-shadow: 0 3px 13px rgba(0,0,0,.55);
}

.vw-attraction-summary {
	max-width: 860px;
	margin-top: 1.25rem;
	color: #fff !important;
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	line-height: 1.55;
	text-shadow: 0 2px 6px rgba(0,0,0,.65);
}

.vw-attraction-quickfacts {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .8rem;
	margin: 1rem 0 3rem;
}

.vw-attraction-quickfacts > div {
	min-width: 0;
	padding: 1.15rem 1.25rem;
	border: 1px solid rgba(11,47,79,.10);
	border-radius: 16px;
	background: rgba(255,255,255,.84);
	box-shadow: 0 5px 18px rgba(11,47,79,.05);
	line-height: 1.5;
}

.vw-attraction-quickfacts strong {
	color: var(--vw-navy);
}

.vw-attraction-intro {
	max-width: 940px;
	margin: 0 auto 3.5rem;
	font-size: 1.08rem;
	line-height: 1.75;
}

body.page-Colonial_Williamsburg .mw-parser-output > .mw-heading h2,
.vw-attraction .mw-heading h2 {
	margin-top: 3.8rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 4vw, 2.8rem);
	line-height: 1.1;
	color: var(--vw-navy);
}

.vw-attraction-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.7rem 0 3rem;
}

.vw-attraction-card-grid > p,
.vw-visit-grid > p,
.vw-attraction-nearby-grid > p {
	display: none !important;
}

.vw-attraction-card {
	min-width: 0;
	padding: 1.55rem;
	border: 1px solid rgba(11,47,79,.09);
	border-radius: 20px;
	background:
		linear-gradient(
			145deg,
			rgba(220,234,242,.89),
			rgba(246,242,231,.94)
		);
	box-shadow: 0 6px 20px rgba(11,47,79,.05);
	line-height: 1.6;
	transition: transform .18s ease, box-shadow .18s ease;
}

.vw-attraction-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 13px 28px rgba(11,47,79,.11);
}

.vw-attraction-card h3 {
	margin: 0 0 .65rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.35rem;
	color: var(--vw-navy);
}

.vw-attraction-card h3 a,
.vw-attraction-card h3 a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-attraction-card h3 a:hover {
	text-decoration: underline !important;
}

.vw-visit-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.6rem 0 3rem;
}

.vw-visit-grid > div {
	min-width: 0;
	padding: 1.45rem 1.55rem;
	border: 1px solid rgba(11,47,79,.09);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 6px 19px rgba(11,47,79,.05);
	line-height: 1.6;
}

.vw-visit-grid > div strong {
	color: var(--vw-navy);
}

.vw-attraction-nearby-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.6rem 0 3rem;
}

.vw-attraction-nearby-grid > div {
	min-width: 0;
	padding: 1.4rem 1.5rem;
	border: 1px solid rgba(11,47,79,.10);
	border-radius: 18px;
	background: rgba(255,255,255,.86);
	box-shadow: 0 6px 18px rgba(11,47,79,.05);
	line-height: 1.55;
}

.vw-attraction-nearby-grid a,
.vw-attraction-nearby-grid a.new {
	color: var(--vw-navy) !important;
	text-decoration: none !important;
}

.vw-attraction-nearby-grid a:hover {
	text-decoration: underline !important;
}

.vw-attraction ul {
	line-height: 1.65;
}

.vw-attraction li {
	margin-bottom: .3rem;
}

body.page-Colonial_Williamsburg .references {
	font-size: .9rem;
	line-height: 1.5;
}

body.page-Colonial_Williamsburg .vw-attraction a.new {
	color: #8d3040;
}

body.page-Colonial_Williamsburg .vw-attraction-card a.new,
body.page-Colonial_Williamsburg .vw-attraction-nearby-grid a.new {
	color: var(--vw-navy) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

	.vw-card-grid,
	.vw-photo-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.vw-link-grid ul,
	.vw-secondary-destinations {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vw-place-quickfacts,
	.vw-attraction-quickfacts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vw-place-card-grid,
	.vw-attraction-card-grid,
	.vw-attraction-nearby-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}


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

@media (max-width: 700px) {

	.vw-hero {
		min-height: 330px;
		padding: 3rem 1.6rem;
		margin-bottom: 3.2rem;
		border-radius: 22px;
	}

	.vw-hero-title {
		font-size: clamp(3.2rem, 15vw, 5rem);
	}

	.vw-search form {
		flex-direction: column;
	}

	.vw-search input[type="text"],
	.vw-search input[type="submit"],
	.vw-search button {
		width: 100% !important;
		box-sizing: border-box;
	}

	.vw-card-grid,
	.vw-photo-card-grid,
	.vw-feature-grid,
	.vw-destination-grid,
	.vw-place-quickfacts,
	.vw-place-card-grid,
	.vw-place-explore-grid,
	.vw-attraction-quickfacts,
	.vw-attraction-card-grid,
	.vw-visit-grid,
	.vw-attraction-nearby-grid {
		grid-template-columns: 1fr !important;
	}

	.vw-card-image,
	.vw-card-image img,
	.vw-card-image .mw-file-element {
		height: 230px !important;
	}

	.vw-photo-card {
		min-height: 0;
	}

	.vw-destination-card {
		height: 300px;
	}

	.vw-destination-overlay {
		padding: 1.5rem;
	}

	.vw-place-hero {
		min-height: 390px;
		border-radius: 21px;
	}

	.vw-place-hero-overlay {
		padding: 1.7rem;
	}

	.vw-place-title {
		font-size: clamp(3rem, 15vw, 4.5rem);
	}

	.vw-place-intro {
		font-size: 1rem;
	}

	.vw-attraction-hero {
		min-height: 410px;
		border-radius: 21px;
	}

	.vw-attraction-hero-overlay {
		padding: 1.7rem;
	}

	.vw-attraction-title {
		font-size: clamp(2.9rem, 14vw, 4.4rem);
	}

	.vw-attraction-summary {
		font-size: 1rem;
	}

	.vw-attraction-intro {
		font-size: 1rem;
	}

	.vw-home-section {
		margin: 3.5rem 0;
	}

	.vw-home-bottom {
		padding: 1.8rem;
	}
}


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

@media (max-width: 460px) {

	.vw-link-grid ul,
	.vw-secondary-destinations {
		grid-template-columns: 1fr;
	}
}
/* =========================================================
   VIRGINIA.WIKI — SITE BACKGROUND
   ========================================================= */

html,
body {
	background:
		linear-gradient(
			180deg,
			#edf3f8 0%,
			#f4f7f9 48%,
			#f7f5ef 100%
		) fixed !important;
}
/* =========================================================
   LONG ATTRACTION TITLES
   Prevent very long names from overflowing the hero
   ========================================================= */

body.page-American_Revolution_Museum_at_Yorktown
.vw-attraction-title {
	font-size: clamp(3rem, 5vw, 5.4rem);
	line-height: 0.92;
	max-width: 1100px;
}

@media (max-width: 900px) {
	body.page-American_Revolution_Museum_at_Yorktown
	.vw-attraction-title {
		font-size: clamp(2.6rem, 8vw, 4.3rem);
		line-height: 0.95;
	}
}

@media (max-width: 600px) {
	body.page-American_Revolution_Museum_at_Yorktown
	.vw-attraction-title {
		font-size: clamp(2.25rem, 10vw, 3.4rem);
		line-height: 0.98;
	}
}