/* MAURICE TAJNSEK PERSONALTRAINING – Designsystem. TODO: Für ein eigenes Hero-Foto .hero-art anpassen. */
:root{color-scheme:dark;--bg:#0b0b0e;--surface:#141419;--surface-2:#1c1c22;--surface-3:#25252d;--text:#f7f7f9;--muted:#aaaab5;--border:#34343c;--accent:#ff65a9;--accent-light:#ffa3ce;--error:#ff9aaf;--success:#86e4ae;--radius:20px;--container:1180px;--shadow:0 24px 70px rgba(0,0,0,.25)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.65 Inter,sans-serif;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}p{margin:0 0 1rem}h1,h2,h3,h4{font-family:Montserrat,Inter,sans-serif;line-height:1.16;margin:0 0 1rem;letter-spacing:-.035em}h1{font-size:clamp(2.65rem,5.1vw,5rem);font-weight:900}h2{font-size:clamp(2rem,3.4vw,3.3rem);font-weight:800}h3{font-size:1.2rem}h4{font-size:1.12rem}small{font-size:.78rem}i{flex-shrink:0}.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}.section{padding-block:105px}.accent,.brand-accent{color:var(--accent)}.text-gradient{background:linear-gradient(100deg,#ffc2df,#ff65a9 67%,#f14e9d);-webkit-background-clip:text;background-clip:text;color:transparent}.kicker,.overline{display:inline-block;color:var(--accent-light);font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.overline{font-size:.67rem}.section-heading{max-width:690px;margin-bottom:44px}.section-heading.center{text-align:center;margin-inline:auto}.section-heading h2{margin-top:12px}.section-heading p{color:var(--muted);font-size:1.04rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;z-index:9999;top:-70px;left:12px;background:#fff;color:#111;padding:10px 16px;border-radius:10px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--accent-light);outline-offset:3px}::selection{background:#ff65a980;color:#fff}
/* Navigation */
.site-header{position:sticky;top:0;z-index:90;background:rgba(11,11,14,.89);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px)}.header-inner{min-height:82px;display:flex;align-items:center;gap:24px;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;font:900 1.28rem Montserrat,sans-serif;letter-spacing:-.04em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:39px;height:39px;color:#0b0b0e;background:var(--accent);border-radius:12px;transform:rotate(-8deg)}.brand-mark i{transform:rotate(8deg)}.primary-nav{display:flex;gap:clamp(12px,1.7vw,26px);align-items:center}.primary-nav a{font-size:.82rem;font-weight:700;color:#d7d7db;transition:color .2s}.primary-nav a:hover,.footer a:hover{color:var(--accent-light)}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:1.35rem;padding:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:12px;padding:13px 20px;font-weight:800;font-size:.9rem;line-height:1.25;transition:transform .2s,background .2s,border-color .2s;white-space:normal;text-align:center}.btn:not(:disabled):hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(120deg,#ff78b7,#f64a98);color:#151014;box-shadow:0 12px 35px #ff65a91f}.btn-primary:hover{background:linear-gradient(120deg,#ff98c9,#ff75b5)}.btn-outline{border-color:#565660;background:#222229;color:#fff}.btn-outline:hover{border-color:var(--accent)}.btn-ghost{background:transparent;color:#ddd}.btn-ghost:hover{background:#28282f}.btn-small{padding:11px 15px;font-size:.79rem}.btn-large{padding:18px 23px}.btn-block{width:100%}.link-button{font-size:.9rem;font-weight:700}.link-button i{color:var(--accent);margin-left:6px}
/* Hero */
.hero{position:relative;overflow:hidden;padding-block:112px 122px;background:radial-gradient(ellipse 35% 70% at 85% 46%,#ff4ba418,transparent),radial-gradient(ellipse 40% 70% at 13% 110%,#ff63a50c,transparent)}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;align-items:center;gap:50px}.hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid #70415d;border-radius:50px;background:#2b1a2a;padding:7px 14px;color:#ffb5d5;font-size:.72rem;font-weight:800;letter-spacing:.15em}.eyebrow-dot{background:var(--accent);border-radius:100%;height:7px;width:7px;box-shadow:0 0 14px #ff65a9}.hero h1{margin:26px 0 22px}.heading-small{display:block;font-size:.55em;margin-top:10px;letter-spacing:-.04em}.hero-lead{max-width:585px;color:#c2c2cc;font-size:1.12rem;line-height:1.75}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.hero-points{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;color:#bcbcc4;font-size:.78rem}.hero-points i{color:var(--accent);margin-right:4px}.hero-art{position:relative;min-height:520px;border-radius:30px;overflow:hidden;isolation:isolate;border:1px solid #ffffff1b;background:radial-gradient(circle at 55% 33%,#87345e,#382139 42%,#19171e 75%),linear-gradient(140deg,#322034,#0b0b0e);box-shadow:var(--shadow)}.hero-art::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,transparent 50%,#08080bd8);z-index:1}.hero-art::after{content:"";position:absolute;inset:-40%;opacity:.13;background:repeating-linear-gradient(135deg,transparent 0 32px,#ffffff24 33px 34px)}.art-orbit{position:absolute;border:2px solid #ffffff25;border-radius:50%;transform:rotate(-25deg)}.art-orbit-one{width:440px;height:440px;top:-64px;right:-99px}.art-orbit-two{width:315px;height:315px;top:0;right:-25px;border-color:#ff8dc53a}.art-main-icon{position:absolute;right:14%;top:15%;font-size:clamp(7rem,17vw,12rem);color:#ff77b5;filter:drop-shadow(0 20px 40px #08080b90);transform:rotate(-28deg);z-index:1}.art-caption{position:absolute;z-index:2;left:8%;bottom:11%}.art-caption-kicker{display:block;font-size:.67rem;font-weight:800;letter-spacing:.2em;color:#ffcee7;margin-bottom:12px}.art-caption strong{font:900 clamp(2.5rem,5vw,4.1rem)/.98 Montserrat,sans-serif;letter-spacing:-.08em}.art-floating{position:absolute;z-index:3;right:4%;top:8%;display:flex;align-items:center;gap:12px;padding:12px 15px;border:1px solid #ffffff3a;border-radius:16px;background:#24202bcc;box-shadow:0 16px 40px #0005;backdrop-filter:blur(10px)}.art-floating>i{font-size:1.55rem;color:#ff8cc4}.art-floating strong,.art-floating small{display:block}.art-floating strong{font-size:.84rem}.art-floating small{font-size:.54rem;color:#bebec7;letter-spacing:.13em}.hero-bottom-line{position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,#ff65ac44,transparent)}
/* Planner */
.planner-section{background:#101014}.planner-shell{max-width:1000px;margin:auto;padding:38px 44px 35px;border:1px solid var(--border);border-radius:26px;background:linear-gradient(145deg,#1a1a21,#121217);box-shadow:var(--shadow)}.planner-topline{display:flex;justify-content:space-between;align-items:center;gap:16px}.planner-topline h3{font-size:1.35rem;margin:8px 0 0}.step-counter{color:#e0dfe1;font-size:.79rem;font-weight:700;background:#2c2b33;border-radius:100px;padding:8px 14px;white-space:nowrap}.progress-track{height:7px;border-radius:100px;background:#35333a;margin-top:26px;overflow:hidden}.progress-track span{display:block;height:100%;width:33.333%;background:linear-gradient(90deg,#ff6baa,#ffb9dc);transition:width .3s}.wizard-labels{display:flex;list-style:none;justify-content:space-between;gap:12px;padding:0;margin:15px 0 35px;color:#8e8e98;font-size:.77rem;font-weight:700}.wizard-labels li.active{color:var(--accent-light)}.field-header{margin-bottom:20px}.field-header h4{margin:0 0 5px}.field-header p{color:var(--muted);font-size:.88rem;margin:0}.field-header.spaced{margin-top:32px}.choice-grid,.experience-grid{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.choice,.select-card{cursor:pointer;position:relative;display:flex;align-items:center;gap:12px;min-height:100px;padding:16px;border:1px solid #3c3b43;background:#222128;border-radius:14px;transition:border-color .2s,background .2s,transform .2s}.choice:hover,.select-card:hover{border-color:#ad6488;transform:translateY(-1px)}.choice:has(input:checked),.select-card:has(input:checked){background:#30232f;border-color:var(--accent);box-shadow:inset 0 0 0 1px #ff65a933}.choice input,.select-card input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.choice:has(input:focus-visible),.select-card:has(input:focus-visible){outline:3px solid var(--accent-light);outline-offset:3px}.choice-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:#42303f;color:var(--accent-light)}.choice strong,.choice small,.select-card strong,.select-card small{display:block}.choice strong,.select-card strong{font-size:.83rem;line-height:1.35}.choice small,.select-card small{font-size:.71rem;color:#b3b3bd;margin-top:4px;line-height:1.35}.select-card{min-height:76px}.wizard-step[hidden],[hidden]{display:none!important}.wizard-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:34px}.wizard-actions #wizard-back:not([hidden]){margin-right:auto}.schedule-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.form-field{min-width:0}.form-field>label{display:block;color:#eeeeef;font-size:.83rem;font-weight:700;margin-bottom:8px}.form-field>label i{color:var(--accent);margin-right:4px}.form-field>label small{font-weight:500;color:#a9a9b2}.form-field input,.form-field select,.form-field textarea{width:100%;background:#24242b;color:#fff;border:1px solid #474650;border-radius:10px;padding:12px 14px;outline:none;min-height:47px;transition:border-color .2s}.form-field textarea{resize:vertical;min-height:92px}.form-field :is(input,select,textarea):focus{border-color:var(--accent)}.form-field :is(input,select,textarea)[aria-invalid="true"]{border-color:var(--error)}.form-field input::placeholder,.form-field textarea::placeholder{color:#9696a0}.field-hint{display:block;color:#9e9ea8;font-size:.72rem;line-height:1.5;margin-top:6px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.span-full{grid-column:1/-1}.allocation{border-radius:14px;padding:20px;margin-top:26px;background:#25242b;border:1px solid #34333b}.allocation-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.82rem}.allocation-head>span{color:#bdbdc8}.allocation-track{display:flex;gap:7px;margin:16px 0}.allocation-slot{height:15px;flex:1;border-radius:5px;background:#373740}.allocation-slot.strength,.dot.strength{background:#ff6cad}.allocation-slot.cardio,.dot.cardio{background:#8e9eff}.allocation-legend{display:flex;flex-wrap:wrap;gap:16px;color:#b9b8c1;font-size:.74rem}.dot{display:inline-block;width:8px;height:8px;background:#494950;border-radius:50%;margin-right:5px}.split-preview{display:flex;align-items:flex-start;gap:16px;background:linear-gradient(105deg,#30212e,#262229);border:1px solid #784461;border-radius:15px;padding:20px;margin-top:24px}.split-preview-icon{display:grid;place-items:center;flex:0 0 45px;height:45px;background:#ff65a928;border-radius:12px;color:var(--accent-light)}.split-preview strong{display:block;font-size:1.1rem;margin-top:4px}.split-preview p{margin:5px 0 0;color:#c8bec0;font-size:.84rem}.summary-bar{background:#27242c;border:1px solid #4a3544;border-radius:13px;padding:17px;margin-top:24px;color:#eee;font-size:.88rem}.form-error{color:var(--error);background:#712d5833;border:1px solid #f76a8355;border-radius:9px;padding:11px 13px;font-size:.83rem;margin:12px 0 0}.plan-results{max-width:1180px;margin:42px auto 0;border-top:1px solid #423c40;padding-top:52px}.results-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.results-head h2{margin:8px 0}.results-head p{color:var(--muted)}.results-badge{display:inline-flex;align-items:center;gap:8px;background:#193b2d;color:var(--success);padding:9px 15px;border-radius:100px;font-size:.8rem;font-weight:800;white-space:nowrap}.plan-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}.stat{border:1px solid var(--border);padding:18px;background:#1a1a21;border-radius:14px}.stat strong{display:block;font:800 1.8rem Montserrat,sans-serif}.stat span{display:block;color:var(--muted);font-size:.76rem;margin-top:4px}.split-explanation,.plan-guidance{padding:22px 25px;border:1px solid #4b3545;border-radius:15px;background:#251b29;margin:22px 0}.split-explanation h3,.plan-guidance h3{font-size:1.05rem;margin:0 0 7px}.split-explanation p,.plan-guidance p{margin:0;color:#d2c6c7;font-size:.87rem}.plan-guidance p+p{margin-top:10px}.week-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:24px}.day-card{border:1px solid var(--border);border-radius:17px;background:#1a1a20;padding:22px;min-width:0}.day-card.rest{background:#15171b;border-color:#30343c}.day-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:13px}.day-head h3{margin:0;font-size:1.03rem}.day-type{display:inline-block;font-size:.68rem;font-weight:800;border-radius:50px;background:#46283c;color:#ffbbd9;padding:5px 11px;text-transform:uppercase;letter-spacing:.035em}.day-type.cardio{background:#282c4b;color:#bcc5ff}.day-type.rest{background:#292f32;color:#aab8ba}.day-card h4{font-size:1.1rem;margin:0 0 4px}.day-meta{font-size:.78rem;color:#b3b3be;margin-bottom:15px}.day-exercises{list-style:none;margin:0;padding:0}.day-exercises li{padding:10px 0;border-top:1px solid #ffffff14}.exercise-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:.84rem;font-weight:700}.exercise-title span:last-child{color:#ffb2d7;font-size:.74rem;text-align:right;flex-shrink:0}.exercise-detail{display:block;color:#a8a8b2;font-size:.74rem;line-height:1.55;margin-top:3px}.day-note{padding-top:13px;margin:12px 0 0;border-top:1px solid #ffffff16;font-size:.75rem;color:#c3c3ce}.rest-description{font-size:.85rem;color:#acb7ba;margin:0}.results-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.inline-status{min-height:1.25rem;color:var(--success);font-size:.83rem;margin:12px 0 0}.inline-status.error{color:var(--error)}
/* Content */
.how-section{background:#0c0c10}.feature-grid,.principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-card{position:relative;padding:30px;border-radius:19px;background:#19191e;border:1px solid #35353b;min-height:240px}.feature-number{position:absolute;right:26px;top:20px;color:#36353c;font:900 2.8rem Montserrat,sans-serif}.feature-card>i{font-size:1.55rem;color:var(--accent-light);margin:7px 0 25px}.feature-card h3{font-size:1.11rem}.feature-card p,.principle p{color:var(--muted);font-size:.88rem;margin:0}.principles-section{background:#131318}.principle{border:1px solid #35353f;border-radius:17px;background:#1b1b21;padding:27px}.principle>i{display:grid;place-items:center;width:46px;height:46px;color:var(--accent-light);background:#42293d;border-radius:12px;font-size:1.1rem;margin-bottom:23px}.principle h3{font-size:1rem}.safety-note{margin-top:30px;padding:16px 19px;background:#242125;border:1px solid #534055;border-radius:12px;color:#d7c6d1;font-size:.81rem}.safety-note i{color:var(--accent-light);margin-right:8px}.coaching-section{background:linear-gradient(120deg,#1f1516,#101013 65%)}.coaching-grid{display:grid;grid-template-columns:1fr .87fr;gap:90px;align-items:center}.coaching-grid>div>p{color:var(--muted);line-height:1.8}.check-list{padding:0;margin:24px 0 30px;list-style:none}.check-list li{display:flex;gap:12px;margin-bottom:12px;font-size:.9rem}.check-list i{color:var(--accent)}.coaching-card{border:1px solid #62405a;border-radius:22px;background:linear-gradient(150deg,#31202d,#1b1a21);padding:36px;min-height:330px}.coaching-icon{display:grid;place-items:center;font-size:1.4rem;color:var(--accent);background:#ff65a927;width:55px;height:55px;border-radius:14px;margin-bottom:28px}.coaching-card h3{font-size:1.65rem;margin:10px 0 14px}.coaching-card a{display:inline-flex;align-items:center;gap:8px;color:var(--accent-light);font-weight:800}.faq-section{background:#101015}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.faq-items details{border-bottom:1px solid #414149}.faq-items details:first-child{border-top:1px solid #414149}.faq-items summary{list-style:none;cursor:pointer;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.9rem;font-weight:750}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary i{color:var(--accent);transition:transform .2s}.faq-items details[open] summary i{transform:rotate(45deg)}.faq-items details p{margin:0;padding:0 0 20px;color:var(--muted);font-size:.85rem}.contact-section{background:#17171d}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.contact-grid>div>p{color:#b6b6bf}.contact-mail{display:inline-flex;align-items:center;gap:12px;font-weight:800;color:var(--accent-light);margin:20px 0}.contact-note{max-width:350px;font-size:.81rem}.contact-note i{color:var(--accent);margin-right:5px}.contact-form{border-radius:20px;border:1px solid #41414b;background:#222229;padding:34px}.contact-form h3{font-size:1.35rem;margin:0 0 25px}.consent{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:.79rem;color:#c5c5ce;margin:22px 0}.consent input{accent-color:var(--accent);margin-top:5px;min-width:17px;min-height:17px}.consent a,.legal-card a{color:var(--accent-light);text-decoration:underline;text-underline-offset:3px}.legal-section{padding-block:60px;background:#101014;border-top:1px solid #303039}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.legal-card{background:#19191f;border:1px solid #34343b;border-radius:16px;padding:28px;scroll-margin-top:100px}.legal-card h2{font-size:1.25rem}.legal-card p{color:#bcbcc5;font-size:.79rem}.legal-todo{padding:14px;background:#302832;border-radius:9px;border:1px dashed #9d6387;color:#e9bfd7!important}.footer{padding:65px 0 24px;background:#09090c;border-top:1px solid #303037}.footer-main{display:grid;grid-template-columns:1.4fr .75fr 1fr;gap:50px}.footer-main p{color:#9d9daa;font-size:.85rem;margin-top:20px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-links h3{font-size:.93rem;margin:0 0 9px}.footer-links a,.footer-links span{color:#a2a2ac;font-size:.81rem}.footer-bottom{border-top:1px solid #2c2c33;margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#8e8e9a;font-size:.73rem}.footer-bottom span:last-child{max-width:600px;text-align:right}.back-to-top{position:fixed;z-index:60;bottom:22px;right:22px;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--accent);border:0;color:#101014;box-shadow:0 8px 25px #0006;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
/* Modal */
.plan-dialog{width:min(640px,calc(100% - 30px));max-height:min(90vh,900px);overflow:auto;color:var(--text);background:#1d1d23;border:1px solid #53535b;border-radius:21px;padding:30px;box-shadow:0 30px 90px #000b}.plan-dialog::backdrop{background:#050507cd;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dialog-head h2{font-size:1.6rem;margin:8px 0 0}.dialog-close{border:1px solid #4d4d55;border-radius:9px;color:#fff;background:#303039;padding:8px 12px}.dialog-explainer{font-size:.84rem;color:var(--muted);margin:20px 0}.plan-dialog .form-grid{gap:12px}.plan-dialog #plan-text{font-size:.73rem;line-height:1.5;max-height:180px}
/* Entrance motion and responsive behavior */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1080px){.header-inner{gap:14px}.header-cta{display:none}.primary-nav{gap:16px}.hero-grid{gap:28px}.hero-art{min-height:445px}.art-main-icon{top:17%}.coaching-grid,.contact-grid{gap:40px}}
@media(max-width:900px){.menu-toggle{display:block;margin-left:auto}.primary-nav{position:absolute;display:none;flex-direction:column;align-items:stretch;top:100%;left:0;right:0;padding:18px 24px 26px;background:#16161b;border-bottom:1px solid #444;box-shadow:0 20px 40px #0006}.primary-nav.open{display:flex}.primary-nav a{padding:10px 0;font-size:.95rem}.hero-grid{grid-template-columns:1fr}.hero{padding-block:75px}.hero-copy{max-width:740px}.hero-art{min-height:385px;max-width:650px;width:100%}.art-main-icon{right:18%;top:7%}.faq-layout,.contact-grid{grid-template-columns:1fr;gap:22px}.coaching-grid{gap:30px}.choice-grid{grid-template-columns:repeat(2,1fr)}.footer-main{gap:25px}}
@media(max-width:680px){html{scroll-padding-top:76px}.container{width:min(var(--container),calc(100% - 32px))}.section{padding-block:70px}.header-inner{min-height:70px}.brand{font-size:1.12rem}.brand-mark{width:35px;height:35px}.hero{padding-block:65px 75px}.hero h1{font-size:clamp(2.4rem,10vw,3.7rem)}.hero-lead{font-size:1rem}.hero-actions{align-items:stretch;gap:16px}.hero-actions .btn{width:100%}.hero-points{gap:12px;font-size:.72rem}.hero-art{min-height:350px}.art-caption strong{font-size:2.65rem}.art-main-icon{font-size:8rem;right:8%;top:15%}.art-floating{right:4%;top:5%}.section-heading{margin-bottom:27px}.planner-shell{padding:23px 17px;border-radius:17px}.planner-topline{align-items:flex-start}.planner-topline h3{font-size:1rem}.step-counter{font-size:.65rem;padding:6px 9px}.wizard-labels{font-size:.63rem;gap:6px;margin-bottom:28px}.choice-grid,.experience-grid,.schedule-inputs,.form-grid,.feature-grid,.principles-grid,.coaching-grid,.legal-grid,.footer-main,.week-grid{grid-template-columns:1fr}.choice{min-height:74px}.choice-icon{width:37px;flex-basis:37px;height:37px}.select-card{min-height:60px}.field-header.spaced{margin-top:25px}.schedule-inputs{gap:13px}.wizard-actions{flex-wrap:wrap}.wizard-actions .btn{flex:1}.allocation-head{align-items:flex-start;flex-direction:column;gap:4px}.results-head{flex-direction:column}.plan-stats{grid-template-columns:repeat(2,1fr)}.stat{padding:15px}.feature-card{min-height:0}.coaching-card{min-height:0}.contact-form{padding:22px}.footer-main{gap:28px}.footer-bottom{flex-direction:column}.footer-bottom span:last-child{text-align:left}.plan-dialog{padding:19px}.results-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}

/* Planer: fünf Kennzahlen und visuelle Unterscheidung zwischen Lauf und Gerät */
@media(min-width:900px){.plan-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}
.day-type.run{background:#252c45;color:#c6d6ff}
.day-type.machine{background:#28352d;color:#b5ecc5}

/* Feste Ruhetage: responsive, tastaturbedienbare Auswahl */
.rest-picker{min-width:0;margin:22px 0 0;padding:22px;border:1px solid #45424b;border-radius:15px;background:#211f26}
.rest-picker legend{padding:0 7px;color:#fff;font-size:.98rem;font-weight:800}
.rest-picker legend i{color:var(--accent-light);margin-right:6px}
.rest-picker p{color:#bbb9c4;font-size:.84rem;line-height:1.65;margin:0 0 16px}
.rest-picker p strong{color:#fff}
.rest-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}
.rest-day-choice{position:relative;display:block;cursor:pointer;text-align:center}
.rest-day-choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.rest-day-choice span{display:grid;place-items:center;min-height:52px;border-radius:11px;background:#302c39;border:1px solid #504c57;color:#e4e1e8;font-weight:750;font-size:.87rem;transition:background .15s,border-color .15s}
.rest-day-choice:hover span{border-color:#e483b3}
.rest-day-choice input:checked+span{background:#522b42;color:#fff;border-color:var(--accent);box-shadow:inset 0 0 0 1px #ff6bac}
.rest-day-choice input:focus-visible+span{outline:3px solid #ffb7da;outline-offset:3px}
.rest-picker-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}
.rest-picker-footer .field-hint{margin:0;font-size:.77rem}
.rest-clear{background:none;border:0;padding:7px 0;color:#ffb7d9;font:inherit;font-size:.77rem;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.rest-clear:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
@media(max-width:680px){.rest-picker{padding:18px 13px}.rest-day-grid{gap:5px}.rest-day-choice span{min-height:46px;font-size:.74rem}}

/* Exakte Trainingshäufigkeit und manuell wählbarer Kraftsplit */
.allocation-help{margin:13px 0 0;color:#c8c7d0;font-size:.81rem;line-height:1.6}
.split-config{margin-top:17px;padding:23px;border:1px solid #4b4650;background:#1c1b22;border-radius:15px}
.split-config .field-header{margin-bottom:15px}
.split-config .field-header h4{margin:0 0 5px;font-size:1rem}
.split-config .field-header p{font-size:.81rem;color:#b6b3be;margin:0}
.split-choice-info{margin:11px 0 0;padding:11px 14px;border-radius:10px;background:#30232f;color:#f0c5dc;font-size:.8rem;line-height:1.65}
.split-custom{margin-top:18px;padding:20px;border:1px solid #695061;background:#2b2430;border-radius:13px}
.split-custom>strong{display:block;font-size:.9rem}
.split-custom>p{font-size:.79rem;color:#c8c2cb;margin:5px 0 16px;line-height:1.6}
.split-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.split-custom>.field-hint{margin:13px 0 0}
@media(max-width:680px){.split-config{padding:18px 14px}.split-custom{padding:15px 12px}.split-custom-grid{grid-template-columns:1fr}}

/* UX-Verbesserungen: Split-Vorschau, Zustandsmeldungen und geführte Navigation. */
.planner-shell { scroll-margin-top: 108px; }
.wizard-step .field-header h4:focus { outline: none; }
.wizard-step .field-header h4:focus-visible { outline: 2px solid #ff6cad; outline-offset: 6px; border-radius: 4px; }
.split-session-preview { margin-top: 15px; padding: 16px; border: 1px solid rgba(255,101,169,.24); border-radius: 14px; background: rgba(255,101,169,.055); }
.split-session-heading { display: block; margin-bottom: 11px; font-size: .85rem; font-weight: 700; color: #efeff0; }
.split-session-preview ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; counter-reset: unit; }
.split-session-preview li { counter-increment: unit; display: inline-flex; align-items: center; gap: 8px; padding: 8px 11px; background: #242329; border: 1px solid #45394a; border-radius: 10px; color: #f5f5f6; font-size: .82rem; line-height: 1.3; }
.split-session-preview li::before { content: counter(unit); display: grid; place-items: center; flex: 0 0 21px; width: 21px; height: 21px; border-radius: 50%; background: #ff6cad; color: #171315; font-weight: 800; font-size: .75rem; }
.form-hint-banner { padding: 13px 16px; border: 1px solid rgba(255,143,199,.4); border-radius: 10px; background: rgba(255,101,169,.085); color: #ffe0ef; margin: 14px 0; line-height: 1.55; }
#planner-update-hint { margin-top: 18px; }
#rest-day-grid[aria-invalid="true"] { outline: 2px solid rgba(255,101,169,.75); outline-offset: 4px; border-radius: 9px; }
#available-days[aria-invalid="true"] { border-color: #f784b3; }
@media (max-width: 560px) { .split-session-preview { padding: 12px; } .split-session-preview ol { gap: 7px; } .split-session-preview li { padding: 8px 9px; font-size: .79rem; } .planner-shell { scroll-margin-top: 82px; } }
@media (prefers-reduced-motion: reduce) { .planner-shell {scroll-behavior: auto;} }

/* Wichtige Steuerflächen funktionieren auch ohne externe Icon-Fonts. */
.menu-toggle i, .brand-mark i, .back-to-top i { display: none; }
.menu-toggle::before { content: "☰"; font-family: Arial, sans-serif; font-size: 1.45rem; line-height: 1; }
.menu-toggle[aria-expanded="true"]::before { content: "×"; font-size: 1.7rem; }
.brand-mark::before { content: "M"; display: block; font-family: Montserrat, Inter, sans-serif; font-size: 1.1rem; font-weight: 900; }
.back-to-top::before { content: "↑"; display: block; font: 700 1.25rem/1 Arial, sans-serif; }

/* Personaltraining Brand: Wortmarke mit Unterzeile; auch auf kleinen Displays lesbar. */
.brand { gap: 12px; flex-shrink: 0; }
.brand-copy { display: flex; flex-direction: column; justify-content: center; gap: 1px; min-width: 0; line-height: 1.05; }
.brand-name { font-size: 1.03rem; font-weight: 900; letter-spacing: -.035em; }
.brand-subline { font-size: .52rem; font-weight: 800; letter-spacing: .24em; color: #d8ccda; }
.brand-mark { transform: none; background: linear-gradient(140deg,#ff95c5,#ef4a96); }
.brand-mark::before { font-size: 1.03rem; }
@media(max-width: 1120px) and (min-width: 901px) {
  .header-inner { gap: 13px; }
  .primary-nav { gap: 12px; }
  .primary-nav a { font-size: .77rem; }
  .brand-name { font-size: .94rem; }
  .brand-subline { font-size: .47rem; }
}
@media(max-width: 380px) {
  .brand-name { font-size: .88rem; }
  .brand-subline { font-size: .44rem; letter-spacing: .19em; }
  .brand-mark { width: 33px; height: 33px; }
}

/* Schmale Displays: die drei Assistenten-Schritte dürfen die Seite nicht verbreitern. */
@media (max-width: 500px) {
  .wizard-labels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; font-size: .61rem; }
  .wizard-labels li { min-width: 0; overflow-wrap: anywhere; hyphens: auto; line-height: 1.3; }
}

/* App-Übernahmehilfe – rosa Design, sichtbare Importgrenzen, mobile Bedienbarkeit. */
.app-transfer{margin-top:38px;padding:27px;border:1px solid #544154;border-radius:22px;background:linear-gradient(140deg,#241c29,#17171e 66%);scroll-margin-top:100px}
.app-transfer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:23px}
.app-transfer-heading h3{font-size:clamp(1.3rem,2.5vw,1.85rem);margin:9px 0 9px}
.app-transfer-heading p{margin:0;max-width:720px;color:#c2b9c5;font-size:.89rem;line-height:1.65}
.app-transfer-local{display:inline-flex;align-items:center;gap:7px;flex:none;color:#e8c4da;font-size:.74rem;font-weight:750;border:1px solid #69425a;border-radius:100px;padding:7px 11px}
.app-transfer-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:0}
.app-transfer-tab{background:#28232e;border:1px solid #554354;color:#f0e8ee;border-radius:13px 13px 0 0;text-align:left;padding:15px 18px;font-size:.99rem;line-height:1.35;font-weight:800;min-width:0}
.app-transfer-tab small{display:block;color:#bfb2c2;margin-top:3px;font-size:.7rem;line-height:1.4;font-weight:500}
.app-transfer-tab.active{background:#362437;color:#fff;border-color:#ff79b8;border-bottom-color:#362437;box-shadow:inset 0 3px #ff65a9}
.app-transfer-tab:hover{border-color:#ff91c6}
.app-transfer-tab:focus-visible{outline:3px solid #ffc0dd;outline-offset:3px;z-index:1}
.app-transfer-panel{padding:22px;background:#211d27;border:1px solid #60445c;border-radius:0 0 14px 14px}
.app-transfer-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.app-transfer-kicker{font-size:.69rem;letter-spacing:.14em;color:#ffa8d1;font-weight:850}
.app-transfer-intro h4{font-size:1.05rem;margin:7px 0 8px}
.app-transfer-intro p{font-size:.83rem;color:#cfbfcd;max-width:670px;line-height:1.7;margin:0}
.app-transfer-open{flex:none;max-width:250px}
.app-transfer-steps{list-style:none;counter-reset:trans-step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:21px 0;padding:0}
.app-transfer-steps li{counter-increment:trans-step;padding:17px 14px 15px;background:#2b2731;border:1px solid #413645;border-radius:12px;color:#ddd5dd;font-size:.78rem;line-height:1.6}
.app-transfer-steps li::before{content:counter(trans-step);display:grid;place-items:center;width:27px;height:27px;margin-bottom:9px;border-radius:9px;background:#ff65a920;color:#ffacd0;font-weight:850}
.app-transfer-warning{border-left:3px solid #ff8abf;padding:11px 15px;margin:3px 0 25px;background:#40273a;color:#f7cee0;border-radius:0 8px 8px 0;font-size:.79rem;line-height:1.6}
.app-transfer-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin:24px 0 13px}
.app-transfer-list-head h4{margin:0 0 6px;font-size:1rem}
.app-transfer-list-head p{color:#bdb2bd;font-size:.78rem;margin:0;line-height:1.55}
.app-transfer-count{display:inline-block;flex:none;padding:5px 10px;border-radius:30px;background:#3d2c3f;color:#ffbedc;font-weight:800;font-size:.73rem}
.app-transfer-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.app-transfer-day{border:1px solid #504152;background:#29242e;border-radius:12px;display:flex;align-items:center;gap:13px;justify-content:space-between;padding:13px;min-width:0}
.app-transfer-day-info{display:flex;flex-direction:column;min-width:0;gap:2px}
.app-transfer-day-label{font-size:.7rem;font-weight:700;color:#ffb2d6}
.app-transfer-day-info strong{font-size:.88rem;line-height:1.4;overflow-wrap:anywhere}
.app-transfer-day-caption{font-size:.72rem;color:#b2a7b6}
.app-transfer-copy{font-size:.76rem;padding:10px 12px;flex:none}
.app-transfer-empty{grid-column:1/-1;margin:0;color:#cbc0ce;padding:18px;background:#2e2933;border:1px dashed #665168;border-radius:11px;font-size:.85rem}
.app-transfer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.app-transfer-actions .btn{font-size:.81rem}
.app-transfer-actions button:disabled{cursor:not-allowed;opacity:.45}
.app-transfer-csv-note{font-size:.74rem;color:#c4b7c7;margin:17px 0 0;line-height:1.65}
.app-transfer-source{border-top:1px solid #443747;margin:14px 0 0;padding-top:14px;color:#a99bac;font-size:.72rem;line-height:1.55}
.app-transfer-source a{color:#ffb4d7;text-decoration:underline;text-underline-offset:2px}
.app-transfer-status{margin-top:9px}
.external-link-symbol{font-size:1.05rem}
@media(max-width:900px){.app-transfer-steps{grid-template-columns:1fr}.app-transfer-intro{flex-wrap:wrap}.app-transfer-open{max-width:none}}
@media(max-width:680px){.app-transfer{padding:18px 12px;border-radius:15px}.app-transfer-heading{flex-direction:column;gap:12px}.app-transfer-local{font-size:.67rem}.app-transfer-tabs{gap:5px}.app-transfer-tab{padding:13px 9px;font-size:.82rem;overflow-wrap:anywhere}.app-transfer-tab small{font-size:.66rem}.app-transfer-panel{padding:15px 11px}.app-transfer-days{grid-template-columns:1fr}.app-transfer-day{padding:12px}.app-transfer-copy{padding:10px 9px}.app-transfer-actions{flex-direction:column}.app-transfer-actions .btn{width:100%}.app-transfer-open{width:100%}.app-transfer-list-head{flex-wrap:wrap}}
