.dt-opportunities {
	--dt-op-ink: #102a5d;
	--dt-op-blue: #09286c;
	--dt-op-violet: #3f17eb;
	--dt-op-line: #dbe2f2;
	--dt-op-soft: #f5f8fc;
	box-sizing: border-box;
	max-width: 1100px;
	margin: 0 auto 3rem;
	padding: 0;
	color: var(--dt-op-ink);
	font-family: Arial, Helvetica, sans-serif;
}

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

.dt-opportunities__hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
	overflow: hidden;
	border: 1px solid var(--dt-op-line);
	border-top: 3px solid #57bff3;
	background: linear-gradient(120deg, #f7f9ff 0%, #fff 70%);
}

.dt-opportunities__hero::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 2;
	height: 17px;
	background: #f6c36e url("../images/greca-talaverana-v1.webp") center 44% / 360px auto repeat-x;
}
.dt-opportunities__hero-copy { padding: clamp(2.6rem, 5vw, 4.2rem) clamp(1.3rem, 4vw, 3.2rem); align-self: center; }
.dt-opportunities__hero-visual { position: relative; min-height: 385px; margin: 0; overflow: hidden; background: #dae4f3; }
.dt-opportunities__hero-visual::after { content: ""; position: absolute; inset: 38% 0 0; background: linear-gradient(transparent, rgba(7, 27, 73, .82)); pointer-events: none; }
.dt-opportunities__hero-visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.dt-opportunities__hero-visual span, .dt-opportunities__hero-visual strong, .dt-opportunities__hero-visual figcaption { position: absolute; z-index: 1; left: 1.3rem; right: 1.3rem; color: #fff; }
.dt-opportunities__hero-visual span { top: 2.5rem; right: auto; padding: .45rem .7rem; border-radius: 99px; background: #07358d; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.dt-opportunities__hero-visual strong { bottom: 2.2rem; max-width: 15ch; font: 700 clamp(1.5rem, 2.8vw, 2.1rem)/1.08 Georgia,serif; text-shadow: 0 2px 8px rgba(0,0,0,.25); }
.dt-opportunities__hero-visual figcaption { bottom: .55rem; font-size: .68rem; }

.dt-opportunities__eyebrow {
	margin: 0 0 .7rem;
	color: var(--dt-op-violet);
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .12em;
}

.dt-opportunities__hero h1 {
	max-width: 14ch;
	margin: 0 0 .85rem;
	color: var(--dt-op-ink);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2.2rem, 4vw, 3.3rem);
	line-height: 1.08;
}

.dt-opportunities__hero-copy > p:not(.dt-opportunities__eyebrow) {
	max-width: 72ch;
	margin: .5rem 0;
	font-size: 1.05rem;
	line-height: 1.55;
}
.dt-opportunities__hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .9rem 1.4rem; margin-top: 1.55rem; }
.dt-opportunities__button { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 44px; padding: .75rem 1.15rem; border-radius: 3px; background: #07358d; font-size: .9rem; font-weight: 800; text-decoration: none; }
.dt-opportunities a.dt-opportunities__button,
.dt-opportunities a.dt-opportunities__button:hover,
.dt-opportunities a.dt-opportunities__button:focus { color: #fff !important; }
.dt-opportunities__button:hover { background: #3f17eb; }
.dt-opportunities__button:focus-visible { outline: 3px solid #d9a338; outline-offset: 3px; }
.dt-opportunities__text-link { color: var(--dt-op-blue); font-size: .9rem; font-weight: 800; text-decoration: none; }
.dt-opportunities__text-link:hover { text-decoration: underline; }

.dt-opportunities__benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin: 1.15rem 0 2.65rem; border: 1px solid var(--dt-op-line); background: #fff; }
.dt-opportunities__benefits > div { position: relative; padding: 1.2rem 1.35rem; }
.dt-opportunities__benefits > div + div { border-left: 1px solid var(--dt-op-line); }
.dt-opportunities__benefits span { color: #d7a54c; font: 700 1.1rem Georgia,serif; }
.dt-opportunities__benefits h2 { display: inline; margin: 0 0 0 .55rem; color: var(--dt-op-blue); font: 700 1.05rem Georgia,serif; }
.dt-opportunities__benefits p { margin: .5rem 0 0; color: #495b7b; font-size: .88rem; line-height: 1.45; }

.dt-opportunities__section-heading { margin: 0 0 1rem; }
.dt-opportunities__section-heading h2 { margin: 0; color: var(--dt-op-blue); font: 700 clamp(1.7rem, 3vw, 2.25rem)/1.12 Georgia,serif; }
.dt-opportunities__section-heading > p:last-child:not(.dt-opportunities__eyebrow) { max-width: 68ch; margin: .5rem 0 0; color: #4c5c7e; line-height: 1.5; }
.dt-opportunities__paths { margin-bottom: 2.8rem; }
.dt-opportunities__path-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; }
.dt-opportunities__path { position: relative; display: block; min-height: 180px; padding: 1.1rem 1.1rem 2.3rem; border: 1px solid var(--dt-op-line); border-top: 3px solid #51b7df; background: #fff; color: var(--dt-op-ink); text-decoration: none; transition: transform .15s ease, box-shadow .15s ease; }
.dt-opportunities__path:hover, .dt-opportunities__path.is-active { transform: translateY(-2px); box-shadow: 0 9px 22px rgba(15,43,98,.1); }
.dt-opportunities__path:last-child { border-top-color: #e1b04f; background: #fffaf0; }
.dt-opportunities__path-number { color: #c0cee6; font: 700 1.2rem Georgia,serif; }
.dt-opportunities__path h3 { margin: .65rem 0 .35rem; color: var(--dt-op-blue); font: 700 1.18rem/1.17 Georgia,serif; }
.dt-opportunities__path p { margin: 0; color: #4c5c7e; font-size: .85rem; line-height: 1.43; }
.dt-opportunities__path-arrow { position: absolute; right: 1rem; bottom: .8rem; color: #3f17eb; font-size: 1.2rem; }

.dt-opportunities__story { display: grid; grid-template-columns: minmax(0, .76fr) minmax(0, 1.24fr); margin-bottom: 0; border: 1px solid #cad9ef; background: #f3f7fd; }
.dt-opportunities__story-mark { display: flex; flex-direction: column; justify-content: flex-end; min-height: 395px; padding: 2rem; border-right: 1px solid #cad9ef; background: linear-gradient(155deg, rgba(7,38,100,.12), rgba(5,27,77,.94)), #07358d url("../images/greca-talaverana-v1.webp") 42% top / 480px auto; color: #fff; }
.dt-opportunities__story-mark span { display: inline-block; align-self: flex-start; padding: .45rem .7rem; border: 1px solid rgba(255,255,255,.55); border-radius: 99px; font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.dt-opportunities__story-mark strong { display: block; max-width: 10ch; margin: 1rem 0 .6rem; font: 700 clamp(2rem, 4vw, 3.2rem)/1.02 Georgia,serif; }
.dt-opportunities__story-mark small { max-width: 33ch; font-size: .88rem; line-height: 1.45; }
.dt-opportunities__story-copy { align-self: center; padding: clamp(1.5rem, 4vw, 3.3rem); }
.dt-opportunities__story-copy h2 { max-width: 19ch; margin: 0 0 1rem; color: var(--dt-op-blue); font: 700 clamp(1.8rem, 3vw, 2.6rem)/1.08 Georgia,serif; }
.dt-opportunities__story-copy > p:not(.dt-opportunities__eyebrow) { color: #394d73; line-height: 1.6; }
.dt-opportunities__story-copy .dt-opportunities__button { margin-top: .4rem; }
.dt-opportunities__date-guide { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 0 0 2.8rem; padding: 1.2rem 1.4rem; border: 1px solid #e6d9bc; border-top: 0; background: #fffaf0; }
.dt-opportunities__date-guide > div { padding-left: .8rem; border-left: 3px solid #d4a341; }
.dt-opportunities__date-guide strong { color: var(--dt-op-blue); font: 700 1rem Georgia,serif; }
.dt-opportunities__date-guide p { margin: .3rem 0 0; color: #475473; font-size: .87rem; line-height: 1.5; }
.dt-opportunities__date-guide > p { grid-column: 1/-1; padding-top: .7rem; border-top: 1px solid #e9dfcc; }
.dt-opportunities__date-guide a { color: var(--dt-op-blue); }

.dt-opportunities__how { margin-bottom: 2.8rem; }
.dt-opportunities__how ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; margin: 0; padding: 0; list-style: none; counter-reset: dt-how; }
.dt-opportunities__how li { position: relative; min-height: 130px; padding: 1.2rem 1.2rem 1rem 3.2rem; border: 1px solid var(--dt-op-line); background: #fff; counter-increment: dt-how; }
.dt-opportunities__how li::before { content: counter(dt-how); position: absolute; left: 1rem; top: 1.2rem; display: grid; place-items: center; width: 1.7rem; height: 1.7rem; border-radius: 50%; background: #e5ebff; color: #3f17eb; font-weight: 800; }
.dt-opportunities__how strong { display: block; margin-bottom: .4rem; color: var(--dt-op-blue); font: 700 1.05rem Georgia,serif; }
.dt-opportunities__how span { display: block; color: #4c5c7e; font-size: .88rem; line-height: 1.45; }
.dt-opportunities__offers { scroll-margin-top: 1.2rem; margin-bottom: 2.8rem; }
.dt-opportunities__business-filter { margin: 1rem 0; padding: .85rem 1rem; border-left: 3px solid var(--dt-op-violet); background: var(--dt-op-soft); color: var(--dt-op-ink); }
.dt-opportunities__business-filter a { color: var(--dt-op-blue); font-weight: 800; }
.dt-opportunities__business-filter a:last-child { margin-left: .75rem; }
.dt-opportunities__closing { padding: clamp(1.5rem, 3vw, 2.4rem); background: #07358d; color: #fff; text-align: center; }
.dt-opportunities__closing p { margin: 0 0 .45rem; font-size: .88rem; }
.dt-opportunities__closing h2 { margin: 0 0 .9rem; color: #fff; font: 700 clamp(1.5rem, 2.7vw, 2.1rem) Georgia,serif; }
.dt-opportunities__closing a { display: inline-block; padding: .7rem 1.1rem; border: 1px solid #fff; color: #fff; font-weight: 800; text-decoration: none; }
.dt-opportunities__closing a:hover { background: #fff; color: #07358d; }

.dt-opportunities__note { margin: .85rem 0 0; color: #4c5c7e; font-size: .86rem; line-height: 1.45; }

.dt-opportunities__filters {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin: 1rem 0 1.35rem;
}

.dt-opportunities__filters a {
	display: inline-block;
	padding: .7rem 1rem;
	border: 1px solid var(--dt-op-line);
	border-radius: 999px;
	background: #fff;
	color: var(--dt-op-ink);
	font-size: .87rem;
	font-weight: 700;
	text-decoration: none;
}

.dt-opportunities__filters a:hover,
.dt-opportunities__filters a[aria-current="page"] {
	border-color: var(--dt-op-violet);
	background: var(--dt-op-violet);
	color: #fff;
}

.dt-opportunities a:focus-visible {
	outline: 3px solid #d68300;
	outline-offset: 3px;
}

.dt-opportunities__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.dt-op-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border: 1px solid var(--dt-op-line);
	background: #fff;
	box-shadow: 0 6px 22px rgba(15, 43, 98, .06);
}

.dt-op-card--demo { border-color: #8c271e; border-left: 5px solid #8c271e; }
.dt-op-card__demo-label {
	align-self: flex-start;
	margin: 0 0 .5rem;
	padding: .38rem .6rem;
	background: #8c271e;
	color: #fff;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .055em;
}
.dt-op-card__demo-note { margin: 0 0 .8rem; color: #70271b; font-weight: 700; line-height: 1.45; }

.dt-op-card__image { aspect-ratio: 16 / 9; background: var(--dt-op-soft); }
.dt-op-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.dt-op-card__image--placeholder {
	display: grid;
	place-items: center;
	padding: 1rem;
	background: linear-gradient(135deg, #eff4ff, #fff 65%);
	color: #244b91;
}
.dt-op-card__image--placeholder span { padding: .9rem 1rem; border-top: 2px solid #d9a338; border-bottom: 2px solid #d9a338; font: 700 1.2rem Georgia, serif; text-align: center; }
.dt-op-card__body { display: flex; flex: 1; flex-direction: column; padding: 1.2rem; }
.dt-op-card__types { margin: 0 0 .5rem; color: var(--dt-op-violet); font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.dt-op-card h3 { margin: 0 0 .5rem; color: var(--dt-op-ink); font-family: Georgia, "Times New Roman", serif; font-size: 1.35rem; line-height: 1.2; }
.dt-op-card__description { margin: 0 0 .85rem; color: #394c72; line-height: 1.45; }
.dt-op-card__business { margin: 0 0 .9rem; font-size: .9rem; font-weight: 600; }
.dt-op-card__business a { color: var(--dt-op-blue); }
.dt-op-card__facts { display: grid; gap: .35rem; margin: 0 0 .85rem; padding-top: .75rem; border-top: 1px solid var(--dt-op-line); }
.dt-op-card__facts div { display: flex; justify-content: space-between; gap: .8rem; }
.dt-op-card__facts dt { color: #526589; font-size: .84rem; }
.dt-op-card__facts dd { margin: 0; text-align: right; font-size: .84rem; font-weight: 700; }
.dt-op-card__conditions { margin: 0 0 1rem; color: #394c72; font-size: .86rem; line-height: 1.5; overflow-wrap: anywhere; }
.dt-op-card__link { margin-top: auto; align-self: flex-start; color: var(--dt-op-violet); font-weight: 800; text-decoration: none; }
.dt-op-card__link:hover { text-decoration: underline; }

.dt-opportunities__empty {
	padding: clamp(1.4rem, 4vw, 2.6rem);
	border: 1px solid var(--dt-op-line);
	background: var(--dt-op-soft);
}
.dt-opportunities__empty h3 { margin: 0 0 .4rem; color: var(--dt-op-ink); font-family: Georgia, "Times New Roman", serif; font-size: 1.4rem; }
.dt-opportunities__empty p { margin: 0 0 .7rem; }
.dt-opportunities__empty a { color: var(--dt-op-violet); font-weight: 800; }

@media (max-width: 920px) {
	.dt-opportunities__hero { grid-template-columns: 1fr 1fr; }
	.dt-opportunities__path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dt-opportunities__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
	.dt-opportunities { padding: 0 .7rem; }
	.dt-opportunities__hero { grid-template-columns: 1fr; }
	.dt-opportunities__hero-copy { padding: 2.1rem 1.15rem 1.3rem; }
	.dt-opportunities__hero::before { height: 13px; background-size: 270px auto; }
	.dt-opportunities__hero-visual { min-height: 270px; }
	.dt-opportunities__hero-visual span { top: 1.2rem; }
	.dt-opportunities__benefits { grid-template-columns: 1fr; }
	.dt-opportunities__benefits > div + div { border-left: 0; border-top: 1px solid var(--dt-op-line); }
	.dt-opportunities__path-grid { grid-template-columns: 1fr 1fr; }
	.dt-opportunities__path { min-height: 165px; padding: .9rem .8rem 2rem; }
	.dt-opportunities__path h3 { font-size: 1.03rem; }
	.dt-opportunities__story { grid-template-columns: 1fr; }
	.dt-opportunities__story-mark { min-height: 235px; }
	.dt-opportunities__date-guide { grid-template-columns: 1fr; }
	.dt-opportunities__how ol { grid-template-columns: 1fr; }
	.dt-opportunities__grid { grid-template-columns: 1fr; }
	.dt-op-card__facts div { display: block; }
	.dt-op-card__facts dd { text-align: left; }
}

@media (max-width: 390px) {
	.dt-opportunities__path-grid { grid-template-columns: 1fr; }
	.dt-opportunities__path { min-height: 130px; }
}
