/*
Theme Name: Kathis-Malerfachbetrieb
Theme URI: https://kathis-malerfachbetrieb.de
Author: KATL
Description: Custom Theme fuer Kathis-Malerfachbetrieb
Version: 1.0.0
Text Domain: katl
*/

        *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

        :root{
            --primary:#942133;
            --primary-dark:#6B1525;
            --accent:#F9C26C;
            --bg:#FAFAFA;
            --bg-alt:#F0EDED;
            --bg-dark:#1A1A1A;
            --bg-deep:#0D0D0D;
            --text:#1A1A1A;
            --text-light:#555;
            --text-on-dark:#F5F5F5;
            --text-muted:#888;
            --white:#FFF;
            --shadow-md:0 8px 30px rgba(0,0,0,.08);
            --radius-lg:12px;
            --font-display:'Sora',sans-serif;
            --font-body:'Plus Jakarta Sans',sans-serif;
            --section-pad:clamp(100px,14vw,180px);
            --header-h:80px;
        }

        html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}

        body{
            font-family:var(--font-body);
            color:var(--text);
            background:var(--bg);
            line-height:1.7;
            -webkit-font-smoothing:antialiased;
            -webkit-tap-highlight-color:transparent;
            /* iOS Safari: prevent rubber-band overscroll from showing content past edges */
            overscroll-behavior-y:none;
        }

        /* grain */
        body::after{
            content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.022;
            background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
            background-size:200px;
        }

        a{color:var(--primary);text-decoration:none}
        a:hover{text-decoration:underline}

        .container{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,40px)}
        .container--wide{max-width:1400px;margin:0 auto;padding:0 clamp(20px,5vw,40px)}

        .section-label{
            font-family:var(--font-body);font-size:.72rem;font-weight:700;
            letter-spacing:.25em;text-transform:uppercase;color:var(--primary);
            margin-bottom:1rem;display:flex;align-items:center;gap:12px;
        }
        .section-label::before{content:'';width:40px;height:2px;background:var(--primary)}
        .section-label--light{color:var(--accent)}
        .section-label--light::before{background:var(--accent)}

        .section-title{
            font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);
            font-weight:900;line-height:1.12;color:var(--text);margin-bottom:1.2rem;
        }
        .section-title--light{color:var(--white)}

        .section-subtitle{font-size:1.02rem;color:var(--text-light);max-width:540px;line-height:1.8}


        /* buttons */
        .btn{
            display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);
            font-size:.9rem;font-weight:700;text-decoration:none;padding:14px 32px;
            border-radius:100px;border:none;cursor:pointer;transition:background .2s ease;
            letter-spacing:.02em;
        }
        .btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
        .btn--primary{background:var(--primary);color:var(--white)}
        .btn--primary:hover{background:var(--primary-dark)}
        .btn--dark{background:var(--bg-dark);color:var(--white)}
        .btn--dark:hover{background:var(--text-light)}
        .btn--outline{background:transparent;color:var(--text);border:1.5px solid var(--text)}
        .btn--outline:hover{background:var(--text);color:var(--white)}

        /* ===== HEADER (default: subpage style — sticky, always visible) ===== */
        .header{
            position:sticky;top:0;left:0;right:0;height:var(--header-h);
            z-index:1000;display:flex;align-items:center;
            background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
            box-shadow:0 1px 0 rgba(0,0,0,.06);
        }
        .header__inner{
            width:100%;max-width:1400px;margin:0 auto;
            padding:0 clamp(28px,5vw,48px);display:flex;align-items:center;
        }
        .logo{display:flex;align-items:center;text-decoration:none;z-index:1001;flex-shrink:0}
        .logo:hover{text-decoration:none}
        .logo__img{width:auto;height:48px;transition:height .3s ease}
        .logo__img--full{height:48px}
        .logo__img--mini{display:none}

        .header__nav{display:flex;align-items:center;gap:4px;margin-left:clamp(28px,4vw,56px)}
        .header__right{
            display:flex;align-items:center;gap:14px;margin-left:auto;
        }
        .header__icon{
            color:var(--text);text-decoration:none;display:flex;align-items:center;
            padding:6px;transition:color .2s;
        }
        .header__icon svg{width:28px;height:28px}
        .header__icon:hover{color:var(--text);text-decoration:none}
        .nav-tab{
            font-family:var(--font-body);font-size:1rem;font-weight:500;
            color:var(--text-light);text-decoration:none;padding:8px 20px;border-radius:999px;
            transition:color .2s ease, background .2s ease;
        }
        .nav-tab:hover,.nav-tab.active{color:var(--text);background:rgba(0,0,0,.06);text-decoration:none}
        .nav-tab--cta{
            font-weight:600;color:var(--text)!important;background:transparent;
            border:1.5px solid var(--text);border-radius:100px;padding:8px 22px;
            transition:background .2s ease,color .2s ease;
        }
        .nav-tab--cta:hover{background:var(--text);color:var(--white)!important;text-decoration:none}

        /* ===== HEADER — homepage overrides (fixed, transparent, large logo) ===== */
        .home .header{
            position:fixed;height:var(--header-h);
            background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;
            box-shadow:none;transition:background .3s ease,box-shadow .3s ease;
        }
        .home{--header-h:160px}
        .home .logo{margin-left:clamp(40px,6vw,100px)}
        .home .logo__img--full{height:150px}
        .home .header.scrolled{
            background:rgba(255,255,255,.95);
            backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
            box-shadow:0 1px 0 rgba(0,0,0,.06);
            --header-h:88px;
        }
        .home .header.scrolled .logo__img--full{height:68px}
        .home .header.scrolled .nav-tab:hover{color:var(--primary)}
        .home .header.scrolled .header__icon{color:var(--text)}
        .home .header.scrolled .header__icon:hover{color:var(--primary)}
        .home .header.scrolled .nav-tab--cta{background:var(--primary);color:var(--white)!important}
        .home .header__icon{
            position:absolute;right:clamp(140px,12vw,180px);top:50%;transform:translateY(-50%);
            color:var(--white);text-decoration:none;display:flex;align-items:center;
            padding:6px;transition:color .2s;z-index:1001;
        }
        .home .header__icon svg{width:32px;height:32px}
        .home .header__icon:hover{color:var(--text)}
        .home .nav-tab--cta{
            position:absolute;right:clamp(20px,3vw,40px);top:50%;transform:translateY(-50%);
            font-weight:600;color:var(--text)!important;background:var(--white);
            border:none;border-radius:100px;padding:8px 22px;
            transition:background .2s ease,color .2s ease;
            z-index:1001;
        }
        .home .nav-tab--cta:hover{background:var(--text);color:var(--white)!important}

        .hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1001}
        .hamburger span{display:block;width:24px;height:2px;background:var(--text);border-radius:2px;transition:all .3s ease}
        .hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
        .hamburger.active span:nth-child(2){opacity:0}
        .hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

        .mobile-menu{
            display:none;position:fixed;inset:0;background:rgba(255,255,255,.98);
            backdrop-filter:blur(24px);z-index:999;flex-direction:column;align-items:center;
            justify-content:center;gap:8px;opacity:0;pointer-events:none;transition:opacity .3s ease;
        }
        .mobile-menu.open{opacity:1;pointer-events:all}
        .mobile-menu .nav-tab{color:var(--text);font-size:1.3rem;font-family:var(--font-display);font-weight:700;padding:12px 24px}
        .mobile-menu .nav-tab:hover{color:var(--primary);text-decoration:none}

        /* ===== HERO ===== */
        .hero{
            min-height:96vh;display:grid;grid-template-columns:1fr;
            position:relative;overflow:hidden;
        }
        .hero::before{display:none}
        .hero__content{
            display:flex;flex-direction:column;justify-content:center;
            padding:clamp(100px,12vw,160px) clamp(28px,5vw,60px) clamp(60px,8vw,100px);
            padding-left:clamp(100px,22vw,400px);
            max-width:none;
            position:relative;z-index:5;
        }
        .hero__label{
            font-size:.78rem;font-weight:500;color:var(--text-light);line-height:1.6;margin-bottom:20px;
            letter-spacing:.08em;text-transform:uppercase;
        }
        .hero__title{
            font-family:var(--font-display);font-size:clamp(2.6rem,5.5vw,4.2rem);font-weight:900;
            line-height:1.05;color:var(--text);margin-bottom:28px;letter-spacing:-.02em;
        }
        .hero__text{
            font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--text);line-height:1.8;max-width:460px;margin-bottom:44px;font-weight:500;
        }
        .hero__actions{
            display:flex;gap:18px;flex-wrap:wrap;
        }
        .hero__actions .btn--primary{font-size:1.05rem;padding:16px 36px}
        .hero__actions .btn--outline{color:var(--text);border-color:var(--text);font-size:1.05rem;padding:16px 36px}
        .hero__actions .btn--outline:hover{background:var(--text);color:var(--white)}

        .hero__image-wrap{
            position:absolute;inset:0;z-index:0;overflow:hidden;
        }
        .hero__image-wrap::after{display:none}
        .hero__image{
            position:absolute;inset:0;
            width:100%;height:100%;object-fit:cover;display:block;
            object-position:center top;
        }
        .hero__image-wrap::before{display:none}

        /* ===== FOKUS ===== */
        .fokus{padding:var(--section-pad) 0;background:var(--bg-alt)}
        .fokus__grid{
            display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr;
            gap:16px;
        }
        .fokus__hero{
            grid-row:1 / -1;border-radius:24px;overflow:hidden;
            background:var(--bg-dark);position:relative;
            display:flex;flex-direction:column;justify-content:flex-end;
            padding:clamp(32px,4vw,48px);min-height:420px;
        }
        .fokus__hero-text{
            font-family:var(--font-display);font-size:clamp(1.5rem,2.8vw,2.2rem);
            font-weight:800;color:var(--white);line-height:1.25;
        }
        .fokus__hero-sub{
            font-size:.88rem;color:rgba(255,255,255,.5);margin-top:14px;line-height:1.6;
        }
        .fokus__hero-pill{
            display:inline-flex;align-items:center;gap:8px;margin-top:24px;padding:10px 22px;
            font-size:.82rem;font-weight:600;color:var(--bg-dark);
            background:var(--white);border-radius:100px;
            text-decoration:none;transition:all .2s;width:fit-content;
        }
        .fokus__hero-pill svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
        .fokus__hero-pill:hover{background:var(--accent);color:var(--text);text-decoration:none}
        .fokus__tile{
            background:var(--white);border-radius:24px;
            padding:clamp(24px,3vw,32px);
            display:flex;flex-direction:column;justify-content:space-between;
            transition:transform .3s ease,box-shadow .3s ease;
        }
        .fokus__tile:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.06)}
        .fokus__tile--accent{background:var(--primary)}
        .fokus__tile--accent .fokus__tile-title{color:var(--white)}
        .fokus__tile--accent .fokus__tile-desc{color:rgba(255,255,255,.7)}
        .fokus__tile--accent .fokus__tile-icon{background:rgba(255,255,255,.15);color:var(--white)}
        .fokus__tile-icon{
            width:44px;height:44px;border-radius:50%;
            display:flex;align-items:center;justify-content:center;
            background:var(--bg-alt);color:var(--text);margin-bottom:auto;
        }
        .fokus__tile-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
        .fokus__tile-title{
            font-family:var(--font-display);font-size:clamp(.92rem,1.4vw,1.05rem);
            font-weight:700;color:var(--text);margin-top:clamp(20px,3vw,32px);line-height:1.3;
        }
        .fokus__tile-desc{
            font-size:.78rem;color:var(--text-muted);line-height:1.6;margin-top:6px;
        }

        /* ===== ERFAHRUNG ===== */
        .weg{position:relative;overflow:hidden;min-height:90vh;display:flex;align-items:center}

        /* Bild — volle Breite */
        .weg__photo-wrap{position:absolute;inset:0;z-index:0;background:#1A1A1A;overflow:hidden}
        .weg__photo{
            width:100%;height:100%;object-fit:cover;object-position:center center;display:block;
            position:relative;z-index:1;
        }
        .weg__photo-bg{
            position:absolute;inset:-30px;z-index:0;
            background-size:cover;background-position:center;
            filter:blur(30px) brightness(.55);
        }
        .weg__photo-wrap::after{display:none}

        /* Info rechts als Karte ueber dem Bild */
        .weg__info{
            position:relative;z-index:2;
            background:var(--white);
            border-radius:24px;
            padding:clamp(36px,4.5vw,48px);
            margin:clamp(40px,6vw,80px) clamp(32px,5vw,80px) clamp(40px,6vw,80px) auto;
            max-width:480px;
            box-shadow:0 30px 80px rgba(0,0,0,.18), 0 0 0 1px rgba(0,0,0,.04);
        }
        .weg__headline{
            font-family:var(--font-display);font-size:clamp(1.4rem,2.8vw,1.9rem);
            font-weight:800;color:var(--text);line-height:1.3;margin-bottom:clamp(10px,1.5vw,14px);
        }
        .weg__headline span{color:var(--primary)}
        .weg__sub{
            font-family:var(--font-body);font-size:.92rem;color:var(--text-light);
            line-height:1.7;margin-bottom:clamp(24px,3vw,32px);max-width:420px;
        }

        /* Timeline */
        .weg__tl{display:flex;flex-direction:column;gap:0;position:relative;padding-left:20px;
            border-left:2px solid var(--bg-alt);margin-left:5px;
        }
        .weg__tl::before{display:none}
        .weg__tl-item{
            display:flex;align-items:flex-start;gap:14px;
            padding-bottom:clamp(16px,2vw,22px);position:relative;
        }
        .weg__tl-item:last-child{padding-bottom:0}
        .weg__tl-dot{
            width:10px;height:10px;border-radius:50%;flex-shrink:0;
            border:2px solid var(--bg-alt);background:var(--white);
            margin-top:5px;position:relative;left:-26px;margin-right:-26px;
            z-index:1;transition:all .3s ease;box-sizing:border-box;
        }
        .weg__tl-item:hover .weg__tl-dot{
            border-color:var(--accent);background:var(--accent);
            box-shadow:0 0 0 3px rgba(249,194,108,.15);
        }
        .weg__tl-item:last-child .weg__tl-dot{
            border-color:var(--primary);background:var(--primary);
            box-shadow:0 0 0 3px rgba(148,33,51,.15);
        }
        .weg__tl-year{
            font-family:var(--font-display);font-weight:700;font-size:.88rem;
            color:var(--text);letter-spacing:.02em;
        }
        .weg__tl-item:last-child .weg__tl-year{color:var(--primary)}
        .weg__tl-text{
            font-size:.82rem;color:var(--text-muted);line-height:1.5;margin-top:2px;
        }
        .weg__tl-item:hover .weg__tl-text{color:var(--text-light)}

        .weg__name-card{
            position:absolute;bottom:clamp(40px,6vw,80px);left:clamp(32px,5vw,80px);
            z-index:2;background:none;padding:0;box-shadow:none;
        }
        .weg__name-card-name{
            font-family:var(--font-display);font-size:clamp(2.2rem,4.5vw,3.2rem);font-weight:900;
            color:var(--white);line-height:1.15;
            text-shadow:0 2px 20px rgba(0,0,0,.6);
        }
        .weg__name-card-role{
            font-size:clamp(1rem,1.8vw,1.3rem);color:rgba(255,255,255,.8);margin-top:8px;
            text-shadow:0 2px 12px rgba(0,0,0,.5);
        }
        .weg__name-card-role span{color:var(--accent);font-weight:600}
        .weg__docs{display:flex;flex-direction:column;gap:8px;margin-top:20px}
        .weg__doc-btn{
            display:inline-flex;align-items:center;gap:10px;
            font-family:var(--font-body);font-size:.78rem;font-weight:500;
            color:rgba(255,255,255,.75);background:none;
            border:none;border-radius:0;
            padding:6px 0;text-decoration:none;
            transition:all .2s ease;
            text-shadow:0 1px 6px rgba(0,0,0,.4);
            border-bottom:1px solid rgba(255,255,255,.1);
        }
        .weg__doc-btn:last-child{border-bottom:none}
        .weg__doc-btn:hover{color:var(--white)}
        .weg__doc-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;opacity:.5;transition:opacity .2s}
        .weg__doc-btn:hover svg{opacity:1}

        /* ===== LEISTUNGEN ===== */
        .services{padding:var(--section-pad) 0;background:var(--bg)}

        .services__headline{
            font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);font-weight:900;
            line-height:1.15;color:var(--text);text-align:center;max-width:640px;
            margin:0 auto clamp(48px,8vw,80px);
        }

        /* Pill Tabs */
        .pill-tabs{
            display:flex;flex-wrap:wrap;justify-content:center;
            gap:10px;margin-bottom:clamp(32px,5vw,56px);
        }
        .pill-tab{
            font-family:var(--font-display);font-size:clamp(.78rem,1vw,.88rem);
            font-weight:600;color:var(--text-light);background:var(--bg-alt);
            border:2px solid transparent;border-radius:999px;
            padding:10px 24px;cursor:pointer;transition:all .3s ease;
            white-space:nowrap;user-select:none;
        }
        .pill-tab:hover{
            color:var(--primary);border-color:var(--primary);
        }
        .pill-tab--active{
            background:var(--primary);color:var(--white);border-color:var(--primary);
        }
        .pill-tab--active:hover{
            background:var(--primary-dark);border-color:var(--primary-dark);color:var(--white);
        }

        .bento{
            display:grid;grid-template-columns:repeat(3,1fr);
            gap:clamp(16px,2vw,24px);
        }
        .bento__card{
            position:relative;border-radius:20px;overflow:hidden;
            min-height:340px;display:flex;flex-direction:column;justify-content:flex-end;
            transition:transform .4s ease,box-shadow .4s ease;cursor:default;
        }
        .bento__card--hidden{display:none}
        .bento__card:hover{
            transform:translateY(-2px);
            box-shadow:0 8px 24px rgba(0,0,0,.12);
        }
        .bento__card:hover .bento__img{transform:scale(1.02)}
        .bento__card--wide{grid-column:span 2;min-height:380px}
        .bento__card--full{grid-column:1 / -1;min-height:360px}
        .bento__card--tall{grid-row:span 2;min-height:auto}
        .bento__img{
            position:absolute;inset:0;width:100%;height:100%;
            object-fit:cover;transition:transform .6s ease;
            background:#1A1A1A;z-index:1;
        }
        .bento__img-bg{
            position:absolute;inset:-30px;z-index:0;
            background-size:cover;background-position:center;
            filter:blur(24px) brightness(.55);
        }
        .bento__overlay{
            position:relative;z-index:1;
            padding:clamp(28px,3.5vw,40px);
            background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 50%,transparent 100%);
            margin-top:auto;
        }
        .bento__num{
            display:inline-block;font-family:var(--font-display);font-size:.68rem;
            font-weight:700;color:var(--white);background:var(--primary);
            padding:4px 12px;border-radius:999px;margin-bottom:14px;
            letter-spacing:.06em;
        }
        .bento__title{
            font-family:var(--font-display);font-size:clamp(1.15rem,1.8vw,1.4rem);
            font-weight:800;color:var(--white);line-height:1.25;margin-bottom:8px;
            text-shadow:0 2px 10px rgba(0,0,0,.4);
        }
        .bento__card--wide .bento__title{font-size:clamp(1.3rem,2.4vw,1.7rem)}
        .bento__desc{
            font-family:var(--font-body);font-size:clamp(.82rem,1vw,.9rem);
            color:rgba(255,255,255,.8);line-height:1.7;
            text-shadow:0 1px 4px rgba(0,0,0,.3);
        }

        /* ===== REFERENZEN ===== */
        .referenzen{padding:var(--section-pad) 0;background:var(--bg);overflow:hidden}

        .referenzen__header{
            display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
            margin-bottom:clamp(40px,6vw,64px);
        }
        .referenzen__headline{
            font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);font-weight:900;
            line-height:1.15;color:var(--text);margin:0 0 8px;
        }
        .referenzen__sub{
            font-size:.95rem;color:var(--text-muted);max-width:460px;
            line-height:1.7;margin:0;
        }
        .referenzen__arrows{display:flex;gap:8px;flex-shrink:0}
        .referenzen__arrow{
            width:48px;height:48px;border-radius:50%;border:2px solid var(--text);
            background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;
            transition:background .2s ease,border-color .2s ease,color .2s ease;
            color:var(--text);
        }
        .referenzen__arrow:hover{background:var(--text);color:var(--white)}
        .referenzen__arrow svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

        .referenzen__slider{
            overflow:visible;
            padding:20px 0;
        }
        .referenzen__track{
            display:flex;gap:24px;
            width:max-content;
            transition:transform .5s cubic-bezier(.4,0,.2,1);
        }

        .ref__card{
            flex-shrink:0;width:min(920px,88vw);
            display:grid;grid-template-columns:1.4fr 1fr;
            border-radius:20px;overflow:hidden;
            background:var(--bg-alt);cursor:pointer;
            transition:transform .5s ease, opacity .5s ease, filter .5s ease;
            opacity:.4;filter:blur(3px);transform:scale(.92);
        }
        .ref__card--active{
            opacity:1;filter:none;transform:scale(1);
            box-shadow:0 16px 48px rgba(0,0,0,.1);
        }
        .ref__card--active:hover .ref__card-img>div{transform:scale(1.04)}
        .ref__card-img{
            width:100%;height:100%;max-height:380px;overflow:hidden;
            background:#1A1A1A;position:relative;
        }
        .ref__card-img>div:not(.ref__card-img-bg),
        .ref__card-img>img{
            width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;
            position:relative;z-index:1;
        }
        .ref__card-img-bg{
            position:absolute;inset:-30px;z-index:0;
            background-size:cover;background-position:center;
            filter:blur(24px) brightness(.55);
        }

        .ref__card:nth-child(1) .ref__card-img>div,.ref__card:nth-child(6) .ref__card-img>div{background:linear-gradient(160deg,#d5cec7 0%,#c4bbb2 100%)}
        .ref__card:nth-child(2) .ref__card-img>div,.ref__card:nth-child(7) .ref__card-img>div{background:linear-gradient(160deg,#e0d6cc 0%,#c9bfb5 100%)}
        .ref__card:nth-child(3) .ref__card-img>div,.ref__card:nth-child(8) .ref__card-img>div{background:linear-gradient(160deg,#ccd5d9 0%,#b5c0c6 100%)}
        .ref__card:nth-child(4) .ref__card-img>div,.ref__card:nth-child(9) .ref__card-img>div{background:linear-gradient(160deg,#d9d0c7 0%,#c2b8ad 100%)}
        .ref__card:nth-child(5) .ref__card-img>div,.ref__card:nth-child(10) .ref__card-img>div{background:linear-gradient(160deg,#d1d5cc 0%,#bcc2b5 100%)}

        .ref__card-body{
            padding:clamp(32px,4vw,48px);display:flex;flex-direction:column;justify-content:center;
        }
        .ref__card-tag{
            font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
            color:var(--primary);margin-bottom:14px;
        }
        .ref__card-title{
            font-family:var(--font-display);font-size:clamp(1.3rem,2.4vw,1.7rem);
            font-weight:800;color:var(--text);line-height:1.3;margin-bottom:14px;
        }
        .ref__card-text{
            font-size:.92rem;color:var(--text-muted);line-height:1.7;
        }

        .referenzen__bottom{
            display:flex;align-items:center;justify-content:space-between;
            margin-top:clamp(32px,5vw,56px);flex-wrap:wrap;gap:16px;
        }
        .referenzen__count{font-size:.85rem;color:var(--text-muted)}
        .referenzen__count strong{color:var(--text);font-weight:700}

        /* ===== KONTAKT ===== */
        .contact{padding:var(--section-pad) 0;background:var(--bg)}

        .contact__grid{
            display:grid;grid-template-columns:.85fr 1fr;
            gap:clamp(16px,2.5vw,24px);align-items:stretch;
        }
        .contact__info{
            background:var(--primary);border-radius:var(--radius-lg);
            padding:clamp(32px,4vw,48px);
            display:flex;flex-direction:column;justify-content:space-between;
        }
        .contact__info-title{
            font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);
            font-weight:800;color:var(--white);line-height:1.2;margin-bottom:16px;
        }
        .contact__info-sub{
            font-family:var(--font-body);font-size:clamp(.88rem,1.2vw,.98rem);
            color:rgba(255,255,255,.7);line-height:1.6;
        }
        .contact__info-details{margin-top:auto;padding-top:clamp(28px,4vw,48px)}
        .contact__info-item{
            display:flex;align-items:center;gap:12px;margin-bottom:14px;
        }
        .contact__info-item:last-child{margin-bottom:0}
        .contact__info-item svg{
            width:18px;height:18px;stroke:rgba(255,255,255,.6);fill:none;
            stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;
        }
        .contact__info-item span,
        .contact__info-item a{
            font-family:var(--font-body);font-size:.88rem;
            color:rgba(255,255,255,.8);text-decoration:none;transition:color .2s;
        }
        .contact__info-item a:hover{color:var(--white)}

        .contact__form{
            background:var(--bg-dark);border-radius:var(--radius-lg);
            padding:clamp(28px,4vw,44px);
        }
        .form__group{margin-bottom:18px}
        .form__label{
            display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;
            letter-spacing:.12em;color:rgba(255,255,255,.4);margin-bottom:7px;
        }
        .form__input,.form__textarea{
            width:100%;padding:13px 16px;background:rgba(255,255,255,.06);
            border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--white);
            font-family:var(--font-body);font-size:.95rem;transition:all .3s ease;outline:none;
        }
        .form__input::placeholder,.form__textarea::placeholder{color:rgba(255,255,255,.2)}
        .form__input:focus,.form__textarea:focus{
            border-color:var(--primary);background:rgba(255,255,255,.1);
            box-shadow:0 0 0 3px rgba(148,33,51,.2);
        }
        .form__textarea{min-height:110px;resize:vertical}
        .form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}

        /* select */
        .form__select{
            width:100%;padding:13px 16px;padding-right:40px;
            background:rgba(255,255,255,.06);
            border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--white);
            font-family:var(--font-body);font-size:.95rem;transition:all .3s ease;outline:none;
            appearance:none;-webkit-appearance:none;
            background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
            background-repeat:no-repeat;background-position:right 14px center;
            cursor:pointer;
        }
        .form__select:focus{
            border-color:var(--primary);background-color:rgba(255,255,255,.1);
            box-shadow:0 0 0 3px rgba(148,33,51,.2);
        }
        .form__select option{background:var(--bg-dark);color:var(--white)}

        .form__success{
            background:rgba(76,175,80,.12);border:1px solid rgba(76,175,80,.3);
            border-radius:8px;padding:14px 18px;margin-bottom:22px;color:#81C784;
            font-weight:500;display:flex;align-items:center;gap:10px;
        }
        .form__success svg{width:20px;height:20px;stroke:#81C784;fill:none;stroke-width:2;flex-shrink:0}

        /* ===== SOCIAL ICONS ===== */
        .social{display:flex;align-items:center;gap:8px}
        .social__link{
            display:flex;align-items:center;justify-content:center;
            width:32px;height:32px;border-radius:50%;
            color:var(--text-light);transition:color .2s,background .2s;
        }
        .social__link:hover{color:var(--primary)}
        .social__link svg{width:16px;height:16px;fill:currentColor}
        /* ===== FOOTER ===== */
        .footer{background:var(--bg-deep);padding:clamp(48px,8vw,80px) 0 0}

        /* CTA Strip */
        .footer__cta{
            display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,3vw,32px);
            padding:clamp(28px,4vw,44px) clamp(28px,4vw,48px);
            background:var(--primary);border-radius:var(--radius-lg);
            margin-bottom:clamp(48px,6vw,72px);
            position:relative;top:calc(clamp(28px,4vw,44px) * -1);
        }
        .footer__cta-text{
            font-family:var(--font-display);font-size:clamp(1.1rem,2.5vw,1.6rem);
            font-weight:700;color:var(--white);line-height:1.3;
        }
        .footer__cta-btn{
            display:inline-flex;align-items:center;gap:8px;
            padding:14px 28px;background:var(--white);color:var(--primary);
            font-family:var(--font-display);font-size:.88rem;font-weight:700;
            text-decoration:none;border-radius:8px;white-space:nowrap;
            transition:transform .2s,box-shadow .2s;flex-shrink:0;
        }
        .footer__cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.2)}
        .footer__cta-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}

        /* Main grid */
        .footer__grid{
            display:grid;grid-template-columns:1.6fr 1fr 1fr;
            gap:clamp(24px,4vw,56px);
            padding-bottom:clamp(40px,6vw,64px);
        }

        /* Brand column */
        .footer .logo__img{height:240px;filter:brightness(0) invert(1);margin-bottom:16px}
        .footer__desc{
            font-family:var(--font-body);font-size:.85rem;color:rgba(255,255,255,.5);
            line-height:1.65;margin-bottom:20px;max-width:280px;
        }
        .footer__socials{display:flex;gap:10px}
        .footer__social{
            width:34px;height:34px;display:flex;align-items:center;justify-content:center;
            color:rgba(255,255,255,.4);background:rgba(255,255,255,.06);border-radius:50%;
            text-decoration:none;transition:color .2s,background .2s;
        }
        .footer__social:hover{color:var(--white);background:var(--primary)}
        .footer__social svg{width:16px;height:16px;fill:currentColor}

        /* Columns */
        .footer__col-title{
            font-family:var(--font-display);font-size:.78rem;font-weight:700;
            color:var(--white);text-transform:uppercase;letter-spacing:.1em;
            margin-bottom:clamp(14px,2vw,22px);
        }
        .footer__col-links{display:flex;flex-direction:column;gap:10px;list-style:none}
        .footer__col-links a,
        .footer__col-links span{
            font-family:var(--font-body);font-size:.84rem;
            color:rgba(255,255,255,.45);text-decoration:none;transition:color .2s;
        }
        .footer__col-links a:hover{color:var(--accent)}

        /* Contact column */
        .footer__contact-item{
            display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;
        }
        .footer__contact-item svg{
            width:16px;height:16px;stroke:rgba(255,255,255,.35);fill:none;
            stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
            flex-shrink:0;margin-top:2px;
        }
        .footer__contact-item span,
        .footer__contact-item a{
            font-family:var(--font-body);font-size:.84rem;
            color:rgba(255,255,255,.45);text-decoration:none;line-height:1.5;
            transition:color .2s;
        }
        .footer__contact-item a:hover{color:var(--white)}

        /* Bottom bar */
        .footer__divider{border:none;border-top:1px solid rgba(255,255,255,.08);margin:0}
        .footer__bottom{
            display:flex;align-items:center;justify-content:space-between;
            padding:18px 0;flex-wrap:wrap;gap:10px;
        }
        .footer__copy{font-size:.75rem;color:rgba(255,255,255,.3);font-family:var(--font-body)}
        .footer__legal{display:flex;gap:20px}
        .footer__legal a{
            font-size:.75rem;color:rgba(255,255,255,.3);text-decoration:none;
            font-family:var(--font-body);transition:color .2s;
        }
        .footer__legal a:hover{color:var(--white)}

        /* ===== PAGE CONTENT (subpages) ===== */
        .page-title{
            max-width:900px;margin:0 auto;padding:clamp(48px,8vw,80px) clamp(20px,5vw,40px) 0;
        }
        .page-title h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-bottom:8px;letter-spacing:-.02em}
        .content{
            max-width:900px;margin:0 auto;padding:clamp(24px,4vw,48px) clamp(20px,5vw,40px) clamp(60px,8vw,100px);
        }
        .content h2{font-family:var(--font-display);font-size:1.2rem;font-weight:700;margin:2em 0 .6em;color:var(--text)}
        .content h2:first-child{margin-top:0}
        .content h3{font-family:var(--font-display);font-size:1rem;font-weight:700;margin:1.4em 0 .4em}
        .content p{margin-bottom:1em;color:var(--text-light)}
        .content ul{margin:0 0 1em 1.5em;color:var(--text-light)}
        .content li{margin-bottom:.4em}

        /* ===== TOUCH DEVICES ===== */
        @media(hover:none){
            .fokus__tile:hover{transform:none;box-shadow:none}
            .bento__card:hover{transform:none;box-shadow:none}
            .bento__card:hover .bento__img{transform:none}
            .footer__cta-btn:hover{transform:none;box-shadow:none}
        }

        /* ===== RESPONSIVE ===== */
        @media(max-width:1024px){
            .bento{grid-template-columns:repeat(2,1fr)}
            .ref__card{width:min(500px,80vw)}
            .fokus__grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
            .fokus__hero{grid-column:1 / -1;grid-row:auto;min-height:300px}
        }

        @media(max-width:768px){
            :root{--header-h:88px}
            .home{--header-h:88px}
            /* Mobile header — ALWAYS fixed at top, covers full width, solid white */
            .header,
            .home .header{
                position:fixed!important;
                top:0!important;left:0!important;right:0!important;
                z-index:1000;
                height:calc(var(--header-h) + env(safe-area-inset-top, 0px));
                padding-top:env(safe-area-inset-top, 0px);
                background:#fff;
                backdrop-filter:none;-webkit-backdrop-filter:none;
                box-shadow:0 1px 0 rgba(0,0,0,.06);
                box-sizing:border-box;
            }
            .home .header.scrolled{--header-h:88px;background:#fff}
            /* Push content below fixed header on subpages (homepage hero fills edge-to-edge) */
            body:not(.home){padding-top:calc(var(--header-h) + env(safe-area-inset-top, 0px))}
            .header__nav{display:none}
            .nav-tab--cta{display:none}
            .hamburger{display:flex}
            /* iOS Safari: remove ALL stacked position:fixed siblings that interfere with header.
               Grain pseudo-element disabled on mobile (was z-index:9999, fixed, full viewport).
               Mobile menu kept fixed but backdrop-filter removed when closed (it triggers GPU compositing layer
               which conflicts with header's fixed positioning on iOS Safari). */
            body::after{display:none}
            .mobile-menu{display:flex;padding-top:calc(var(--header-h) + env(safe-area-inset-top, 0px));backdrop-filter:none;-webkit-backdrop-filter:none;visibility:hidden}
            .mobile-menu.open{visibility:visible;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
            .logo{margin-left:0}
            .home .logo{margin-left:0}
            .logo__img--full{height:56px}
            .home .logo__img--full{height:56px}
            .home .header.scrolled .logo__img--full{height:56px}
            .header__icon{position:static;transform:none;margin-right:12px;color:var(--text)}
            .home .header__icon{position:static;transform:none;margin-right:12px;color:var(--text)}
            /* Hero */
            .hero{min-height:auto}
            .hero__content{padding:clamp(190px,28vw,250px) clamp(84px,21vw,120px) clamp(60px,8vw,80px);max-width:100%;padding-left:clamp(20px,5vw,40px);align-items:flex-end;text-align:right}
            .hero__title{font-size:clamp(.82rem,3.1vw,1.2rem);color:var(--white);text-shadow:0 2px 12px rgba(0,0,0,.4);max-width:85%;margin-bottom:24px;line-height:1.15}
            .hero__text{color:var(--white);text-shadow:0 1px 8px rgba(0,0,0,.3);max-width:85%;font-size:1.08rem;line-height:1.55;margin-bottom:28px}
            .hero__image-wrap::before{display:none}
            .hero__image{object-position:right 50%}
            .hero__actions{width:100%;align-self:stretch;justify-content:flex-end}
            .hero__actions .btn--primary,
            .hero__actions .btn--outline{padding:14px 28px;font-size:.95rem;min-height:48px}
            .hero__actions .btn--outline{color:var(--white);border-color:var(--white)}
            .hero__actions .btn--outline:hover{background:var(--white);color:var(--text)}
            /* Fokus */
            .fokus__grid{grid-template-columns:1fr;grid-template-rows:auto}
            .fokus__hero{grid-row:auto;min-height:300px}
            /* Weg / Erfahrung */
            .weg{min-height:auto;display:flex;flex-direction:column}
            .weg__photo-wrap{position:relative;height:50vh;min-height:300px;order:1}
            .weg__photo{transform:none;object-position:center 20%}
            .weg__name-card{position:relative;bottom:auto;left:auto;padding:24px 16px 32px;order:2;
                background:var(--bg);margin:0}
            .weg__name-card-role{margin-top:10px}
            .weg__name-card-name{font-size:clamp(1.6rem,6vw,2.2rem);color:var(--text);text-shadow:none}
            .weg__name-card-role{color:var(--text-light);text-shadow:none}
            .weg__name-card-role span{color:var(--primary)}
            .weg__doc-btn{color:var(--text-light);text-shadow:none;border-bottom-color:var(--bg-alt)}
            .weg__doc-btn:hover{color:var(--text)}
            .weg__doc-btn svg{stroke:var(--text-light)}
            .weg__info{max-width:100%;margin:0 10px 24px;order:3}
            /* Leistungen */
            .bento{grid-template-columns:1fr}
            .bento__card--wide{grid-column:span 1}
            .bento__card{min-height:240px}
            .bento__card--wide{min-height:240px}
            .bento__overlay{padding:clamp(20px,3vw,28px)}
            /* Referenzen */
            .ref__card{width:92vw;grid-template-columns:1fr}
            .ref__card-body{padding:clamp(20px,3vw,32px)}
            .referenzen__track{gap:16px}
            /* Kontakt */
            .contact .container{padding:0 clamp(10px,3vw,20px)}
            .contact__grid{grid-template-columns:1fr}
            .form__row{grid-template-columns:1fr}
            .form__input,.form__textarea,.form__select{padding:15px 16px;font-size:16px}
            .contact__form .btn--primary{min-height:52px;font-size:1rem}
            /* Footer — mobile: stacked, centered, bigger */
            .footer__grid{grid-template-columns:1fr;text-align:center;justify-items:center;gap:36px}
            .footer__grid > div{width:100%}
            .footer .logo{display:inline-flex;justify-content:center}
            .footer .logo__img{height:200px;margin-left:auto;margin-right:auto}
            .footer__desc{margin-left:auto;margin-right:auto}
            .footer__socials{justify-content:center}
            .footer__col-title{font-size:.95rem;letter-spacing:.12em}
            .footer__col-links{align-items:center}
            .footer__col-links a,
            .footer__col-links span{font-size:1rem;line-height:1.6}
            .footer__contact-item{justify-content:center;align-items:center;margin-bottom:12px}
            .footer__contact-item span,
            .footer__contact-item a{font-size:1rem;line-height:1.55}
            .footer__bottom{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:18px 0}
            .footer__copy{font-size:.85rem}
            .footer__legal{justify-content:center;gap:24px}
            .footer__legal a{font-size:.85rem}
            .footer__cta{flex-direction:column;text-align:center;align-items:stretch}
            .footer__cta-btn{justify-content:center}
            /* Subpage content */
            .content p{font-size:.92rem;line-height:1.65}
            .content ul{font-size:.92rem}
        }

        /* WordPress admin bar offset — only when admin bar is fixed at top.
           At ≤600px WP makes the admin bar position:absolute (it scrolls with the page),
           so the header must stay at top:0 to avoid a 46px gap appearing on scroll. */
        @media(min-width:601px) and (max-width:768px){
            body.admin-bar .header,
            body.admin-bar .home .header{top:46px}
        }

        @media(max-width:480px){
            /* Hero */
            .hero__content{padding:100px 16px 48px;padding-left:16px}
            .hero{min-height:85vh}
            .hero__actions{flex-direction:column}
            .hero__actions .btn--primary,
            .hero__actions .btn--outline{width:100%;justify-content:center;text-align:center}
            /* Fokus */
            .fokus__hero{min-height:220px;padding:24px}
            .fokus__tile{padding:20px}
            /* Leistungen */
            .pill-tabs{gap:8px}
            .pill-tab{padding:8px 16px;font-size:.75rem}
            .bento__card{min-height:200px}
            /* Referenzen */
            .ref__card{width:92vw;grid-template-columns:1fr}
            .referenzen__header{flex-direction:column;align-items:flex-start}
            .ref__card-body{padding:16px 20px}
            /* Kontakt */
            .contact__info{padding:24px}
            .contact__form{padding:24px}
            /* Footer — small phones: keep centered, scale logo down a touch */
            .footer .logo__img{height:170px}
            .footer__cta{padding:20px;margin-bottom:clamp(32px,4vw,48px)}
            .footer__cta-btn{padding:12px 24px;font-size:.82rem}
            .footer__bottom{padding:14px 0}
            /* Subpage content */
            .page-title h1{font-size:clamp(1.6rem,6vw,2rem)}
            .content{padding:20px 16px 48px}
            .content h2{font-size:1.05rem;margin:1.5em 0 .5em}
        }

        /* ===== GUTENBERG BLOCK OVERRIDES (Homepage) ===== */
        .home .wp-block-cover.hero{
            margin:0;padding:0;border-radius:0;overflow:hidden;min-height:96vh;
        }
        .home .wp-block-cover.hero .wp-block-cover__background{display:none!important}
        .home .wp-block-cover.hero .wp-block-cover__inner-container{
            max-width:none!important;width:100%!important;
            display:flex;flex-direction:column;justify-content:center;
            padding:clamp(100px,12vw,160px) clamp(28px,5vw,60px) clamp(60px,8vw,100px);
            padding-left:clamp(100px,22vw,400px);
            position:relative;z-index:5;
        }
        .home .wp-block-cover.hero h1.hero__title{
            font-family:var(--font-display);font-size:clamp(2.6rem,5.5vw,4.2rem);
            font-weight:900;line-height:1.05;letter-spacing:-.02em;
            color:var(--text)!important;margin:0 0 28px;padding:0;
        }
        .home .wp-block-cover.hero p.hero__text{
            font-family:var(--font-body);font-size:clamp(1.05rem,1.6vw,1.2rem);
            color:var(--text)!important;max-width:460px;margin:0 0 44px;line-height:1.8;font-weight:500;
        }
        .home .wp-block-cover.hero .wp-block-buttons.hero__actions{
            display:flex!important;flex-direction:row!important;gap:18px;flex-wrap:wrap;margin:0;
        }
        .home .wp-block-cover.hero .wp-block-button{
            margin:0!important;background:none!important;border:none!important;padding:0!important;
            border-radius:0!important;width:auto!important;
        }
        .home .wp-block-cover.hero .wp-block-button__link{
            font-family:var(--font-body)!important;padding:16px 36px!important;border-radius:100px!important;
            font-weight:600!important;font-size:1.05rem!important;transition:all .2s ease;
            display:inline-flex!important;align-items:center;gap:8px;text-decoration:none!important;
            width:auto!important;
        }
        .home .wp-block-cover.hero .btn--primary .wp-block-button__link{
            background:var(--primary)!important;color:var(--white)!important;border:none!important;
        }
        .home .wp-block-cover.hero .btn--primary .wp-block-button__link:hover{background:var(--primary-dark)!important}
        .home .wp-block-cover.hero .btn--outline .wp-block-button__link{
            background:transparent!important;color:var(--text)!important;
            border:1.5px solid var(--text)!important;
        }
        .home .wp-block-cover.hero .btn--outline .wp-block-button__link:hover{
            background:var(--text)!important;color:var(--white)!important;
        }

        /* Weg section — legacy Gutenberg group fallback (kept for backwards compat) */
        .home .wp-block-group.weg{position:relative;min-height:80vh;overflow:hidden;margin:0;padding:0}
        .home .weg .wp-block-image.weg__photo-wrap{position:absolute;inset:0;margin:0}
        .home .weg .wp-block-image.weg__photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 30%}

        @media(max-width:768px){
            .home .wp-block-cover.hero .wp-block-cover__inner-container{
                padding:clamp(190px,28vw,250px) clamp(84px,21vw,120px) clamp(60px,8vw,80px);
                padding-left:clamp(20px,5vw,40px);
                align-items:flex-end;text-align:right;
            }
            .home .wp-block-cover.hero h1.hero__title{
                font-size:clamp(.82rem,3.1vw,1.2rem)!important;color:var(--white)!important;
                text-shadow:0 2px 12px rgba(0,0,0,.4);max-width:85%;margin-bottom:24px;line-height:1.15;
            }
            .home .wp-block-cover.hero p.hero__text{
                color:var(--white)!important;text-shadow:0 1px 8px rgba(0,0,0,.3);
                max-width:85%;font-size:1.08rem;line-height:1.55;margin-bottom:28px;
            }
            .home .wp-block-cover.hero .btn--outline .wp-block-button__link{
                color:var(--white)!important;border-color:var(--white)!important;
            }
            .home .wp-block-cover.hero .btn--outline .wp-block-button__link:hover{
                background:var(--white)!important;color:var(--text)!important;
            }
            .home .wp-block-cover.hero .wp-block-buttons.hero__actions{flex-direction:column}
            .home .wp-block-cover.hero .wp-block-button__link{width:100%;justify-content:center;min-height:48px}
            .home .wp-block-group.weg{min-height:auto;display:flex;flex-direction:column}
            .home .weg .wp-block-image.weg__photo-wrap{position:relative;height:50vh;min-height:300px}
            .home .weg .wp-block-group.weg__info{position:relative;right:auto;top:auto;transform:none;max-width:100%;margin:0 10px 24px}
            .home .weg .wp-block-group.weg__name-card{position:relative;bottom:auto;left:auto;padding:24px 16px 32px;background:var(--bg)}
            .home .weg .weg__name-card-name{color:var(--text);text-shadow:none;font-size:clamp(1.6rem,6vw,2.2rem)}
            .home .weg .weg__name-card-role{color:var(--text-light);text-shadow:none}
        }

        /* ===== DOWNLOADS ===== */
        .katl-downloads{display:flex;flex-direction:column;gap:12px;margin:24px 0}
        .katl-downloads__link{
            display:inline-flex;align-items:center;gap:10px;
            font-family:var(--font-body);font-size:.95rem;font-weight:600;
            color:var(--primary);text-decoration:none;
            padding:12px 20px;border:1.5px solid var(--primary);border-radius:var(--radius-lg);
            transition:all .2s ease;background:transparent;
        }
        .katl-downloads__link:hover{
            background:var(--primary);color:var(--white);text-decoration:none;
        }
        .katl-downloads__link svg{width:20px;height:20px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

        /* ===== WORDPRESS UTILITIES ===== */
        .screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden;word-wrap:normal!important}
        .screen-reader-text:focus{background:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;color:#21759b;display:block;font-size:14px;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
        img{max-width:100%;height:auto}
