
*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#000;--text:#f4f1ec;--muted:rgba(255,255,255,.72);--soft:rgba(255,255,255,.48);--line:rgba(255,255,255,.055);--gold:#c8a96b}
html{scroll-behavior:smooth}
body{background:#000;color:var(--text);font-family:"Helvetica Neue",Arial,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a,a:visited,a:hover,a:active{color:inherit;text-decoration:none}
.site-header{position:fixed;top:0;left:0;width:100%;padding:2.1rem 5vw;display:flex;justify-content:space-between;align-items:center;z-index:1000;background:linear-gradient(to bottom,rgba(0,0,0,.82),rgba(0,0,0,.12),rgba(0,0,0,0));border-bottom:1px solid rgba(255,255,255,.045)}
.logo-wrap{display:block;color:var(--text)}
.logo-title{font-size:1.08rem;font-weight:650;letter-spacing:.34em;line-height:1;text-transform:uppercase;color:var(--text)}
.logo-sub{margin-top:.42rem;color:var(--gold);font-size:.66rem;letter-spacing:.26em;line-height:1;text-transform:none}
.main-nav{display:flex;gap:3rem;align-items:center}
.main-nav a{color:rgba(255,255,255,.72);font-size:.76rem;font-weight:400;letter-spacing:.17em;text-transform:uppercase}
.main-nav a:hover{color:#fff}
.hero-section,.page-hero,.circle-hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:130px;background-image:linear-gradient(to right,rgba(0,0,0,.92) 6%,rgba(0,0,0,.62) 42%,rgba(0,0,0,.86) 100%),url('images/hero/HERO_MASTER_FINAL_V01.jpeg');background-size:cover;background-position:center center;background-repeat:no-repeat}
.hero-content,.page-content,.circle-content{position:relative;z-index:2;padding-left:5vw;max-width:760px}
.hero-label,.section-label,.eyebrow{color:var(--gold);letter-spacing:.42em;font-size:.72rem;font-weight:500;text-transform:uppercase;margin-bottom:2rem}
.hero-title,h1{font-size:clamp(4.2rem,5.8vw,6.4rem);line-height:.98;letter-spacing:-.045em;font-weight:520;max-width:900px;color:var(--text)}
.hero-title{margin-bottom:2.5rem}.page-title,.circle-title{margin-bottom:2.1rem}
.hero-text,p,.lead{font-size:1.02rem;line-height:1.95;font-weight:300;color:var(--muted)}
.hero-text,.page-text,.circle-text{max-width:680px;margin-bottom:3rem}
.hero-buttons,.actions,.button-row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.hero-button-primary,.hero-button-secondary,.btn-primary,.btn-secondary,.btn-gold,.btn-ghost,button,input[type="submit"]{display:inline-flex;align-items:center;justify-content:center;min-height:3.15rem;padding:1rem 1.85rem;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;border-radius:0;font-weight:650;line-height:1;text-decoration:none;cursor:pointer}
.hero-button-primary,.btn-primary,.btn-gold,button,input[type="submit"]{background:var(--gold);color:#000;border:1px solid var(--gold)}
.hero-button-secondary,.btn-secondary,.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.16)}
.world-grid,.cards,.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;padding:6rem 5vw 9rem;background:#000}
.world-card,.card{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.008));border:1px solid var(--line);padding:2.6rem;min-height:220px}
.world-card h3,.card h3,h3{font-size:1.45rem;line-height:1.25;font-weight:520;margin-bottom:1.3rem;color:var(--text)}
.page-block{padding:6rem 5vw 9rem;background:#000}.page-block.two{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.muted{color:var(--muted)}.quote{font-size:clamp(2rem,3.2vw,4rem);line-height:1.05;letter-spacing:-.045em;color:var(--text)}
.form-wrap{padding:0 5vw 9rem;background:#000}.form-panel{max-width:780px;background:rgba(255,255,255,.02);border:1px solid var(--line);padding:2.6rem}.form-panel form{display:grid;gap:1rem}input,select,textarea{width:100%;background:#050505;color:#fff;border:1px solid rgba(255,255,255,.12);padding:1rem;font-size:.9rem}textarea{min-height:150px}button{width:max-content}
.site-footer{position:fixed;bottom:0;left:0;width:100%;padding:2rem 5vw;display:flex;justify-content:space-between;color:rgba(255,255,255,.32);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;z-index:20;pointer-events:none}
.circle-hero{background-image:linear-gradient(to right,rgba(0,0,0,.94) 8%,rgba(0,0,0,.72) 44%,rgba(0,0,0,.90) 100%),url('images/hero/HERO_MASTER_FINAL_V01.jpeg')}.circle-content{max-width:820px}.circle-title{max-width:960px}.circle-text{max-width:760px}.circle-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:7vw;background:rgba(0,0,0,.82);opacity:0;pointer-events:none;transform:translateY(16px);transition:opacity .45s ease,transform .45s ease}.circle-overlay:target{opacity:1;pointer-events:auto;transform:translateY(0)}.circle-panel{width:min(660px,100%);padding:3rem;background:rgba(5,5,5,.92);border:1px solid rgba(200,169,107,.35);box-shadow:0 40px 120px rgba(0,0,0,.72)}.circle-panel h2{font-size:clamp(2.8rem,4.8vw,4.6rem);line-height:.98;letter-spacing:-.045em;margin:1.5rem 0}.circle-panel p{margin-bottom:2rem}.circle-panel form{display:grid;gap:1rem}.circle-panel button{width:100%}.circle-close{position:absolute;top:2rem;right:2rem;color:rgba(255,255,255,.72);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase}
@media(max-width:900px){.site-header{position:relative;align-items:flex-start;gap:2rem;flex-direction:column;background:#000}.main-nav{gap:1.2rem;flex-wrap:wrap}.hero-section,.page-hero,.circle-hero{min-height:auto;padding:7rem 0 5rem}.hero-title,h1{font-size:clamp(3rem,12vw,4.6rem)}.world-grid,.cards,.grid,.page-block.two{grid-template-columns:1fr;padding:4rem 5vw 8rem}.site-footer{position:relative}.circle-panel{padding:2rem}.circle-close{position:static;display:inline-block;margin-bottom:2rem}}

/* =========================================================
   UNVEILED V03 — GLOBAL STAGE ALIGNMENT LOCK
   Ziel: alle Seiten nutzen dieselbe Bühne, Höhe, Header-Position,
   Bildwelt und Content-Baseline wie die Startseite.
   ========================================================= */

.site-header{
  height:108px !important;
  padding:0 5vw !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  background:linear-gradient(to bottom,rgba(0,0,0,.88),rgba(0,0,0,.38),rgba(0,0,0,0)) !important;
  border-bottom:1px solid rgba(255,255,255,.045) !important;
}

.logo-wrap{
  display:block !important;
  min-width:240px !important;
}

.logo-title{
  display:block !important;
  font-size:1.08rem !important;
  font-weight:650 !important;
  letter-spacing:.34em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

.logo-sub{
  display:block !important;
  margin-top:.42rem !important;
  color:var(--gold) !important;
  font-size:.66rem !important;
  letter-spacing:.26em !important;
  line-height:1 !important;
}

.main-nav{
  display:flex !important;
  gap:3rem !important;
  align-items:center !important;
  justify-content:flex-end !important;
}

.main-nav a,
.main-nav a:visited{
  color:rgba(255,255,255,.72) !important;
  text-decoration:none !important;
}

.hero-section,
.page-hero,
.circle-hero{
  position:relative !important;
  height:100svh !important;
  min-height:760px !important;
  display:block !important;
  padding:0 !important;
  overflow:hidden !important;
  background-image:linear-gradient(to right,rgba(0,0,0,.92) 6%,rgba(0,0,0,.62) 42%,rgba(0,0,0,.86) 100%),url('images/hero/HERO_MASTER_FINAL_V01.jpeg') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

.hero-content,
.page-content,
.circle-content{
  position:absolute !important;
  z-index:2 !important;
  left:5vw !important;
  top:50% !important;
  transform:translateY(-43%) !important;
  padding-left:0 !important;
  max-width:760px !important;
}

.hero-label,
.section-label,
.eyebrow{
  margin-bottom:2rem !important;
}

.hero-title,
.page-title,
.circle-title,
h1{
  margin-top:0 !important;
  margin-bottom:2.1rem !important;
}

.hero-text,
.page-text,
.circle-text{
  margin-bottom:3rem !important;
}

.form-wrap{
  padding:5.5rem 5vw 9rem !important;
  background:#000 !important;
}

.form-panel{
  max-width:780px !important;
  margin-left:0 !important;
}

.circle-overlay{
  align-items:center !important;
}

.circle-panel{
  transform:translateY(0) !important;
}

.site-footer{
  height:72px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:0 5vw !important;
}

@media(max-width:900px){
  .site-header{
    height:auto !important;
    min-height:108px !important;
    padding:2rem 5vw !important;
  }
  .hero-section,
  .page-hero,
  .circle-hero{
    height:auto !important;
    min-height:calc(100svh - 0px) !important;
    padding:8rem 0 6rem !important;
  }
  .hero-content,
  .page-content,
  .circle-content{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    padding-left:5vw !important;
    padding-right:5vw !important;
  }
}


/* =========================================================
   TYPOGRAPHY TUNE V01
   Ziel: elegantere Größen, weniger Billboard-Effekt
   ========================================================= */

:root{
  --hero-h1-size: clamp(58px, 5.8vw, 82px);
  --page-h1-size: clamp(54px, 5.2vw, 76px);
  --circle-h1-size: clamp(56px, 5.4vw, 78px);
  --body-lead-size: clamp(18px, 1.5vw, 22px);
  --body-copy-size: 17px;
  --nav-size: 12px;
  --button-size: 12px;
}

/* Global fine-tuning */
body{
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.logo-title{
  font-size: 14px !important;
  letter-spacing: .34em !important;
}

.logo-sub{
  font-size: 11px !important;
  letter-spacing: .18em !important;
}

.main-nav a{
  font-size: var(--nav-size) !important;
  letter-spacing: .18em !important;
}

/* Startseite */
.hero-section{
  min-height: 100vh !important;
}

.hero-content{
  max-width: 760px !important;
}

.hero-content h1{
  font-size: var(--hero-h1-size) !important;
  line-height: .93 !important;
  letter-spacing: -.045em !important;
  max-width: 720px !important;
  margin: 18px 0 26px !important;
}

.hero-content p,
.hero-copy p,
.page-hero p,
.circle-hero p{
  font-size: var(--body-lead-size) !important;
  line-height: 1.65 !important;
  max-width: 760px !important;
  color: rgba(244,241,234,.78) !important;
}

/* Unterseiten */
.page-hero,
.subpage-hero{
  min-height: 100vh !important;
}

.page-hero .hero-content,
.subpage-hero .hero-content,
.subpage-hero .hero-inner{
  max-width: 860px !important;
}

.page-hero h1,
.subpage-hero h1{
  font-size: var(--page-h1-size) !important;
  line-height: .96 !important;
  letter-spacing: -.04em !important;
  max-width: 880px !important;
  margin: 18px 0 24px !important;
}

/* Circle */
.circle-hero{
  min-height: 100vh !important;
}

.circle-copy{
  max-width: 760px !important;
}

.circle-copy h1{
  font-size: var(--circle-h1-size) !important;
  line-height: .95 !important;
  letter-spacing: -.042em !important;
  max-width: 760px !important;
  margin: 18px 0 24px !important;
}

.circle-login-panel h2{
  font-size: clamp(42px, 4.4vw, 64px) !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
}

/* Eyebrows / section labels */
.eyebrow,
.section-label,
.kicker{
  font-size: 12px !important;
  letter-spacing: .28em !important;
}

/* Copy / forms */
p,
li,
input,
textarea,
select,
button{
  font-size: var(--body-copy-size) !important;
}

input,
textarea,
select{
  line-height: 1.4 !important;
}

.button-row,
.hero-buttons,
.buttons{
  gap: 14px !important;
  margin-top: 30px !important;
}

.btn-gold,
.btn-ghost,
.hero-button-primary,
.hero-button-secondary,
.btn{
  font-size: var(--button-size) !important;
  letter-spacing: .16em !important;
  padding: 15px 26px !important;
  min-height: 50px !important;
}

/* Footer */
.site-footer{
  font-size: 12px !important;
  letter-spacing: .14em !important;
}

/* Responsive */
@media (max-width: 1200px){
  :root{
    --hero-h1-size: clamp(54px, 6vw, 74px);
    --page-h1-size: clamp(48px, 5.6vw, 68px);
    --circle-h1-size: clamp(50px, 5.8vw, 70px);
  }
}

@media (max-width: 820px){
  :root{
    --hero-h1-size: clamp(42px, 10vw, 58px);
    --page-h1-size: clamp(40px, 9vw, 54px);
    --circle-h1-size: clamp(42px, 9.4vw, 56px);
    --body-lead-size: 17px;
    --body-copy-size: 16px;
  }

  .hero-content h1,
  .page-hero h1,
  .subpage-hero h1,
  .circle-copy h1{
    max-width: 100% !important;
  }
}


/* =========================================================
   UNVEILED FINAL EDITORIAL POLISH V01
   Ziel: High-End Editorial, weniger Billboard, mehr Kontrolle.
   Nur CSS. Kein Strukturwechsel.
   ========================================================= */

:root{
  --uv-bg: #030303;
  --uv-text: #f2eee8;
  --uv-muted: rgba(242,238,232,.64);
  --uv-soft: rgba(242,238,232,.48);
  --uv-line: rgba(255,255,255,.075);
  --uv-gold: #c9a45a;

  --uv-header-h: 112px;
  --uv-stage-pad-x: clamp(64px, 5.1vw, 112px);
  --uv-stage-pad-top: clamp(168px, 18vh, 210px);
  --uv-stage-pad-bottom: clamp(72px, 9vh, 110px);

  --uv-h1-home: clamp(56px, 5.15vw, 78px);
  --uv-h1-page: clamp(54px, 4.85vw, 74px);
  --uv-h1-circle: clamp(54px, 4.95vw, 76px);

  --uv-lead: clamp(17px, 1.22vw, 20px);
  --uv-copy: 16px;
  --uv-nav: 11px;
  --uv-eyebrow: 11px;
}

/* Gesamtbild */
html,
body{
  background: var(--uv-bg) !important;
}

body{
  color: var(--uv-text) !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}

/* Header: weniger technisch, mehr Editorial */
.site-header{
  height: var(--uv-header-h) !important;
  padding: 0 var(--uv-stage-pad-x) !important;
  background: rgba(0,0,0,.72) !important;
  border-bottom: 1px solid var(--uv-line) !important;
}

.logo-wrap,
.brand{
  transform: translateY(-1px) !important;
}

.logo-title,
.brand strong{
  color: var(--uv-text) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .38em !important;
  line-height: 1 !important;
}

.logo-sub,
.brand span{
  margin-top: 8px !important;
  color: var(--uv-gold) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .22em !important;
  line-height: 1 !important;
}

.main-nav,
.site-header nav{
  gap: clamp(30px, 3vw, 48px) !important;
}

.main-nav a,
.site-header nav a{
  color: rgba(242,238,232,.68) !important;
  font-size: var(--uv-nav) !important;
  font-weight: 500 !important;
  letter-spacing: .20em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.main-nav a:hover,
.site-header nav a:hover{
  color: var(--uv-text) !important;
}

/* Gemeinsame Bühne */
.hero-section,
.page-hero,
.subpage-hero,
.circle-hero{
  min-height: calc(100vh - 0px) !important;
  padding-left: var(--uv-stage-pad-x) !important;
  padding-right: var(--uv-stage-pad-x) !important;
  padding-top: var(--uv-stage-pad-top) !important;
  padding-bottom: var(--uv-stage-pad-bottom) !important;
  display: flex !important;
  align-items: center !important;
}

/* Bild ruhiger, mehr Tiefe */
.hero-section,
.page-hero,
.subpage-hero,
.circle-hero{
  background-position: center center !important;
}

.hero-section::before,
.page-hero::before,
.subpage-hero::before,
.circle-hero::before{
  opacity: .92 !important;
}

/* Content-Block: kontrollierte Breite */
.hero-content,
.hero-copy,
.page-hero .hero-content,
.subpage-hero .hero-content,
.subpage-hero .hero-inner,
.circle-copy{
  max-width: 690px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Eyebrow */
.eyebrow,
.section-label,
.kicker{
  color: var(--uv-gold) !important;
  font-size: var(--uv-eyebrow) !important;
  font-weight: 700 !important;
  letter-spacing: .42em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  margin-bottom: 28px !important;
}

/* Headline: kleiner, edler, nicht billboard */
.hero-content h1,
.hero-copy h1{
  font-size: var(--uv-h1-home) !important;
  line-height: .965 !important;
  letter-spacing: -.048em !important;
  font-weight: 800 !important;
  max-width: 650px !important;
  margin: 0 0 30px !important;
}

.page-hero h1,
.subpage-hero h1{
  font-size: var(--uv-h1-page) !important;
  line-height: .975 !important;
  letter-spacing: -.044em !important;
  font-weight: 800 !important;
  max-width: 760px !important;
  margin: 0 0 30px !important;
}

.circle-copy h1{
  font-size: var(--uv-h1-circle) !important;
  line-height: .965 !important;
  letter-spacing: -.046em !important;
  font-weight: 800 !important;
  max-width: 720px !important;
  margin: 0 0 30px !important;
}

/* Text: enger, ruhiger, hochwertiger */
.hero-content p,
.hero-copy p,
.page-hero p,
.subpage-hero p,
.circle-copy p{
  max-width: 635px !important;
  color: var(--uv-muted) !important;
  font-size: var(--uv-lead) !important;
  line-height: 1.72 !important;
  font-weight: 400 !important;
  letter-spacing: -.012em !important;
  margin: 0 !important;
}

/* Buttons: weniger Shop, mehr Einladung */
.button-row,
.hero-buttons,
.buttons,
.circle-buttons{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-top: 38px !important;
  flex-wrap: wrap !important;
}

.btn-gold,
.hero-button-primary,
.btn.gold{
  min-width: 210px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg,#d1b06a,#bd9343) !important;
  border: 1px solid rgba(209,176,106,.85) !important;
  color: #080808 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.btn-ghost,
.hero-button-secondary,
.btn.ghost{
  min-width: 230px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 0 !important;
  background: rgba(0,0,0,.14) !important;
  border: 1px solid rgba(242,238,232,.17) !important;
  color: rgba(242,238,232,.88) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.btn-gold:hover,
.hero-button-primary:hover,
.btn.gold:hover{
  filter: brightness(1.06) !important;
}

.btn-ghost:hover,
.hero-button-secondary:hover,
.btn.ghost:hover{
  border-color: rgba(242,238,232,.36) !important;
  color: var(--uv-text) !important;
}

/* Footer: feiner und fester */
.site-footer{
  min-height: 64px !important;
  padding: 0 var(--uv-stage-pad-x) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  color: rgba(242,238,232,.30) !important;
  font-size: 10px !important;
  letter-spacing: .16em !important;
  border-top: 1px solid rgba(255,255,255,.04) !important;
}

/* Forms auf Access/Contact: nicht zu laut */
.form-panel,
.access-form,
.contact-form,
.circle-login-panel{
  background: rgba(5,5,5,.72) !important;
  border: 1px solid rgba(201,164,90,.22) !important;
  box-shadow: 0 28px 90px rgba(0,0,0,.42) !important;
}

input,
textarea,
select{
  background: rgba(0,0,0,.42) !important;
  border: 1px solid rgba(242,238,232,.13) !important;
  color: var(--uv-text) !important;
  font-size: 15px !important;
}

input::placeholder,
textarea::placeholder{
  color: rgba(242,238,232,.46) !important;
}

/* Circle Login */
.circle-login-panel h2{
  font-size: clamp(42px, 4vw, 58px) !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
  max-width: 560px !important;
}

/* Große Screens: nicht zu fett skalieren */
@media (min-width: 1600px){
  :root{
    --uv-h1-home: 76px;
    --uv-h1-page: 72px;
    --uv-h1-circle: 74px;
    --uv-lead: 19px;
    --uv-stage-pad-x: 92px;
  }
}

/* Laptop */
@media (max-width: 1250px){
  :root{
    --uv-h1-home: clamp(50px, 5.6vw, 68px);
    --uv-h1-page: clamp(48px, 5.4vw, 66px);
    --uv-h1-circle: clamp(48px, 5.5vw, 68px);
    --uv-stage-pad-x: clamp(42px, 5vw, 72px);
  }
}

/* Mobile */
@media (max-width: 820px){
  :root{
    --uv-header-h: auto;
    --uv-stage-pad-x: 26px;
    --uv-stage-pad-top: 96px;
    --uv-stage-pad-bottom: 70px;
    --uv-h1-home: clamp(40px, 11vw, 54px);
    --uv-h1-page: clamp(38px, 10vw, 52px);
    --uv-h1-circle: clamp(38px, 10vw, 52px);
    --uv-lead: 16px;
  }

  .site-header{
    position: relative !important;
    height: auto !important;
    padding: 24px 26px !important;
    align-items: flex-start !important;
  }

  .main-nav,
  .site-header nav{
    gap: 16px !important;
    flex-wrap: wrap !important;
    margin-top: 20px !important;
  }

  .hero-section,
  .page-hero,
  .subpage-hero,
  .circle-hero{
    min-height: auto !important;
  }

  .btn-gold,
  .hero-button-primary,
  .btn.gold,
  .btn-ghost,
  .hero-button-secondary,
  .btn.ghost{
    width: 100% !important;
    min-width: 0 !important;
  }

  .site-footer{
    min-height: auto !important;
    padding: 26px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
}


/* =========================================================
   FINAL CIRCLE TYPOGRAPHY LOCK V01
   Muss ganz am Ende stehen.
   Ziel: Circle exakt in den finalen Editorial-Maßstab ziehen.
   ========================================================= */

body.circle-page .circle-hero{
  min-height: calc(100vh - 0px) !important;
  padding-left: clamp(64px, 5.1vw, 112px) !important;
  padding-right: clamp(64px, 5.1vw, 112px) !important;
  padding-top: clamp(168px, 18vh, 210px) !important;
  padding-bottom: clamp(72px, 9vh, 110px) !important;
  display: flex !important;
  align-items: center !important;
}

body.circle-page .circle-copy{
  max-width: 690px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

body.circle-page .circle-copy .eyebrow,
body.circle-page .eyebrow{
  color: #c9a45a !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .42em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  margin-bottom: 28px !important;
}

body.circle-page .circle-copy h1{
  font-size: clamp(48px, 4.65vw, 68px) !important;
  line-height: .975 !important;
  letter-spacing: -.044em !important;
  font-weight: 800 !important;
  max-width: 680px !important;
  margin: 0 0 30px !important;
}

body.circle-page .circle-copy p{
  max-width: 620px !important;
  color: rgba(242,238,232,.64) !important;
  font-size: clamp(17px, 1.18vw, 19px) !important;
  line-height: 1.72 !important;
  font-weight: 400 !important;
  letter-spacing: -.012em !important;
  margin: 0 !important;
}

body.circle-page .circle-buttons,
body.circle-page .buttons{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-top: 38px !important;
  flex-wrap: wrap !important;
}

body.circle-page .btn.gold,
body.circle-page .btn-gold{
  min-width: 210px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg,#d1b06a,#bd9343) !important;
  border: 1px solid rgba(209,176,106,.85) !important;
  color: #080808 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

body.circle-page .btn.ghost,
body.circle-page .btn-ghost{
  min-width: 210px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 0 !important;
  background: rgba(0,0,0,.14) !important;
  border: 1px solid rgba(242,238,232,.17) !important;
  color: rgba(242,238,232,.88) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

body.circle-page .circle-login-section{
  min-height: 100vh !important;
  padding-left: clamp(64px, 5.1vw, 112px) !important;
  padding-right: clamp(64px, 5.1vw, 112px) !important;
  padding-top: clamp(150px, 16vh, 190px) !important;
  padding-bottom: clamp(72px, 9vh, 110px) !important;
}

body.circle-page .circle-login-panel{
  width: min(560px, 100%) !important;
  padding: 34px !important;
  border-radius: 0 !important;
}

body.circle-page .circle-login-panel h2{
  font-size: clamp(38px, 3.7vw, 54px) !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
  max-width: 520px !important;
  margin: 18px 0 !important;
}

body.circle-page .circle-login-panel p{
  max-width: 500px !important;
  font-size: 16px !important;
  line-height: 1.68 !important;
  color: rgba(242,238,232,.64) !important;
}

@media (min-width: 1600px){
  body.circle-page .circle-copy h1{
    font-size: 68px !important;
  }

  body.circle-page .circle-copy p{
    font-size: 18px !important;
  }
}

@media (max-width: 1250px){
  body.circle-page .circle-copy h1{
    font-size: clamp(46px, 5.2vw, 62px) !important;
  }
}

@media (max-width: 820px){
  body.circle-page .circle-hero,
  body.circle-page .circle-login-section{
    padding-left: 26px !important;
    padding-right: 26px !important;
    padding-top: 96px !important;
    padding-bottom: 70px !important;
  }

  body.circle-page .circle-copy h1{
    font-size: clamp(38px, 10vw, 52px) !important;
    max-width: 100% !important;
  }

  body.circle-page .circle-copy p{
    font-size: 16px !important;
    max-width: 100% !important;
  }

  body.circle-page .btn.gold,
  body.circle-page .btn.ghost,
  body.circle-page .btn-gold,
  body.circle-page .btn-ghost{
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* =========================================================
   CIRCLE BLACK REVEAL V01
   Ziel: Circle erscheint aus komplett schwarzem Bildschirm.
   Nur Circle. Keine Änderung an Startseite/Unterseiten.
   ========================================================= */

body.circle-page{
  background:#000 !important;
}

/* Vollschwarzer Startfilm */
body.circle-page::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:9999 !important;
  background:#000 !important;
  pointer-events:none !important;
  animation: circleBlackCurtain 2.8s cubic-bezier(.77,0,.18,1) forwards !important;
}

/* Header erscheint verzögert */
body.circle-page .site-header{
  opacity:0 !important;
  transform:translateY(-10px) !important;
  animation: circleHeaderIn 1.2s ease forwards !important;
  animation-delay:1.9s !important;
}

/* Hero-Bild liegt zuerst fast völlig im Dunkeln */
body.circle-page .circle-hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.76),rgba(0,0,0,.52)),
    url('../assets/hero-public.jpg') center/cover no-repeat !important;
  animation: circleWorldReveal 3.4s cubic-bezier(.77,0,.18,1) forwards !important;
}

/* Textblock taucht später auf */
body.circle-page .circle-copy{
  opacity:0 !important;
  transform:translateY(18px) !important;
  filter:blur(6px) !important;
  animation: circleCopyIn 1.7s ease forwards !important;
  animation-delay:2.05s !important;
}

/* Footer bleibt zuerst weg */
body.circle-page .site-footer{
  opacity:0 !important;
  animation: circleFooterIn 1.2s ease forwards !important;
  animation-delay:2.7s !important;
}

/* Login-Ziel soll nicht vom schwarzen Curtain blockiert werden */
body.circle-page .circle-login-section:target{
  animation:none !important;
}

/* Animationen */
@keyframes circleBlackCurtain{
  0%{
    opacity:1;
  }
  62%{
    opacity:1;
  }
  100%{
    opacity:0;
    visibility:hidden;
  }
}

@keyframes circleHeaderIn{
  0%{
    opacity:0;
    transform:translateY(-10px);
  }
  100%{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes circleCopyIn{
  0%{
    opacity:0;
    transform:translateY(18px);
    filter:blur(6px);
  }
  100%{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
  }
}

@keyframes circleFooterIn{
  0%{
    opacity:0;
  }
  100%{
    opacity:1;
  }
}

@keyframes circleWorldReveal{
  0%{
    background:
      linear-gradient(90deg,rgba(0,0,0,1),rgba(0,0,0,.98),rgba(0,0,0,.92)),
      url('../assets/hero-public.jpg') center/cover no-repeat;
  }
  55%{
    background:
      linear-gradient(90deg,rgba(0,0,0,.98),rgba(0,0,0,.90),rgba(0,0,0,.76)),
      url('../assets/hero-public.jpg') center/cover no-repeat;
  }
  100%{
    background:
      linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.66),rgba(0,0,0,.42)),
      url('../assets/hero-public.jpg') center/cover no-repeat;
  }
}

/* Wenn Nutzer reduzierte Bewegung eingestellt hat */
@media (prefers-reduced-motion: reduce){
  body.circle-page::before{
    display:none !important;
    animation:none !important;
  }

  body.circle-page .site-header,
  body.circle-page .circle-copy,
  body.circle-page .site-footer,
  body.circle-page .circle-hero{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    animation:none !important;
  }
}


/* =========================================================
   TERMS & POLICIES V01
   Legal hub in UNVEILED visual system.
   ========================================================= */

.legal-hero .page-content{
  max-width: 760px;
}

.legal-wrap{
  background:#000;
  padding: clamp(72px, 8vw, 120px) 5vw;
  border-top:1px solid rgba(255,255,255,.055);
}

.legal-intro{
  max-width: 840px;
  margin: 0 0 clamp(48px, 6vw, 84px);
}

.legal-intro p{
  color: rgba(244,241,236,.72);
  font-size: clamp(1.02rem, 1.15vw, 1.22rem);
  line-height: 1.85;
}

.legal-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.07);
}

.legal-card{
  background: #050505;
  padding: clamp(28px, 3.2vw, 48px);
  min-height: 260px;
}

.legal-card span{
  display:block;
  color: var(--gold);
  font-size: .72rem;
  letter-spacing: .32em;
  margin-bottom: 1.6rem;
}

.legal-card h2{
  color: var(--text);
  font-size: clamp(1.45rem, 2.2vw, 2.35rem);
  line-height: 1.05;
  letter-spacing: -.035em;
  margin-bottom: 1.2rem;
}

.legal-card p{
  color: rgba(244,241,236,.66);
  font-size: .98rem;
  line-height: 1.85;
}

.legal-note{
  max-width: 840px;
  margin-top: clamp(54px, 7vw, 96px);
  padding-top: 36px;
  border-top:1px solid rgba(255,255,255,.09);
}

.legal-note h2{
  color: var(--text);
  font-size: clamp(1.7rem, 2.4vw, 2.8rem);
  line-height: 1.05;
  letter-spacing: -.035em;
  margin-bottom: 1rem;
}

.legal-note p{
  color: rgba(244,241,236,.64);
  line-height: 1.85;
}

.footer-links{
  display:flex;
  align-items:center;
  gap:1.4rem;
}

.footer-links a{
  color:rgba(244,241,236,.56);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.68rem;
}

.footer-links a:hover{
  color:var(--text);
}

.footer-links span{
  color:rgba(244,241,236,.34);
}

@media(max-width: 860px){
  .legal-grid{
    grid-template-columns:1fr;
  }

  .footer-links{
    align-items:flex-start;
    flex-direction:column;
    gap:.8rem;
  }
}


/* =========================================================
   FOOTER TERMS LINK FIX V01
   Terms-Link und Claim sauber trennen.
   ========================================================= */

.site-footer{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}

.footer-left{
  color:rgba(244,241,236,.34) !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
  font-size:10px !important;
  white-space:nowrap !important;
}

.footer-right{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  color:rgba(244,241,236,.34) !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
  font-size:10px !important;
  white-space:nowrap !important;
}

.footer-right a{
  color:rgba(244,241,236,.58) !important;
  text-decoration:none !important;
}

.footer-right a:hover{
  color:var(--text,#f4f1ec) !important;
}

.footer-separator{
  color:rgba(244,241,236,.25) !important;
}

@media(max-width: 860px){
  .site-footer{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .footer-right{
    align-items:flex-start !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    white-space:normal !important;
  }
}


/* =========================================================
   FOOTER CLICKABLE TERMS FIX V02
   Terms & Policies ist echter klickbarer Link.
   ========================================================= */

.site-footer{
  position:relative !important;
  z-index:50 !important;
  pointer-events:auto !important;
}

.site-footer *{
  pointer-events:auto !important;
}

.footer-left{
  color:rgba(244,241,236,.34) !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
  font-size:10px !important;
  white-space:nowrap !important;
}

.footer-right{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  color:rgba(244,241,236,.34) !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
  font-size:10px !important;
  white-space:nowrap !important;
  position:relative !important;
  z-index:60 !important;
}

.footer-terms-link,
.footer-terms-link:visited{
  display:inline-block !important;
  color:rgba(244,241,236,.62) !important;
  text-decoration:none !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:70 !important;
}

.footer-terms-link:hover{
  color:var(--text,#f4f1ec) !important;
}

.footer-separator{
  color:rgba(244,241,236,.25) !important;
}

.footer-claim{
  color:rgba(244,241,236,.34) !important;
}

@media(max-width: 860px){
  .site-footer{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .footer-right{
    align-items:flex-start !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    white-space:normal !important;
  }
}


/* =========================================================
   UNVEILED MASTER RASTER LOCK V01
   Ziel: Alle normalen Seiten auf ein identisches Raster setzen.
   Circle/uv06 bleibt unberührt.
   ========================================================= */

:root{
  --uv-header-height: 112px;
  --uv-x: clamp(64px, 5.2vw, 112px);
  --uv-hero-y: 52%;
  --uv-content-width: 760px;
  --uv-h1-width: 760px;
  --uv-lead-width: 700px;

  --uv-h1-size: clamp(58px, 5.05vw, 78px);
  --uv-h1-line: .94;
  --uv-h1-weight: 800;
  --uv-h1-tracking: -.048em;

  --uv-eyebrow-size: 11px;
  --uv-eyebrow-tracking: .42em;

  --uv-lead-size: clamp(18px, 1.22vw, 20px);
  --uv-lead-line: 1.72;

  --uv-nav-size: 11px;
  --uv-nav-tracking: .20em;

  --uv-button-height: 52px;
  --uv-button-min-width: 220px;
  --uv-button-font: 11px;

  --uv-gold: #c9a45a;
  --uv-text: #f2eee8;
  --uv-muted: rgba(242,238,232,.66);
  --uv-line: rgba(255,255,255,.075);
}

/* ---------- Global ---------- */

html,
body{
  background:#000 !important;
  color:var(--uv-text) !important;
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page){
  overflow-x:hidden !important;
}

/* ---------- Header Master ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:1000 !important;
  height:var(--uv-header-height) !important;
  padding:0 var(--uv-x) !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  background:rgba(0,0,0,.76) !important;
  border-bottom:1px solid var(--uv-line) !important;
  backdrop-filter:blur(10px) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .logo-wrap,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand{
  display:block !important;
  color:var(--uv-text) !important;
  text-decoration:none !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .logo-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand strong{
  display:block !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.38em !important;
  color:var(--uv-text) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .logo-sub,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand span{
  display:block !important;
  margin-top:8px !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:500 !important;
  letter-spacing:.22em !important;
  color:var(--uv-gold) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav,
body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:clamp(30px, 3vw, 48px) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav a,
body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav a{
  color:rgba(242,238,232,.68) !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:var(--uv-nav-size) !important;
  font-weight:500 !important;
  letter-spacing:var(--uv-nav-tracking) !important;
  line-height:1 !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav a:hover,
body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav a:hover{
  color:var(--uv-text) !important;
}

/* ---------- Hero Master Stage ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-section,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-hero,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero{
  position:relative !important;
  min-height:100vh !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

/* Gleiche Textposition auf allen normalen Seiten */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-copy,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero .hero-inner,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero .page-content{
  position:absolute !important;
  left:var(--uv-x) !important;
  top:var(--uv-hero-y) !important;
  transform:translateY(-50%) !important;
  width:min(var(--uv-content-width), calc(100vw - (var(--uv-x) * 2))) !important;
  max-width:var(--uv-content-width) !important;
  margin:0 !important;
  padding:0 !important;
  box-sizing:border-box !important;
}

/* ---------- Eyebrow ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .eyebrow,
body:not(.uv06):not(.circle-v05):not(.circle-page) .section-label,
body:not(.uv06):not(.circle-v05):not(.circle-page) .kicker{
  display:block !important;
  color:var(--uv-gold) !important;
  font-size:var(--uv-eyebrow-size) !important;
  font-weight:700 !important;
  letter-spacing:var(--uv-eyebrow-tracking) !important;
  text-transform:uppercase !important;
  line-height:1.2 !important;
  margin:0 0 28px 0 !important;
  padding:0 !important;
}

/* ---------- H1 Master ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero h1{
  display:block !important;
  color:var(--uv-text) !important;
  font-size:var(--uv-h1-size) !important;
  line-height:var(--uv-h1-line) !important;
  font-weight:var(--uv-h1-weight) !important;
  letter-spacing:var(--uv-h1-tracking) !important;
  max-width:var(--uv-h1-width) !important;
  margin:0 0 30px 0 !important;
  padding:0 !important;
}

/* ---------- Lead Text Master ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .lead,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero p{
  display:block !important;
  max-width:var(--uv-lead-width) !important;
  color:var(--uv-muted) !important;
  font-size:var(--uv-lead-size) !important;
  line-height:var(--uv-lead-line) !important;
  font-weight:400 !important;
  letter-spacing:-.012em !important;
  margin:0 !important;
  padding:0 !important;
}

/* ---------- Buttons Master ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-buttons,
body:not(.uv06):not(.circle-v05):not(.circle-page) .button-row,
body:not(.uv06):not(.circle-v05):not(.circle-page) .buttons{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin-top:38px !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-primary,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-gold,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn.gold{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:var(--uv-button-min-width) !important;
  min-height:var(--uv-button-height) !important;
  padding:0 26px !important;
  box-sizing:border-box !important;
  background:linear-gradient(180deg,#d1b06a,#bd9343) !important;
  border:1px solid rgba(209,176,106,.85) !important;
  color:#080808 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:var(--uv-button-font) !important;
  font-weight:800 !important;
  letter-spacing:.18em !important;
  border-radius:0 !important;
  cursor:pointer !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-secondary,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-ghost,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn.ghost{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:var(--uv-button-min-width) !important;
  min-height:var(--uv-button-height) !important;
  padding:0 26px !important;
  box-sizing:border-box !important;
  background:rgba(0,0,0,.14) !important;
  border:1px solid rgba(242,238,232,.17) !important;
  color:rgba(242,238,232,.88) !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:var(--uv-button-font) !important;
  font-weight:800 !important;
  letter-spacing:.18em !important;
  border-radius:0 !important;
  cursor:pointer !important;
}

/* ---------- Lower Content / Cards ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-grid,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:86px var(--uv-x) 112px !important;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
  background:#000 !important;
  box-sizing:border-box !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid.two{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card{
  min-height:260px !important;
  padding:42px !important;
  background:rgba(0,0,0,.36) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  box-sizing:border-box !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card h3,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card h3,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card h3{
  color:var(--uv-text) !important;
  font-size:clamp(24px, 1.9vw, 34px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:800 !important;
  margin:0 0 24px 0 !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card p{
  color:rgba(242,238,232,.62) !important;
  font-size:17px !important;
  line-height:1.8 !important;
  margin:0 !important;
}

/* ---------- Forms ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .form-panel,
body:not(.uv06):not(.circle-v05):not(.circle-page) .access-form,
body:not(.uv06):not(.circle-v05):not(.circle-page) .contact-form{
  width:min(640px, calc(100vw - (var(--uv-x) * 2))) !important;
  margin:86px 0 112px var(--uv-x) !important;
  padding:38px !important;
  background:rgba(0,0,0,.48) !important;
  border:1px solid rgba(201,164,90,.24) !important;
  box-shadow:0 28px 90px rgba(0,0,0,.35) !important;
  box-sizing:border-box !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) input,
body:not(.uv06):not(.circle-v05):not(.circle-page) textarea,
body:not(.uv06):not(.circle-v05):not(.circle-page) select{
  width:100% !important;
  min-height:50px !important;
  padding:15px 16px !important;
  box-sizing:border-box !important;
  background:rgba(0,0,0,.44) !important;
  border:1px solid rgba(242,238,232,.13) !important;
  color:var(--uv-text) !important;
  font-size:15px !important;
  line-height:1.4 !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) textarea{
  min-height:160px !important;
}

/* ---------- Statement Blocks ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .statement,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section{
  padding:110px var(--uv-x) !important;
  background:#000 !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .statement h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section h2{
  color:var(--uv-text) !important;
  font-size:clamp(42px, 4.2vw, 68px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  max-width:820px !important;
  margin:0 !important;
}

/* ---------- Footer ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .site-footer{
  min-height:66px !important;
  padding:0 var(--uv-x) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  background:#000 !important;
  border-top:1px solid rgba(255,255,255,.055) !important;
  box-sizing:border-box !important;
}

/* ---------- Responsive ---------- */

@media(max-width: 1100px){
  :root{
    --uv-h1-size: clamp(48px, 6vw, 66px);
    --uv-x: clamp(36px, 5vw, 64px);
  }
}

@media(max-width: 860px){
  :root{
    --uv-header-height:auto;
    --uv-x:26px;
    --uv-hero-y:auto;
    --uv-content-width:none;
    --uv-h1-size:clamp(38px, 10vw, 52px);
    --uv-lead-size:16px;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header{
    position:relative !important;
    height:auto !important;
    padding:24px var(--uv-x) !important;
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav{
    margin-top:22px !important;
    gap:16px !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-section,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .page-hero,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero{
    min-height:auto !important;
    padding:86px var(--uv-x) 96px !important;
    overflow:visible !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-copy,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero .hero-inner,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero .page-content{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    width:auto !important;
    max-width:none !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .world-grid,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid.two{
    grid-template-columns:1fr !important;
    padding:56px var(--uv-x) 76px !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .form-panel,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .access-form,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .contact-form{
    width:auto !important;
    margin:56px var(--uv-x) 76px !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-primary,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-secondary,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-gold,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-ghost{
    width:100% !important;
    min-width:0 !important;
  }
}


/* =========================================================
   UNVEILED VERTICAL SPACING TUNE V01
   Ziel: weniger leerer Zwischenraum, dichteres Editorial-Raster.
   Circle/uv06 bleibt unberührt.
   ========================================================= */

:root{
  --uv-hero-y: 47%;
}

/* Hero-Bühne: Inhalt etwas höher, weniger leerer Raum */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-copy,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero .hero-inner,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero .page-content{
  top: var(--uv-hero-y) !important;
}

/* Abstand zwischen Hero und Card-/Content-Bereich reduzieren */
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-grid,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid{
  padding-top: 48px !important;
  padding-bottom: 86px !important;
}

/* Formularbereiche näher an die Hero-Bühne ziehen */
body:not(.uv06):not(.circle-v05):not(.circle-page) .form-panel,
body:not(.uv06):not(.circle-v05):not(.circle-page) .access-form,
body:not(.uv06):not(.circle-v05):not(.circle-page) .contact-form{
  margin-top: 48px !important;
  margin-bottom: 86px !important;
}

/* Statement-Blöcke kompakter */
body:not(.uv06):not(.circle-v05):not(.circle-page) .statement,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section{
  padding-top: 82px !important;
  padding-bottom: 86px !important;
}

/* Legal-Seite etwas dichter */
.legal-wrap{
  padding-top: 68px !important;
  padding-bottom: 92px !important;
}

.legal-intro{
  margin-bottom: 52px !important;
}

/* Cards etwas dichter, aber weiterhin hochwertig */
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card{
  min-height: 230px !important;
  padding: 36px !important;
}

/* Responsive */
@media(max-width: 860px){
  :root{
    --uv-hero-y: auto;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .world-grid,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid.two{
    padding-top: 42px !important;
    padding-bottom: 64px !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .form-panel,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .access-form,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .contact-form{
    margin-top: 42px !important;
    margin-bottom: 64px !important;
  }
}


/* =========================================================
   FINAL HERO BALANCE TUNE V01
   Ziel: Hero präziser, ruhiger, hochwertiger.
   Circle/uv06 bleibt unberührt.
   ========================================================= */

:root{
  --uv-hero-y: 44.5%;
  --uv-h1-size: clamp(54px, 4.72vw, 72px);
  --uv-lead-width: 635px;
}

/* Hero-Text minimal kompakter und präziser */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero h1{
  max-width: 700px !important;
  margin-bottom: 26px !important;
}

/* Lead schmaler, dadurch editorialer */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .lead,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero p{
  max-width: 635px !important;
}

/* Buttons etwas näher an den Text */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-buttons,
body:not(.uv06):not(.circle-v05):not(.circle-page) .button-row,
body:not(.uv06):not(.circle-v05):not(.circle-page) .buttons{
  margin-top: 30px !important;
}

/* Bildwirkung minimal öffnen, ohne Helligkeit zu verlieren */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-section::before,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-hero::before,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero::before,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero::before{
  opacity: .88 !important;
}

@media(max-width: 1100px){
  :root{
    --uv-h1-size: clamp(46px, 5.4vw, 64px);
    --uv-hero-y: 45%;
  }
}


/* =========================================================
   LANGUAGE SWITCH V01
   Sichtbarer DE/EN-Schalter in der Navigation.
   ========================================================= */

.lang-switch,
.uv06-lang-switch{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  margin-left:6px !important;
  color:rgba(242,238,232,.42) !important;
  font-size:11px !important;
  font-weight:500 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.lang-switch a,
.lang-switch a:visited,
.uv06-lang-switch a,
.uv06-lang-switch a:visited{
  color:rgba(242,238,232,.48) !important;
  text-decoration:none !important;
  cursor:pointer !important;
}

.lang-switch a:hover,
.uv06-lang-switch a:hover{
  color:#f2eee8 !important;
}

.lang-switch a.is-active,
.uv06-lang-switch a.is-active{
  color:#c9a45a !important;
}

.lang-switch span,
.uv06-lang-switch span{
  color:rgba(242,238,232,.24) !important;
}

/* Navigation darf durch Sprachschalter nicht brechen */
.main-nav,
.site-header nav,
.uv06-nav{
  flex-wrap:nowrap !important;
}

@media(max-width: 860px){
  .lang-switch,
  .uv06-lang-switch{
    margin-left:0 !important;
    margin-top:2px !important;
  }

  .main-nav,
  .site-header nav,
  .uv06-nav{
    flex-wrap:wrap !important;
  }
}


/* =========================================================
   UNVEILED VERTICAL RASTER FIX V02
   Ziel: Hero nicht im Header, zweite Section näher und ruhiger.
   Circle/uv06 bleibt unberührt.
   ========================================================= */

:root{
  --uv-hero-y: 50%;
  --uv-h1-size: clamp(52px, 4.55vw, 70px);
  --uv-lead-width: 640px;
}

/* Normale Seiten: Hero-Content wieder sauber unter Header setzen */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-copy,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero .hero-inner,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero .page-content{
  top: var(--uv-hero-y) !important;
  transform: translateY(-50%) !important;
}

/* Hero-Headline etwas ruhiger, weniger Gefahr in Header zu laufen */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero h1{
  font-size: var(--uv-h1-size) !important;
  line-height: .96 !important;
  max-width: 720px !important;
  margin-bottom: 28px !important;
}

/* Hero-Text kompakt, aber nicht zu breit */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .lead,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero p{
  max-width: 640px !important;
}

/* Buttons sauber unter Text, nicht zu weit weg */
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-buttons,
body:not(.uv06):not(.circle-v05):not(.circle-page) .button-row,
body:not(.uv06):not(.circle-v05):not(.circle-page) .buttons{
  margin-top: 32px !important;
}

/* Zweite Ebene näher an Hero ziehen */
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-grid,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-grid{
  padding-top: 36px !important;
  padding-bottom: 82px !important;
}

/* Statement-Block deutlich ruhiger setzen */
body:not(.uv06):not(.circle-v05):not(.circle-page) .statement,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section{
  padding-top: 52px !important;
  padding-bottom: 82px !important;
}

/* Statement-Headline nicht wie zweite Hero-Headline behandeln */
body:not(.uv06):not(.circle-v05):not(.circle-page) .statement h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section h2{
  font-size: clamp(34px, 3.2vw, 52px) !important;
  line-height: 1.06 !important;
  max-width: 760px !important;
  margin-bottom: 18px !important;
}

/* Statement-Text lesbarer und kompakter */
body:not(.uv06):not(.circle-v05):not(.circle-page) .statement p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section p{
  max-width: 860px !important;
  color: rgba(242,238,232,.62) !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
  margin: 0 0 10px 0 !important;
}

/* Cards bleiben größer, aber nicht zu tief */
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card{
  min-height: 220px !important;
  padding: 34px !important;
}

@media(max-width: 1100px){
  :root{
    --uv-hero-y: 50%;
    --uv-h1-size: clamp(46px, 5.1vw, 62px);
  }
}

@media(max-width: 860px){
  :root{
    --uv-hero-y: auto;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .statement,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section{
    padding-top: 42px !important;
    padding-bottom: 64px !important;
  }

  body:not(.uv06):not(.circle-v05):not(.circle-page) .statement h2,
  body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section h2{
    font-size: clamp(30px, 8vw, 42px) !important;
  }
}


/* =========================================================
   FINAL TYPOGRAPHY CANON LOCK V01
   Verbindlicher Typografie-Kanon für UNVEILED X.
   Normale Seiten + Circle-Typografie.
   Keine Layout-Neustruktur.
   ========================================================= */

:root{
  --uv-nav-font: 11px;
  --uv-nav-tracking: .22em;
  --uv-nav-weight: 500;

  --uv-logo-main-size: 13px;
  --uv-logo-main-tracking: .38em;
  --uv-logo-main-weight: 800;

  --uv-logo-sub-size: 10px;
  --uv-logo-sub-tracking: .22em;
  --uv-logo-sub-weight: 500;

  --uv-hero-h1-size: clamp(54px, 4.55vw, 68px);
  --uv-hero-h1-line: .96;
  --uv-hero-h1-weight: 800;
  --uv-hero-h1-tracking: -.046em;

  --uv-hero-text-size: 18px;
  --uv-hero-text-line: 30.96px;

  --uv-card-h-size: clamp(27px, 1.9vw, 30px);
  --uv-card-h-line: 1.08;
  --uv-card-h-weight: 800;

  --uv-card-text-size: 17px;
  --uv-card-text-line: 1.78;
  --uv-card-text-weight: 300;

  --uv-philosophy-h2-size: clamp(32px, 3vw, 40px);
  --uv-terms-h2-size: clamp(24px, 2vw, 30px);

  --uv-hero-button-font: 11px;
  --uv-hero-button-tracking: .18em;
  --uv-hero-button-weight: 800;

  --uv-form-button-font: 13px;
  --uv-form-button-tracking: .20em;
  --uv-form-button-weight: 700;

  --uv-footer-font: 10px;
  --uv-footer-tracking: .14em;
  --uv-footer-weight: 400;
}

/* ---------- Navigation ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav,
body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav{
  font-size: var(--uv-nav-font) !important;
  font-weight: var(--uv-nav-weight) !important;
  letter-spacing: var(--uv-nav-tracking) !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .main-nav a,
body:not(.uv06):not(.circle-v05):not(.circle-page) .site-header nav a,
.lang-switch,
.lang-switch a{
  font-size: var(--uv-nav-font) !important;
  font-weight: var(--uv-nav-weight) !important;
  letter-spacing: var(--uv-nav-tracking) !important;
  line-height: 1 !important;
}

/* ---------- Logo ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .logo-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand-main,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand strong{
  font-size: var(--uv-logo-main-size) !important;
  font-weight: var(--uv-logo-main-weight) !important;
  letter-spacing: var(--uv-logo-main-tracking) !important;
  line-height: 1 !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .logo-sub,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand-sub,
body:not(.uv06):not(.circle-v05):not(.circle-page) .brand span{
  font-size: var(--uv-logo-sub-size) !important;
  font-weight: var(--uv-logo-sub-weight) !important;
  letter-spacing: var(--uv-logo-sub-tracking) !important;
  line-height: 1 !important;
}

/* ---------- Hero H1 ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-title,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero h1,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero h1{
  font-size: var(--uv-hero-h1-size) !important;
  line-height: var(--uv-hero-h1-line) !important;
  font-weight: var(--uv-hero-h1-weight) !important;
  letter-spacing: var(--uv-hero-h1-tracking) !important;
  max-width: 720px !important;
}

/* ---------- Hero Text ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-text,
body:not(.uv06):not(.circle-v05):not(.circle-page) .lead,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .page-content p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-hero p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-hero p{
  font-size: var(--uv-hero-text-size) !important;
  line-height: var(--uv-hero-text-line) !important;
  font-weight: 400 !important;
}

/* ---------- Cards ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card h3,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card h3,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card h3{
  font-size: var(--uv-card-h-size) !important;
  line-height: var(--uv-card-h-line) !important;
  font-weight: var(--uv-card-h-weight) !important;
  letter-spacing: -.035em !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .world-card p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .subpage-card p,
body:not(.uv06):not(.circle-v05):not(.circle-page) .card p{
  font-size: var(--uv-card-text-size) !important;
  line-height: var(--uv-card-text-line) !important;
  font-weight: var(--uv-card-text-weight) !important;
}

/* ---------- Philosophy Statement H2 ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .statement h2,
body:not(.uv06):not(.circle-v05):not(.circle-page) .quote-section h2{
  font-size: var(--uv-philosophy-h2-size) !important;
  line-height: 1.08 !important;
  font-weight: 700 !important;
  letter-spacing: -.035em !important;
}

/* ---------- Terms H2 ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-card h2{
  font-size: var(--uv-terms-h2-size) !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
}

body:not(.uv06):not(.circle-v05):not(.circle-page) .legal-note h2{
  font-size: clamp(28px, 2.4vw, 36px) !important;
  line-height: 1.08 !important;
  font-weight: 700 !important;
  letter-spacing: -.035em !important;
}

/* ---------- Hero / CTA Buttons ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-primary,
body:not(.uv06):not(.circle-v05):not(.circle-page) .hero-button-secondary,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-gold,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn-ghost,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn.gold,
body:not(.uv06):not(.circle-v05):not(.circle-page) .btn.ghost{
  font-size: var(--uv-hero-button-font) !important;
  letter-spacing: var(--uv-hero-button-tracking) !important;
  font-weight: var(--uv-hero-button-weight) !important;
  line-height: 1 !important;
}

/* ---------- Formularbuttons ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .form-panel button,
body:not(.uv06):not(.circle-v05):not(.circle-page) form button{
  font-size: var(--uv-form-button-font) !important;
  letter-spacing: var(--uv-form-button-tracking) !important;
  font-weight: var(--uv-form-button-weight) !important;
  line-height: 1 !important;
}

/* ---------- Footer ---------- */

body:not(.uv06):not(.circle-v05):not(.circle-page) .site-footer,
body:not(.uv06):not(.circle-v05):not(.circle-page) .footer-left,
body:not(.uv06):not(.circle-v05):not(.circle-page) .footer-right,
body:not(.uv06):not(.circle-v05):not(.circle-page) .footer-terms-link,
body:not(.uv06):not(.circle-v05):not(.circle-page) .footer-claim{
  font-size: var(--uv-footer-font) !important;
  letter-spacing: var(--uv-footer-tracking) !important;
  font-weight: var(--uv-footer-weight) !important;
}

/* =========================================================
   Circle / uv06 typography alignment
   Kein Strukturumbau, nur Größenkanon.
   ========================================================= */

.uv06-logo-title{
  font-size: var(--uv-logo-main-size) !important;
  font-weight: var(--uv-logo-main-weight) !important;
  letter-spacing: var(--uv-logo-main-tracking) !important;
}

.uv06-logo-sub{
  font-size: var(--uv-logo-sub-size) !important;
  font-weight: var(--uv-logo-sub-weight) !important;
  letter-spacing: var(--uv-logo-sub-tracking) !important;
}

.uv06-nav,
.uv06-nav a,
.uv06-lang-switch,
.uv06-lang-switch a{
  font-size: var(--uv-nav-font) !important;
  font-weight: var(--uv-nav-weight) !important;
  letter-spacing: var(--uv-nav-tracking) !important;
}

.uv06-title{
  font-size: var(--uv-hero-h1-size) !important;
  line-height: var(--uv-hero-h1-line) !important;
  font-weight: var(--uv-hero-h1-weight) !important;
  letter-spacing: var(--uv-hero-h1-tracking) !important;
}

.uv06-text{
  font-size: 17px !important;
  line-height: 29.24px !important;
  font-weight: 400 !important;
}

.uv06-btn{
  font-size: var(--uv-hero-button-font) !important;
  letter-spacing: var(--uv-hero-button-tracking) !important;
  font-weight: var(--uv-hero-button-weight) !important;
}

.uv06-footer{
  font-size: var(--uv-footer-font) !important;
  letter-spacing: var(--uv-footer-tracking) !important;
  font-weight: var(--uv-footer-weight) !important;
}

/* Close button darf größer bleiben, aber nicht vom Audit als CTA missverstanden werden */
.uv06-close{
  font-size: 20px !important;
  letter-spacing: 0 !important;
  font-weight: 300 !important;
}

@media(max-width: 860px){
  :root{
    --uv-hero-h1-size: clamp(38px, 10vw, 52px);
    --uv-hero-text-size: 16px;
    --uv-hero-text-line: 27px;
    --uv-card-h-size: clamp(24px, 7vw, 32px);
    --uv-card-text-size: 16px;
  }
}


/* =========================================================
   LEGAL FOOTER EXPANSION V01
   Footer mit Terms / Privacy / Cookie / Imprint.
   ========================================================= */

.footer-right{
  gap:10px !important;
}

.footer-right a.footer-terms-link{
  white-space:nowrap !important;
}

@media(max-width: 980px){
  .footer-right{
    flex-wrap:wrap !important;
    white-space:normal !important;
    justify-content:flex-start !important;
  }
}


/* =========================================================
   CONTACT OPT-IN CHECKBOXES V01
   Pflicht-Hinweis + optionale Einwilligungen.
   ========================================================= */

.form-consents{
  display:grid !important;
  gap:14px !important;
  margin:10px 0 6px !important;
}

.consent-row{
  display:grid !important;
  grid-template-columns:18px 1fr !important;
  gap:12px !important;
  align-items:flex-start !important;
  color:rgba(242,238,232,.66) !important;
  font-size:13px !important;
  line-height:1.55 !important;
  letter-spacing:0 !important;
}

.consent-row input[type="checkbox"]{
  width:16px !important;
  height:16px !important;
  min-height:16px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  accent-color:#c9a45a !important;
}

.consent-row a{
  color:#c9a45a !important;
  text-decoration:none !important;
}

.consent-row a:hover{
  color:#f2eee8 !important;
}


/* =========================================================
   MEMBERSHIP APPLICATION FLOW V01
   Zweite Stufe nach Access-Anfrage.
   ========================================================= */

.membership-application-wrap{
  background:#000 !important;
}

.application-steps{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:1px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.07) !important;
}

.application-step{
  background:#050505 !important;
  padding:clamp(28px, 3.2vw, 46px) !important;
  min-height:280px !important;
}

.application-step span{
  display:block !important;
  color:#c9a45a !important;
  font-size:11px !important;
  letter-spacing:.32em !important;
  margin-bottom:22px !important;
}

.application-step h2{
  color:#f2eee8 !important;
  font-size:clamp(24px, 2vw, 30px) !important;
  line-height:1.1 !important;
  letter-spacing:-.03em !important;
  margin:0 0 18px !important;
}

.application-step p,
.application-step li{
  color:rgba(242,238,232,.64) !important;
  font-size:16px !important;
  line-height:1.75 !important;
}

.application-step ul{
  margin:18px 0 0 !important;
  padding-left:18px !important;
}

.application-notice{
  margin:26px 0 0 !important;
  padding-top:22px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

.application-notice p{
  color:rgba(242,238,232,.64) !important;
  font-size:14px !important;
  line-height:1.65 !important;
  margin:0 0 10px !important;
}

.application-notice a{
  color:#c9a45a !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:11px !important;
  letter-spacing:.18em !important;
}

@media(max-width:860px){
  .application-steps{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   CIRCLE IMAGE DARKNESS TUNE V01
   Bild bleibt sichtbar, aber privater, dunkler, nebulöser.
   ========================================================= */

.uv06-bg{
  filter: brightness(.48) contrast(1.08) saturate(.82) !important;
}

.uv06-stage::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 30% 48%, rgba(0,0,0,.18), rgba(0,0,0,.68) 58%, rgba(0,0,0,.92) 100%),
    linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.42) 42%, rgba(0,0,0,.86) 100%) !important;
}

.uv06-header,
.uv06-copy,
.uv06-footer{
  position:relative !important;
  z-index:5 !important;
}



/* =========================================================
   CIRCLE IMAGE BRIGHTNESS TUNE V02
   Ziel: Bild wieder etwas sichtbarer, aber weiterhin privat.
   Überschreibt V01.
   ========================================================= */

.uv06-bg{
  filter: brightness(.62) contrast(1.06) saturate(.86) !important;
}

.uv06-stage::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 31% 48%, rgba(0,0,0,.08), rgba(0,0,0,.50) 56%, rgba(0,0,0,.84) 100%),
    linear-gradient(90deg, rgba(0,0,0,.62), rgba(0,0,0,.32) 42%, rgba(0,0,0,.78) 100%) !important;
}

.uv06-header,
.uv06-copy,
.uv06-footer{
  position:relative !important;
  z-index:5 !important;
}


/* =========================================================
   CIRCLE INTRO TYPE TUNE V01
   Intro-Siegel etwas präsenter, weiterhin reduziert.
   ========================================================= */

.uv06-intro .uv06-intro-main,
.uv06-intro-main{
  font-size: 15px !important;
  letter-spacing: .46em !important;
  font-weight: 800 !important;
}

.uv06-intro .uv06-intro-sub,
.uv06-intro-sub{
  font-size: 11px !important;
  letter-spacing: .34em !important;
  font-weight: 500 !important;
  margin-top: 14px !important;
}


/* =========================================================
   CIRCLE INTRO FINAL TUNE V01
   Nur: Intro-Schrift größer + Hintergrundbild 5% heller.
   Keine Strukturänderung.
   ========================================================= */

/* Hintergrund ca. 5% heller als aktueller Stand */
.uv06-bg{
  filter: brightness(.69) contrast(1.05) saturate(.84) !important;
}

/* Intro-Siegel ca. doppelt so groß, Position bleibt gleich */
.uv06-intro-main{
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .34em !important;
}

.uv06-intro-sub{
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  letter-spacing: .26em !important;
  margin-top: 20px !important;
}

/* Mobile etwas kleiner, damit es nicht bricht */
@media(max-width:860px){
  .uv06-intro-main{
    font-size: 22px !important;
    letter-spacing: .28em !important;
  }

  .uv06-intro-sub{
    font-size: 14px !important;
    letter-spacing: .22em !important;
  }
}


/* =========================================================
   CIRCLE INTRO DOUBLE TYPE V02
   Intro-Schrift tatsächlich deutlich größer.
   ========================================================= */

.uv06-intro-main{
  font-size: 42px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .30em !important;
}

.uv06-intro-sub{
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  letter-spacing: .24em !important;
  margin-top: 24px !important;
}

/* Hintergrund minimal heller */
.uv06-bg{
  filter: brightness(.69) contrast(1.05) saturate(.84) !important;
}

@media(max-width:860px){
  .uv06-intro-main{
    font-size: 28px !important;
    letter-spacing: .24em !important;
  }

  .uv06-intro-sub{
    font-size: 18px !important;
    letter-spacing: .18em !important;
  }
}


/* =========================================================
   MOBILE PRIVACY OVERFLOW FIX V01
   Verhindert horizontales Überlaufen langer deutscher Legal-Texte.
   ========================================================= */

@media(max-width: 520px){
  .legal-wrap,
  .legal-grid,
  .legal-card,
  .legal-note,
  .legal-intro,
  .page-content,
  .footer-right,
  .footer-left{
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }

  .legal-card p,
  .legal-note p,
  .legal-intro p,
  .page-text,
  .footer-right,
  .footer-right a,
  .footer-claim{
    overflow-wrap:anywhere !important;
    word-break:normal !important;
    hyphens:auto !important;
  }

  input,
  textarea,
  select,
  button{
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}


/* =========================================================
   BUSINESS CIRCLE TEASER V01
   Sichtbares Wertversprechen in Welt 1.
   Keine öffentliche Marktplatz-Funktion.
   ========================================================= */

.business-circle-card{
  border-color:rgba(201,164,90,.28) !important;
}

.business-circle-card h3{
  color:#f2eee8 !important;
}

.business-circle-note{
  margin-top:34px !important;
  padding:28px 0 0 !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  max-width:720px !important;
}

.business-circle-note h2{
  color:#f2eee8 !important;
  font-size:clamp(24px, 2vw, 32px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  margin:0 0 14px !important;
}

.business-circle-note p{
  color:rgba(242,238,232,.64) !important;
  font-size:16px !important;
  line-height:1.75 !important;
  margin:0 !important;
}

@media(max-width:860px){
  .business-circle-note{
    margin-top:28px !important;
  }
}


/* =========================================================
   BUSINESS CIRCLE HARD CLEANUP V03
   Business Circle nicht auf der Start-Hero-Fläche zeigen.
   ========================================================= */

body.page-start .business-circle-card,
.hero-content .business-circle-card,
.hero .business-circle-card{
  display:none !important;
}

.business-circle-note{
  margin-top:34px !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  max-width:720px !important;
}

.business-circle-note h2{
  font-size:clamp(24px, 2vw, 32px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  margin:0 0 14px !important;
}

.business-circle-note p{
  font-size:16px !important;
  line-height:1.75 !important;
  color:rgba(242,238,232,.64) !important;
}


/* =========================================================
   CURATOR DESK CLICKABLE CARDS V01
   Overview-Karten sind Arbeitsbereiche, keine Deko.
   ========================================================= */

.curator-card-link{
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
}

.curator-card-link .legal-card{
  height:100% !important;
  transition:
    border-color .18s ease,
    background .18s ease,
    transform .18s ease;
}

.curator-card-link:hover .legal-card{
  border-color:rgba(201,164,90,.52) !important;
  background:rgba(201,164,90,.045) !important;
  transform:translateY(-2px);
}

.curator-card-link:hover h2{
  color:#c9a45a !important;
}

.curator-card-link:focus-visible{
  outline:1px solid rgba(201,164,90,.75) !important;
  outline-offset:4px !important;
}
