:root{
  --bg:#080b0d;--panel:#101417;--panel2:#0c1012;--line:#30363a;
  --text:#f5f5f2;--muted:#b8bec0;--yellow:#ffc400;--max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.45}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.container{width:min(calc(100% - 60px),var(--max));margin:auto}
.section{padding:48px 0;border-top:1px solid #20262a}
.section-title{text-align:center;margin:0 0 28px;font-size:31px;line-height:1;text-transform:uppercase}
.section-title span,.yellow{color:var(--yellow)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border:1px solid var(--yellow);border-radius:4px;color:var(--yellow);font-weight:800;font-size:12px;text-transform:uppercase}
.btn.primary{background:var(--yellow);color:#07090a}
.header{height:62px;position:sticky;top:0;z-index:30;background:rgba(6,8,10,.97);border-bottom:1px solid #292f32}
.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}
.logo{font-weight:900;line-height:.78;font-size:29px}.logo b{color:var(--yellow)}.logo small{display:block;font-size:9px;letter-spacing:1.7px;margin-top:10px}
.menu{display:flex;gap:28px;align-items:center;font-size:11px;font-weight:800;text-transform:uppercase}
.menu a:hover{color:var(--yellow)}
.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:26px}
.hero{min-height:347px;background:#070a0c;border-bottom:1px solid #252b2f}
.hero-grid{display:grid;grid-template-columns:37% 63%;min-height:347px}
.hero-copy{padding:35px 25px 30px 0;display:flex;flex-direction:column;justify-content:center}
.hero h1{font-size:34px;line-height:1.12;margin:0 0 20px;text-transform:uppercase;letter-spacing:-0.2px;font-weight:700}
.hero h1 .yellow{display:block;margin-top:8px;font-size:.68em;font-weight:600}
.hero p{margin:0 0 23px;color:#e1e4e5;font-size:15px;max-width:390px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.brand-row{display:flex;gap:22px;align-items:center;margin-top:28px;color:#92999c;font-size:17px;font-style:italic;font-weight:700;opacity:.85}
.hero-image{position:relative;overflow:hidden}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070a0c 0%,transparent 20%)}
.reasons{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.card{background:linear-gradient(145deg,#111619,#0b0e10);border:1px solid var(--line)}
.reason{padding:20px 13px;text-align:center;min-height:136px}
.icon{width:42px;height:42px;margin:0 auto 10px;color:var(--yellow)}
.icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.8}
.reason h3{font-size:12px;text-transform:uppercase;margin:0 0 8px}
.reason p{font-size:10px;color:var(--muted);margin:0}
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.service{overflow:hidden;border-color:#9e7900}
.service .pic{height:120px}
.service .copy{padding:14px 15px 17px;min-height:92px}
.service h3{font-size:12px;text-transform:uppercase;margin:0 0 7px}
.service p{font-size:11px;color:var(--muted);margin:0}
.cert{height:100%;min-height:212px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px}
.cert-logo{font-size:30px;font-weight:900;line-height:.9}.cert-logo b{color:var(--yellow)}.cert strong{letter-spacing:3px;margin-top:9px}
.refs-head{display:flex;justify-content:center;position:relative;align-items:center}.refs-head .btn{position:absolute;right:0;top:-8px;min-height:34px;font-size:9px}
.refs{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}
.ref{text-align:center}
.ref .pic{height:116px;border:1px solid #9e7900;overflow:hidden}
.ref h3{font-size:11px;margin:7px 0 4px;text-transform:uppercase}
.ref p{font-size:8.5px;color:var(--muted);margin:0}
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.step{text-align:center;position:relative;padding:0 8px}
.step:not(:last-child):after{content:"➜";position:absolute;right:-19px;top:26px;color:var(--yellow);font-size:21px}
.step h3{font-size:12px;text-transform:uppercase;margin:9px 0}
.step p{font-size:10px;color:var(--muted);margin:0}
.about{display:grid;grid-template-columns:45% 55%;border:1px solid #252b2f;background:#0c1012}
.about-image{min-height:235px}
.about-copy{padding:15px 28px}
.about-copy h2{color:var(--yellow);font-size:29px;margin:0 0 12px;text-transform:uppercase}
.about-copy p{font-size:12px;color:#d0d4d5;margin:0 0 10px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px}
.stat{padding-right:12px;border-right:1px solid #32383b}.stat:last-child{border:0}
.stat b{display:block;color:var(--yellow);font-size:25px}.stat span{font-size:8px;text-transform:uppercase}
.footer{padding:34px 0;background:#0b0f11;border-top:1px solid #2b3134}
.footer-grid{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:48px;align-items:center}
.footer h2{font-size:23px;margin:0 0 16px;text-transform:uppercase}
.contact-line{display:flex;gap:12px;margin:10px 0;color:#d6dbdc;font-size:12px}.contact-line b{color:var(--yellow)}
.help h3{font-size:17px;margin:0 0 8px}.help p{font-size:12px;color:var(--muted);margin:0 0 15px}
.diary{display:flex;gap:18px;align-items:center}.diary h3{color:var(--yellow);font-size:12px;text-transform:uppercase}.diary p{font-size:9px;color:var(--muted)}.qr{width:72px;height:72px;flex:none}
.bottom{border-top:1px solid #20262a;color:#7f888b;font-size:9px;padding:16px 0}.bottom .container{display:flex;justify-content:space-between}
@media(max-width:980px){
 .menu{display:none}.menu.open{display:flex;position:absolute;top:62px;left:0;right:0;background:#080b0d;padding:22px;flex-direction:column;align-items:flex-start}
 .menu-toggle{display:block}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-right:0}.hero-image{height:330px}.reasons{grid-template-columns:repeat(3,1fr)}
 .services{grid-template-columns:repeat(2,1fr)}.refs{grid-template-columns:repeat(4,1fr)}.about{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
 .container{width:min(calc(100% - 28px),var(--max))}.section{padding:38px 0}.hero h1{font-size:30px;line-height:1.12;letter-spacing:0;font-weight:700}.hero h1 .yellow{font-size:.68em;font-weight:600}.hero-image{height:260px}
 .brand-row{flex-wrap:wrap}.reasons{grid-template-columns:repeat(2,1fr)}.services{grid-template-columns:1fr}.refs{grid-template-columns:repeat(2,1fr)}
 .process{grid-template-columns:1fr}.step:not(:last-child):after{content:"↓";right:auto;left:50%;top:auto;bottom:-27px}
 .stats{grid-template-columns:repeat(2,1fr);gap:18px}.refs-head .btn{position:static;margin-left:15px}.about-copy{padding:22px}.bottom .container{gap:15px;flex-direction:column}
}

/* Gyors üzenetküldés */
.quick-message{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 11% 32%,rgba(255,196,0,.09),transparent 28%),
    linear-gradient(135deg,#0c1012 0%,#080b0d 62%);
}
.quick-message:before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  left:-210px;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  border:1px solid rgba(255,196,0,.13);
}
.quick-message-grid{
  position:relative;
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:62px;
  align-items:center;
}
.section-kicker{
  margin:0 0 10px;
  color:var(--yellow);
  font-size:10px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
}
.quick-message-intro h2{
  margin:0 0 20px;
  font-size:44px;
  line-height:.98;
  letter-spacing:-1.4px;
  text-transform:uppercase;
}
.quick-heading-small{
  display:inline-block;
  color:var(--text);
  font-size:.64em;
  font-weight:700;
  letter-spacing:-.4px;
}

.quick-heading-large{
  display:inline-block;
  color:var(--yellow);
  font-size:1em;
  font-weight:800;
}
.quick-lead{
  max-width:475px;
  margin:0 0 25px;
  color:#d0d5d6;
  font-size:13px;
}
.quick-benefits{
  display:grid;
  gap:14px;
}
.quick-benefit{
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.quick-check{
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:grid;
  place-items:center;
  border:1px solid var(--yellow);
  color:var(--yellow);
  font-size:13px;
  font-weight:900;
}
.quick-benefit strong{
  display:block;
  font-size:11px;
  text-transform:uppercase;
}
.quick-benefit small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:10px;
}
.quick-form{
  padding:25px;
  border:1px solid #3a4145;
  background:rgba(10,14,16,.94);
  box-shadow:0 20px 60px rgba(0,0,0,.28);
}
.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
.form-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:13px;
}
.form-field label{
  font-size:9px;
  font-weight:800;
  letter-spacing:.7px;
  text-transform:uppercase;
}
.form-field input,
.form-field select,
.form-field textarea{
  width:100%;
  border:1px solid #394145;
  border-radius:2px;
  outline:none;
  background:#080b0d;
  color:var(--text);
  padding:12px 13px;
  font:inherit;
  font-size:12px;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.form-field select{
  appearance:none;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--yellow) 50%),
    linear-gradient(135deg,var(--yellow) 50%,transparent 50%);
  background-position:
    calc(100% - 17px) calc(50% - 2px),
    calc(100% - 12px) calc(50% - 2px);
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
}
.form-field textarea{
  min-height:120px;
  resize:vertical;
}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  border-color:var(--yellow);
  box-shadow:0 0 0 2px rgba(255,196,0,.08);
}
.form-field input::placeholder,
.form-field textarea::placeholder{color:#697275}
.form-submit-row{
  display:flex;
  gap:18px;
  align-items:center;
}
.form-submit{
  flex:0 0 auto;
  border:0;
  cursor:pointer;
}
.form-submit-row p{
  margin:0;
  color:#7f888b;
  font-size:8.5px;
}
.form-honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
}

@media(max-width:980px){
  .quick-message-grid{grid-template-columns:1fr;gap:35px}
  .quick-message-intro h2{font-size:39px}
}
@media(max-width:620px){
  .quick-message-intro h2{font-size:34px}
  .form-row{grid-template-columns:1fr;gap:0}
  .quick-form{padding:18px}
  .form-submit-row{align-items:stretch;flex-direction:column}
  .form-submit{width:100%}
}


/* Adatkezelési hozzájárulás */
.gdpr-row{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin:4px 0 18px;
  color:#c8ced0;
  font-size:11px;
}
.gdpr-row input[type="checkbox"]{
  width:17px;
  height:17px;
  flex:0 0 17px;
  margin:1px 0 0;
  accent-color:var(--yellow);
  cursor:pointer;
}
.gdpr-row label{
  line-height:1.45;
  cursor:pointer;
}
.gdpr-row a{
  color:var(--yellow);
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:2px;
}
.gdpr-row a:hover{
  color:#ffdb55;
}
.form-submit:disabled{
  opacity:.38;
  cursor:not-allowed;
  filter:grayscale(.25);
}
.form-submit:disabled:hover{
  background:var(--yellow);
  color:#07090a;
}


/* Beágyazott adatkezelési felugró ablak */
body.modal-open{
  overflow:hidden;
}
.privacy-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
}
.privacy-modal.is-open{
  display:flex;
}
.privacy-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.82);
  backdrop-filter:blur(4px);
}
.privacy-modal-dialog{
  position:relative;
  z-index:1;
  width:min(900px,100%);
  max-height:88vh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #3a4145;
  border-radius:6px;
  outline:none;
  background:#111518;
  box-shadow:0 28px 90px rgba(0,0,0,.6);
}
.privacy-modal-x{
  position:absolute;
  top:12px;
  right:14px;
  z-index:2;
  width:38px;
  height:38px;
  border:1px solid #444d51;
  border-radius:50%;
  background:#0a0e10;
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.privacy-modal-x:hover{
  border-color:var(--yellow);
  color:var(--yellow);
}
.privacy-modal-content{
  overflow-y:auto;
  padding:40px 42px 24px;
}
.privacy-modal-content h2{
  margin:0 45px 8px 0;
  color:var(--yellow);
  font-size:30px;
  text-transform:uppercase;
}
.privacy-modal-content h3{
  margin:28px 0 8px;
  color:var(--yellow);
  font-size:17px;
}
.privacy-modal-content p,
.privacy-modal-content li{
  color:#c7cdcf;
  font-size:13px;
}
.privacy-modal-content ul{
  padding-left:21px;
}
.privacy-notice{
  margin:22px 0;
  padding:15px 17px;
  border-left:4px solid var(--yellow);
  background:#0b0f11;
  color:#d6dbdc;
  font-size:13px;
}
.privacy-modal-footer{
  padding:16px 42px 22px;
  border-top:1px solid #2c3336;
  background:#0c1012;
  text-align:center;
}
.privacy-modal-footer .btn{
  border:0;
  cursor:pointer;
}

@media(max-width:620px){
  .privacy-modal{
    padding:10px;
  }
  .privacy-modal-dialog{
    max-height:94vh;
  }
  .privacy-modal-content{
    padding:30px 20px 18px;
  }
  .privacy-modal-content h2{
    font-size:24px;
  }
  .privacy-modal-footer{
    padding:14px 20px 18px;
  }
  .privacy-modal-footer .btn{
    width:100%;
  }
}


.facebook-btn{
  border-color:#1877f2;
  background:#1877f2;
  color:#fff;
}
.facebook-btn:hover{
  border-color:#2f88ff;
  background:#2f88ff;
  color:#fff;
}
.reference-card{
  cursor:pointer;
  transition:transform .18s ease;
  outline:none;
}
.reference-card:hover,
.reference-card:focus-visible{
  transform:translateY(-4px);
}
.reference-card:hover .pic,
.reference-card:focus-visible .pic{
  border-color:var(--yellow);
  box-shadow:0 10px 28px rgba(0,0,0,.32);
}
.reference-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
}
.reference-modal.is-open{display:flex}
.reference-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.84);
  backdrop-filter:blur(4px);
}
.reference-modal-dialog{
  position:relative;
  z-index:1;
  width:min(980px,100%);
  max-height:90vh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #3a4145;
  border-radius:6px;
  outline:none;
  background:#111518;
  box-shadow:0 28px 90px rgba(0,0,0,.65);
}
.reference-modal-x{
  position:absolute;
  top:12px;
  right:14px;
  z-index:2;
  width:38px;
  height:38px;
  border:1px solid #444d51;
  border-radius:50%;
  background:#0a0e10;
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.reference-modal-x:hover{
  border-color:var(--yellow);
  color:var(--yellow);
}
.reference-modal-content{
  overflow-y:auto;
  padding:40px 42px 28px;
}
.reference-modal-content h2{
  margin:0 45px 16px 0;
  color:var(--yellow);
  font-size:32px;
  text-transform:uppercase;
}
.reference-modal-description{
  max-width:760px;
  margin:0 0 24px;
  color:#c7cdcf;
  font-size:14px;
}
.reference-modal-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.reference-modal-gallery figure{
  margin:0;
  overflow:hidden;
  border:1px solid #3a4145;
  background:#090c0e;
}
.reference-modal-gallery img{
  width:100%;
  height:auto;
  max-height:520px;
  object-fit:cover;
}
.reference-modal-footer{
  padding:16px 42px 22px;
  border-top:1px solid #2c3336;
  background:#0c1012;
  text-align:center;
}
.reference-modal-footer .btn{
  border:0;
  cursor:pointer;
}
@media(max-width:620px){
  .reference-modal{padding:10px}
  .reference-modal-dialog{max-height:94vh}
  .reference-modal-content{padding:30px 20px 18px}
  .reference-modal-content h2{font-size:24px}
  .reference-modal-gallery{grid-template-columns:1fr}
  .reference-modal-footer{padding:14px 20px 18px}
  .reference-modal-footer .btn{width:100%}
}


/* Referenciaképek nagyítható galériája */
.reference-modal-gallery img{
  cursor:zoom-in;
}

.image-lightbox{
  position:fixed;
  inset:0;
  z-index:11000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
}

.image-lightbox.is-open{
  display:flex;
}

.image-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.94);
  backdrop-filter:blur(5px);
}

.image-lightbox-dialog{
  position:relative;
  z-index:1;
  width:min(1200px,100%);
  height:min(90vh,900px);
  display:flex;
  align-items:center;
  justify-content:center;
  outline:none;
}

.image-lightbox-figure{
  width:100%;
  height:100%;
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.image-lightbox-figure img{
  width:auto;
  max-width:calc(100% - 120px);
  height:auto;
  max-height:calc(100% - 48px);
  object-fit:contain;
  border:1px solid #3a4145;
  background:#090c0e;
  box-shadow:0 24px 70px rgba(0,0,0,.65);
}

.image-lightbox-figure figcaption{
  min-height:28px;
  padding-top:10px;
  color:#c7cdcf;
  font-size:12px;
  font-weight:700;
}

.image-lightbox-close{
  position:absolute;
  top:0;
  right:0;
  z-index:3;
  width:44px;
  height:44px;
  border:1px solid #4a5357;
  border-radius:50%;
  background:#0a0e10;
  color:#fff;
  font-size:29px;
  line-height:1;
  cursor:pointer;
}

.image-lightbox-close:hover{
  border-color:var(--yellow);
  color:var(--yellow);
}

.image-lightbox-nav{
  position:absolute;
  top:50%;
  z-index:3;
  width:50px;
  height:64px;
  transform:translateY(-50%);
  border:1px solid #4a5357;
  border-radius:5px;
  background:rgba(10,14,16,.88);
  color:#fff;
  font-size:42px;
  line-height:1;
  cursor:pointer;
}

.image-lightbox-nav:hover{
  border-color:var(--yellow);
  color:var(--yellow);
}

.image-lightbox-prev{
  left:0;
}

.image-lightbox-next{
  right:0;
}

@media(max-width:620px){
  .image-lightbox{
    padding:8px;
  }

  .image-lightbox-dialog{
    height:94vh;
  }

  .image-lightbox-figure img{
    max-width:100%;
    max-height:calc(100% - 58px);
  }

  .image-lightbox-nav{
    width:42px;
    height:54px;
    top:auto;
    bottom:calc(env(safe-area-inset-bottom) + 72px);
    transform:none;
    font-size:34px;
  }

  .image-lightbox-prev{
    left:calc(50% - 52px);
  }

  .image-lightbox-next{
    right:calc(50% - 52px);
  }

  .image-lightbox-close{
    top:4px;
    right:4px;
  }

  .image-lightbox-figure figcaption{
    padding-bottom:62px;
  }
}


/* Szolgáltatások márkasor */
.services-brands{
    display:block;
    margin-bottom:10px;
    text-align:center;
    font-size:1.2rem;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--text);
}

.services-brands .dot{
    color:var(--yellow);
    margin:0 .28em;
    font-weight:700;
}


/* Mobil lightbox vezérlők – fixen a böngészősáv fölött */
@media(max-width:620px){
  .image-lightbox-nav{
    position:fixed !important;
    top:auto !important;
    bottom:max(110px, calc(env(safe-area-inset-bottom) + 110px)) !important;
    z-index:12050 !important;
    width:54px !important;
    height:54px !important;
    transform:none !important;
    display:grid !important;
    place-items:center !important;
    padding:0 !important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }

  .image-lightbox-prev{
    left:calc(50% - 66px) !important;
  }

  .image-lightbox-next{
    right:calc(50% - 66px) !important;
  }

  .image-lightbox-figure figcaption{
    padding-bottom:140px !important;
  }
}


/* Mobil lightbox vezérlők – oldalt, függőlegesen középen */
@media(max-width:620px){
  .image-lightbox-nav{
    position:fixed !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    z-index:12050 !important;
    width:48px !important;
    height:64px !important;
    display:grid !important;
    place-items:center !important;
    padding:0 !important;
    background:rgba(10,14,16,.92) !important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }

  .image-lightbox-prev{
    left:10px !important;
    right:auto !important;
  }

  .image-lightbox-next{
    right:10px !important;
    left:auto !important;
  }

  .image-lightbox-figure figcaption{
    padding-bottom:12px !important;
  }
}


/* Felülírás a "Nem tudod pontosan / mi a hiba?" címhez */
.quick-message-intro h2{
    font-size:31px !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    font-weight:400 !important;
}

.quick-heading-small{
    color:var(--text) !important;
    font-size:.68em !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
}

.quick-heading-large{
    color:var(--yellow) !important;
    font-size:1em !important;
    font-weight:400 !important;
}

@media(max-width:980px){
    .quick-message-intro h2{
        font-size:31px !important;
        font-weight:400 !important;
    }
}

@media(max-width:620px){
    .quick-message-intro h2{
        font-size:31px !important;
        font-weight:400 !important;
    }
}


/* --- Egységes sticky bezárás a felugró ablakokhoz --- */
.reference-modal-footer,
.privacy-modal-footer{
    position:sticky;
    bottom:0;
    background:#0c1012;
    padding:16px 18px calc(16px + env(safe-area-inset-bottom));
    border-top:1px solid #2c3336;
    box-shadow:0 -10px 24px rgba(0,0,0,.35);
    z-index:5;
}

.reference-modal-footer .btn,
.privacy-modal-footer .btn{
    display:flex;
    width:100%;
    border-radius:10px;
}

@media(max-width:620px){
    .reference-modal{padding:10px;}
    .privacy-modal{padding:10px;}

    .reference-modal-dialog,
    .privacy-modal-dialog{
        max-height:calc(100dvh - env(safe-area-inset-bottom) - 20px);
    }

    .reference-modal-content,
    .privacy-modal-content{
        padding-bottom:24px;
    }

    .reference-modal-footer,
    .privacy-modal-footer{
        padding:14px 16px calc(18px + env(safe-area-inset-bottom));
    }
}


/* === Mobil modalok: Safari alsó sáv fölé igazítás === */
@media (max-width:620px){

  .reference-modal,
  .privacy-modal{
    padding:
      10px
      10px
      calc(env(safe-area-inset-bottom) + 14px) !important;
  }

  .reference-modal-dialog,
  .privacy-modal-dialog{
    max-height:calc(100dvh - env(safe-area-inset-bottom) - 44px) !important;
    height:auto !important;
  }

  .reference-modal-footer,
  .privacy-modal-footer{
    padding:
      14px
      16px
      calc(env(safe-area-inset-bottom) + 16px) !important;
  }
}



/* ===== Facebook gomb a felső menüben ===== */
.menu .facebook-btn{
    background:#1877F2;
    border:1px solid #1877F2;
    color:#fff;
    padding:0 18px;
    min-height:40px;
    border-radius:4px;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    transition:.2s;
}

.menu .facebook-btn:hover{
    background:#2d88ff;
    border-color:#2d88ff;
    color:#fff;
}

@media(max-width:980px){
    .menu .facebook-btn{
        width:100%;
        justify-content:center;
        margin-top:6px;
    }
}
