/*
Theme Name: White Coat Capital
Theme URI: https://whitecoatcapital.com/
Description: Child theme de Hello Elementor para White Coat Capital.
Author: White Coat Capital
Template: hello-elementor
Version: 2.8.1
Text Domain: whitecoatcapital
*/

@font-face {
	font-family: "Newsreader";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("assets/fonts/newsreader/Newsreader-Variable.ttf") format("truetype");
}

@font-face {
	font-family: "Newsreader";
	font-style: italic;
	font-weight: 200 800;
	font-display: swap;
	src: url("assets/fonts/newsreader/Newsreader-Italic-Variable.ttf") format("truetype");
}

/*
 * Los estilos propios del sitio se agregarán aquí después de definir
 * el sistema visual del diseño.
 */

:root {
	--wcc-navy: #0d1c2e;
	--wcc-red: #e81820;
	--wcc-sky: #55b4f0;
	--wcc-cream: #f6f4f0;
	--wcc-surface: #fcfaf6;
	--wcc-rule: #e3dcd0;
	--wcc-white: #fff;
}

body { margin: 0; }

/* Global branded scrollbar: Firefox and Chromium/Safari. */
html {
	scrollbar-color: var(--wcc-navy) var(--wcc-cream);
	scrollbar-width: thin;
}

html::-webkit-scrollbar {
	height: 12px;
	width: 12px;
}

html::-webkit-scrollbar-track {
	background: var(--wcc-cream);
}

html::-webkit-scrollbar-thumb {
	background: var(--wcc-navy);
	border: 3px solid var(--wcc-cream);
	border-radius: 999px;
}

html::-webkit-scrollbar-thumb:hover {
	background: var(--wcc-sky);
}

html::-webkit-scrollbar-corner {
	background: var(--wcc-cream);
}

/* Slightly larger supporting text in the market analysis components. */
.wcc-markets .wcc-analysis-kicker { font-size: 13px; }
.wcc-markets .wcc-card-label { font-size: 12px; }
.wcc-markets .wcc-card-label span { font-size: 11px; }
.wcc-markets .wcc-comparison-card > small { font-size: 13px; }
.wcc-markets .wcc-opportunity-steps p { font-size: 14px; }
.wcc-markets .wcc-opportunity > small,
.wcc-markets .wcc-analysis-source { font-size: 12px; }
.wcc-markets .wcc-trades-row { font-size: 14px; }
.wcc-markets .wcc-trades-row.is-head { font-size: 11px; }
.wcc-markets .wcc-trades-row small { font-size: 11px; }
.wcc-markets .wcc-recent-trades .wcc-analysis-heading > p { font-size: 17px; line-height: 1.5; }
.wcc-markets .wcc-recent-trades .wcc-analysis-heading > p strong { color: var(--wcc-navy); font-weight: 700; }
.wcc-markets .wcc-recent-trades .wcc-trades-row { min-height: 72px; padding-block: 15px; }
.wcc-markets .wcc-recent-trades .wcc-trades-row.is-head { min-height: 42px; padding-block: 10px; }
.wcc-markets .wcc-recent-trades .wcc-trades-row > span:first-child > b { font-family: var(--wcc-serif, "Newsreader", Georgia, serif); font-size: 18px; font-weight: 700; }
.wcc-markets .wcc-recent-trades .wcc-trades-row > span:nth-child(3) b { font-family: var(--wcc-serif, "Newsreader", Georgia, serif); font-size: 18px; font-weight: 700; }
.wcc-markets .wcc-recent-trades .wcc-trades-row > span:nth-child(4) b { font-family: var(--wcc-serif, "Newsreader", Georgia, serif); font-size: 25px; font-weight: 700; }

/* Native, keyboard-accessible FAQ accordion. */
.wcc-markets .wcc-market-faq__item { display: block; padding: 0; }
.wcc-markets .wcc-market-faq__item summary { align-items: start; cursor: pointer; display: grid; gap: 25px; grid-template-columns: 1fr 24px; list-style: none; padding: 20px 0; }
.wcc-markets .wcc-market-faq__item summary::-webkit-details-marker { display: none; }
.wcc-markets .wcc-market-faq__item summary h3 { margin: 0; }
.wcc-markets .wcc-market-faq__item summary span { color: var(--wcc-red); font-size: 22px; line-height: 1; text-align: center; transition: transform 180ms ease; }
.wcc-markets .wcc-market-faq__item[open] summary span { transform: rotate(45deg); }
.wcc-markets .wcc-market-faq__answer { overflow: hidden; padding: 0 48px 22px 0; }
.wcc-markets .wcc-market-faq__item[open] .wcc-market-faq__answer { animation: wcc-faq-reveal 220ms ease both; }
.wcc-faq-motion-ready .wcc-markets .wcc-market-faq__item[open] .wcc-market-faq__answer { animation: none; }
@keyframes wcc-faq-reveal { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }

.wcc-site-header {
	background: #fff;
	border-bottom: 1px solid var(--wcc-rule);
	font-family: "Inter", Arial, sans-serif;
	position: sticky;
	top: 0;
	z-index: 1000;
}

.admin-bar .wcc-site-header {
	top: 32px;
}

.wcc-site-header__inner {
	align-items: center;
	display: flex;
	gap: 30px;
	height: 64px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1240px;
	padding: 0 32px;
}

.wcc-brand { align-items: center; color: var(--wcc-navy); display: inline-flex; gap: 11px; text-decoration: none; }
.wcc-brand__logo { display: block; height: auto; max-height: 39px; object-fit: contain; width: 144px; }
.wcc-brand__mark { display: block; height: 29px; object-fit: contain; width: 29px; }
.wcc-brand__text { display: flex; flex-direction: column; line-height: 1; }
.wcc-brand__name,
.wcc-brand__subname { font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.wcc-brand__subname { margin-top: 3px; padding-left: 10px; }

.wcc-primary-nav { align-items: center; display: flex; gap: 26px; margin-left: auto; }
.wcc-primary-nav a { color: var(--wcc-navy); font-size: 13px; font-weight: 600; text-decoration: none; }
.wcc-primary-nav > a:not(.wcc-nav-cta),
.wcc-nav-dropdown > summary { padding-block: 22px 18px; }
.wcc-primary-nav > a:not(.wcc-nav-cta):hover,
.wcc-nav-dropdown > summary:hover { color: var(--wcc-red); }
.wcc-nav-dropdown { position: relative; }
.wcc-nav-dropdown > summary { align-items: center; cursor: pointer; display: inline-flex; font-size: 13px; font-weight: 600; gap: 6px; list-style: none; position: relative; }
.wcc-nav-dropdown > summary::before { background: var(--wcc-sky); bottom: 12px; content: ""; height: 3px; left: 0; opacity: 0; position: absolute; right: 0; transform: scaleX(.65); transition: opacity 180ms ease, transform 180ms ease; }
.wcc-nav-dropdown.is-active > summary::before { opacity: 1; transform: scaleX(1); }
.wcc-nav-dropdown > summary::-webkit-details-marker { display: none; }
.wcc-nav-dropdown > summary::after { border-bottom: 1.5px solid currentColor; border-right: 1.5px solid currentColor; content: ""; height: 5px; margin-top: -3px; transform: rotate(45deg); transition: transform 180ms ease; width: 5px; }
.wcc-nav-dropdown[open] > summary::after { margin-top: 3px; transform: rotate(225deg); }
.wcc-nav-dropdown__menu { background: var(--wcc-white); border: 1px solid var(--wcc-rule); border-radius: 8px; box-shadow: 0 18px 45px color-mix(in srgb, var(--wcc-navy) 14%, transparent); display: grid; left: 50%; min-width: 210px; opacity: 0; padding: 10px; pointer-events: none; position: absolute; top: calc(100% - 7px); transform: translate(-50%, 8px); transition: opacity 180ms ease, transform 180ms ease; }
.wcc-nav-dropdown[open] .wcc-nav-dropdown__menu { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }
.wcc-nav-dropdown__menu a { border-radius: 5px; padding: 10px 12px; }
.wcc-nav-dropdown__menu a:hover { background: var(--wcc-cream); color: var(--wcc-red); }
.wcc-nav-cta {
	animation: wcc-cta-glow 3.6s ease-in-out infinite;
	background: var(--wcc-red);
	border-radius: 7px;
	box-shadow: 0 0 0 0 rgb(232 24 32 / 0%);
	color: #fff !important;
	padding: 13px 16px;
	transition: box-shadow 220ms ease, filter 220ms ease, transform 220ms ease;
}
.wcc-nav-cta:hover,
.wcc-nav-cta:focus-visible {
	animation-play-state: paused;
	box-shadow: 0 10px 24px rgb(232 24 32 / 22%);
	filter: brightness(.95);
	transform: translateY(-2px);
}

@keyframes wcc-cta-glow {
	0%, 68%, 100% { box-shadow: 0 0 0 0 rgb(232 24 32 / 0%); }
	82% { box-shadow: 0 0 0 7px rgb(232 24 32 / 10%); }
}
.wcc-mobile-nav { display: none; margin-left: auto; position: relative; }
.wcc-mobile-nav > summary { align-items: center; border: 1px solid var(--wcc-rule); border-radius: 6px; cursor: pointer; display: flex; font-size: 12px; font-weight: 700; height: 42px; justify-content: center; list-style: none; width: 54px; }
.wcc-mobile-nav > summary::-webkit-details-marker { display: none; }
.wcc-mobile-nav__panel { background: var(--wcc-white); border-top: 1px solid var(--wcc-rule); display: grid; left: 0; padding: 14px 20px 22px; position: fixed; right: 0; top: 76px; }
.wcc-mobile-nav__panel a { border-bottom: 1px solid var(--wcc-rule); color: var(--wcc-navy); font-size: 14px; font-weight: 600; padding: 13px 4px; text-decoration: none; }
.wcc-mobile-nav__panel .wcc-nav-cta { border-bottom: 0; margin-top: 12px; text-align: center; }

.wcc-site-footer { background: color-mix(in srgb, var(--wcc-navy) 88%, #000); color: var(--wcc-caption-navy); font-family: "Inter", Arial, sans-serif; }
.wcc-site-footer__inner { align-items: center; display: flex; justify-content: space-between; margin: 0 auto; max-width: 1240px; min-height: 112px; padding: 22px 32px; }
.wcc-site-footer__identity { align-items: center; display: flex; gap: 12px; }
.wcc-site-footer__mark { display: block; height: 25px; object-fit: contain; width: 25px; }
.wcc-site-footer__line,
.wcc-site-footer__copyright { font-size: 11px; line-height: 1.5; margin: 0; }

@media (max-width: 820px) {
	.wcc-site-header__inner { height: 68px; padding: 0 20px; }
	.wcc-primary-nav { display: none; }
	.wcc-mobile-nav { display: block; }
	.wcc-mobile-nav__panel { top: 68px; }
	.wcc-site-footer__inner { align-items: flex-start; flex-direction: column; gap: 15px; min-height: 0; padding: 26px 20px; }
}

@media screen and (max-width: 782px) {
	.admin-bar .wcc-site-header { top: 46px; }
	.admin-bar .wcc-mobile-nav__panel { top: 114px; }
}

@media (prefers-reduced-motion: reduce) {
	.wcc-nav-cta { animation: none; transition-duration: 0.01ms; }
}
