/* ReTech IT Block Theme — all main color roles refer to WordPress palette variables. */
:root, body, .wp-site-blocks, .editor-styles-wrapper {
  --rt-ink:var(--wp--preset--color--ink,#11262b);
  --rt-brand:var(--wp--preset--color--brand,#236f5e);
  --rt-mint:var(--wp--preset--color--mint,#c0f3d8);
  --rt-surface:var(--wp--preset--color--surface,#f6f8f5);
  --rt-white:var(--wp--preset--color--white,#fff);
  --rt-muted:var(--wp--preset--color--muted,#526a68);
  --rt-border:var(--wp--preset--color--border,#dfe7df);
  --rt-deep:var(--wp--preset--color--deep,#091b20);
  --rt-font:var(--wp--preset--font-family--system,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif);
  --rt-wide:1260px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:115px}
body{margin:0;color:var(--rt-ink);font-family:var(--rt-font);background:var(--rt-surface);-webkit-font-smoothing:antialiased}
.wp-site-blocks>:not(.wp-block-post-content){margin-block-start:0}
.rt-main,.rt-main>.wp-block-post-content,.rt-main>.wp-block-post-content>*{margin-block-start:0}
.rt-main{padding:0;margin:0;max-width:none}
.rt-main .wp-block-post-content{max-width:none;margin:0}
.rt-main h1,.rt-main h2,.rt-main h3{letter-spacing:-.052em;line-height:1.09}
.rt-main h1,.rt-main h2{font-weight:770;margin:0 0 24px}
.rt-main h2{font-size:clamp(2.4rem,4.2vw,4.8rem)}
.rt-main h3{font-size:clamp(1.35rem,1.8vw,1.7rem);font-weight:740;margin:0 0 12px}
.rt-main p{line-height:1.75;color:var(--rt-muted);margin:0 0 16px}
.rt-main a{transition:opacity .2s,color .2s;}
.rt-main a:hover{opacity:.82}
.rt-main img{max-width:100%;height:auto}
.rt-container{width:min(var(--rt-wide),calc(100% - 88px));margin-inline:auto!important;max-width:none!important}
.rt-eyebrow{color:var(--rt-brand)!important;font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:800;margin-bottom:18px!important}
.rt-eyebrow.rt-on-dark{color:var(--rt-mint)!important}
.rt-pill{display:inline-block;padding:8px 13px;border:1px solid color-mix(in srgb,var(--rt-brand) 18%,var(--rt-white));background:color-mix(in srgb,var(--rt-brand) 6%,var(--rt-white));border-radius:3px}
.rt-green{color:var(--rt-brand)}.rt-mint-text{color:var(--rt-mint)}
.rt-site-header{margin:0!important;background:var(--rt-white);position:relative;z-index:20;box-shadow:0 1px 0 var(--rt-border)}
.rt-topline{min-height:31px;background:var(--rt-deep);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:5px max(22px,calc((100% - 1260px)/2));margin:0!important}
.rt-topline p{margin:0;font-size:10px;letter-spacing:.08em;color:var(--rt-mint);line-height:1.6}
.rt-topline a{color:var(--rt-white);text-decoration:none}
.rt-nav-row{min-height:87px;width:min(var(--rt-wide),calc(100% - 88px));margin:0 auto!important;display:flex;align-items:center;justify-content:space-between;gap:24px}
.rt-brand-group{display:flex;align-items:center;gap:12px;flex-shrink:0}
.rt-site-header .wp-block-site-logo{margin:0}
.rt-site-header .wp-block-site-logo:not(:has(img)){display:none}
.rt-site-header .wp-block-site-logo:has(img)~.wp-block-site-title{display:none}
.rt-site-header .rt-site-name{font-weight:850;font-size:23px;letter-spacing:-.05em;text-transform:uppercase;margin:0;color:var(--rt-ink)}
.rt-site-header .rt-site-name a{color:inherit;text-decoration:none}
.rt-primary-nav{font-size:13px;font-weight:730}
.rt-primary-nav .wp-block-navigation-item__content{color:var(--rt-ink);padding:6px 0}
.rt-primary-nav .wp-block-navigation__container{gap:clamp(12px,2vw,32px)}
.rt-primary-nav .rt-nav-cta .wp-block-navigation-item__content{background:var(--rt-ink);color:var(--rt-white);padding:14px 19px;border-radius:4px}
.rt-primary-nav .rt-nav-cta .wp-block-navigation-item__content:hover{background:var(--rt-brand)}
.rt-main .rt-hero{background:radial-gradient(circle at 80% 30%,color-mix(in srgb,var(--rt-brand) 14%,var(--rt-surface)),transparent 49%),color-mix(in srgb,var(--rt-brand) 4%,var(--rt-surface));padding:78px 0 72px}
.rt-hero-inner{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:34px;min-height:590px}
.rt-display{font-size:clamp(3.5rem,6.6vw,7.1rem)!important;line-height:1.02!important;max-width:730px;letter-spacing:-.075em!important}
.rt-hero-lead{font-size:16px;line-height:1.8!important;max-width:580px}
.rt-hero-meta{margin:27px 0 0!important;font-size:10px;letter-spacing:.08em;font-weight:750}
.rt-buttons{display:flex;flex-wrap:wrap;gap:11px;margin:27px 0 0!important}
.rt-buttons .wp-block-button__link,.rt-form-submit{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;min-height:50px;font-size:13px;gap:12px;font-weight:760;padding:13px 19px;border:1px solid transparent;text-decoration:none;border-radius:4px;line-height:1.3;transition:background .18s,transform .18s,color .18s}
.rt-buttons .wp-block-button__link:hover,.rt-form-submit:hover{transform:translateY(-1px)}
.rt-btn-dark .wp-block-button__link{background:var(--rt-ink);color:var(--rt-white)}
.rt-btn-dark .wp-block-button__link:hover{background:var(--rt-brand);color:var(--rt-white)}
.rt-btn-outline .wp-block-button__link{background:transparent;border-color:color-mix(in srgb,var(--rt-ink) 26%,transparent);color:var(--rt-ink)}
.rt-btn-outline .wp-block-button__link:hover{background:var(--rt-white)}
.rt-btn-mint .wp-block-button__link{background:var(--rt-mint);color:var(--rt-deep)}
.rt-hero-art{position:relative;min-width:0}
.rt-hero-image{margin:0!important;width:100%;line-height:0}
.rt-hero-image img{width:100%;height:auto}
.rt-hero-image-label{position:absolute;top:13%;right:1%;color:var(--rt-brand)!important;font-size:9px;letter-spacing:.12em;font-weight:780}
.rt-trustbar{padding:25px 0;border-bottom:1px solid var(--rt-border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.rt-trust-cell{padding:6px 30px;border-right:1px solid var(--rt-border)}
.rt-trust-cell:first-child{padding-left:0}.rt-trust-cell:last-child{border:0}
.rt-trust-item{font-size:12px!important;color:var(--rt-ink)!important;letter-spacing:.06em;font-weight:800;margin:0 0 4px!important}
.rt-trust-detail{font-size:12px;margin:0!important}
.rt-section{padding:110px 0;margin:0!important}
.rt-white-section{background:var(--rt-white)}
.rt-light{background:var(--rt-surface)}
.rt-section-lead{font-size:17px;max-width:720px;line-height:1.78!important;margin-bottom:38px!important}
.rt-heading-pair{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:32px}
.rt-heading-pair h2{margin:0}
.rt-heading-pair .rt-section-lead{margin:0!important}
.rt-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rt-service-card{min-height:300px;background:var(--rt-white);border:1px solid var(--rt-border);border-radius:6px;padding:29px;display:flex;flex-direction:column;align-items:flex-start}
.rt-service-card:first-child{background:var(--rt-ink);border-color:var(--rt-ink)}
.rt-service-card:first-child h3,.rt-service-card:first-child .rt-card-number{color:var(--rt-white)!important}
.rt-service-card:first-child p:not(.rt-card-number){color:color-mix(in srgb,var(--rt-mint) 65%,var(--rt-white))!important}
.rt-service-card:first-child a{color:var(--rt-mint)!important}
.rt-service-card h3{margin:22px 0 13px}
.rt-service-card p:not(.rt-card-number){font-size:14px;line-height:1.75!important}
.rt-card-number{font-size:10px!important;letter-spacing:.11em;text-transform:uppercase;font-weight:820;color:var(--rt-brand)!important}
.rt-link-wrap{margin-top:auto!important;padding-top:22px}
.rt-text-link{font-size:12px;font-weight:800;color:var(--rt-brand);text-decoration:none}
.rt-dark-section{background:var(--rt-deep);color:var(--rt-white);padding:110px 0}
.rt-dark-section h2,.rt-dark-section h3{color:var(--rt-white)!important}
.rt-dark-lead{color:color-mix(in srgb,var(--rt-white) 74%,var(--rt-mint))!important;font-size:17px;max-width:690px}
.rt-feature-columns{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,92px);align-items:center;margin:0!important}
.rt-feature-columns>.wp-block-column{min-width:0;flex-basis:auto!important}
.rt-certus-box{border:1px solid color-mix(in srgb,var(--rt-mint) 24%,transparent);background:color-mix(in srgb,var(--rt-white) 5%,var(--rt-deep));border-radius:8px;padding:44px}
.rt-certus-box .rt-dark-note{font-size:12px;color:var(--rt-mint)!important}
.rt-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.rt-card{padding:28px;background:var(--rt-surface);border:1px solid var(--rt-border);border-radius:6px;min-height:230px}
.rt-card .rt-card-number{font-size:12px!important;margin-bottom:27px!important}
.rt-card h3{font-size:20px!important}
.rt-card p:not(.rt-card-number){font-size:14px}
.rt-circular-image{margin:0!important;width:100%;max-width:590px}
.rt-circular-image img{width:100%;height:auto}
.rt-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.rt-faq-grid .rt-card{min-height:0;padding:24px}
.rt-faq-grid .rt-card h3{font-size:18px!important}
.rt-cta{padding:73px 0;display:flex;justify-content:space-between;gap:55px;align-items:center}
.rt-cta .rt-cta-title{font-size:clamp(2.5rem,4vw,4.3rem);max-width:780px;color:var(--rt-white)!important}
.rt-cta .rt-cta-lead{color:var(--rt-mint)!important;margin:0;max-width:610px}
.rt-cta .rt-buttons{flex-shrink:0}
.rt-cta:not(.rt-section){max-width:none!important;width:100%;padding:84px max(44px,calc((100% - 1260px)/2));background:var(--rt-ink)}
.rt-pagehero{background:radial-gradient(circle at 85% 35%,color-mix(in srgb,var(--rt-brand) 12%,var(--rt-surface)),transparent 40%),color-mix(in srgb,var(--rt-brand) 5%,var(--rt-surface));padding:88px 0 94px;border-bottom:1px solid var(--rt-border)}
.rt-page-title{font-size:clamp(3.3rem,6.6vw,6.7rem)!important;max-width:1030px;line-height:1.04!important}
.rt-page-lead{font-size:18px;max-width:760px;line-height:1.8!important}
.rt-info-panel{background:var(--rt-white);border:1px solid var(--rt-border);box-shadow:0 18px 50px color-mix(in srgb,var(--rt-deep) 8%,transparent);border-radius:8px;padding:39px}
.rt-info-panel h3{font-size:29px!important}
.rt-disclaimer{font-size:12px;color:var(--rt-muted)!important;line-height:1.65!important}
.rt-anchor-panel{scroll-margin-top:20px}
.rt-contact-columns{grid-template-columns:.8fr 1.2fr!important;align-items:start!important}
.rt-form-panel{background:var(--rt-white);padding:33px;border:1px solid var(--rt-border);border-radius:8px;box-shadow:0 18px 50px color-mix(in srgb,var(--rt-deep) 8%,transparent)}
.rt-form-panel h3{font-size:25px}
.rt-form-status{padding:13px 15px;background:var(--rt-surface);border-left:4px solid var(--rt-brand);font-size:13px}
.rt-request-form{display:grid;gap:13px}
.rt-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rt-request-form label{display:block;font-size:12px;font-weight:800;line-height:1.5;margin-bottom:6px}
.rt-request-form input,.rt-request-form select,.rt-request-form textarea{background:var(--rt-white);border:1px solid var(--rt-border);border-radius:4px;padding:12px;font:inherit;font-size:14px;width:100%;color:var(--rt-ink)}
.rt-request-form input:focus,.rt-request-form textarea:focus,.rt-request-form select:focus{outline:2px solid var(--rt-brand);outline-offset:2px}
.rt-request-form .rt-form-privacy,.rt-request-form .rt-form-required{font-size:11px;margin:4px 0}
.rt-form-submit{background:var(--rt-ink);color:var(--rt-white);cursor:pointer;justify-self:start}
.rt-form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.rt-site-footer{background:var(--rt-deep);color:var(--rt-white);padding:70px 0 25px;margin:0!important}
.rt-footer-inner{width:min(var(--rt-wide),calc(100% - 88px));margin:0 auto!important}
.rt-footer-columns{display:grid!important;grid-template-columns:1.4fr repeat(3,1fr);gap:55px;margin:0 0 62px!important}
.rt-footer-columns>.wp-block-column{min-width:0;flex-basis:auto!important}
.rt-site-footer h3{font-size:14px;letter-spacing:.02em;color:var(--rt-white);margin:0 0 22px}
.rt-site-footer p{color:color-mix(in srgb,var(--rt-white) 65%,var(--rt-mint));font-size:13px;line-height:2;margin:0 0 8px}
.rt-site-footer a{color:inherit;text-decoration:none}
.rt-site-footer a:hover{text-decoration:underline}
.rt-site-footer .wp-block-site-title{font-size:24px;font-weight:850;color:var(--rt-white);margin:0 0 15px}
.rt-footer-bottom{padding-top:26px;border-top:1px solid color-mix(in srgb,var(--rt-white) 20%,transparent);display:flex;justify-content:space-between;gap:25px}
.rt-footer-bottom p{font-size:11px}
.rt-error-page{min-height:55vh;text-align:center;display:grid;place-content:center;padding:80px 22px}
.rt-error-page h1{font-size:clamp(2.8rem,6vw,6rem)}
.rt-main :focus-visible,.rt-site-header :focus-visible,.rt-site-footer :focus-visible{outline:3px solid var(--rt-brand);outline-offset:4px}
@media (max-width:1060px){.rt-container,.rt-nav-row,.rt-footer-inner{width:calc(100% - 56px)}.rt-site-header .rt-nav-row{gap:16px}.rt-primary-nav{font-size:12px}.rt-hero-inner{gap:12px}.rt-feature-columns{gap:42px}.rt-footer-columns{gap:24px}}
@media (max-width:800px){.rt-topline p:last-child{display:none}.rt-nav-row{min-height:76px}.rt-site-header .wp-block-navigation__responsive-container.is-menu-open{background:var(--rt-white)!important;color:var(--rt-ink)!important;padding:36px}.rt-hero-inner,.rt-feature-columns,.rt-heading-pair,.rt-contact-columns{grid-template-columns:1fr!important}.rt-hero-inner{gap:20px;min-height:0}.rt-main .rt-hero{padding:66px 0}.rt-hero-art{max-width:580px;margin:auto}.rt-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rt-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rt-section{padding:77px 0}.rt-feature-columns>.wp-block-column{width:100%}.rt-faq-grid{grid-template-columns:1fr}.rt-cta{display:block}.rt-cta .rt-buttons{margin-top:28px!important}.rt-cta:not(.rt-section){padding:70px 28px}.rt-footer-columns{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.rt-container,.rt-nav-row,.rt-footer-inner{width:calc(100% - 36px)}.rt-topline{display:none}.rt-nav-row{min-height:66px}.rt-display{font-size:clamp(3.05rem,12.3vw,4.6rem)!important}.rt-page-title{font-size:clamp(3rem,11vw,4.7rem)!important}.rt-pagehero{padding:63px 0}.rt-hero-lead,.rt-page-lead{font-size:15px}.rt-hero-meta{font-size:9px}.rt-services-grid,.rt-process-grid,.rt-form-grid{grid-template-columns:1fr}.rt-service-card{min-height:255px;padding:24px}.rt-trustbar{grid-template-columns:1fr;padding:0}.rt-trust-cell{padding:13px 0;border-right:0;border-bottom:1px solid var(--rt-border)}.rt-trust-cell:last-child{border:0}.rt-section{padding:63px 0}.rt-cta:not(.rt-section){padding:58px 20px}.rt-info-panel,.rt-form-panel,.rt-certus-box{padding:23px}.rt-footer-columns{gap:30px 14px}.rt-footer-columns>.wp-block-column:first-child{grid-column:span 2}.rt-footer-bottom{display:block}.rt-buttons{display:grid}.rt-buttons .wp-block-button__link{width:100%}.rt-main h2{font-size:clamp(2.35rem,9.5vw,3.5rem)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}}

.rt-skip{position:fixed;top:-200px;left:15px;padding:12px 20px;background:var(--rt-white);color:var(--rt-ink);z-index:9999;border:2px solid var(--rt-brand)}.rt-skip:focus{top:15px}


/* V1.3 – ruhigere mobile Navigation mit eindeutiger Hierarchie.
   Ausschließlich innerhalb des geöffneten WordPress-Navigationsoverlays aktiv.
   Editierbare Menüpunkte und Site-Editor-Änderungen bleiben erhalten. */
@media (max-width: 800px) {
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open {
    padding: 26px 24px !important;
    overflow-y: auto;
    background: var(--rt-white) !important;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    width: 100%;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    align-items: stretch;
    padding-top: 60px;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    width: 100%;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    text-align: left !important;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
    width: 100%;
    min-width: 0;
    align-items: stretch;
    text-align: left !important;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display: flex;
    align-items: center;
    min-height: 49px;
    width: 100%;
    padding: 12px 0;
    font-size: 18px;
    font-weight: 700;
    text-align: left !important;
    line-height: 1.4;
  }
  /* Einrückung statt zweitem, gleichgewichtigem Hauptmenüpunkt. */
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    position: static !important;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
    padding: 0 0 6px 18px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    color: var(--rt-brand);
    font-size: 16px;
    min-height: 44px;
    font-weight: 650;
  }
  /* Deutlich erkennbare, große Kontakt-Schaltfläche. */
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .rt-nav-cta {
    margin-top: 17px;
  }
  .rt-site-header .rt-primary-nav .wp-block-navigation__responsive-container.is-menu-open .rt-nav-cta .wp-block-navigation-item__content {
    min-height: 52px;
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 14px 20px;
    text-align: center !important;
    background: var(--rt-ink);
    color: var(--rt-white);
    border-radius: 5px;
  }
}
