/* Doorworks Round 53 exact-order shared bundle. */

/* ===== dw-cookie.css ===== */
/* DoorWorks shared cookie UI — extracted in refactor round 39 */
.dw-cookie-banner,
.dw-cookie-settings {
  font-family: inherit;
  color: #1c1c1c;
}.dw-cookie-banner {
  position: fixed;
  z-index: 10000;
  left: 20px;
  right: 20px;
  bottom: 20px;
  max-width: 920px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 16px;
  box-shadow: 0 18px 55px rgba(0,0,0,.24);
  padding: 20px 22px;
}.dw-cookie-banner[hidden],
.dw-cookie-modal[hidden],
.dw-cookie-settings[hidden] { display: none !important; }.dw-cookie-banner__inner {
  display: flex;
  align-items: center;
  gap: 22px;
}.dw-cookie-banner__copy { flex: 1 1 auto; min-width: 0; }.dw-cookie-banner__copy strong {
  display: block;
  font-size: 1.05rem;
  line-height: 1.3;
  margin-bottom: 6px;
}.dw-cookie-banner__copy p {
  margin: 0;
  font-size: .92rem;
  line-height: 1.55;
  color: #555;
}.dw-cookie-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 9px;
  flex: 0 0 auto;
}.dw-cookie-btn {
  appearance: none;
  border: 1px solid #242424;
  border-radius: 9px;
  padding: 10px 14px;
  min-height: 42px;
  font: inherit;
  font-size: .88rem;
  font-weight: 700;
  line-height: 1.1;
  cursor: pointer;
  background: #fff;
  color: #242424;
}.dw-cookie-btn:hover,
.dw-cookie-btn:focus-visible { background: #f2f2f2; }.dw-cookie-btn--primary {
  background: #242424;
  color: #fff;
}.dw-cookie-btn--primary:hover,
.dw-cookie-btn--primary:focus-visible { background: #000; }.dw-cookie-settings {
  position: fixed;
  z-index: 9998;
  left: 16px;
  bottom: 16px;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(16,24,32,.18);
  border-radius: 50%;
  background: #fff;
  color: #101820;
  box-shadow: 0 7px 22px rgba(16,24,32,.16);
  padding: 0;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}.dw-cookie-settings svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}.dw-cookie-settings:hover,
.dw-cookie-settings:focus-visible {
  background: #f4f6f7;
  box-shadow: 0 9px 26px rgba(16,24,32,.2);
  transform: translateY(-1px);
}.dw-cookie-settings:active { transform: scale(.95); }.dw-cookie-modal {
  position: fixed;
  z-index: 10001;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(0,0,0,.55);
}.dw-cookie-dialog {
  width: min(560px, 100%);
  max-height: calc(100vh - 36px);
  overflow: auto;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 22px 70px rgba(0,0,0,.32);
  padding: 24px;
}.dw-cookie-dialog h2 { margin: 0 0 8px; font-size: 1.45rem; }.dw-cookie-dialog > p { margin: 0 0 20px; color: #555; line-height: 1.55; }.dw-cookie-option {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 0;
  border-top: 1px solid #e5e5e5;
}.dw-cookie-option:last-of-type { border-bottom: 1px solid #e5e5e5; }.dw-cookie-option strong { display: block; margin-bottom: 4px; }.dw-cookie-option small { display: block; color: #666; line-height: 1.45; }.dw-cookie-option input { width: 21px; height: 21px; margin-top: 2px; accent-color: #242424; }.dw-cookie-dialog__actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 9px; margin-top: 20px; }body.dw-cookie-modal-open { overflow: hidden; }@media (max-width: 720px) {.dw-cookie-banner { left: 10px; right: 10px; bottom: 10px; padding: 17px; border-radius: 13px; }.dw-cookie-banner__inner { display: block; }.dw-cookie-actions { justify-content: stretch; margin-top: 15px; }.dw-cookie-actions .dw-cookie-btn { flex: 1 1 135px; }.dw-cookie-dialog { padding: 20px; }.dw-cookie-settings { left: 12px; bottom: 12px; width: 36px; height: 36px; }.dw-cookie-settings svg { width: 18px; height: 18px; }}


/* ===== dw-ui-foundation.css ===== */
/* DoorWorks shared UI foundation — extracted in refactor round 40.
   Loaded before dw-base-seo.css or dw-foundation.css. */

/* SOURCE: modern-polish.css */
/* DoorWorks final UI polish — visual-only refinements */
:root{
  --dw-focus:rgba(183,255,54,.34);
  --dw-ease:cubic-bezier(.2,.7,.2,1);
}

/* Accessible and consistent interaction states */
a,button,input,textarea,select{transition:border-color .2s var(--dw-ease),background-color .2s var(--dw-ease),color .2s var(--dw-ease),box-shadow .2s var(--dw-ease),transform .2s var(--dw-ease)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:3px solid var(--dw-focus)!important;
  outline-offset:3px;
}

/* Buttons share the same geometry across the site */
.button,.submit-button,body.subpage-theme .btn{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  line-height:1.15;
  text-decoration:none;
}
.button:hover,.submit-button:hover,body.subpage-theme .btn:hover{transform:translateY(-2px)}
.button:active,.submit-button:active,body.subpage-theme .btn:active{transform:translateY(0)}
body.subpage-theme .btn-dark{
  background:#111925;
  border-color:#111925;
  color:#fff;
  border-radius:11px;
  font-weight:800;
  padding:13px 18px;
}
body.subpage-theme .btn-dark:hover,
body.subpage-theme .btn-dark:focus{
  background:#1b2736;
  border-color:#1b2736;
  color:var(--dw-green);
}

/* More consistent navigation feedback */
.main-nav a,.nav-group-toggle,body.subpage-theme .nav-link{white-space:nowrap}
body.subpage-theme .navbar-brand{isolation:isolate}
body.subpage-theme .dropdown-item:focus-visible{outline-offset:-2px}

/* Typography and spacing safeguards */
.hero h1,body.subpage-theme .hero h1{
  overflow-wrap:anywhere;
  text-wrap:balance;
}
.section-heading h2,.coverage-copy h2,.contact-copy h2,
body.subpage-theme .section h2,body.subpage-theme .section h3{
  text-wrap:balance;
}
body.subpage-theme .section-title{max-width:760px;margin:0 auto 44px;text-align:center}
body.subpage-theme .section-title p{margin-left:auto;margin-right:auto}
body.subpage-theme .section p:last-child{margin-bottom:0}

/* Unified cards and hover behavior */
.service,.insight-card,.contact-form,
body.subpage-theme .cardx,body.subpage-theme .card,
body.subpage-theme .blog-card{
  backface-visibility:hidden;
  transform:translateZ(0);
}
body.subpage-theme .cardx:focus-within,
body.subpage-theme .card:focus-within,
body.subpage-theme .blog-card:focus-within{
  border-color:rgba(183,255,54,.7);
  box-shadow:0 0 0 4px rgba(183,255,54,.11);
}
body.subpage-theme .blog-card{
  border:1px solid rgba(17,25,37,.1);
  box-shadow:0 14px 35px rgba(17,25,37,.09);
}
body.subpage-theme .blog-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px rgba(17,25,37,.14);
}

/* Forms */
.field input,.field textarea,
body.subpage-theme .form-control{font-size:16px}
.field textarea,body.subpage-theme textarea.form-control{resize:vertical;min-height:132px}
.submit-button:disabled,body.subpage-theme .btn:disabled{opacity:.58;cursor:not-allowed;transform:none}

/* Images and long content stay inside their containers */
img{height:auto}
body.subpage-theme .section table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.subpage-theme .section a:not(.btn){text-underline-offset:3px}

/* Refined mobile rhythm */
@media(max-width:991.98px){
  body.subpage-theme .navbar-collapse{padding:12px 0 18px}
  body.subpage-theme .navbar-nav{align-items:stretch;gap:2px}
  body.subpage-theme .navbar .btn-warning{width:100%;margin:10px 0 0}
  body.subpage-theme .dropdown-menu{box-shadow:none;margin:4px 0 8px}
  body.subpage-theme #kapcsolat>.container{grid-template-columns:1fr;gap:28px}
  body.subpage-theme #kapcsolat h2,
  body.subpage-theme #kapcsolat>.container>p,
  body.subpage-theme #kapcsolat form{grid-column:1;grid-row:auto}
}
@media(max-width:640px){
  body.subpage-theme .hero{padding:72px 0 58px}
  body.subpage-theme .hero h1{font-size:clamp(32px,10vw,42px);line-height:1.08}
  body.subpage-theme .hero p{font-size:15px}
  body.subpage-theme .section{padding:52px 0}
  body.subpage-theme .section>.container{padding:26px 20px;border-radius:16px}
  body.subpage-theme .section h2{margin-top:42px}
  body.subpage-theme .section-title{margin-bottom:30px}
  body.subpage-theme .section.cta{padding-bottom:52px}
  body.subpage-theme .section.cta>.container{padding:34px 24px;text-align:left}
  body.subpage-theme .section.cta>.container::after{font-size:52px;right:18px}
  body.subpage-theme #kapcsolat{padding:62px 0}
  body.subpage-theme #kapcsolat form{padding:24px 18px;border-radius:16px}
  body.subpage-theme footer{padding-top:48px}
  body.subpage-theme .blog-card{padding:22px}
}

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


/* ===== dw-brand-pages.css ===== */
/* Canonical shared brand-page styles; extracted in refactor round 41. */
/* SOURCE: brand-pages.css */

/* Márkaoldalak – a meglévő arculathoz igazítva */
.brand-figure{max-width:920px;margin:0 auto 2.5rem;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.10);}
.brand-figure img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#f2f2f2;}
.brand-figure figcaption{padding:.75rem 1rem;color:#666;font-size:.9rem;text-align:center;}
.brand-article{max-width:920px;margin:0 auto;}
.brand-article p{line-height:1.75;}
.brand-list{padding-left:1.25rem;margin-bottom:1.25rem;}
.brand-list li{margin:.4rem 0;line-height:1.6;}
.nav-dropdown-brands{min-width:min(760px,92vw);}
.nav-brands-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:991px){.nav-brands-grid{grid-template-columns:1fr;}.nav-dropdown-brands{min-width:0;}.brand-figure{border-radius:12px;}}


/* ===== dw-foundation.css ===== */
/* SOURCE: services-menu-unified.css */
/* Main navigation: four core services are top-level items. */

@media (min-width:981px){
  
  
  html body .site-header .nav-dropdown{
    position:absolute;top:64px;left:50%;right:auto;
    padding:18px;margin:0;overflow-y:auto;overflow-x:hidden;
    background:#fff;border:1px solid #dce2e7;border-radius:16px;
    box-shadow:0 24px 60px rgba(17,28,47,.16);opacity:0!important;visibility:hidden!important;
    display:block;transform:translate(-50%,8px)!important;transition:opacity .25s,visibility .25s,transform .25s;z-index:1300;}
  
  
  
  html body .site-header .nav-dropdown a{display:block;padding:10px 12px;border-radius:9px;color:#10151d;text-decoration:none;font-size:13px;line-height:1.25;white-space:normal;}
  
}

@media (max-width:980px){
  html body .site-header .main-nav{max-height:calc(100dvh - 100px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
  html body .site-header .nav-dropdown{position:static;left:auto;right:auto;width:100%;max-height:none;padding:10px;margin-top:4px;overflow:visible;transform:none!important;box-shadow:none;}
  
  
  
  
}

/* Zárjavítás dropdown: wider desktop panel with single-line item labels. */
/* Mobil almenük: megbízható érintéses nyitás */


/* ===== dw-visual-fixes.css ===== */
/* DoorWorks shared visual fixes — canonicalized in refactor round 43 */

/* SOURCE: doorworks-visual-fix-20260714-v2.css */
/* DoorWorks targeted visual fixes — 2026-07-14 v2 */

/* Unique Blog hero kicker: avoids all legacy eyebrow/status-dot collisions. */
body.blog-page .dw-blog-kicker {
  display: inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:auto;
  max-width:100%;
  margin:0 0 4px 0;
  padding:0;
  position:relative;
  font-size:11px;
  line-height:1.25;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:#dce5e6;
  text-align:left;
  white-space:normal;
}
body.blog-page .dw-blog-kicker::before {
  content:"";
  display: block;
  flex:0 0 9px;
  width:9px;
  height:9px;
  margin:0;
  padding:0;
  border:0;
  border-radius:50%;
  background:#c8ff3d;
  box-shadow:0 0 0 6px rgba(200,255,61,.12);
  position:static;
  transform: none;
}
body.blog-page .dw-blog-kicker::after { content:none; display: none; }

/* No graphic logo in any footer; textual brand details remain. */
footer .footer-logo-box,
footer .footer-logo-text,
footer .brand-mark,
footer img[class*="logo"],
footer .footer-logo {
  display: none !important;
}
footer .brand-footer { gap:0; }

/* Homepage/contact reveal content stays visible on mobile even without animation helper. */
@media (max-width: 980px) {
  body:not(.blog-page) .reveal,
  body.contact-page .reveal {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }
}


/* ===== dw-nav-common.css ===== */
/* DoorWorks shared navigation components — canonicalized in round 42. */

.site-header .nav-group{position:relative;min-width:0;}
.site-header .nav-group-toggle{white-space:nowrap;}
.site-header .nav-group.is-active>.nav-group-toggle{color:#0b6b63;font-weight:800;}
.site-header .nav-dropdown{box-sizing:border-box;}
.site-header .nav-dropdown-heading{margin:0 0 10px;}
.site-header .nav-dropdown-heading a{font-weight:800;}
.site-header .nav-zarcsere-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.site-header .nav-zarcsere-column{display:flex;flex-direction:column;gap:2px;min-width:0;}
.site-header .nav-zarnyitas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 10px;}
.site-header .nav-submenu-label{display:block;padding:0 10px 8px;color:#65707e;font-size:9px;font-weight:800;letter-spacing:.13em;line-height:1.25;text-transform:uppercase;}

@media (min-width:981px){
  .site-header .main-nav{gap:2px;}
  .site-header .main-nav>a, .site-header .nav-group-toggle{padding-left:9px;padding-right:9px;font-size:13px;}
  .site-header .nav-dropdown-zarcsere{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 104px);}
  .site-header .nav-dropdown-zarnyitas{width:min(650px,calc(100vw - 32px));max-height:calc(100vh - 104px);}
  .site-header .nav-group:hover>.nav-dropdown, .site-header .nav-group.is-open>.nav-dropdown{opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important;}
  .site-header .nav-dropdown a:hover{background:#f4f6f7;}
}
@media (max-width:980px){
  .site-header .nav-zarcsere-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .site-header .nav-zarnyitas-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px;}
  .site-header .nav-zarcsere-column>a, .site-header .nav-zarnyitas-grid>a{padding:8px 7px;font-size:12px;}
  .site-header .nav-submenu-label{font-size:8px;padding-left:7px;padding-right:7px;}
}
@media (min-width:981px){
  .site-header .nav-dropdown-zarjavitas{width:min(390px,calc(100vw - 32px));max-height:calc(100vh - 104px);}
  .site-header .nav-dropdown-zarjavitas .nav-zarnyitas-grid{grid-template-columns:1fr;gap:4px;}
  .site-header .nav-dropdown-zarjavitas a{white-space:nowrap;}
}
@media (max-width:980px){
  .site-header .nav-group > .nav-dropdown{display:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .site-header .nav-group.is-open > .nav-dropdown{display:block!important;}
  .site-header .nav-group-toggle{touch-action:manipulation;cursor:pointer;position:relative;z-index:2;}
}
