:root{
  --szgv-bg:#0b1220;
  --szgv-bg2:#111827;
  --szgv-surface:#ffffff;
  --szgv-gold:#d8a51d;
  --szgv-gold2:#f4c84a;
  --szgv-text:#111827;
  --szgv-muted:#64748b;
  --szgv-light:#f8fafc;
  --szgv-border:#e5e7eb;
  --szgv-radius:18px;
  --szgv-shadow:0 14px 38px rgba(15,23,42,.08);
}

/* ==========================================================
   THEME-COMPATIBILITY LAYER
   The imported SZGKVIZSGA pages receive body.szgv-landing-page.
   This neutralizes the old theme's orange content panel / page title
   while leaving the WordPress admin untouched.
   ========================================================== */
body.szgv-landing-page{background:#fff!important;color:var(--szgv-text)!important;}
body.szgv-landing-page header#masthead,
body.szgv-landing-page .site-header:not(.szgv-modern-header),
body.szgv-landing-page #masthead,
body.szgv-landing-page footer#colophon,
body.szgv-landing-page .site-footer:not(.szgv-modern-footer){display:none!important;}
body.szgv-landing-page .entry-header,
body.szgv-landing-page .page-header,
body.szgv-landing-page .entry-title,
body.szgv-landing-page h1.entry-title{display:none!important;}
body.szgv-landing-page #page,
body.szgv-landing-page .site,
body.szgv-landing-page #content,
body.szgv-landing-page .site-content,
body.szgv-landing-page #primary,
body.szgv-landing-page .content-area,
body.szgv-landing-page #main,
body.szgv-landing-page .site-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important;background:#fff!important;}
body.szgv-landing-page article.page,
body.szgv-landing-page article.hentry,
body.szgv-landing-page .hentry{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important;}
body.szgv-landing-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;}
body.szgv-landing-page .entry-content:before,
body.szgv-landing-page .entry-content:after{display:none!important;}
body.szgv-landing-page .site-content > .container,
body.szgv-landing-page #content > .container,
body.szgv-landing-page #primary > .container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
body.szgv-landing-page .sidebar,
body.szgv-landing-page #secondary{display:none!important;}
body.szgv-landing-page .comments-area,
body.szgv-landing-page .post-navigation,
body.szgv-landing-page .navigation.post-navigation{display:none!important;}

/* Modern header */
.szgv-modern-header{position:sticky;top:0;z-index:9997;background:rgba(11,18,32,.98);color:#fff;font-family:inherit;box-shadow:0 1px 0 rgba(255,255,255,.08);transition:box-shadow .2s ease,background .2s ease;}
.admin-bar .szgv-modern-header{top:32px;}
.szgv-modern-header.is-scrolled{box-shadow:0 10px 32px rgba(0,0,0,.18);background:rgba(11,18,32,.995);}
.szgv-topline{background:#070d18;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px;}
.szgv-header-inner{max-width:1220px;margin:0 auto;padding:0 22px;}
.szgv-topline .szgv-header-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#cbd5e1;}
.szgv-topline a{color:#fff!important;text-decoration:none!important;font-weight:700;}
.szgv-navrow{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px;}
.szgv-brand{display:flex;flex-direction:column;gap:1px;text-decoration:none!important;white-space:nowrap;}
.szgv-brand-main{font-weight:900;font-size:22px;line-height:1;letter-spacing:.045em;color:#fff;}
.szgv-brand-sub{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#94a3b8;}
.szgv-modern-nav{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
.szgv-modern-nav a{display:inline-flex;align-items:center;min-height:42px;padding:9px 11px;border-radius:9px;color:#e5e7eb!important;text-decoration:none!important;font-size:14px;font-weight:700;line-height:1.15;transition:background .15s ease,color .15s ease,transform .15s ease;}
.szgv-modern-nav a:hover{background:rgba(255,255,255,.07);color:#fff!important;}
.szgv-modern-nav .szgv-nav-cta{background:var(--szgv-gold2)!important;color:#111827!important;padding-left:16px;padding-right:16px;margin-left:6px;box-shadow:0 6px 18px rgba(244,200,74,.15);}
.szgv-modern-nav .szgv-nav-cta:hover{background:#ffd761!important;transform:translateY(-1px);}
.szgv-menu-toggle{display:none;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;border-radius:9px;padding:9px 12px;font-weight:800;cursor:pointer;}

/* Page shell / main design */
.szgv-page-shell{width:100%;background:#fff;overflow:hidden;}
.szgv-wrap{max-width:1180px;margin:0 auto;padding:0 24px;box-sizing:border-box;}
.szgv-section{padding:68px 0;}
.szgv-section-sm{padding:34px 0;}
.szgv-page-shell h1,.szgv-page-shell h2,.szgv-page-shell h3{font-family:inherit;letter-spacing:-.02em;color:var(--szgv-text);}
.szgv-page-shell h2{font-size:clamp(1.75rem,3vw,2.55rem);line-height:1.12;margin:0 0 16px;}
.szgv-page-shell p{line-height:1.65;}
.szgv-hero{position:relative;background:linear-gradient(125deg,#08101e 0%,#111c2f 56%,#172033 100%);color:#fff;padding:88px 0 92px;overflow:hidden;}
.szgv-hero:before{content:"";position:absolute;inset:-30% -10% auto auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(244,200,74,.16),rgba(244,200,74,0) 68%);pointer-events:none;}
.szgv-hero .szgv-wrap{position:relative;z-index:1;}
.szgv-kicker{display:inline-block;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:.88rem;margin-bottom:18px;font-weight:700;letter-spacing:.01em;}
.szgv-hero h1{font-size:clamp(2.55rem,5.3vw,4.75rem);line-height:.99;margin:.08em 0 .3em;max-width:980px;color:#fff!important;font-weight:800;letter-spacing:-.045em;}
.szgv-hero p{font-size:clamp(1.03rem,1.7vw,1.22rem);max-width:800px;color:#dbe4ef;margin-bottom:0;}
.szgv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;}
.szgv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;text-decoration:none!important;border-radius:11px;padding:12px 18px;font-weight:800;border:1px solid transparent;cursor:pointer;line-height:1.2;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;}
.szgv-btn:hover{transform:translateY(-1px);}
.szgv-btn-primary{background:var(--szgv-gold2);color:#111827!important;box-shadow:0 8px 22px rgba(244,200,74,.17);}
.szgv-btn-primary:hover{background:#ffd65d;box-shadow:0 10px 25px rgba(244,200,74,.22);}
.szgv-btn-secondary{border-color:#94a3b8;color:#fff!important;background:rgba(255,255,255,.02);}
.szgv-btn-secondary:hover{background:rgba(255,255,255,.08);}
.szgv-btn-dark{background:#111827;color:#fff!important;}
.szgv-grid{display:grid;gap:20px;}
.szgv-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.szgv-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.szgv-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.szgv-card{border:1px solid var(--szgv-border);border-radius:var(--szgv-radius);padding:24px;background:#fff;box-shadow:var(--szgv-shadow);}
.szgv-card h3{margin:0 0 9px;font-size:1.18rem;}
.szgv-card p:last-child{margin-bottom:0;}
.szgv-icon{font-size:1.55rem;line-height:1;}
.szgv-muted{color:var(--szgv-muted);}
.szgv-price{font-size:1.35rem;font-weight:900;margin-top:8px;}
.szgv-highlight{background:#fff9e8;border:1px solid #efd77f;border-radius:14px;padding:19px;}
.szgv-steps{counter-reset:step;}
.szgv-step{position:relative;padding-left:70px;}
.szgv-step:before{counter-increment:step;content:counter(step);position:absolute;left:20px;top:24px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#111827;color:#fff;font-weight:900;}
.szgv-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--szgv-border);border-radius:14px;overflow:hidden;box-shadow:0 8px 28px rgba(15,23,42,.05);}
.szgv-table th,.szgv-table td{padding:14px 16px;border-bottom:1px solid var(--szgv-border);text-align:left;}
.szgv-table th{background:#f8fafc;font-weight:800;}
.szgv-table tr:last-child td{border-bottom:0;}
.szgv-faq details{border-bottom:1px solid var(--szgv-border);padding:15px 0;}
.szgv-faq summary{font-weight:800;cursor:pointer;}
.szgv-cta{background:linear-gradient(135deg,#0b1220,#172033);color:#fff;border-radius:20px;padding:30px;box-shadow:0 18px 45px rgba(15,23,42,.16);}
.szgv-cta h2{color:#fff!important;margin-top:0;}

/* Booking */
.szgv-booking-wrap{max-width:920px;margin:0 auto;}
.szgv-booking-form{border:1px solid var(--szgv-border);border-radius:18px;padding:26px;background:#fff;box-shadow:var(--szgv-shadow);}
.szgv-booking-form h3{margin-top:28px;}
.szgv-booking-form input[type=text],.szgv-booking-form input[type=email],.szgv-booking-form input[type=tel],.szgv-booking-form input[type=date],.szgv-booking-form select{width:100%;box-sizing:border-box;padding:12px 13px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#111827;}
.szgv-booking-form input:focus,.szgv-booking-form select:focus{outline:2px solid rgba(216,165,29,.25);border-color:#d8a51d;}
.szgv-booking-form input[type=file]{max-width:100%;}
.szgv-check{display:flex;gap:8px;align-items:flex-start;}
.szgv-hp{position:absolute!important;left:-9999px!important;opacity:0!important;}
.szgv-note{background:#f8fafc;border-left:4px solid var(--szgv-gold);padding:14px 16px;margin:0 0 18px;}
.szgv-alert{padding:14px 16px;border-radius:10px;margin-bottom:16px;}
.szgv-alert-success{background:#ecfdf5;border:1px solid #a7f3d0;}
.szgv-alert-warning{background:#fffbeb;border:1px solid #fde68a;}
.szgv-alert-error{background:#fef2f2;border:1px solid #fecaca;}

/* Modern footer */
.szgv-modern-footer{background:#080f1c;color:#cbd5e1;padding:42px 0 30px;border-top:1px solid rgba(255,255,255,.06);}
.szgv-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;}
.szgv-modern-footer h3{margin:0 0 10px;color:#fff;font-size:1.05rem;}
.szgv-modern-footer p{margin:6px 0;line-height:1.55;}
.szgv-modern-footer a{color:#fff!important;text-decoration:none!important;}
.szgv-footer-brand{font-weight:900;font-size:22px;color:#fff;letter-spacing:.04em;}
.szgv-footer-bottom{margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09);font-size:12px;color:#94a3b8;}

.szgv-mobile-bar{display:none;}

@media(max-width:1050px){
  .szgv-modern-nav{gap:2px;}
  .szgv-modern-nav a{padding:8px 8px;font-size:13px;}
  .szgv-navrow{gap:15px;}
}
@media(max-width:900px){
  .szgv-grid-4,.szgv-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .szgv-hero{padding:68px 0 72px;}
  .szgv-section{padding:54px 0;}
  .szgv-menu-toggle{display:inline-flex;align-items:center;gap:8px;}
  .szgv-modern-nav{display:none;position:absolute;left:18px;right:18px;top:calc(100% - 2px);background:#0b1220;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:10px;box-shadow:0 20px 40px rgba(0,0,0,.32);flex-direction:column;align-items:stretch;}
  .szgv-modern-nav.is-open{display:flex;}
  .szgv-modern-nav a{justify-content:flex-start;padding:12px 13px;font-size:15px;}
  .szgv-modern-nav .szgv-nav-cta{margin:4px 0 0;justify-content:center;}
  .szgv-modern-header .szgv-navrow{position:relative;}
  .szgv-footer-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:782px){.admin-bar .szgv-modern-header{top:46px;}}
@media(max-width:640px){
  .szgv-topline .szgv-header-inner{min-height:32px;font-size:11px;gap:8px;}
  .szgv-topline .szgv-top-address{display:none;}
  .szgv-navrow{min-height:68px;}
  .szgv-brand-main{font-size:19px;}
  .szgv-brand-sub{font-size:9px;}
  .szgv-grid-2,.szgv-grid-3,.szgv-grid-4{grid-template-columns:1fr;}
  .szgv-wrap{padding:0 17px;}
  .szgv-hero h1{font-size:clamp(2.35rem,13vw,3.5rem);}
  .szgv-hero{padding:58px 0 62px;}
  .szgv-actions .szgv-btn{width:100%;text-align:center;}
  .szgv-booking-form{padding:17px;}
  .szgv-table{font-size:.94rem;display:block;overflow-x:auto;}
  .szgv-footer-grid{grid-template-columns:1fr;}
  .szgv-modern-footer{padding-bottom:86px;}
  .szgv-mobile-bar{display:flex;position:fixed;left:10px;right:10px;bottom:10px;z-index:9999;box-shadow:0 8px 30px rgba(0,0,0,.28);border-radius:12px;overflow:hidden;}
  .szgv-mobile-bar a{flex:1;text-align:center;padding:13px;text-decoration:none!important;font-weight:900;}
  .szgv-mobile-bar a:first-child{background:#111827;color:#fff!important;}
  .szgv-mobile-bar a:last-child{background:var(--szgv-gold2);color:#111827!important;}
}
