/* =========================================================
   Hercule Franciza – stiluri globale
   (stilurile fiecărui bloc sunt inline în template-uri, ca în designul original)
   ========================================================= */

@font-face { font-family: 'Turkuaz'; src: url('../fonts/Turkuaz-Regular.otf') format('opentype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Turkuaz Deco'; src: url('../fonts/Turkuaz-Deco.otf') format('opentype'); font-weight: 700; font-display: swap; }

html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; }
body.hc-multumim { background: rgb(0,48,255); }
.hc-page *, .hc-page *::before, .hc-page *::after { box-sizing: content-box; }
.hc-page a { color: rgb(255,205,5); text-decoration: none; }
.hc-page a:hover { color: #fff; }
.hc-page input, .hc-page select, .hc-page textarea, .hc-page button { font-family: 'Montserrat', sans-serif; }
.hc-page input::placeholder { color: #8a93c7; }
.hc-page img { max-width: none; }
.hc-page h1, .hc-page h2, .hc-page p { box-sizing: content-box; }
.hc-page button { -webkit-appearance: none; appearance: none; }
.hc-page button:focus-visible, .hc-page a:focus-visible { outline: 3px solid rgb(255,205,5); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }
[hidden] { display: none !important; }

/* Animații */
@keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes pulse { 0%,100% { box-shadow: 0 0 0 0 rgba(255,205,5,0.55); } 50% { box-shadow: 0 0 0 18px rgba(255,205,5,0); } }
@keyframes hbL { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes hbR { from { transform: translateX(-50%); } to { transform: translateX(0); } }
@keyframes hlSpin { to { transform: rotate(360deg); } }
@keyframes hlBolt { 0%,100% { opacity: 1; transform: scale(1); } 48% { opacity: 1; } 50% { opacity: 0.25; transform: scale(0.92); } 54% { opacity: 1; transform: scale(1.06); } }
@keyframes hlMsg { from { opacity: 0; transform: translateY(14px); filter: blur(4px); } to { opacity: 1; transform: translateY(0); filter: blur(0); } }
@keyframes hlStreak { 0% { transform: translateX(-120%) skewX(-20deg); } 100% { transform: translateX(320%) skewX(-20deg); } }
@keyframes drift { 0%,100% { transform: translate(0,0) rotate(-18deg); } 50% { transform: translate(18px,-14px) rotate(-14deg); } }

@media (prefers-reduced-motion: reduce) {
	.hc-page *, .hc-page *::before, .hc-page *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
	html { scroll-behavior: auto; }
}

/* Stări hover (în design: style-hover) */
.h-y:hover { color: rgb(255,205,5) !important; }
.h-wb:hover { background: #fff !important; color: rgb(0,48,255) !important; }
.h-bw:hover { background: rgb(0,48,255) !important; color: #fff !important; }
.h-yn:hover { background: rgb(255,205,5) !important; color: rgb(1,2,84) !important; }
.h-b:hover { background: rgb(0,48,255) !important; }
.h-lift:hover { transform: translateY(-4px) !important; box-shadow: 0 18px 40px rgba(1,2,84,0.16) !important; }
.h-lift { transition: transform 0.25s ease, box-shadow 0.25s ease; }
.h-zoom6:hover { transform: scale(1.06) !important; }
.h-zoom4:hover { transform: scale(1.04) !important; }
.h-shadow:hover { box-shadow: 0 18px 40px rgba(1,2,84,0.28) !important; }
.h-glass:hover { background: rgba(255,255,255,0.12) !important; }
.h-step:hover { background: rgba(0,48,255,0.35) !important; border-color: rgb(0,48,255) !important; }
.h-soft:hover { background: #f6f7ff !important; }
.f-b:focus { border-color: rgb(0,48,255) !important; }

/* NAV landing: micșorare la scroll + meniu mobil */
.hc-nav { position: sticky; top: 0; z-index: 60; background: rgb(1,2,84); box-shadow: none; transition: box-shadow 0.3s ease; }
.hc-nav-inner { max-width: 1240px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 24px; transition: padding 0.3s ease; }
.hc-nav-logo { height: 40px; width: auto; display: block; transition: height 0.3s ease; }
.hc-nav.is-scrolled { box-shadow: 0 8px 24px rgba(1,2,84,0.35); }
.hc-nav.is-scrolled .hc-nav-inner { padding: 8px 24px; }
.hc-nav.is-scrolled .hc-nav-logo { height: 32px; }
.hc-nav-desk { display: flex; align-items: center; gap: 22px; }
.hc-nav-mob { display: none; align-items: center; gap: 10px; }
.hc-mobmenu { display: none; flex-direction: column; padding: 6px 24px 24px; background: rgb(1,2,84); border-top: 1px solid rgba(255,255,255,0.12); }
@media (max-width: 899.98px) {
	.hc-nav-desk { display: none; }
	.hc-nav-mob { display: flex; }
	.hc-mobmenu.is-open { display: flex; }
}
.admin-bar .hc-nav, .admin-bar .hc-sticky-top { top: 32px; }
@media (max-width: 782px) { .admin-bar .hc-nav, .admin-bar .hc-sticky-top { top: 46px; } }
@media (max-width: 600px) { .admin-bar .hc-nav, .admin-bar .hc-sticky-top { top: 0; } }

/* Galerie */
.hc-gal { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); grid-auto-rows: clamp(130px,15vw,210px); grid-auto-flow: dense; gap: 10px; }
@media (max-width: 639.98px) { .hc-gal { grid-template-columns: repeat(2, minmax(0,1fr)); } }
.hc-gal-item img { transition: transform 0.6s ease; }
.hc-gal-item:hover img { transform: scale(1.06); }

/* Ecrane meniu */
.hc-screen { flex: 1 0 0px; }
@media (max-width: 899.98px) { .hc-screen { flex-basis: 30%; } }
@media (max-width: 639.98px) { .hc-screen { flex-basis: 44%; } }

/* Loader */
.hc-loader.is-out { opacity: 0 !important; transform: scale(1.06) !important; pointer-events: none !important; }
html.hc-loading { overflow: hidden; }

/* Acordeoane */
.hc-acc-body[hidden] { display: none !important; }

/* =========================================================
   Pagini obișnuite (Termeni, Confidențialitate, articole)
   ========================================================= */
.hc-generic { font-family: 'Montserrat', sans-serif; color: rgb(1,2,84); }
.hc-generic a { color: rgb(0,48,255); }
.hc-generic-top { position: sticky; top: 0; z-index: 60; background: rgb(1,2,84); }
.hc-generic-top a { color: #fff; }
.hc-content { max-width: 820px; margin: 0 auto; padding: 64px 24px 96px; font-size: 16px; line-height: 1.75; }
.hc-content h1 { font-family: 'Turkuaz Deco','Fredoka',sans-serif; font-weight: 700; color: rgb(0,48,255); font-size: clamp(34px,4.4vw,54px); line-height: 1.02; margin: 0 0 28px; }
.hc-content h2, .hc-content h3 { font-family: 'Turkuaz Deco','Fredoka',sans-serif; color: rgb(1,2,84); line-height: 1.1; margin: 36px 0 12px; }
.hc-content img { max-width: 100%; height: auto; }
.hc-content .hc-post + .hc-post { margin-top: 48px; padding-top: 48px; border-top: 1px solid #e3e6f5; }
.hc-content .hc-meta { font-size: 13px; color: #6b6f93; margin: -16px 0 20px; }
.hc-footmenu a { color: #c3c7ea !important; text-decoration: none; }
.hc-footmenu a:hover { color: rgb(255,205,5) !important; }
