:root {
	--cptt-cream: #f7f2e8;
	--cptt-paper: #fbf8f1;
	--cptt-sand: #e5dac8;
	--cptt-deep: #0f241c;
	--cptt-charcoal: #1d1c18;
	--cptt-muted: #70695f;
	--cptt-copper: #a8794d;
	--cptt-line: rgba(29, 28, 24, .12);
	--cptt-white-line: rgba(255, 255, 255, .2);
	--cptt-shadow: 0 28px 80px rgba(29, 28, 24, .08);
}

body {
	background: var(--cptt-paper);
	color: var(--cptt-charcoal);
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.site-content,
.ast-container,
.content-area,
.site-main {
	min-height: 0;
}

.cptt-premium-front .site-content .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}

.cptt-premium-front .content-area,
.cptt-premium-front .site-main {
	width: 100%;
	margin: 0;
	padding: 0;
}

.cptt-premium-front .entry-header,
.cptt-premium-front .entry-title {
	display: none;
}

.cptt-premium-front .site-header {
	position: absolute;
	inset: 0 0 auto;
	z-index: 20;
	background: transparent;
	border: 0;
}

.cptt-premium-front .main-header-bar,
.cptt-premium-front .ast-primary-header-bar {
	background: transparent;
	border: 0;
}

.cptt-premium-front .site-title a,
.cptt-premium-front .main-header-menu .menu-link,
.cptt-premium-front .ast-builder-menu-1 .menu-item > .menu-link {
	color: #fff;
	letter-spacing: .13em;
	text-transform: uppercase;
	font-size: 12px;
}

.cptt-premium-front .ast-site-identity {
	padding: 22px 0;
}

.cptt-home {
	overflow: hidden;
	background: var(--cptt-paper);
	color: var(--cptt-charcoal);
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

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

.cptt-home img {
	display: block;
	width: 100%;
	max-width: 100%;
}

.cptt-home-wrap {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
}

.cptt-home-kicker {
	margin: 0 0 14px;
	color: var(--cptt-copper);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.cptt-home h1,
.cptt-home h2,
.cptt-home h3 {
	color: inherit;
	font-family: "Cormorant Garamond", Georgia, serif;
	letter-spacing: 0;
}

.cptt-home-hero {
	position: relative;
	display: grid;
	min-height: 100svh;
	align-items: center;
	background:
		linear-gradient(90deg, rgba(9, 18, 14, .67), rgba(9, 18, 14, .32) 55%, rgba(9, 18, 14, .62)),
		var(--cptt-hero-image) center / cover;
	color: #fff;
	isolation: isolate;
}

.cptt-home-hero__shade {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: radial-gradient(circle at 55% 42%, rgba(255, 255, 255, .08), transparent 34%);
}

.cptt-home-hero__inner {
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto;
	padding: 140px 0 90px;
}

.cptt-home-hero h1 {
	max-width: 1040px;
	margin: 0;
	font-size: clamp(56px, 9.5vw, 126px);
	font-weight: 600;
	line-height: .88;
}

.cptt-home-hero p:not(.cptt-home-kicker) {
	max-width: 640px;
	margin: 28px 0 0;
	color: rgba(255, 255, 255, .84);
	font-size: clamp(17px, 2vw, 22px);
	line-height: 1.72;
}

.cptt-home-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 38px;
}

.cptt-home-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 25px;
	border: 1px solid currentColor;
	color: inherit;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .15em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color .35s ease, border-color .35s ease, color .35s ease, transform .35s ease;
}

.cptt-home-btn:hover,
.cptt-home-btn:focus {
	transform: translateY(-1px);
	text-decoration: none;
}

.cptt-home-btn--light {
	background: #fff;
	border-color: #fff;
	color: var(--cptt-deep);
}

.cptt-home-btn--ghost {
	background: rgba(255, 255, 255, .04);
	color: #fff;
}

.cptt-home-btn--ghost:hover,
.cptt-home-btn--ghost:focus {
	background: #fff;
	color: var(--cptt-deep);
}

.cptt-home-section {
	padding: clamp(76px, 10vw, 148px) 0;
}

.cptt-home-split {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: clamp(42px, 7vw, 96px);
	align-items: center;
}

.cptt-home-copy h2,
.cptt-home-section-head h2,
.cptt-home-map h2,
.cptt-home-editorial-note h2 {
	margin: 0;
	font-size: clamp(42px, 6vw, 78px);
	font-weight: 600;
	line-height: .96;
}

.cptt-home-copy p:not(.cptt-home-kicker),
.cptt-home-section-head p,
.cptt-home-map__copy p,
.cptt-home-editorial-note p {
	max-width: 680px;
	margin: 24px 0 0;
	color: var(--cptt-muted);
	font-size: 16px;
	line-height: 1.9;
}

.cptt-home-image {
	position: relative;
	margin: 0;
	overflow: hidden;
	aspect-ratio: 1.28;
	background: var(--cptt-sand);
}

.cptt-home .cptt-home-image > img,
.cptt-home-card__image img,
.cptt-home-experience img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.cptt-home .cptt-home-image > img {
	position: absolute;
	inset: 0;
	max-width: none;
	height: 100% !important;
	object-position: center 52%;
}

.cptt-home-section-head {
	display: grid;
	grid-template-columns: minmax(0, .85fr) minmax(0, .9fr);
	gap: 42px;
	align-items: end;
	margin-bottom: 46px;
}

.cptt-home-section-head p:not(.cptt-home-kicker) {
	margin: 0;
}

.cptt-home-featured {
	background: #f1eadf;
	padding-top: clamp(72px, 7vw, 108px);
	padding-bottom: clamp(82px, 8vw, 118px);
}

.cptt-home-featured .cptt-home-section-head {
	grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr);
	align-items: center;
	margin-bottom: 42px;
}

.cptt-home-featured .cptt-home-section-head h2 {
	font-size: clamp(46px, 4.8vw, 76px);
	line-height: .95;
}

@media (min-width: 1180px) {
	.cptt-home-featured .cptt-home-section-head h2 {
		white-space: nowrap;
	}
}

.cptt-home-terrenos {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.cptt-home-card {
	overflow: hidden;
	background: rgba(255, 255, 255, .78);
	border: 1px solid var(--cptt-line);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
	transition: transform .45s ease, box-shadow .45s ease, background-color .45s ease;
}

.cptt-home-card:hover {
	background: #fff;
	box-shadow: var(--cptt-shadow);
	transform: translateY(-7px);
}

.cptt-home-card__image {
	display: block;
	aspect-ratio: .95;
	overflow: hidden;
	background: var(--cptt-sand);
}

.cptt-home-card__image img {
	transition: transform .9s ease, filter .9s ease;
}

.cptt-home-card:hover .cptt-home-card__image img {
	filter: saturate(.94) contrast(1.02);
	transform: scale(1.04);
}

.cptt-home-card__body {
	padding: 24px;
}

.cptt-home-card__region {
	margin: 0 0 10px;
	color: var(--cptt-copper);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.cptt-home-card h3 {
	margin: 0;
	font-size: clamp(30px, 3vw, 38px);
	font-weight: 600;
	line-height: .98;
}

.cptt-home-card h3 a {
	color: inherit;
	text-decoration: none;
}

.cptt-home-card__meta {
	display: grid;
	gap: 8px;
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid var(--cptt-line);
	color: var(--cptt-muted);
	font-size: 13px;
	line-height: 1.45;
}

.cptt-home-card__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.cptt-home-card__tags span,
.cptt-home-regions span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 11px;
	border: 1px solid var(--cptt-line);
	color: var(--cptt-deep);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.cptt-home-empty {
	padding: 34px;
	background: #fff;
	border: 1px solid var(--cptt-line);
	color: var(--cptt-muted);
}

.cptt-home-experience {
	background: var(--cptt-deep);
	color: #fff;
}

.cptt-home-experience__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
	gap: 24px;
}

.cptt-home-experience figure {
	position: relative;
	min-height: 335px;
	margin: 0;
	overflow: hidden;
	background: #172d24;
}

.cptt-home-experience__large {
	grid-row: span 2;
	min-height: 700px !important;
}

.cptt-home-experience figure::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, .58));
}

.cptt-home-experience figcaption {
	position: absolute;
	right: 28px;
	bottom: 26px;
	left: 28px;
	z-index: 1;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(34px, 4.5vw, 58px);
	font-weight: 600;
	line-height: .95;
}

.cptt-home-editorial-note {
	display: flex;
	min-height: 340px;
	flex-direction: column;
	justify-content: center;
	padding: clamp(30px, 5vw, 56px);
	border: 1px solid rgba(255, 255, 255, .14);
	background: rgba(255, 255, 255, .04);
}

.cptt-home-editorial-note p {
	color: rgba(255, 255, 255, .72);
}

.cptt-home-map {
	background: #171814;
	color: #fff;
}

.cptt-home-map__inner {
	display: grid;
	grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
	gap: clamp(36px, 6vw, 78px);
	align-items: center;
}

.cptt-home-map__copy p {
	color: rgba(255, 255, 255, .68);
}

.cptt-home-map__panel {
	display: flex;
	min-height: 590px;
	align-items: end;
	padding: 34px;
	background:
		linear-gradient(rgba(15, 36, 28, .22), rgba(15, 36, 28, .76)),
		var(--cptt-map-image) center / cover;
	border: 1px solid rgba(255, 255, 255, .13);
}

.cptt-home-regions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.cptt-home-regions span {
	border-color: rgba(255, 255, 255, .28);
	color: rgba(255, 255, 255, .86);
}

.cptt-home-values {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.cptt-home-values article {
	padding-top: 24px;
	border-top: 1px solid var(--cptt-line);
}

.cptt-home-values h3 {
	margin: 0 0 12px;
	font-size: 28px;
	font-weight: 600;
	line-height: 1;
}

.cptt-home-values p {
	margin: 0;
	color: var(--cptt-muted);
	font-size: 14px;
	line-height: 1.75;
}

.cptt-home-final {
	display: grid;
	min-height: 88svh;
	align-items: center;
	background:
		linear-gradient(rgba(10, 18, 14, .3), rgba(10, 18, 14, .66)),
		var(--cptt-final-image) center / cover;
	color: #fff;
	text-align: center;
}

.cptt-home-final__content {
	width: min(1000px, calc(100% - 48px));
	margin: 0 auto;
}

.cptt-home-final h2 {
	margin: 0 auto 34px;
	font-size: clamp(52px, 8vw, 106px);
	font-weight: 600;
	line-height: .9;
}

.cptt-law {
	background: var(--cptt-paper);
	scroll-behavior: smooth;
}

.cptt-law :target {
	scroll-margin-top: 94px;
}

.cptt-law-hero {
	min-height: 94svh;
	background:
		radial-gradient(circle at 74% 18%, rgba(255, 255, 255, .12), transparent 24%),
		linear-gradient(100deg, rgba(6, 15, 11, .9) 0%, rgba(6, 15, 11, .72) 34%, rgba(6, 15, 11, .32) 68%, rgba(6, 15, 11, .58) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .18) 0%, rgba(6, 15, 11, .66) 100%),
		var(--cptt-hero-image) center / cover;
}

.cptt-law-hero h1 {
	max-width: 920px;
	font-size: clamp(42px, 5.6vw, 78px);
	line-height: 1;
}

.cptt-law-hero p:not(.cptt-home-kicker) {
	max-width: 760px;
}

.cptt-law-nav {
	position: sticky;
	top: 0;
	z-index: 10;
	background: rgba(247, 242, 232, .93);
	border-bottom: 1px solid var(--cptt-line);
	backdrop-filter: blur(14px);
}

.cptt-law-nav .cptt-home-wrap {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding: 12px 0;
}

.cptt-law-nav a {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	min-height: 38px;
	padding: 0 14px;
	border: 1px solid rgba(15, 36, 28, .14);
	color: var(--cptt-deep);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-decoration: none;
	text-transform: uppercase;
}

.cptt-law-nav a:hover,
.cptt-law-nav a:focus {
	background: var(--cptt-deep);
	border-color: var(--cptt-deep);
	color: #fff;
}

.cptt-law-two {
	display: grid;
	grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
	gap: clamp(32px, 5vw, 68px);
	align-items: start;
}

.cptt-law h2 {
	margin: 0;
	max-width: 620px;
	font-size: clamp(31px, 3.15vw, 46px);
	font-weight: 600;
	line-height: 1.1;
}

.cptt-law p,
.cptt-law li,
.cptt-law td {
	color: var(--cptt-muted);
	font-size: 16px;
	line-height: 1.76;
}

.cptt-law p {
	margin: 22px 0 0;
}

.cptt-law strong {
	color: var(--cptt-charcoal);
}

.cptt-law-dark strong {
	color: #fff;
}

.cptt-law-summary,
.cptt-law-panel,
.cptt-law-card,
.cptt-law-example,
.cptt-law-accordion__item,
.cptt-law-glossary article {
	border: 1px solid var(--cptt-line);
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .72) inset;
}

.cptt-law-summary {
	padding: clamp(26px, 4vw, 42px);
}

.cptt-law-summary p {
	margin: 0;
	padding: 18px 0;
	border-bottom: 1px solid var(--cptt-line);
	color: var(--cptt-charcoal);
	font-size: 18px;
	line-height: 1.65;
}

.cptt-law-summary p:first-child {
	padding-top: 0;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(25px, 2.4vw, 34px);
	line-height: 1.18;
}

.cptt-law-summary p:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.cptt-law-notice {
	display: grid;
	gap: 8px;
	margin-top: 28px;
	padding: 20px;
	border-left: 4px solid var(--cptt-copper);
	background: #fff;
	color: var(--cptt-muted);
	font-size: 15px;
	line-height: 1.65;
}

.cptt-law-notice strong {
	color: var(--cptt-deep);
	font-size: 12px;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.cptt-law-chip-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin-top: 34px;
}

.cptt-law-chip-grid article {
	min-height: 82px;
	padding: 20px;
	border: 1px solid var(--cptt-line);
	background: rgba(255, 255, 255, .56);
	color: var(--cptt-deep);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.35;
	text-transform: uppercase;
}

.cptt-law-dark {
	background: var(--cptt-deep);
	color: #fff;
}

.cptt-law-dark p,
.cptt-law-dark li,
.cptt-law-dark .cptt-home-section-head p {
	color: rgba(255, 255, 255, .84);
}

.cptt-law-dark .cptt-law-card,
.cptt-law-dark .cptt-law-panel,
.cptt-law-dark .cptt-law-accordion__item {
	border-color: rgba(255, 255, 255, .14);
	background: rgba(255, 255, 255, .05);
	box-shadow: none;
}

.cptt-law-copy blockquote {
	margin: 28px 0;
	padding: clamp(22px, 3vw, 32px);
	border-left: 4px solid var(--cptt-copper);
	background: linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .035));
	color: #fff;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(22px, 1.85vw, 28px);
	font-weight: 600;
	line-height: 1.34;
	font-style: normal;
}

.cptt-law-soft {
	background: #f1eadf;
}

.cptt-law-panel,
.cptt-law-card {
	padding: clamp(24px, 3vw, 34px);
}

.cptt-law-panel p:first-child,
.cptt-law-card p:first-child {
	margin-top: 0;
}

.cptt-law-card-grid,
.cptt-law-law-grid,
.cptt-law-myths,
.cptt-law-glossary {
	display: grid;
	gap: 20px;
}

.cptt-law-card-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cptt-law-law-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cptt-law-myths {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cptt-law-card h3,
.cptt-law-glossary h3 {
	margin: 0 0 14px;
	color: var(--cptt-deep);
	font-size: clamp(22px, 1.55vw, 27px);
	font-weight: 600;
	line-height: 1.14;
}

.cptt-law-dark .cptt-law-card h3,
.cptt-law-dark .cptt-law-myths strong {
	color: #fff;
}

.cptt-law-card ul,
.cptt-law-checks,
.cptt-law-alerts {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cptt-law-card li,
.cptt-law-checks li,
.cptt-law-alerts li {
	position: relative;
	padding-left: 28px;
}

.cptt-law-card li::before,
.cptt-law-checks li::before {
	content: "";
	position: absolute;
	top: .72em;
	left: 0;
	width: 10px;
	height: 10px;
	border: 2px solid var(--cptt-copper);
	border-radius: 50%;
}

.cptt-law-checks--columns {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cptt-law-myths article {
	padding: 26px;
	border: 1px solid rgba(255, 255, 255, .14);
	background: rgba(255, 255, 255, .05);
}

.cptt-law-myths p:first-child {
	margin-top: 0;
}

.cptt-law-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--cptt-line);
	background: #fff;
}

.cptt-law-table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
}

.cptt-law-table th,
.cptt-law-table td {
	padding: 18px;
	border-bottom: 1px solid var(--cptt-line);
	text-align: left;
	vertical-align: top;
}

.cptt-law-table thead th {
	background: var(--cptt-deep);
	color: #fff;
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.cptt-law-table tbody th {
	color: var(--cptt-deep);
	font-size: 16px;
	font-weight: 700;
}

.cptt-law-alerts li {
	padding: 18px 18px 18px 46px;
	border: 1px solid var(--cptt-line);
	background: #fff;
	color: var(--cptt-charcoal);
	font-weight: 600;
	line-height: 1.5;
}

.cptt-law-alerts li::before {
	content: "!";
	position: absolute;
	top: 18px;
	left: 18px;
	display: grid;
	width: 18px;
	height: 18px;
	place-items: center;
	border: 1px solid var(--cptt-copper);
	color: var(--cptt-copper);
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
}

.cptt-law-example {
	width: min(980px, 100%);
	padding: clamp(30px, 5vw, 58px);
}

.cptt-law-example h2 {
	max-width: 840px;
}

.cptt-law-photo-break {
	display: grid;
	min-height: 540px;
	align-items: end;
	padding: clamp(70px, 8vw, 118px) 0;
	background:
		radial-gradient(circle at 78% 20%, rgba(255, 255, 255, .14), transparent 22%),
		linear-gradient(105deg, rgba(6, 15, 11, .86) 0%, rgba(6, 15, 11, .62) 38%, rgba(6, 15, 11, .2) 72%, rgba(6, 15, 11, .52) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .1) 0%, rgba(6, 15, 11, .62) 100%),
		var(--cptt-break-image) center / cover;
	color: #fff;
}

.cptt-law-photo-break .cptt-home-wrap {
	width: min(1000px, calc(100% - 48px));
	margin-left: max(24px, calc((100vw - 1180px) / 2));
}

.cptt-law-photo-break p:not(.cptt-home-kicker) {
	max-width: 780px;
	margin: 0;
	color: #fff;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(32px, 3.7vw, 54px);
	font-weight: 600;
	line-height: 1.08;
}

.cptt-law-accordion {
	display: grid;
	gap: 12px;
}

.cptt-law-accordion__button {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px;
	border: 0;
	background: transparent;
	color: var(--cptt-deep);
	font: inherit;
	font-weight: 700;
	line-height: 1.35;
	text-align: left;
	cursor: pointer;
}

.cptt-law-accordion__button:focus-visible {
	outline: 3px solid rgba(168, 121, 77, .42);
	outline-offset: 2px;
}

.cptt-law-accordion__button span:last-child {
	display: grid;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	place-items: center;
	border: 1px solid var(--cptt-line);
	color: var(--cptt-copper);
}

.cptt-law-accordion__button[aria-expanded="true"] span:last-child {
	background: var(--cptt-deep);
	border-color: var(--cptt-deep);
	color: #fff;
	transform: rotate(45deg);
}

.cptt-law-accordion__panel {
	padding: 0 22px 24px;
}

.cptt-law-accordion__panel p {
	margin-top: 0;
}

.cptt-law-glossary {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cptt-law-glossary article {
	padding: 24px;
}

.cptt-law-glossary p {
	margin-top: 0;
	font-size: 15px;
}

.cptt-law-final {
	min-height: 78svh;
	background:
		radial-gradient(circle at 76% 20%, rgba(255, 255, 255, .16), transparent 25%),
		linear-gradient(102deg, rgba(6, 15, 11, .88) 0%, rgba(6, 15, 11, .68) 42%, rgba(6, 15, 11, .25) 72%, rgba(6, 15, 11, .56) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .12) 0%, rgba(6, 15, 11, .7) 100%),
		var(--cptt-final-image) center / cover;
	text-align: left;
}

.cptt-law-final .cptt-home-final__content {
	width: min(1080px, calc(100% - 48px));
}

.cptt-law-final h2 {
	margin-right: 0;
	margin-left: 0;
	font-size: clamp(40px, 5vw, 68px);
	line-height: 1;
}

.cptt-law-final p:not(.cptt-home-kicker) {
	max-width: 780px;
	color: rgba(255, 255, 255, .86);
	font-size: 18px;
	line-height: 1.78;
}

.cptt-law-final__actions {
	justify-content: flex-start;
}

.cptt-contact {
	background: var(--cptt-paper);
}

.cptt-contact-hero {
	min-height: 94svh;
	background:
		radial-gradient(circle at 76% 22%, rgba(255, 255, 255, .13), transparent 24%),
		linear-gradient(100deg, rgba(6, 15, 11, .88) 0%, rgba(6, 15, 11, .68) 38%, rgba(6, 15, 11, .28) 72%, rgba(6, 15, 11, .58) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .12) 0%, rgba(6, 15, 11, .62) 100%),
		var(--cptt-hero-image) center / cover;
}

.cptt-contact-hero h1 {
	max-width: 980px;
	font-size: clamp(46px, 6vw, 86px);
	line-height: .98;
}

.cptt-contact-hero p:not(.cptt-home-kicker) {
	max-width: 700px;
}

.cptt-contact-intro {
	background: #f1eadf;
}

.cptt-contact-panel {
	display: grid;
	gap: 14px;
}

.cptt-contact-card {
	display: grid;
	gap: 10px;
	padding: clamp(24px, 3vw, 34px);
	border: 1px solid var(--cptt-line);
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 1px 0 rgba(255, 255, 255, .72) inset;
	color: var(--cptt-charcoal);
	text-decoration: none;
	transition: background-color .35s ease, box-shadow .35s ease, transform .35s ease;
}

.cptt-contact-card:hover,
.cptt-contact-card:focus {
	background: #fff;
	box-shadow: var(--cptt-shadow);
	color: var(--cptt-charcoal);
	text-decoration: none;
	transform: translateY(-3px);
}

.cptt-contact-card span {
	color: var(--cptt-copper);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.cptt-contact-card strong {
	color: var(--cptt-deep);
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(28px, 2.6vw, 38px);
	font-weight: 600;
	line-height: 1.04;
	overflow-wrap: anywhere;
}

.cptt-contact-card em {
	color: var(--cptt-muted);
	font-size: 15px;
	font-style: normal;
	line-height: 1.72;
}

.cptt-contact-dark {
	background: var(--cptt-deep);
	color: #fff;
}

.cptt-contact-dark h2 {
	margin: 0;
	max-width: 640px;
	font-size: clamp(34px, 4vw, 56px);
	font-weight: 600;
	line-height: 1.04;
}

.cptt-contact-steps {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: cptt-contact-step;
}

.cptt-contact-steps li {
	position: relative;
	min-height: 74px;
	padding: 22px 24px 22px 76px;
	border: 1px solid rgba(255, 255, 255, .14);
	background: rgba(255, 255, 255, .05);
	color: rgba(255, 255, 255, .84);
	font-size: 16px;
	line-height: 1.65;
	counter-increment: cptt-contact-step;
}

.cptt-contact-steps li::before {
	content: counter(cptt-contact-step, decimal-leading-zero);
	position: absolute;
	top: 22px;
	left: 22px;
	color: var(--cptt-copper);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
}

.cptt-contact-photo {
	display: grid;
	min-height: 560px;
	align-items: end;
	padding: clamp(74px, 8vw, 120px) 0;
	background:
		linear-gradient(105deg, rgba(6, 15, 11, .84) 0%, rgba(6, 15, 11, .6) 40%, rgba(6, 15, 11, .2) 74%, rgba(6, 15, 11, .56) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .08) 0%, rgba(6, 15, 11, .64) 100%),
		var(--cptt-contact-image) center / cover;
	color: #fff;
}

.cptt-contact-photo .cptt-home-wrap {
	width: min(1000px, calc(100% - 48px));
	margin-left: max(24px, calc((100vw - 1180px) / 2));
}

.cptt-contact-photo p:not(.cptt-home-kicker) {
	max-width: 780px;
	margin: 0;
	color: #fff;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(34px, 4.2vw, 62px);
	font-weight: 600;
	line-height: 1.02;
}

.cptt-contact-final {
	min-height: 78svh;
	background:
		radial-gradient(circle at 75% 20%, rgba(255, 255, 255, .14), transparent 24%),
		linear-gradient(102deg, rgba(6, 15, 11, .86) 0%, rgba(6, 15, 11, .64) 42%, rgba(6, 15, 11, .24) 72%, rgba(6, 15, 11, .58) 100%),
		linear-gradient(180deg, rgba(6, 15, 11, .1) 0%, rgba(6, 15, 11, .68) 100%),
		var(--cptt-final-image) center / cover;
	text-align: left;
}

.cptt-contact-final .cptt-home-final__content {
	width: min(1080px, calc(100% - 48px));
}

.cptt-contact-final h2 {
	margin-right: 0;
	margin-left: 0;
	font-size: clamp(42px, 5.8vw, 82px);
	line-height: .95;
}

.cptt-contact-final__actions {
	justify-content: flex-start;
}

.cptt-terrenos-view .cptt-archive,
.cptt-terrenos-view .cptt-single {
	background: var(--cptt-paper);
}

.cptt-terrenos-view .cptt-card,
.cptt-terrenos-view .cptt-metric,
.cptt-terrenos-view .cptt-finance-note,
.cptt-terrenos-view .cptt-spec-list div,
.cptt-terrenos-view .cptt-contact-card,
.cptt-terrenos-view .cptt-seller-card {
	border-color: var(--cptt-line);
	border-radius: 2px;
	box-shadow: none;
}

.cptt-terrenos-view .cptt-archive-hero h1,
.cptt-terrenos-view .cptt-title-block h1,
.cptt-terrenos-view .cptt-portal-section h2 {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 600;
}

.cptt-terrenos-view .cptt-kicker,
.cptt-terrenos-view .cptt-finance-note strong {
	color: var(--cptt-copper);
}

.cptt-terrenos-view .cptt-card-meta span,
.cptt-terrenos-view .cptt-share,
.cptt-terrenos-view .cptt-form button {
	border-radius: 0;
}

@media (max-width: 1024px) {
	.cptt-home-terrenos,
	.cptt-home-values {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cptt-law-two,
	.cptt-contact .cptt-home-split,
	.cptt-law-card-grid,
	.cptt-law-law-grid,
	.cptt-law-myths,
	.cptt-law-glossary {
		grid-template-columns: 1fr;
	}

	.cptt-law h2 {
		max-width: 760px;
		font-size: clamp(31px, 5.3vw, 42px);
	}

	.cptt-law-checks--columns,
	.cptt-law-chip-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cptt-home-section-head,
	.cptt-home-featured .cptt-home-section-head,
	.cptt-home-map__inner {
		grid-template-columns: 1fr;
	}

	.cptt-home-featured .cptt-home-section-head h2 {
		font-size: clamp(44px, 9vw, 68px);
		white-space: normal;
	}

	.cptt-home-section-head p:not(.cptt-home-kicker) {
		margin-top: 0;
	}
}

@media (max-width: 760px) {
	.cptt-home-wrap,
	.cptt-home-hero__inner,
	.cptt-home-final__content {
		width: min(100% - 32px, 1180px);
	}

	.cptt-home-hero {
		min-height: 92svh;
	}

	.cptt-home-hero__inner {
		padding-top: 120px;
	}

	.cptt-home-hero h1 {
		font-size: clamp(48px, 15vw, 72px);
	}

	.cptt-home-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.cptt-home-btn {
		width: 100%;
	}

	.cptt-home-section {
		padding: 72px 0;
	}

	.cptt-home-featured {
		padding-top: 72px;
		padding-bottom: 72px;
	}

	.cptt-home-featured .cptt-home-section-head {
		gap: 18px;
		margin-bottom: 30px;
	}

	.cptt-home-featured .cptt-home-section-head h2 {
		font-size: clamp(42px, 13vw, 58px);
		line-height: .98;
	}

	.cptt-home-split,
	.cptt-home-experience__grid,
	.cptt-home-map__inner,
	.cptt-home-terrenos,
	.cptt-home-values {
		grid-template-columns: 1fr;
	}

	.cptt-home-image,
	.cptt-home-map__panel {
		min-height: 430px;
	}

	.cptt-home-image {
		aspect-ratio: 1.08;
		min-height: 0;
	}

	.cptt-home-experience__large {
		min-height: 470px !important;
	}

	.cptt-home-experience figure,
	.cptt-home-editorial-note {
		min-height: 320px;
	}

	.cptt-home-card__image {
		aspect-ratio: 1.12;
	}

	.cptt-home-final {
		min-height: 78svh;
	}

	.cptt-law-nav .cptt-home-wrap {
		width: min(100% - 24px, 1180px);
	}

	.cptt-law-hero h1 {
		font-size: clamp(38px, 11vw, 58px);
		line-height: 1.02;
	}

	.cptt-law-hero {
		background:
			radial-gradient(circle at 74% 18%, rgba(255, 255, 255, .08), transparent 24%),
			linear-gradient(180deg, rgba(6, 15, 11, .86) 0%, rgba(6, 15, 11, .5) 42%, rgba(6, 15, 11, .86) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .82), rgba(6, 15, 11, .32)),
			var(--cptt-hero-image) center / cover;
	}

	.cptt-law h2 {
		font-size: clamp(29px, 8vw, 36px);
		line-height: 1.12;
	}

	.cptt-law p,
	.cptt-law li,
	.cptt-law td {
		font-size: 15px;
		line-height: 1.7;
	}

	.cptt-law-copy blockquote {
		font-size: clamp(21px, 6vw, 27px);
		line-height: 1.28;
	}

	.cptt-law-chip-grid,
	.cptt-law-checks--columns {
		grid-template-columns: 1fr;
	}

	.cptt-law-table th,
	.cptt-law-table td {
		padding: 15px;
	}

	.cptt-law-final {
		min-height: 84svh;
	}

	.cptt-law-photo-break {
		min-height: 460px;
		background:
			radial-gradient(circle at 76% 12%, rgba(255, 255, 255, .1), transparent 24%),
			linear-gradient(180deg, rgba(6, 15, 11, .78) 0%, rgba(6, 15, 11, .42) 38%, rgba(6, 15, 11, .88) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .82), rgba(6, 15, 11, .24)),
			var(--cptt-break-image) center / cover;
	}

	.cptt-law-photo-break .cptt-home-wrap {
		width: min(100% - 32px, 1180px);
		margin: 0 auto;
	}

	.cptt-law-photo-break p:not(.cptt-home-kicker) {
		font-size: clamp(28px, 8vw, 38px);
		line-height: 1.12;
	}

	.cptt-law-final {
		background:
			radial-gradient(circle at 70% 12%, rgba(255, 255, 255, .1), transparent 24%),
			linear-gradient(180deg, rgba(6, 15, 11, .84) 0%, rgba(6, 15, 11, .48) 40%, rgba(6, 15, 11, .9) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .84), rgba(6, 15, 11, .3)),
			var(--cptt-final-image) center / cover;
	}

	.cptt-law-final h2 {
		font-size: clamp(34px, 10vw, 48px);
		line-height: 1.04;
	}

	.cptt-contact-hero {
		background:
			radial-gradient(circle at 72% 14%, rgba(255, 255, 255, .1), transparent 24%),
			linear-gradient(180deg, rgba(6, 15, 11, .84) 0%, rgba(6, 15, 11, .48) 42%, rgba(6, 15, 11, .88) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .84), rgba(6, 15, 11, .3)),
			var(--cptt-hero-image) center / cover;
	}

	.cptt-contact-hero h1 {
		font-size: clamp(38px, 11vw, 60px);
		line-height: 1.02;
	}

	.cptt-contact-dark h2 {
		font-size: clamp(30px, 8.5vw, 42px);
		line-height: 1.08;
	}

	.cptt-contact-steps li {
		padding: 54px 20px 20px;
	}

	.cptt-contact-steps li::before {
		top: 20px;
		left: 20px;
	}

	.cptt-contact-photo {
		min-height: 460px;
		background:
			linear-gradient(180deg, rgba(6, 15, 11, .78) 0%, rgba(6, 15, 11, .42) 38%, rgba(6, 15, 11, .9) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .82), rgba(6, 15, 11, .24)),
			var(--cptt-contact-image) center / cover;
	}

	.cptt-contact-photo .cptt-home-wrap {
		width: min(100% - 32px, 1180px);
		margin: 0 auto;
	}

	.cptt-contact-photo p:not(.cptt-home-kicker) {
		font-size: clamp(29px, 8.4vw, 42px);
		line-height: 1.08;
	}

	.cptt-contact-final {
		min-height: 82svh;
		background:
			radial-gradient(circle at 72% 12%, rgba(255, 255, 255, .1), transparent 24%),
			linear-gradient(180deg, rgba(6, 15, 11, .84) 0%, rgba(6, 15, 11, .48) 40%, rgba(6, 15, 11, .9) 100%),
			linear-gradient(90deg, rgba(6, 15, 11, .84), rgba(6, 15, 11, .3)),
			var(--cptt-final-image) center / cover;
	}

	.cptt-contact-final h2 {
		font-size: clamp(35px, 10vw, 52px);
		line-height: 1.02;
	}
}
