/* Extracted from 03_03_02_dokumente-checkliste.html - style block 1 */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#17160E;--cream:#F3EFE6;--gold:#BF844A;--gold-l:#D4A76A;--muted:#6C6660;--serif:var(--font-headings),system-ui,sans-serif;--sans:var(--font-body),system-ui,sans-serif;--px:clamp(1.5rem,6vw,6.5rem);--ease:cubic-bezier(0.16,1,0.3,1)}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);overflow-x:hidden;cursor:none}
.cursor{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .1s ease,width .3s var(--ease),height .3s var(--ease);mix-blend-mode:multiply}
.cursor-ring{position:fixed;width:32px;height:32px;border:1px solid rgba(191,132,74,.4);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform .18s ease,width .3s var(--ease),height .3s var(--ease),border-color .3s ease}
.grain{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-size:300px 300px}
.progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);width:0%;z-index:999;transition:width .1s linear}
.r{opacity:0;transform:translateY(22px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.r.on{opacity:1;transform:translateY(0)}
.r.d1.on{transition-delay:.1s}.r.d2.on{transition-delay:.2s}.r.d3.on{transition-delay:.3s}.r.d4.on{transition-delay:.4s}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:1.375rem var(--px);display:flex;align-items:center;justify-content:space-between;transition:background .4s ease,border-color .4s ease;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(243,239,230,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom-color:rgba(23,22,14,.07)}
.nav__logo{font-family:var(--serif);font-weight: 400;font-size:1.1875rem;color:var(--ink);text-decoration:none;letter-spacing:.03em;display:flex;align-items:center;gap:.625rem}
.nav__logo-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0}
.nav__links{display:flex;align-items:center;gap:2.5rem}
.nav__link{font-family:var(--sans);font-size:.75rem;color:var(--muted);text-decoration:none;letter-spacing:.06em;transition:color .2s ease}
.nav__link:hover,.nav__link--active{color:var(--ink)}
.nav__cta{font-family:var(--sans);font-size:.8125rem;font-weight:500;color:var(--ink);text-decoration:none;padding:.6875rem 1.375rem;border:1.5px solid rgba(23,22,14,.2);letter-spacing:.04em;transition:border-color .25s ease,background .25s ease,color .25s ease}
.nav__cta:hover{border-color:var(--gold);background:var(--ink);color:var(--cream)}
.nav__menu{display:none;background:none;border:none;cursor:none;padding:.25rem}
.nav__menu-line{display:block;width:22px;height:1.5px;background:var(--ink);margin:5px 0}

/* BREADCRUMB */
.breadcrumb{background:var(--cream);padding:5.5rem var(--px) 0}
.breadcrumb__inner{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-family:var(--sans);font-size:.6875rem;color:var(--muted);letter-spacing:.04em;padding-bottom:2rem;border-bottom:1px solid rgba(23,22,14,.07)}
.breadcrumb__link{color:var(--muted);text-decoration:none;transition:color .2s ease}
.breadcrumb__link:hover{color:var(--ink)}
.breadcrumb__sep{color:rgba(23,22,14,.2)}
.breadcrumb__current{color:var(--ink)}

/* HERO */
.hero{background:var(--cream);padding:clamp(4rem,8vw,7rem) var(--px) clamp(5rem,10vw,8rem);position:relative;overflow:hidden}
.hero__bg{position:absolute;bottom:-.08em;right:calc(var(--px) - .05em);font-family:var(--serif);font-weight: 400;font-style:italic;font-size:clamp(7rem,16vw,14rem);line-height:1;color:rgba(23,22,14,.022);user-select:none;pointer-events:none;letter-spacing:-.04em}
.hero__eyebrow{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}
.hero__eyebrow-line{width:0;height:1px;background:var(--gold);opacity:.7;transition:width 1.4s var(--ease) .2s}
.hero__eyebrow-line.on{width:3rem}
.hero__eyebrow-text{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.hero__layout{display:grid;grid-template-columns:1fr 1.4fr;gap:0 clamp(3rem,7vw,8rem);align-items:end}
.hero__headline{font-family:var(--serif);font-weight: 400;font-size:clamp(2.75rem,5.5vw,5rem);line-height:1.1;color:var(--ink);letter-spacing:-.02em}
.hero__headline em{font-style:italic;color:var(--gold)}
.hero__right{padding-bottom:.25rem}
.hero__intro{font-family:var(--sans);font-size:clamp(1rem,1.6vw,1.1875rem);line-height:1.72;color:var(--muted);margin-bottom:2rem}
.hero__intro strong{color:var(--ink);font-weight:500}
.hero__rule{display:block;width:2.5rem;height:1px;background:var(--gold);opacity:.5;margin-bottom:1.5rem}

/* ── UNIVERSAL-DOKUMENTE BAND ── */
.universal{background:var(--ink);padding:clamp(5rem,11vw,9rem) var(--px);position:relative;overflow:hidden}
.universal__header{margin-bottom:clamp(3rem,6vw,5rem);position:relative;z-index:1}
.universal__label{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem;display:flex;align-items:center;gap:.625rem;opacity:.7}
.universal__label::before{content:'';width:1.5rem;height:1px;background:var(--gold);opacity:.6;flex-shrink:0}
.universal__headline{font-family:var(--serif);font-weight: 400;font-size:clamp(1.875rem,3.5vw,3rem);line-height:1.18;color:var(--cream);max-width:580px}
.universal__sub{font-family:var(--sans);font-size:.875rem;line-height:1.7;color:rgba(243,239,230,.38);margin-top:.875rem;max-width:520px}

.udocs{display:flex;flex-direction:column;gap:1.5px;background:rgba(243,239,230,.06);position:relative;z-index:1}
.udoc{background:#1c1b13;display:grid;grid-template-columns:3.5rem 1fr auto;gap:0 clamp(1.5rem,3vw,2.5rem);padding:clamp(1.25rem,2.5vw,1.875rem) clamp(1.5rem,2.5vw,2rem);align-items:start;transition:background .3s ease}
.udoc:hover{background:#222119}
.udoc__num{font-family:var(--serif);font-weight: 400;font-style:italic;font-size:2rem;line-height:1;color:rgba(191,132,74,.18);user-select:none;transition:color .3s ease;padding-top:.15rem}
.udoc:hover .udoc__num{color:rgba(191,132,74,.35)}
.udoc__body{}
.udoc__name{font-family:var(--serif);font-weight: 400;font-size:clamp(.9375rem,1.5vw,1.125rem);line-height:1.28;color:rgba(243,239,230,.82);margin-bottom:.35rem}
.udoc__detail{font-family:var(--sans);font-size:.8125rem;line-height:1.58;color:rgba(243,239,230,.35)}
.udoc__detail strong{color:rgba(243,239,230,.7);font-weight:500}
.udoc__badge{font-family:var(--sans);font-size:.5rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:.3rem .75rem;border:1px solid;align-self:center;flex-shrink:0;white-space:nowrap}
.udoc__badge--always{color:var(--gold);border-color:rgba(191,132,74,.4);background:rgba(191,132,74,.08)}
.udoc__badge--copy{color:rgba(243,239,230,.35);border-color:rgba(243,239,230,.12)}

/* ── VISUMSTYPEN FILTER + CHECKLISTEN ── */
.checklisten{background:var(--cream);padding:clamp(5rem,11vw,9rem) var(--px);position:relative;overflow:hidden}
.checklisten__header{margin-bottom:clamp(3rem,6vw,5rem)}
.checklisten__label{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem;display:flex;align-items:center;gap:.625rem;opacity:.8}
.checklisten__label::before{content:'';width:1.5rem;height:1px;background:var(--gold);opacity:.6;flex-shrink:0}
.checklisten__headline{font-family:var(--serif);font-weight: 400;font-size:clamp(1.875rem,3.5vw,3rem);line-height:1.18;color:var(--ink)}

/* Filter tabs */
.filter-bar{display:flex;gap:0;flex-wrap:wrap;border-bottom:1px solid rgba(23,22,14,.1);margin-bottom:clamp(3rem,6vw,5rem);position:relative;z-index:1}
.filter-btn{font-family:var(--sans);font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:none;border:none;cursor:none;padding:.875rem 1.375rem;position:relative;transition:color .2s ease}
.filter-btn:hover{color:var(--ink)}
.filter-btn.active{color:var(--ink)}
.filter-btn.active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold)}

/* Checkliste Panels */
.cl-panel{display:none}
.cl-panel.active{display:block}

.cl-section{margin-bottom:clamp(2.5rem,5vw,4rem)}
.cl-section:last-child{margin-bottom:0}
.cl-section__header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;padding-bottom:.875rem;border-bottom:1px solid rgba(23,22,14,.08)}
.cl-section__title{font-family:var(--serif);font-weight: 400;font-size:clamp(1rem,1.8vw,1.375rem);line-height:1.25;color:var(--ink)}
.cl-section__badge{font-family:var(--sans);font-size:.5rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:.25rem .75rem;border:1px solid;flex-shrink:0}
.cl-section__badge--must{color:var(--gold);border-color:rgba(191,132,74,.4);background:rgba(191,132,74,.08)}
.cl-section__badge--opt{color:var(--muted);border-color:rgba(23,22,14,.15)}

.cl-items{display:flex;flex-direction:column;gap:0}
.cl-item{display:grid;grid-template-columns:1.5rem 1fr auto;gap:0 1rem;padding:.875rem 0;border-bottom:1px solid rgba(23,22,14,.06);align-items:baseline}
.cl-item:last-child{border-bottom:none}
.cl-item__icon{font-size:.75rem;color:var(--gold);opacity:.55;flex-shrink:0;padding-top:.1rem}
.cl-item__text{font-family:var(--sans);font-size:.9375rem;line-height:1.55;color:var(--muted)}
.cl-item__text strong{color:var(--ink);font-weight:500}
.cl-item__hint{font-family:var(--sans);font-size:.6875rem;color:var(--gold);opacity:.65;font-weight:500;white-space:nowrap;padding-left:.75rem}

/* ── ÜBERSETZUNGEN & APOSTILLE ── */
.ueber{background:var(--ink);padding:clamp(5rem,11vw,9rem) var(--px);position:relative;overflow:hidden}
.ueber__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5px;background:rgba(243,239,230,.06);position:relative;z-index:1}
.ublock{background:#1c1b13;padding:clamp(2.25rem,4vw,3.5rem) clamp(2rem,3.5vw,3rem)}
.ublock--highlight{background:rgba(191,132,74,.07);border:1px solid rgba(191,132,74,.18);position:relative}
.ublock--highlight::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-l))}
.ublock__num{font-family:var(--serif);font-weight: 400;font-style:italic;font-size:clamp(3rem,6vw,5rem);line-height:1;user-select:none;margin-bottom:1rem;display:block}
.ublock--highlight .ublock__num{color:rgba(191,132,74,.25)}
.ublock:not(.ublock--highlight) .ublock__num{color:rgba(191,132,74,.12)}
.ublock__label{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:rgba(243,239,230,.28);margin-bottom:.875rem;display:block}
.ublock--highlight .ublock__label{color:var(--gold);opacity:.8}
.ublock__title{font-family:var(--serif);font-weight: 400;font-size:clamp(1.125rem,2vw,1.625rem);line-height:1.28;color:rgba(243,239,230,.72);margin-bottom:1.25rem}
.ublock--highlight .ublock__title{color:var(--cream)}
.ublock__body{font-family:var(--sans);font-size:.9375rem;line-height:1.72;color:rgba(243,239,230,.35)}
.ublock__body strong{color:rgba(243,239,230,.72);font-weight:500}
.ublock--highlight .ublock__body{color:rgba(243,239,230,.52)}
.ublock--highlight .ublock__body strong{color:var(--cream)}
.ublock__body p+p{margin-top:1rem}
.ublock__list{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin-top:1.25rem}
.ublock__list li{font-family:var(--sans);font-size:.875rem;line-height:1.58;color:rgba(243,239,230,.38);padding-left:1.25rem;position:relative}
.ublock__list li::before{content:'–';position:absolute;left:0;color:var(--gold);opacity:.45;font-weight:500}
.ublock--highlight .ublock__list li{color:rgba(243,239,230,.55)}
.ublock__list li strong{color:rgba(243,239,230,.72);font-weight:500}
.ublock--highlight .ublock__list li strong{color:var(--cream)}

/* ── APOSTILLE ENTSCHEIDUNGS-FLOW ── */
.apost{background:var(--cream);padding:clamp(5rem,11vw,9rem) var(--px);position:relative;overflow:hidden}
.apost__header{margin-bottom:clamp(3rem,6vw,5rem)}
.apost__label{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem;display:flex;align-items:center;gap:.625rem;opacity:.8}
.apost__label::before{content:'';width:1.5rem;height:1px;background:var(--gold);opacity:.6;flex-shrink:0}
.apost__headline{font-family:var(--serif);font-weight: 400;font-size:clamp(1.875rem,3.5vw,3rem);line-height:1.18;color:var(--ink);max-width:580px}
.apost__sub{font-family:var(--sans);font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:.875rem;max-width:540px}

.decision-flow{position:relative;z-index:1;display:flex;flex-direction:column;gap:0}
.df-row{display:grid;grid-template-columns:1fr auto 1fr;gap:0 clamp(1.5rem,4vw,4rem);padding:clamp(1.5rem,3vw,2.5rem) 0;border-bottom:1px solid rgba(23,22,14,.07);align-items:center}
.df-row:first-child{border-top:1px solid rgba(23,22,14,.07)}
.df-question{font-family:var(--sans);font-size:clamp(.875rem,1.4vw,1.0625rem);line-height:1.6;color:var(--muted)}
.df-question strong{color:var(--ink);font-weight:500}
.df-arrow{font-family:var(--sans);font-size:.6875rem;font-weight:500;color:var(--gold);opacity:.5;text-align:center;white-space:nowrap}
.df-answer{font-family:var(--sans);font-size:clamp(.875rem,1.4vw,1.0625rem);line-height:1.6;color:var(--muted)}
.df-answer strong{color:var(--ink);font-weight:500}
.df-answer--action{color:var(--ink)}
.df-answer--action strong{color:var(--gold)}

.apost__table{width:100%;margin-top:clamp(2.5rem,5vw,4rem);border-collapse:collapse;position:relative;z-index:1}
.apost__table th,.apost__table td{font-family:var(--sans);font-size:.875rem;line-height:1.55;padding:.875rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid rgba(23,22,14,.07)}
.apost__table th{font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:rgba(23,22,14,.03)}
.apost__table td{color:var(--muted)}
.apost__table td strong{color:var(--ink);font-weight:500}
.apost__table td:first-child,.apost__table th:first-child{padding-left:0}
.apost__warn{margin-top:2rem;padding:1.25rem 1.5rem 1.25rem 1.375rem;border-left:2px solid var(--gold);background:rgba(191,132,74,.06);font-family:var(--sans);font-size:.875rem;line-height:1.65;font-weight:500;color:var(--ink);position:relative;z-index:1}

/* PROZESS NAV */
.prozess-nav{background:var(--ink);padding:clamp(4rem,8vw,6.5rem) var(--px);position:relative;overflow:hidden}
.prozess-nav__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;position:relative;z-index:1}
.prozess-nav__link{text-decoration:none;display:flex;flex-direction:column;gap:.375rem}
.prozess-nav__link--prev{}
.prozess-nav__link--next{text-align:right}
.prozess-nav__dir{font-family:var(--sans);font-size:.5625rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:rgba(243,239,230,.28)}
.prozess-nav__title{font-family:var(--serif);font-weight: 400;font-size:clamp(1rem,1.8vw,1.375rem);line-height:1.28;color:rgba(243,239,230,.65);transition:color .3s ease}
.prozess-nav__link:hover .prozess-nav__title{color:var(--cream)}
.prozess-nav__arrow{font-family:var(--sans);font-size:.875rem;color:rgba(191,132,74,.5);margin-top:.25rem;transition:color .3s ease}
.prozess-nav__link:hover .prozess-nav__arrow{color:var(--gold)}
.prozess-nav__sep{width:1px;height:3rem;background:rgba(243,239,230,.08);flex-shrink:0}

/* CLOSING + FOOTER */
.closing{background:var(--ink);border-top:1px solid rgba(243,239,230,.06);padding:clamp(7rem,15vw,12rem) var(--px);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center}
.closing::after{content:'';position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(191,132,74,.07) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.closing__rule{width:0;height:1px;background:var(--gold);opacity:.35;margin-bottom:3rem;transition:width 1.4s var(--ease)}
.closing__rule.on{width:4rem}
.closing__text{font-family:var(--serif);font-weight: 400;font-size:clamp(1.5rem,3.2vw,2.625rem);line-height:1.28;color:rgba(243,239,230,.6);max-width:680px;margin-bottom:3.5rem;position:relative;z-index:1}
.closing__text em{color:var(--cream);font-style:italic}
.closing__btn{display:inline-flex;align-items:center;gap:1rem;font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--ink);background:var(--cream);border:1.5px solid transparent;padding:1.3125rem 2.5rem;cursor:none;letter-spacing:.04em;text-decoration:none;position:relative;overflow:hidden;transition:border-color .3s ease;z-index:1}
.closing__btn::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-100%);transition:transform .5s var(--ease)}
.closing__btn:hover::before{transform:translateX(0)}
.closing__btn:hover{border-color:var(--gold)}
.closing__btn span,.closing__btn-arrow{position:relative;z-index:1}
.closing__btn-arrow{font-size:1.125rem;transition:transform .3s ease}
.closing__btn:hover .closing__btn-arrow{transform:translateX(5px)}
.closing__note{margin-top:1.375rem;font-family:var(--sans);font-size:.75rem;color:rgba(243,239,230,.22);letter-spacing:.04em;position:relative;z-index:1}
.footer{background:var(--ink);border-top:1px solid rgba(243,239,230,.06);padding:clamp(2.5rem,5vw,3.75rem) var(--px);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}
.footer__logo{font-family:var(--serif);font-weight: 400;font-size:1rem;color:rgba(243,239,230,.3);text-decoration:none;display:flex;align-items:center;gap:.5rem}
.footer__logo-dot{width:4px;height:4px;border-radius:50%;background:var(--gold);opacity:.4}
.footer__links{display:flex;gap:2.25rem;flex-wrap:wrap}
.footer__link{font-family:var(--sans);font-size:.75rem;color:rgba(243,239,230,.22);text-decoration:none;letter-spacing:.04em;transition:color .2s ease}
.footer__link:hover{color:rgba(243,239,230,.55)}
.footer__copy{font-family:var(--sans);font-size:.6875rem;color:rgba(243,239,230,.15);letter-spacing:.04em}

@media(max-width:1100px){.hero__layout{grid-template-columns:1fr;gap:2.5rem}}
@media(max-width:960px){
  .ueber__grid{grid-template-columns:1fr}
  .udoc{grid-template-columns:2.5rem 1fr}
  .udoc__badge{display:none}
  .df-row{grid-template-columns:1fr auto 1fr;gap:1rem}
  .nav__links{display:none}
  .nav__menu{display:block}
}
@media(max-width:600px){
  .filter-btn{padding:.75rem .875rem;font-size:.625rem}
  .cl-item{grid-template-columns:1.25rem 1fr}
  .cl-item__hint{display:none}
  .df-row{grid-template-columns:1fr;gap:.5rem}
  .df-arrow{text-align:left}
  .apost__table{display:block;overflow-x:auto}
  .prozess-nav__inner{flex-direction:column;gap:1.5rem}
  .prozess-nav__sep{width:100%;height:1px}
  .prozess-nav__link--next{text-align:left}
  .footer{flex-direction:column;align-items:flex-start}
  .footer__links{gap:1.5rem}
  .closing{text-align:left;align-items:flex-start}
  .closing__rule{align-self:flex-start}
}
