/* Visual master polish; Astraflow interior only. */
body.bbm-af-demo .af-site #demo-main .af-section{padding-block:clamp(62px,5.2vw,92px);gap:32px}
body.bbm-af-demo .af-site #demo-main .af-hero{min-height:calc(100svh - 86px);padding-block:65px;justify-content:center}
body.bbm-af-demo #demo-main .af-hero-art img{filter:brightness(1.15) saturate(1.15) contrast(1.05)}
body.bbm-af-demo #demo-main .af-hero-art{mask-image:linear-gradient(#000 0 83%,transparent)}
body.bbm-af-demo #demo-main .af-hero-copy{z-index:3}
body.bbm-af-demo #demo-main .af-hero .af-button:first-child .elementor-button{padding:19px 28px;font-size:12px;box-shadow:0 0 22px #6a57ff80,inset 0 1px #e9c5ff99!important;border-color:#c7b4ff!important}
body.bbm-af-demo #demo-main .af-hero .af-button:first-child .elementor-button:hover{box-shadow:0 0 36px #9663ffaa!important}
body.bbm-af-demo #demo-main .af-pillars-grid{gap:25px}
body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card){isolation:isolate;overflow:hidden;border-radius:12px!important;border:1px solid #8e8df073!important;background:radial-gradient(ellipse at 95% 0%,#3052aa28,transparent 58%),linear-gradient(140deg,#10132ce8,#080b1de8)!important;box-shadow:inset 0 1px #bcc4ff25,inset 0 -1px #9254ff35,0 12px 38px #0003!important;transition:transform .3s,border-color .3s,box-shadow .3s}
body.bbm-af-demo #demo-main .af-pillar{min-height:320px;padding:36px 30px;gap:22px}
body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card):hover{transform:translateY(-5px);border-color:#bb94ff!important;box-shadow:0 14px 48px #5c3de445,inset 0 1px #e2caff50,0 0 16px #8c64ef35!important}
body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card)>:not(.af-master-net):not(.af-module-art){position:relative;z-index:2}
body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card) svg:not(.af-master-svg){width:52px;height:52px;padding:8px;border:1px solid #aa70f75c;border-radius:13px;color:#c590ff;background:radial-gradient(#8543d93b,#24144666);filter:drop-shadow(0 0 9px #9756f794);transition:filter .3s,transform .3s}
body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card):hover svg:not(.af-master-svg){filter:drop-shadow(0 0 15px #ab6affcc);transform:translateY(-2px)}
.af-master-net{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.9;overflow:hidden}
.af-master-svg{width:100%;height:100%;display:block}
.af-master-svg path{fill:none;stroke:#7289ff;stroke-width:.65;opacity:.19}
.af-master-svg .af-master-signal{stroke:#c3a2ff;stroke-width:1.5;stroke-dasharray:4 96;opacity:.9;filter:drop-shadow(0 0 4px #8968ff);animation:af-flow-travel 11s linear infinite}
.af-master-svg circle{fill:#94c2ff;filter:drop-shadow(0 0 5px #658aff);animation:af-master-node 4s ease-in-out infinite alternate}
.af-pillar:nth-child(2) .af-master-signal,.af-service-card:nth-child(2n) .af-master-signal{animation-delay:-4s;stroke:#ee9aff}
.af-pillar:nth-child(3) .af-master-signal,.af-service-card:nth-child(3n) .af-master-signal{animation-delay:-8s}
body.bbm-af-demo #demo-main .af-card-arrow{position:absolute!important;right:0;bottom:0;width:35px;height:35px;border:1px solid #ad78f18c;border-radius:50%;display:grid;place-items:center;font-size:19px;color:#d2acff}
body.bbm-af-demo #demo-main .af-services-grid{gap:22px}
body.bbm-af-demo #demo-main .af-service-card{min-height:295px;padding:29px 24px!important;gap:19px}
body.bbm-af-demo #demo-main .af-service-card .elementor-heading-title{font-size:20px;line-height:1.2;max-width:100%}
body.bbm-af-demo #demo-main .af-service-card .af-text{font-size:13px;line-height:1.7}
body.bbm-af-demo #demo-main .af-module-art{display:none}
body.bbm-af-demo #demo-main .af-service-detail{margin-top:auto;border-color:#8b73ca3c}
body.bbm-af-demo #demo-main .af-process{overflow:visible;padding-top:70px;padding-bottom:75px}
body.bbm-af-demo #demo-main .af-process-grid{padding-top:25px!important;gap:28px}
body.bbm-af-demo #demo-main .af-process-flow{display:block;top:-4px;left:0;right:0;height:130px}
body.bbm-af-demo #demo-main .af-process-flow path{opacity:.72;stroke-width:1.2;filter:drop-shadow(0 0 6px #955cff)}
body.bbm-af-demo #demo-main .af-process-flow .af-flow-pulse{opacity:1;stroke-width:2.5}
body.bbm-af-demo #demo-main .af-step-orb{width:60px;height:60px;background:radial-gradient(#311e54,#090c1c 68%);border-color:#c091ff;box-shadow:0 0 22px #7644d35c,inset 0 0 14px #ac71ff20}
body.bbm-af-demo #demo-main .af-step{gap:19px}.af-site #demo-main .af-step .elementor-heading-title{font-size:21px}
body.bbm-af-demo #demo-main .af-usecases{border-color:#a795e56b!important;border-radius:13px;padding:25px;box-shadow:0 0 35px #6142b51c,inset 0 1px #d7c7ff26!important}
body.bbm-af-demo #demo-main .af-use-panel{min-height:300px;grid-template-columns:1.05fr 1fr}
body.bbm-af-demo #demo-main .af-case-visual{min-height:300px;position:relative;border:1px solid #7c81d459;box-shadow:0 0 22px #405bce25}
body.bbm-af-demo #demo-main .af-case-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,#9baaff20 50%,transparent 60%);transform:translateX(-110%);transition:transform .9s;pointer-events:none}
body.bbm-af-demo #demo-main .af-usecases:hover .af-case-visual:after{transform:translateX(110%)}
body.bbm-af-demo #demo-main .af-use-tabs button{transition:background .2s,border-color .2s,box-shadow .2s}
body.bbm-af-demo #demo-main .af-use-tabs button:hover{border-color:#b999fa!important;box-shadow:0 0 17px #8453db40!important}
body.bbm-af-demo #demo-main .af-mountain{min-height:580px;padding-block:90px;background-size:cover;position:relative}
body.bbm-af-demo #demo-main .af-mountain:after{right:15%;top:23%;width:150px;height:150px;filter:blur(8px);background:radial-gradient(#eed7ff70,#aa6bfc35 20%,transparent 65%)}
body.bbm-af-demo #demo-main .af-grand-finale{min-height:360px;padding-block:75px;mask-image:none;border-top:1px solid #a579e359!important;border-bottom:1px solid #a579e359!important;background-size:auto 175%;box-shadow:inset 0 20px 70px #5d22ad12}
body.bbm-af-demo #demo-main .af-grand-finale .af-button .elementor-button{font-size:12px;padding:18px 28px;box-shadow:0 0 26px #7857ff8a!important}
body.bbm-af-demo #demo-main .af-finale-art path{opacity:.68;filter:drop-shadow(0 0 5px #ab77ff)}
body.bbm-af-demo #demo-main .af-finale-art path:nth-child(3n){opacity:1;stroke-width:2.3}
body[data-af-view=kontakt] #demo-main .af-contact{gap:6%;padding-block:65px}
body[data-af-view=kontakt] #demo-main .af-contact-copy{gap:40px;padding-block:16px;justify-content:space-evenly}
body[data-af-view=kontakt] #demo-main .af-contact-point{border:0!important;box-shadow:none!important;backdrop-filter:none;background:linear-gradient(90deg,#101128b0,transparent)!important;min-height:105px;padding:18px 20px!important}
body[data-af-view=kontakt] #demo-main .af-contact-form{border-color:#9784f485!important;background:radial-gradient(ellipse at 100% 0,#56399325,transparent 55%),linear-gradient(130deg,#11172beb,#080b1eea)!important;box-shadow:inset 0 1px #d4ceff35,0 0 30px #7451cd20,0 20px 60px #0003!important;backdrop-filter:blur(16px)}
body[data-af-view=kontakt] #demo-main .af-contact-form .af-native-btn{box-shadow:0 0 18px #a34fed50!important}
body[data-af-view=kontakt] #demo-main .af-contact-flow path{opacity:.7;stroke:#837cf7}.af-contact-flow .af-contact-pulse{filter:drop-shadow(0 0 9px #ae79ff)}
body[data-af-view=kontakt] #demo-main .af-meeting{padding-block:36px;position:relative;overflow:hidden;border-color:#ad8fe563;background:linear-gradient(105deg,#331d5140,#15112412)!important;box-shadow:inset 0 0 42px #7444bd12}
body[data-af-view=kontakt] #demo-main .af-meeting .elementor-heading-title{font-size:27px}
body[data-af-view=kontakt] #demo-main .af-remote{padding-block:60px;position:relative}
body[data-af-view=kontakt] #demo-main .af-remote-globe{height:360px;filter:brightness(1.24) saturate(1.1);mask-image:radial-gradient(ellipse at 62% 50%,#000 15%,#000c 50%,transparent 76%)}
body[data-af-view=kontakt] #demo-main .af-remote>.elementor-widget-html{position:relative}
.af-network-caption{position:absolute;right:7%;bottom:13%;padding:17px 22px;border:1px solid #978ae577;border-radius:12px;color:#e8dfff;background:#080d23d9;backdrop-filter:blur(12px);font:600 13px/1.45 Roboto,sans-serif;box-shadow:0 0 24px #6a47d426}
body.bbm-af-demo .af-check{background:radial-gradient(ellipse at 90% 25%,#25144777,transparent 65%),#060918ed;border-color:#a294ff;box-shadow:0 0 5px #8894ff,0 0 35px #6550ee55,inset 0 1px #dad2ff66,0 35px 100px #000c;backdrop-filter:blur(24px)}
body.bbm-af-demo .af-check-work,body.bbm-af-demo .af-check-preview{background:linear-gradient(135deg,#11162c9e,#080b1ad9);border-color:#8b82d76e;box-shadow:inset 0 1px #c9bbff13}
body.bbm-af-demo .af-choice{background:linear-gradient(140deg,#11142bbf,#080d1dd9);border-color:#877acf78;transition:box-shadow .25s,border-color .25s,background .25s}
body.bbm-af-demo .af-choice:hover{border-color:#b59aff;box-shadow:inset 0 0 18px #7850e01a,0 0 14px #654ee425}
body.bbm-af-demo .af-choice[aria-pressed=true]{background:linear-gradient(125deg,#51349e80,#111b4ee0);box-shadow:inset 0 0 18px #9964ff25,0 0 17px #7655ef66;border-color:#bca4ff}
body.bbm-af-demo .af-potential-art{filter:drop-shadow(0 0 12px #8d5ee84d)}
@keyframes af-master-node{from{opacity:.35}to{opacity:1}}
@media(max-width:1100px){body.bbm-af-demo #demo-main .af-pillar{padding:28px 22px;min-height:285px}body.bbm-af-demo #demo-main .af-service-card{padding:25px 21px!important}body.bbm-af-demo #demo-main .af-section{padding-block:65px}}
@media(max-width:767px){body.bbm-af-demo .af-site #demo-main .af-section{padding-block:54px;gap:27px}body.bbm-af-demo .af-site #demo-main .af-hero{min-height:max(740px,calc(100svh - 126px));padding-top:40px;padding-bottom:34px;justify-content:flex-start}body.bbm-af-demo #demo-main .af-hero .af-button:first-child .elementor-button{padding:14px 17px;font-size:10px}body.bbm-af-demo #demo-main .af-pillars-grid{gap:20px}body.bbm-af-demo #demo-main .af-pillar{min-height:260px;padding:28px}body.bbm-af-demo #demo-main .af-service-card{min-height:265px;padding:28px!important}body.bbm-af-demo #demo-main .af-process-grid{gap:38px 22px}body.bbm-af-demo #demo-main .af-process-flow{display:none}body.bbm-af-demo #demo-main .af-use-panel{grid-template-columns:1fr}body.bbm-af-demo #demo-main .af-usecases{padding:18px}body.bbm-af-demo #demo-main .af-case-visual{min-height:245px}body.bbm-af-demo #demo-main .af-mountain{min-height:730px;padding-bottom:300px}body.bbm-af-demo #demo-main .af-grand-finale{min-height:400px;padding-block:60px}body[data-af-view=kontakt] #demo-main .af-hero{padding-bottom:330px;min-height:780px}body[data-af-view=kontakt] #demo-main .af-contact-copy{gap:24px}body[data-af-view=kontakt] #demo-main .af-contact-point{padding:18px!important}body[data-af-view=kontakt] #demo-main .af-remote-globe{height:260px}.af-network-caption{right:2%;bottom:4%;font-size:11px;padding:12px 16px}.af-master-svg{opacity:.7}}
@media(prefers-reduced-motion:reduce){.af-master-svg *{animation:none!important}body.bbm-af-demo #demo-main :is(.af-pillar,.af-service-card):hover{transform:none}}

/* Card data layers must not inherit the small icon dimensions. */
body.bbm-af-demo #demo-main .af-master-net .af-master-svg{width:100%!important;height:100%!important;max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;filter:none!important;transform:none!important}
body.bbm-af-demo #demo-main .af-master-net{width:100%;height:100%}
body.bbm-af-demo #demo-main .af-master-net .af-master-svg path{stroke-opacity:.8}

@media(max-width:767px){body.bbm-af-demo #demo-main .af-hero-art{mask-image:linear-gradient(transparent 0%,#000 20%,#000 80%,transparent 100%)}}

/* Continuous light trails, with a soft tail and no moving dash fragments. */
body.bbm-af-demo #demo-main :is(.af-master-svg .af-master-signal,.af-process-flow .af-flow-pulse,.af-contact-flow .af-contact-pulse,.af-finale-art path:nth-child(3n)){stroke-dasharray:none!important;stroke-dashoffset:0!important;stroke-width:2!important;filter:blur(1px) drop-shadow(0 0 7px #8e73ff)!important;animation:af-trail-breathe 5.5s ease-in-out infinite alternate!important}
body.bbm-af-demo #demo-main .af-master-svg circle{display:none}
@keyframes af-trail-breathe{0%{opacity:.22}50%{opacity:.65}100%{opacity:.35}}
body[data-af-view=kontakt] #demo-main .af-contact-copy{justify-content:center;gap:12px;padding:0;align-self:center}
body[data-af-view=kontakt] #demo-main .af-contact-point{min-height:105px;margin:0}
body[data-af-view=kontakt] #demo-main .af-contact-flow{display:none}
body[data-af-view=kontakt] #demo-main .af-meeting-facts{gap:15px;border:0;padding:0}
body[data-af-view=kontakt] #demo-main .af-meeting-facts span{border:1px solid #9b7fdb40;border-radius:10px;background:linear-gradient(120deg,#33224e50,#0a10247a);padding:16px 20px;gap:18px;font-size:30px;color:#c393ff;box-shadow:inset 0 1px #d4baff13}
body[data-af-view=kontakt] #demo-main .af-meeting-facts b{font-size:14px;line-height:1.5;color:#ded8ed}
body[data-af-view=kontakt] #demo-main .af-remote{grid-template-columns:.85fr 1.3fr;gap:0}
body[data-af-view=kontakt] #demo-main .af-remote-globe{height:470px;object-position:65% center;mask-image:radial-gradient(ellipse at 58% 50%,#000 20%,#000e 50%,transparent 78%)}
body[data-af-view=kontakt] #demo-main .af-network-caption{left:60%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);text-align:center;max-width:210px;width:max-content}
body.bbm-af-demo .af-check-intro{background-image:linear-gradient(90deg,#060918 40%,#06091800 73%),url('astra-portrait.webp');background-size:100% 100%,auto 150%;background-position:center,115% 20%;background-repeat:no-repeat}
@media(max-width:767px){body[data-af-view=kontakt] #demo-main .af-remote{grid-template-columns:1fr}body[data-af-view=kontakt] #demo-main .af-remote-globe{height:310px}body[data-af-view=kontakt] #demo-main .af-contact-copy{gap:12px}body.bbm-af-demo .af-check-intro{background-size:100% 100%,auto 110%;background-position:center,125% top}body.bbm-af-demo .af-check-intro p,body.bbm-af-demo .af-check-intro small{position:relative;text-shadow:0 1px 5px #000}}
@media(prefers-reduced-motion:reduce){body.bbm-af-demo #demo-main :is(.af-master-svg .af-master-signal,.af-process-flow .af-flow-pulse,.af-contact-flow .af-contact-pulse,.af-finale-art path:nth-child(3n)){animation:none!important;opacity:.4}}

body.bbm-af-demo .af-check-intro{background-position:center,92% 20%;background-color:#060918;background-blend-mode:lighten}body[data-af-view=kontakt] #demo-main .af-network-caption{left:74%}@media(max-width:767px){body.bbm-af-demo .af-check-intro{background-position:center,100% top}body[data-af-view=kontakt] #demo-main .af-network-caption{left:65%}}

@media(max-width:767px){body.bbm-af-demo .af-check-intro{padding-bottom:165px;background-size:100% 100%,auto 160px;background-position:center,right bottom;background-image:linear-gradient(180deg,#060918 0%,#06091800 65%),url("astra-portrait.webp")}body.bbm-af-demo .af-check-progress li{font-size:7px;padding-inline:2px;overflow-wrap:anywhere}}

/* Align the check portrait flush with the right edge. */
body.bbm-af-demo .af-check-intro{background-position:center,right 20%}
@media(max-width:767px){body.bbm-af-demo .af-check-intro{background-position:center,right bottom}}
