/**
 * Complianz policy pages (Cookie Policy EU/UK, Opt-out preferences), styled to
 * match the Elementor-built Terms and Conditions page. Loaded only on those
 * pages by inc/consent.php, after Complianz's own document.css.
 */

/* Terms hides the Bridge title bar; the hero below carries the H1. */
body.iw-legal-page .title_outer {
	display: none;
}

body.iw-legal-page .content .container_inner.default_template_holder {
	width: 1120px;
	max-width: calc(100% - 40px);
	padding: 190px 0 150px;
}

/* Hero: H1, intro line, contact button */
.iw-legal-hero {
	margin-bottom: 190px;
	color: #000;
}
.iw-legal-hero h1 {
	margin: 0;
	font-family: "Nunito Sans", sans-serif;
	font-size: 62px;
	font-weight: 800;
	line-height: 1.1;
	color: #000;
}
.iw-legal-hero p {
	margin: 30px 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
	color: #000;
}
.iw-legal-hero .iw-legal-button {
	display: inline-block;
	padding: 12px 24px;
	border: 3px solid #740fc7;
	border-radius: 50px;
	background-color: #7300cb;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	transition: background-color 0.2s, color 0.2s;
}
.iw-legal-hero .iw-legal-button:hover,
.iw-legal-hero .iw-legal-button:focus-visible {
	background-color: transparent;
	color: #740fc7;
}

/* Document body: Terms' type scale instead of Complianz's 800px grey column */
body.iw-legal-page #cmplz-document {
	max-width: none;
	font-size: 18px;
	color: #000;
}
body.iw-legal-page #cmplz-document > h2 {
	margin: 0;
	padding: 25px 0;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.3;
	color: #000;
}
body.iw-legal-page #cmplz-document > h3 {
	margin: 10px 0 0;
	padding: 15px 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	color: #000;
}
body.iw-legal-page #cmplz-document p,
body.iw-legal-page #cmplz-document li,
body.iw-legal-page #cmplz-document td {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
	color: #000;
}
body.iw-legal-page #cmplz-document p {
	margin-bottom: 30px;
}
body.iw-legal-page #cmplz-document ul {
	margin: 0 0 30px 25px;
}
body.iw-legal-page #cmplz-document li::marker {
	color: #7300cb;
}
body.iw-legal-page #cmplz-document a {
	color: #6633ff;
}
body.iw-legal-page #cmplz-document a:hover {
	color: #540095;
}

/* Section dividers, the same markup Terms uses (sizes from site.css) */
body.iw-legal-page #cmplz-document .wedge-hr {
	margin-top: 40px;
}

/* Cookie overview: one row per service */
body.iw-legal-page #cmplz-document .cmplz-dropdown {
	margin-bottom: 10px;
	border-radius: 10px;
	background-color: #f7f7f9;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown summary {
	margin: 0;
	padding: 12px 16px;
	border-radius: 10px;
	background-color: #f0f0f4;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown summary h3 {
	font-size: 20px;
	font-weight: 700;
	color: #000;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown summary p {
	margin: 0;
	font-size: 15px;
	color: #444;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown h4 {
	font-size: 18px;
	font-weight: 700;
	color: #000;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown p,
body.iw-legal-page #cmplz-document .cmplz-dropdown li,
body.iw-legal-page #cmplz-document .cmplz-dropdown a {
	font-size: 16px;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown p {
	margin-bottom: 15px;
}
/* Usage, Sharing data and the cookie tables all start 20px in from the panel edge, with
   20px between blocks. Complianz pads these blocks and their heading and text by 15px,
   which pushed the text 50px in; that padding goes. The two blocks are side-by-side
   inline blocks, so each width leaves room for its margins and the inline gap. */
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-service-description,
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-sharing-data {
	width: calc(50% - 35px);
	margin: 20px 20px 0;
	padding: 0;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-sharing-data {
	margin-left: 0;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-service-description h4,
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-sharing-data h4 {
	margin: 0 0 5px;
	padding: 0;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-service-description p,
body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-sharing-data p {
	margin: 0;
	padding: 0;
}
body.iw-legal-page #cmplz-document .cmplz-dropdown .cookies-per-purpose {
	margin: 20px;
}
/* Cookie names: site.css has a global .name rule (38px, white) from the Bridge theme. */
body.iw-legal-page #cmplz-document .cookies-per-purpose .name {
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
}

/* Manage-consent panel inside the policy */
body.iw-legal-page #cmplz-manage-consent-container .cmplz-category-header h2 {
	font-size: 20px;
	font-weight: 700;
	color: #000;
}
body.iw-legal-page #cmplz-manage-consent-container .cmplz-category {
	border-radius: 10px;
}

@media (max-width: 1024px) {
	body.iw-legal-page .content .container_inner.default_template_holder {
		padding-top: 140px;
	}
	.iw-legal-hero {
		margin-bottom: 100px;
	}
}
@media (max-width: 767px) {
	body.iw-legal-page .content .container_inner.default_template_holder {
		padding: 120px 0 80px;
	}
	.iw-legal-hero {
		margin-bottom: 60px;
	}
	.iw-legal-hero h1 {
		font-size: 48px;
	}
	body.iw-legal-page #cmplz-document > h2 {
		font-size: 26px;
	}
	body.iw-legal-page #cmplz-document > h3 {
		font-size: 21px;
	}
	body.iw-legal-page #cmplz-document p,
	body.iw-legal-page #cmplz-document li {
		font-size: 17px;
	}
}
/* Complianz stacks Usage and Sharing data at 600px. */
@media (max-width: 600px) {
	body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-service-description,
	body.iw-legal-page #cmplz-document .cmplz-dropdown .cmplz-sharing-data {
		width: calc(100% - 40px);
		margin-left: 20px;
	}
}
@media (max-width: 499px) {
	.iw-legal-hero h1 {
		font-size: 40px;
	}
}
