/*
Theme Name: Kanzlei Bender
Theme URI: https://ra-bender.de
Description: Child-Theme zu Twenty Twenty-Five für die Website von Kai P. Bender, LL.M., Rechtsanwalt. Dunkles Design, lokal eingebundene Schriften (keine Verbindung zu Google Fonts).
Author: Kai P. Bender
Template: twentytwentyfive
Version: 1.0.3
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kanzlei-bender
*/

/* Schriften: lokal ausgeliefert (SIL Open Font License, siehe assets/fonts) */
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  src: url("assets/fonts/archivo-latin-ext-wdth-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  src: url("assets/fonts/archivo-latin-wdth-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: "Lora";
  font-style: normal;
  font-display: swap;
  font-weight: 400 700;
  src: url("assets/fonts/lora-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{color-scheme:dark;
  --ground:#1A1A1A;
  --ground-2:#222222;
  --text:#E6E6E6;
  --muted:#A0A0A0;
  --line:#323232;
  --mark:#B9464D;
  --display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --body:"Lora",Georgia,"Times New Roman",serif;
  --hdr-space:120px;}
#about,
#fields,
#ablauf,
#kontakt{scroll-margin-top:var(--hdr-space)}
@media (max-width:820px){
  :root{--hdr-space:115px}
}
@media (max-width:330px){
  :root{--hdr-space:140px}
}
*{box-sizing:border-box}
html body{background:var(--ground);
  color:var(--text);
  font-family:var(--body);
  font-size:17px;
  line-height:1.65;
  margin:0;
  padding:0;
  -webkit-font-smoothing:antialiased;}
.wp-site-blocks .wrap{max-width:1180px;margin:0 auto;padding-inline:24px}
.wp-site-blocks header{border-bottom:1px solid var(--line);position:sticky;top:var(--wp-admin--admin-bar--height,0px);background:var(--ground);z-index:5}
.wp-site-blocks .head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-block:18px;flex-wrap:wrap}
.wp-site-blocks .mark{display:block;line-height:1;font-family:var(--display);font-variation-settings:"wdth" 125;font-weight:400;--logo:30px;color:inherit;text-decoration:none}
.wp-site-blocks .mark .name{display:block;font-size:var(--logo);letter-spacing:.043em;color:var(--mark)}
.wp-site-blocks .mark .name .llm{font-size:.714em;letter-spacing:.06em}
.wp-site-blocks .mark .role{display:block;font-size:calc(var(--logo) * .714);letter-spacing:.332em;color:var(--muted);margin-top:calc(var(--logo) * .2);margin-left:.032em}
.wp-site-blocks nav{display:flex;gap:26px;flex-wrap:wrap}
.wp-site-blocks nav a{font-family:var(--display);font-variation-settings:"wdth" 112;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent}
.wp-site-blocks nav a:hover,
.wp-site-blocks nav a:focus-visible{color:var(--text);border-bottom-color:var(--mark)}
.wp-site-blocks .nav-toggle{display:none}
.wp-site-blocks .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:48px;align-items:end;padding-top:72px}
.wp-site-blocks .hero-text{padding-bottom:96px}
.wp-site-blocks h1{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:clamp(21px,2.3vw,29px);line-height:1.38;margin:0 0 30px;color:var(--text);overflow-wrap:break-word}
.wp-site-blocks .lead{max-width:58ch;margin:0;color:var(--text)}
.wp-site-blocks h1 .term{white-space:nowrap}
.wp-site-blocks h1 .sep{color:var(--muted);padding-inline:4px}
.wp-site-blocks .hero-text .wp-block-buttons{margin-top:22px}
.wp-site-blocks .cta .wp-block-button__link{display:inline-block;font-family:var(--display);font-variation-settings:"wdth" 112;font-size:13px;font-weight:400;line-height:1.65;letter-spacing:.09em;text-transform:uppercase;color:var(--text);background:none;text-decoration:none;border:1px solid var(--muted);border-radius:0;padding:13px 24px}
.wp-site-blocks .cta .wp-block-button__link:hover,
.wp-site-blocks .cta .wp-block-button__link:focus-visible{border-color:var(--text);background:var(--ground-2);color:var(--text)}
.wp-site-blocks .portrait{margin:0;align-self:end}
.wp-site-blocks .portrait img{display:block;width:100%;max-width:100%;height:auto;filter:grayscale(.55)}
.wp-site-blocks section{padding-block:80px 96px;border-top:1px solid var(--line);margin-top:8px}
.wp-site-blocks h2{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 26px;line-height:1.65}
.wp-site-blocks .about p{max-width:66ch;margin:0 0 20px}
.wp-site-blocks .about h3{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:52px 0 20px;line-height:1.65}
.wp-site-blocks .vita{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:16px 32px;margin:0;max-width:74ch}
.wp-site-blocks .about .vita p,
.wp-site-blocks .vita p{margin:0;max-width:none}
.wp-site-blocks .vita .vita-dt{font-family:var(--display);font-variation-settings:"wdth" 112;font-size:14px;letter-spacing:.04em;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:3px}
@media (max-width:640px){
  .wp-site-blocks .vita{grid-template-columns:1fr;gap:6px}
  .wp-site-blocks .vita .vita-dd{margin-bottom:18px}
}
.wp-site-blocks .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 56px;margin-top:4px}
.wp-site-blocks .fields h3{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:18px;line-height:1.35;margin:0 0 10px;color:var(--text)}
.wp-site-blocks .fields p{margin:0;max-width:46ch}
.wp-site-blocks .note{margin-top:64px;padding-top:32px;border-top:1px solid var(--line);max-width:62ch}
.wp-site-blocks .note h3{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:18px;line-height:1.35;margin:0 0 10px;color:var(--text)}
.wp-site-blocks .note p{margin:0}
.wp-site-blocks .note a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--muted)}
.wp-site-blocks .note a:hover,
.wp-site-blocks .note a:focus-visible{border-bottom-color:var(--mark)}
@media (max-width:760px){
  .wp-site-blocks .fields{grid-template-columns:1fr;gap:36px}
}
.wp-site-blocks .steps{display:grid;grid-template-columns:1fr;gap:48px}
.wp-site-blocks .steps .num{font-family:var(--display);font-variation-settings:"wdth" 112;font-size:12px;letter-spacing:.16em;color:var(--muted);font-variant-numeric:tabular-nums;display:block;margin:0 0 8px}
.wp-site-blocks .steps h3{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:18px;line-height:1.35;margin:0 0 10px;color:var(--text)}
.wp-site-blocks .steps p{margin:0 0 16px;max-width:66ch}
.wp-site-blocks .steps p:last-child{margin-bottom:0}
.wp-site-blocks .contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 56px}
.wp-site-blocks .contact h3{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:18px;line-height:1.35;margin:0 0 12px;color:var(--text)}
.wp-site-blocks .contact p{margin:0 0 6px;max-width:46ch}
.wp-site-blocks .contact a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--muted)}
.wp-site-blocks .contact a:hover,
.wp-site-blocks .contact a:focus-visible{border-bottom-color:var(--mark)}
@media (max-width:760px){
  .wp-site-blocks .contact{grid-template-columns:1fr;gap:32px}
}
.wp-site-blocks .form{max-width:560px}
.wp-site-blocks .form h3{margin:0 0 16px}
.wp-site-blocks .form label{font-family:var(--display);font-variation-settings:"wdth" 112;font-size:12px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.wp-site-blocks .form input[type="text"],
.wp-site-blocks .form input[type="email"],
.wp-site-blocks .form input[type="tel"],
.wp-site-blocks .form textarea{width:100%;font-family:var(--body);font-size:16px;color:var(--text);background:var(--ground-2);border:1px solid var(--line);padding:11px 13px;border-radius:0;box-shadow:none}
.wp-site-blocks .form textarea{min-height:130px;resize:vertical}
.wp-site-blocks .form input:focus,
.wp-site-blocks .form textarea:focus{outline:none;border-color:var(--muted);box-shadow:none}
.wp-site-blocks .form .ff-el-group{margin-bottom:18px}
.wp-site-blocks .form .ff-el-input--label{margin-bottom:6px}
.wp-site-blocks .form .ff-el-form-check label,
.wp-site-blocks .form .ff-el-form-check-label{font-family:var(--body);font-size:15px;letter-spacing:0;text-transform:none;color:var(--muted)}
.wp-site-blocks .form button,
.wp-site-blocks .form input[type="submit"],
.wp-site-blocks .form .ff-btn-submit{font-family:var(--display);font-variation-settings:"wdth" 112;font-size:13px;font-weight:400;letter-spacing:.09em;text-transform:uppercase;color:var(--text);background:none;border:1px solid var(--muted);border-radius:0;padding:13px 24px;cursor:pointer;box-shadow:none}
.wp-site-blocks .form button:hover,
.wp-site-blocks .form input[type="submit"]:hover,
.wp-site-blocks .form .ff-btn-submit:hover{border-color:var(--text);background:var(--ground-2);color:var(--text)}
.wp-site-blocks .form .hint{color:var(--muted);font-size:14px;margin:14px 0 0}
.wp-site-blocks .form .fluentform .ff-btn-submit:not(.ff_btn_no_style),
.wp-site-blocks .form .fluentform .ff-btn-submit:not(.ff_btn_no_style):focus{font-family:var(--display) !important;font-variation-settings:"wdth" 112;font-size:13px;font-weight:400;letter-spacing:.09em;text-transform:uppercase;color:var(--text) !important;background:none !important;border:1px solid var(--muted) !important;border-radius:0 !important;padding:13px 24px;box-shadow:none !important;opacity:1}
.wp-site-blocks .form .fluentform .ff-btn-submit:not(.ff_btn_no_style):hover{border-color:var(--text) !important;background:var(--ground-2) !important;color:var(--text) !important;opacity:1}
.wp-site-blocks .form .fluentform .ff-btn-submit:not(.ff_btn_no_style):focus-visible{outline:1px solid var(--muted);outline-offset:3px}
.wp-site-blocks .form .ff-el-form-check a,
.wp-site-blocks .form .ff-el-form-check-label a{color:var(--muted);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.wp-site-blocks .form .ff-el-form-check a:hover,
.wp-site-blocks .form .ff-el-form-check a:focus-visible,
.wp-site-blocks .form .ff-el-form-check-label a:hover{color:var(--text);text-decoration-color:var(--muted)}
.wp-site-blocks .foot{border-top:1px solid var(--line);padding-block:26px 44px;color:var(--muted);font-size:14px;display:flex;gap:22px;flex-wrap:wrap}
.wp-site-blocks .foot a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.wp-site-blocks .foot a:hover,
.wp-site-blocks .foot a:focus-visible{color:var(--text)}
@media (max-width:820px){
  .wp-site-blocks h1 .term{white-space:normal}
  .wp-site-blocks .mark{--logo:24px}
  .wp-site-blocks .hero{grid-template-columns:minmax(0,1fr);gap:0;padding-top:44px}
  .wp-site-blocks h1 .sep::after{content:"\200B"}
  .wp-site-blocks .hero-text{padding-bottom:36px}
  .wp-site-blocks .portrait{max-width:360px;margin-inline:auto;width:100%}
  .wp-site-blocks .head{flex-wrap:nowrap}
  .wp-site-blocks .nav-toggle{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:5px;width:32px;height:32px;padding:0;margin:0;background:none;border:0;cursor:pointer}
  .wp-site-blocks .nav-toggle span{display:block;width:24px;height:1px;background:var(--text);transition:transform .2s ease,opacity .2s ease}
  .wp-site-blocks .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .wp-site-blocks .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .wp-site-blocks .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .wp-site-blocks nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:2px;background:var(--ground);border-bottom:1px solid var(--line);padding:8px 24px 20px}
  .wp-site-blocks nav.open{display:flex}
  .wp-site-blocks nav a{padding-block:12px;border-bottom:1px solid var(--line)}
  .wp-site-blocks nav a:last-child{border-bottom:0}
}
.wp-site-blocks .legal{padding-block:64px 96px}
.wp-site-blocks .legal .lede{max-width:64ch;color:var(--muted);margin:0 0 48px}
.wp-site-blocks .legal .vita .vita-dt{white-space:normal}
.wp-site-blocks .legal .about{margin-top:56px}
.wp-site-blocks .legal .about:first-of-type{margin-top:0}
.wp-site-blocks .legal .fine{margin-top:56px;padding-top:28px;border-top:1px solid var(--line);color:var(--muted);font-size:15px;max-width:64ch}
.wp-site-blocks .legal .about a,
.wp-site-blocks .legal .vita a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--muted)}
.wp-site-blocks .legal .about a:hover,
.wp-site-blocks .legal .about a:focus-visible,
.wp-site-blocks .legal .vita a:hover,
.wp-site-blocks .legal .vita a:focus-visible{border-bottom-color:var(--mark)}
.wp-site-blocks .back{display:inline-block;margin-bottom:40px;font-family:var(--display);font-variation-settings:"wdth" 112;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.wp-site-blocks .back:hover,
.wp-site-blocks .back:focus-visible{color:var(--text);border-bottom-color:var(--mark)}
.wp-site-blocks .legal .translation-note{max-width:64ch;margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.5}
.wp-site-blocks .foot .foot-note{flex-basis:100%;font-size:13px}
.wp-site-blocks .head{position:relative}
.wp-site-blocks nav .lang-switch{position:absolute;top:10px;right:24px;display:inline-flex;align-items:baseline;gap:7px;font-family:var(--display);font-variation-settings:"wdth" 112;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.wp-site-blocks nav .lang-switch a{padding-bottom:2px}
.wp-site-blocks nav .lang-switch .lang-current{color:var(--text);padding-bottom:2px;border-bottom:1px solid var(--mark)}
.wp-site-blocks nav .lang-switch .lang-sep{color:var(--muted)}
@media (max-width:820px){
  .wp-site-blocks nav .lang-switch{position:static;font-size:13px;padding:16px 0 0}
  .wp-site-blocks nav .lang-switch a{padding-block:0 2px;border-bottom:1px solid transparent}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important}
}