/*
Theme Name: Casino Regal
Theme URI: https://casinoregal.ro/
Description: Temă copil pentru Twenty Twenty-Five. Identitatea Casino Regal (Slănic Moldova): Frank Ruhl Libre, auriu #B99940, bleumarin #001D3D și alb, cu prima pagină nouă și setări de securitate.
Author: Kronion Design
Template: twentytwentyfive
Version: 1.2.3
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: casino-regal
*/

/* ---------- Bază ---------- */
html { scroll-behavior: smooth; }
:where(section, .cr-ancora) { scroll-margin-top: 90px; }
::selection { background: var(--wp--preset--color--accent-1); color: var(--wp--preset--color--contrast); }
img { height: auto; }

/* ---------- Antet (lipit sus) ---------- */
.cr-antet { border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--accent-1) 35%, transparent); }
.cr-antet .wp-block-site-logo img { transition: transform .3s ease; }
.cr-antet .wp-block-site-logo a:hover img { transform: scale(1.04); }
.cr-antet .cr-brand-nume { line-height: 1.1; }
.cr-antet .wp-block-navigation a { text-decoration: none; }
.cr-antet .wp-block-navigation a:hover { color: var(--wp--preset--color--accent-2); }
.cr-antet .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--contrast) !important;
	color: var(--wp--preset--color--base) !important;
}
.cr-antet .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.4rem; }

/* ---------- Etichetă mică (supratitlu) ---------- */
.cr-eticheta {
	text-transform: uppercase;
	letter-spacing: 0.28em;
	font-size: 0.78rem !important;
	font-weight: 500;
}
.cr-eticheta::before,
.cr-eticheta.cr-centru::after {
	content: "";
	display: inline-block;
	width: 2.2em;
	height: 1px;
	background: currentColor;
	vertical-align: middle;
	margin-right: 0.9em;
	opacity: .8;
}
.cr-eticheta.cr-centru::after { margin: 0 0 0 0.9em; }

/* ---------- Hero ---------- */
.cr-hero .wp-block-cover__inner-container { max-width: 1240px; }
.cr-hero h1 { text-shadow: 0 2px 30px rgba(0, 20, 43, .45); }
.cr-scroll {
	display: inline-block;
	width: 1px;
	height: 56px;
	background: linear-gradient(var(--wp--preset--color--accent-1), transparent);
	animation: cr-coboara 2.2s ease-in-out infinite;
}
@keyframes cr-coboara {
	0% { transform: scaleY(0); transform-origin: top; }
	50% { transform: scaleY(1); transform-origin: top; }
	51% { transform-origin: bottom; }
	100% { transform: scaleY(0); transform-origin: bottom; }
}

/* ---------- Butoane ---------- */
.wp-block-button.is-style-outline > .wp-block-button__link {
	border: 1px solid currentColor;
	background: transparent;
}
.cr-pe-inchis .wp-block-button.is-style-outline > .wp-block-button__link { color: var(--wp--preset--color--base); }
.cr-pe-inchis .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}
.wp-block-button__link { transition: background-color .25s ease, color .25s ease; }

/* ---------- Imagini decupate uniform ---------- */
.cr-crop img { width: 100%; object-fit: cover; display: block; }
.cr-crop-patrat img { aspect-ratio: 1 / 1; }
.cr-crop-4-3 img { aspect-ratio: 4 / 3; }
.cr-crop-3-4 img { aspect-ratio: 3 / 4; }
.cr-crop-lat img { aspect-ratio: 16 / 10; }
.cr-crop-inalt img { aspect-ratio: 2 / 3; }
.cr-crop img { transition: transform .8s ease; }
.cr-zoom { overflow: hidden; }
.cr-zoom:hover img { transform: scale(1.04); }

/* Ramă aurie decalată (poza cu clădirea) */
.cr-rama { position: relative; isolation: isolate; overflow: visible !important; }
.cr-rama::after {
	content: "";
	position: absolute;
	inset: 18px -18px -18px 18px;
	border: 1px solid var(--wp--preset--color--accent-1);
	z-index: -1;
	pointer-events: none;
}
@media (max-width: 781px) { .cr-rama::after { inset: 10px -10px -10px 10px; } }

/* ---------- Bandă „ce urmează” ---------- */
.cr-banda > .wp-block-column { border-top: 1px solid var(--wp--preset--color--accent-1); }
.cr-numar { font-feature-settings: "lnum"; }

/* ---------- Galerie (grilă) ---------- */
.cr-galerie { gap: 12px !important; }
.cr-galerie figure { margin: 0 !important; }

/* ---------- Video responsive ---------- */
.cr-video iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; display: block; border: 0; }
.cr-umbra-tare > .wp-block-cover__background { background: rgba(0, 20, 43, 0.74) !important; }

/* ---------- Subsol ---------- */
.cr-subsol a { text-decoration: none; }
.cr-subsol a:hover { color: var(--wp--preset--color--accent-2) !important; }

/* ---------- Accesibilitate ---------- */
:where(a, button, .wp-block-button__link):focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-1);
	outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.cr-scroll { animation: none; }
	.cr-crop img, .wp-block-button__link { transition: none; }
}

/* ---------- Mobil ---------- */
@media (max-width: 781px) {
	.cr-hero { min-height: 88vh !important; }
	.cr-ascunde-mobil { display: none !important; }
}

/* ---------- Structură pagină ---------- */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
}
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; } }
.wp-site-blocks > .cr-main,
.wp-site-blocks > footer.wp-block-template-part { margin-block-start: 0 !important; }
.cr-main > * { margin-block-start: 0 !important; }

@media (max-width: 600px) {
	.cr-eticheta { letter-spacing: 0.18em; }
	.cr-eticheta.cr-centru::before,
	.cr-eticheta.cr-centru::after { display: none; }
	.cr-hero .wp-block-button__link { padding-left: 1.4rem; padding-right: 1.4rem; }
}

/* ---------- Arhivă (cărți poștale) ---------- */
.cr-carte-postala img {
	width: 100%;
	display: block;
	box-shadow: 0 18px 40px -18px rgba(0, 29, 61, 0.45);
	transform: rotate(-1.2deg);
}
.cr-arhiva .wp-block-column:last-child .cr-carte-postala img { transform: rotate(1.4deg); }
.cr-carte-postala figcaption {
	margin-top: 1rem;
	font-style: italic;
	text-align: center;
}
.cr-banda-foto img { max-height: 520px; }
.cr-video + p { margin-top: 0.6rem; }

/* ---------- Video (imagine + buton, playerul se încarcă la click) ---------- */
.cr-video-facade {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: var(--wp--preset--color--contrast);
}
.cr-video-facade img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .6s ease, opacity .3s ease;
	opacity: .9;
}
.cr-video-facade:hover img { transform: scale(1.03); opacity: 1; }
.cr-play {
	position: absolute;
	inset: 50% auto auto 50%;
	width: 76px;
	height: 76px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: var(--wp--preset--color--accent-1);
	box-shadow: 0 10px 30px rgba(0, 20, 43, .45);
	transition: background-color .25s ease;
}
.cr-play::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 54%;
	transform: translate(-50%, -50%);
	border-style: solid;
	border-width: 13px 0 13px 21px;
	border-color: transparent transparent transparent var(--wp--preset--color--contrast);
}
.cr-video-facade:hover .cr-play { background: var(--wp--preset--color--accent-2); }

/* ---------- Liste din subsol ---------- */
.cr-lista p { margin: 0; }
