/* SWS: shared visual system for the assembled product worlds page. */
html { scroll-padding-top:84px; }
body.sws-professional {
  --max:1200px; --ink:#123e46; --text:#123e46; --sws-ink:#123e46;
  --primary:#01665e; --sws:#01665e; --teal:#18a3a4;
  --muted:#6f7f7d; --sws-muted:#6f7f7d; --line:rgba(1,102,94,.12);
  --shadow:0 18px 46px rgba(16,54,49,.065); background:#f3f7f5; color:var(--ink); font-size:16px;
}
.sws-professional .sws-site-nav { min-height:76px; padding-inline:max(32px,calc((100vw - 1200px)/2)); background:rgba(250,253,251,.94); border-color:rgba(1,102,94,.12); box-shadow:0 6px 24px rgba(13,70,59,.045); }
.sws-professional .sws-site-mark { width:36px; height:36px; border-radius:11px 11px 11px 4px; background:linear-gradient(145deg,#18a3a4,#01665e); box-shadow:0 7px 18px rgba(1,102,94,.18); }
.sws-professional .sws-site-brand strong { font-size:16px; }
.sws-professional .sws-site-links a { font-size:13px; font-weight:600; color:#526866; }
.sws-professional .sws-site-cta { border-radius:12px; padding:12px 18px; background:linear-gradient(135deg,#005a54,#087a73 68%,#149a98); box-shadow:0 9px 22px rgba(1,102,94,.17),inset 0 1px 0 rgba(255,255,255,.18); font-weight:700; }
.sws-professional .sws-site-cta:hover { background:#014f49; transform:none; }

/* Clean two-column introduction. */
.sws-professional .sws-hero { min-height:680px; background:radial-gradient(circle at 82% 30%,rgba(24,163,164,.12),transparent 35%),linear-gradient(135deg,#fbfdfc,#f1f7f4 62%,#e9f3ef); border-bottom:1px solid var(--line); scroll-margin-top:0; }
.sws-professional .sws-hero::before,.sws-professional .sws-hero::after,
.sws-professional .sws-ghost,.sws-professional .sws-orbit,
.sws-professional .sws-welcome-panorama { display:none; }
.sws-professional .sws-wrap { width:min(1200px,calc(100% - 96px)); max-width:none; padding:88px 0 84px; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:64px; }
.sws-professional .sws-copy { max-width:620px; }
.sws-professional .sws-kicker { font-size:10px; letter-spacing:.12em; font-weight:700; }
.sws-professional .sws-kicker::before { width:24px; background:#01665e; }
.sws-professional .sws-title { max-width:15ch; font-size:clamp(44px,4.5vw,66px); font-weight:650; line-height:1.06; letter-spacing:-.045em; margin-top:25px; }
.sws-professional .sws-title span { color:transparent; background:linear-gradient(95deg,#005d56,#087d76 62%,#18a3a4); background-clip:text; -webkit-background-clip:text; }
.sws-professional .sws-lead { max-width:490px; font-size:18px; line-height:1.7; margin-top:25px; font-weight:400; }
.sws-professional .sws-actions { margin-top:30px; gap:12px; }
.sws-professional .sws-btn,.sws-professional .btn { min-height:48px; border-radius:12px; padding-inline:22px; font-size:14px; font-weight:700; }
.sws-professional .sws-btn-primary,.sws-professional .btn-primary { background:linear-gradient(135deg,#005a54,#087a73 68%,#149a98); border-color:#01665e; box-shadow:0 12px 28px rgba(1,102,94,.18),inset 0 1px 0 rgba(255,255,255,.18); }
.sws-professional .sws-btn-primary:hover,.sws-professional .btn-primary:hover { background:#014f49; box-shadow:none; }
.sws-professional .sws-btn-secondary { background:rgba(255,255,255,.75); border:1px solid rgba(1,102,94,.16); color:#234c48; box-shadow:0 7px 20px rgba(10,65,54,.035),inset 0 1px 0 #fff; }
.sws-professional .sws-signature { font-size:9px; letter-spacing:.12em; margin-top:35px; color:#7d8b86; }
.sws-professional .sws-visual { padding:0; width:100%; min-width:0; }
.sws-professional .sws-visual::before,.sws-professional .sws-visual::after { display:none; }
.sws-professional .sws-console { transform:none; border-radius:24px; border:1px solid rgba(1,102,94,.15); background:linear-gradient(145deg,#fff,#edf6f1); box-shadow:0 30px 68px rgba(7,61,50,.13),0 7px 22px rgba(1,102,94,.07),inset 0 1px 0 #fff; }
.sws-professional .sws-console-head { background:#fff; border-color:#e3ebe6; padding:18px 22px; }
.sws-professional .sws-console-meta { color:#81908b; font-size:9px; }
.sws-professional .sws-live { color:#28584d; font-weight:650; }
.sws-professional .sws-live i { box-shadow:0 0 0 4px #e4f3eb; background:#138a72; }
.sws-professional .sws-screen { background:#f4f8f5; border-radius:8px; box-shadow:none; }
.sws-professional .sws-screen::before,.sws-professional .sws-screen::after,.sws-professional .sws-screen-label { display:none; }
.sws-professional .sws-core { width:58px; height:58px; bottom:14px; right:14px; border-radius:10px; background:#01665e; border:1px solid #fff; box-shadow:none; backdrop-filter:none; }
.sws-professional .sws-core strong { font-size:15px; }
.sws-professional .sws-core small { color:#b2d9ca; }
.sws-professional .sws-console-foot { background:#fff; padding:16px 22px; border-color:#e3ebe6; color:#7c8e85; }
.sws-professional .sws-console-foot span { color:#6f877a; font-weight:600; min-height:20px; font-size:9px; }
.sws-professional .sws-console-foot span+span { border-color:#e2ebe4; }

/* Section rhythm, editorial titles and bounded imagery. */
.sws-professional .section { padding:88px 0; background:radial-gradient(circle at 86% 17%,rgba(24,163,164,.085),transparent 30%),radial-gradient(circle at 12% 76%,rgba(1,102,94,.035),transparent 30%),linear-gradient(180deg,#f9fbfa,#f3f7f5 58%,#edf4f1); border-bottom:1px solid rgba(1,102,94,.09); scroll-margin-top:0; }
.sws-professional #plattform,.sws-professional #arbeitstag { background:radial-gradient(circle at 88% 24%,rgba(24,163,164,.09),transparent 34%),linear-gradient(180deg,#f7faf8,#edf4f0); }
.sws-professional .section::before { display:block; top:calc(clamp(140px,14vw,225px) + 60px); }
.sws-professional .section::after { display:block; z-index:0; width:620px; height:620px; min-width:0; min-height:0; right:-200px; bottom:-200px; border-color:rgba(1,102,94,.045); box-shadow:0 0 0 74px rgba(1,102,94,.02),0 0 0 148px rgba(1,102,94,.012); }
.sws-professional .grid { display:block; z-index:0; opacity:.42; background-size:48px 48px; }
.sws-professional .inner { width:min(1200px,calc(100% - 96px)); max-width:none; }
.sws-professional .section .eyebrow { gap:12px; color:#01665e; font-size:10px; letter-spacing:.14em; font-weight:700; }
.sws-professional .section .eyebrow::before { content:''; display:block; width:34px; height:2px; border:0; border-radius:99px; background:linear-gradient(90deg,#01665e,#18a3a4); }
.sws-professional .section h2 { max-width:870px; margin:22px 0 0; font-size:clamp(36px,3.5vw,50px); font-weight:650; line-height:1.12; letter-spacing:-.035em; text-wrap:balance; }
.sws-professional .section h2 span { color:transparent; background:linear-gradient(95deg,#005d56,#087d76 62%,#18a3a4); background-clip:text; -webkit-background-clip:text; }
.sws-professional .section .lead { max-width:800px; font-size:17px; line-height:1.75; font-weight:400; margin-top:22px; }
.sws-professional .sws-intro-brandline { margin:24px 0 0; }
.sws-professional .sws-intro-brand img { width:190px; max-width:100%; height:auto; }
.sws-professional .statement { background:rgba(255,255,255,.72); border:1px solid rgba(1,102,94,.11); border-radius:16px; box-shadow:0 12px 34px rgba(16,54,49,.045),inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter:blur(10px); font-size:16px; max-width:900px; padding:20px 25px; }
.sws-professional .statement::before { display:block; }
.sws-professional .drone-panorama,.sws-professional .platform-panorama,.sws-professional .integration-hero,
.sws-professional .day-panorama,.sws-professional .arbeitstag-panorama,.sws-professional .ai-panorama,.sws-professional .cta-panorama { width:100%; margin:36px 0; max-width:100%; border:1px solid #e1eae4; border-radius:12px; box-shadow:none; overflow:hidden; }
.sws-professional .drone-panorama img,.sws-professional .platform-panorama img,.sws-professional .integration-hero img,
.sws-professional .day-panorama img,.sws-professional .arbeitstag-panorama img,.sws-professional .ai-panorama img,.sws-professional .cta-panorama img { width:100%; height:200px; object-fit:cover; }
.sws-professional .drone-panorama::after,.sws-professional .platform-panorama::after,.sws-professional .integration-hero::after,
.sws-professional .day-panorama::after,.sws-professional .arbeitstag-panorama::after,.sws-professional .ai-panorama::after,.sws-professional .cta-panorama::after { display:none; }
.sws-professional .sws-panoramic-hero,.sws-professional .workday-panorama { width:100%; max-width:100%; height:200px; margin:36px 0; border:1px solid #e1eae4; border-radius:12px; box-shadow:none; }
.sws-professional .sws-panoramic-hero img,.sws-professional .workday-panorama img { height:200px; width:100%; object-fit:cover; }
.sws-professional .sws-panoramic-hero::after,.sws-professional .workday-panorama::after { display:none; }

/* Product selection reads as a catalogue, with details opened on demand. */
.sws-professional #produktwelten .showcase-demo { padding:24px; margin-top:44px; background:radial-gradient(circle at 100% 0%,rgba(24,163,164,.07),transparent 36%),linear-gradient(145deg,rgba(255,255,255,.95),rgba(245,250,247,.92)); border:1px solid rgba(1,102,94,.13); border-radius:28px; box-shadow:0 28px 64px rgba(16,54,49,.085),0 8px 22px rgba(1,102,94,.045),inset 0 1px 0 #fff; overflow:visible; }
.sws-professional .showcase-demo::before { display:block; border-radius:28px; opacity:.5; }
.sws-professional .showcase-demo__top { padding:0 0 19px; border-bottom:1px solid var(--line); }
.sws-professional .showcase-demo__kicker,.sws-professional .showcase-demo__status { font-size:10px; font-weight:650; letter-spacing:.06em; }
.sws-professional .product-worlds-intro { padding:28px 0 24px; }
.sws-professional .product-worlds-intro h3 { font-size:30px; letter-spacing:-.03em; font-weight:650; }
.sws-professional .product-worlds-intro p { font-size:15px; line-height:1.65; }
.sws-professional .showcase-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:0; }
.sws-professional .showcase-tab { min-height:114px; padding:22px!important; border:1px solid rgba(1,102,94,.13); border-radius:16px; background:linear-gradient(145deg,#fff,#f8fbf9); box-shadow:0 8px 22px rgba(7,67,53,.045),inset 0 1px 0 #fff; gap:13px; text-align:left; }
.sws-professional .showcase-tab:hover { transform:translateY(-2px); border-color:#83b4a5; box-shadow:0 9px 22px -16px #315b4c; }
.sws-professional .showcase-tab.active { background:linear-gradient(145deg,#01665e,#075149)!important; border-color:#01665e; color:#fff; box-shadow:0 12px 26px rgba(1,102,94,.22),inset 0 1px 0 rgba(255,255,255,.15); }
.sws-professional .showcase-tab__copy strong { color:#193f3c; font-size:16px!important; font-weight:650; line-height:1.35; }
.sws-professional .showcase-tab__copy small { font-size:12px; color:#6e817a; line-height:1.5; font-weight:400; }
.sws-professional .showcase-tab.active .showcase-tab__copy strong { color:#fff; }
.sws-professional .showcase-tab.active .showcase-tab__copy small { color:#c1e8e3; }
.sws-professional .showcase-tab.active .product-world-card-index { color:#99e9dd; }
.sws-professional .showcase-tab.active .product-world-arrow { color:#fff; }
.sws-professional .showcase-demo.drone-details-open .showcase-tabs { display:grid!important; }
.sws-professional .showcase-demo.drone-details-open .showcase-demo__top { display:flex!important; }
.sws-professional .showcase-demo.drone-details-open .product-worlds-intro { display:flex!important; }
.sws-professional .drone-modal { background:linear-gradient(145deg,#173c40,#092e33); padding:15px!important; margin-top:24px; border:1px solid rgba(1,102,94,.22); border-radius:24px; box-shadow:0 18px 44px rgba(7,48,42,.12); scroll-margin-top:24px; }
.sws-professional .drone-modal-panel { border:1px solid rgba(255,255,255,.8); border-radius:18px; background:linear-gradient(145deg,#fff,#f4f9f7); padding:26px 28px 30px!important; box-shadow:0 12px 28px rgba(0,23,25,.16),inset 0 1px 0 #fff; }
.sws-professional .drone-modal .product-world-detail-head strong { font-size:32px; font-weight:650; }
.sws-professional .drone-modal .showcase-title { font-size:24px; font-weight:650; }
.sws-professional .showcase-screen,.sws-professional .showcase-side { border-radius:18px; border-color:rgba(1,102,94,.12); box-shadow:0 12px 30px rgba(16,54,49,.045),inset 0 1px 0 #fff; background:linear-gradient(180deg,#fff,#f8fbf9); }
.sws-professional .showcase-side::before { display:block; }
.sws-professional .showcase-description { font-size:15px; line-height:1.7; }
.sws-professional .product-integrations,.sws-professional .product-integration-flow { background:#f5f8f5; box-shadow:none; border-color:#dce7df; }
.sws-professional .product-integration-flow { background:#fff; }
.sws-professional .close { position:relative; margin-top:42px; padding:30px; border:1px solid rgba(1,102,94,.14); border-radius:24px; background:radial-gradient(circle at 95% 0%,rgba(24,163,164,.09),transparent 42%),linear-gradient(135deg,rgba(255,255,255,.96),rgba(237,247,241,.94)); box-shadow:0 18px 42px rgba(16,54,49,.065),inset 0 1px 0 #fff; }
.sws-professional .sws-benefit-kicker { margin-bottom:12px; color:#0b887a; font-size:10px; font-weight:800; letter-spacing:.14em; line-height:1.5; }
.sws-professional .close-title { font-size:clamp(24px,2.4vw,32px); max-width:850px; line-height:1.25; font-weight:600; letter-spacing:-.025em; }
.sws-professional .pillar { min-height:0; padding:25px 25px 25px 28px; border-radius:17px; box-shadow:0 10px 28px rgba(16,54,49,.045),inset 0 1px 0 #fff; background:rgba(255,255,255,.78); }
.sws-professional .pillar::before { display:block; }
.sws-professional .pillar strong { font-size:19px; line-height:1.35; }
.sws-professional .pillar p { font-size:14px; line-height:1.65; }

/* One family of panels, with a quiet surface and restrained borders. */
.sws-professional .drone-infra,.sws-professional .context-intro,.sws-professional .app-feature,
.sws-professional .example-journey,.sws-professional .integration-shell { border:1px solid rgba(1,102,94,.12); border-radius:24px; background:radial-gradient(circle at 96% 0%,rgba(24,163,164,.055),transparent 38%),linear-gradient(145deg,rgba(255,255,255,.97),rgba(246,250,248,.94)); box-shadow:0 24px 60px rgba(16,54,49,.075),0 7px 20px rgba(1,102,94,.035),inset 0 1px 0 rgba(255,255,255,.95); }
.sws-professional .drone-infra { margin-top:48px; padding:40px; }
.sws-professional .drone-infra::before,.sws-professional .integration-shell::before { display:block; }
.sws-professional .drone-infra h3 { font-size:32px; font-weight:650; line-height:1.2; letter-spacing:-.03em; }
.sws-professional .drone-infra__intro { font-size:16px; line-height:1.75; }
.sws-professional .drone-deploy__card { border:1px solid rgba(1,102,94,.13); border-radius:17px; padding:24px; background:linear-gradient(145deg,#fff,#f8fcf9); box-shadow:0 10px 30px rgba(6,63,57,.045),inset 0 1px 0 #fff; }
.sws-professional .drone-deploy__icon { width:38px; height:38px; flex-basis:38px; background:#eaf3eb; border-radius:9px; }
.sws-professional .drone-deploy__card h4 { font-size:19px; font-weight:650; }
.sws-professional .drone-trust { border:1px solid rgba(1,102,94,.08); border-radius:19px; background:linear-gradient(135deg,#eaf4f1,#f2f8f4); padding:28px; box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
.sws-professional .drone-trust__item p { font-size:13px; }
.sws-professional .drone-finale { border:1px solid rgba(1,102,94,.16); background:linear-gradient(120deg,#063c3b,#01665e 65%,#087b75); box-shadow:0 26px 55px rgba(0,64,59,.16); border-radius:26px; padding:38px 42px; color:#fff; }
.sws-professional .drone-finale::after { display:block; }
.sws-professional .drone-finale h3 { max-width:850px; font-size:32px; color:#fff; font-weight:680; line-height:1.2; letter-spacing:-.03em; }
.sws-professional .drone-finale h3 span { color:#a6eae1; }
.sws-professional .drone-finale .drone-eyebrow { color:#9ce9df; }
.sws-professional .drone-finale__lead { color:#cce7e3; font-size:16px; line-height:1.7; }
.sws-professional .drone-finale__signature { color:#e6f5f2; border-color:rgba(255,255,255,.2); font-size:12px; margin-top:24px; padding-top:20px; }
.sws-professional .drone-hero-video { margin-top:32px; border-radius:14px; border:1px solid #234d48; box-shadow:none; }
.sws-professional .drone-video-stage { height:clamp(270px,32vw,420px); aspect-ratio:auto; }
.sws-professional .drone-hero-video video { height:100%; }
.sws-professional .drone-video-preview { background:#173e3b; }
.sws-professional .drone-video-preview::before,.sws-professional .drone-video-preview::after { display:none; }
.sws-professional .drone-video-play { border-radius:8px; box-shadow:none; }
.sws-professional .drone-video-headline { font-size:clamp(26px,3vw,40px); font-weight:600; }
.sws-professional .context-intro,.sws-professional .example-journey { padding:36px; gap:40px; margin-top:32px; }
.sws-professional .context-intro h3,.sws-professional .app-feature__copy h3,.sws-professional .example-journey h3 { font-size:28px; font-weight:650; line-height:1.23; letter-spacing:-.03em; }
.sws-professional .context-intro__facts small { font-size:13px; }
.sws-professional .app-feature { padding:32px; gap:32px; }
.sws-professional .app-feature__media,.sws-professional .app-feature__shot { border-radius:15px; box-shadow:0 12px 28px rgba(4,59,54,.06),inset 0 1px 0 #fff; background:linear-gradient(145deg,#f1f8f4,#fff); }
.sws-professional .app-feature__copy p { font-size:15px; }
.sws-professional .journey-step { border:1px solid rgba(1,102,94,.11); background:linear-gradient(150deg,#f8fcfa,#edf6f1); border-radius:15px; padding:23px 20px; box-shadow:0 8px 22px rgba(16,54,49,.035),inset 0 1px 0 #fff; }
.sws-professional .journey-step strong { font-size:17px; font-weight:650; }
.sws-professional .journey-step p { font-size:14px; }
.sws-professional #plattform .principles { gap:16px; margin-top:28px; }
.sws-professional #plattform .principle { margin:0; min-height:0; padding:26px; border:1px solid rgba(1,102,94,.12); border-radius:17px; background:rgba(255,255,255,.8); box-shadow:0 12px 30px rgba(16,54,49,.05),inset 0 1px 0 #fff; }
.sws-professional #plattform .principle::before { display:block; top:24px; bottom:auto; height:44px; width:3px; }
.sws-professional #plattform .principle small { font-size:10px; color:#01665e; }
.sws-professional #plattform .principle strong { font-size:21px; font-weight:650; line-height:1.3; letter-spacing:-.02em; margin-top:17px; }
.sws-professional #plattform .principle p { font-size:14px; line-height:1.7; margin-top:12px; }
.sws-professional .platform-outro { margin-top:32px; padding:38px 42px; border:1px solid rgba(1,102,94,.16); border-radius:24px; background:radial-gradient(circle at 90% 5%,rgba(24,163,164,.23),transparent 34%),linear-gradient(120deg,#083a3a,#064e49); color:#fff; box-shadow:0 22px 48px rgba(0,64,59,.14); }
.sws-professional .platform-outro h3 { font-size:30px; font-weight:650; line-height:1.25; letter-spacing:-.03em; }
.sws-professional .platform-outro h3 span,.sws-professional .platform-outro__eyebrow { color:#8de8db; }
.sws-professional .platform-outro>p { color:#c8dfd9; font-size:16px; line-height:1.75; }
.sws-professional .platform-outro__foot span { color:#e5f7f2; border-color:rgba(255,255,255,.21); border-radius:99px; background:rgba(255,255,255,.035); font-weight:600; }
.sws-professional .closing.sws-conclusion {
  position:relative; display:flex; align-items:flex-start; gap:24px;
  grid-template-columns:none; max-width:none; min-height:0;
  margin-top:40px; padding:30px 34px; overflow:hidden;
  border:1px solid rgba(1,102,94,.16); border-radius:23px;
  background:radial-gradient(ellipse at 100% 0%,rgba(24,163,164,.11),transparent 48%),linear-gradient(135deg,rgba(255,255,255,.98),rgba(237,247,241,.94));
  box-shadow:0 20px 46px rgba(16,54,49,.075),0 5px 16px rgba(1,102,94,.025),inset 0 1px 0 rgba(255,255,255,.98);
  font-size:16px; font-weight:400; line-height:1.6; letter-spacing:normal;
  text-wrap:initial;
}
.sws-professional .closing.sws-conclusion::before {
  content:''; display:block; position:absolute; left:0; top:28px; bottom:28px;
  width:3px; height:auto; border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,#01665e,#18a3a4); box-shadow:0 0 16px rgba(24,163,164,.15);
}
.sws-professional .closing.sws-conclusion::after {
  content:''; display:block; position:absolute; z-index:0; pointer-events:none;
  right:-65px; top:-92px; bottom:auto; width:260px; height:260px;
  border:1px solid rgba(1,102,94,.06); border-radius:50%;
  box-shadow:0 0 0 38px rgba(1,102,94,.02),0 0 0 76px rgba(1,102,94,.012);
}
.sws-professional .sws-conclusion .sws-conclusion-mark {
  position:relative; z-index:1; display:grid; place-items:center; flex:0 0 52px;
  width:52px; height:52px; border:1px solid rgba(1,102,94,.2); border-radius:15px;
  background:linear-gradient(145deg,#087a71,#014f49); color:#fff;
  box-shadow:0 10px 24px rgba(1,102,94,.18),inset 0 1px 0 rgba(255,255,255,.2);
}
.sws-professional .sws-conclusion-mark svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.sws-professional .sws-conclusion-body { position:relative; z-index:1; min-width:0; flex:1; }
.sws-professional .sws-conclusion-kicker { margin:0 0 10px; color:#0b887a; font-size:10px; line-height:1.5; font-weight:800; letter-spacing:.14em; }
.sws-professional .sws-conclusion-statement,
.sws-professional .sws-conclusion .closing-main {
  display:block; max-width:980px; margin:0; color:#123e46;
  font-size:clamp(24px,2.15vw,30px); line-height:1.32; font-weight:650;
  letter-spacing:-.025em; text-wrap:pretty;
}
.sws-professional .sws-conclusion-statement > span,
.sws-professional .sws-conclusion .closing-main > span { display:inline; color:#01665e; background:linear-gradient(95deg,#01665e,#109a91); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.sws-professional .sws-conclusion .closing-side { display:block; max-width:850px; margin-top:14px; color:#667e75; font-size:15px; font-weight:400; line-height:1.7; letter-spacing:0; }
.sws-professional .sws-conclusion .closing-side strong { display:block; margin-top:9px; color:#01665e; font-size:14px; line-height:1.6; font-weight:650; }

/* Integration, real work and controlled AI. */
.sws-professional .integration-shell { padding:24px; margin-top:36px; border-radius:28px; }
.sws-professional .integration-title { font-size:25px; font-weight:650; line-height:1.3; letter-spacing:-.025em; }
.sws-professional .integration-sub { font-size:14px; line-height:1.7; }
.sws-professional .category-tabs { padding:8px 0 20px; gap:8px; border-bottom:1px solid #e0e9e2; }
.sws-professional .category-tab { border-radius:10px; box-shadow:0 4px 12px rgba(1,102,94,.025),inset 0 1px 0 #fff; font-weight:650; background:rgba(255,255,255,.88); }
.sws-professional .category-tab.active { background:linear-gradient(135deg,#f0f9f5,#e7f5ef); color:#01665e; border-color:rgba(1,102,94,.25); box-shadow:inset 0 -2px 0 #18a3a4,0 5px 14px rgba(1,102,94,.045); }
.sws-professional .resource-panel,.sws-professional .example-panel { border-radius:19px; box-shadow:0 10px 28px rgba(16,54,49,.05),inset 0 1px 0 #fff; background:rgba(255,255,255,.92); border-color:rgba(1,102,94,.11); }
.sws-professional .example-panel { background:radial-gradient(circle at 100% 0%,rgba(24,163,164,.055),transparent 36%),linear-gradient(180deg,#fff,#f7fbf9); }
.sws-professional .example-title { font-size:28px; font-weight:650; }
.sws-professional .resource { background:linear-gradient(145deg,#fff,#f8fcfa); box-shadow:0 6px 18px rgba(16,54,49,.035),inset 0 1px 0 #fff; border-radius:12px; }
.sws-professional .capability { border-radius:17px; background:rgba(255,255,255,.82); box-shadow:0 10px 28px rgba(16,54,49,.045),inset 0 1px 0 #fff; padding:24px; }
.sws-professional .capability strong { font-size:19px; line-height:1.35; }
.sws-professional .timeline { margin-top:40px; }
.sws-professional .story-card { border:1px solid rgba(1,102,94,.13); border-radius:18px; box-shadow:0 12px 30px rgba(16,54,49,.055),inset 0 1px 0 #fff; background:linear-gradient(145deg,#fff,#f8fcf9); padding:23px 26px; gap:22px; }
.sws-professional .story-card::before { display:block; }
.sws-professional .story-card:hover { box-shadow:none; transform:none; border-color:#abcbb8; }
.sws-professional .role strong { font-size:21px; font-weight:650; line-height:1.25; }
.sws-professional .story-copy { font-size:15px; line-height:1.7; }
.sws-professional .badge { border-radius:6px; font-size:9px; font-weight:650; letter-spacing:.04em; background:#f0f5ef; }
.sws-professional .marker-box { box-shadow:0 8px 22px rgba(1,102,94,.09),0 0 0 5px rgba(24,163,164,.035); border-color:#c2d8c8; border-radius:12px; }
.sws-professional .closing-main { font-size:29px; line-height:1.25; font-weight:600; letter-spacing:-.03em; }
.sws-professional #controlled-ai .compare { grid-template-columns:1fr 1fr; margin-top:40px; padding:0; gap:20px; background:none; border:0; border-radius:0; box-shadow:none; }
.sws-professional #controlled-ai .compare-divider { display:none; }
.sws-professional #controlled-ai .compare-side { padding:30px; border:1px solid rgba(1,102,94,.12); border-radius:22px; background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(247,250,248,.92)); box-shadow:0 18px 42px rgba(16,54,49,.06),inset 0 1px 0 #fff; }
.sws-professional #controlled-ai .compare-side.controlled { background:radial-gradient(circle at 100% 0%,rgba(24,163,164,.09),transparent 45%),linear-gradient(145deg,#f6fcf9,#e9f5ef); border-color:rgba(1,102,94,.22); }
.sws-professional #controlled-ai .compare-side h3 { font-size:26px; font-weight:650; letter-spacing:-.025em; line-height:1.25; }
.sws-professional #controlled-ai .compare-side>p { font-size:15px; line-height:1.7; }
.sws-professional #controlled-ai .principle { margin:32px 0 0; padding:28px 32px; border:1px solid rgba(1,102,94,.13); border-radius:20px; background:linear-gradient(135deg,rgba(255,255,255,.94),#edf7f1); box-shadow:0 12px 32px rgba(16,54,49,.05),inset 0 1px 0 #fff; }
.sws-professional #controlled-ai .principle::before { display:block; width:3px; top:26px; bottom:26px; }
.sws-professional #controlled-ai .principle strong { max-width:900px; font-size:27px; font-weight:600; line-height:1.3; letter-spacing:-.025em; }
.sws-professional #controlled-ai .principle p { font-size:15px; }
.sws-professional .guardrails-wrap { margin-top:48px; }
.sws-professional .section-title { font-size:28px; font-weight:600; line-height:1.3; letter-spacing:-.025em; }
.sws-professional .guardrails { margin-top:24px; gap:16px; }
.sws-professional .guardrail { min-height:0; padding:25px 22px; border-radius:18px; border-color:rgba(1,102,94,.13); background:linear-gradient(145deg,#fff,#f8fcf9); box-shadow:0 12px 30px rgba(16,54,49,.05),inset 0 1px 0 #fff; }
.sws-professional .guardrail::before { display:block; }
.sws-professional .guardrail:hover { box-shadow:none; transform:none; }
.sws-professional .guardrail h4 { font-size:19px; font-weight:650; line-height:1.3; letter-spacing:-.02em; }
.sws-professional .guardrail p { font-size:14px; line-height:1.7; }
.sws-professional .guardrail-icon,.sws-professional .icon-wrap { border-radius:13px; background:linear-gradient(145deg,#eaf7f1,#f8fcfa); box-shadow:0 6px 16px rgba(1,102,94,.06),inset 0 1px 0 #fff; }
.sws-professional .workflow { margin-top:44px; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:24px; }
.sws-professional .workflow-copy { position:relative; top:auto; border:1px solid rgba(1,102,94,.12); background:radial-gradient(circle at 100% 0%,rgba(24,163,164,.065),transparent 40%),linear-gradient(180deg,#fff,#f7fbf9); padding:30px; border-radius:20px; box-shadow:0 16px 38px rgba(16,54,49,.06),inset 0 1px 0 #fff; }
.sws-professional .workflow-copy::before { display:block; }
.sws-professional .workflow-copy h3 { font-size:29px; font-weight:650; line-height:1.25; letter-spacing:-.025em; }
.sws-professional .flow-step { border-radius:9px; border-color:#dce7dd; background:#fff; box-shadow:none; }
.sws-professional .flow-step strong { font-size:17px; font-weight:650; }

/* Final invitation in the original deep teal palette. */
.sws-professional #abschluss { padding-bottom:40px; background:radial-gradient(circle at 85% 25%,rgba(24,163,164,.08),transparent 35%),linear-gradient(180deg,#f8fbf9,#edf5f0); }
.sws-professional #abschluss .cta { background:radial-gradient(circle at 100% 0%,rgba(24,163,164,.18),transparent 40%),linear-gradient(135deg,#083a3a,#07534c); padding:38px; border:1px solid rgba(1,102,94,.18); border-radius:26px; box-shadow:0 26px 56px rgba(0,64,59,.15),inset 0 1px 0 rgba(255,255,255,.1); }
.sws-professional #abschluss .cta::before,.sws-professional #abschluss .cta::after { display:none; }
.sws-professional #abschluss .side { padding:0; margin:0; border:0; background:none; box-shadow:none; }
.sws-professional #abschluss .side::before { display:none; }
.sws-professional #abschluss .side-kicker { color:#afd0b8; font-size:10px; }
.sws-professional #abschluss .side-title { max-width:750px; color:#fff; font-size:30px; line-height:1.2; letter-spacing:-.025em; font-weight:600; }
.sws-professional #abschluss .side-copy { color:#bcd0c4; font-size:16px; max-width:800px; }
.sws-professional #abschluss .steps { gap:12px; margin-top:28px; }
.sws-professional #abschluss .step { border-radius:8px; background:#214b42; border:1px solid #3b5f51; box-shadow:none; padding:22px; }
.sws-professional #abschluss .step span { color:#ecf3e9; font-size:14px; font-weight:500; line-height:1.6; }
.sws-professional #abschluss .step b { background:none; border:0; color:#97c2a4; width:auto; height:auto; font-size:12px; display:block; }
.sws-professional #abschluss .step::after { display:none; }
.sws-professional #abschluss .actions { justify-content:flex-start; }
.sws-professional #abschluss .btn-primary { background:#edf5e9; color:#164839; border-color:#edf5e9; }
.sws-professional #abschluss .footer-line { color:#a1bbaa; border-color:#3d6252; text-align:left; justify-content:flex-start; font-size:11px; }

@media (max-width:1100px) {
  .sws-professional .sws-wrap { gap:40px; }
  .sws-professional .sws-title { font-size:52px; }
  .sws-professional .sws-site-nav { padding-inline:28px; }
  .sws-professional .sws-site-links { gap:18px; }
  .sws-professional .guardrails { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sws-professional .context-intro { grid-template-columns:1fr; }
}
@media (max-width:900px) {
  .sws-professional .sws-wrap { grid-template-columns:1fr; width:calc(100% - 64px); padding:64px 0; gap:42px; }
  .sws-professional .sws-copy { max-width:680px; }
  .sws-professional .sws-title { max-width:20ch; font-size:clamp(42px,6vw,56px); }
  .sws-professional .sws-visual { max-width:680px; }
  .sws-professional .inner { width:calc(100% - 64px); }
  .sws-professional .section { padding:64px 0; }
  .sws-professional .showcase-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sws-professional .workflow { grid-template-columns:1fr; }
  .sws-professional #plattform .principles { grid-template-columns:1fr; }
  .sws-professional .story-card { grid-template-columns:160px minmax(0,1fr); }
  .sws-professional .story-card .badge { display:none; }
}
@media (max-width:680px) {
  html { scroll-padding-top:112px; }
  .sws-professional .sws-site-nav { padding:12px 20px 9px; }
  .sws-professional .sws-site-links { gap:24px; padding-top:5px; }
  .sws-professional .sws-site-links a { font-size:12px; }
  .sws-professional .sws-site-cta { padding:10px 12px; font-size:11px; }
  .sws-professional .sws-site-brand strong { font-size:14px; }
  .sws-professional .sws-site-brand small { font-size:8px; }
  .sws-professional .sws-site-mark { width:32px; height:32px; }
  .sws-professional .sws-wrap,.sws-professional .inner { width:calc(100% - 40px); }
  .sws-professional .sws-wrap { padding:50px 0; gap:34px; }
  .sws-professional .sws-kicker { font-size:9px; }
  .sws-professional .sws-title { font-size:clamp(37px,9vw,49px); max-width:17ch; line-height:1.09; }
  .sws-professional .sws-lead { font-size:16px; line-height:1.7; }
  .sws-professional .sws-console-head,.sws-professional .sws-console-foot { padding:14px; }
  .sws-professional .sws-console-meta { display:none; }
  .sws-professional .sws-btn { padding-inline:17px; font-size:13px; }
  .sws-professional .sws-signature { font-size:8px; letter-spacing:.07em; }
  .sws-professional .section { padding:54px 0; }
  .sws-professional .section h2 { font-size:clamp(31px,7.3vw,38px); line-height:1.17; letter-spacing:-.03em; margin-top:19px; }
  .sws-professional .section .lead { font-size:16px; line-height:1.75; margin-top:18px; }
  .sws-professional .statement { font-size:15px; padding:16px 18px; }
  .sws-professional .product-worlds-intro h3 { font-size:25px; }
  .sws-professional .showcase-demo__status { display:none; }
  .sws-professional .showcase-tab { padding:17px 14px!important; min-height:124px; gap:8px; }
  .sws-professional .showcase-tab__copy strong { font-size:14px!important; }
  .sws-professional .showcase-tab__copy small { font-size:11px; }
  .sws-professional .product-world-card-index { font-size:9px; }
  .sws-professional .product-world-arrow { display:none; }
  .sws-professional .drone-modal-panel { padding:18px!important; }
  .sws-professional .drone-modal .product-world-detail-head strong { font-size:27px; }
  .sws-professional .drone-infra,.sws-professional .context-intro,.sws-professional .app-feature,
  .sws-professional .example-journey,.sws-professional .integration-shell,.sws-professional .platform-outro,
  .sws-professional .drone-finale,.sws-professional .workflow-copy { padding:24px 20px; border-radius:18px; }
  .sws-professional .drone-infra h3,.sws-professional .drone-finale h3,.sws-professional .context-intro h3,
  .sws-professional .app-feature__copy h3,.sws-professional .example-journey h3,.sws-professional .platform-outro h3,
  .sws-professional .workflow-copy h3,.sws-professional .side-title { font-size:25px; line-height:1.25; }
  .sws-professional .drone-deploy__card { padding:20px; }
  .sws-professional .drone-trust { padding:22px; }
  .sws-professional .platform-outro>p { font-size:15px; }
  .sws-professional .drone-finale__lead { font-size:15px; }
  .sws-professional .drone-finale__signature { gap:12px; font-size:11px; }
  .sws-professional .journey-steps { grid-template-columns:1fr; }
  .sws-professional .timeline { margin-top:30px; }
  .sws-professional .story-card { grid-template-columns:1fr; gap:12px; padding:22px 18px; }
  .sws-professional .role strong { font-size:20px; }
  .sws-professional .story-copy { font-size:14px; }
  .sws-professional #controlled-ai .compare { grid-template-columns:1fr; gap:14px; }
  .sws-professional #controlled-ai .compare-side { padding:24px; }
  .sws-professional #controlled-ai .compare-side h3 { font-size:24px; }
  .sws-professional #controlled-ai .principle { padding:24px; }
  .sws-professional #controlled-ai .principle strong { font-size:24px; }
  .sws-professional .guardrails { grid-template-columns:1fr; gap:12px; }
  .sws-professional .guardrail { padding:23px; }
  .sws-professional .section-title { font-size:25px; }
  .sws-professional .closing,.sws-professional .closing-main,.sws-professional .close-title { font-size:24px; line-height:1.35; }
  .sws-professional #abschluss .cta { padding:26px 22px; }
  .sws-professional #abschluss .side-title { font-size:26px; }
  .sws-professional #abschluss .step { padding:20px; }
  .sws-professional #abschluss .step b { margin:0; }
}

/* Original panoramic proportions: a shallow full-width band before the title. */
.sws-professional .section { padding-top:0; }
.sws-professional .section > .inner { padding-top:64px; }
.sws-professional .sws-hero { min-height:0; }
.sws-professional .sws-wrap { padding-top:64px; }
.sws-professional .sws-section-panorama {
  display:block; position:relative; z-index:1; width:100%; max-width:none;
  height:clamp(140px,14vw,225px); min-height:0; max-height:225px; aspect-ratio:auto; margin:0;
  padding:0; border:0; border-radius:0; overflow:hidden; box-shadow:none;
  background:#f3f8f6; opacity:1;
}
.sws-professional .sws-section-panorama::before { display:none; }
.sws-professional .sws-section-panorama::after { display:block; content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg,transparent 68%,rgba(243,247,245,.22) 86%,rgba(243,247,245,.65)); box-shadow:inset 0 1px 0 rgba(255,255,255,.4); }
.sws-professional .sws-section-panorama img {
  display:block; width:100%; max-width:100%; height:100%; min-height:0;
  max-height:none; object-fit:cover; object-position:center 55%;
  border:0; border-radius:0;
}

/* Integration examples are independent of the AI timeline's flow-step styles. */
.sws-professional .integration-flow-step {
  display:grid; grid-template-columns:28px minmax(0,1fr); align-items:start;
  gap:12px; min-width:0; padding:15px; border:1px solid #dce7dd;
  border-radius:12px; background:linear-gradient(145deg,#fff,#f9fcfa);
  box-shadow:0 6px 18px rgba(16,54,49,.035),inset 0 1px 0 #fff;
}
.sws-professional .integration-flow-step b {
  display:grid; place-items:center; width:28px; height:28px; margin:0;
  border:1px solid #d9e7dd; border-radius:7px; background:#f4f8f3;
  color:#01665e; font-size:10px; line-height:1; font-weight:700;
}
.sws-professional .integration-flow-step span {
  display:block; min-width:0; margin:3px 0 0; color:#284b40;
  font-size:14px; line-height:1.6; font-weight:550; overflow-wrap:anywhere;
}
.sws-professional .example-panel { overflow:visible; }
.sws-professional .example-panel::before { display:none; }
.sws-professional .example-note { margin-top:22px; }
@media (max-width:680px) {
  .sws-professional .sws-section-panorama { height:145px; max-height:145px; }
  .sws-professional .section::before { top:185px; }
  .sws-professional .section::after { opacity:.6; }
  .sws-professional #produktwelten .showcase-demo { padding:18px 14px; border-radius:22px; }
  .sws-professional .section > .inner { padding-top:40px; }
  .sws-professional .sws-wrap { padding-top:40px; }
  .sws-professional .integration-flow-step { padding:13px; gap:10px; }
  .sws-professional .closing.sws-conclusion { display:block; margin-top:28px; padding:24px; border-radius:19px; }
  .sws-professional .sws-conclusion .sws-conclusion-mark { width:43px; height:43px; margin-bottom:19px; border-radius:12px; }
  .sws-professional .sws-conclusion-mark svg { width:23px; height:23px; }
  .sws-professional .sws-conclusion-statement,.sws-professional .sws-conclusion .closing-main { font-size:23px; line-height:1.36; }
  .sws-professional .sws-conclusion-kicker { font-size:9px; letter-spacing:.11em; }
  .sws-professional .close { padding:24px 20px; border-radius:20px; }
}

/* A shared page menu, with room for both website pages on smaller screens. */
.sws-professional .sws-site-links a[aria-current="page"] { color:#01665e; font-weight:800; }
@media (min-width:681px) and (max-width:1380px) {
  body.sws-professional { padding-top:112px; }
  html { scroll-padding-top:112px; }
  .sws-professional .sws-site-nav { min-height:0; flex-wrap:wrap; gap:10px 16px; padding:12px 28px; }
  .sws-professional .sws-site-brand { order:1; margin-right:auto; }
  .sws-professional .sws-site-cta { order:2; }
  .sws-professional .sws-site-links { order:3; justify-content:flex-start; width:100%; padding:3px 0 4px; gap:24px; overflow-x:auto; scrollbar-width:none; }
  .sws-professional .sws-site-links a { flex:0 0 auto; }
}
