/* BSH Aero Automation — dark theme tokens + card/button/marquee styling. */
:root{
  --auto-bg:#03060a; --auto-gold:#d4bfa3; --auto-gold-lt:#e5d8c6;
  --auto-navy:#0d1c2b; --auto-fg-body:#cdd1d6; --auto-fg-muted:#8a929c; --auto-fg-faint:#68717b;
  --auto-line:rgba(212,191,163,.08); --auto-line-mid:rgba(212,191,163,.14); --auto-line-strong:rgba(212,191,163,.28);
  --ease-out:cubic-bezier(0.22,0.61,0.36,1);
}

/* page-wide dark background: dot grid + radial vignettes, fixed */
.bsh-auto-page{
  background-color:var(--auto-bg);
  background-image:
    radial-gradient(ellipse 72% 150% at 50% 50%, transparent 30%, var(--auto-bg) 92%),
    radial-gradient(ellipse 65% 130% at 50% 50%, rgba(21,42,64,.7) 0%, transparent 80%),
    linear-gradient(rgba(212,191,163,.13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,191,163,.13) 1px, transparent 1px);
  background-size:cover,cover,52px 52px,52px 52px;
  background-position:center,center,center,center;
  background-repeat:no-repeat,no-repeat,repeat,repeat;
  background-attachment:fixed;
  color:#fff;
}
.bsh-auto-page h1,.bsh-auto-page h2,.bsh-auto-page h3,.bsh-auto-page p{margin:0;}
.bsh-auto-page .elementor-widget-container{position:relative;}

/* section dividers matching design's hairline rhythm */
.bsh-auto-hairline-top{border-top:1px solid var(--auto-line);}
.bsh-auto-hairline-both{border-top:1px solid var(--auto-line);border-bottom:1px solid var(--auto-line);}

/* pill buttons: gold-solid and ghost-outline, matches source .btn equivalents */
.bsh-auto-btn{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;padding:13px 28px;border-radius:999px;font-size:13px;letter-spacing:.01em;font-family:'Poppins',sans-serif;text-decoration:none;transition:background 200ms var(--ease-out),border-color 200ms var(--ease-out),box-shadow 200ms var(--ease-out),color 200ms var(--ease-out);}
.bsh-auto-btn-gold{background:var(--auto-gold);color:var(--auto-navy);border:1px solid transparent;}
.bsh-auto-btn-gold:hover{background:var(--auto-gold-lt);box-shadow:0 0 40px rgba(212,191,163,.18);color:var(--auto-navy);}
.bsh-auto-btn-ghost{background:transparent;border:1px solid var(--auto-line-strong);color:var(--auto-gold);}
.bsh-auto-btn-ghost:hover,.bsh-auto-btn-ghost:focus{border-color:var(--auto-gold);background:rgba(212,191,163,.04);color:var(--auto-gold);}
.bsh-auto-btn:focus,.bsh-auto-btn:focus-visible{outline:none;box-shadow:none;}
.bsh-auto-btn-ghost:focus,.bsh-auto-btn-ghost:focus-visible{background:transparent;border-color:var(--auto-line-strong);}
.bsh-auto-btn-gold:focus,.bsh-auto-btn-gold:focus-visible{background:var(--auto-gold);color:var(--auto-navy);}

/* glass benefit / phase cards */
.bsh-auto-card{position:relative;padding:20px 22px;border-radius:14px;background:linear-gradient(150deg, rgba(212,191,163,.07) 0%, rgba(212,191,163,.02) 45%, rgba(13,28,43,.16) 100%);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);border:1px solid var(--auto-line-mid);box-shadow:0 8px 32px rgba(0,0,0,.35), inset 0 1px 0 rgba(212,191,163,.12);transition:border-color 220ms var(--ease-out),transform 240ms var(--ease-out),box-shadow 240ms var(--ease-out);overflow:hidden;}
.bsh-auto-card::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(220px circle at var(--mx,50%) var(--my,50%),rgba(212,191,163,.16),transparent 60%);opacity:0;transition:opacity 260ms var(--ease-out);}
.bsh-auto-card:hover{border-color:rgba(212,191,163,.26);transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,.42), inset 0 1px 0 rgba(212,191,163,.14);}
.bsh-auto-card:hover::after{opacity:1;}
.bsh-auto-card > .elementor-element{position:relative;z-index:1;}
.bsh-auto-card .elementor-icon{width:40px !important;height:40px !important;padding:0 !important;border:1px solid var(--auto-line-mid) !important;border-radius:999px !important;background:transparent !important;color:var(--auto-gold) !important;display:flex !important;align-items:center;justify-content:center;transition:border-color 240ms var(--ease-out),background 240ms var(--ease-out),box-shadow 240ms var(--ease-out);}
.bsh-auto-card .elementor-icon svg{width:19px !important;height:19px !important;stroke:var(--auto-gold) !important;fill:none !important;}
.bsh-auto-card:hover .elementor-icon{border-color:var(--auto-gold) !important;background:rgba(212,191,163,.10) !important;box-shadow:0 0 18px rgba(212,191,163,.28), inset 0 0 12px rgba(212,191,163,.12);}
.bsh-auto-card .elementor-heading-title{color:#fff !important;}
.bsh-auto-card-meta{display:flex;justify-content:space-between;width:100%;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--auto-gold-lt);}
.bsh-auto-card-meta .bsh-auto-tag{color:var(--auto-gold-lt);}

/* EASA AI compliance table — glass card with per-row hover focus */
.bsh-ai-table{border-radius:14px;overflow:hidden;border:1px solid var(--auto-line-mid);background:linear-gradient(150deg, rgba(212,191,163,.07) 0%, rgba(212,191,163,.02) 45%, rgba(13,28,43,.16) 100%);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);box-shadow:0 8px 32px rgba(0,0,0,.35), inset 0 1px 0 rgba(212,191,163,.12);}
.bsh-ai-row{position:relative;display:flex;gap:18px;align-items:flex-start;padding:20px 24px;background:transparent;transition:background 240ms var(--ease-out);}
.bsh-ai-row + .bsh-ai-row{border-top:1px solid var(--auto-line);}
.bsh-ai-row:hover{background:rgba(212,191,163,.06);}
.bsh-ai-badge{flex:none !important;width:40px !important;height:40px !important;min-width:40px !important;border-radius:999px;display:flex !important;align-items:center;justify-content:center;border:1px solid var(--auto-line-mid);transition:border-color 240ms var(--ease-out),background 240ms var(--ease-out),box-shadow 240ms var(--ease-out),transform 240ms var(--ease-out);overflow:hidden;}
.bsh-ai-badge .elementor-widget-container,.bsh-ai-badge .elementor-widget-text-editor,.bsh-ai-badge p{display:contents;}
.bsh-ai-row:hover .bsh-ai-badge{border-color:var(--auto-gold);background:rgba(212,191,163,.10);box-shadow:0 0 18px rgba(212,191,163,.28), inset 0 0 12px rgba(212,191,163,.12);transform:scale(1.06);}
.bsh-ai-badge svg{width:19px !important;height:19px !important;flex:none;stroke:var(--auto-gold) !important;fill:none !important;}
.bsh-ai-body{display:flex;flex-direction:column;gap:6px;transition:transform 240ms var(--ease-out);}
.bsh-ai-row:hover .bsh-ai-body{transform:translateX(4px);}
@media(prefers-reduced-motion:reduce){.bsh-ai-row,.bsh-ai-badge,.bsh-ai-body{transition:none;}.bsh-ai-row:hover .bsh-ai-badge,.bsh-ai-row:hover .bsh-ai-body{transform:none;}}

/* client / partner logos: white silhouette on dark */
.bsh-auto-client-logo{width:auto !important;flex:0 0 auto !important;}
.bsh-auto-client-logo img{opacity:.6;transition:opacity 200ms var(--ease-out);}
.bsh-auto-client-logo:hover img{opacity:1;}

/* partners marquee, white silhouette, looped */
.bsh-auto-partners-viewport{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.bsh-auto-partners-track{display:flex;gap:76px;width:max-content;will-change:transform;animation:bsh-auto-partners-scroll 62s linear infinite;}
.bsh-auto-partners-track:hover{animation-play-state:paused;}
.bsh-auto-partners-track > div{height:68px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.bsh-auto-partners-track > div img{height:38px;width:auto;display:block;filter:grayscale(1) brightness(0) invert(1);opacity:.5;transition:opacity 200ms var(--ease-out);}
/* Same white-mask treatment as the partner strip above, applied to the small partner-logo
   thumbnails inside the Part 21 Agency mockup card so they read cleanly against its dark card background regardless of each logo's own colours. */
.bsh-auto-p21mock img[data-doc-logo]{filter:grayscale(1) brightness(0) invert(1);}
.bsh-auto-partners-track > div:hover img{opacity:.95;}
@keyframes bsh-auto-partners-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* FAQ accordion, dark */
.bsh-auto-faq .elementor-accordion{display:flex;flex-direction:column;}
.bsh-auto-faq .elementor-accordion-item{border:0 !important;border-bottom:1px solid var(--auto-line-strong) !important;border-radius:0 !important;background:transparent !important;}
.bsh-auto-faq .elementor-accordion-item:first-child{border-top:1px solid var(--auto-line-strong) !important;}
.bsh-auto-faq .elementor-tab-title{padding:26px 2px !important;border:0 !important;background:transparent !important;}
.bsh-auto-faq .elementor-tab-title a{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#fff !important;font-size:17px !important;}
.bsh-auto-faq .elementor-tab-content{padding:0 2px 26px !important;border:0 !important;background:transparent !important;color:var(--auto-fg-muted) !important;}
.bsh-auto-faq .elementor-active .elementor-tab-title{border:0 !important;}
.bsh-auto-faq .elementor-accordion-icon{color:var(--auto-gold) !important;font-size:20px;font-weight:400;order:2;}

@media(prefers-reduced-motion:reduce){.bsh-auto-partners-track{animation:none;}}

/* Touch devices simulate :hover on tap — the radial/box-shadow glows read as a cursor-following spotlight even when centred, so kill only the glow. Lift, scale, border-color and background stay. */
@media (hover: none), (pointer: coarse) {
  .bsh-auto-card:hover::after{opacity:0 !important;}
  .bsh-auto-card:hover .elementor-icon{box-shadow:none !important;}
  .bsh-ai-row:hover .bsh-ai-badge{box-shadow:none !important;}
}
