/*
Theme Name: LegionX Modern
Theme URI: https://www.legionx.pl/
Author: LegionX
Description: Dwujezyczny motyw historyczny: galerie wedlug lat, slider, animowane menu, animowane tlo, kontakt antyspam, cookies.
Version: 1.9.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: legionx-modern
*/

:root{--gold:#c7a04a;--gold2:#f0d487;--paper:#e8dfc9;--panel:rgba(14,13,11,.88);--line:rgba(199,160,74,.35);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#111;color:var(--paper);font-family:Georgia,'Times New Roman',serif;line-height:1.7;overflow-x:hidden}
body:before{content:'';position:fixed;inset:-8%;z-index:-3;background-image:linear-gradient(rgba(5,5,4,.62),rgba(5,5,4,.86)),var(--lx-bg,linear-gradient(135deg,#17140e,#302713));background-size:cover;background-position:center;background-attachment:fixed;animation:bgDrift 24s ease-in-out infinite alternate;transform:scale(1.08)}
@keyframes bgDrift{from{transform:scale(1.08) translate3d(-1%,0,0)}to{transform:scale(1.15) translate3d(1%,-1%,0)}}
a{color:var(--gold2);text-decoration:none}a:hover{color:#fff}img{max-width:100%;height:auto}
.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(10,9,7,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.header-row{min-height:82px;display:flex;align-items:center;gap:25px}
.brand{margin-right:auto;color:#fff;font-size:clamp(1.3rem,3vw,2rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.custom-logo{max-height:62px;width:auto}
.menu-toggle{display:none;background:none;border:1px solid var(--gold);color:#fff;padding:.6rem .8rem;cursor:pointer}
.main-nav ul{list-style:none;margin:0;padding:0}.main-nav>div>ul,.main-nav>ul{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.main-nav li{position:relative}
.main-nav a{display:block;padding:1rem .8rem;color:#eee;text-transform:uppercase;font-size:.79rem;letter-spacing:.1em;transition:.25s}
.main-nav li:hover>a,.main-nav .current-menu-item>a{color:var(--gold2);background:rgba(199,160,74,.08)}
.main-nav .sub-menu{position:absolute;left:0;top:100%;min-width:230px;background:#0e0d0b;border:1px solid var(--line);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s;z-index:110}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.main-nav .sub-menu .sub-menu{left:100%;top:-1px}
.lang-switch{display:flex;gap:7px;margin-left:8px}
.lang-switch a{border:1px solid var(--line);padding:.25rem .5rem;font:700 .72rem Arial;color:#ddd}
.lang-switch a.active{background:var(--gold);color:#111}
.hero-slider{position:relative;height:310px;max-height:310px;background:#080807;overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;background-size:cover;background-position:center}
.slide.active{opacity:1}
.slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.15))}
.slide-content{position:absolute;z-index:2;left:max(18px,calc((100% - var(--max))/2));bottom:32px;max-width:680px;padding-right:25px}
.slide h2{font-size:clamp(1.5rem,3.4vw,2.6rem);line-height:1.1;margin:0;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 3px 20px #000}
.button,.wp-block-button__link{display:inline-block;background:var(--gold);color:#111!important;border:1px solid var(--gold);padding:.7rem 1.1rem;text-transform:uppercase;font:700 .78rem Arial;letter-spacing:.1em;transition:.2s}
.button:hover{background:#fff;border-color:#fff}
.slider-dots{position:absolute;z-index:4;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.slider-dots button{width:35px;height:4px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer}
.slider-dots button.active{background:var(--gold)}
main{min-height:60vh}
.content-panel{margin:55px auto;padding:clamp(24px,5vw,65px);background:var(--panel);border:1px solid var(--line);box-shadow:0 20px 80px rgba(0,0,0,.35)}
h1,h2,h3{color:#fff;line-height:1.2}h1{font-size:clamp(2rem,5vw,4rem);text-transform:uppercase}h2{font-size:clamp(1.5rem,3vw,2.5rem)}
.entry-meta{font:italic .9rem Georgia;color:#b9ab8e}
.year-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.year-card{position:relative;min-height:270px;border:1px solid var(--line);overflow:hidden;background:#17140e;display:block}
.year-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.5s}
.year-card:hover img{transform:scale(1.08)}
.year-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),transparent 70%)}
.year-card h2{position:absolute;z-index:2;bottom:12px;left:20px;margin:0}
.lx-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.lx-gallery a{aspect-ratio:4/3;display:block;overflow:hidden;background:#191713}
.lx-gallery img{width:100%;height:100%;object-fit:cover}
.wp-block-gallery{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px!important}
.wp-block-gallery .wp-block-image{width:auto!important;margin:0!important;aspect-ratio:4/3;overflow:hidden}
.wp-block-gallery .wp-block-image img{width:100%!important;height:100%!important;object-fit:cover}
.back-home{display:inline-flex;align-items:center;gap:8px;margin:22px 0 0;font:700 .78rem Arial;text-transform:uppercase;letter-spacing:.08em}
.contact-form{display:grid;gap:15px;max-width:760px}
.contact-form label{display:grid;gap:5px}
.contact-form input,.contact-form textarea{width:100%;padding:.85rem;background:#0d0c0a;border:1px solid #51452d;color:#fff;font:inherit}
.contact-form textarea{min-height:180px}
.hp-field{position:absolute!important;left:-10000px!important}
.notice{padding:12px;border:1px solid var(--line);background:rgba(199,160,74,.1)}
.site-footer{background:#090806;border-top:1px solid var(--line);padding:40px 0;color:#a99f8b}
.cookie-banner{position:fixed;z-index:999;left:18px;right:18px;bottom:18px;max-width:760px;margin:auto;background:#0b0a08;border:1px solid var(--gold);box-shadow:0 15px 50px #000;padding:18px;display:flex;gap:16px;align-items:center}
.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0;flex:1}
.has-text-align-justify,.is-justified{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.lx-lead{font-size:1.2em;color:#f2ead6}
.lx-columns-2{columns:2;column-gap:2.5em}
@media(max-width:920px){.menu-toggle{display:block}.header-row{flex-wrap:wrap}.main-nav{display:none;width:100%;order:3}.main-nav.open{display:block}.main-nav>div>ul,.main-nav>ul{display:block}.main-nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;display:block;margin-left:15px;border:0;border-left:1px solid var(--line)}.lang-switch{margin-left:0}.cookie-banner{display:block}.cookie-banner .button{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important}}
