@layer tokens, base, components, modules;
@import url("/tokens.css") layer(tokens);
@import url("/base.css") layer(base);
@import url("/components.css") layer(components);

/* Öffentliche AMS-Booking-Startseite (booking.amsgermany.de/). Nur Tokens des Designsystems; Graphit, Creme, Champagner. */
@layer modules {
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--surface-page);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:var(--leading-normal)}
a{color:inherit}
.lp-wrap{width:min(1160px,100%);margin:0 auto;padding:0 var(--space-6)}
.lp-eyebrow{margin:0 0 var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-gold-text)}
.lp-section h2{margin:0 0 var(--space-6);font-size:clamp(28px,3.4vw,40px);font-weight:var(--weight-semibold);letter-spacing:-.02em;line-height:var(--leading-tight);max-width:22ch}
.lp-sub{margin:calc(-1 * var(--space-3)) 0 var(--space-6);color:var(--text-secondary)}
.lp-hint{margin:var(--space-3) 0 0;font-size:var(--text-sm);color:var(--text-secondary)}

/* Buttons */
.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.lp-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.lp-btn--lg{min-height:var(--control-lg);padding:0 var(--space-6);font-size:var(--text-md)}
.lp-btn--gold{background:var(--accent-gold);color:var(--text-on-gold)}
.lp-btn--gold:hover{filter:brightness(.95)}
.lp-btn--ghost{background:transparent;color:var(--nav-text)}
.lp-btn--ghost:hover{color:var(--accent-gold)}
.lp-btn--outline{background:transparent;border-color:var(--border-strong);color:var(--text-primary)}
.lp-btn--outline:hover{border-color:var(--accent-gold);color:var(--accent-gold-text)}
.lp-btn--outline-light{background:transparent;border-color:color-mix(in srgb,var(--nav-text) 35%,transparent);color:var(--nav-text)}
.lp-btn--outline-light:hover{border-color:var(--accent-gold);color:var(--accent-gold)}
.lp-btn[disabled]{opacity:.6;cursor:progress}

/* Kopfzeile */
.lp-header{position:sticky;top:0;z-index:10;background:var(--nav-background);color:var(--nav-text);border-bottom:1px solid color-mix(in srgb,var(--nav-text) 10%,transparent)}
.lp-header__inner{display:flex;align-items:center;gap:var(--space-6);min-height:68px}
.lp-brand{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--nav-text);text-decoration:none}
.lp-brand span{color:var(--accent-gold);font-weight:var(--weight-regular)}
.lp-brand--small{font-size:var(--text-lg)}
.lp-nav{display:flex;gap:var(--space-5);margin-left:var(--space-4)}
.lp-nav a{color:var(--nav-text-muted);font-size:var(--text-sm);text-decoration:none}
.lp-nav a:hover,.lp-nav a:focus-visible{color:var(--nav-text)}
.lp-header__actions{display:flex;gap:var(--space-2);margin-left:auto}

/* Hero */
.lp-hero{background:var(--nav-background);color:var(--nav-text);overflow:hidden}
.lp-hero__inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--space-10);align-items:center;padding-top:var(--space-12);padding-bottom:calc(var(--space-12) * 1.5)}
.lp-hero .lp-eyebrow{color:var(--accent-gold)}
.lp-hero h1{margin:0 0 var(--space-5);font-size:clamp(38px,5.6vw,68px);font-weight:var(--weight-semibold);letter-spacing:-.035em;line-height:1.04;color:var(--nav-text)}
.lp-hero h1 em{font-style:normal;color:var(--accent-gold)}
.lp-lead{max-width:46ch;margin:0 0 var(--space-8);font-size:var(--text-lg);color:var(--nav-text-muted)}
.lp-hero__cta{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.lp-hero .lp-btn--outline{border-color:color-mix(in srgb,var(--nav-text) 35%,transparent);color:var(--nav-text)}
.lp-hero .lp-btn--outline:hover{border-color:var(--accent-gold);color:var(--accent-gold)}
.lp-hero .lp-hint{color:var(--nav-text-muted)}

/* Produktandeutung: rein dekorativ, keine Daten */
.lp-mock{position:relative;padding:var(--space-4);border:1px solid color-mix(in srgb,var(--nav-text) 14%,transparent);border-radius:var(--radius-xl);background:color-mix(in srgb,var(--nav-text) 5%,var(--nav-background));box-shadow:0 40px 80px -30px #000a;transform:rotate(-1.5deg)}
.lp-mock__bar{display:flex;gap:6px;margin-bottom:var(--space-4)}
.lp-mock__bar span{width:9px;height:9px;border-radius:50%;background:color-mix(in srgb,var(--nav-text) 22%,transparent)}
.lp-mock__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-3);color:var(--nav-text)}
.lp-mock__head small{color:var(--nav-text-muted);font-size:var(--text-xs)}
.lp-mock__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);height:260px}
.lp-mock__col{position:relative;border-radius:var(--radius-md);background:repeating-linear-gradient(to bottom,transparent 0 31px,color-mix(in srgb,var(--nav-text) 8%,transparent) 31px 32px)}
.lp-slot{position:absolute;left:6px;right:6px;border-radius:var(--radius-sm);border-left:3px solid var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 22%,transparent)}
.lp-slot--a{top:14px;height:56px}.lp-slot--b{top:120px;height:84px}
.lp-slot--c{top:44px;height:92px;border-color:#9fb5a6;background:#9fb5a633}.lp-slot--d{top:176px;height:48px;border-color:#9fb5a6;background:#9fb5a633}
.lp-slot--e{top:80px;height:120px;border-color:#b5a6c4;background:#b5a6c433}
.lp-mock__toast{position:absolute;right:-18px;bottom:-22px;display:grid;gap:2px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-panel);color:var(--text-primary);box-shadow:0 18px 40px -16px #0008;transform:rotate(1.5deg)}
.lp-mock__toast b{font-size:var(--text-sm)}
.lp-mock__toast small{font-size:var(--text-xs);color:var(--text-secondary)}

/* Abschnitte */
.lp-section{padding:calc(var(--space-12) * 1.5) 0}
.lp-section--dark{background:var(--nav-background);color:var(--nav-text)}
.lp-section--dark h2{color:var(--nav-text)}
.lp-section--dark .lp-eyebrow{color:var(--accent-gold)}
.lp-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.lp-features article{padding:var(--space-6);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-panel)}
.lp-features h3{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-md);font-weight:var(--weight-semibold)}
.lp-features p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}
.lp-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-md);background:var(--accent-gold-subtle);color:var(--accent-gold-text)}
.lp-icon .ams-icon{width:22px;height:22px}
.lp-benefits{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-10);align-items:start}
.lp-benefits ul{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6) var(--space-8);margin:0;padding:0;list-style:none}
.lp-benefits li{display:grid;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid color-mix(in srgb,var(--accent-gold) 45%,transparent)}
.lp-benefits strong{font-weight:var(--weight-semibold)}
.lp-benefits span{font-size:var(--text-sm);color:var(--nav-text-muted)}

/* Preise */
.lp-interval{display:inline-flex;gap:2px;margin:0 0 var(--space-6);padding:3px;border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--surface-panel)}
.lp-interval button{min-height:36px;padding:0 var(--space-5);border:0;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer}
.lp-interval button.active{background:var(--nav-background);color:var(--nav-text)}
.lp-interval button:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.lp-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);align-items:stretch}
.lp-plan{position:relative;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8) var(--space-6);border:1px solid var(--border-default);border-radius:var(--radius-xl);background:var(--surface-panel)}
.lp-plan--featured{border-color:var(--accent-gold);box-shadow:0 24px 48px -28px color-mix(in srgb,var(--accent-gold) 70%,transparent)}
.lp-plan__badge{position:absolute;top:calc(-1 * var(--space-3));left:var(--space-6);padding:2px var(--space-3);border-radius:var(--radius-full);background:var(--accent-gold);color:var(--text-on-gold);font-size:var(--text-xs);font-weight:var(--weight-semibold)}
.lp-plan h3{margin:0;font-size:var(--text-xl);font-weight:var(--weight-semibold)}
.lp-plan__price{display:flex;align-items:baseline;gap:var(--space-2);margin:0}
.lp-plan__price strong{font-size:clamp(30px,3vw,38px);font-weight:var(--weight-semibold);letter-spacing:-.02em}
.lp-plan__price span,.lp-plan__note{font-size:var(--text-sm);color:var(--text-secondary)}
.lp-plan__note{margin:0}
.lp-plan__trial{align-self:flex-start;padding:2px var(--space-3);border-radius:var(--radius-full);background:var(--accent-gold-subtle);color:var(--accent-gold-text);font-size:var(--text-xs);font-weight:var(--weight-medium)}
.lp-plan ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none;font-size:var(--text-sm)}
.lp-plan li{display:flex;gap:var(--space-2);align-items:flex-start}
.lp-plan li .ams-icon{flex-shrink:0;width:16px;height:16px;margin-top:3px;color:var(--accent-gold-text)}
.lp-plan .lp-btn{margin-top:auto}
.lp-plan--off{opacity:.65}
.lp-legal{margin:var(--space-6) 0 0;font-size:var(--text-xs);color:var(--text-tertiary)}

/* Abschluss und Fuß */
.lp-cta{background:var(--nav-background);color:var(--nav-text);text-align:center}
.lp-cta__inner{display:grid;justify-items:center;gap:var(--space-2)}
.lp-cta h2{margin:0;color:var(--nav-text);max-width:none}
.lp-cta p{margin:0 0 var(--space-6);color:var(--nav-text-muted)}
.lp-footer{padding:var(--space-8) 0;border-top:1px solid var(--border-default);font-size:var(--text-sm);color:var(--text-secondary)}
.lp-footer .lp-brand{color:var(--text-primary)}
.lp-footer .lp-brand span{color:var(--accent-gold-text)}
.lp-footer__inner{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}
.lp-footer nav{display:flex;gap:var(--space-4);margin-left:auto}
.lp-footer nav a{text-decoration:none}
.lp-footer nav a:hover{color:var(--text-primary)}

@media (max-width:1023.98px){
  .lp-hero__inner,.lp-benefits{grid-template-columns:1fr}
  .lp-hero__visual{max-width:520px}
  .lp-features,.lp-plans{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:599.98px){
  .lp-wrap{padding:0 var(--space-4)}
  .lp-nav{display:none}
  .lp-header__inner{gap:var(--space-3)}
  .lp-header .lp-btn{padding:0 var(--space-3)}
  .lp-hero__inner{padding-top:var(--space-10);padding-bottom:var(--space-12)}
  .lp-hero__visual{display:none}
  .lp-hero__cta .lp-btn{flex:1 1 100%}
  .lp-section{padding:var(--space-12) 0}
  .lp-features,.lp-plans,.lp-benefits ul{grid-template-columns:1fr}
  .lp-footer nav{margin-left:0}
}
}
