/*
 * Kahsay Classic 4.0
 * Visuelle Ebene auf der stabilen Suite-/Block-Semantik.
 * Ziel: markennah, deutlich ruhiger, fotografischer und mit mehr Freiraum.
 */

:root{
  --kahsay-readable-width:760px;
  --kahsay-content-wide:1120px;
  --kahsay-section-space:clamp(4.75rem,8vw,8rem);
  --kahsay-section-space-compact:clamp(3rem,5vw,4.75rem);
  --kahsay-shadow-soft:0 22px 60px rgba(0,59,127,.10);
  --kahsay-shadow-hover:0 28px 70px rgba(0,59,127,.16);
  --kahsay-image-radius:16px;
  --kahsay-card-radius:14px;
  --kahsay-ui-radius:9px;
  --kahsay-text:#31546e;
  --kahsay-text-soft:#607a8f;
  --kahsay-ink-deep:#072f5a;
  --kahsay-surface-blue:#f3faff;
  --kahsay-surface-cool:#f8fbfd;
  --kahsay-line-soft:#d8eaf4;
}

/* ---------- Rhythmus & Typografie ---------- */
.kahsay-classic-4{
  color:var(--kahsay-ink-deep);
  --color-muted:var(--kahsay-text);
  --radius:var(--kahsay-ui-radius);
  --radius-lg:var(--kahsay-card-radius);
}
.kahsay-classic-4 body,.kahsay-classic-4{font-size:17px;line-height:1.72}
.kahsay-classic-4 h1,.kahsay-classic-4 h2,.kahsay-classic-4 h3,.kahsay-classic-4 h4{letter-spacing:-.035em}
.kahsay-classic-4 h1{font-size:clamp(2.55rem,5.8vw,5rem);line-height:1.03;font-weight:800}
.kahsay-classic-4 h2{font-size:clamp(2rem,4vw,3.55rem);line-height:1.08;font-weight:780}
.kahsay-classic-4 h3{font-size:clamp(1.18rem,2vw,1.48rem);line-height:1.2}
.kahsay-classic-4 p{color:var(--kahsay-text)}
.kahsay-classic-4 .lead{font-size:clamp(1.08rem,1.6vw,1.25rem);line-height:1.75}
.kahsay-classic-4 .container{padding-inline:clamp(20px,3vw,34px)}
.kahsay-classic-4 .section{padding-block:var(--kahsay-section-space)}
.kahsay-classic-4.shw-density-compact .section{padding-block:clamp(3rem,5vw,4.75rem)}
.kahsay-classic-4.shw-density-balanced .section{padding-block:clamp(4rem,6.5vw,6rem)}
.kahsay-classic-4 .section-light{background:var(--kahsay-surface-cool)}
.kahsay-classic-4 .section-heading{margin-bottom:clamp(2rem,4vw,3.5rem);align-items:flex-end}
.kahsay-classic-4 .section-heading>div{max-width:820px}
.kahsay-classic-4 .eyebrow{margin-bottom:1rem;font-size:.69rem;letter-spacing:.16em;color:var(--color-primary-dark)}
.kahsay-classic-4 .breadcrumbs-shell{padding-top:14px;padding-bottom:14px}

/* ---------- Radien / Bildsprache ---------- */
.kahsay-classic-4.shw-image-shape-square{--kahsay-image-radius:2px;--kahsay-card-radius:6px}
.kahsay-classic-4.shw-image-shape-soft{--kahsay-image-radius:16px;--kahsay-card-radius:14px}
.kahsay-classic-4.shw-image-shape-round{--kahsay-image-radius:28px;--kahsay-card-radius:24px}
.kahsay-classic-4 .photo-frame,
.kahsay-classic-4 .service-card__media,
.kahsay-classic-4 .project-card .photo-frame,
.kahsay-classic-4 .shw-image-text__media,
.kahsay-classic-4 .shw-person__media{border-radius:var(--kahsay-image-radius)}

/* ---------- Buttons: weniger "App", mehr Unternehmenswebsite ---------- */
.kahsay-classic-4 .btn{
  min-height:48px;padding:12px 20px;border-radius:var(--kahsay-ui-radius);
  box-shadow:none;font-weight:760;letter-spacing:-.01em;
  background:var(--color-primary-dark);border-color:var(--color-primary-dark)
}
.kahsay-classic-4 .btn:hover{background:var(--color-ink);border-color:var(--color-ink);box-shadow:none;transform:translateY(-1px)}
.kahsay-classic-4 .btn-outline{background:transparent;color:var(--color-primary-dark);border-color:#9bcce7}
.kahsay-classic-4 .btn-outline:hover{background:#eef8fd;color:var(--color-ink)}
.kahsay-classic-4 .text-link{font-weight:760;color:var(--color-primary-dark)}

/* ---------- Topbar ---------- */
.kahsay-classic-4 .header-top-bar{padding:7px 0;background:var(--color-ink);box-shadow:none}
.kahsay-classic-4 .header-top-bar,.kahsay-classic-4 .header-top-bar a{font-size:.75rem}
.kahsay-classic-4 .top-quality{font-size:1rem;opacity:.9}

/* ---------- Gemeinsame Header-Basis ---------- */
.kahsay-classic-4 .site-header{background:#fff;border-bottom:1px solid rgba(123,178,210,.28);box-shadow:none}
.kahsay-classic-4 .brand-logo .custom-logo{max-height:74px;width:auto}
.kahsay-classic-4 .brand-symbol{width:54px;height:54px;border-radius:50%;box-shadow:none}
.kahsay-classic-4 .brand-text strong{font-size:1.72rem}
.kahsay-classic-4 .brand-text small{font-size:.56rem}
.kahsay-classic-4 .main-navigation .menu{gap:2px}
.kahsay-classic-4 .main-navigation .menu>li>a{padding:17px 12px;font-size:.86rem;font-weight:720;color:#173f64}
.kahsay-classic-4 .main-navigation .current-menu-item>a:after,.kahsay-classic-4 .main-navigation .current_page_item>a:after{height:2px}
.kahsay-classic-4 .main-navigation .sub-menu{border-color:var(--kahsay-line-soft);border-radius:10px;padding:8px;box-shadow:var(--kahsay-shadow-soft)}
.kahsay-classic-4 .main-navigation .sub-menu a{border-radius:7px}
.kahsay-classic-4 .menu-toggle{border-color:var(--kahsay-line-soft);border-radius:9px}

/* Brand: vertraute Visitenkarten-DNA, aber ruhiger. */
.kahsay-classic-4 .site-header--brand .header-main{min-height:100px}
.kahsay-classic-4 .site-header--brand .nav-border{border-top:1px solid var(--kahsay-line-soft);border-bottom:0}
.kahsay-classic-4 .site-header--brand .header-contact{gap:22px}
.kahsay-classic-4 .site-header--brand .contact-line{padding-right:4px}
.kahsay-classic-4 .site-header--brand .contact-line>span{font-size:.66rem}

/* Compact */
.kahsay-classic-4 .site-header--compact .header-compact-row,
.kahsay-classic-4 .site-header--overlay .header-compact-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;min-height:86px}
.kahsay-classic-4 .header-inline-nav{display:flex;justify-content:center;min-width:0}
.kahsay-classic-4 .header-inline-actions{display:flex;align-items:center;gap:10px}
.kahsay-classic-4 .site-header--compact .brand-logo .custom-logo,.kahsay-classic-4 .site-header--overlay .brand-logo .custom-logo{max-height:64px}
.kahsay-classic-4 .site-header--compact .main-navigation .menu>li>a,.kahsay-classic-4 .site-header--overlay .main-navigation .menu>li>a{padding:30px 10px}

/* Centered */
.kahsay-classic-4 .header-centered-brand{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:105px;gap:18px}
.kahsay-classic-4 .header-centered-brand>.brand,.kahsay-classic-4 .header-centered-brand>.brand-logo{justify-self:center}
.kahsay-classic-4 .header-centered-actions{justify-self:end;display:flex;align-items:center;gap:10px}
.kahsay-classic-4 .navigation-wrap--centered{justify-content:center}
.kahsay-classic-4 .site-header--centered .main-navigation .menu{justify-content:center}
.kahsay-classic-4 .site-header--centered .nav-border{border-bottom:0}

/* Overlay: bewusst "glass", damit das Markenlogo auf wechselnden Fotos lesbar bleibt. */
.kahsay-classic-4 .site-header--overlay.is-overlay-front{position:absolute;left:0;right:0;top:0;z-index:90;background:rgba(255,255,255,.91);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.55)}
.admin-bar.kahsay-classic-4 .site-header--overlay.is-overlay-front{top:32px}
.kahsay-classic-4 .site-header--overlay.is-overlay-front .header-compact-row{min-height:92px}

/* ---------- Legacy Hero wird erwachsener ---------- */
.kahsay-classic-4 .hero{padding:clamp(5rem,9vw,8rem) 0;background:linear-gradient(128deg,#fff 0%,#fff 53%,#eef9ff 53%,#f7fcff 100%);border-bottom:0}
.kahsay-classic-4.shw-header-overlay .hero{padding-top:clamp(8rem,12vw,11rem)}
.kahsay-classic-4 .hero::before,.kahsay-classic-4 .hero::after{opacity:.55}
.kahsay-classic-4 .hero h1{max-width:760px}
.kahsay-classic-4 .hero p.lead{max-width:640px}
.kahsay-classic-4 .hero-claim{font-size:clamp(1.65rem,2.8vw,2.35rem);margin-top:.2rem}
.kahsay-classic-4 .hero .photo-frame{border:0;box-shadow:var(--kahsay-shadow-soft)}
.kahsay-classic-4 .hero-badge{border-radius:12px;box-shadow:0 18px 40px rgba(0,59,127,.14)}

/* ---------- Informationsstreifen: subtil statt Visitenkarten-Replik ---------- */
.kahsay-classic-4 .service-strip{border:0;background:#fff}
.kahsay-classic-4 .service-strip-grid{border-block:1px solid var(--kahsay-line-soft)}
.kahsay-classic-4 .service-strip-grid>div{padding:17px 14px;border-color:var(--kahsay-line-soft);font-size:.78rem}

/* ---------- Services: Bilder tragen die Karten ---------- */
.kahsay-classic-4 .services-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(18px,2vw,28px)}
.kahsay-classic-4 .services-grid>.service-card:nth-child(1),
.kahsay-classic-4 .services-grid>.service-card:nth-child(2),
.kahsay-classic-4 .services-grid>.service-card:nth-child(3){grid-column:span 2}
.kahsay-classic-4 .services-grid>.service-card:nth-child(4),
.kahsay-classic-4 .services-grid>.service-card:nth-child(5){grid-column:span 3}
.kahsay-classic-4 .card.service-card{padding:0;border:1px solid var(--kahsay-line-soft);border-radius:var(--kahsay-card-radius);background:#fff;box-shadow:none;overflow:hidden;transform:none}
.kahsay-classic-4 .card.service-card::before{display:none}
.kahsay-classic-4 .card.service-card:hover{border-color:#a8d6ed;box-shadow:var(--kahsay-shadow-hover);transform:translateY(-3px)}
.kahsay-classic-4 .service-card__media{aspect-ratio:3/2;overflow:hidden;background:#eaf6fc;border-radius:0}
.kahsay-classic-4 .service-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.kahsay-classic-4 .service-card:hover .service-card__media img{transform:scale(1.025)}
.kahsay-classic-4 .service-card__body{padding:clamp(20px,2vw,28px);display:flex;flex-direction:column;min-height:100%;flex:1}
.kahsay-classic-4 .service-card__topline{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.kahsay-classic-4 .service-card .card-icon{width:40px;height:40px;margin:0;border:0;background:transparent;border-radius:0}
.kahsay-classic-4 .service-card .card-icon img,.kahsay-classic-4 .service-card .card-icon svg{width:40px;height:40px}
.kahsay-classic-4 .service-card .card-kicker{font-size:.66rem;letter-spacing:.12em;color:var(--kahsay-text-soft);font-weight:800}
.kahsay-classic-4 .service-card h3{font-size:1.45rem;text-transform:none;letter-spacing:-.03em;color:var(--color-ink);margin:0 0 10px}
.kahsay-classic-4 .service-card p{font-size:.92rem;line-height:1.65;margin-bottom:16px}
.kahsay-classic-4 .service-points{font-size:.82rem;color:var(--kahsay-text-soft);margin-bottom:18px}
.kahsay-classic-4 .service-card .card-link{margin-top:auto;padding-top:15px;border-top:1px solid var(--kahsay-line-soft);font-size:.8rem}

/* ---------- Trust Bar: weniger laut ---------- */
.kahsay-classic-4 .brand-trust{background:var(--color-ink);border:0}
.kahsay-classic-4 .brand-trust-grid>div{padding:23px 15px;border-color:rgba(255,255,255,.13)}
.kahsay-classic-4 .brand-trust-grid span{border:0;width:38px;height:38px}
.kahsay-classic-4 .brand-trust-grid strong{font-size:.66rem;letter-spacing:.055em}

/* ---------- Projektkarten ---------- */
.kahsay-classic-4 .project-card{position:relative;overflow:hidden;border-radius:var(--kahsay-card-radius);background:#fff}
.kahsay-classic-4 .project-card .photo-frame{aspect-ratio:16/10;border:0;box-shadow:none;border-radius:var(--kahsay-card-radius);transition:transform .35s ease}
.kahsay-classic-4 .project-card:hover .photo-frame{transform:translateY(-3px)}
.kahsay-classic-4 .project-caption{padding:18px 2px 4px}
.kahsay-classic-4 .project-caption span{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--kahsay-text-soft);font-weight:760}
.kahsay-classic-4 .project-caption h3{margin:.3rem 0 0;font-size:1.3rem}

/* ---------- Shared Block: Bild + Text, Contract 2 ---------- */
.kahsay-classic-4 .shw-image-text{margin:0;gap:clamp(2rem,6vw,5rem);padding:0;border-radius:0;grid-template-columns:minmax(0,var(--kahsay-media-width,50%)) minmax(0,1fr)}
.kahsay-classic-4 .shw-image-text--image-right{grid-template-columns:minmax(0,1fr) minmax(0,var(--kahsay-media-width,50%))}
.kahsay-classic-4 .shw-image-text__media{overflow:hidden;border-radius:var(--kahsay-image-radius);background:#eaf6fc}
.kahsay-classic-4 .shw-image-text__media img{width:100%;height:100%;object-fit:cover}
.kahsay-classic-4 .shw-image-text__body{max-width:660px;padding-block:clamp(1rem,3vw,2rem)}
.kahsay-classic-4 .shw-image-text__body h2{font-size:clamp(2rem,3.6vw,3.45rem)}
.kahsay-classic-4 .shw-image-text__body p{font-size:1.02rem}
.kahsay-classic-4 .shw-image-text--light{background:transparent}
.kahsay-classic-4 .shw-image-text--style-editorial .shw-image-text__media{box-shadow:var(--kahsay-shadow-soft)}
.kahsay-classic-4 .shw-image-text--style-editorial .shw-image-text__body{padding-inline:clamp(0px,2vw,22px)}
.kahsay-classic-4 .shw-image-text--style-overlap{position:relative;gap:0;align-items:center}
.kahsay-classic-4 .shw-image-text--style-overlap .shw-image-text__media{width:108%;z-index:1}
.kahsay-classic-4 .shw-image-text--style-overlap .shw-image-text__body{position:relative;z-index:2;background:#fff;padding:clamp(28px,5vw,58px);border-radius:var(--kahsay-card-radius);box-shadow:var(--kahsay-shadow-soft);margin-left:-7%}
.kahsay-classic-4 .shw-image-text--style-overlap.shw-image-text--image-right .shw-image-text__body{margin-left:0;margin-right:-7%}
.kahsay-classic-4 .shw-image-text--style-fullbleed{display:block}
.kahsay-classic-4 .shw-image-text--style-fullbleed .shw-image-text__media{aspect-ratio:16/7;max-height:620px;margin-bottom:clamp(2rem,4vw,3rem)}
.kahsay-classic-4 .shw-image-text--style-fullbleed .shw-image-text__body{max-width:var(--kahsay-readable-width);margin-inline:auto;text-align:left}
.kahsay-classic-4 .shw-image-text--style-overlay{display:grid;min-height:clamp(460px,62vw,720px);position:relative;overflow:hidden;border-radius:var(--kahsay-image-radius);isolation:isolate}
.kahsay-classic-4 .shw-image-text--style-overlay .shw-image-text__media{position:absolute;inset:0;border-radius:0;aspect-ratio:auto;z-index:-2}
.kahsay-classic-4 .shw-image-text--style-overlay .shw-image-text__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,40,78,.82),rgba(0,40,78,.25) 65%,rgba(0,40,78,.08));z-index:1}
.kahsay-classic-4 .shw-image-text--style-overlay .shw-image-text__body{align-self:end;padding:clamp(32px,7vw,78px);max-width:760px;color:#fff}
.kahsay-classic-4 .shw-image-text--style-overlay h2,.kahsay-classic-4 .shw-image-text--style-overlay p,.kahsay-classic-4 .shw-image-text--style-overlay .eyebrow{color:#fff}
.kahsay-classic-4 .shw-image-text--style-overlay .btn{background:#fff;color:var(--color-ink);border-color:#fff}

/* ---------- Ansprechpartner ---------- */
.kahsay-classic-4 .shw-person{margin:0;gap:clamp(2.5rem,7vw,6.5rem);padding:0;border:0;border-radius:0;background:transparent;grid-template-columns:minmax(260px,40%) minmax(0,1fr)}
.kahsay-classic-4 .shw-person__media{border-radius:var(--kahsay-image-radius);box-shadow:var(--kahsay-shadow-soft);background:#eaf6fc}
.kahsay-classic-4 .shw-person__media img{width:100%;height:100%;object-fit:cover}
.kahsay-classic-4 .shw-person__body{max-width:680px}
.kahsay-classic-4 .shw-person__body h2{font-size:clamp(2.1rem,4vw,3.7rem)}
.kahsay-classic-4 .shw-person__contact{margin-top:1.5rem;padding-top:1.35rem;border-top:1px solid var(--kahsay-line-soft)}
.kahsay-classic-4 .shw-person--style-card{padding:clamp(24px,4vw,44px);border:1px solid var(--kahsay-line-soft);border-radius:var(--kahsay-card-radius);background:#fff}
.kahsay-classic-4 .shw-person--style-minimal .shw-person__media{box-shadow:none}
.kahsay-classic-4 .shw-person--style-editorial{grid-template-columns:minmax(280px,45%) minmax(0,1fr)}

/* ---------- Testimonial ---------- */
.kahsay-classic-4 .shw-testimonial{padding:clamp(28px,5vw,58px);border-radius:var(--kahsay-card-radius);border:0;background:var(--kahsay-surface-blue)}
.kahsay-classic-4 .shw-testimonial blockquote{font-size:clamp(1.45rem,3vw,2.5rem);line-height:1.35;border:0;padding:0;margin:0 0 1.5rem;color:var(--color-ink);font-style:normal;font-weight:690;letter-spacing:-.03em}

/* ---------- Seitenhero allgemein ---------- */
.kahsay-classic-4 .page-hero{padding:clamp(3.5rem,7vw,6.5rem) 0;background:var(--kahsay-surface-blue);border-bottom:0}
.kahsay-classic-4 .page-hero::after{opacity:.45}

/* ---------- Leistungsseiten Editorial ---------- */
.kahsay-classic-4 .service-editorial-hero{padding:clamp(4.25rem,7vw,7rem) 0;background:linear-gradient(135deg,#fff 0%,#fff 51%,#eef9ff 51%,#f7fcff 100%);overflow:hidden}
.kahsay-classic-4 .service-editorial-hero__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:clamp(3rem,7vw,7rem);align-items:center}
.kahsay-classic-4 .service-editorial-title{display:flex;align-items:center;gap:16px}
.kahsay-classic-4 .service-editorial-title h1{margin:0}
.kahsay-classic-4 .service-editorial-hero .page-service-icon{width:60px;height:60px;display:grid;place-items:center;flex:0 0 60px;background:transparent;border:0}
.kahsay-classic-4 .service-editorial-lead{font-size:clamp(1.1rem,1.65vw,1.28rem);line-height:1.7;max-width:620px;margin:1.4rem 0 1.7rem}
.kahsay-classic-4 .service-editorial-hero__media{aspect-ratio:4/3;border-radius:var(--kahsay-image-radius);overflow:hidden;box-shadow:var(--kahsay-shadow-soft);background:#eaf6fc}
.kahsay-classic-4 .service-editorial-hero__media img{width:100%;height:100%;object-fit:cover}
.kahsay-classic-4 .service-editorial-content{padding-top:var(--kahsay-section-space-compact)}
.kahsay-classic-4 .entry-content--service-editorial>.wp-block-heading:first-child{margin-top:0}
.kahsay-classic-4 .entry-content--service-editorial>.shw-section:first-child{margin-top:0}
.kahsay-classic-4 .service-scope-band{background:var(--color-ink);color:#fff}
.kahsay-classic-4 .service-scope-band h2,.kahsay-classic-4 .service-scope-band .eyebrow{color:#fff}
.kahsay-classic-4 .service-scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;list-style:none;margin:0;padding:0;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.13)}
.kahsay-classic-4 .service-scope-grid li{display:flex;align-items:flex-start;gap:12px;padding:22px;background:var(--color-ink);color:#fff;font-weight:680}
.kahsay-classic-4 .service-scope-grid li>span:first-child{color:#8cd8ff}
.kahsay-classic-4 .service-faq{border-top:0}

/* ---------- Allgemeine Cards aus dem Page Builder ---------- */
.kahsay-classic-4 .shw-card,.kahsay-classic-4 .shw-feature,.kahsay-classic-4 .shw-icon-box{border-color:var(--kahsay-line-soft);box-shadow:none;border-radius:var(--kahsay-card-radius)}
.kahsay-classic-4 .shw-card:hover,.kahsay-classic-4 .shw-icon-box:hover{box-shadow:var(--kahsay-shadow-soft)}

/* ---------- Kontaktbanner / Footer ---------- */
.kahsay-classic-4 .contact-banner{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--color-ink)}
.kahsay-classic-4 .contact-banner::after{opacity:.4}
.kahsay-classic-4 .contact-banner h2{font-size:clamp(2rem,4vw,3.6rem);max-width:900px}
.kahsay-classic-4 .contact-banner-editorial{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(2rem,6vw,6rem);align-items:end}
.kahsay-classic-4 .contact-banner-editorial p{max-width:720px;font-size:1.05rem}
.kahsay-classic-4 .site-footer{padding-top:clamp(3.5rem,6vw,5.5rem);background:#f5fafd;border-top:0}
.kahsay-classic-4 .site-footer::before{opacity:.35}
.kahsay-classic-4 .site-footer--compact{padding-top:2.8rem}
.kahsay-classic-4 .site-footer--compact .footer-grid{grid-template-columns:1fr 1fr;align-items:start}
.kahsay-classic-4 .site-footer--compact .footer-column--contact{text-align:right}
.kahsay-classic-4 .site-footer--editorial{background:#eef7fc}
.kahsay-classic-4 .footer-bottom{border-color:#d4e6f0}

/* ---------- Rechner / Formulare optisch an Classic 4 anbinden ---------- */
.kahsay-classic-4 .kht-calculator,.kahsay-classic-4 .kht-project-inquiry,.kahsay-classic-4 .kahsay-calculator,.kahsay-classic-4 .kahsay-project-inquiry{border-radius:var(--kahsay-card-radius)!important;border-color:var(--kahsay-line-soft)!important;box-shadow:none!important}
.kahsay-classic-4 input:not([type="checkbox"]):not([type="radio"]),.kahsay-classic-4 select,.kahsay-classic-4 textarea{border-radius:8px;border-color:#bad8e8}
.kahsay-classic-4 input:focus,.kahsay-classic-4 select:focus,.kahsay-classic-4 textarea:focus{border-color:var(--color-primary-dark);box-shadow:0 0 0 3px rgba(7,155,234,.11)}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  .kahsay-classic-4 .site-header--compact .header-compact-row,.kahsay-classic-4 .site-header--overlay .header-compact-row{gap:14px}
  .kahsay-classic-4 .site-header--compact .main-navigation .menu>li>a,.kahsay-classic-4 .site-header--overlay .main-navigation .menu>li>a{padding-inline:7px;font-size:.8rem}
  .kahsay-classic-4 .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kahsay-classic-4 .services-grid>.service-card:nth-child(n){grid-column:span 1}
}
@media(max-width:991.98px){
  .kahsay-classic-4 h1{font-size:clamp(2.35rem,8vw,4rem)}
  .kahsay-classic-4 .site-header--compact .header-compact-row,.kahsay-classic-4 .site-header--overlay .header-compact-row{grid-template-columns:minmax(0,1fr) auto;min-height:78px;position:relative}
  .kahsay-classic-4 .header-inline-nav{grid-column:1/-1;grid-row:2;display:block}
  .kahsay-classic-4 .header-inline-actions{grid-column:2;grid-row:1}
  .kahsay-classic-4 .header-inline-actions .shw-request-actions{display:none}
  .kahsay-classic-4 .header-inline-nav .main-navigation{width:100%}
  .kahsay-classic-4 .header-inline-nav .main-navigation.is-open{padding:8px 0 20px}
  .kahsay-classic-4 .header-centered-brand{grid-template-columns:minmax(0,1fr) auto;min-height:86px}
  .kahsay-classic-4 .header-centered-spacer{display:none}
  .kahsay-classic-4 .header-centered-brand>.brand,.kahsay-classic-4 .header-centered-brand>.brand-logo{justify-self:start}
  .kahsay-classic-4 .header-centered-actions{grid-column:2}
  .kahsay-classic-4 .header-centered-actions .shw-request-actions{display:none}
  .kahsay-classic-4 .site-header--centered .nav-border{border-top:1px solid var(--kahsay-line-soft)}
  .kahsay-classic-4 .service-editorial-hero__grid{grid-template-columns:1fr;gap:2.5rem}
  .kahsay-classic-4 .service-editorial-hero__copy{max-width:760px}
  .kahsay-classic-4 .service-editorial-hero__media{aspect-ratio:16/10}
  .kahsay-classic-4 .service-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kahsay-classic-4 .shw-image-text,.kahsay-classic-4 .shw-image-text--image-right,.kahsay-classic-4 .shw-person,.kahsay-classic-4 .shw-person--style-editorial{grid-template-columns:1fr}
  .kahsay-classic-4 .shw-image-text--image-right .shw-image-text__media,.kahsay-classic-4 .shw-person--image-right .shw-person__media{order:0}
  .kahsay-classic-4 .shw-image-text--style-overlap .shw-image-text__media{width:100%}
  .kahsay-classic-4 .shw-image-text--style-overlap .shw-image-text__body,.kahsay-classic-4 .shw-image-text--style-overlap.shw-image-text--image-right .shw-image-text__body{margin:-42px 18px 0;padding:30px}
  .kahsay-classic-4 .contact-banner-editorial{grid-template-columns:1fr;align-items:start}
}
@media(max-width:767.98px){
  .kahsay-classic-4 body,.kahsay-classic-4{font-size:16px}
  .kahsay-classic-4 .section{padding-block:clamp(3.5rem,13vw,5.25rem)}
  .kahsay-classic-4 .services-grid{grid-template-columns:1fr}
  .kahsay-classic-4 .service-card__media{aspect-ratio:16/9}
  .kahsay-classic-4 .brand-trust-grid{grid-template-columns:1fr}
  .kahsay-classic-4 .service-scope-grid{grid-template-columns:1fr}
  .kahsay-classic-4 .service-editorial-title{align-items:flex-start}
  .kahsay-classic-4 .service-editorial-title .page-service-icon{width:44px;height:44px;flex-basis:44px}
  .kahsay-classic-4 .service-editorial-title .page-service-icon img{width:44px;height:44px}
  .kahsay-classic-4 .shw-image-text--style-fullbleed .shw-image-text__media{aspect-ratio:4/3}
  .kahsay-classic-4 .shw-image-text--style-overlay{min-height:520px}
  .kahsay-classic-4 .shw-image-text--style-overlay .shw-image-text__media::after{background:linear-gradient(0deg,rgba(0,40,78,.9),rgba(0,40,78,.35) 75%)}
  .kahsay-classic-4 .site-footer--compact .footer-grid{grid-template-columns:1fr}
  .kahsay-classic-4 .site-footer--compact .footer-column--contact{text-align:left}
  .admin-bar.kahsay-classic-4 .site-header--overlay.is-overlay-front{top:46px}
}
@media(max-width:520px){
  .kahsay-classic-4 .header-top-bar .top-quality{display:none}
  .kahsay-classic-4 .site-header--brand .header-contact{display:none}
  .kahsay-classic-4 .site-header--brand .header-main{min-height:78px}
  .kahsay-classic-4 .brand-text strong{font-size:1.45rem}
  .kahsay-classic-4 .brand-text small{display:none}
}

@media(prefers-reduced-motion:reduce){
  .kahsay-classic-4 .service-card__media img,.kahsay-classic-4 .project-card .photo-frame{transition:none}
}

/* ---------- Portable Sections / Builder Cards ---------- */
.kahsay-classic-4 .shw-section--default{background:#fff}
.kahsay-classic-4 .shw-section--light{background:var(--kahsay-surface-cool)}
.kahsay-classic-4 .shw-section--ink{background:var(--color-ink)}
.kahsay-classic-4 .shw-section__inner{width:min(100% - 40px,var(--container-max))}
.kahsay-classic-4 .shw-section--pt-small{padding-top:clamp(2rem,4vw,3.4rem)}
.kahsay-classic-4 .shw-section--pb-small{padding-bottom:clamp(2rem,4vw,3.4rem)}
.kahsay-classic-4 .shw-section--pt-normal{padding-top:clamp(3.7rem,6vw,5.8rem)}
.kahsay-classic-4 .shw-section--pb-normal{padding-bottom:clamp(3.7rem,6vw,5.8rem)}
.kahsay-classic-4 .shw-section--pt-large{padding-top:var(--kahsay-section-space)}
.kahsay-classic-4 .shw-section--pb-large{padding-bottom:var(--kahsay-section-space)}
.kahsay-classic-4 .shw-section__title{font-size:clamp(2rem,4vw,3.45rem);margin-bottom:clamp(2rem,4vw,3.5rem)}
.kahsay-classic-4 .shw-component-card{border:1px solid var(--kahsay-line-soft);border-radius:var(--kahsay-card-radius);box-shadow:none;transform:none;background:#fff}
.kahsay-classic-4 .shw-component-card:hover{transform:translateY(-3px);border-color:#a8d6ed;box-shadow:var(--kahsay-shadow-hover)}
.kahsay-classic-4 .shw-component-card__media{aspect-ratio:3/2}
.kahsay-classic-4 .shw-component-card__body{padding:clamp(22px,3vw,32px)}
.kahsay-classic-4 .shw-component-card h3{font-size:1.4rem}
.kahsay-classic-4 .shw-component-card__text p{font-size:.94rem;line-height:1.65}
.kahsay-classic-4 .shw-component-card__button{background:transparent;color:var(--color-primary-dark);border:0;padding:10px 0;min-height:auto;box-shadow:none}
.kahsay-classic-4 .shw-component-card__button:hover{background:transparent;color:var(--color-ink);transform:none}
.kahsay-classic-4 .shw-component-card--image-background{border:0}
.kahsay-classic-4 .shw-component-card--image-background .shw-component-card__body{min-height:360px}
.kahsay-classic-4 .kahsay-modular-home>.shw-section:first-child{padding-top:clamp(2rem,5vw,4rem)}
.kahsay-classic-4.shw-header-overlay .kahsay-modular-home>.shw-section:first-child{padding-top:clamp(7rem,11vw,10rem)}

/* Block Contract 2 standalone fallback (falls Kahsay Core absichtlich deaktiviert ist). */
.kahsay-classic-4 .shw-image-text__media img,.kahsay-classic-4 .shw-person__media img{object-position:var(--kahsay-focus-x,50%) var(--kahsay-focus-y,50%)}
.kahsay-classic-4 .shw-media-ratio--1-1 .shw-image-text__media,.kahsay-classic-4 .shw-media-ratio--1-1 .shw-person__media{aspect-ratio:1/1}
.kahsay-classic-4 .shw-media-ratio--4-3 .shw-image-text__media,.kahsay-classic-4 .shw-media-ratio--4-3 .shw-person__media{aspect-ratio:4/3}
.kahsay-classic-4 .shw-media-ratio--3-2 .shw-image-text__media,.kahsay-classic-4 .shw-media-ratio--3-2 .shw-person__media{aspect-ratio:3/2}
.kahsay-classic-4 .shw-media-ratio--16-9 .shw-image-text__media,.kahsay-classic-4 .shw-media-ratio--16-9 .shw-person__media{aspect-ratio:16/9}
.kahsay-classic-4 .shw-media-ratio--portrait .shw-image-text__media,.kahsay-classic-4 .shw-media-ratio--portrait .shw-person__media{aspect-ratio:4/5}
.kahsay-classic-4 .shw-media-ratio--auto .shw-image-text__media{aspect-ratio:auto}
@media(max-width:767.98px){.kahsay-classic-4 .shw-image-text__media img,.kahsay-classic-4 .shw-person__media img{object-position:var(--kahsay-focus-x-mobile,var(--kahsay-focus-x,50%)) var(--kahsay-focus-y-mobile,var(--kahsay-focus-y,50%))}}

/* Suite UI Contract 1 – Classic profile */
:root,.kahsay-classic-4{
  --kahsay-ui-card-radius:14px;
  --kahsay-ui-control-radius:9px;
  --kahsay-ui-button-radius:9px;
  --kahsay-ui-card-border-width:1px;
  --kahsay-ui-card-shadow:0 14px 40px rgba(0,59,127,.08);
  --kahsay-ui-component-gap:clamp(1rem,2.5vw,1.5rem);
}
