/* Favoso V26: approved four-part homepage, service visual language and editorial references. */
:root{--v26-navy:#202f70;--v26-orange:#ef6a35;--v26-cta:#b74727;--v26-text:#435276;--v26-soft:#f1f4f8;--v26-line:#dfe5ee}
.fav26-home,.fav26-references{color:var(--v26-navy);font-family:PTSans,Arial,sans-serif}
.fav26-home .container,.fav26-references .container{max-width:1170px}
.fav26-kicker{font:700 11.8px/1.4 PTSans,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#526387;margin:0 0 13px}
.fav26-home h2{font:700 clamp(27px,2.65vw,34px)/1.18 PTSans,Arial,sans-serif;color:var(--v26-navy);margin:0 0 13px;letter-spacing:-.016em}
.fav26-home p{font-family:PTSans,Arial,sans-serif}
/* Hero: preserve pictorial composition, original V25 logo is in header.php. */
.fav26-hero{position:relative;overflow:hidden;min-height:420px;background:linear-gradient(135deg,#f8fafc 0%,#eff4f8 67%,#e4ebf3 100%);border-bottom:1px solid #e7ebf1}
.fav26-hero-picture{position:absolute;right:0;top:0;height:100%;width:48%;background:#e9eef1 url('../images/hero-gespraech-ausschnitt.jpg') center center/cover no-repeat;box-shadow:inset 18px 0 24px rgba(249,251,252,.2)}
.fav26-hero-picture::before{content:"";position:absolute;inset:0 auto 0 -2px;width:26%;background:linear-gradient(125deg,rgba(247,250,252,.95),rgba(247,250,252,.73));clip-path:polygon(0 0,100% 0,0 100%)}
.fav26-hero-inner{min-height:420px;display:flex;align-items:center;position:relative;z-index:1}
.fav26-hero-copy{max-width:58%;padding:49px 22px 48px 0}
.fav26-hero h1{color:var(--v26-navy);font:700 clamp(43px,4.4vw,62px)/.96 PTSans,Arial,sans-serif;letter-spacing:-.035em;margin:0 0 22px}
.fav26-hero h1 span{color:var(--v26-orange)}
.fav26-hero-subline{font:400 clamp(18px,1.67vw,21px)/1.4 PTSans,Arial,sans-serif;color:#24345f;max-width:545px;margin:0}
/* Homepage services – the seven peer cards remain one row on desktop. */
.fav26-services{background:linear-gradient(130deg,#f2f5f9 0%,#eef2f7 100%);padding:43px 0 53px}
.fav26-services-lead{font:400 17px/1.55 PTSans,Arial,sans-serif;color:#415173;max-width:920px;margin:0 0 24px}
.fav26-service-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0}
.fav26-service-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;min-height:219px;padding:19px 11px 32px;border-radius:6px;background:#fff;border:1px solid #e7ebf1;box-shadow:0 8px 22px rgba(38,50,93,.045);text-decoration:none;color:var(--v26-navy);transition:box-shadow .18s,transform .18s,border-color .18s}
.fav26-service-card:hover,.fav26-service-card:focus-visible{box-shadow:0 10px 24px rgba(38,50,93,.12);border-color:#bdc8d9;transform:translateY(-2px);color:var(--v26-navy);text-decoration:none}
.fav26-service-pictogram{height:49px;width:49px;display:block;object-fit:contain;margin-bottom:6px}
.fav26-service-card strong{display:block;font:700 16.2px/1.16 PTSans,Arial,sans-serif;color:var(--v26-navy);hyphens:auto;overflow-wrap:normal}
.fav26-service-card>span:not(.fav26-card-arrow){font:400 14px/1.3 PTSans,Arial,sans-serif;color:#596886}
.fav26-card-arrow{position:absolute;right:12px;bottom:6px;font:400 24px/1 PTSans,Arial,sans-serif;color:var(--v26-navy)}
/* Check excerpt: recognizable headings of existing result page, not a fabricated score. */
.fav26-checks{background:#fff;padding:67px 0 70px}
.fav26-checks-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:44px;align-items:center}
.fav26-checks-copy p:not(.fav26-kicker){font:17px/1.56 PTSans,Arial,sans-serif;color:#465474;margin:0 0 22px;max-width:490px}
.fav26-button{display:inline-flex;gap:12px;align-items:center;justify-content:center;border-radius:26px;border:1px solid var(--v26-cta);background:var(--v26-cta);color:#fff!important;font:700 15px/1.35 PTSans,Arial,sans-serif;text-decoration:none!important;padding:11px 20px;white-space:normal}
.fav26-button:hover,.fav26-button:focus-visible{background:#95381f;border-color:#95381f;color:#fff!important}
.fav26-laptop-scene{position:relative;background:radial-gradient(ellipse at 65% 80%,rgba(204,214,224,.45) 0%,rgba(246,248,251,0) 65%);padding:26px 12px 12px}
.fav26-laptop{max-width:570px;margin:auto;filter:drop-shadow(0 14px 15px rgba(31,45,68,.18))}
.fav26-laptop-display{height:301px;border:10px solid #262e3c;border-bottom-width:14px;border-radius:12px 12px 3px 3px;background:#fff;overflow:hidden;position:relative}
.fav26-laptop-display:after{content:"";position:absolute;left:0;right:0;top:182px;bottom:0;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.78) 60%,#fff 100%)}
.fav26-check-screen{padding:17px 25px;background:#fff;height:100%;color:#203d4d}
.fav26-check-brand{width:78px;height:auto;max-height:31px;object-fit:contain;margin:0 0 12px}
.fav26-screen-eyebrow{font:700 11px/1.25 PTSans,Arial,sans-serif;color:#5c6a72;text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px}
.fav26-check-screen h3{font:700 27px/1.15 PTSans,Arial,sans-serif;margin:0 0 10px;color:#1f3a49}
.fav26-screen-mark{font:400 11px/1.35 PTSans,Arial,sans-serif;color:#65717e;margin-bottom:22px}
.fav26-check-screen h4{font:700 21px/1.16 PTSans,Arial,sans-serif;margin:0 0 17px;color:#1f3a49}
.fav26-screen-outcome{padding-left:12px;border-left:4px solid #90b04a}
.fav26-screen-rule{display:block;height:7px;background:#e0e5e7;width:93%;margin-bottom:9px;border-radius:1px}
.fav26-screen-rule:nth-child(2){width:75%}.fav26-screen-rule:nth-child(3){width:86%}
.fav26-laptop-base{width:107%;height:14px;margin-left:-3.5%;border-radius:3px 3px 42% 42%;background:linear-gradient(#b7bec9 0%,#e2e7ef 45%,#8e98a8 88%)}
/* Contact only at page end; grey consistent with V25. */
.fav26-contact{padding:39px 0 47px;background:#edf0f6;border-top:1px solid #dee4ed}
.fav26-contact-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:start}
.fav26-contact-inner>div:last-child p{font:16.5px/1.55 PTSans,Arial,sans-serif;color:#455477;margin:0 0 17px}
/* Seven consistent pictograms in services overview & detail intros. */
.fav-services-overview .fav-service-icon{width:54px;height:54px;background:transparent!important;border-radius:0;justify-content:flex-start}
.fav-services-overview .fav-service-icon img{max-width:52px!important;max-height:52px!important;width:52px!important;height:52px!important}
.fav-feature-hero .fav26-feature-icon{display:block;margin:0 0 15px 0;width:54px;height:54px}
/* Calm reference page. Preserve original project descriptions, improve organization and mobile. */
.fav26-references{background:#fff}
.fav26-ref-intro{padding:54px 0 47px;background:linear-gradient(115deg,#eef2f9,#f8f9fc);border-bottom:1px solid #e2e7ef}
.fav26-ref-intro h1{font:700 clamp(32px,3.4vw,44px)/1.14 PTSans,Arial,sans-serif;color:var(--v26-navy);margin:0 0 20px}
.fav26-ref-intro p:not(.fav26-kicker){font:16.9px/1.63 PTSans,Arial,sans-serif;color:#3b4761;max-width:985px;margin:0 0 13px}
.fav26-ref-intro p:last-child{margin-bottom:0!important}
.fav26-ref-container{padding-top:12px;padding-bottom:64px}
.fav26-ref-category{padding:42px 0 14px;border-bottom:1px solid #e1e6ef}
.fav26-ref-category:last-child{border-bottom:0}
.fav26-ref-category-header{max-width:920px;margin:0 0 24px}
.fav26-ref-category-header h2{font:700 27px/1.21 PTSans,Arial,sans-serif;color:var(--v26-navy);margin:0 0 9px}
.fav26-ref-category-header h2:before{content:"";display:block;width:42px;height:3px;background:var(--v26-orange);margin-bottom:16px}
.fav26-ref-category-header p{font:16.2px/1.58 PTSans,Arial,sans-serif;color:#4b5873;margin:0}
.fav26-ref-list{display:grid;gap:15px}
.fav26-references .reference{display:block;box-shadow:none!important;padding:0!important;margin:0!important;border:1px solid #e2e7ef;border-radius:6px;background:#fff!important;overflow:hidden}
.fav26-ref-main{display:grid;grid-template-columns:minmax(0,1fr) 29%;gap:24px;align-items:start;padding:25px 25px 24px}
.fav26-ref-copy{min-width:0}
.fav26-ref-copy h3{font:700 21.5px/1.28 PTSans,Arial,sans-serif;margin:0 0 13px;color:var(--v26-navy)}
.fav26-references .description{font:16.1px/1.6 PTSans,Arial,sans-serif;color:#3d475f}
.fav26-references .description p{margin:0 0 12px;font:inherit}
.fav26-references .description p:last-child{margin-bottom:0}
.fav26-references .fav26-ref-visual{margin:0;min-width:0;align-self:start}
.fav26-references .fav26-ref-visual img{display:block;width:100%;height:174px;object-fit:cover;border-radius:3px}
.fav26-references figcaption{font:12px/1.3 PTSans,Arial,sans-serif;color:#78839a;text-align:right;margin-top:6px}
.fav26-ref-copy .buttons{margin-top:12px}
.fav26-ref-copy .button.more{display:inline-block;border:0;background:transparent!important;color:#33488d!important;border-bottom:1px solid #dc6940;border-radius:0;box-shadow:none!important;padding:0 0 3px;font:700 15px/1.3 PTSans,Arial,sans-serif;text-decoration:none!important}
.fav26-ref-copy .button.more:hover{color:#b64d2b!important}
.fav26-ref-copy .button.more:after{content:"⌄";display:inline-block;margin-left:8px;font-size:19px;line-height:.7}
.fav26-ref-copy .button.more[aria-expanded="true"]:after{transform:rotate(180deg)}
.fav26-ref-highlight{border-left:3px solid var(--v26-orange)!important}
.fav26-ref-founders-inner{display:grid;grid-template-columns:minmax(0,1fr) 32%;gap:30px;align-items:start;background:#f6f8fb;border:1px solid #e4e9f1;padding:27px}
.fav26-ref-founders-inner h3{font:700 22px/1.32 PTSans,Arial,sans-serif;color:var(--v26-navy);margin:0 0 14px}
.fav26-ref-founders-inner p{font:16px/1.63 PTSans,Arial,sans-serif;color:#3d475f;margin:0 0 15px}
.fav26-ref-founders-inner p:last-child{margin-bottom:0}
.fav26-ref-founders-inner figure{margin:0}.fav26-ref-founders-inner img{width:100%;height:238px;object-fit:cover;border-radius:3px}
/* Buttons remaining in sections: white text AA on darker orange. */
.fav-feature-contact .fav-action-link,.fav-services-closing-cta,.fav-contact-closing .fav-action-link,.fav-home-conviction .fav-action-link-accent{background:var(--v26-cta)!important;border-color:var(--v26-cta)!important;color:#fff!important}
@media(max-width:1199px){.fav26-service-card{padding:17px 9px 32px}.fav26-service-card strong{font-size:15px}.fav26-service-card>span:not(.fav26-card-arrow){font-size:13.4px}}
@media(max-width:1000px){.fav26-service-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fav26-service-card{min-height:186px;padding:18px 15px 31px}.fav26-hero-copy{max-width:59%}.fav26-hero-picture{width:48%}.fav26-hero h1{font-size:clamp(39px,5vw,54px)}.fav26-services{padding:37px 0 45px}.fav26-checks-inner{gap:25px}}
@media(max-width:720px){.fav26-hero{min-height:unset}.fav26-hero-inner{min-height:unset;display:block}.fav26-hero-picture{position:relative;width:100%;height:228px;order:2;background-position:center 35%}.fav26-hero-picture:before{display:none}.fav26-hero{display:flex;flex-direction:column}.fav26-hero-inner{order:1}.fav26-hero-copy{max-width:100%;padding:40px 0 33px}.fav26-hero h1{font-size:clamp(44px,10.3vw,61px)}.fav26-hero-subline{font-size:18px;max-width:600px}.fav26-services{padding:36px 0 42px}.fav26-checks{padding:48px 0 51px}.fav26-checks-inner,.fav26-contact-inner{grid-template-columns:1fr;gap:24px}.fav26-checks-copy p:not(.fav26-kicker){max-width:650px}.fav26-ref-main{grid-template-columns:minmax(0,1fr) 34%;gap:18px;padding:19px}.fav26-ref-founders-inner{grid-template-columns:1fr}.fav26-ref-founders-inner img{height:auto;max-height:320px}.fav26-ref-intro{padding:38px 0 35px}.fav26-ref-category{padding:31px 0 9px}.fav26-ref-category-header h2{font-size:24px}}
@media(max-width:560px){.fav26-service-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fav26-service-card{min-height:190px}.fav26-service-card strong{font-size:16px}.fav26-service-card>span:not(.fav26-card-arrow){font-size:14px}.fav26-ref-main{display:flex;flex-direction:column-reverse;align-items:stretch}.fav26-ref-visual{width:100%}.fav26-references .fav26-ref-visual img{height:190px}.fav26-ref-copy{width:100%}.fav26-ref-founders-inner{padding:19px}.fav26-check-screen h3{font-size:23px}.fav26-laptop-display{height:265px}.fav26-laptop-scene{padding:18px 0}.fav26-contact{padding:32px 0 36px}}
@media(max-width:345px){.fav26-service-cards{grid-template-columns:1fr}.fav26-service-card{min-height:145px}}
@media(prefers-reduced-motion:reduce){.fav26-service-card{transition:none}}

/* Prevent inherited Bootstrap clearfix pseudo-elements from taking grid cells. */
.fav26-hero-inner::before,.fav26-hero-inner::after,.fav26-checks-inner::before,.fav26-checks-inner::after,.fav26-contact-inner::before,.fav26-contact-inner::after,.fav26-ref-container::before,.fav26-ref-container::after{display:none!important;content:none!important}
/* Explicit line-breaking is part of the approved seven-card design. */
.fav26-service-card strong{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:340px){.fav26-check-screen{padding:13px 16px}.fav26-laptop-scene{max-width:100%}.fav26-laptop-display{border-left-width:8px;border-right-width:8px}.fav26-hero h1{font-size:41px}}
/* Use the horizontal space of the approved seven-card composition, not the old 970px legacy container. */
@media(min-width:992px){.fav26-home .container,.fav26-references .container{width:calc(100% - 100px)!important;max-width:1140px!important}}
@media(min-width:721px) and (max-width:991px){.fav26-home .container,.fav26-references .container{width:calc(100% - 56px)!important;max-width:900px!important}}
@media(max-width:720px){.fav26-home .container,.fav26-references .container{width:calc(100% - 30px)!important;max-width:660px!important}}

@media(min-width:1001px){.fav26-service-card strong{font-size:14.5px;letter-spacing:-.02em;hyphens:manual;overflow-wrap:normal}}
