/* ideal-heim-bau – Karriere V13. Scoped to native SP Page Builder career layout. */
body.ihb-page:has(.ihb-career-hero){--cr-deep:#122b43;--cr-ink:#17314b;--cr-mid:#285070;--cr-ice:#e9f0f7;--cr-sand:#e8d7c3;--cr-muted:#5c7187;background:#f6f8fb;}
body.ihb-page:has(.ihb-career-hero) .ihb-content{padding-top:0!important;overflow:hidden}
body.ihb-page:has(.ihb-career-hero) .ihb-content>h1,
body.ihb-page:has(.ihb-career-hero) .ihb-content>.page-header,
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-page-title,
body.ihb-page:has(.ihb-career-hero) .ihb-content .sp-pagebuilder-title,
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-page-title-wrap{display:none!important}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section{margin:0!important}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-container-inner,
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-row-container{width:min(1320px,calc(100% - 96px));max-width:1320px;margin-inline:auto;padding:0!important}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section .sppb-row{margin:0!important;gap:0}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section .sppb-row>.sppb-row-column{min-width:0}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section .sppb-addon-wrapper{min-width:0}
body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-addon p{font-size:16px;line-height:1.83;color:#64788b;margin:0 0 20px}
body.ihb-page:has(.ihb-career-hero) .ihb-content a:focus-visible,
body.ihb-page:has(.ihb-career-hero) .ihb-content button:focus-visible{outline:3px solid #c5a47b;outline-offset:4px}
.ihb-career-kicker p{font-size:11px!important;font-weight:800!important;letter-spacing:.17em!important;color:#9d7955!important;line-height:1.5!important;text-transform:uppercase;margin:0 0 19px!important}
.ihb-career-heading .sppb-addon-title{font:400 clamp(43px,4.6vw,76px)/1.08 var(--ihb-serif,Georgia,serif)!important;letter-spacing:-.048em!important;color:#1d3a53!important;margin:0 0 25px!important}
.ihb-career-heading em,.ihb-career-hero-title em{font-weight:400!important;color:#c7ab89!important}
.ihb-career-copy p{max-width:670px}
.ihb-career-lead{font:400 clamp(22px,2.4vw,34px)/1.48 var(--ihb-serif,Georgia,serif)!important;color:#2c4c64!important}
/* Native Button addons: class is on the actual <a>, not its wrapper. */
a.sppb-btn.ihb-career-btn-sand{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:59px!important;padding:17px 26px!important;background:#e8d7c3!important;border:1px solid #e8d7c3!important;border-radius:2px!important;color:#18354d!important;font:800 11px/1.4 var(--ihb-sans,Arial,sans-serif)!important;letter-spacing:.1em!important;text-transform:uppercase!important;box-shadow:none!important;text-decoration:none!important;white-space:normal!important;transition:background .22s,border-color .22s,transform .22s!important}
a.sppb-btn.ihb-career-btn-sand:hover{background:#f4e7d7!important;border-color:#f4e7d7!important;color:#18354d!important;transform:translateY(-2px)}
a.sppb-btn.ihb-career-btn-text, a.sppb-btn.ihb-career-role-link{display:inline-flex!important;align-items:center!important;padding:12px 0 9px!important;min-height:0!important;color:#264860!important;border:0!important;border-bottom:1px solid #b89a77!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;line-height:1.5!important;font-size:11px!important;letter-spacing:.1em!important;font-weight:800!important;text-transform:uppercase!important;text-decoration:none!important;transition:color .22s,transform .22s!important}
a.sppb-btn.ihb-career-btn-text:hover,a.sppb-btn.ihb-career-role-link:hover{transform:translateX(4px);color:#a47f54!important}
/* Hero – original V7 split photo/copy editorial design */
.ihb-career-hero{background:#132c44!important;min-height:730px!important;overflow:hidden!important;isolation:isolate}
.ihb-career-hero>.sppb-container-inner,.ihb-career-hero>.sppb-row-container{max-width:none!important;width:100%!important}
.ihb-career-hero .sppb-row{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;min-height:730px}
.ihb-career-hero .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;min-width:0!important;padding:0!important}
.ihb-career-hero .sppb-row>.sppb-row-column:first-child{position:relative;background:linear-gradient(133deg,#10263c,#1a3a55);display:flex;align-items:center;isolation:isolate;min-height:730px}
.ihb-career-hero .sppb-row>.sppb-row-column:first-child:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#c6d9e412 1px,transparent 1px),linear-gradient(90deg,#c6d9e412 1px,transparent 1px);background-size:70px 70px;z-index:-1;pointer-events:none}
.ihb-career-hero .sppb-row>.sppb-row-column:first-child .sppb-column-addons{width:100%;padding:108px clamp(34px,5.1vw,104px) 112px max(48px,calc((100vw - 1320px)/2));}
.ihb-career-hero .ihb-career-kicker p{color:#dbc4a4!important}
.ihb-career-hero-title .sppb-addon-title{font:400 clamp(60px,5.8vw,106px)/.99 var(--ihb-serif,Georgia,serif)!important;letter-spacing:-.053em!important;color:#fff!important;max-width:770px!important;margin:30px 0!important}
.ihb-career-hero-lead p{font-size:clamp(16px,1.3vw,20px)!important;color:#dbe5ed!important;line-height:1.76!important;max-width:560px!important;margin:0 0 35px!important}
.ihb-career-hero .sppb-row>.sppb-row-column:last-child{min-height:730px!important;position:relative;overflow:hidden;background:#1c394e}
.ihb-career-hero .sppb-row>.sppb-row-column:last-child .sppb-column,.ihb-career-hero .sppb-row>.sppb-row-column:last-child .sppb-column-addons{height:100%}
.ihb-career-hero .sppb-row>.sppb-row-column:last-child .sppb-column-addons>.sppb-addon-wrapper:has(.ihb-career-hero-photo){height:100%;position:absolute;inset:0}
.ihb-career-hero-photo,.ihb-career-hero-photo .sppb-addon-single-image-container,.ihb-career-hero-photo .sppb-addon-content,.ihb-career-hero-photo .sppb-addon-single-image-container a{height:100%;width:100%;display:block!important}
.ihb-career-hero-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
.ihb-career-hero .sppb-row>.sppb-row-column:last-child .sppb-column-addons:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#142c4244,transparent 30%),linear-gradient(0deg,#13293d6e,transparent 36%);pointer-events:none}
.ihb-career-hero-bottom{position:absolute;bottom:22px;left:max(48px,calc((100vw - 1320px)/2));right:40px;border-top:1px solid #ffffff30;padding-top:20px}
.ihb-career-hero-bottom p{color:#cddbe6!important;margin:0!important;font:700 10px/1.4 var(--ihb-sans,Arial,sans-serif)!important;letter-spacing:.12em!important;word-spacing:.6em}
.ihb-career-hero-bottom span{margin-left:clamp(8px,1.5vw,35px)}
.ihb-career-hero .sppb-addon-wrapper:has(.ihb-career-btn-text){position:absolute;bottom:70px;left:max(48px,calc((100vw - 1320px)/2));}
.ihb-career-hero .ihb-career-btn-text.sppb-btn{color:#dce7f2!important;border-bottom-color:#ffffff80!important}
/* Intro */
.ihb-career-intro{padding:125px 0 68px!important;background:#fbfcfd!important}
.ihb-career-intro .sppb-row{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;gap:8%!important;align-items:start}
.ihb-career-intro .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;padding:0!important}
.ihb-career-intro .sppb-row>.sppb-row-column:last-child{padding-top:10px!important}
/* Original montage image + editorial annotation */
/* Areas – filter and JS-enhanced accordion with native editable SP addons */
.ihb-career-jobs-head{scroll-margin-top:90px;padding:118px 0 26px!important;background:#e9f0f7!important}
.ihb-career-jobs-head .sppb-row{display:grid!important;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;gap:9%!important;align-items:start}
.ihb-career-jobs-head .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;padding:0!important}
.ihb-career-jobs-head .ihb-career-heading .sppb-addon-title{font-size:clamp(47px,4.6vw,73px)!important}
.ihb-career-jobs-head .sppb-row>.sppb-row-column:last-child{padding-top:13px!important}
.ihb-career-filter-title{border-bottom:1px solid #bdcbd8;padding:0 0 14px}
.ihb-career-filter-title p{display:flex;justify-content:space-between;gap:20px;font:800 11px/1.4 var(--ihb-sans,Arial,sans-serif)!important;letter-spacing:.14em!important;color:#668097!important;margin:0!important}
.ihb-career-filters{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 20px}
.ihb-career-filters button{appearance:none;border:1px solid #b8c9d7;background:transparent;color:#284a64;min-height:40px;font:750 11px/1.4 var(--ihb-sans,Arial,sans-serif);letter-spacing:.04em;padding:10px 16px;cursor:pointer;transition:background .2s,color .2s}
.ihb-career-filters button:hover,.ihb-career-filters button[aria-pressed="true"]{background:#24435e;color:#fff;border-color:#24435e}
.ihb-career-filter-note p{font-size:13px!important;color:#7b8fa1!important}
/* Career V13.1: filters and role accordions share the SAME right SP Page Builder column. */
.ihb-career-jobs-head{padding-bottom:115px!important}
.ihb-career-jobs-head .sppb-row>.sppb-row-column:last-child .sppb-column-addons{min-width:0}
.ihb-career-jobs-head .sppb-row>.sppb-row-column:last-child{min-width:0}
.ihb-career-role{border-top:1px solid #bdcbd8;min-width:0}
.ihb-career-role[hidden]{display:none!important}
.ihb-career-role-toggle{display:grid;grid-template-columns:37px minmax(0,1fr) 30px;gap:14px;align-items:center;width:100%;padding:22px 0 24px;background:transparent;border:0;text-align:left;color:#1d3b55;cursor:pointer;min-height:104px}
.ihb-career-role-toggle:hover .title{color:#a28260}
.ihb-career-role-toggle .no{font:800 11px/1.4 var(--ihb-sans,Arial,sans-serif);color:#aa896a;align-self:start;margin-top:14px}
.ihb-career-role-toggle .title{font:400 clamp(24px,2.1vw,34px)/1.19 var(--ihb-serif,Georgia,serif);letter-spacing:-.035em;display:block;overflow-wrap:break-word;transition:color .2s}
.ihb-career-role-toggle .meta{display:block;font:800 10px/1.3 var(--ihb-sans,Arial,sans-serif);letter-spacing:.13em;color:#7e92a5;margin-top:9px}
.ihb-career-role-toggle .mark{font-size:29px;font-weight:300;color:#2d526e;transition:transform .2s}
.ihb-career-role.ihb-career-expanded .mark{transform:rotate(45deg)}
.ihb-career-role-addons[hidden]{display:none!important}
.ihb-career-role-addons>.sppb-addon-wrapper:has(.ihb-career-role-num),.ihb-career-role-addons>.sppb-addon-wrapper:has(.ihb-career-role-title),.ihb-career-role-addons>.sppb-addon-wrapper:has(.ihb-career-role-meta){display:none!important}
.ihb-career-role-copy p{padding:0 12px 0 51px;margin:0 0 15px!important;max-width:730px}
.ihb-career-role .sppb-addon-wrapper:has(.ihb-career-role-link){padding:0 0 25px 51px}
.ihb-career-role-num p{font-size:12px!important;color:#ae8b6d!important}
.ihb-career-role-title .sppb-addon-title{font:400 27px/1.3 var(--ihb-serif,Georgia,serif)!important;color:#1e3d57!important;margin:0 0 6px!important}
.ihb-career-role-meta p{font-size:11px!important;letter-spacing:.11em;color:#8193a4!important}
.ihb-career-jobs-note{margin:24px 0 0}
.ihb-career-jobs-note p{font-size:12px!important;color:#718599!important;max-width:650px;margin:0!important}
/* Values */
.ihb-career-values{background:#16324c!important;padding:120px 0!important}
.ihb-career-values .sppb-row{display:grid!important;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)!important;gap:10%!important}
.ihb-career-values .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;padding:0!important}
.ihb-career-values .ihb-career-kicker p{color:#cfb69a!important}
.ihb-career-values .ihb-career-heading .sppb-addon-title{color:#fff!important}
.ihb-career-values .ihb-career-copy p{color:#c4d4e0!important}
.ihb-career-values .sppb-row>.sppb-row-column:last-child .sppb-column-addons{border-top:1px solid #ffffff2c}
.ihb-career-values .sppb-addon-wrapper:has(.ihb-career-value-title){border-top:1px solid #ffffff2a;padding-top:24px;margin-top:20px}
.ihb-career-values .sppb-addon-wrapper:has(.ihb-career-value-title):first-child{border:0;margin-top:0}
.ihb-career-value-title .sppb-addon-title{font:400 clamp(24px,2.2vw,36px)/1.22 var(--ihb-serif,Georgia,serif)!important;color:#f5f8fc!important;margin:0 0 10px!important}
.ihb-career-value-copy p{color:#c4d5e3!important;font-size:15px!important;max-width:600px}
/* Guided contact journey */
.ihb-career-path-head{background:#fbfcfd!important;padding:115px 0 43px!important}
.ihb-career-path-head .ihb-career-copy p{max-width:750px}
.ihb-career-path{background:#fbfcfd!important;padding:0 0 110px!important}
.ihb-career-path .sppb-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important}
.ihb-career-path .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;padding:27px 0!important;border-top:1px solid #c5d0da}
.ihb-career-step-num .sppb-addon-title{font:400 53px/1 var(--ihb-serif,Georgia,serif)!important;color:#bca17f!important;margin:0 0 25px!important}
.ihb-career-step-name .sppb-addon-title{font:400 29px/1.2 var(--ihb-serif,Georgia,serif)!important;color:#1f3c56!important;margin:0 0 15px!important}
.ihb-career-step-desc p{font-size:15px!important;line-height:1.75!important;max-width:345px}
/* FAQ: JS augments native Heading + Text Block pairs */
.ihb-career-faq-head{background:#f0f5f9!important;padding:112px 0 40px!important}
.ihb-career-faq-head .ihb-career-copy p{max-width:550px}
.ihb-career-faq-item{background:#f0f5f9!important}
.ihb-career-faq-item .sppb-row{width:60%!important;margin-left:auto!important;border-top:1px solid #c7d4df}
.ihb-career-faq-item .sppb-row>.sppb-row-column{width:100%!important;max-width:none!important;flex:none!important;padding:0!important}
.ihb-career-faq-item .sppb-column-addons{padding:20px 0 23px}
.ihb-career-faq-toggle{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;background:none;border:0;padding:12px 0;text-align:left;color:#24445e;cursor:pointer;font:400 clamp(23px,2.4vw,34px)/1.25 var(--ihb-serif,Georgia,serif);letter-spacing:-.025em}
.ihb-career-faq-toggle span:last-child{font:300 30px/1 var(--ihb-sans,Arial,sans-serif);transition:transform .2s}
.ihb-career-faq-item.ihb-career-expanded .ihb-career-faq-toggle span:last-child{transform:rotate(45deg)}
.ihb-career-faq-item.ihb-career-ready .sppb-addon-wrapper:has(.ihb-career-faq-question){display:none}
.ihb-career-faq-item.ihb-career-ready:not(.ihb-career-expanded) .sppb-addon-wrapper:has(.ihb-career-faq-answer){display:none}
.ihb-career-faq-answer p{font-size:15px!important;color:#5f768c!important;max-width:740px;margin:8px 0!important}
.ihb-career-faq-item:nth-last-of-type(2){padding-bottom:55px!important}
/* Final CTA */
.ihb-career-final{scroll-margin-top:90px;background:#132d45!important;padding:110px 0 118px!important}
.ihb-career-final .sppb-row{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;gap:9%!important;align-items:center}
.ihb-career-final .sppb-row>.sppb-row-column{width:auto!important;max-width:none!important;flex:none!important;padding:0!important}
.ihb-career-final .ihb-career-kicker p{color:#d9b994!important}
.ihb-career-final .ihb-career-heading .sppb-addon-title{color:#f3f7fb!important}
.ihb-career-final .ihb-career-copy p{color:#c9d6e2!important;max-width:680px}
.ihb-career-final .sppb-row>.sppb-row-column:last-child .sppb-column-addons{padding:37px 39px;border:1px solid #ffffff38;background:#ffffff0a}
.ihb-career-phone p{font-size:15px!important;color:#e4ecf2!important;margin:24px 0 5px!important}
.ihb-career-phone a{color:#f4dcc0!important;text-decoration:none!important;font-weight:750}
.ihb-career-mail-note p{color:#9fb4c6!important;font-size:12px!important;margin:10px 0 0!important}
@media(max-width:1100px){
 .ihb-career-hero .sppb-row>.sppb-row-column:first-child .sppb-column-addons{padding:75px 40px 115px}
 .ihb-career-hero-bottom,.ihb-career-hero .sppb-addon-wrapper:has(.ihb-career-btn-text){left:40px}
 .ihb-career-hero .sppb-row,.ihb-career-hero .sppb-row>.sppb-row-column:first-child,.ihb-career-hero .sppb-row>.sppb-row-column:last-child{min-height:660px!important}
}
@media(max-width:800px){
 body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-container-inner,
 body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-row-container{width:calc(100% - 48px)!important}
 .ihb-career-hero .sppb-row{grid-template-columns:1fr!important;min-height:0!important}
 .ihb-career-hero .sppb-row>.sppb-row-column:first-child{min-height:560px!important}
 .ihb-career-hero .sppb-row>.sppb-row-column:first-child .sppb-column-addons{padding:75px 36px 115px}
 .ihb-career-hero-bottom,.ihb-career-hero .sppb-addon-wrapper:has(.ihb-career-btn-text){left:36px}
 .ihb-career-hero .sppb-row>.sppb-row-column:last-child{min-height:430px!important}
 .ihb-career-intro,.ihb-career-values{padding:82px 0!important}
 .ihb-career-intro .sppb-row,.ihb-career-jobs-head .sppb-row,.ihb-career-values .sppb-row,.ihb-career-final .sppb-row{grid-template-columns:1fr!important;gap:20px!important}
 .ihb-career-jobs-head{padding:85px 0 24px!important}
 .ihb-career-faq-item .sppb-row{width:100%!important;max-width:100%!important;margin-left:0!important}
 .ihb-career-path .sppb-row{grid-template-columns:1fr!important;gap:0!important}
 .ihb-career-path-head{padding:90px 0 35px!important}
 .ihb-career-path{padding-bottom:85px!important}
 .ihb-career-faq-head{padding-top:88px!important}
 .ihb-career-final{padding:90px 0!important}
 .ihb-career-final .sppb-row>.sppb-row-column:last-child .sppb-column-addons{padding:28px}
}
@media(max-width:520px){
 body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-container-inner,
 body.ihb-page:has(.ihb-career-hero) .ihb-content .sppb-section>.sppb-row-container{width:calc(100% - 36px)!important}
 .ihb-career-hero .sppb-row>.sppb-row-column:first-child .sppb-column-addons{padding:60px 23px 125px}
 .ihb-career-hero-title .sppb-addon-title{font-size:clamp(52px,11vw,74px)!important}
 .ihb-career-hero .sppb-row>.sppb-row-column:first-child{min-height:560px!important}
 .ihb-career-hero .sppb-row>.sppb-row-column:last-child{min-height:340px!important}
 .ihb-career-hero-bottom,.ihb-career-hero .sppb-addon-wrapper:has(.ihb-career-btn-text){left:23px}
 .ihb-career-hero-bottom{right:20px}
 .ihb-career-hero-bottom p{font-size:9px!important;word-spacing:0}
 .ihb-career-hero-bottom span{margin-left:6px}
 .ihb-career-heading .sppb-addon-title{font-size:clamp(39px,9vw,53px)!important}
 .ihb-career-role-toggle{grid-template-columns:28px minmax(0,1fr) 23px;gap:9px}
 .ihb-career-role-toggle .title{font-size:26px}
 .ihb-career-role-copy p{padding:0 10px 0 35px}
 .ihb-career-role .sppb-addon-wrapper:has(.ihb-career-role-link){padding-left:35px}
}
@media(prefers-reduced-motion:reduce){.ihb-career-filters button,a.sppb-btn.ihb-career-btn-sand,.ihb-career-role-toggle .mark{transition:none!important}}

/* V13.1 UX refinement: responsive job list and filter controls */
.ihb-career-jobs-head .ihb-career-filters{margin:23px 0 12px}
.ihb-career-jobs-head .ihb-career-filter-note{margin-bottom:16px}
.ihb-career-jobs-head .ihb-career-filter-note p{margin-bottom:12px!important}
@media(max-width:800px){.ihb-career-jobs-head{padding-bottom:82px!important}.ihb-career-jobs-head .sppb-row{gap:32px!important}.ihb-career-role-toggle{grid-template-columns:31px minmax(0,1fr) 26px;gap:10px}.ihb-career-role-toggle .title{font-size:clamp(23px,6vw,31px)}.ihb-career-role-copy p{padding-left:41px}.ihb-career-role .sppb-addon-wrapper:has(.ihb-career-role-link){padding-left:41px}}
@media(max-width:420px){.ihb-career-filters button{padding:10px 12px;font-size:11px}.ihb-career-role-toggle .title{font-size:25px}}
