/* ======================================================
   RESET & GLOBAL
====================================================== */

:root{
--dark:#111;
--dark-2:#151515;
--accent:#f09144;
--accent-2:#b98545;
--text:#222;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,body{
overflow-x:hidden;
font-family:'Poppins',sans-serif;
scroll-behavior:smooth;

}

body{
background: rgba(0,0,0,0.85);
color:var(--text);
line-height:1.6;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
color:inherit;
}

/* ======================================================
   HEADER
====================================================== */

.main-header{
position:fixed;
top:0;
left:0;
width:100%;
height:90px;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 5vw;  
  background: rgb(57, 57, 57);
backdrop-filter:blur(10px);
z-index:1000;
color:#000;  
box-shadow: 0px 0px 10px #000000cf;
}

.logo{
font-weight:600;
letter-spacing:1px;
white-space:nowrap;
}

/* ======================================================
   DESKTOP NAV
====================================================== */

.desktop-nav{
display:flex;
align-items:center;
gap:2.5vw;
}

.desktop-nav a,
.mega-toggle{
display:flex;
align-items:center;
gap:10px;  
color: #fff;
font-size:15px;
position:relative;
transition:.3s;
}

.desktop-nav a::after,
.mega-toggle::after{
content:'';
position:absolute;
bottom:-6px;
left:0;
width:0%;
height:2px;
/* background:var(--accent); */
background: linear-gradient(180deg,#f5e247,#f06944);
transition:.3s;
}

/* .desktop-nav a:hover::after,
.mega-toggle:hover::after{
width:100%;
} */

/* CTA */
.cta-btn{
/* background:linear-gradient(135deg,var(--accent),var(--accent-2)); */
background: linear-gradient(180deg,#f5e247,#f06944);
padding:10px 18px;
border-radius:6px;
color:#111;
font-weight:600;  
color: #fff !important;
}

.cta-btn::after{
display:none;
}

/* ======================================================
   MEGA MENU
====================================================== */

.mega-wrapper{
position:relative;
}

.mega-menu{
position: absolute;
  top: 55px;  
  left: calc(100% - 500px);
  width: auto;
  background: var(--dark-2);
  padding: 30px 5vw;
    padding-right: 5vw;
  box-shadow: 0 30px 60px rgba(0,0,0,0.5);
opacity:0;
visibility:hidden;
transition:.35s ease;
}

.mega-wrapper:hover .mega-menu{
opacity:1;
visibility:visible;
}

.mega-content{
max-width:1400px;
margin:auto;
display:grid;
grid-template-columns:repeat(3,1fr) minmax(280px,400px);
gap:60px;
}

.mega-col h4{
color:white;
margin-bottom:20px;
font-size:14px;
letter-spacing:1px;
text-transform:uppercase;
}

.mega-col a{
display:block;
color:#aaa;
margin-bottom:12px;
font-size:14px;
transition:.3s;
}

.mega-col a:hover{
color:var(--accent);
transform:translateX(6px);
}

.mega-image img{
width:100%;
height:260px;
object-fit:cover;
border-radius:8px;
}

/* ======================================================
   HERO
====================================================== */

.hero{
min-height:55vh;
background:url('/images/hero3.png') center/cover no-repeat;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
position:relative;
margin-top:90px;
padding:120px 20px;
}

.hero::after{
content:'';
position:absolute;
inset:0;
background:rgba(0,0,0,0.65);
}

.hero-content{
position:relative;
z-index:2;
color:white;
max-width:800px;
}

.hero h1{
font-size:clamp(28px,5vw,56px);
line-height:1.2;
margin-bottom:20px;
}

.hero p{
font-size:clamp(14px,1.2vw,18px);
opacity:.85;
margin-bottom:30px;
}

.btn{
display:inline-block;
padding:14px 28px;
/* background:linear-gradient(135deg,var(--accent),var(--accent-2)); */
background: linear-gradient(180deg,#f5e247,#f06944);
border-radius:6px;
color:#fff;
font-weight:600;
transition:.3s;
}

.btn:hover{
transform:translateY(-3px);
}

/* ======================================================
   MOBILE MENU (PIXEL PERFECT)
====================================================== */

.mobile-menu{
position:fixed;
top:0;
right:-100%;
width:100%;
height:100vh;
display:flex;
background:#0f0f0f;
background:url('/images/menubg.jpg') center/cover no-repeat;
transition:.45s cubic-bezier(.77,0,.18,1);
z-index:9999;
overflow:hidden;
}

.mobile-menu.active{
right:0;
}

body.menu-open{
overflow:hidden;
}

/* LEFT CONTENT */
.mobile-content{
width:100%;
background: linear-gradient(to bottom,#05050599,#1a1a1a);
  padding: 80px 30px 50px;
  overflow-y: auto;
  position: relative;
}

/* RIGHT IMAGE */
.mobile-bg{
width:22%;
background:url('/images/interior2.jpg') center/cover no-repeat;
opacity:.4;
}

/* TOP BAR */
.mobile-top{
position:absolute;
top:0;
left:0;
width:78%;
height:85px;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 30px;
background:rgba(0,0,0,.85);
backdrop-filter:blur(6px);
z-index:2;
}

.mobile-logo{
/* color:var(--accent); */
color: #f09144;
font-weight:600;
letter-spacing:1px;
}

.mobile-close{
color:white;
font-size:24px;
cursor:pointer;
}

/* MOBILE LINKS */
.mobile-link{
display:flex;
align-items:center;
gap:14px;
padding:20px 0;
border-bottom:1px solid rgba(255,255,255,0.08);
color:white;
font-size:18px;
}

/* SVG ICON */
.nav-icon{
width:20px;
height:20px;
/* stroke:var(--accent); */
stroke:#f09144;
fill:none;
stroke-width:1.6;
}

/* ACCORDION */
.mobile-accordion .accordion-header{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 0;
border-bottom:1px solid rgba(255,255,255,0.08);
color:white;
font-size:18px;
cursor:pointer;
}

.accordion-header .arrow{
transition:.3s;
}

.accordion-header.active .arrow{
transform:rotate(180deg);
}

.accordion-body{
overflow:hidden;
transition:max-height .35s ease;
padding-left:34px;
}

.accordion-body a{
display:block;
padding:14px 0;
color:#bbb;
font-size:16px;
}

/* CTA */
.mobile-cta{
display:block;
margin:40px 0 20px;
padding:16px;
text-align:center;
/* background:linear-gradient(135deg,var(--accent),var(--accent-2)); */

background: linear-gradient(180deg,#f5e247,#f06944);
border-radius:10px;
color:#fff;
font-weight:600;
}

/* CONTACT */
.mobile-contact{
margin-top:20px;
color:#aaa;
font-size:14px;
line-height:1.7;
}

/* ======================================================
   HAMBURGER
====================================================== */

.menu-toggle{
display:none;
width:28px;
height:20px;
position:relative;
cursor:pointer;
z-index:10000;
}

.menu-toggle span{
position:absolute;
width:100%;
height:2px;
background:#fff;
transition:.3s;
}

.menu-toggle span:nth-child(1){top:0}
.menu-toggle span:nth-child(2){top:9px}
.menu-toggle span:nth-child(3){bottom:0}

.menu-toggle.active span:nth-child(1){
transform:rotate(45deg);
top:9px;
}

.menu-toggle.active span:nth-child(2){
opacity:0;
}

.menu-toggle.active span:nth-child(3){
transform:rotate(-45deg);
bottom:9px;
}

/* ======================================================
   RESPONSIVE
====================================================== */

@media(max-width:1200px){

.mega-content{
grid-template-columns:1fr 1fr;
}

.mega-image{
grid-column:span 2;
}

}

@media(max-width:1024px){

.desktop-nav{
display:none;
}

.menu-toggle{
display:block;
}

.main-header{
height:70px;
padding:0 20px;
}

.hero{
margin-top:70px;
padding:100px 20px;
}

}
/* HERO */

.hero{
height:55vh;
background:url('/images/hero3.png') center/cover no-repeat;
display:flex;
align-items:center;
justify-content:center;
position:relative;
margin-top:90px;
}

.hero-overlay{
background:rgba(0,0,0,.6);
padding:60px;
color:white;
text-align:center;
}

.hero-overlay h1{
font-size:clamp(32px,5vw,56px);
}

/* ABOUT */

.about-section{
background:#f5f5f5;
padding:100px 5vw;
}

.about-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.about-content h2{
margin-bottom:20px;
}

.btn-dark{
display:inline-block;
padding:12px 20px;
background:#111;
color:white;
margin-top:20px;
}

/* OFFER */

.offer-section{
background:#f8f8f8;
color:rgb(72, 72, 72);
padding:50px 5vw;
}

.offer-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:40px;
}

.offer-card{
display:block;
text-decoration:none;
color:inherit;
position:relative;
overflow:hidden;
border-radius:10px;
}

.offer-card img{
width:100%;
height:260px;
object-fit:cover;
}

.offer-content{
position:absolute;
bottom:0;
background:rgba(0,0,0,.7);
width:100%;
padding:20px;
}

/* SERVICES */

.services-section{
background:#111;
color:white;
}

.services-grid{
display:grid;
grid-template-columns:1fr 1fr;
}

.services-content{
padding:100px 5vw;
}

.services-content ul{
margin-top:30px;
columns:2;
list-style:none;
}

.services-content li{
margin-bottom:10px;
}

.services-image img{
width:100%;
height:100%;
object-fit:cover;
}

/* CTA */

.cta-section{
background:#000;
color:white;
text-align:center;
padding:120px 20px;
}

.btn-light{
display:inline-block;
margin-top:20px;
padding:14px 28px;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
color:#111;
}

/* RESPONSIVE */

@media(max-width:1024px){

.hero-features{
grid-template-columns:1fr;
}

.about-grid{
grid-template-columns:1fr;
}

.offer-grid{
grid-template-columns:1fr;
}

.services-grid{
grid-template-columns:1fr;
}

}
/* =========================================
   FOOTER
========================================= */

.footer{
background:#0f0f0f;
color:#fff;
padding:60px 5vw;
text-align:center;
font-size:14px;
letter-spacing:.5px;
border-top:1px solid rgba(255,255,255,0.06);
position:relative;
}

/* jemná horná línia */
.footer::before{
content:"";
position:absolute;
top:0;
left:50%;
transform:translateX(-50%);
width:120px;
height:2px;
/* background:linear-gradient(90deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
}

/* kontaktné info */
.footer a{
color:#f09144;
transition:.3s;
}

.footer a:hover{
color:white;
}

/* responzivita */
@media(max-width:768px){

.footer{
padding:40px 20px;
font-size:13px;
}

}
.footer-inner{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:20px;
}

.footer-copy{
opacity:1;
}

@media(max-width:768px){
.footer-inner{
flex-direction:column;
text-align:center;
}
}
/* =========================================
   FOOTER - SVG VERSION
========================================= */

.footer-inner{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:20px;
}

.footer-contact{
display:flex;
gap:30px;
flex-wrap:wrap;
}

.footer-item{
display:flex;
align-items:center;
gap:10px;
color:#aaa;
transition:.3s;
}

.footer-item:hover{
color:var(--accent);
}

.footer-icon{
width:18px;
height:18px;
stroke:var(--accent);
fill:none;
stroke-width:1.6;
transition:.3s;
}

.footer-item:hover .footer-icon{
stroke:white;
}

.footer-copy{
opacity:1;
font-size:13px;
}

@media(max-width:768px){

.footer-inner{
flex-direction:column;
text-align:center;
}

.footer-contact{
justify-content:center;
}

}
/* =========================================
   HERO FEATURES - PREMIUM VERSION
========================================= */

.hero-features{
display:grid;
grid-template-columns:repeat(3,1fr);
background:#fff;
color:#000;
padding:80px 5vw;
gap:40px;
text-align:center;
}

/* HEADER CEZ CELÚ ŠÍRKU */
.hero-features-header{
grid-column:1 / -1;
margin-bottom:20px;
}

.hero-features-header h2{
display:inline-block;
font-size:clamp(26px,3vw,40px);
margin-right:15px;
}

.hero-features-header p{
display:inline-block;
font-size:18px;
color:#bbb;
}

/* FEATURE BOX */
.feature{
padding:30px;
border-radius:12px;
background:linear-gradient(145deg,#161616,#0e0e0e);
transition:.35s ease;
}

.feature:hover{
transform:translateY(-6px);
box-shadow:0 20px 40px rgba(0,0,0,0.4);
}

.feature-icon{
width:70px;
height:70px;
margin:0 auto 25px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
}

.feature-icon svg{
width:28px;
height:28px;
stroke:#111;
fill:none;
stroke-width:2;
}

.feature h3{
margin-bottom:12px;
font-size:18px;
color:#fff;
}

.feature p{
color:#bbb;
font-size:14px;
}

/* RESPONSIVE */
@media(max-width:1024px){

.hero-features{
grid-template-columns:1fr;
text-align:center;
}

.hero-features-header h2,
.hero-features-header p{
display:block;
margin:0;
}

.hero-features-header{
margin-bottom:40px;
}

}
/* =========================================
   OFFER CARDS - PREMIUM HOVER
========================================= */

.offer-card{
display:block;
text-decoration:none;
color:inherit;
position:relative;
overflow:hidden;
border-radius:14px;
cursor:pointer;
transition:transform .4s ease;
}

.offer-card img{
width:100%;
height:280px;
object-fit:cover;
transition:transform .6s ease;
}

/* Overlay */
.offer-overlay{
position:absolute;
inset:0;
display:flex;
flex-direction:column;
justify-content:flex-end;
padding:30px;
background:linear-gradient(
to top,
rgba(0,0,0,0.85),
rgba(0,0,0,0.3),
transparent
);
transition:.4s ease;
}

.offer-overlay h3{
color:white;
font-size:20px;
margin-bottom:8px;
position:relative;
}

.offer-overlay h3::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0%;
height:2px;
/* background:linear-gradient(90deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
transition:.4s ease;
}

.offer-overlay p{
color:#ccc;
font-size:14px;
transform:translateY(10px);
opacity:0;
transition:.4s ease;
}

/* HOVER EFFECT */
.offer-card:hover{
transform:translateY(-8px);
}

.offer-card:hover img{
transform:scale(1.08);
}

.offer-card:hover .offer-overlay{
background:linear-gradient(
to top,
rgba(0,0,0,0.95),
rgba(0,0,0,0.6),
transparent
);
}

.offer-card:hover .offer-overlay p{
transform:translateY(0);
opacity:1;
}

.offer-card:hover h3::after{
width:60%;
}

/* =========================================
   OFFER CARDS – GOLD EDITION
========================================= */

.offer-card{
display:block;
text-decoration:none;
color:inherit;
position:relative;
overflow:hidden;
border-radius:16px;
cursor:pointer;
transition:all .4s ease;
border:1px solid rgba(230,193,137,0.15);
background:#111;
}

.offer-card img{
width:100%;
height:280px;
object-fit:cover;
transition:transform .6s ease;
}

/* Zlatý roh */
.offer-badge{
position:absolute;
top:0;
right:0;
width:80px;
height:80px;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
clip-path:polygon(100% 0, 0 0, 100% 100%);
opacity:.9;
z-index:2;
}
/* Overlay */
.offer-overlay{
position:absolute;
inset:0;
display:flex;
flex-direction:column;
justify-content:flex-end;
padding:30px;
background:linear-gradient(
to top,
rgba(0,0,0,0.85),
rgba(0,0,0,0.5),
rgba(0,0,0,0.1)
);
transition:.4s ease;
}

.offer-overlay h3{
color:white;
font-size:20px;
margin-bottom:8px;
position:relative;
}

.offer-overlay p{
color:#ddd;
font-size:14px;
opacity:0.9;   /* VIDITEĽNÉ */
transform:none;
transition:.3s ease;
} 
/* =========================================
   SERVICES – PREMIUM VERSION
========================================= */

.services-section{
background:#0f0f0f;
color:white;
position:relative;
overflow:hidden;
}

.services-grid{
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
min-height:600px;
}

/* LEFT SIDE */

.services-content{
padding:100px 5vw;
max-width:600px;  
padding-right: 40px;
}

.services-label{
color:#f79c42;
text-transform:uppercase;
letter-spacing:2px;
font-size:13px;
margin-bottom:20px;
}

.services-content h2{
font-size:clamp(28px,3vw,42px);
line-height:1.2;
margin-bottom:25px;
}

.services-intro{
color:#bbb;
margin-bottom:40px;
line-height:1.6;
}

/* LIST */

.services-list{
list-style:none;
display:grid;
grid-template-columns:1fr 1fr;
gap:20px 40px;
}

.services-list li{
position:relative;
padding-left:28px;
font-weight:500;
letter-spacing:.5px;
transition:.3s;
}

/* zlatá bodka */
.services-list li span{
position:absolute;
left:0;
top:6px;
width:12px;
height:12px;
border-radius:50%;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
box-shadow:0 0 12px #f06944;
}

/* hover efekt */
/* .services-list li:hover{
color:#f09144;
transform:translateX(5px);
} */

/* RIGHT SIDE */

.services-image{
position:relative;
height:100%;
}

.services-image img{
width:100%;
height:100%;
object-fit:cover;
filter:brightness(.85);
transition:transform .6s ease;
}

.services-image:hover img{
transform:scale(1.05);
}

/* jemný zlatý overlay */

.image-overlay{
position:absolute;
inset:0;
background-position:center;
background-repeat:no-repeat;
background-size:contain;
background-color:rgba(6,12,20,.82);
opacity:0;
transition:opacity .25s ease;
z-index:1;
pointer-events:none;
}

.image-overlay.active{
opacity:1;
}

/* RESPONSIVE */

@media(max-width:1024px){

.services-grid{
grid-template-columns:1fr;
}

.services-image{
height:400px;
order:-1;
}

.services-content{
padding:60px 20px;
}

.services-list{
grid-template-columns:1fr;
}

}
.cta-section{
position:relative;
background:url('/images/cta-bg.jpg') center/cover no-repeat;
padding:140px 20px;
text-align:center;
color:white;
overflow:hidden;
}

.cta-section::before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(
to right,
rgba(0,0,0,0.8),
rgba(0,0,0,0.6)
);
}

.cta-section h2,
.cta-section .btn-light{
position:relative;
z-index:2;
}

/* =========================================
   CTA SECTION – WITH IMAGE + OVERLAY
========================================= */

.cta-section{
position:relative;
background:url('/images/cooperation.webp') center/cover no-repeat;
padding:160px 20px;
text-align:center;
color:white;
overflow:hidden;
}

/* tmavá clona */
.cta-overlay{
position:absolute;
inset:0;
   /* background:
   linear-gradient(
   to right,
   rgba(0, 0, 0, 0.652),
   rgba(0, 0, 0, 0.454)
   ),
   linear-gradient(
   to top,
   rgba(0,0,0,0.6),
   transparent
   ); */
z-index:1;
}

/* obsah nad clonou */
.cta-content{
position:relative;
z-index:2;
max-width:700px;
margin:auto;
}

.cta-content h2{
font-size:clamp(30px,4vw,52px);
margin-bottom:20px;
line-height:1.2;
}

.cta-content p{
color:#ccc;
margin-bottom:35px;
font-size:18px;
}

/* tlačidlo */
.btn-light{
display:inline-block;
padding:16px 36px;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
color:#fff;
font-weight:600;
border-radius:6px;
transition:.3s ease;
}

.btn-light:hover{
transform:translateY(-3px);
box-shadow:0 10px 30px rgba(230, 168, 137, 0.5);
}

/* Zlatý roh */
.offer-badge{
position:absolute;
top:0;
right:0;
width:85px;
height:85px;
/* background:linear-gradient(135deg,#f09144,#b98545); */

background: linear-gradient(180deg,#f5e247,#f06944);
clip-path:polygon(100% 0, 0 0, 100% 100%);
display:flex;
align-items:flex-start;
justify-content:flex-end;
padding:18px;
z-index:3;
transition:.4s ease;
}

/* SVG PLUS */
.badge-plus{
width:22px;
height:22px;
stroke:#111;
stroke-width:2.5;
fill:none;
transition:.4s ease;
}

/* Hover efekt */
.offer-card:hover .badge-plus{
transform:rotate(90deg);
stroke:#000;
}

.offer-card:hover .offer-badge{
box-shadow:0 0 25px rgba(255, 255, 255, 0.6);
}


.mega-image img{
transition:opacity .3s ease;
}

/* ===============================
   SOCIAL ICONS
================================ */

.social-link{
display:flex;
align-items:center;
justify-content:center;
width:40px;
height:40px;
border-radius:50%;
/* border:1px solid rgba(255,255,255,0.15); */
transition:.3s ease;
}

.social-link .nav-icon{
width:18px;
height:18px;
stroke:currentColor;
fill:none;

}

.social-link{
/* background:linear-gradient(135deg,#f09144,#b98545); */
background: linear-gradient(180deg,#f5e247,#f06944);
border-color:transparent;
color: #fff !important;
  fill: #fff;
}

.social-link .nav-icon{
stroke:#fff;
}
.social-links .nav-icon {
  width: 40px !important;
  height: 40px !important;
/*   stroke: var(--accent); */
stroke:#f06944;
  fill: #fff;
  stroke-width: 1.6;
}
@media(max-width:768px){ 
    .social-link {
  display: inline-block;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.15);
  transition: .3s ease;
  line-height: 60px;
  text-align: center;
}
    
}

.services-label::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0%;
  height: 2px;
  background: linear-gradient(90deg,#f09144,#b98545);
  transition: .4s ease;
}

#menu-toggle.active span {
  background-color: #fff !important;  
  background: #fff !important;
}
 .menu-toggle.active span {
  position: absolute;
  width: 100%;
  height: 2px;
  background: #fff;
  transition: .3s;
}


@media(max-width:768px){
.main-header {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(10px);
  z-index: 1000;
  color: #000;    
  background: #3e3e3e;
  box-shadow: 0px 0px 10px #000000cf;
}
}


@media (max-width: 768px) {
  .hero {
    height: 55vh;
    min-height: 45vh;
    background: url('/images/hero3.png') center/cover no-repeat;

    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 0px !important;
    padding-top: 150px;
  }
  .hero-features {
  padding: 40px 5vw;
}
  .hero-features-header {
    margin-bottom: 0px;
  }
  .offer-section {
  background: #f8f8f8;
  color: rgb(72, 72, 72);
  padding: 20px 5vw;
}
.offer-grid {
  gap: 40px;
}
  .offer-section {
    padding-bottom: 50px;
  }
}

 @media(min-width:767px){
   .hero {
  height: 55vh;
  background: url('/images/hero3.png') center/cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-top: 90px;
}
 }
/* ======================================================
   NAVIGATION REFRESH (DESIGN-COMPATIBLE)
====================================================== */
:root{
--nav-bg:rgba(50, 25, 10, 0.64);
--nav-border:rgba(227, 227, 227, 0.3);
--nav-text:#fff;
--nav-muted:rgba(255, 255, 255, 0.86);
--nav-chip:rgba(255,255,255,0.06);
--nav-chip-hover:rgba(244,185,82,0.20);
--nav-line:linear-gradient(120deg,#f3f3f3,#e8e8e8);
--nav-shadow:0 18px 45px rgba(84,56,10,0.28);
}

.main-header{
position:fixed;
top:0;
left:0;
width:100%;
height:90px;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 5vw;
background:rgba(32, 32, 32, 0.64);
border-bottom:1px solid rgba(255, 255, 255, 0.3);
backdrop-filter:blur(14px);
-webkit-backdrop-filter:blur(14px);
color:#fff;
box-shadow:0 8px 22px rgba(0,0,0,0.28);
z-index:1000;
}

.logo img{
height:45px;
width:auto;
filter:drop-shadow(0 4px 10px rgba(0,0,0,0.25));
}

.desktop-nav{
display:flex;
align-items:center;
gap:8px;
}

.desktop-nav > a,
.mega-toggle{
display:flex;
align-items:center;
gap:10px;
padding:10px 14px;
border-radius:12px;
color:#fff;
font-size:15px;
font-weight:600;
position:relative;
transition:background .25s ease,color .25s ease,transform .25s ease;
}

.desktop-nav > a:hover,
.mega-toggle:hover{
background:rgba(238, 238, 238, 0.2);
transform:translateY(-1px);
}

.desktop-nav > a::after,
.mega-toggle::after{
content:'';
position:absolute;
left:12px;
right:12px;
bottom:6px;
height:2px;
border-radius:999px;
background:var(--nav-line);
transform:scaleX(0);
transform-origin:left;
transition:transform .25s ease;
}

/* .desktop-nav > a:hover::after,
.mega-toggle:hover::after,
.mega-wrapper:focus-within .mega-toggle::after{
transform:scaleX(1);
} */

.nav-icon{
width:18px;
height:18px;
stroke:#ffd795;
fill:none;
stroke-width:1.7;
transition:stroke .25s ease,transform .25s ease;
}

.desktop-nav > a:hover .nav-icon,
.mega-toggle:hover .nav-icon,
.mobile-link:hover .nav-icon{
stroke:#fff3cc;
transform:translateY(-1px);
}

.mega-wrapper{
position:relative;
}

.mega-menu{
position:absolute;
top:calc(100% + 14px);
left:50%;
transform:translate(-50%,10px);
width:min(980px,calc(100vw - 48px));
padding:22px;
border:1px solid var(--nav-border);
border-radius:20px;
background:linear-gradient(160deg,rgba(49, 49, 49, 0.96),rgba(77, 77, 77, 0.94));
box-shadow:var(--nav-shadow);
opacity:0;
visibility:hidden;
transition:opacity .25s ease,transform .25s ease,visibility .25s ease;
z-index:1200;
}

.mega-wrapper:hover .mega-menu,
.mega-wrapper:focus-within .mega-menu{
opacity:1;
visibility:visible;
transform:translate(-55%,0);
}

.mega-content{
max-width:none;
margin:0;
display:grid;
grid-template-columns:auto;
gap:10px;
align-items:start;
}

.mega-col h4{
margin-bottom:12px;
color:#fff;
font-size:12px;
letter-spacing:.08em;
text-transform:uppercase;
}

.mega-col a{
display:block;
margin-bottom:0;
padding:8px 10px;
border-radius:10px;
color:var(--nav-muted);
font-size:14px;
transition:background .25s ease,color .25s ease,transform .25s ease;
padding-left: 0px;
}

.mega-col a:hover{
color:#fff7df;
background:rgba(255,255,255,0.08);
transform:translateX(4px);
}

.mega-image img{
width:100%;
height:100%;
min-height:220px;
object-fit:cover;
border-radius:14px;
border:1px solid rgba(255,227,171,0.24);
}

.desktop-nav .social-link{
display:flex;
align-items:center;
justify-content:center;
width:38px;
height:38px;
border-radius:50%;
/*! background:; */
border:0;
color:#fff;
box-shadow:0 10px 22px rgba(173,103,22,0.30);
transition:transform .25s ease,box-shadow .25s ease;
}

.desktop-nav .social-link:hover{
transform:translateY(-2px);
box-shadow:0 14px 28px rgba(173,103,22,0.38);
}

.desktop-nav .social-link .nav-icon{
stroke:#fff;
width:17px;
height:17px;
}

.mobile-menu{
position:fixed;
top:0;
right:-100%;
width:min(420px,100%);
height:100dvh;
display:flex;
margin-left:auto;
background:
linear-gradient(160deg,rgba(47, 47, 47, 0.96),rgba(0, 0, 0, 0.67)),
url('/images/menubg.jpg') center/cover no-repeat;
transition:right .4s cubic-bezier(.77,0,.18,1);
box-shadow:-24px 0 60px rgba(0,0,0,0.45);
z-index:9999;
overflow:hidden;
}

.mobile-menu.active{
right:0;
}

.mobile-content{
width:100%;
padding:88px 22px 28px;
overflow-y:auto;
position:relative;
background:transparent;
}

.mobile-link,
.mobile-accordion .accordion-header{
display:flex;
align-items:center;
gap:12px;
padding:16px 2px;
border-bottom:1px solid rgba(255,235,190,0.14);
  color: #fff;
font-size:17px;
font-weight:600;
}

.mobile-accordion .accordion-header{
justify-content:space-between;
cursor:pointer;
}

.accordion-header .arrow{
color:#ffd996;
transition:transform .25s ease;
}

.accordion-header.active .arrow{
transform:rotate(180deg);
}

.accordion-body{
overflow:hidden;
transition:max-height .35s ease;
padding-left:4px;
}

.accordion-body a{
display:block;
padding:12px 0;
color:var(--nav-muted);
font-size:15px;
}

.accordion-body a:hover{
color:#fff7df;
}

.mobile-cta{
display:block;
margin:24px 0 14px;
padding:14px 16px;
text-align:center;
background:var(--nav-line);
border-radius:12px;
color:#fff;
font-weight:700;
box-shadow:0 14px 30px rgba(173,103,22,0.30);
background: linear-gradient(180deg,#f5e247,#f06944);
color: #fff;
}

.mobile-content .social-link{
margin:10px auto 0 !important;
display:flex !important;
align-items:center;
justify-content:center;
width:44px;
height:44px;
border-radius:50%;
background:var(--nav-line);
color:#fff;
border:0;
background: linear-gradient(180deg,#f5e247,#f06944);
color: #fff;
}

.mobile-content .social-link .nav-icon{
stroke:#fff;
width:18px;
height:18px;
}

.menu-toggle{
display:none;
width:30px;
height:22px;
position:relative;
cursor:pointer;
z-index:10000;
}

.menu-toggle span{
position:absolute;
width:100%;
height:2px;
background:#fff;
border-radius:999px;
transition:.3s;
}

.menu-toggle span:nth-child(1){top:0}
.menu-toggle span:nth-child(2){top:10px}
.menu-toggle span:nth-child(3){bottom:0}

.menu-toggle.active span:nth-child(1){
transform:rotate(45deg);
top:10px;
}

.menu-toggle.active span:nth-child(2){
opacity:0;
}

.menu-toggle.active span:nth-child(3){
transform:rotate(-45deg);
bottom:10px;
}

@media(max-width:1200px){
.mega-content{
grid-template-columns:1fr 1fr;
}

.mega-image{
grid-column:span 2;
}
}

@media(max-width:1024px){
.desktop-nav{
display:none;
}

.menu-toggle{
display:block;
}

.main-header{
height:74px;
padding:0 20px;
}
}

@media(max-width:768px){
.main-header{
height:70px;
padding:0 14px;
}

.logo img{
height:40px;
}

.mobile-menu{
width:100%;
}
}

.services-list li a{
color:inherit;
text-decoration:none;
display:inline-block;
}

.services-list li:hover a{
color:inherit;
}

.services-list li a:focus-visible{
outline:2px solid #f4b558;
outline-offset:3px;
border-radius:4px;
}
/* =========================================
   MOBILE ACCORDION – LEVEL 2 (Nested)
========================================= */

.mobile-accordion .mobile-accordion {
  margin-top: 6px;
}

/* HEADER LEVEL 2 */
.accordion-header2{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,0.06);
  color:#ddd;
  font-size:15px;
  font-weight:500;
  cursor:pointer;
  position:relative;
  transition:.3s ease;
}

/* jemná ľavá línia (vizuálne oddelenie lvl 2) */

/* hover */
.accordion-header2:hover{
  color:#fff;
}

/* šípka lvl 2 */
.accordion-header2 .arrow{
  font-size:14px;
  color:#ffd996;
  transition:transform .25s ease;
}

.accordion-header2.active .arrow{
  transform:rotate(180deg);
}

/* BODY LEVEL 2 */
.accordion-body2{
  overflow:hidden;
  transition:max-height .35s ease;
  padding-left:32px; /* väčšie odsadenie než lvl 1 */
}

.accordion-body2 a{
  display:block;
  padding:10px 0;
  font-size:14px;
  color:#bbb;
  transition:.25s ease;
}

.accordion-body2 a:hover{
  color:#fff7df;
}

/* =========================================
   MEGA MENU – CLEAN DROPDOWN VERSION
========================================= */

.mega-wrapper{
position:relative;
}

.mega-menu{
position:absolute;
top:100%;
left:0;
width:900px; /* môžeš upraviť */
margin-top:14px;

padding:28px;
border-radius:18px;
background:linear-gradient(160deg,rgba(49,49,49,.98),rgba(60,60,60,.95));
border:1px solid rgba(255,255,255,0.08);
box-shadow:0 25px 60px rgba(0,0,0,.45);

opacity:0;
visibility:hidden;
transform:translateY(15px);
transition:all .28s ease;

z-index:1200;
}

/* OPEN EFFECT */
.mega-wrapper:hover .mega-menu,
.mega-wrapper:focus-within .mega-menu{
opacity:1;
visibility:visible;
transform:translateY(0);
max-width: 350px;
}

.submenu a span{
  position: absolute;
  left: 0;
  top: 10px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg,#f09144,#b98545);
  background: linear-gradient(180deg,#f5e247,#f06944);
  box-shadow: 0 0 12px #f06944;

}
.accordion-body2 a span{  position: relative;

  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg,#f09144,#b98545);
  background: linear-gradient(180deg,#f5e247,#f06944);
  box-shadow: 0 0 12px #f06944;
  display: inline-block;
  margin-right: 10px;

}
.submenu a {
    padding-left: 25px;
}
.accordion-body2 a {
    padding-left: 0px;
    line-height: 25px;
}
.accordion-body,
.accordion-body2,
.accordion-body3{
  display: none;
}

.accordion-body.open,
.accordion-body2.open,
.accordion-body3.open{
  display: block;
}