/* Touch layouts use document flow instead of desktop overlaps. */
.mobile-identity,.mobile-hero,.mobile-capabilities{display:none}
@media(max-width:720px){
 html{scroll-padding-top:88px}
 .mobile-identity{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;height:76px;padding:12px 24px;background:#1b1b1a;border-bottom:1px solid #ffffff12;box-sizing:border-box}
 .mobile-identity>a{font:400 29px/1 Newsreader,Georgia,serif;letter-spacing:-.7px;color:#ff4f1a;text-decoration:none}
 .mobile-identity em{font-weight:300}
 .mobile-planes{display:flex;gap:3px;transform:rotate(-24deg);margin-right:7px}
 .mobile-planes i{width:12px;height:36px;border-radius:2px;border:1px solid #0b0b0a;background:#fff}
 .mobile-planes i:nth-child(2){background:#ff4f1a;border-color:#fff;transform:translateY(3px)}
 .mobile-planes i:nth-child(3){background:#0b0b0a;border-color:#ff4f1a;transform:translateY(6px)}
 #stage,#bg,.om-bold-curve{display:none!important}
 .mobile-hero{display:block;position:relative;background:#1b1b1a;color:#efefec;padding-top:108px;overflow:hidden}
 .mobile-hero-copy{padding:0 24px;max-width:540px;margin:auto}
 .mobile-hero h2{font:600 clamp(27px,7vw,38px)/1.12 MG12,Arial,sans-serif;letter-spacing:-.035em;color:#ff4f1a;margin:0 0 18px}
 .mobile-hero h2 small{font-size:.56em;white-space:nowrap}
 .mobile-hero-copy>p{font:400 15px/1.55 MG12,Arial,sans-serif;margin:0}
 .mobile-hero-copy .mobile-fronts{font-size:11px;color:#bcbcb6;margin-top:16px}
 .mobile-hero figure{position:relative;margin:24px auto 0;max-width:520px;height:440px;overflow:hidden}
 .mobile-hero img{display:block;width:83%;height:auto;margin:0 0 0 auto;max-width:370px}
 .mobile-hero figcaption{position:absolute;inset:auto 0 0;padding:70px 24px 36px;background:linear-gradient(transparent,#1b1b1a 65%)}
 .mobile-hero h1{font:600 25px/1.2 MG12,Arial,sans-serif;margin:0 0 8px}
 .mobile-hero figcaption p{font:400 14px/1.5 MG12,Arial,sans-serif;margin:0;color:#c9c9c4}
 #boldSection{padding-top:96px}
 #bio{padding:96px 24px 56px;--bio-copy:18px;--bio-key:26px;--bio-gasse:0;--bio-lesen:0px}
 #bio .om-bio-grid{display:block}
 #bio .om-bio-slot{min-height:0!important;margin:0 0 40px!important}
 #bio .om-bio-slot:last-child{margin-bottom:0!important}
 #bio .om-bio-block,#bio .om-bio-halt,#bio .om-bio-text,#bio .om-bio-key{position:static!important;transform:none!important}
 #bio .om-bio-key{font-size:26px;text-align:left;color:#ff4f1a;margin:0 0 18px!important;line-height:1.15}
 #bio .om-bio-text{font-size:18px;line-height:1.6;letter-spacing:0;margin:0;max-width:none}
 #bio .om-bio-slot+.om-bio-slot{border-top:1px solid #ffffff20;padding-top:28px}
 #valor{padding:80px 24px 40px;overflow:clip}
 #valor .value-eyebrow{font-size:10px;line-height:1.5;letter-spacing:.1em;margin-bottom:16px}
 #valor h2{font-size:7.5cqw;line-height:1.12;margin-bottom:20px}
 #valor .value-intro{font-size:15px;line-height:1.5;margin-bottom:24px}
 #valor .value-intro strong{margin-top:12px}
 #valor .value-ledger{padding-top:20px;gap:16px}
 #valor .value-period{margin-bottom:18px}
 #valor .value-period button{font-size:12px;padding:9px 14px;min-height:40px}
 #valor .value-total-label{font-size:16px;line-height:1.3}
 #valor .value-price-context{font-size:13px;margin-bottom:16px}
 #valor .value-total{font-size:clamp(42px,13vw,58px)}
 #valor .value-unit{font-size:14px;margin:10px 0 6px}
 #valor .value-exclusions{font-size:11px;margin:0}
 #valor .value-roles li{padding:12px 0;gap:10px;align-items:center}
 #valor .value-roles h3,#valor .value-roles strong{font-size:16px;margin:0}
 #valor .value-roles p{display:none}
 #valor .value-comparison{margin-top:20px}
 #valor .value-reveal{padding:14px 16px;font-size:15px;min-height:52px}
 #valor .value-bridge{display:none}
 #valor .value-method{margin-top:24px;font-size:12px}
 #valor #value-offer{padding:22px 18px}
 #valor #value-offer p{font-size:14px}
 #valor #value-offer .value-offer-price{font-size:40px}
 #valor #value-offer .value-saving{font-size:32px}
 #valor #value-offer .value-offer-note{font-size:11px}
 /* The old contact transition paints a viewport above itself, over prices. */
 #kontakt{display:none!important}
 #fuss{height:auto;min-height:130px;padding:24px 24px 84px;box-sizing:border-box}
 #fuss .om-fuss-innen{padding:0;width:100%}
 #fuss .om-fuss-zeile{font-size:12px;line-height:1.5}
 #fuss .om-fuss-zeile p{margin:0}
 .bco-contact{right:16px;bottom:max(12px,env(safe-area-inset-bottom));z-index:110}
 .bco-contact-toggle{font-size:13px;min-height:46px;padding:11px 16px;gap:12px}
 .bco-contact-toggle svg{width:20px!important;height:20px!important;flex-basis:20px}
 .bco-contact-options{max-height:calc(100dvh - 164px);overflow:auto}
 .om-drehen{display:none!important}
}
@media(max-width:360px){.mobile-hero-copy,.mobile-identity{padding-left:20px;padding-right:20px}.mobile-hero-copy .mobile-fronts{font-size:10px}.mobile-hero figure{height:410px}}

@media(max-width:720px){
 .mobile-hero{z-index:3;isolation:isolate}
 .om-tiefe{display:none!important}
 /* Keep reading content in the scroll flow; desktop fly-outs remain desktop-only. */
 #boldScroll{height:auto!important;z-index:3;pointer-events:auto}
 #boldSection{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;padding:64px 24px;clip-path:none!important;-webkit-clip-path:none!important;overflow:visible;opacity:1!important;transform:none!important;text-align:left}
 #boldSection .om-manifesto,#boldSection .mf-hoch,#boldSection .mf-line{opacity:1!important;transform:none!important;filter:none!important}
 #boldSection .mf-label{margin:0 0 22px}
 #boldSection .om-manifesto{position:relative;z-index:1}
 #boldSection .mf-line{padding-left:0}
 #boldSection .bco-copy-window{height:auto!important;min-height:0;overflow:visible;mask:none!important;-webkit-mask:none!important}
 #boldSection .bco-copy-track{transform:none!important;padding:0;will-change:auto}
 #boldSection .mf-stapel{margin-top:28px}
 #boldSection .mf-stapel .mf-copy,#boldSection .mf-stapel .mf-copy:first-child{font-size:19px;line-height:1.55}
 #boldSection .mf-stapel .mf-copy+.mf-copy{margin-top:24px}
 #boldSection .mf-line--ende{margin-top:32px;padding-bottom:0}
 #boldSection .mf-schluss{font-size:26px;line-height:1.25}
 #mfRing{display:none!important}
 #streifen{display:block!important;position:relative!important;inset:auto!important;height:auto!important;z-index:3;visibility:visible!important;opacity:1!important;transform:none!important;padding:36px 0 48px;pointer-events:auto!important;touch-action:pan-x pan-y}
 #streifen::before{content:'Tecnologia, marketing e aconselhamento';display:block;padding:0 24px 22px;font-size:14px;color:#efefec}
 #streifen .om-streifen-bahn{min-height:0;padding:0 24px;gap:16px;transform:none!important}
 #streifen .om-streifen-karte{width:min(76vw,340px);flex:0 0 auto;margin:0;scroll-snap-align:center}
 #streifen .om-bild-rahmen{width:100%;height:auto;aspect-ratio:4/3}
 #streifen img{width:100%;height:100%;object-fit:contain}
 #streifen .om-bu{padding-top:12px;font-size:13px}
 .om-streifen-pfeile{display:none!important}
 .om-section-wrap{z-index:3;margin-top:0!important;background:#efefec;overflow:clip}
 .om-section-bg,#constellation,.om-mitte-huelle,.om-section-tail{display:none!important}
 .om-section{position:relative!important;top:auto!important;margin:0!important;height:auto!important;min-height:0!important;padding:64px 24px!important}
 .om-section-inner{transform:none!important;opacity:1!important;display:block!important;max-width:none}
 .om-section-title{padding:0!important;max-width:none!important;width:100%;white-space:nowrap;text-wrap:nowrap;font-size:clamp(28px,8vw,42px)!important;line-height:1.2;letter-spacing:-.035em;opacity:1!important;transform:none!important;margin-bottom:28px}
 .om-title-dot{opacity:1!important}
 #sektKasten{margin:0!important;padding:28px 24px;background:#ff4f1a;opacity:1!important;transform:none!important;backdrop-filter:none;-webkit-backdrop-filter:none}
 #sektKasten .om-section-copy,#sektKasten .om-section-claim{opacity:1!important;transform:none!important;visibility:visible!important}
 #sektKasten .om-section-copy{font-size:17px;line-height:1.6}
 #sektKasten .om-section-copy:first-child{font-size:20px;line-height:1.4}
 #bio{margin-top:0!important}
}
@media(max-width:720px){
 #streifen{display:none!important}
 .mobile-capabilities{display:block;position:relative;z-index:3;background:#161615;color:#efefec;padding:64px 24px 60px}
 .mobile-capabilities .capabilities-eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.5;color:#ff8a65;margin:0 0 16px}
 .mobile-capabilities h2{font-size:30px;line-height:1.15;letter-spacing:-.025em;margin:0 0 18px;font-weight:600}
 .capabilities-intro{font-size:15px;line-height:1.6;color:#bcbcb6;max-width:34ch;margin:0 0 30px}
 .capabilities-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;border-radius:14px;touch-action:pan-x pan-y}
 .capabilities-track::-webkit-scrollbar{display:none}
 .capabilities-track img{display:block;flex:0 0 100%;min-width:0;width:100%;height:auto;aspect-ratio:4/3;scroll-snap-align:start;border-radius:14px;object-fit:contain}
 .capabilities-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}
 .capabilities-controls>span{font-size:12px;color:#bcbcb6}
 .capabilities-controls>div{display:flex;gap:8px}
 .capabilities-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #686863;border-radius:50%;background:transparent;color:#efefec;font:24px/1 Arial,sans-serif;cursor:pointer}
 .capabilities-controls button:hover{background:#ff4f1a;color:#0b0b0a;border-color:#ff4f1a}
 .om-section{padding-top:72px!important;padding-bottom:72px!important}
 .om-section-title{margin-bottom:32px}
 #sektKasten{padding:32px 26px;border-radius:18px}
 #sektKasten .om-section-copy+.om-section-copy{margin-top:24px}
}

@media(max-width:720px){
 .mobile-hero figure{height:auto;margin-top:16px;max-width:520px;overflow:visible}
 .mobile-hero img{width:80%;max-width:330px;height:clamp(220px,34svh,290px);object-fit:cover;object-position:center top;margin:0 auto}
 .mobile-hero figcaption{position:relative;inset:auto;margin-top:-40px;padding:40px 24px 82px;background:linear-gradient(transparent,#1b1b1a 40px)}
 .mobile-hero figcaption p{max-width:28ch}
}

@media(max-width:360px){.mobile-hero img{height:190px}}
