/* Small visual refinements; no external assets or dependencies. */
.hero h1 span{background:linear-gradient(110deg,#73c0ff,#a8e9f5);background-clip:text;-webkit-background-clip:text;color:transparent}
.sectionhead .kicker{display:inline-flex;align-items:center;gap:12px}
.sectionhead .kicker:before,.sectionhead .kicker:after{content:"";width:24px;height:1px;background:currentColor;opacity:.4}
.service{position:relative;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(145deg,#1688f806,transparent 65%),var(--surface)}
.service:before{content:"";position:absolute;top:0;left:25px;right:25px;height:2px;background:linear-gradient(90deg,transparent,#1688f8,transparent);opacity:.35;transition:opacity .2s}
.service:hover:before,.service:focus-within:before{opacity:1}.service .learn{margin-top:auto;align-self:flex-start}.learn span{display:inline-block;transition:transform .2s}.learn:hover span{transform:translateX(4px)}
.service:focus-within{border-color:#1688f877;box-shadow:0 16px 34px #1688f818}
.portfolio-grid{counter-reset:work}.work-photo{counter-increment:work;transition:border-color .2s,box-shadow .2s}.work-photo:hover{border-color:#1688f866;box-shadow:0 12px 30px #061a2b14}.work-photo figcaption{display:flex;gap:12px;align-items:baseline}.work-photo figcaption:before{content:counter(work,decimal-leading-zero);color:var(--blue);font-size:.72rem;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.navlinks a{position:relative}.navlinks a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:var(--blue);transform:scaleX(0);transition:transform .2s}.navlinks a:hover:after,.navlinks a:focus-visible:after{transform:scaleX(1)}
a:focus-visible,button:focus-visible{outline:3px solid #36a5ef;outline-offset:4px}
.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:10px 16px;background:#fff;color:#10243a;border-radius:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.photo-dialog{padding-top:56px}.photo-dialog img{max-height:68vh}.photo-close{z-index:1}.photo-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:12px}.photo-step{border:1px solid #8fcfff55;border-radius:12px;background:#173650;color:#f4faff;width:48px;height:42px;font:inherit;font-size:22px;cursor:pointer}.photo-step:hover{background:#245578}.photo-count{min-width:64px;text-align:center;font-size:.85rem;color:#bdd4e7;font-variant-numeric:tabular-nums}.photo-dialog p{margin:12px 8px 0}
@media(max-width:510px){.photo-dialog{width:94vw;padding:52px 10px 12px}.photo-dialog img{max-height:60vh}.photo-controls{gap:25px}.brand{min-width:0}.brand small{letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.service:before,.learn span,.work-photo,.navlinks a:after{transition:none}}

/* Graphite / silver / signal amber: a technical palette with distinct sections. */
:root{--bg:light-dark(#f3f3ef,#15191e);--surface:light-dark(#fff,#20262d);--text:light-dark(#20262d,#f1f3f4);--muted:light-dark(#59616a,#bac0c7);--line:light-dark(#dadddf,#363e47);--blue:light-dark(#126bb4,#64baff);--signal:#f3b544}
.topline{background:#11161b;color:#bcc4cc}.nav{border-bottom-color:var(--line)}
.logo{background:linear-gradient(140deg,#f9d885,#efa932);color:#20262d;box-shadow:0 6px 22px #e6a73322;border-radius:11px}
.navbtn,.hero-actions .btn:not(.secondary),.cta .btn,.mobilebar{background:var(--signal);color:#20262d;box-shadow:0 8px 24px #d9942224}
.hero{background:radial-gradient(ellipse at 95% 15%,#20446488,transparent 48%),radial-gradient(ellipse at 0 100%,#a36c1b20,transparent 45%),#151b22}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#c2d3e606 1px,transparent 1px),linear-gradient(90deg,#c2d3e606 1px,transparent 1px);background-size:44px 44px;pointer-events:none}
.hero:after{border-color:#e8b35225;box-shadow:0 0 0 55px #e8b35208,0 0 0 110px #e8b35205}
.hero h1 span{background:none;color:#f5c76c;-webkit-text-fill-color:currentColor}
.hero .eyebrow{border-color:#d6b36b40;background:#dfae3f0a;color:#ecd4a3}.hero .dot{background:#f5c76c;box-shadow:0 0 12px #f5c76c66}
.hero p{color:#c4ccd5}.hero .callnote{border-color:#ffffff16;border-left:3px solid #f3b544;background:#ffffff04}.hero .callnote span{color:#bfc7d0}
/* Softer slate surfaces between the hero and gallery. */
#szolgaltatasok{color-scheme:dark;--surface:#303a43;--text:#f1f3f4;--muted:#c0c9d1;--line:#46515c;--blue:#78c5ff;background:#252d35;color:var(--text)}
.service{--service-accent:#78c5ff;border-radius:16px;background:var(--surface);box-shadow:0 5px 20px #1a293405}
.service:nth-child(2){--service-accent:#78d4bf}.service:nth-child(3){--service-accent:#f5c76c}
.service:before{left:0;right:0;height:4px;background:var(--service-accent);opacity:1}
.service .serviceicon{color:var(--service-accent);background:#ffffff08;border:1px solid #ffffff16;border-radius:13px}
.service .learn{color:var(--service-accent)}.service:hover,.service:focus-within{border-color:var(--service-accent);box-shadow:0 14px 35px #1a293414}
/* Real installation photos sit on a neutral, dark gallery wall. */
#munkaink{color-scheme:dark;--surface:#232930;--text:#f1f3f4;--muted:#bcc4cc;--line:#3b424b;--blue:#f3c36b;background:#191e24;color:var(--text);border-color:#343b43}
#munkaink .work-photo{border-radius:14px}#munkaink .work-photo:hover{border-color:#d3ad60;box-shadow:0 12px 30px #0003}
#miert{background:var(--bg)}.panel-art{background:linear-gradient(145deg,#303942,#171e25);border:1px solid #67748044;border-radius:18px}
.panel-art:after{border-color:#e8b35266;box-shadow:0 0 0 32px #e8b3520a,0 0 0 65px #e8b35208}.panel-art .tag{color:#edc67e}
.checkmark{background:light-dark(#e2eee9,#243b35);color:light-dark(#1c7260,#86d4bd)}
#terulet{background:light-dark(#e8eceb,#20282b);border-color:var(--line)}#terulet .chip{border-radius:10px;background:var(--surface)}
.cta{background:linear-gradient(115deg,#272b2e,#383329);border-top:3px solid #dba944}.cta h2{color:#fff4db}.cta p{color:#d3d0c7}
.footer{background:light-dark(#eceeeb,#11161b)}
.photo-dialog{background:#191e24;border-color:#444e59}.photo-step{background:#2b333c;border-color:#7a725c;color:#f5cf86}.photo-step:hover{background:#414344}
@media(forced-colors:active){.hero h1 span{color:CanvasText}.hero-actions .btn,.navbtn,.mobilebar{border:1px solid ButtonText}}

.mobile-guide{display:none}@media(min-width:801px) and (max-width:1100px){.navinner{flex-wrap:wrap;padding-block:14px;gap:14px}.navlinks{order:3;width:100%;justify-content:center}}@media(max-width:800px){.mobile-guide{display:block;padding:10px 15px;text-align:center;font-size:.8rem;color:var(--blue);border-top:1px solid var(--line)}}

/* Readable type hierarchy: direct contact takes priority over supporting copy. */
.hero h1{font-size:clamp(2.25rem,4.4vw,3.7rem);line-height:1.12;letter-spacing:-.045em}
.section h2{font-size:clamp(1.8rem,3.1vw,2.5rem);line-height:1.2}
.hero-contact{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:24px 0;padding-left:18px;border-left:3px solid var(--signal)}
.contact-name,.cta .contact-name{font-size:clamp(1.5rem,2.5vw,1.9rem);font-weight:800;line-height:1.3;color:#f5f7fa}
.contact-phone{font-size:clamp(1.65rem,3vw,2.2rem);font-weight:850;line-height:1.4;color:#f5c76c;letter-spacing:.015em;white-space:nowrap}
.contact-phone:hover{text-decoration:underline;text-underline-offset:5px}.contact-phone span{font-size:.7em}
.hero .callnote strong{font-size:1rem}.hero .callnote span{font-size:.95rem;line-height:1.65}
.service p,.check span,.chip,.learn,.work-photo figcaption{font-size:1rem;line-height:1.65}
.service h3{font-size:1.3rem;line-height:1.35}.kicker{font-size:.875rem;letter-spacing:.12em}
.topline{font-size:.95rem}.navlinks{font-size:1rem;gap:20px}.mobile-guide{font-size:.95rem}
.story-stage .story-trigger{font-size:.8125rem}.story-stage .story-copy strong{font-size:1.125rem}.story-stage .story-copy span{font-size:.9375rem;line-height:1.7}.story-stage .scene-hint{font-size:.75rem}#storyPause{font-size:.875rem;padding-block:10px}
.cta h2{font-size:clamp(1.7rem,3vw,2.3rem)}.cta .contact-name{margin:16px 0 10px;color:#f5c76c}.cta .contact-hours{font-size:1rem;line-height:1.7;max-width:600px}
.cta .btn{flex-direction:column;gap:3px;padding:20px 24px}.call-label{font-size:.9375rem;font-weight:650}.call-number{font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:850;letter-spacing:.01em}
.footer{font-size:.9375rem}.footer-contact{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;flex-basis:100%;padding-top:16px;border-top:1px solid var(--line)}.footer-contact strong,.footer-contact a{font-size:1.25rem;color:var(--text)}.footer-contact a{font-weight:800;text-decoration:underline;text-underline-offset:4px}
@media(max-width:800px){.mobilebar{flex-direction:column;align-items:center;gap:1px;padding:9px 12px;line-height:1.4}.mobilebar span{font-size:.8125rem;font-weight:600}.mobilebar strong{font-size:1.3rem}.footer{padding-bottom:110px}.ctainner{align-items:stretch}.hero-actions .btn{font-size:1rem}.story-stage .story-trigger{padding:10px 4px;overflow-wrap:normal}.hero-grid{padding-top:42px}.brand .logo{flex-shrink:0}}
@media(max-width:380px){.story-stage .story-nav{grid-template-columns:1fr}.story-stage .story-trigger{font-size:.9375rem}.cta .btn{padding-inline:12px}}

/* Reference categories also scope the lightbox's previous/next navigation. */
.reference-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:36px}.reference-nav a{padding:12px 20px;border:1px solid #65717e;border-radius:12px;background:#252e37;font-size:1rem;font-weight:750}.reference-nav a:hover{border-color:#f5c76c;color:#f5c76c}.reference-group{scroll-margin-top:24px;padding-top:26px;margin-top:32px;border-top:1px solid #3b424b}.reference-heading{display:flex;align-items:center;gap:14px;margin-bottom:14px}.reference-heading>span{color:#f5c76c;font-size:.875rem;letter-spacing:.08em}.reference-heading h3{font-size:clamp(1.35rem,2.5vw,1.7rem);line-height:1.3;margin:0}.reference-empty{padding:20px;border:1px dashed #56616d;border-radius:12px;color:#bcc4cc;background:#ffffff03;font-size:1rem}.reference-description{font-size:1rem;color:#bcc4cc;margin-bottom:22px}.reference-group .portfolio-grid{counter-reset:work}@media(max-width:510px){.reference-nav{gap:8px}.reference-nav a{flex:1 1 140px;text-align:center;padding:12px}.reference-group{margin-top:26px}}

/* Only the selected reference branch is shown beneath the three tabs. */
.reference-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:800px;margin:0 auto 28px;padding:8px;background:#11171e;border:1px solid #485563;border-radius:18px}
.reference-nav a{text-align:center;padding:18px 10px;font-size:1.1rem;border-radius:11px;transition:background .15s,border-color .15s}
.reference-nav a[aria-selected=true]{background:#f5c76c;border-color:#f5c76c;color:#20262d;box-shadow:0 4px 18px #f5c76c20}
.reference-nav a[aria-selected=false]{color:#d3dde6;background:#252e37}
.reference-nav a[aria-selected=false]:hover{background:#344351;border-color:#78c5ff}
.reference-group[role=tabpanel]{border:0;margin:0;padding:0}.reference-group[hidden]{display:none}.reference-description{text-align:center}.reference-empty{border:0;background:transparent;text-align:center;padding:28px 12px;color:#bcc4cc}
@media(max-width:510px){.reference-nav{gap:6px;padding:6px}.reference-nav a{font-size:.875rem;padding:16px 4px;display:flex;align-items:center;justify-content:center;min-width:0}.reference-nav a:first-child{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.reference-nav a{transition:none}}

.device-note{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;width:100%;padding:20px 15px 0;color:#a7afb7;font-size:.875rem;text-align:center;line-height:1.5}.device-note svg{width:64px;height:32px;flex-shrink:0;color:#cfa85d}

.brand-symbol{display:block;width:52px;height:52px;flex-shrink:0}.brand{letter-spacing:-.025em}@media(max-width:510px){.brand-symbol{width:40px;height:40px}.brand{gap:8px}}@media(max-width:360px){.brand-symbol{width:34px;height:34px}.brand{font-size:.85rem}}

.brand-art{margin:0;overflow:hidden;border:1px solid #d7ac5040;border-radius:20px;background:#03101e;box-shadow:0 16px 45px #0002}.brand-art img{display:block;width:100%;height:auto}#miert .twocol{grid-template-columns:1.1fr 1fr;gap:38px}@media(max-width:800px){#miert .twocol{grid-template-columns:1fr;gap:28px}.brand-art{width:100%;max-width:600px;margin-inline:auto}}
