/* ==========================================================================
   @font-face – lokal gehostete Fonts (assets/fonts/)
   Barlow: 400/500/600 · Barlow Condensed: 700/800/900
   Subsets: latin-ext (für Sonderzeichen), latin
   ========================================================================== */

/* latin-ext */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/Barlow-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/Barlow-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* latin-ext */
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Barlow-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Barlow-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* latin-ext */
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Barlow-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Barlow-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* latin-ext */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/BarlowCondensed-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/BarlowCondensed-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* latin-ext */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/BarlowCondensed-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/BarlowCondensed-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* latin-ext */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url('assets/fonts/BarlowCondensed-900-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* latin */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url('assets/fonts/BarlowCondensed-900-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}


:root{
  --color-bg:#10162b;
  --color-surface:#282e41;
  --color-surface-2:#1a1a1a;
  --color-border:rgba(255,255,255,0.08);
  --color-text:#f0f0f0;
  --color-text-muted:#a0a0a0;
  --color-text-faint:#606060;
  --color-magenta:#e40177;
  --color-magenta-hover:#ff1a92;
  --color-magenta-dim:rgba(229,0,126,0.12);
  --color-magenta-glow:rgba(229,0,126,0.3);

  --font-display:'Barlow Condensed','Impact',sans-serif;
  --font-body:'Barlow','Helvetica Neue',sans-serif;

  --text-xs:clamp(0.75rem,0.7rem  + 0.25vw,0.875rem);
  --text-sm:clamp(0.875rem,0.8rem  + 0.35vw,1rem);
  --text-base:clamp(1rem,0.95rem + 0.25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem    + 0.75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem  + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem  + 2.5vw,3.5rem);
  --text-3xl:clamp(2.5rem,1rem    + 4vw,5rem);
  --text-hero:clamp(3rem,0.5rem  + 7vw,8rem);

  --space-1:0.25rem;
  --space-2:0.5rem;
  --space-3:0.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;
  --space-8:2rem;
  --space-10:2.5rem;
  --space-12:3rem;
  --space-16:4rem;
  --space-20:5rem;
  --space-24:6rem;

  --radius-sm:0.375rem;
  --radius-md:0.5rem;
  --radius-lg:0.75rem;
  --radius-full:9999px;

  --content-default:960px;
  --content-wide:1200px;

  --transition:180ms cubic-bezier(0.16,1,0.3,1);
}


*,*::before,*::after{ box-sizing:border-box;margin:0;padding:0;}
html{
  -webkit-font-smoothing:antialiased;
  scroll-behavior:smooth;
  scroll-padding-top:var(--space-16);
}
body{
  min-height:100dvh;
  font-family:var(--font-body);
  font-size:var(--text-base);
  color:var(--color-text);
  background-color:var(--color-bg);
  line-height:1.6;
}
img,svg{ display:block;max-width:100%;}
ul{ list-style:none;}
a{ text-decoration:none;color:inherit;}
button{ cursor:pointer;background:none;border:none;font:inherit;color:inherit;}
::selection{ background:rgba(229,0,126,0.25);color:var(--color-text);}
:focus-visible{ outline:2px solid var(--color-magenta);outline-offset:3px;border-radius:var(--radius-sm);}
h1,h2,h3,h4{ text-wrap:balance;line-height:1.1;}
p{ text-wrap:pretty;}


.container,.container--wide{
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-12));
}
.container{ max-width:var(--content-default);}
.container--wide{ max-width:var(--content-wide);}

@media (max-width:480px){
  .container,
  .container--wide{
    padding-inline:var(--space-3);
}
}


.topbar{
  background:var(--color-magenta);
  padding:var(--space-3) var(--space-4);
  text-align:center;
}
.topbar p{
  font-family:var(--font-display);
  font-size:var(--text-lg);
  font-weight:700;
  letter-spacing:0.02em;
  text-transform:uppercase;
  color:#fff;
  max-width:none;
}
.topbar p span{
  color:#000;
}

@media (max-width:480px){
  .topbar{
    padding:var(--space-2) var(--space-3);
}
  .topbar p{
    font-size:var(--text-base);
}
}


.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(10,10,10,0.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--color-border);
  padding:var(--space-4) 0;
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-6);
}
.logo{
  display:flex;
  align-items:center;
  gap:var(--space-3);
}
.logo-svg{
  width:44px;
  height:44px;
  flex-shrink:0;
}
.logo-text{
  font-family:var(--font-display);
  font-weight:900;
  font-size:var(--text-xl);
  letter-spacing:-0.01em;
  line-height:1;
  color:#fff;
}
.logo-text span{ color:var(--color-magenta);}
.logo-tagline{
  font-family:var(--font-body);
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin-top:var(--space-1);
}
.main-nav{
  display:flex;
  align-items:center;
  gap:var(--space-8);
}
.main-nav a{
  font-size:var(--text-sm);
  font-weight:500;
  color:var(--color-text-muted);
  text-transform:uppercase;
  letter-spacing:0.06em;
  transition:color var(--transition);
}
.main-nav a:hover{ color:var(--color-magenta);}
.main-nav .nav-cta{
  background:var(--color-magenta);
  color:#fff;
  padding:var(--space-2) var(--space-5);
  border-radius:var(--radius-full);
  font-weight:600;
  transition:background var(--transition);
}
.main-nav .nav-cta:hover{ background:var(--color-magenta-hover);}

@media (max-width:767px){
  .main-nav{ display:none;}
  .site-header{
    padding:var(--space-3) 0;
}
  .logo-svg{
    width:36px;
    height:36px;
}
  .logo-text{
    font-size:var(--text-lg);
}
  .logo-tagline{
    font-size:var(--text-xs);
}
}


.hero{
  position:relative;
  overflow:hidden;
  padding:clamp(var(--space-16),10vw,var(--space-24)) 0 clamp(var(--space-12),8vw,var(--space-20));
  background:var(--color-bg);
}
.hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 60% 50% at 80% 50%,rgba(229,0,126,0.07) 0%,transparent 70%),
    radial-gradient(ellipse 40% 60% at 20% 80%,rgba(229,0,126,0.04) 0%,transparent 70%);
  pointer-events:none;
}
.hero-inner{
  display:grid;
  grid-template-columns:1fr auto;
  gap:var(--space-12);
  align-items:center;
}
.hero-eyebrow{
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--color-magenta);
  margin-bottom:var(--space-4);
}
.hero-title{
  font-family:var(--font-display);
  font-size:var(--text-hero);
  font-weight:900;
  line-height:0.95;
  letter-spacing:-0.01em;
  text-transform:uppercase;
  color:#fff;
  margin-bottom:var(--space-6);
}
.hero-title .accent{ color:var(--color-magenta);}
.hero-body{
  font-size:var(--text-base);
  color:var(--color-text-muted);
  max-width:56ch;
  line-height:1.7;
  margin-bottom:var(--space-8);
}
.hero-ctas{
  display:flex;
  align-items:center;
  gap:var(--space-4);
  flex-wrap:wrap;
}
.btn-primary{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  background:var(--color-magenta);
  color:#fff;
  font-family:var(--font-display);
  font-size:var(--text-lg);
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  padding:var(--space-3) var(--space-8);
  border-radius:var(--radius-full);
  transition:background var(--transition),transform var(--transition),box-shadow var(--transition);
}
.btn-primary:hover{
  background:var(--color-magenta-hover);
  transform:translateY(-1px);
  box-shadow:0 8px 32px rgba(229,0,126,0.35);
}
.btn-primary:active{ transform:translateY(0);}
.btn-ghost{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  color:var(--color-text-muted);
  font-size:var(--text-sm);
  font-weight:500;
  border:1px solid var(--color-border);
  padding:var(--space-3) var(--space-6);
  border-radius:var(--radius-full);
  transition:color var(--transition),border-color var(--transition);
}
.btn-ghost:hover{ color:var(--color-text);border-color:rgba(255,255,255,0.25);}


.hero-stats{
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
}
.stat-card{
  background:var(--color-surface);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  padding:var(--space-5) var(--space-6);
  text-align:center;
  min-width:120px;
  position:relative;
  overflow:hidden;
}
.stat-card::after{
  content:'';
  position:absolute;
  bottom:0;left:0;right:0;
  height:2px;
  background:var(--color-magenta);
}
.stat-number{
  font-family:var(--font-display);
  font-size:var(--text-3xl);
  font-weight:900;
  color:var(--color-magenta);
  line-height:1;
  display:block;
}
.stat-label{
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  text-transform:uppercase;
  letter-spacing:0.08em;
  margin-top:var(--space-1);
}

@media (max-width:767px){
  .hero-inner{ grid-template-columns:1fr;}
  .hero-stats{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--space-3);
}
  .stat-card{
    min-width:auto;
    padding:var(--space-4) var(--space-3);
}
  .stat-card:nth-child(3){
    grid-column:1 / -1;
}
  .stat-number{ font-size:var(--text-2xl);}
  .hero{
    padding:clamp(var(--space-8),8vw,var(--space-16)) 0 clamp(var(--space-8),6vw,var(--space-12));
}
  .hero-title{
    margin-bottom:var(--space-4);
}
  .hero-body{
    margin-bottom:var(--space-6);
}
  .hero-ctas{
    flex-direction:column;
    gap:var(--space-3);
}
  .btn-primary{
    width:100%;
    justify-content:center;
    padding:var(--space-3) var(--space-6);
}
  .btn-ghost{
    width:100%;
    justify-content:center;
    padding:var(--space-3) var(--space-6);
}
}


.podcast-section{
  padding:clamp(var(--space-12),8vw,var(--space-24)) 0;
  background:var(--color-surface);
}
.section-label{
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--color-magenta);
  margin-bottom:var(--space-4);
}
.section-title{
  font-family:var(--font-display);
  font-size:var(--text-2xl);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.01em;
  color:#fff;
  margin-bottom:var(--space-6);
}
.podcast-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-16);
  align-items:center;
}
.podcast-text p{
  color:var(--color-text-muted);
  max-width:52ch;
  line-height:1.75;
  margin-bottom:var(--space-6);
}
.podcast-highlights{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
}
.highlight-item{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  font-size:var(--text-sm);
  color:var(--color-text-muted);
}
.highlight-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--color-magenta);
  flex-shrink:0;
}

@media (max-width:767px){
  .podcast-grid{ grid-template-columns:1fr;gap:var(--space-8);}
  .podcast-section{
    padding:clamp(var(--space-8),8vw,var(--space-16)) 0;
}
  .podcast-highlights{
    gap:var(--space-2);
}
  .highlight-item{
    font-size:var(--text-xs);
}
}


.streaming-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:var(--space-4);
}
.streaming-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:var(--space-4);
  background:rgba(229,0,126,0.1);
  border:1px solid rgba(229,0,126,0.25);
  border-radius:var(--radius-lg);
  transition:background var(--transition),border-color var(--transition),transform var(--transition),box-shadow var(--transition);
}
.streaming-icon img,
.streaming-icon svg{
  width:100%;
  height:100%;
  flex-shrink:0;
  object-fit:contain;
  filter:brightness(0) saturate(0%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0) brightness(1);
}
.streaming-icon:hover{
  background:rgba(229,0,126,0.2);
  border-color:var(--color-magenta);
  transform:translateY(-2px);
  box-shadow:0 8px 16px rgba(229,0,126,0.2);
}

@media (max-width:767px){
  .streaming-grid{
    gap:var(--space-3);
}
  .streaming-icon{
    padding:var(--space-3);
}
}

@media (max-width:480px){
  .streaming-icon{
    padding:var(--space-2);
}
}


.cta-section{
  padding:clamp(var(--space-16),10vw,var(--space-24)) 0;
  background:var(--color-bg);
  position:relative;
  overflow:hidden;
}
.cta-section::before{
  content:'';
  position:absolute;
  top:0;left:50%;transform:translateX(-50%);
  width:80%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--color-magenta),transparent);
  opacity:0.4;
}
.cta-headline{
  font-family:var(--font-display);
  font-weight:900;
  text-transform:uppercase;
  line-height:0.95;
  letter-spacing:-0.01em;
  font-size:var(--text-3xl);
  color:#fff;
  margin-bottom:var(--space-4);
}
.cta-headline .underline-magenta{
  text-decoration:underline;
  text-decoration-color:var(--color-magenta);
  text-underline-offset:4px;
}
.cta-headline .accent{ color:var(--color-magenta);}
.cta-sub{
  font-size:var(--text-base);
  color:var(--color-text-muted);
  margin-bottom:var(--space-10);
}
.cta-sub a{
  color:var(--color-magenta);
  text-decoration:underline;
  text-underline-offset:3px;
  transition:color var(--transition);
}
.cta-sub a:hover{ color:var(--color-magenta-hover);}

@media (max-width:767px){
  .cta-section{
    padding:clamp(var(--space-12),8vw,var(--space-16)) 0;
}
  .cta-headline{
    font-size:var(--text-2xl);
    margin-bottom:var(--space-3);
}
  .cta-sub{
    font-size:var(--text-sm);
    margin-bottom:var(--space-6);
}
}


.team-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-6);
  margin-bottom:var(--space-12);
}
.team-card{
  background:var(--color-surface);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  overflow:hidden;
  transition:border-color var(--transition),box-shadow var(--transition);
}
.team-card:hover{
  border-color:rgba(229,0,126,0.3);
  box-shadow:0 8px 32px rgba(229,0,126,0.08);
}
.team-photo{
  aspect-ratio:4/3;
  background:var(--color-surface-2);
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom:1px solid var(--color-border);
  font-size:var(--text-sm);
  color:var(--color-text-faint);
  font-style:italic;
  position:relative;
  overflow:hidden;
}
.team-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top;
}
.team-photo--logo img{
  object-fit:contain;
  object-position:center;
  padding:var(--space-6);
}
.team-photo-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:var(--space-3);
}
.team-photo-icon{
  width:64px;
  height:64px;
  border-radius:50%;
  background:rgba(229,0,126,0.1);
  border:2px solid rgba(229,0,126,0.2);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--color-magenta);
}
.team-info{
  padding:var(--space-5) var(--space-6);
  text-align:center;
}
.team-name{
  font-family:var(--font-display);
  font-size:var(--text-xl);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.02em;
  color:#fff;
  margin-bottom:var(--space-2);
}
.team-company{
  font-size:var(--text-xs);
  color:var(--color-text-faint);
  margin-bottom:var(--space-1);
}
.team-role{
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin-bottom:var(--space-4);
}
.btn-linkedin{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  background:rgba(0,126,187,0.08);
  color:#007EBB;
  font-size:var(--text-sm);
  font-weight:600;
  padding:var(--space-2) var(--space-4);
  border-radius:var(--radius-sm);
  border:1px solid rgba(0,126,187,0.25);
  transition:background var(--transition),border-color var(--transition),transform var(--transition);
}
.btn-linkedin:hover{
  background:rgba(0,126,187,0.16);
  border-color:rgba(0,126,187,0.5);
  transform:translateY(-1px);
}
.btn-linkedin img{ flex-shrink:0;border-radius:3px;}

@media (max-width:600px){
  .team-grid{ grid-template-columns:1fr;}
  .team-card{
    border-radius:var(--radius-md);
}
  .team-photo{
    aspect-ratio:16 / 9;
}
  .team-name{
    font-size:var(--text-lg);
}
}

@media (max-width:480px){
  .team-info{
    padding:var(--space-4);
}
  .btn-linkedin{
    justify-content:center;
}
}


.why-section{
  padding:clamp(var(--space-12),8vw,var(--space-20)) 0;
  background:var(--color-surface);
}
.why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--space-6);
  margin-top:var(--space-10);
}
.why-card{
  background:var(--color-bg);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  padding:var(--space-6);
  position:relative;
}
.why-card::before{
  content:'';
  position:absolute;
  top:0;left:var(--space-6);right:var(--space-6);
  height:2px;
  background:var(--color-magenta);
  opacity:0;
  transition:opacity var(--transition);
}
.why-card:hover::before{ opacity:1;}
.why-number{
  font-family:var(--font-display);
  font-size:var(--text-3xl);
  font-weight:900;
  color:var(--color-magenta);
  opacity:0.5;
  line-height:1;
  margin-bottom:var(--space-4);
}
.why-title{
  font-family:var(--font-display);
  font-size:var(--text-lg);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.03em;
  color:#fff;
  margin-bottom:var(--space-3);
}
.why-text{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  line-height:1.7;
}

@media (max-width:767px){
  .why-grid{ grid-template-columns:1fr;}
  .why-section{
    padding:clamp(var(--space-8),8vw,var(--space-16)) 0;
}
  .why-grid{
    gap:var(--space-4);
    margin-top:var(--space-6);
}
  .why-card{
    padding:var(--space-4);
}
  .why-title{
    font-size:var(--text-base);
}
  .why-text{
    font-size:var(--text-xs);
}
}


.contact-section{
  padding:clamp(var(--space-12),8vw,var(--space-24)) 0;
  background:var(--color-bg);
  position:relative;
  overflow:hidden;
}
.contact-section::after{
  content:'';
  position:absolute;
  bottom:0;left:50%;transform:translateX(-50%);
  width:80%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--color-magenta),transparent);
  opacity:0.2;
}
.contact-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-16);
  align-items:start;
}
.contact-copy .section-title{ margin-bottom:var(--space-4);}
.contact-copy p{
  color:var(--color-text-muted);
  margin-bottom:var(--space-6);
  line-height:1.7;
}
.contact-copy .email-link{
  font-family:var(--font-display);
  font-size:var(--text-lg);
  font-weight:700;
  color:var(--color-magenta);
  letter-spacing:0.02em;
  transition:color var(--transition);
}
.contact-copy .email-link:hover{ color:var(--color-magenta-hover);}

.contact-form{
  background:var(--color-surface);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  padding:var(--space-8);
}
.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-4);
  margin-bottom:var(--space-4);
}
.form-row.full{ grid-template-columns:1fr;}
.form-group{ display:flex;flex-direction:column;gap:var(--space-2);}
.form-group label{
  font-size:var(--text-xs);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:var(--color-text-muted);
}
.form-control{
  background:var(--color-bg);
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-3) var(--space-4);
  color:var(--color-text);
  font-family:var(--font-body);
  font-size:var(--text-sm);
  transition:border-color var(--transition);
}
.form-control::placeholder{ color:var(--color-text-faint);}
.form-control:focus{
  outline:none;
  border-color:var(--color-magenta);
  box-shadow:0 0 0 3px rgba(229,0,126,0.1);
}
textarea.form-control{ resize:vertical;min-height:100px;}

.checkbox-label{
  display:flex;
  align-items:flex-start;
  gap:var(--space-3);
  cursor:pointer;
}
.checkbox-label input[type="checkbox"]{
  position:absolute;
  opacity:0;
  width:0;
  height:0;
}
.checkbox-custom{
  flex-shrink:0;
  width:18px;
  height:18px;
  margin-top:2px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  background:var(--color-bg);
  transition:border-color var(--transition),background var(--transition);
  display:flex;
  align-items:center;
  justify-content:center;
}
.checkbox-label input[type="checkbox"]:checked + .checkbox-custom{
  background:var(--color-magenta);
  border-color:var(--color-magenta);
}
.checkbox-label input[type="checkbox"]:checked + .checkbox-custom::after{
  content:'';
  display:block;
  width:10px;
  height:6px;
  border-left:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(-45deg) translateY(-1px);
}
.checkbox-label input[type="checkbox"]:focus-visible + .checkbox-custom{
  outline:2px solid var(--color-magenta);
  outline-offset:3px;
}
.checkbox-text{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  line-height:1.5;
}
.checkbox-text a{
  color:var(--color-magenta);
  text-decoration:underline;
  text-underline-offset:3px;
  transition:color var(--transition);
}
.checkbox-text a:hover{ color:var(--color-magenta-hover);}

.form-footer{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:var(--space-4);
  margin-top:var(--space-6);
}
.btn-submit{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  background:var(--color-magenta);
  color:#fff;
  font-family:var(--font-display);
  font-size:var(--text-base);
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
  padding:var(--space-3) var(--space-8);
  border-radius:var(--radius-sm);
  transition:background var(--transition),transform var(--transition),box-shadow var(--transition);
}
.btn-submit:hover{
  background:var(--color-magenta-hover);
  transform:translateY(-1px);
  box-shadow:0 8px 24px rgba(229,0,126,0.3);
}
.btn-submit:active{ transform:translateY(0);}


.form-message{
  padding:var(--space-4) var(--space-6);
  border-radius:var(--radius-md);
  margin-bottom:var(--space-6);
  display:none;
  animation:slideDown 0.3s ease-out;
  line-height:1.6;
}
.form-message.show{ display:block;}
.form-message.success{
  background:rgba(34,197,94,0.1);
  border:1px solid rgba(34,197,94,0.3);
  color:#22c55e;
}
.form-message.error{
  background:rgba(239,68,68,0.1);
  border:1px solid rgba(239,68,68,0.3);
  color:#ef4444;
}
@keyframes slideDown{
  from{ opacity:0;transform:translateY(-10px);}
  to{ opacity:1;transform:translateY(0);}
}

@media (max-width:767px){
  .contact-inner{ grid-template-columns:1fr;gap:var(--space-8);}
  .form-row{ grid-template-columns:1fr;}
  .contact-section{
    padding:clamp(var(--space-8),8vw,var(--space-16)) 0;
}
}

@media (max-width:480px){
  .form-message{
    padding:var(--space-3) var(--space-4);
    font-size:var(--text-sm);
    margin-bottom:var(--space-4);
}
  .contact-form{
    padding:var(--space-6);
}
  .form-control{
    padding:var(--space-2) var(--space-3);
    font-size:16px;
}
  textarea.form-control{
    min-height:80px;
}
  .btn-submit{
    width:100%;
    justify-content:center;
    padding:var(--space-3) var(--space-6);
    font-size:var(--text-base);
}
}


.site-footer{
  background:var(--color-surface);
  border-top:1px solid var(--color-border);
  padding:var(--space-6) 0;
}
.footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  flex-wrap:wrap;
}
.footer-copy{
  font-size:var(--text-xs);
  color:var(--color-text-muted);
}
.footer-links{
  display:flex;
  align-items:center;
  gap:var(--space-6);
  flex-wrap:wrap;
}
.footer-link{
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  transition:color var(--transition);
}
.footer-link:hover{ color:var(--color-text);}
.footer-email{
  font-size:var(--text-xs);
  color:#ff80bf;
  transition:color var(--transition);
}
.footer-email:hover{ color:#fff;}

@media (max-width:480px){
  .site-footer{
    padding:var(--space-4) 0;
  }
  .footer-inner{
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:var(--space-3);
  }
  .footer-links{
    justify-content:center;
    gap:var(--space-5);
  }
  .footer-link,
  .footer-email{
    min-height:44px;
    display:inline-flex;
    align-items:center;
  }
}


.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity 0.6s cubic-bezier(0.16,1,0.3,1),transform 0.6s cubic-bezier(0.16,1,0.3,1);
}
.reveal.visible{ opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1;transform:none;transition:none;}
}
