/* schwimmtrainer.at V0.15.10.50.60 – source: approved master .57.
   Art assets are text-free SVG; text is exclusively HTML. */
.pl60-choices{padding:26px 0 30px;background:linear-gradient(180deg,#041c2e,#072942);border-block:1px solid #5dd9f523}
.pl60-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pl60-card{position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;min-height:448px;padding:23px 23px 18px;border:1px solid #71daf33f;border-radius:20px;background:#072d48;box-shadow:0 17px 40px #00152470;overflow:hidden;color:#f7feff}
.pl60-card:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 87% 15%,#1a9ec152,transparent 56%),linear-gradient(130deg,#041c2f,#075274 95%)}
.pl60-card:after{content:"";position:absolute;inset:auto 0 0;height:100px;z-index:-1;background:linear-gradient(transparent,#041b2a88);pointer-events:none}
.pl60-copy{position:relative;z-index:2;display:flex;flex-direction:column;width:57%;min-width:0}
.pl60-eyebrow{color:#96edf7;font-size:10px;line-height:1.4;letter-spacing:.12em;font-weight:850;margin:0 0 13px;text-transform:uppercase}
.pl60-logo{display:block;width:min(300px,100%);height:auto;object-fit:contain;object-position:left center;margin:0 0 14px}
.pl60-card h2{font-size:clamp(23px,2.1vw,30px);line-height:1.16;letter-spacing:-.035em;font-weight:850;color:#fff;margin:0 0 12px;text-wrap:balance}
.pl60-card h2 em{color:#85e5f1;font-style:normal}
.pl60-copy>p:not(.pl60-eyebrow){font-size:clamp(12px,1vw,14px);line-height:1.53;color:#d0e6ef;margin:0 0 17px}
.pl60-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.pl60-actions .button{min-height:36px;padding:8px 12px;border-radius:9px;font-size:11px;line-height:1.2;text-align:center;white-space:normal}
.pl60-actions .button-light{background:linear-gradient(120deg,#74eafa,#34abf1);color:#041e31}
.pl60-monitor{position:absolute;right:-2%;top:19%;z-index:1;width:46%;height:62%;display:flex;align-items:center;justify-content:center;perspective:800px;pointer-events:none}
.pl60-monitor:before{content:"";position:absolute;inset:2%;background:radial-gradient(ellipse,#35cffa69,transparent 65%);filter:blur(17px)}
.pl60-monitor img{position:relative;display:block;width:100%;max-height:285px;object-fit:contain;padding:7px;border-radius:14px;border:1px solid #55dcfa88;background:#041b2f;transform:rotateY(-10deg) rotateZ(1deg);box-shadow:-10px 22px 34px #001122a8}
.pl60-discover .pl60-copy{width:58%}
.pl60-discover-art{position:absolute;right:-8%;top:11%;width:55%;height:69%;object-fit:cover;object-position:center;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent,#000 24%);z-index:1;pointer-events:none}
.pl60-benefits{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:center;margin-top:auto;padding-top:18px;color:#e7faff;font-size:10px;line-height:1.3}
.pl60-benefits span{display:flex;align-items:center;gap:7px;min-width:0}
.pl60-benefits b{display:grid;flex:0 0 auto;place-items:center;width:30px;height:30px;border-radius:50%;color:#8af4ff;background:#05334dc9;border:1px solid #59d3e995;font-size:15px}
.pl60-card a:focus-visible,.pl60-module-card:focus-visible{outline:3px solid #80ecfa;outline-offset:3px}
/* Module overview: only original titles/descriptions are reused; source-free visual patterns are separate image assets. */
.pl60-module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;max-width:1310px;margin:0 auto}
.pl60-module-grid .pl60-module-card,.pl60-module-grid .pl55-module-card:last-child:nth-child(odd){grid-column:auto;display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden;min-width:0;min-height:306px;padding:17px 16px 17px;gap:8px;background:#082e49;border:1px solid #67d6ec56;border-radius:17px;text-decoration:none;color:#e9faff;box-shadow:0 17px 30px #00152865}
.pl60-module-card:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#05223b85 0%,#05253cde 35%,#05253cfa 69%,#05253cff 100%)!important;pointer-events:none}
.pl60-module-card:after{content:"";position:absolute;inset:0 0 30%;z-index:-2;background-size:cover;background-position:center;background-repeat:no-repeat;pointer-events:none}
.pl60-module-wettkampfentwicklung:after{background-image:url('/assets/images/pl60/module-race.svg')}
.pl60-module-referenzkorridore:after{background-image:url('/assets/images/pl60/module-benchmark.svg')}
.pl60-module-athletik-monitor:after{background-image:url('/assets/images/pl60/module-athletics.svg')}
.pl60-module-kraftdiagnostik-testbatterien:after{background-image:url('/assets/images/pl60/module-strength.svg')}
.pl60-module-schwimmtests:after{background-image:url('/assets/images/pl60/module-swim.svg')}
.pl60-module-grid .pl60-module-card .pl57-module-head{display:flex;align-items:center;justify-content:space-between;min-height:37px;margin-bottom:auto}
.pl60-module-grid .pl60-module-card .pl57-module-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:10px;border:1px solid #7ceaf355;background:#07354cca}
.pl60-module-grid .pl60-module-card .pl57-module-icon svg{width:20px;height:20px}
.pl60-module-card .pl55-module-index{font-size:11px;letter-spacing:.15em;color:#75ecf6}
.pl60-module-card h3{font-size:clamp(17px,1.3vw,20px);line-height:1.23;letter-spacing:-.025em;color:#fff;margin:5px 0 2px;hyphens:auto;overflow-wrap:break-word}
.pl60-module-card p{color:#c9e7f0;font-size:12px;line-height:1.47;margin:0;overflow-wrap:break-word}
.pl60-module-card .pl57-module-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
.pl60-module-card .pl57-module-tags span{border-radius:99px;border:1px solid #75ddec33;background:#04314bce;color:#ddf7fb;font-size:10px;padding:4px 8px}
.pl60-module-card .pl55-module-action{margin-top:auto;padding-top:6px;color:#83eff8;font-size:12px;font-weight:850}
.pl60-module-card:hover{transform:translateY(-2px);border-color:#7aeef9}
@media(max-width:1350px){.pl60-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pl60-module-grid .pl60-module-card,.pl60-module-grid .pl55-module-card:last-child:nth-child(odd){min-height:275px}}
@media(max-width:1190px){.pl60-dual{grid-template-columns:1fr;max-width:890px;margin-inline:auto}.pl60-card{min-height:355px}.pl60-card .pl60-copy{width:58%}.pl60-card h2{font-size:clamp(24px,2.9vw,34px)}.pl60-copy>p:not(.pl60-eyebrow){font-size:14px}.pl60-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.pl60-choices{padding:20px 0}.pl60-card{min-height:0;padding:20px 20px 16px;border-radius:16px}.pl60-card .pl60-copy{width:100%}.pl60-card h2{font-size:clamp(24px,6vw,30px)}.pl60-logo{max-width:250px}.pl60-card .pl60-copy>p:not(.pl60-eyebrow){font-size:14px}.pl60-actions{margin-top:0}.pl60-monitor,.pl60-discover-art{position:relative;inset:auto;display:block;width:100%;height:auto;margin:14px auto 0;max-width:390px;order:1;mix-blend-mode:normal;mask-image:none}.pl60-monitor{min-height:165px}.pl60-monitor img{max-height:190px;transform:none;max-width:320px;margin:auto}.pl60-discover-art{max-height:175px;object-fit:cover;border-radius:12px}.pl60-benefits{order:2;margin-top:12px;border-top:1px solid #70dbee30;padding-top:12px}.pl60-module-grid{grid-template-columns:1fr}.pl60-module-grid .pl60-module-card,.pl60-module-grid .pl55-module-card:last-child:nth-child(odd){min-height:256px}}
@media(max-width:420px){.pl60-card .pl60-actions{flex-direction:column;align-items:stretch}.pl60-card .pl60-actions .button{width:100%}.pl60-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}}
/* Keep text on a dark, stable layer while preserving the art in the upper area. */
.pl60-module-card:before{background:linear-gradient(180deg,#05223b66 0%,#05253cb9 18%,#05253cf6 36%,#05253cff 74%)!important}


/* v0.15.10.50.64 – approved custom icon assets on the homepage USP cards */
.pl60-benefits{gap:14px}
.pl60-benefits span{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px;line-height:1.35;font-weight:700;color:#e7fbff}
.pl60-benefit-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;border-radius:999px;border:1px solid rgba(96,226,244,.42);background:rgba(3,29,46,.76);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(0,11,22,.22)}
.pl60-benefit-icon img{display:block;width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(90,230,255,.30))}
.pl60-benefits b{display:none}
.pl60-discover .pl60-benefits{padding-right:88px}
.pl60-floating-icons{position:absolute;inset:0;z-index:2;pointer-events:none}
.pl60-float{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:50%;filter:drop-shadow(0 14px 30px rgba(0,8,18,.22))}
.pl60-float img{display:block;width:100%;height:100%;object-fit:contain}
.pl60-float-swimmer{left:58%;bottom:28%;width:70px;height:70px}
.pl60-float-calendar{right:10px;top:47%;width:82px;height:82px}
.pl60-float-group{right:24px;top:22px;width:86px;height:86px}
@media(max-width:1190px){
  .pl60-discover .pl60-benefits{padding-right:0}
  .pl60-float-swimmer{left:auto;right:116px;bottom:18px;width:64px;height:64px}
  .pl60-float-calendar{right:8px;top:52%;width:74px;height:74px}
  .pl60-float-group{right:22px;top:18px;width:78px;height:78px}
}
@media(max-width:740px){
  .pl60-benefits{grid-template-columns:1fr}
  .pl60-discover .pl60-benefits{padding-right:0}
  .pl60-benefit-icon{width:40px;height:40px}
  .pl60-benefit-icon img{width:27px;height:27px}
  .pl60-floating-icons{display:none}
}
@media(max-width:420px){
  .pl60-benefits{grid-template-columns:1fr}
}


/* V0.15.10.50.68: the homepage USP icons use the normalised neon assets
   without an added outer ring. Every icon gets the same presentation box. */
.pl60-card .pl60-benefits .pl60-benefit-icon {
  flex:0 0 58px; width:58px; height:58px; padding:0;
  border:0!important; outline:0!important; border-radius:0!important;
  background:none!important; box-shadow:none!important;
}
.pl60-card .pl60-benefits .pl60-benefit-icon img {
  display:block; width:58px; height:58px; max-width:none;
  object-fit:contain; filter:none; transform:none!important;
}
@media(max-width:740px) {
  .pl60-card .pl60-benefits .pl60-benefit-icon {flex-basis:48px;width:48px;height:48px}
  .pl60-card .pl60-benefits .pl60-benefit-icon img {width:48px;height:48px}
}
