.seo-hero {
    position: relative;
    padding: 150px 0 70px;
    background: var(--bg);
    overflow: hidden;
}

.seo-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 1px),
        linear-gradient(color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 1px);
    background-size: 54px 54px;
    opacity: .45;
    pointer-events: none;
}

.seo-hero-inner {
    position: relative;
    max-width: 980px;
}

.seo-kicker {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: 1rem;
    color: var(--text-muted);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
}

.seo-hero h1 {
    margin: 0;
    font-size: clamp(2.7rem, 8vw, 6.5rem);
    line-height: .92;
    letter-spacing: 0;
}

.seo-hero p {
    max-width: 760px;
    margin-top: 1.4rem;
    color: var(--text-muted);
    font-size: clamp(1rem, 2vw, 1.18rem);
    line-height: 1.75;
}

.seo-grid-section {
    padding: 80px 0 100px;
}

.seo-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.25rem;
}

.seo-card {
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--card);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.seo-card-body {
    padding: 1.35rem;
}

.seo-card-media {
    aspect-ratio: 16 / 10;
    background: var(--card-2);
    overflow: hidden;
}

.seo-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.seo-card-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    margin-bottom: 1rem;
    border-radius: var(--radius);
    background: var(--card-2);
    font-size: 1.45rem;
}

.seo-card h2,
.seo-card h3 {
    margin: 0 0 .7rem;
    font-size: 1.25rem;
}

.seo-card p,
.seo-card li {
    color: var(--text-muted);
    line-height: 1.68;
}

.seo-card ul {
    margin: 1rem 0 0;
    padding-left: 1.1rem;
}

.work-long {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border);
}

.breadcrumb {
    position: relative;
    z-index: 1;
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    margin-top: 1.5rem;
    color: var(--text-muted);
    font-size: .9rem;
}

.breadcrumb a {
    color: var(--text);
    text-decoration: none;
}

.service-cta {
    padding: 0 0 95px;
}

.service-cta-box {
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: clamp(1.5rem, 4vw, 2.5rem);
    background: var(--card);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
}

@media (max-width: 720px) {
    .seo-hero {
        padding-top: 120px;
    }

    .service-cta-box {
        align-items: flex-start;
        flex-direction: column;
    }
}


.seo-card{
    transition:transform .4s var(--ease-bounce,cubic-bezier(.34,1.56,.64,1)),
               box-shadow .35s ease,
               border-color .35s ease,
               background .35s ease;
    cursor:default;
}
.seo-card:hover{
    transform:translateY(-8px) scale(1.015);
    border-color:var(--text);
    box-shadow:0 22px 50px rgba(0,0,0,.18);
    background:var(--card);
}
[data-theme="dark"] .seo-card:hover{
    box-shadow:0 22px 50px rgba(0,0,0,.6);
}
.seo-card-icon{
    transition:transform .4s cubic-bezier(.34,1.56,.64,1),
               background .3s ease,
               color .3s ease;
}
.seo-card:hover .seo-card-icon{
    transform:rotate(-8deg) scale(1.12);
    background:var(--btn-bg);
    color:var(--btn-fg);
}
.seo-card-media{overflow:hidden}
.seo-card-media img{transition:transform .55s ease}
.seo-card:hover .seo-card-media img{transform:scale(1.06)}

.seo-card h2,.seo-card h3{transition:color .3s ease}
.seo-card:hover h2,.seo-card:hover h3{color:var(--text)}

.breadcrumb a{position:relative;transition:color .25s ease}
.breadcrumb a::after{
    content:'';position:absolute;left:0;bottom:-2px;width:100%;height:1.5px;
    background:var(--text);transform:scaleX(0);transform-origin:right;
    transition:transform .3s ease;
}
.breadcrumb a:hover{color:var(--text)}
.breadcrumb a:hover::after{transform:scaleX(1);transform-origin:left}

.service-cta-box{
    transition:transform .4s var(--ease-bounce,cubic-bezier(.34,1.56,.64,1)),
               box-shadow .35s ease,
               border-color .35s ease;
}
.service-cta-box:hover{
    transform:translateY(-4px);
    border-color:var(--text);
    box-shadow:0 18px 44px rgba(0,0,0,.16);
}

@media (prefers-reduced-motion: reduce){
    .seo-card,.seo-card:hover,
    .seo-card-icon,.seo-card:hover .seo-card-icon,
    .seo-card-media img,.seo-card:hover .seo-card-media img,
    .service-cta-box,.service-cta-box:hover{transform:none!important;transition:none!important}
    .breadcrumb a::after{display:none}
}


.seo-card-grid{align-items:stretch}
.seo-card{display:flex;flex-direction:column;height:100%}
.seo-card-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.seo-card-body > p{
    max-height:8.4em;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:8px;
    scrollbar-width:thin;
    scrollbar-color:var(--text-muted) transparent;
    -webkit-overflow-scrolling:touch;
}
.seo-card-body > p::-webkit-scrollbar{width:6px}
.seo-card-body > p::-webkit-scrollbar-track{background:transparent;border-radius:3px}
.seo-card-body > p::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}
.seo-card-body > p::-webkit-scrollbar-thumb:hover{background:var(--text)}
.seo-card-body ul{margin-top:auto}


.seo-card-body a[href]:not(.btn){display:inline-flex;align-items:center;gap:.55rem;padding:.7rem 1.25rem;border-radius:999px;background:var(--text,#000);color:var(--bg,#fff);font-weight:800;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.seo-card-body a[href]:not(.btn):hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.25)}
.seo-card-body a[href]:not(.btn) i{font-size:.85em}


.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;align-items:stretch}
.blog-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--border);border-radius:24px;background:var(--card);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .28s var(--ease-bounce),box-shadow .28s ease,border-color .28s ease}
.blog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--text)}
.blog-card-media{height:220px;background:var(--card-2);display:flex;align-items:center;justify-content:center;overflow:hidden}
.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.blog-card-media i{font-size:3rem;color:var(--text-muted)}
.blog-card-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:24px}
.blog-card-body h2{font-size:1.25rem;margin-bottom:10px}
.blog-card-body p{color:var(--text-muted);margin-bottom:14px}
.blog-card-slug{display:flex;align-items:center;gap:.45rem;margin:-2px 0 12px!important;color:var(--text-muted);font-size:.82rem;font-weight:800;line-height:1.45;word-break:break-word}
.blog-long{color:var(--text);font-size:.95rem;line-height:1.7}
.blog-empty{border:1px dashed var(--border);border-radius:22px;background:var(--card);padding:36px;text-align:center;color:var(--text-muted)}
@media(max-width:768px){
    .blog-grid{grid-template-columns:1fr;gap:18px}
    .blog-card{border-radius:18px}
    .blog-card-media{height:auto;aspect-ratio:16/10;min-height:170px}
    .blog-card-body{padding:18px}
    .blog-card-body h2{font-size:1.08rem;line-height:1.35}
    .blog-card-body p,.blog-long{font-size:.93rem;line-height:1.68}
    .blog-empty{border-radius:18px;padding:26px 18px}
}
@media(max-width:380px){
    .blog-card-media{min-height:150px}
}



.blog-read-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.45rem;
    align-self:flex-start;
    margin-top:auto;
    padding:.72rem 1rem;
    border:1px solid var(--text);
    border-radius:999px;
    background:var(--btn-bg);
    color:var(--btn-fg);
    font-weight:800;
    cursor:pointer;
    transition:transform .28s var(--ease-bounce),box-shadow .28s ease,opacity .2s ease;
}
.blog-read-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.blog-popup-open{overflow:hidden}
.blog-popup-overlay{
    position:fixed;
    inset:0;
    z-index:9999;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    padding:clamp(84px,12vh,128px) 18px 28px;
    background:rgba(0,0,0,.54);
    opacity:0;
    visibility:hidden;
    transition:opacity .22s ease,visibility .22s ease;
}
.blog-popup-overlay.is-open{opacity:1;visibility:visible}
.blog-popup{
    position:relative;
    width:min(780px,100%);
    max-height:calc(100vh - 128px);
    overflow:auto;
    border:1px solid var(--border);
    border-radius:26px;
    background:var(--card);
    color:var(--text);
    box-shadow:0 24px 80px rgba(0,0,0,.28);
    padding:clamp(22px,4vw,34px);
    transform:translateY(-14px) scale(.98);
    transition:transform .24s var(--ease-bounce),opacity .22s ease;
    opacity:.95;
}
.blog-popup-overlay.is-open .blog-popup{transform:translateY(0) scale(1);opacity:1}
.blog-popup-close{
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border-radius:50%;
    border:1px solid var(--border);
    background:var(--card-2);
    color:var(--text);
    cursor:pointer;
    display:grid;
    place-items:center;
    transition:transform .25s var(--ease-bounce),background .2s ease,color .2s ease;
}
.blog-popup-close:hover{transform:rotate(90deg);background:var(--btn-bg);color:var(--btn-fg)}
.blog-popup h2{font-size:clamp(1.4rem,4vw,2.2rem);line-height:1.16;margin:0 52px 18px 0}
.blog-popup-content{font-size:1rem;line-height:1.78;color:var(--text)}
.blog-popup-content p{margin:0 0 1rem;color:var(--text)}
.blog-popup-content a{color:var(--text);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.blog-popup-content ul,.blog-popup-content ol{margin:.75rem 0 1rem;padding-left:1.25rem}
.blog-popup-content blockquote{margin:1rem 0;padding:1rem 1.1rem;border-left:4px solid var(--text);background:var(--card-2);border-radius:14px}
.blog-popup-content h2,.blog-popup-content h3,.blog-popup-content h4{margin:1.2rem 0 .7rem;line-height:1.25}
@media(max-width:720px){
    .blog-popup-overlay{padding:76px 12px 16px}
    .blog-popup{border-radius:20px;max-height:calc(100vh - 94px);padding:22px 18px}
    .blog-popup h2{margin-right:44px}
}


/* Javított Munkáink oldal és blog popup */
.work-card{position:relative;isolation:isolate;background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--card) 88%,var(--text) 4%));}
.work-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--text) 8%,transparent),transparent 34%);pointer-events:none;z-index:-1;}
.work-card .seo-card-body{gap:.75rem;}
.work-card h2{font-size:clamp(1.15rem,2vw,1.55rem);letter-spacing:-.02em;}
.work-long{max-height:none;margin-top:.5rem;padding:1rem;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--card-2) 78%,transparent);}
.work-long p{max-height:none!important;overflow:visible!important;margin:0 0 .85rem;color:var(--text);}
.rich-content{color:var(--text);line-height:1.75;}
.rich-content p{color:var(--text);}
.rich-content p:last-child{margin-bottom:0;}
.rich-content a{color:var(--text);font-weight:800;text-decoration:underline;text-underline-offset:3px;}
.rich-content ul,.rich-content ol{margin:.75rem 0 .9rem;padding-left:1.25rem;}
.rich-content blockquote{margin:1rem 0;padding:1rem 1.1rem;border-left:4px solid var(--text);background:var(--card);border-radius:14px;}
.rich-content h2,.rich-content h3,.rich-content h4{margin:1rem 0 .55rem;line-height:1.25;color:var(--text);}

.blog-popup-overlay{background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,.48));backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
.blog-popup{width:min(860px,100%);border-radius:30px;background:var(--card);opacity:1;box-shadow:0 30px 100px rgba(0,0,0,.34);}
.blog-popup-head{position:sticky;top:calc(-1 * clamp(22px,4vw,34px));z-index:2;margin:calc(-1 * clamp(22px,4vw,34px)) calc(-1 * clamp(22px,4vw,34px)) 1rem;padding:clamp(22px,4vw,34px) clamp(22px,4vw,34px) 1rem;background:linear-gradient(180deg,var(--card) 82%,color-mix(in srgb,var(--card) 70%,transparent));border-bottom:1px solid var(--border);}
.blog-popup-kicker{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.55rem;color:var(--text-muted);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;}
.blog-popup h2{margin:0 52px 0 0;}
.blog-popup-content{padding-top:.35rem;}
.blog-popup-content > *:first-child{margin-top:0;}
.blog-popup-close{z-index:3;}
@media(max-width:720px){.blog-popup-head{top:-22px;margin:-22px -18px 1rem;padding:22px 18px 1rem}.blog-popup{border-radius:22px}.blog-popup h2{font-size:1.35rem;}}

.works-copy{display:inline-flex;flex-direction:column;gap:2px;min-width:0;}
.works-copy .works-name{line-height:1.05;}
.works-link{flex:0 0 auto;}
@media(max-width:768px){.works-copy{align-items:center}.works-link{margin-top:2px}}

/* Munkáink aloldal – index stílushoz igazított megjelenés */
.munkaink-page .seo-hero {
    min-height: 56vh;
    display: flex;
    align-items: center;
    background:
        radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--text) 10%, transparent), transparent 26%),
        radial-gradient(circle at 82% 12%, color-mix(in srgb, var(--text) 7%, transparent), transparent 28%),
        var(--bg);
}

.munkaink-page .seo-hero::after {
    content: "WORKS";
    position: absolute;
    right: clamp(-2rem, -1vw, 2rem);
    bottom: -1.2rem;
    font-family: 'Orbitron', sans-serif;
    font-size: clamp(4.5rem, 16vw, 14rem);
    font-weight: 900;
    letter-spacing: .04em;
    color: transparent;
    -webkit-text-stroke: 1px color-mix(in srgb, var(--text) 12%, transparent);
    opacity: .65;
    pointer-events: none;
}

.munkaink-page .seo-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
    gap: clamp(1.1rem, 2.5vw, 1.8rem);
}

.munkaink-page .work-card {
    position: relative;
    min-height: 100%;
    border-radius: 28px;
    background: var(--card);
    border: 1px solid var(--border);
    box-shadow: var(--shadow-md);
}

.munkaink-page .work-card::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background: linear-gradient(135deg, color-mix(in srgb, var(--text) 18%, transparent), transparent 38%, color-mix(in srgb, var(--text) 8%, transparent));
    opacity: 0;
    transition: opacity .35s ease;
    pointer-events: none;
}

.munkaink-page .work-card:hover::before { opacity: 1; }

.munkaink-page .work-card .seo-card-media {
    position: relative;
    aspect-ratio: 16 / 9;
    border-bottom: 1px solid var(--border);
}

.munkaink-page .work-card .seo-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 42%, rgba(0,0,0,.36));
    pointer-events: none;
}

.munkaink-page .work-card .seo-card-body {
    position: relative;
    padding: clamp(1.25rem, 3vw, 1.8rem);
}

.munkaink-page .work-card h2 {
    font-family: 'Orbitron', sans-serif;
    font-size: clamp(1.1rem, 2vw, 1.45rem);
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.munkaink-page .work-long.rich-content {
    margin-top: .95rem;
    padding: .95rem 1rem;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: color-mix(in srgb, var(--card-2) 82%, transparent);
    color: var(--text-muted);
}

.munkaink-page .work-long.rich-content p { margin: 0 0 .8rem; }
.munkaink-page .work-long.rich-content ul,
.munkaink-page .work-long.rich-content ol { margin: .8rem 0 .8rem 1.25rem; }
.munkaink-page .work-long.rich-content a { color: var(--text); font-weight: 800; text-underline-offset: 3px; }

.munkaink-page .work-link-row { margin-top: 1.15rem; }
.munkaink-page .work-link-row a {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .78rem 1rem;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: var(--btn-bg);
    color: var(--btn-fg);
    text-decoration: none;
    font-weight: 900;
    font-size: .78rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    transition: transform .25s ease, box-shadow .25s ease;
}
.munkaink-page .work-link-row a:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }

.munkaink-page #pricing.pricing-section {
    background: var(--bg-alt);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

@media (max-width: 720px) {
    .munkaink-page .seo-card-grid { grid-template-columns: 1fr; }
    .munkaink-page .seo-hero { min-height: auto; }
}

/* Blog popup – mobilos középre igazítás és olvasható görgetés */
.blog-popup-overlay{
    align-items:center !important;
    justify-content:center !important;
    padding:18px !important;
    overflow:hidden;
}
.blog-popup{
    max-height:min(82vh, 720px);
    max-height:min(82dvh, 720px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb, var(--text) 42%, transparent) color-mix(in srgb, var(--card-2) 82%, transparent);
}
.blog-popup::-webkit-scrollbar{width:10px;}
.blog-popup::-webkit-scrollbar-track{
    background:color-mix(in srgb, var(--card-2) 82%, transparent);
    border-radius:999px;
    margin:18px 0;
}
.blog-popup::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg, color-mix(in srgb, var(--text) 55%, transparent), color-mix(in srgb, var(--text) 30%, transparent));
    border:2px solid color-mix(in srgb, var(--card) 88%, transparent);
    border-radius:999px;
}
.blog-popup::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text) 62%, transparent);}
.blog-popup-content{
    overflow-wrap:anywhere;
    word-break:normal;
}
@media(max-width:720px){
    .blog-popup-overlay{
        align-items:center !important;
        padding:12px !important;
    }
    .blog-popup{
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
        max-height:76vh !important;
        max-height:76dvh !important;
        border-radius:22px !important;
        padding:18px 15px !important;
        transform:translateY(0) scale(.985);
        box-shadow:0 18px 58px rgba(0,0,0,.38);
    }
    .blog-popup-overlay.is-open .blog-popup{transform:translateY(0) scale(1);}
    .blog-popup-head{
        top:-18px !important;
        margin:-18px -15px .85rem !important;
        padding:18px 48px .85rem 15px !important;
        background:linear-gradient(180deg,var(--card) 86%,color-mix(in srgb,var(--card) 72%,transparent));
    }
    .blog-popup-kicker{
        font-size:.68rem;
        letter-spacing:.1em;
        margin-bottom:.35rem;
    }
    .blog-popup h2{
        margin:0 !important;
        font-size:clamp(1.08rem,5.1vw,1.42rem) !important;
        line-height:1.18;
        letter-spacing:-.025em;
    }
    .blog-popup-close{
        top:12px;
        right:12px;
        width:36px;
        height:36px;
    }
    .blog-popup-content{
        padding-top:.15rem;
        font-size:.96rem;
        line-height:1.68;
    }
    .blog-popup-content p{margin-bottom:.85rem;}
    .blog-popup-content ul,
    .blog-popup-content ol{padding-left:1.08rem;margin:.65rem 0 .85rem;}
    .blog-popup::-webkit-scrollbar{width:8px;}
    .blog-popup::-webkit-scrollbar-track{margin:14px 0;}
}
@media(max-width:390px){
    .blog-popup{max-height:74vh !important;max-height:74dvh !important;padding:16px 13px !important;}
    .blog-popup-head{top:-16px !important;margin:-16px -13px .75rem !important;padding:16px 46px .75rem 13px !important;}
    .blog-popup-content{font-size:.93rem;line-height:1.62;}
}

/* Egységes szekcióhátterek, szolgáltatásárak és desktop popup finomítások */
.seo-hero,
.seo-grid-section,
.service-cta,
.tech-stack-section,
.blog-empty,
.munkaink-page #pricing.pricing-section{
    background-color:#ffffff;
}

[data-theme="dark"] .seo-hero,
[data-theme="dark"] .seo-grid-section,
[data-theme="dark"] .service-cta,
[data-theme="dark"] .tech-stack-section,
[data-theme="dark"] .blog-empty,
[data-theme="dark"] .munkaink-page #pricing.pricing-section{
    background-color:#000000;
}

@media(min-width:721px){
    .blog-popup-overlay{
        align-items:center !important;
        padding:32px 24px !important;
        background:rgba(0,0,0,.62) !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }

    .blog-popup{
        width:min(920px,calc(100vw - 48px)) !important;
        max-height:min(86vh,760px) !important;
        max-height:min(86dvh,760px) !important;
        border-radius:32px !important;
        padding:clamp(24px,3vw,36px) !important;
        box-shadow:0 34px 110px rgba(0,0,0,.38) !important;
    }

    .blog-popup-head{
        top:calc(-1 * clamp(24px,3vw,36px)) !important;
        margin:calc(-1 * clamp(24px,3vw,36px)) calc(-1 * clamp(24px,3vw,36px)) 1.1rem !important;
        padding:clamp(24px,3vw,36px) 72px 1.05rem clamp(24px,3vw,36px) !important;
    }

    .blog-popup-close{
        top:18px;
        right:18px;
        width:42px;
        height:42px;
    }
}

.blog-popup-content{
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb,var(--text) 52%,transparent) transparent;
}

.blog-popup-content::-webkit-scrollbar{width:8px}
.blog-popup-content::-webkit-scrollbar-track{background:transparent}
.blog-popup-content::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg,color-mix(in srgb,var(--text) 52%,transparent),color-mix(in srgb,var(--text) 28%,transparent));
    border-radius:999px;
}

/* Aloldali szekciókön is teljes background reset. */
.seo-hero,
.seo-grid-section,
.service-cta,
.tech-stack-section,
.blog-empty,
.munkaink-page #pricing.pricing-section{
    background:#ffffff;
}

[data-theme="dark"] .seo-hero,
[data-theme="dark"] .seo-grid-section,
[data-theme="dark"] .service-cta,
[data-theme="dark"] .tech-stack-section,
[data-theme="dark"] .blog-empty,
[data-theme="dark"] .munkaink-page #pricing.pricing-section{
    background:#000000;
}

/* SAWW 2026-05-25: aloldali hover és reszponzív finomítások */
.seo-card,
.work-card,
.blog-card,
.service-cta-box,
.blog-read-btn,
.works-link,
.seo-card-body a[href]:not(.btn){
    transition:transform .34s cubic-bezier(.22,1,.36,1),
               box-shadow .34s ease,
               border-color .34s ease,
               background .34s ease,
               color .34s ease;
}

@media (hover:hover) and (pointer:fine){
    .seo-card:hover,
    .seo-card:focus-within,
    .work-card:hover,
    .work-card:focus-within,
    .blog-card:hover,
    .blog-card:focus-within,
    .service-cta-box:hover,
    .service-cta-box:focus-within{
        transform:translateY(-8px) scale(1.014);
        border-color:var(--text);
        box-shadow:0 24px 58px rgba(0,0,0,.18);
    }

    [data-theme="dark"] .seo-card:hover,
    [data-theme="dark"] .seo-card:focus-within,
    [data-theme="dark"] .work-card:hover,
    [data-theme="dark"] .work-card:focus-within,
    [data-theme="dark"] .blog-card:hover,
    [data-theme="dark"] .blog-card:focus-within,
    [data-theme="dark"] .service-cta-box:hover,
    [data-theme="dark"] .service-cta-box:focus-within{
        box-shadow:0 28px 68px rgba(0,0,0,.72);
    }

    .seo-card:hover .seo-card-icon,
    .seo-card:focus-within .seo-card-icon{
        transform:rotate(-8deg) scale(1.12);
    }

    .work-card:hover .seo-card-media img,
    .work-card:focus-within .seo-card-media img,
    .blog-card:hover img,
    .blog-card:focus-within img{
        transform:scale(1.055);
    }

    .blog-read-btn:hover,
    .blog-read-btn:focus-visible,
    .works-link:hover,
    .works-link:focus-visible,
    .seo-card-body a[href]:not(.btn):hover,
    .seo-card-body a[href]:not(.btn):focus-visible{
        transform:translateY(-3px) scale(1.025);
        box-shadow:0 14px 32px rgba(0,0,0,.22);
    }
}

.seo-card-media img,
.blog-card-media img{
    transition:transform .55s cubic-bezier(.22,1,.36,1);
}

@media (max-width: 900px){
    .seo-card-grid,
    .blog-grid{
        grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
    }

    .service-cta-box{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media (max-width: 720px){
    html,body{overflow-x:hidden}

    .seo-hero{padding:118px 0 54px}
    .seo-grid-section{padding:56px 0 72px}
    .seo-card,
    .work-card,
    .blog-card,
    .service-cta-box{
        transform:none!important;
        min-width:0;
    }

    .seo-card-body{
        padding:1.15rem;
    }

    .seo-card-body > p{
        max-height:none;
        overflow:visible;
        padding-right:0;
    }

    .blog-card-media{height:190px}
}

@media (max-width: 420px){
    .seo-hero h1{font-size:clamp(2.2rem,14vw,3.35rem)}
    .seo-hero p{font-size:.98rem;line-height:1.7}
    .seo-card-grid,.blog-grid{gap:16px}
    .seo-card,.work-card,.blog-card{border-radius:22px}
}

@media (prefers-reduced-motion: reduce){
    .seo-card,
    .work-card,
    .blog-card,
    .service-cta-box,
    .blog-read-btn,
    .works-link,
    .seo-card-media img,
    .blog-card-media img,
    .seo-card-body a[href]:not(.btn){
        transition:none!important;
    }
}


/* SAWW 2026-05-25 requested final fixes: mobile-safe SEO H1 and Eredményeink gallery */
@media (max-width: 520px){
    .seo-hero{overflow:hidden;}
    .seo-hero-inner{max-width:100%;min-width:0;}
    .seo-hero h1{
        width:100%;
        max-width:100%;
        font-size:clamp(1.85rem, 10.4vw, 2.55rem)!important;
        line-height:1.08!important;
        letter-spacing:.01em!important;
        overflow-wrap:anywhere;
        word-break:normal;
        hyphens:auto;
    }
}
.results-gallery-section{position:relative;padding:88px 0 104px;background:#fff;overflow:hidden;}
[data-theme="dark"] .results-gallery-section{background:#000;}
.results-gallery-section::before{content:'EREDMÉNYEINK';position:absolute;left:50%;top:32px;transform:translateX(-50%);font-family:'Orbitron',sans-serif;font-size:clamp(3.2rem,10vw,9rem);font-weight:900;letter-spacing:.08em;color:var(--text);opacity:.025;white-space:nowrap;pointer-events:none;}
.results-gallery-head{position:relative;z-index:1;max-width:760px;margin:0 auto 38px;text-align:center;}
.results-gallery-head .section-sub{margin:14px auto 0;color:var(--text-muted);line-height:1.75;}
.results-gallery-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,1fr);gap:16px;}
.results-gallery-card{grid-column:span 4;position:relative;display:block;border:0;border-radius:28px;padding:0;overflow:hidden;background:var(--card);box-shadow:0 18px 42px rgba(0,0,0,.10);cursor:pointer;min-height:260px;isolation:isolate;}
.results-gallery-card:nth-child(5n+1){grid-column:span 7;min-height:360px;}
.results-gallery-card:nth-child(5n+2){grid-column:span 5;min-height:360px;}
.results-gallery-card img{width:100%;height:100%;min-height:inherit;display:block;object-fit:cover;transform:scale(1.01);transition:transform .6s cubic-bezier(.22,1,.36,1),filter .45s ease;}
.results-gallery-card:hover img,.results-gallery-card:focus-visible img{transform:scale(1.06);filter:saturate(1.05) contrast(1.02);}
.results-gallery-card:focus-visible{outline:3px solid var(--text);outline-offset:4px;}
.results-gallery-caption{position:absolute;left:16px;right:16px;bottom:16px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:20px;background:rgba(0,0,0,.72);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.results-gallery-caption strong{font-size:.95rem;line-height:1.25;text-align:left;}
.results-gallery-caption i{flex:0 0 auto;}
.results-gallery-empty{position:relative;z-index:1;border:1px dashed var(--border);border-radius:28px;padding:34px;text-align:center;color:var(--text-muted);background:var(--card);}
.results-lightbox{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(0,0,0,.82);opacity:0;pointer-events:none;transition:opacity .24s ease;}
.results-lightbox.is-open{opacity:1;pointer-events:auto;}
.results-lightbox-inner{position:relative;width:min(1120px,100%);max-height:calc(100dvh - 56px);display:flex;flex-direction:column;gap:14px;}
.results-lightbox img{display:block;width:100%;max-height:calc(100dvh - 132px);object-fit:contain;border-radius:24px;background:#111;box-shadow:0 28px 90px rgba(0,0,0,.5);}
.results-lightbox-title{color:#fff;font-weight:800;text-align:center;line-height:1.45;}
.results-lightbox-close{position:absolute;right:10px;top:10px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.62);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;z-index:2;}
.results-lightbox-close:hover,.results-lightbox-close:focus-visible{background:#fff;color:#000;}
@media(max-width:900px){.results-gallery-card,.results-gallery-card:nth-child(5n+1),.results-gallery-card:nth-child(5n+2){grid-column:span 6;min-height:260px;}}
@media(max-width:620px){.results-gallery-section{padding:72px 0 82px}.results-gallery-grid{grid-template-columns:1fr;gap:14px}.results-gallery-card,.results-gallery-card:nth-child(5n+1),.results-gallery-card:nth-child(5n+2){grid-column:auto;min-height:235px;border-radius:22px}.results-gallery-caption{left:12px;right:12px;bottom:12px;border-radius:16px}.results-lightbox{padding:16px}.results-lightbox img{border-radius:18px;max-height:calc(100dvh - 112px)}}
@media (prefers-reduced-motion:reduce){.results-gallery-card img,.results-lightbox{transition:none!important;}}


/* SAWW requested cleanup 2026-05-25: black/white sections, simpler hovers, mobile typography. */
body,
section,
.hero,
.seo-hero,
.services,
.fit-section,
.handover-section,
.partner-strip-section,
.pricing-section,
.references-section,
.contacts-section,
.workflow-section,
.tech-stack-section,
.service-tech-stack,
.local-section,
.city-seo-section,
.results-gallery-section,
.seo-grid-section{
    background:#ffffff !important;
    background-image:none !important;
}
[data-theme="dark"] body,
[data-theme="dark"] section,
[data-theme="dark"] .hero,
[data-theme="dark"] .seo-hero,
[data-theme="dark"] .services,
[data-theme="dark"] .fit-section,
[data-theme="dark"] .handover-section,
[data-theme="dark"] .partner-strip-section,
[data-theme="dark"] .pricing-section,
[data-theme="dark"] .references-section,
[data-theme="dark"] .contacts-section,
[data-theme="dark"] .workflow-section,
[data-theme="dark"] .tech-stack-section,
[data-theme="dark"] .service-tech-stack,
[data-theme="dark"] .local-section,
[data-theme="dark"] .city-seo-section,
[data-theme="dark"] .results-gallery-section,
[data-theme="dark"] .seo-grid-section{
    background:#000000 !important;
    background-image:none !important;
}
.fit-section::before,
.handover-section::before,
.partner-strip-section::before,
.local-section::before,
.city-seo-section::before,
.seo-hero::before,
.munkaink-page .seo-hero::after{
    display:none !important;
    background:none !important;
}
.local-copy,
.local-card,
.city-seo-card,
.works-ticker,
.partner-strip-ticker,
.workflow-step-card,
.flip-card-inner,
.pricing-card,
.seo-card,
.blog-card,
.service-cta-box{
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
.local-copy{
    background:#ffffff !important;
    border-radius:18px !important;
}
[data-theme="dark"] .local-copy{
    background:#000000 !important;
}
.local-card::after,
.workflow-step-card::before,
.flip-card-inner::before,
.pricing-card::before,
.work-card::before{
    display:none !important;
}
.local-link,
.cta-button,
.submit-btn,
.workflow-cta-btn,
.partner-strip-item,
.works-ticker-item,
.seo-card,
.blog-card,
.service-cta-box,
.carousel-3d-btn,
.theme-toggle,
.header-utility-link{
    transition:transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease !important;
}
.local-link::after,
.cta-button::after,
.submit-btn::after,
.workflow-cta-btn::after{
    display:none !important;
}
.local-link:hover,
.local-link:focus-visible,
.cta-button:hover,
.submit-btn:hover:not(:disabled),
.workflow-cta-btn:hover,
.partner-strip-item:hover,
.works-ticker-item:hover,
.seo-card:hover,
.blog-card:hover,
.service-cta-box:hover,
.carousel-3d-btn:hover,
.theme-toggle:hover,
.header-utility-link:hover{
    transform:translateY(-2px) !important;
    box-shadow:none !important;
}
.works-ticker{
    border:1px solid var(--border) !important;
    border-radius:32px !important;
    background:#ffffff !important;
    padding:0 !important;
    margin-top:34px !important;
    overflow:hidden !important;
    mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent) !important;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent) !important;
}
[data-theme="dark"] .works-ticker{background:#000000 !important;}
.works-track.partner-strip-track{
    display:flex !important;
    align-items:center !important;
    width:max-content !important;
    gap:14px !important;
    padding:12px !important;
    animation:handoverTicker 30s linear infinite !important;
}
.works-ticker-item.partner-strip-item{
    min-height:68px !important;
    min-width:220px !important;
    max-width:260px !important;
    padding:10px 22px 10px 10px !important;
    border:1px solid var(--border) !important;
    border-radius:999px !important;
    background:#ffffff !important;
    color:var(--text) !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:12px !important;
    white-space:normal !important;
    text-decoration:none !important;
}
[data-theme="dark"] .works-ticker-item.partner-strip-item{background:#000000 !important;}
.works-ticker-item.partner-strip-item .partner-strip-logo{
    width:48px !important;
    height:48px !important;
    border-radius:50% !important;
    flex:0 0 auto !important;
}
.works-ticker-item.partner-strip-item .partner-strip-name{
    text-align:left !important;
    width:auto !important;
}
.works-desc,
body:not(.munkaink-page) .work-long,
body:not(.munkaink-page) .work-card .seo-card-body > p:not(.work-link-row){
    display:none !important;
}

@media (max-width:768px){
    .section-title,
    .seo-card h2,
    .seo-card h3,
    .results-gallery-head .section-title{
        font-size:1.19rem !important;
        line-height:1.18 !important;
        letter-spacing:.06em !important;
    }
    .services .section-title,
    .service-tech-stack .section-title,
    a[href*="szolgaltatasaink"] .mobile-nav-card span,
    .mobile-nav-card span,
    .nav-button{
        font-size:.78rem !important;
        letter-spacing:.04em !important;
    }
    .workflow-section .section-title{
        font-size:.85rem !important;
        line-height:1.15 !important;
        letter-spacing:.05em !important;
    }
    .section-sub,
    .fit-subtitle,
    .handover-subtitle,
    .partner-strip-subtitle,
    .pricing-subtitle,
    .workflow-subtitle,
    .city-seo-lead,
    .local-lead,
    .service-tech-stack .section-sub,
    .results-gallery-head .section-sub,
    .seo-hero p{
        font-size:.66rem !important;
        line-height:1.55 !important;
    }
    .city-seo-section #city-seo-title{
        display:none !important;
    }
    .works-ticker{
        border-radius:18px !important;
        mask-image:none !important;
        -webkit-mask-image:none !important;
    }
    .works-track.partner-strip-track{
        animation-duration:24s !important;
        padding:10px !important;
        gap:10px !important;
    }
    .works-ticker-item.partner-strip-item{
        min-height:58px !important;
        min-width:205px !important;
        max-width:240px !important;
        padding:8px 16px 8px 8px !important;
        flex-direction:row !important;
        align-items:center !important;
    }
    .works-ticker-item.partner-strip-item .partner-strip-logo{
        width:38px !important;
        height:38px !important;
    }
    .works-ticker-item.partner-strip-item .partner-strip-name{
        font-size:.8rem !important;
        max-width:150px !important;
    }
}


/* SAWW implementációs javítások – Munkáink ticker, hero kapszula, lightbox, mobil árkártyák */
.hero-description{
    display:block;
    width:min(100%,560px);
    padding:clamp(14px,2.6vw,20px) clamp(16px,3vw,24px);
    border:1px solid var(--border);
    border-radius:clamp(18px,3vw,26px);
    background:color-mix(in srgb,var(--card) 90%,transparent);
    box-shadow:var(--shadow-sm);
    color:var(--text);
    overflow-wrap:anywhere;
}
[data-theme="dark"] .hero-description{background:rgba(15,15,15,.86);}

.section-title,
.results-gallery-head .section-title,
.services .section-title,
.service-tech-stack .section-title,
.workflow-section .section-title,
.local-copy #local-section-title,
.local-section .local-copy #local-section-title{
    font-size:clamp(1.55rem,4.1vw,2.45rem) !important;
    line-height:1.14 !important;
    letter-spacing:.055em !important;
}

.references-section{background:#ffffff;}
[data-theme="dark"] .references-section{background:#000000;}
.works-ticker,
.works-ticker:hover{
    width:min(100%,1180px) !important;
    max-width:calc(100vw - 32px) !important;
    margin:34px auto 0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:1px solid var(--border) !important;
    border-radius:999px !important;
    background:#ffffff !important;
    box-shadow:var(--shadow-sm) !important;
    transform:none !important;
    mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent) !important;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent) !important;
}
[data-theme="dark"] .works-ticker,
[data-theme="dark"] .works-ticker:hover{background:#000000 !important;}
.works-track.partner-strip-track{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:max-content !important;
    min-width:max-content !important;
    gap:14px !important;
    padding:12px !important;
    animation:handoverTicker 30s linear infinite !important;
    will-change:transform;
}
.works-ticker:hover .works-track.partner-strip-track{animation-play-state:paused !important;}
.works-ticker-item.partner-strip-item,
a.works-ticker-item.partner-strip-item{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
    min-width:220px !important;
    max-width:270px !important;
    min-height:68px !important;
    padding:10px 22px 10px 10px !important;
    border:1px solid var(--border) !important;
    border-radius:999px !important;
    background:#ffffff !important;
    color:#000000 !important;
    text-align:left !important;
    text-decoration:none !important;
    white-space:normal !important;
    box-shadow:0 8px 22px rgba(0,0,0,.06) !important;
}
.works-ticker-item.partner-strip-item:hover,
a.works-ticker-item.partner-strip-item:hover{
    transform:translateY(-4px) scale(1.04) !important;
    border-color:#000000 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.16) !important;
    background:#ffffff !important;
    color:#000000 !important;
}
[data-theme="dark"] .works-ticker-item.partner-strip-item,
[data-theme="dark"] a.works-ticker-item.partner-strip-item{
    background:#ffffff !important;
    color:#000000 !important;
    border-color:rgba(255,255,255,.18) !important;
}
.works-ticker-item.partner-strip-item .partner-strip-logo,
.works-ticker-item.partner-strip-item .works-thumb{
    flex:0 0 auto !important;
    width:48px !important;
    height:48px !important;
    border-radius:50% !important;
    overflow:hidden !important;
    background:#f3f3f3 !important;
    border:1px solid rgba(0,0,0,.08) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#000000 !important;
}
.works-ticker-item.partner-strip-item .partner-strip-logo img,
.works-ticker-item.partner-strip-item .works-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.works-ticker-item.partner-strip-item .partner-strip-name,
.works-ticker-item.partner-strip-item .works-name{
    max-width:180px !important;
    width:auto !important;
    color:#000000 !important;
    font-size:.9rem !important;
    font-weight:850 !important;
    line-height:1.25 !important;
    text-align:left !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    overflow-wrap:anywhere !important;
}
.works-copy,.works-desc,.works-link,.works-index{display:none !important;}

.munkaink-page .work-lightbox-trigger{
    position:relative;
    display:block;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    cursor:zoom-in;
    overflow:hidden;
}
.munkaink-page .work-lightbox-trigger picture,
.munkaink-page .work-lightbox-trigger img{width:100%;height:100%;display:block;object-fit:cover;}
.munkaink-page .work-lightbox-trigger:focus-visible{outline:3px solid var(--text);outline-offset:-5px;}
.munkaink-page .work-lightbox-icon{
    position:absolute;
    right:12px;
    bottom:12px;
    width:38px;
    height:38px;
    border-radius:999px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.9);
    color:#000;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 10px 22px rgba(0,0,0,.18);
    pointer-events:none;
    transition:transform .22s ease,opacity .22s ease;
}
.munkaink-page .work-lightbox-trigger:hover .work-lightbox-icon{transform:scale(1.08);}
.work-lightbox .work-lightbox-inner{max-width:min(92vw,1180px);padding:18px;}
.work-lightbox .work-lightbox-inner img{max-height:82vh;object-fit:contain;}
.work-lightbox-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:46px;
    height:46px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(0,0,0,.52);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:4;
    transition:transform .2s ease,background .2s ease;
}
.work-lightbox-nav:hover{background:rgba(0,0,0,.72);}
.work-lightbox-prev{left:18px;}
.work-lightbox-next{right:18px;}
.work-lightbox-nav[hidden]{display:none !important;}

@media (max-width:768px){
    .hero-description{
        width:100%;
        max-width:calc(100vw - 32px);
        margin-left:auto;
        margin-right:auto;
        padding:13px 15px;
        border-radius:18px;
        font-size:.94rem;
        line-height:1.6;
    }
    .section-title,
    .seo-card h2,
    .seo-card h3,
    .results-gallery-head .section-title,
    .services .section-title,
    .service-tech-stack .section-title,
    .workflow-section .section-title,
    .local-copy #local-section-title,
    .local-section .local-copy #local-section-title{
        font-size:clamp(1.18rem,6vw,1.55rem) !important;
        line-height:1.12 !important;
        letter-spacing:.035em !important;
    }
    .works-ticker,
    .works-ticker:hover{
        max-width:calc(100vw - 28px) !important;
        border-radius:18px !important;
        margin-top:28px !important;
        mask-image:none !important;
        -webkit-mask-image:none !important;
    }
    .works-track.partner-strip-track{animation-duration:24s !important;padding:10px !important;gap:10px !important;}
    .works-ticker-item.partner-strip-item,
    a.works-ticker-item.partner-strip-item{
        min-height:58px !important;
        min-width:190px !important;
        max-width:240px !important;
        padding:8px 16px 8px 8px !important;
        gap:9px !important;
    }
    .works-ticker-item.partner-strip-item .partner-strip-logo,
    .works-ticker-item.partner-strip-item .works-thumb{width:38px !important;height:38px !important;}
    .works-ticker-item.partner-strip-item .partner-strip-name,
    .works-ticker-item.partner-strip-item .works-name{font-size:.8rem !important;max-width:150px !important;}
    .pricing-container{width:100%;overflow:hidden;}
    .pricing-section .carousel-3d-viewport{max-width:100%;padding:18px 0 0 !important;overflow:visible;}
    .pricing-section .carousel-3d-track{gap:16px !important;padding:16px 0 !important;}
    .pricing-section .carousel-3d-item{width:min(318px,calc(100vw - 56px)) !important;max-width:318px !important;margin-left:auto;margin-right:auto;}
    .pricing-section .flip-card{height:auto !important;min-height:315px !important;border-radius:22px;}
    .pricing-section .flip-card-front{padding:28px 22px !important;min-height:205px !important;}
    .pricing-section .flip-card-front h3{font-size:clamp(1.12rem,5.6vw,1.42rem) !important;line-height:1.22 !important;}
    .pricing-flip-price{font-size:clamp(1.05rem,5vw,1.34rem) !important;line-height:1.28 !important;}
    .pricing-flip-price span{font-size:.78rem !important;}
    .pricing-flip-desc{font-size:1rem !important;line-height:1.68 !important;}
    .work-lightbox .work-lightbox-inner{width:calc(100vw - 20px);padding:12px;border-radius:20px;}
    .work-lightbox .work-lightbox-inner img{max-height:74vh;}
    .work-lightbox-nav{top:auto;bottom:18px;transform:none;width:44px;height:44px;}
    .work-lightbox-prev{left:18px;}
    .work-lightbox-next{right:18px;}
    .work-lightbox .work-lightbox-title{padding:0 58px;min-height:44px;display:flex;align-items:center;justify-content:center;}
}

/* SAWW implementation final pass 2026-05-26: requested UI fixes. */
.mobile-menu.active .mobile-nav-grid li:nth-child(6){transition-delay:.41s}
.mobile-nav-theme-btn .theme-icon-wrap{position:relative;width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1}
.mobile-nav-theme-btn .theme-icon-wrap i{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.9rem;transition:opacity .28s ease,transform .38s ease}
button.mobile-nav-card.mobile-nav-theme-btn{appearance:none;-webkit-appearance:none;text-align:center}

.works-ticker-item.partner-strip-item,
a.works-ticker-item.partner-strip-item{
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
}
.works-ticker-item.partner-strip-item .partner-strip-logo,
.works-ticker-item.partner-strip-item .works-thumb{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}
.works-ticker-item.partner-strip-item .partner-strip-name,
.works-ticker-item.partner-strip-item .works-name{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    min-height:2.5em;
}
[data-theme="dark"] .works-ticker-item.partner-strip-item,
[data-theme="dark"] a.works-ticker-item.partner-strip-item,
[data-theme="dark"] .works-ticker-item.partner-strip-item.revealed,
[data-theme="dark"] a.works-ticker-item.partner-strip-item.revealed,
[data-theme="dark"] .works-ticker-item.partner-strip-item:hover,
[data-theme="dark"] a.works-ticker-item.partner-strip-item:hover{
    background:#000000 !important;
    color:var(--text) !important;
    border-color:rgba(255,255,255,.22) !important;
}
[data-theme="dark"] .works-ticker-item.partner-strip-item .partner-strip-name,
[data-theme="dark"] .works-ticker-item.partner-strip-item .works-name{
    color:var(--text) !important;
}
[data-theme="dark"] .works-ticker-item.partner-strip-item .partner-strip-logo,
[data-theme="dark"] .works-ticker-item.partner-strip-item .works-thumb{
    background:#0b0b0b !important;
    border-color:rgba(255,255,255,.18) !important;
    color:var(--text) !important;
}

#szolgaltatasok .seo-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(16px,2vw,24px)}
#szolgaltatasok .seo-card{
    position:relative;
    min-height:100%;
    border-radius:24px !important;
    background:var(--card) !important;
    border:1px solid var(--border) !important;
    overflow:hidden;
}
#szolgaltatasok .seo-card-body{padding:clamp(1.15rem,2.4vw,1.65rem) !important;gap:.75rem}
#szolgaltatasok .seo-card-icon{
    width:48px !important;
    height:48px !important;
    margin-bottom:.8rem !important;
    border-radius:16px !important;
    background:var(--btn-bg) !important;
    color:var(--btn-fg) !important;
    font-size:1.18rem !important;
}
[data-theme="dark"] #szolgaltatasok .seo-card-icon{color:var(--flip-fg) !important}
#szolgaltatasok .seo-card h2,#szolgaltatasok .seo-card h3{
    font-size:clamp(1rem,1.45vw,1.16rem) !important;
    line-height:1.26 !important;
    letter-spacing:.02em !important;
    margin:0 0 .45rem !important;
}
#szolgaltatasok .seo-card p{font-size:.95rem;line-height:1.68;color:var(--text-muted)}
#szolgaltatasok .seo-card ul,#szolgaltatasok .seo-card li{display:none !important}
@media (max-width:720px){
    #szolgaltatasok .seo-card-body{align-items:center;text-align:center}
    #szolgaltatasok .seo-card-icon{margin-left:auto !important;margin-right:auto !important}
}

.pricing-section .carousel-3d-viewport{padding:22px 0 10px !important}
.pricing-section .carousel-3d-track{height:360px !important}
.pricing-section .flip-card{height:315px !important;border-radius:22px !important}
.pricing-section .flip-card-inner{border-radius:22px !important}
.pricing-section .flip-card-front{padding:28px 24px !important;border-radius:22px !important}
.pricing-section .service-icon-wrapper{width:68px;height:68px;margin-bottom:18px}
.pricing-section .flip-card-front h3{font-size:clamp(1rem,1.55vw,1.22rem) !important;line-height:1.24 !important;margin-bottom:10px !important}
.pricing-section .pricing-flip-price{font-size:clamp(1.18rem,2.2vw,1.42rem) !important;margin-top:8px !important;line-height:1.18 !important}
.pricing-section .pricing-flip-price span{font-size:.74rem !important}
.pricing-section #pricing .flip-card-back.pricing-flip-back,
#pricing.pricing-section .flip-card-back.pricing-flip-back{padding:22px 20px !important;border-radius:22px !important}
.pricing-section .pricing-flip-desc{font-size:.88rem !important;line-height:1.55 !important;text-align:center;max-height:100%;overflow-y:auto}
@media (max-width:768px){
    .pricing-section .carousel-3d-viewport{padding:14px 0 0 !important;overflow:visible}
    .pricing-section .carousel-3d-track{height:auto !important;gap:14px !important;padding:12px 0 !important}
    .pricing-section .carousel-3d-item{width:min(300px,calc(100vw - 46px)) !important;max-width:300px !important}
    .pricing-section .flip-card{height:auto !important;min-height:0 !important;border-radius:20px !important}
    .pricing-section .flip-card-inner{min-height:0 !important;border-radius:20px !important}
    .pricing-section .flip-card-front{min-height:170px !important;padding:22px 18px !important;border-radius:20px 20px 0 0 !important}
    .pricing-section .service-icon-wrapper{width:56px;height:56px;min-width:56px;min-height:56px;margin-bottom:14px;border-radius:16px}
    .pricing-section .flip-card-front h3{font-size:clamp(.95rem,4.8vw,1.18rem) !important}
    .pricing-section .pricing-flip-price{font-size:clamp(1rem,4.8vw,1.24rem) !important}
    .pricing-section #pricing .flip-card-back.pricing-flip-back,
    #pricing.pricing-section .flip-card-back.pricing-flip-back{position:relative;opacity:1;padding:14px 16px 18px !important;border-radius:0 0 20px 20px !important;background:var(--card-2)}
    .pricing-section .pricing-flip-desc{font-size:.88rem !important;line-height:1.52 !important;text-align:left;max-height:none;overflow:visible;padding-right:0}
}


/* SAWW follow-up 2026-05-26: Munkáink aloldali kártyák rendezettebb megjelenése. */
.munkaink-page .seo-card-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr)) !important;
    gap:clamp(18px,2.5vw,30px) !important;
    align-items:stretch !important;
}
.munkaink-page .work-card{
    display:flex !important;
    flex-direction:column !important;
    min-height:100% !important;
    overflow:hidden !important;
    border-radius:30px !important;
    border:1px solid var(--border) !important;
    background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--card-2) 70%,var(--card))) !important;
    box-shadow:0 16px 42px rgba(0,0,0,.08) !important;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease !important;
}
[data-theme="dark"] .munkaink-page .work-card{
    background:linear-gradient(180deg,#050505,#000000) !important;
    box-shadow:none !important;
}
.munkaink-page .work-card:hover,
.munkaink-page .work-card:focus-within{
    transform:translateY(-4px) !important;
    border-color:var(--text) !important;
    box-shadow:0 18px 46px rgba(0,0,0,.14) !important;
}
[data-theme="dark"] .munkaink-page .work-card:hover,
[data-theme="dark"] .munkaink-page .work-card:focus-within{box-shadow:0 0 0 1px rgba(255,255,255,.08) !important;}
.munkaink-page .work-card .seo-card-media{
    aspect-ratio:16/10 !important;
    border-bottom:1px solid var(--border) !important;
    background:var(--card-2) !important;
}
.munkaink-page .work-card .seo-card-media::after{background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.28)) !important;}
.munkaink-page .work-card .seo-card-body{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    flex:1 1 auto !important;
    padding:clamp(18px,2.8vw,26px) !important;
}
.munkaink-page .work-card-heading{display:grid;gap:8px;}
.munkaink-page .work-card-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    max-width:100%;
    padding:6px 10px;
    border-radius:999px;
    border:1px solid var(--border);
    background:var(--card-2);
    color:var(--text-muted);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
[data-theme="dark"] .munkaink-page .work-card-kicker{background:#050505;border-color:rgba(255,255,255,.16);}
.munkaink-page .work-card h2{
    margin:0 !important;
    font-family:'Orbitron',sans-serif !important;
    font-size:clamp(1.02rem,1.7vw,1.32rem) !important;
    line-height:1.18 !important;
    letter-spacing:.045em !important;
    text-transform:uppercase !important;
}
.munkaink-page .work-summary{
    margin:0 !important;
    padding:12px 14px !important;
    border-radius:18px !important;
    border:1px solid var(--border) !important;
    background:color-mix(in srgb,var(--card-2) 74%,transparent) !important;
    color:var(--text-muted) !important;
    font-size:.94rem !important;
    line-height:1.62 !important;
}
.munkaink-page .work-long.rich-content{
    margin-top:0 !important;
    padding:14px 15px !important;
    border-radius:18px !important;
    border:1px solid var(--border) !important;
    background:color-mix(in srgb,var(--card) 82%,var(--card-2)) !important;
    color:var(--text) !important;
    font-size:.94rem !important;
    line-height:1.72 !important;
}
.munkaink-page .work-link-row{margin-top:auto !important;padding-top:4px !important;}
.munkaink-page .work-link-row a{
    width:100% !important;
    justify-content:center !important;
    border-radius:16px !important;
    padding:.86rem 1rem !important;
}
@media (max-width:720px){
    .munkaink-page .seo-card-grid{grid-template-columns:1fr !important;gap:18px !important;}
    .munkaink-page .work-card{border-radius:24px !important;}
    .munkaink-page .work-card .seo-card-media{aspect-ratio:16/11 !important;}
    .munkaink-page .work-card .seo-card-body{padding:17px !important;gap:12px !important;}
    .munkaink-page .work-card-kicker{font-size:.68rem;padding:5px 9px;}
    .munkaink-page .work-card h2{font-size:1rem !important;line-height:1.22 !important;}
    .munkaink-page .work-summary,
    .munkaink-page .work-long.rich-content{font-size:.9rem !important;line-height:1.62 !important;}
}

/* 20260526-ui-polish2: Eredménygaléria felirat szilárd háttérrel */
.results-gallery-caption{
    background:#ffffff !important;
    color:#111111 !important;
    border:1px solid rgba(0,0,0,.12) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
}
[data-theme="dark"] .results-gallery-caption{
    background:#000000 !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.2) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.32) !important;
}

/* 20260527-blog-slug: SEO blog aloldalak */
.blog-post-page{background:var(--bg);color:var(--text)}
.blog-post-hero{padding:132px 0 44px;background:linear-gradient(180deg,var(--card-2),var(--bg));border-bottom:1px solid var(--border)}
.blog-post-hero-inner{max-width:960px}
.blog-post-hero .breadcrumb{margin-bottom:24px}
.blog-post-date{display:inline-flex;align-items:center;gap:.5rem;width:max-content;max-width:100%;padding:9px 14px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--text-muted);font-size:.88rem;font-weight:800}
.blog-post-hero h1{margin:18px 0 16px;font-size:clamp(2rem,4.8vw,4rem);line-height:1.05;letter-spacing:0}
.blog-post-hero p{max-width:820px;color:var(--text-muted);font-size:clamp(1rem,2vw,1.18rem);line-height:1.7}
.blog-post-shell{max-width:960px;padding-top:36px;padding-bottom:72px}
.blog-post-image{display:block;overflow:hidden;border:1px solid var(--border);border-radius:28px;background:var(--card-2);box-shadow:var(--shadow-sm);aspect-ratio:16/8.5;margin-bottom:34px}
.blog-post-image img{display:block;width:100%;height:100%;object-fit:cover}
.blog-post-content{font-size:1.05rem;line-height:1.82;color:var(--text)}
.blog-post-content > *:first-child{margin-top:0}
.blog-post-content p{margin:0 0 1.15rem;color:var(--text)}
.blog-post-content h2,.blog-post-content h3,.blog-post-content h4{margin:1.6rem 0 .8rem;line-height:1.22;color:var(--text)}
.blog-post-content ul,.blog-post-content ol{padding-left:1.35rem;margin:.85rem 0 1.2rem}
.blog-post-content li{margin:.35rem 0}
.blog-post-content blockquote{margin:1.2rem 0;padding:1rem 1.2rem;border-left:4px solid var(--text);border-radius:16px;background:var(--card-2)}
.blog-post-content a{color:var(--text);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.blog-post-keywords{margin-top:34px;padding-top:26px;border-top:1px solid var(--border)}
.blog-post-keywords h2{margin:0 0 14px;font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.blog-keyword-list{display:flex;flex-wrap:wrap;gap:10px}
.blog-keyword-list span{display:inline-flex;align-items:center;min-height:36px;padding:8px 13px;border:1px solid var(--border);border-radius:999px;background:var(--card);font-weight:800;font-size:.9rem}
.blog-back-link{display:inline-flex;align-items:center;gap:.55rem;margin-top:34px;color:var(--text);font-weight:900;text-decoration:none}
.blog-back-link:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:720px){
    .blog-post-hero{padding:104px 0 34px}
    .blog-post-shell{padding-top:24px;padding-bottom:54px}
    .blog-post-image{border-radius:20px;aspect-ratio:16/10;margin-bottom:24px}
    .blog-post-content{font-size:.98rem;line-height:1.72}
    .blog-post-date{font-size:.82rem}
    .blog-keyword-list{gap:8px}
    .blog-keyword-list span{font-size:.84rem;min-height:34px}
}

.blog-card-body .blog-card-slug{
    display:flex!important;
    align-items:center!important;
    gap:.45rem!important;
    margin:-2px 0 12px!important;
    color:var(--text-muted)!important;
    font-size:.82rem!important;
    font-weight:800!important;
    line-height:1.45!important;
    word-break:break-word!important;
}

/* 20260527-blog-readable: slug oldalak es blog gomb finomhangolas */
.blog-read-btn,
.blog-read-btn:hover,
.blog-read-btn:focus,
.blog-read-btn:focus-visible{
    text-decoration:none !important;
}

.blog-post-shell--article{
    width:min(100% - 32px,1040px);
    max-width:1040px;
    padding-top:clamp(104px,12vw,136px);
    padding-bottom:clamp(56px,8vw,88px);
}

.blog-post-shell--article .blog-post-image{
    width:min(100%,980px);
    margin:0 auto clamp(26px,4vw,42px);
    aspect-ratio:16/8.6;
}

.blog-post-shell--article .blog-post-hero{
    position:static !important;
    top:auto !important;
    left:auto !important;
    width:auto !important;
    z-index:auto !important;
    padding:0;
    margin:0 auto clamp(24px,4vw,36px);
    border-bottom:0;
    background:transparent;
    text-align:center;
}

.blog-post-shell--article .blog-post-hero-inner{
    max-width:860px;
    margin:0 auto;
}

.blog-post-shell--article .breadcrumb{
    justify-content:center;
    margin-bottom:18px;
}

.blog-post-shell--article .blog-post-date{
    margin:0 auto;
}

.blog-post-shell--article .blog-post-hero h1{
    margin:18px auto 16px;
    max-width:860px;
    font-size:clamp(2rem,4.4vw,3.8rem);
    line-height:1.08;
}

.blog-post-shell--article .blog-post-hero p{
    margin:0 auto;
    max-width:760px;
}

.blog-post-shell--article .blog-post-content,
.blog-post-shell--article .blog-post-keywords,
.blog-post-shell--article .blog-back-link{
    max-width:760px;
}

.blog-post-shell--article .blog-post-content,
.blog-post-shell--article .blog-post-keywords{
    margin-left:auto;
    margin-right:auto;
}

.blog-post-shell--article .blog-post-content{
    overflow-wrap:anywhere;
}

.blog-post-shell--article .blog-back-link{
    display:flex;
    width:max-content;
    max-width:100%;
    margin-left:auto;
    margin-right:auto;
}

@media(max-width:720px){
    .blog-post-shell--article{
        width:min(100% - 24px,100%);
        padding-top:92px;
        padding-bottom:52px;
    }

    .blog-post-shell--article .blog-post-image{
        width:100%;
        margin-bottom:24px;
        border-radius:20px;
        aspect-ratio:16/10.5;
    }

    .blog-post-shell--article .blog-post-hero{
        margin-bottom:22px;
    }

    .blog-post-shell--article .breadcrumb{
        gap:.38rem;
        margin-bottom:14px;
        font-size:.82rem;
    }

    .blog-post-shell--article .blog-post-hero h1{
        font-size:clamp(1.65rem,9vw,2.45rem);
        line-height:1.12;
    }

    .blog-post-shell--article .blog-post-hero p{
        font-size:.98rem;
        line-height:1.68;
    }

    .blog-post-shell--article .blog-post-content{
        font-size:1rem;
        line-height:1.78;
    }
}
