/* Sichtplus: heller Auftritt (seit 11.2026)
   Warmweißer Grund, Sandbänder, Text in warmem Anthrazit. Orange gehört dem
   Hauptknopf, dem Plus der Wortmarke und aktiven Zuständen. Weiße Karten mit
   großen Radien und leisem Schatten, Pillen-Knöpfe und Chips.
   Der Einstieg der Startseite ist in der Einheit --u gebaut (1/1440 der
   Fensterbreite), damit er auf jedem großen Bildschirm gleich aufgeht. */

@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url("../fonts/archivo-latin-wdth-normal.woff2") format("woff2-variations"),url("../fonts/archivo-latin-wdth-normal.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/poppins-600.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/poppins-700.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/poppins-800.woff2") format("woff2");}

:root{
  /* Grund */
  --paper:#FBF9F5;
  --sand:#F6EFE3;
  --sand-deep:#EFE5D4;
  --card:#FFFFFF;
  /* Text */
  --ink:#33312E;
  --ink-2:#4B4844;
  --ink-3:#6E6A63;
  --line:#E8E1D5;
  --line-strong:#D6CDBE;
  /* Orange */
  --orange:#FF6B2C;
  --orange-hover:#FF8048;
  --on-orange:#1F1006;
  --orange-soft:#FFE7D8;
  --orange-tint:#FFF4EC;
  /* Beispiel-Karten */
  --blue:#1B4FD6;
  --blue-soft:#E9EEFC;
  --bubble:#F1F0EC;
  /* Dunkles Band */
  --night:#1B1917;
  --night-2:#262320;
  --night-line:rgba(243,239,232,.16);
  --on-night:#F5F1EA;
  --on-night-2:#CDC6BB;
  /* Schrift */
  --f-display:"Poppins",system-ui,sans-serif;
  --f-text:"Archivo",system-ui,sans-serif;
  /* Maße */
  --u:clamp(.8px,calc(100vw / 1440),1.2px);
  --gutter:clamp(18px,4.4vw,56px);
  --wrap:1180px;
  --section-y:clamp(72px,9vw,128px);
  --r-card:28px;
  --r-m:18px;
  --r-s:12px;
  --shadow-card:0 22px 44px -22px rgba(70,48,24,.26),0 3px 8px rgba(70,48,24,.06);
  --shadow-soft:0 14px 32px -20px rgba(70,48,24,.22),0 1px 3px rgba(70,48,24,.05);
  --ease:cubic-bezier(.16,1,.3,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:92px;overflow-x:clip;scrollbar-color:var(--line-strong) var(--paper);}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{margin:0;background:var(--paper);color:var(--ink-2);font-family:var(--f-text);font-size:1.0625rem;line-height:1.6;overflow-x:clip;accent-color:var(--orange);caret-color:var(--orange);-webkit-font-smoothing:antialiased;}
::selection{background:var(--orange);color:var(--on-orange);}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.08em;}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:8px;}
h1,h2,h3{font-family:var(--f-display);color:var(--ink);margin:0;text-wrap:balance;}
h2{font-weight:800;font-size:clamp(1.85rem,3.34vw,3.3rem);line-height:1.1;letter-spacing:-.035em;}
h3{font-weight:700;font-size:clamp(1.18rem,1.6vw,1.4rem);line-height:1.3;letter-spacing:-.02em;}
p{margin:0;}
p+p{margin-top:.9em;}
ul,ol{margin:0;padding:0;list-style:none;}
button{font:inherit;color:inherit;}
.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter);}
.lead{font-size:clamp(1.08rem,1.3vw,1.24rem);line-height:1.55;max-width:58ch;}
.nw{white-space:nowrap;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.skip{position:absolute;left:-9999px;top:10px;z-index:100;background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:999px;font-weight:700;text-decoration:none;}
.skip:focus{left:10px;}
.stars{display:inline-flex;gap:.06em;color:var(--orange);vertical-align:-.12em;}
.stars svg{width:1em;height:1em;}
.stars svg.off{color:var(--line-strong);}

/* Knöpfe */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:54px;padding:.8em 1.6em;border-radius:999px;border:1.5px solid transparent;font-family:var(--f-display);font-weight:600;font-size:1.02rem;line-height:1.3;letter-spacing:-.012em;text-align:center;text-decoration:none;cursor:pointer;transition:transform .3s var(--ease),background-color .2s,border-color .2s,box-shadow .3s var(--ease),color .2s;}
.btn svg{width:1.2em;height:1.2em;flex:none;transition:transform .3s var(--ease);}
.btn:hover svg{transform:translateX(3px);}
.btn-orange{background:var(--orange);color:var(--on-orange);box-shadow:0 10px 18px -14px rgba(196,74,16,.5);}
.btn-orange:hover{background:var(--orange-hover);transform:translateY(-2px);box-shadow:0 14px 22px -14px rgba(196,74,16,.55);}
.btn-orange:active{transform:translateY(0);}
.btn-line{background:var(--card);border-color:var(--line-strong);color:var(--ink);}
.btn-line:hover{border-color:var(--ink);transform:translateY(-2px);}
.btn-dark{background:var(--night);color:var(--on-night);}
.btn-dark:hover{background:#2E2B27;transform:translateY(-2px);}
.btn-quiet{min-height:44px;padding:.5em .6em;background:none;border-color:transparent;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);}
.btn-quiet:hover{text-decoration-color:var(--ink);}
.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none;}
.more{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-display);font-weight:600;font-size:.98rem;color:var(--ink);text-decoration:none;background:linear-gradient(var(--orange),var(--orange)) 0 100%/0 2px no-repeat;padding-bottom:3px;transition:background-size .35s var(--ease);}
.more svg{width:1.15em;height:1.15em;transition:transform .3s var(--ease);}
.more:hover{background-size:100% 2px;}
.more:hover svg{transform:translateX(3px);}

/* Kopfzeile */
.site-head{position:sticky;top:0;z-index:50;transition:background-color .3s,box-shadow .3s;}
.site-head.is-stuck,.site-head.is-open{background:rgba(251,249,245,.9);-webkit-backdrop-filter:saturate(1.3) blur(14px);backdrop-filter:saturate(1.3) blur(14px);box-shadow:0 1px 0 var(--line);}
.site-head .wrap{display:flex;align-items:center;gap:20px;min-height:68px;max-width:none;}
.brand{font-family:var(--f-display);font-weight:800;font-size:2.1rem;line-height:1;letter-spacing:-.04em;color:var(--ink);text-decoration:none;}
.brand b{color:var(--orange);font-weight:800;margin-left:.02em;}
.nav{display:none;}
.nav > a:not(.btn),.nav-drop-btn{display:inline-flex;align-items:center;gap:.35em;font-family:var(--f-display);font-weight:600;color:var(--ink);text-decoration:none;background:linear-gradient(var(--orange),var(--orange)) 0 100%/0 2px no-repeat;border:0;padding:.45em 0;cursor:pointer;transition:background-size .35s var(--ease);}
.nav > a:not(.btn):hover,.nav-drop-btn:hover{background-size:100% 2px;}
.nav-drop{position:relative;}
.nav-drop-btn svg{width:.95em;height:.95em;transition:transform .3s var(--ease);}
.nav-drop.is-open .nav-drop-btn svg{transform:rotate(180deg);}
.nav-drop-list{display:none;}
.nav-drop.is-open .nav-drop-list{display:block;}
.nav-drop-list a{display:block;padding:.6em .9em;border-radius:var(--r-s);font-weight:500;text-decoration:none;color:var(--ink);}
.nav-drop-list a:hover{background:var(--sand);}
.menu-btn{margin-left:auto;min-height:46px;padding:.5em 1.2em;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--card);font-family:var(--f-display);font-weight:600;color:var(--ink);cursor:pointer;}
.site-head.is-open .nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;position:absolute;left:0;right:0;top:100%;padding:10px var(--gutter) 22px;background:var(--paper);box-shadow:0 24px 40px -24px rgba(70,48,24,.35);max-height:calc(100dvh - 68px);overflow:auto;}
.site-head.is-open .nav > a:not(.btn),.site-head.is-open .nav-drop-btn{font-size:1.15rem;padding:.75em 0;justify-content:space-between;width:100%;background:none;border-bottom:1px solid var(--line);}
.site-head.is-open .nav-drop-list{padding:6px 0 10px;}
.site-head.is-open .head-cta{margin-top:14px;}

@media (min-width:1160px){
  .site-head .wrap{min-height:calc(67 * var(--u));width:calc(1440 * var(--u));padding-inline:calc(42 * var(--u)) calc(28 * var(--u));gap:0;}
  .brand{font-size:calc(54 * var(--u));}
  .menu-btn{display:none;}
  .nav{display:flex;align-items:center;flex:1;gap:calc(35 * var(--u));margin-left:calc(60 * var(--u));}
  .nav > a:not(.btn),.nav-drop-btn{font-size:calc(17.6 * var(--u));}
  .nav .head-cta{margin-left:auto;min-height:calc(53 * var(--u));padding:0 calc(31 * var(--u));font-size:calc(18.4 * var(--u));}
  .nav-drop-list{position:absolute;left:calc(-14 * var(--u));top:calc(100% + 10px);min-width:260px;padding:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--shadow-card);}
}

/* Einstieg */
.hero{position:relative;z-index:2;}
.hero::before{content:"";position:absolute;inset:-80px 0 0;z-index:-1;background:radial-gradient(46% 60% at 80% 34%,rgba(255,170,110,.13),transparent 72%),radial-gradient(40% 50% at 6% 4%,rgba(255,224,190,.32),transparent 70%);pointer-events:none;}
.hero-frame{padding:clamp(20px,5vw,40px) var(--gutter) clamp(40px,8vw,64px);}
.chip-rating{display:inline-flex;align-items:center;gap:.7em;min-height:44px;padding:.35em 1.1em .35em .9em;border-radius:999px;background:var(--sand);color:var(--ink);font-weight:500;font-size:.98rem;text-decoration:none;transition:background-color .2s;}
.chip-rating:hover{background:var(--sand-deep);}
.chip-rating .stars{font-size:1.2em;}
.hero h1{margin-top:20px;font-weight:800;font-size:clamp(2.15rem,8.6vw,3.6rem);line-height:1.12;letter-spacing:-.04em;}
.hero h1 br{display:none;}
.swoosh{position:relative;white-space:nowrap;}
.swoosh::after{content:"";position:absolute;left:-.03em;right:-.05em;top:1.27em;height:.42em;border-top:.19em solid var(--orange);border-radius:50%;transform:rotate(-1.1deg);pointer-events:none;}
.hero-lead{margin-top:22px;font-size:clamp(1.1rem,4.4vw,1.3rem);line-height:1.5;color:var(--ink-2);max-width:34em;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.hero-actions .btn{flex:1 1 240px;min-height:60px;}
.hero-facts{display:flex;flex-wrap:wrap;gap:.35em 1.1em;margin-top:22px;font-weight:600;font-size:.98rem;color:var(--ink);}
.hero-facts li{display:inline-flex;align-items:center;gap:.5em;}
.hero-facts svg{width:1.2em;height:1.2em;color:var(--orange);flex:none;}

/* Fundstellen: Beispiel-Karten */
.finds{--u:1px;display:flex;align-items:flex-start;gap:16px;margin:36px calc(-1 * var(--gutter)) 0;padding:6px var(--gutter) 34px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;}
.finds::-webkit-scrollbar{display:none;}
.find{position:relative;flex:none;scroll-snap-align:center;background:var(--card);border-radius:calc(28 * var(--u));box-shadow:var(--shadow-card);color:#1E1D1B;font-family:var(--f-text);}
.tag-bsp{position:absolute;z-index:3;top:calc(5 * var(--u));right:calc(11 * var(--u));display:inline-flex;align-items:center;justify-content:center;height:calc(30 * var(--u));padding:0 calc(13 * var(--u));border-radius:999px;background:#F7ECDD;color:#3D3B38;font-family:var(--f-display);font-weight:600;font-size:calc(13.6 * var(--u));line-height:1;}
.ki-label{position:absolute;z-index:2;right:calc(6 * var(--u));bottom:calc(6 * var(--u));padding:.32em .6em;border-radius:999px;font-family:var(--f-text);font-weight:600;font-size:max(8.5px,calc(9.6 * var(--u)));line-height:1;letter-spacing:.02em;white-space:nowrap;}
.ki-label.on-dark{background:rgba(22,14,8,.62);color:#fff;}
.ki-label.on-light{background:rgba(255,255,255,.86);color:#33312E;}

.find-search{width:calc(275.5 * var(--u));padding:calc(31 * var(--u)) calc(17 * var(--u)) calc(22 * var(--u));}
.fs-brand{display:flex;align-items:center;gap:calc(9 * var(--u));font-size:calc(21.5 * var(--u));font-weight:500;letter-spacing:-.01em;line-height:calc(32 * var(--u));}
.fs-mark{width:calc(26 * var(--u));height:calc(26 * var(--u));padding:calc(5 * var(--u));border-radius:50%;background:var(--blue-soft);color:var(--blue);}
.fs-field{display:flex;align-items:center;gap:calc(9 * var(--u));height:calc(40 * var(--u));margin-top:calc(10 * var(--u));padding:0 calc(13 * var(--u));border:calc(1.5 * var(--u)) solid #E4E2DD;border-radius:999px;font-size:calc(14.6 * var(--u));}
.fs-field svg{width:calc(16 * var(--u));height:calc(16 * var(--u));color:#5F5D59;flex:none;}
.fs-field span{flex:1;white-space:nowrap;overflow:hidden;}
.fs-tabs{display:flex;gap:calc(27 * var(--u));margin-top:calc(19 * var(--u));padding:0 calc(7 * var(--u)) calc(10 * var(--u));font-size:calc(14 * var(--u));line-height:calc(18 * var(--u));color:#5F5D59;}
.fs-tabs .on{position:relative;color:var(--blue);font-weight:600;}
.fs-tabs .on::after{content:"";position:absolute;left:calc(-7 * var(--u));right:calc(-7 * var(--u));bottom:calc(-10 * var(--u));height:calc(2.5 * var(--u));border-radius:2px;background:var(--blue);}
.fs-result{margin-top:calc(18 * var(--u));padding:0 calc(4 * var(--u));}
.fs-title{font-size:calc(15.4 * var(--u));line-height:1.3;white-space:nowrap;font-weight:500;color:var(--blue);letter-spacing:-.01em;}
.fs-stars{display:flex;align-items:center;gap:calc(6 * var(--u));margin-top:calc(8 * var(--u));font-size:calc(14.4 * var(--u));line-height:calc(18 * var(--u));}
.fs-meta{margin-top:calc(6 * var(--u));font-size:calc(14 * var(--u));line-height:calc(18 * var(--u));color:#77756F;white-space:nowrap;}
.fs-desc{margin-top:calc(4 * var(--u));font-size:calc(14.2 * var(--u));line-height:1.36;}

.find-map{width:calc(233.3 * var(--u));padding-bottom:calc(15 * var(--u));overflow:hidden;}
.fm-map{position:relative;height:calc(127 * var(--u));overflow:hidden;}
.fm-map img{width:100%;height:100%;object-fit:cover;}
.fm-pin{position:absolute;left:calc(72 * var(--u));top:calc(46 * var(--u));display:flex;align-items:center;gap:calc(4 * var(--u));color:#1E1D1B;font-weight:600;font-size:calc(15.4 * var(--u));line-height:1.02;}
.fm-pin svg{width:calc(26 * var(--u));height:calc(32 * var(--u));color:var(--orange);flex:none;}
.fm-pin small{display:block;font-weight:400;font-size:calc(11.6 * var(--u));margin-top:calc(2 * var(--u));}
.fm-info{padding:calc(12 * var(--u)) calc(15 * var(--u)) 0;}
.fm-name{font-size:calc(19.6 * var(--u));line-height:calc(26 * var(--u));font-weight:600;letter-spacing:-.015em;white-space:nowrap;}
.fm-rate{display:flex;align-items:center;gap:calc(5 * var(--u));margin-top:calc(5 * var(--u));font-size:calc(14.4 * var(--u));line-height:calc(18 * var(--u));}
.fm-meta{margin-top:calc(8 * var(--u));font-size:calc(11.8 * var(--u));line-height:calc(16 * var(--u));white-space:nowrap;}
.fm-actions{display:grid;grid-template-columns:repeat(3,1fr);margin:calc(14 * var(--u)) calc(11 * var(--u)) 0;text-align:center;font-size:calc(13.6 * var(--u));line-height:calc(18 * var(--u));}
.fm-actions i{display:grid;place-items:center;width:calc(38 * var(--u));height:calc(38 * var(--u));margin:0 auto calc(8 * var(--u));border:calc(1.5 * var(--u)) solid #E4E2DD;border-radius:50%;color:var(--blue);}
.fm-actions svg{width:calc(18 * var(--u));height:calc(18 * var(--u));}
.fm-call{display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));height:calc(46 * var(--u));margin:calc(13 * var(--u)) calc(15 * var(--u)) 0;border-radius:999px;background:var(--blue-soft);color:var(--blue);font-weight:600;font-size:calc(16.4 * var(--u));}
.fm-call svg{width:calc(18 * var(--u));height:calc(18 * var(--u));}

.find-phone{width:calc(265.6 * var(--u));height:calc(465.6 * var(--u));padding:calc(8.4 * var(--u));border-radius:calc(48 * var(--u));border:calc(2.6 * var(--u)) solid transparent;background:linear-gradient(#141312,#141312) padding-box,linear-gradient(140deg,#CFC4B4 0,#6F665B 20%,#E6DDCF 46%,#5A534B 70%,#BDB2A2 100%) border-box;box-shadow:var(--shadow-card);}
.fp-screen{position:relative;height:100%;border-radius:calc(38 * var(--u));background:#fff;overflow:hidden;}
.fp-notch{position:absolute;z-index:4;left:50%;top:calc(9 * var(--u));width:calc(74 * var(--u));height:calc(20 * var(--u));margin-left:calc(-52 * var(--u));border-radius:999px;background:#151413;}
.find-phone .tag-bsp{top:calc(15 * var(--u));right:calc(17 * var(--u));}
.fp-head{display:flex;align-items:center;gap:calc(9 * var(--u));height:calc(95 * var(--u));padding:calc(36 * var(--u)) calc(14 * var(--u)) 0 calc(14 * var(--u));font-weight:600;font-size:calc(15.6 * var(--u));line-height:1.12;letter-spacing:-.01em;}
.fp-head svg{flex:none;}
.fp-flame{width:calc(26 * var(--u));height:calc(34 * var(--u));color:var(--orange);}
.fp-menu{width:calc(22 * var(--u));height:calc(22 * var(--u));margin-left:auto;color:#55534F;}
.fp-photo{position:relative;height:calc(177 * var(--u));background:#4B4A47;overflow:hidden;}
.fp-photo img{width:100%;height:100%;object-fit:cover;object-position:78% 30%;}
.fp-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,30,28,.72) 0,rgba(32,30,28,.5) 42%,rgba(32,30,28,0) 72%);}
.fp-photo p{position:absolute;z-index:1;left:calc(11 * var(--u));top:calc(41 * var(--u));color:#fff;font-weight:600;font-size:calc(20.4 * var(--u));line-height:1.345;letter-spacing:-.012em;}
.fp-checks{padding:calc(12 * var(--u)) calc(16 * var(--u)) 0;font-size:calc(14.2 * var(--u));line-height:calc(26.3 * var(--u));}
.fp-checks li{display:flex;align-items:center;gap:calc(8 * var(--u));white-space:nowrap;}
.fp-checks svg{width:calc(16 * var(--u));height:calc(16 * var(--u));color:var(--orange);flex:none;}
.fp-call{display:flex;align-items:center;justify-content:center;gap:calc(9 * var(--u));height:calc(53 * var(--u));margin:calc(11 * var(--u)) calc(17 * var(--u)) 0;border-radius:999px;background:var(--orange);color:var(--on-orange);font-family:var(--f-display);font-weight:600;font-size:calc(17.4 * var(--u));}
.fp-call svg{width:calc(19 * var(--u));height:calc(19 * var(--u));}

.find-ai{width:calc(349 * var(--u));padding:calc(13 * var(--u)) calc(17 * var(--u)) calc(19 * var(--u));}
.fa-head{display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(37 * var(--u));font-family:var(--f-display);font-weight:600;font-size:calc(18.6 * var(--u));letter-spacing:-.015em;}
.fa-mark{width:calc(30 * var(--u));height:calc(30 * var(--u));padding:calc(5 * var(--u));border-radius:50%;background:#EEEDE9;color:#1E1D1B;}
.fa-q{width:calc(270 * var(--u));margin:calc(5 * var(--u)) 0 0 calc(35 * var(--u));padding:calc(11 * var(--u)) calc(15 * var(--u));border-radius:calc(20 * var(--u));background:var(--bubble);font-size:calc(14.8 * var(--u));line-height:1.36;}
.fa-a{display:flex;gap:calc(19 * var(--u));margin-top:calc(11 * var(--u));font-size:calc(15 * var(--u));line-height:calc(21.2 * var(--u));}
.fa-a svg{width:calc(22 * var(--u));height:calc(22 * var(--u));flex:none;color:#1E1D1B;margin-top:calc(1 * var(--u));}
.fa-a b{color:var(--blue);font-weight:600;}

.find-inquiry{display:flex;align-items:center;gap:calc(18 * var(--u));width:calc(373.3 * var(--u));height:calc(120 * var(--u));padding:0 calc(18 * var(--u));}
.fi-ico{position:relative;display:grid;place-items:center;width:calc(63 * var(--u));height:calc(60 * var(--u));margin-top:calc(8 * var(--u));border-radius:calc(15 * var(--u));background:var(--orange-tint);color:var(--orange);flex:none;}
.fi-ico > svg{width:calc(34 * var(--u));height:calc(34 * var(--u));}
.fi-spark{position:absolute;left:calc(46 * var(--u));top:calc(-21 * var(--u));width:calc(26 * var(--u));height:calc(24 * var(--u));color:var(--orange);}
.fi-text{font-family:var(--f-display);font-size:calc(19.6 * var(--u));line-height:1.26;letter-spacing:-.02em;color:var(--ink);font-weight:600;}
.fi-text b{display:block;font-weight:800;}
.fi-text small{display:block;margin-top:calc(6 * var(--u));font-family:var(--f-text);font-weight:400;font-size:calc(14.2 * var(--u));letter-spacing:0;color:#6E6A63;white-space:nowrap;}
.find-inquiry .tag-bsp{top:calc(10 * var(--u));right:calc(12 * var(--u));}

@media (min-width:1160px){
  .hero-frame{position:relative;width:calc(1440 * var(--u));height:calc(683 * var(--u));margin-inline:auto;padding:0;}
  .hero-copy{position:absolute;left:calc(42 * var(--u));top:0;width:calc(610 * var(--u));}
  .hero .chip-rating{min-height:0;height:calc(51 * var(--u));margin:calc(41 * var(--u)) 0 0 calc(-2 * var(--u));padding:0 calc(22 * var(--u)) 0 calc(18 * var(--u));gap:calc(14 * var(--u));font-size:calc(18.4 * var(--u));}
  .hero .chip-rating .stars{font-size:calc(22 * var(--u));gap:calc(1.5 * var(--u));}
  .hero h1{margin-top:calc(13 * var(--u));font-size:calc(56.6 * var(--u));line-height:calc(67.6 * var(--u));word-spacing:-.015em;white-space:nowrap;}
  .hero h1 br{display:inline;}
  .hero-lead{margin-top:calc(40 * var(--u));font-size:calc(22.6 * var(--u));line-height:calc(31.9 * var(--u));max-width:none;width:calc(540 * var(--u));}
  .hero-actions{flex-wrap:nowrap;gap:calc(11 * var(--u));margin:calc(42 * var(--u)) 0 0 calc(-2 * var(--u));}
  .hero-actions .btn{flex:none;min-height:0;height:calc(81 * var(--u));padding:0 calc(20 * var(--u));font-size:calc(18.9 * var(--u));line-height:1.3;}
  .hero-actions .btn-orange{width:calc(332 * var(--u));}
  .hero-actions .btn-line{width:calc(268 * var(--u));}
  .hero-facts{flex-wrap:nowrap;gap:0;margin-top:calc(24 * var(--u));font-size:calc(16.4 * var(--u));line-height:calc(23 * var(--u));font-stretch:94%;white-space:nowrap;}
  .hero-facts li+li::before{content:"·";margin:0 .45em;}
  .hero-facts li:not(:first-child) svg{display:none;}
  .hero-facts li{gap:0;}
  .hero-facts li:first-child svg{margin-right:calc(12 * var(--u));}
  .hero-facts svg{width:calc(24 * var(--u));height:calc(24 * var(--u));}
  .finds{--u:clamp(.79px,calc((100vw - 17px) / 1440),1.2px);position:absolute;inset:0;display:block;margin:0;padding:0;overflow:visible;pointer-events:none;}
  .find{position:absolute;}
  .find-search{left:calc(626.7 * var(--u));top:calc(29.7 * var(--u));height:calc(331 * var(--u));}
  .find-map{left:calc(915.6 * var(--u));top:calc(24.1 * var(--u));height:calc(352.2 * var(--u));}
  .find-phone{left:calc(1160 * var(--u));top:calc(25.2 * var(--u));}
  .find-ai{left:calc(665.6 * var(--u));top:calc(380.8 * var(--u));height:calc(263.3 * var(--u));}
  .find-inquiry{left:calc(1036.7 * var(--u));top:calc(515.2 * var(--u));}
}

/* Bewegung im Einstieg: die Fundstellen kommen in der Reihenfolge des Kundenwegs */
@media (prefers-reduced-motion:no-preference) and (min-width:1160px){
  .find{animation:find-in .9s var(--ease) both,find-float 9s ease-in-out infinite;}
  .find-search{animation-delay:.15s,1.2s;}
  .find-map{animation-delay:.4s,1.9s;animation-duration:.9s,10.5s;}
  .find-ai{animation-delay:.7s,2.4s;animation-duration:.9s,11s;}
  .find-phone{animation-delay:1s,1.5s;animation-duration:.9s,12s;}
  .find-inquiry{animation:find-pop 1s var(--ease) 1.5s both,find-float 9.5s ease-in-out 2.8s infinite;}
  .fi-spark{animation:spark 1.6s var(--ease) 2.2s both;transform-origin:10% 100%;}
}
@keyframes find-in{from{opacity:0;translate:0 26px;filter:blur(6px);}to{opacity:1;translate:0 0;filter:blur(0);}}
@keyframes find-pop{0%{opacity:0;translate:0 18px;scale:.92;}60%{opacity:1;scale:1.03;}100%{opacity:1;translate:0 0;scale:1;}}
@keyframes find-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@keyframes spark{0%{opacity:0;scale:.3;}40%{opacity:1;scale:1.25;}100%{opacity:1;scale:1;}}

/* Abschnitte */
.section{position:relative;padding-block:var(--section-y);}
.section-sand{background:var(--sand);}
.section-head{display:grid;gap:18px;margin-bottom:clamp(36px,5vw,64px);}
@media (min-width:900px){.section-head{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:end;}}
.section-head.center{display:block;text-align:center;}
.section-head.center .lead{margin:18px auto 0;}

/* Problem: Sandband mit geschwungener Kante direkt unter dem Einstieg */
.problem{background:var(--sand);padding-top:clamp(56px,7vw,76px);text-align:center;}
.problem::before,.problem::after{content:"";position:absolute;z-index:0;bottom:calc(100% - 1px);height:clamp(16px,2.1vw,36px);background:var(--sand);pointer-events:none;}
.problem::before{left:-12%;width:64%;border-radius:55% 45% 0 0 / 100% 100% 0 0;}
.problem::after{right:-14%;width:72%;height:clamp(11px,1.5vw,25px);border-radius:50% 50% 0 0 / 100% 100% 0 0;}
.problem{z-index:1;}
.problem .wrap{position:relative;z-index:1;}
.problem-text{display:grid;gap:24px;margin-top:clamp(36px,5vw,60px);text-align:left;font-size:clamp(1.08rem,1.35vw,1.22rem);line-height:1.6;}
@media (min-width:860px){.problem-text{grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);}}
.punch{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 28px;margin-top:clamp(40px,5vw,64px);padding:clamp(22px,3vw,30px) clamp(22px,4vw,44px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);text-align:left;}
.punch strong{font-family:var(--f-display);font-weight:700;font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.3;letter-spacing:-.025em;color:var(--ink);}
@media (min-width:1160px){.problem{padding-top:calc(36 * var(--u));}.problem h2{font-size:calc(44 * var(--u));white-space:nowrap;}}

/* Leistungen */
.svc-main{display:grid;gap:20px;}
@media (min-width:900px){.svc-main{grid-template-columns:repeat(3,1fr);}}
.svc{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:clamp(24px,2.6vw,34px);border-radius:var(--r-card);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft);transition:transform .4s var(--ease),box-shadow .4s var(--ease);}
.svc:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);}
.svc-top{display:flex;align-items:flex-start;gap:14px;}
.svc-ico{flex:none;margin-top:.1em;color:var(--orange);}
.svc-ico svg{width:34px;height:34px;}
.svc h3 span{display:block;margin-top:.35em;font-family:var(--f-text);font-weight:500;font-size:1.04rem;line-height:1.35;letter-spacing:0;color:var(--ink-3);}
.svc p{font-size:1.02rem;}
.svc .more{margin-top:auto;}
.svc-extra{display:grid;gap:20px;margin-top:20px;}
@media (min-width:900px){.svc-extra{grid-template-columns:1fr 1fr;}}
.svc-extra .svc{background:var(--paper);box-shadow:none;}
.svc-extra-label{margin:clamp(36px,4vw,52px) 0 18px;font-family:var(--f-display);font-weight:600;color:var(--ink-3);}

/* KI-Test */
.kitest-grid{display:grid;gap:clamp(32px,5vw,72px);align-items:center;}
@media (min-width:980px){.kitest-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);}}
.kitest-copy p{margin-top:18px;max-width:52ch;}
.kitest-copy .btn{margin-top:28px;}
.ki-tool{padding:clamp(22px,3vw,36px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-card);}
.ki-fields{display:grid;gap:16px;}
@media (min-width:560px){.ki-fields{grid-template-columns:1fr 1fr;}}
.field label,.ki-fields label{display:block;margin-bottom:7px;font-weight:600;font-size:.95rem;color:var(--ink);}
.field input,.field textarea,.field select,.ki-fields input{width:100%;min-height:54px;padding:.75em 1.05em;border:1.5px solid var(--line-strong);border-radius:16px;background:#fff;color:var(--ink);font:inherit;transition:border-color .2s,box-shadow .2s;}
.field textarea{min-height:110px;resize:vertical;}
.field input::placeholder,.field textarea::placeholder,.ki-fields input::placeholder{color:#77736B;}
.field input:hover,.field textarea:hover,.field select:hover,.ki-fields input:hover{border-color:var(--ink-3);}
.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible,.ki-fields input:focus-visible{outline:none;border-color:var(--orange);box-shadow:0 0 0 4px var(--orange-soft);}
.ki-bubble{position:relative;margin-top:22px;padding:clamp(18px,2.4vw,26px);border-radius:24px 24px 24px 6px;background:var(--sand);font-family:var(--f-display);font-weight:600;font-size:clamp(1.12rem,1.9vw,1.42rem);line-height:1.32;letter-spacing:-.02em;color:var(--ink);}
.ki-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;}
.ki-actions .btn{flex:1 1 200px;}
.ki-status{min-height:1.5em;margin-top:12px;font-size:.95rem;color:var(--ink-3);}

/* Für wen */
.chips{display:flex;flex-wrap:wrap;gap:10px;}
.chips li{padding:.6em 1.15em;border-radius:999px;background:var(--card);border:1px solid var(--line);font-weight:500;color:var(--ink);}
.audience-grid{display:grid;gap:clamp(28px,4vw,56px);}
@media (min-width:900px){.audience-grid{grid-template-columns:1fr 1fr;}}
.audience-grid h3{margin-bottom:16px;}
.cities li{background:var(--sand);border-color:transparent;}
.cities li:first-child{background:var(--night);color:var(--on-night);}
.audience-note{margin-top:20px;color:var(--ink-3);max-width:48ch;}

/* Ablauf */
.timeline{display:grid;gap:18px;counter-reset:none;}
.timeline li{position:relative;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
.timeline .when{display:inline-flex;align-items:center;gap:.5em;margin:0 0 14px;padding:.38em .95em;border-radius:999px;background:var(--sand);color:var(--ink);font-family:var(--f-display);font-weight:600;font-size:.92rem;line-height:1.2;}
.timeline h3{margin-bottom:10px;}
.timeline p{font-size:1.02rem;}
@media (min-width:1000px){
  .timeline{grid-template-columns:repeat(4,1fr);gap:20px;}
  .timeline li:not(:last-child)::after{content:"";position:absolute;top:calc(clamp(22px,2.4vw,30px) + 13px);left:calc(100% - 4px);width:28px;height:0;border-top:2px dotted var(--line-strong);}
}
.after-cta{margin-top:clamp(32px,4vw,48px);text-align:center;}

/* Pakete */
.packs{display:grid;gap:20px;align-items:stretch;}
@media (min-width:940px){.packs{grid-template-columns:repeat(3,1fr);}}
.pack{display:flex;flex-direction:column;padding:clamp(26px,2.8vw,36px);border-radius:var(--r-card);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft);}
.pack h3{font-weight:800;font-size:clamp(1.8rem,2.6vw,2.2rem);letter-spacing:-.04em;}
.pack h3 b{color:var(--orange);}
.pack .tagline{margin-top:10px;min-height:3.1em;color:var(--ink-3);}
.pack ul{display:grid;gap:11px;margin:22px 0 26px;padding-top:22px;border-top:1px solid var(--line);}
.pack li{display:flex;gap:.7em;align-items:flex-start;color:var(--ink);}
.pack li svg{width:1.25em;height:1.25em;margin-top:.18em;color:var(--orange);flex:none;}
.pack .price{margin-top:auto;font-family:var(--f-display);font-weight:600;color:var(--ink);}
.pack .btn{margin-top:16px;width:100%;}
.pack-pro{background:var(--night);border-color:var(--night);color:var(--on-night-2);}
.pack-pro h3,.pack-pro li,.pack-pro .price{color:var(--on-night);}
.pack-pro .tagline{color:var(--on-night-2);}
.pack-pro ul{border-color:var(--night-line);}
.pack-pro :focus-visible{outline-color:var(--on-night);}
.pack-pro .btn-orange{box-shadow:none;}
.guarantee{display:flex;gap:18px;align-items:flex-start;margin-top:24px;padding:clamp(20px,2.6vw,28px) clamp(20px,3vw,32px);border-radius:var(--r-card);background:var(--sand);color:var(--ink);font-size:1rem;}
.guarantee svg{width:34px;height:34px;color:var(--orange);flex:none;}
.guarantee strong{font-family:var(--f-display);font-weight:700;}

/* Bewertungen */
.reviews-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px;margin-bottom:clamp(28px,4vw,44px);}
.reviews-summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 20px;border-radius:999px;background:var(--card);box-shadow:var(--shadow-soft);color:var(--ink);}
.reviews-summary .g-logo{width:22px;height:22px;}
.reviews-score{font-family:var(--f-display);font-weight:700;font-size:1.2rem;}
.reviews-summary .stars{font-size:1.15rem;}
.reviews-all{font-weight:600;}
.reviews-rail{position:relative;}
.reviews-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding:6px var(--gutter) 28px;scrollbar-width:none;}
.reviews-track::-webkit-scrollbar{display:none;}
.review-card{flex:0 0 min(86%,380px);scroll-snap-align:start;display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
@media (min-width:1000px){.review-card{flex:1 1 0;min-width:300px;}}
.rc-who{display:flex;flex-direction:column;}
.rc-name{font-family:var(--f-display);font-weight:700;font-size:1.08rem;color:var(--ink);text-decoration:none;}
a.rc-name:hover{text-decoration:underline;}
.rc-date{font-size:.9rem;color:var(--ink-3);}
.review-card .stars{font-size:1.1rem;}
.rc-text{white-space:pre-line;font-size:1.01rem;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden;}
.review-card.is-open .rc-text{display:block;}
.rc-more{align-self:flex-start;margin-top:auto;padding:.3em 0;background:none;border:0;font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:.25em;cursor:pointer;}
.reviews-controls{display:flex;gap:10px;justify-content:flex-end;}
.reviews-controls[hidden]{display:none;}
.reviews-nav{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--card);color:var(--ink);cursor:pointer;transition:border-color .2s,opacity .2s;}
.reviews-nav:hover{border-color:var(--ink);}
.reviews-nav[disabled]{opacity:.4;cursor:default;}
.reviews-nav svg{width:20px;height:20px;}
.reviews-prev svg{transform:rotate(180deg);}
.reviews-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;margin-top:18px;}
.reviews-note{max-width:70ch;font-size:.92rem;color:var(--ink-3);}

/* Über mich */
.about-grid{display:grid;gap:clamp(32px,5vw,72px);align-items:start;}
@media (min-width:980px){.about-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);}}
.about-card{padding:clamp(24px,3vw,36px);border-radius:var(--r-card);background:var(--sand);}
.about-who{display:flex;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid var(--line-strong);}
.about-mono{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:var(--night);color:var(--on-night);font-family:var(--f-display);font-weight:700;font-size:1.45rem;letter-spacing:-.03em;flex:none;}
.about-mono b{color:var(--orange);}
.about-who strong{display:block;font-family:var(--f-display);font-weight:700;font-size:1.25rem;line-height:1.2;color:var(--ink);}
.about-who p span{display:block;font-size:.96rem;line-height:1.45;color:var(--ink-3);}
.about-facts{display:grid;gap:14px;margin:22px 0 0;}
.about-facts dt{font-size:.9rem;color:var(--ink-3);}
.about-facts dd{margin:2px 0 0;font-weight:600;color:var(--ink);}
.about-copy h2{margin-bottom:24px;}
.about-copy p{font-size:1.08rem;max-width:62ch;}

/* Fragen */
.faq{max-width:900px;margin-inline:auto;}
.faq details{border-radius:22px;background:var(--card);box-shadow:var(--shadow-soft);}
.faq details+details{margin-top:12px;}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px clamp(20px,3vw,30px);font-family:var(--f-display);font-weight:600;font-size:clamp(1.06rem,1.5vw,1.2rem);line-height:1.3;letter-spacing:-.015em;color:var(--ink);cursor:pointer;list-style:none;border-radius:22px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"";flex:none;width:34px;height:34px;border-radius:50%;background:var(--sand) linear-gradient(var(--ink),var(--ink)) center/14px 2px no-repeat;background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink));background-size:14px 2px,2px 14px;background-position:center;background-repeat:no-repeat;transition:transform .35s var(--ease),background-color .2s;}
.faq details[open] summary::after{transform:rotate(45deg);background-color:var(--orange);}
.faq .answer{padding:0 clamp(20px,3vw,30px) 26px;max-width:70ch;}

/* Kontakt mit Anfrage zum Durchklicken */
.contact{background:var(--night);color:var(--on-night-2);}
.contact h2,.contact h3{color:var(--on-night);}
.contact .lead{color:var(--on-night-2);}
.contact-grid{display:grid;gap:24px;align-items:start;}
@media (min-width:1000px){.contact-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;}}
.wizard{padding:clamp(22px,3.2vw,40px);border-radius:var(--r-card);background:var(--card);color:var(--ink-2);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);}
.wizard fieldset{margin:0;padding:0;border:0;min-width:0;}
.wizard fieldset+fieldset{margin-top:34px;}
.wizard.is-wizard fieldset+fieldset{margin-top:0;}
.wizard legend{padding:0;margin-bottom:20px;font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;letter-spacing:-.035em;color:var(--ink);}
.wizard legend:focus{outline:none;}
.wiz-top{display:none;align-items:center;gap:16px;margin-bottom:22px;}
.is-wizard .wiz-top{display:flex;}
.wiz-count{flex:none;font-weight:600;font-size:.95rem;color:var(--ink);}
.wiz-bar{flex:1;height:10px;border-radius:999px;background:var(--sand);overflow:hidden;}
.wiz-bar span{display:block;height:100%;width:33.33%;border-radius:999px;background:var(--orange);transition:width .5s var(--ease);}
.opts{display:grid;gap:12px;}
@media (min-width:620px){.opts{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1200px){.opts-need{grid-template-columns:repeat(3,1fr);}}
.opt{position:relative;display:flex;align-items:center;gap:14px;min-height:64px;padding:14px 18px;border:1.5px solid var(--line-strong);border-radius:20px;background:#fff;font-family:var(--f-display);font-weight:600;font-size:1.02rem;line-height:1.3;letter-spacing:-.012em;color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s,transform .3s var(--ease),box-shadow .3s var(--ease);}
.opt:hover{border-color:var(--ink);transform:translateY(-2px);}
.opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer;}
.opt:has(input:checked){border-color:var(--orange);background:var(--orange-tint);box-shadow:0 0 0 3px var(--orange-soft);}
.opt:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px;}
.opt-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--sand);color:var(--ink);flex:none;transition:background-color .2s,color .2s;}
.opt:has(input:checked) .opt-ico{background:var(--orange);color:var(--on-orange);}
.opt-ico svg{width:24px;height:24px;}
@media (min-width:1200px){.opts-need .opt{flex-direction:column;justify-content:center;text-align:center;min-height:136px;padding:18px 12px;}.opts-need .opt-ico{width:56px;height:56px;border-radius:16px;}.opts-need .opt-ico svg{width:30px;height:30px;}}
.opts-chips{display:flex;flex-wrap:wrap;gap:10px;}
.opts-chips .opt{min-height:50px;padding:10px 20px;border-radius:999px;font-size:.98rem;}
.wiz-fields{display:grid;gap:16px;}
@media (min-width:620px){.wiz-fields{grid-template-columns:1fr 1fr;}.wiz-fields .full{grid-column:1/-1;}}
.field .err{display:block;min-height:0;margin-top:6px;font-size:.92rem;font-weight:600;color:#B3261E;}
.field.has-error input{border-color:#B3261E;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-note{font-size:.92rem;color:var(--ink-3);}
.wiz-nav{display:none;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;}
.is-wizard .wiz-nav{display:flex;}
.wiz-nav [hidden]{display:none;}
.wiz-nav .btn-orange{margin-left:auto;min-width:170px;}
.wiz-submit{margin-top:8px;}
.is-wizard .wiz-submit{display:none;}
.form-status{min-height:1.4em;margin-top:14px;font-weight:600;}
.form-status.is-error{color:#B3261E;}
.form-status.is-success{color:#1F6B3A;}
.wiz-done{padding:clamp(28px,4vw,48px);border-radius:var(--r-card);background:var(--card);color:var(--ink-2);text-align:center;}
.wiz-done[hidden]{display:none;}
.wiz-done svg{width:60px;height:60px;margin:0 auto 16px;padding:14px;border-radius:50%;background:var(--orange);color:var(--on-orange);}
.wiz-done h3{color:var(--ink);font-size:1.6rem;margin-bottom:10px;}
.side{display:grid;gap:16px;}
.side-card{padding:clamp(22px,2.6vw,30px);border-radius:var(--r-card);background:var(--night-2);border:1px solid var(--night-line);}
.side-card h3{margin-bottom:14px;}
.direct{display:grid;gap:4px;}
.direct a{display:flex;align-items:center;gap:14px;min-height:48px;color:var(--on-night);font-weight:600;text-decoration:none;}
.direct a:hover{text-decoration:underline;text-decoration-color:var(--orange);}
.direct svg{width:22px;height:22px;color:var(--orange);flex:none;}
.contact :focus-visible{outline-color:var(--on-night);}
.contact .wizard :focus-visible{outline-color:var(--ink);}

/* Fußzeile */
.site-foot{background:var(--night);color:var(--on-night-2);padding:clamp(44px,6vw,72px) 0 calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--night-line);}
.site-foot .brand{color:var(--on-night);font-size:2.3rem;}
.foot-grid{display:grid;gap:36px 48px;}
@media (min-width:760px){.foot-grid{grid-template-columns:repeat(3,1fr);}}
@media (min-width:1100px){.foot-grid{grid-template-columns:1.2fr 1fr 1fr 1fr 1.3fr;}}
.foot-about p{margin-top:16px;max-width:30ch;}
.site-foot h3{margin-bottom:14px;font-size:1rem;font-weight:600;letter-spacing:0;color:var(--on-night);}
.site-foot li+li{margin-top:9px;}
.site-foot a,.site-foot button{color:var(--on-night-2);text-decoration:none;background:none;border:0;padding:0;cursor:pointer;text-align:left;}
.site-foot a:hover,.site-foot button:hover{color:var(--on-night);text-decoration:underline;text-decoration-color:var(--orange);}
.site-foot address{font-style:normal;line-height:1.7;}
.foot-legal{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:clamp(36px,5vw,56px);padding-top:24px;border-top:1px solid var(--night-line);font-size:.95rem;}
.foot-legal span{margin-right:auto;}
.site-foot :focus-visible{outline-color:var(--on-night);}

/* Feste Leiste auf dem Handy */
.mobile-bar{position:fixed;z-index:40;left:0;right:0;bottom:0;display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(251,249,245,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -1px 0 var(--line);}
.mobile-bar .btn{flex:1;min-height:50px;padding:.5em 1em;}
@media (max-width:1159px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom));}}
@media (min-width:1160px){.mobile-bar{display:none;}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
}

/* Unterseiten: Leistungsseiten, Website-Check, Entwurf-Seite, Rechtstexte */
.page-hero{position:relative;padding:clamp(36px,6vw,84px) 0 clamp(56px,7vw,96px);}
.page-hero::before{content:"";position:absolute;inset:-80px 0 0;z-index:-1;background:radial-gradient(46% 70% at 82% 30%,rgba(255,170,110,.13),transparent 72%),radial-gradient(40% 60% at 6% 4%,rgba(255,224,190,.32),transparent 70%);pointer-events:none;}
.page-hero h1{font-weight:800;font-size:clamp(2.1rem,5.2vw,3.7rem);line-height:1.1;letter-spacing:-.04em;max-width:24ch;}
.page-hero .lead{margin-top:22px;font-size:clamp(1.1rem,1.5vw,1.3rem);}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;}
.facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
.facts li{padding:.55em 1.15em;border-radius:999px;background:var(--sand);font-weight:600;color:var(--ink);}
.facts li > a{display:block;margin:-.55em -1.15em;padding:.55em 1.15em;border-radius:inherit;color:inherit;}
.page-hero .chip-rating{margin-top:22px;}
.section-deep{background:var(--sand);}
.section-deep .facts li,.section-deep .chips li{background:var(--card);}
.two-col{display:grid;gap:clamp(32px,5vw,72px);align-items:start;}
@media (min-width:900px){.two-col{grid-template-columns:1fr 1fr;}}
.prose{max-width:70ch;}
.two-col .prose,.lead-wrap .prose{max-width:none;}
.prose h2{margin-bottom:.6em;}
.prose > h2:not(:first-child){margin-top:1.5em;}
.prose h3{margin:1.4em 0 .5em;}
.prose p,.prose li{font-size:1.06rem;}
.prose a{color:var(--ink);text-decoration-color:var(--orange);}
.strong{font-weight:600;font-size:1.12rem;color:var(--ink);}
.checklist{display:grid;gap:12px;margin-top:22px;}
.checklist li{display:flex;gap:.75em;align-items:flex-start;color:var(--ink);}
.checklist li > svg{width:1.3em;height:1.3em;margin-top:.15em;color:var(--orange);flex:none;}
.checklist li:not(:has(svg))::before{content:"";width:.55em;height:.55em;margin-top:.55em;border-radius:50%;background:var(--orange);flex:none;}
.places{font-family:var(--f-display);font-weight:600;font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.6;color:var(--ink-3);}
.places .home{color:var(--ink);}
.places .sep{color:var(--orange);}
.faq summary .pm{display:none;}
.prose .faq{max-width:none;margin-top:28px;}
.faq .answer p{font-size:1.04rem;}
.stitch{display:none;}
.cta-band{background:var(--night);color:var(--on-night-2);padding-block:clamp(56px,7vw,96px);}
.cta-band h2{color:var(--on-night);}
.cta-band .lead{margin-top:14px;color:var(--on-night-2);}
.cta-band .btn-dark{background:var(--orange);color:var(--on-orange);}
.cta-band .btn-dark:hover{background:var(--orange-hover);}
.btn-on-band{background:transparent;border-color:rgba(243,239,232,.4);color:var(--on-night);}
.btn-on-band:hover{border-color:var(--on-night);transform:translateY(-2px);}
.cta-band :focus-visible{outline-color:var(--on-night);}
.more-services{padding-block:clamp(40px,5vw,64px);}
.more-services h2{margin-bottom:16px;font-size:1.1rem;font-weight:600;letter-spacing:0;color:var(--ink-3);}
.more-services ul{display:flex;flex-wrap:wrap;gap:10px;}
.more-services a{display:inline-flex;align-items:center;min-height:46px;padding:.5em 1.2em;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--card);font-weight:600;color:var(--ink);text-decoration:none;transition:border-color .2s;}
.more-services a:hover{border-color:var(--ink);}
.more-services a[aria-current]{background:var(--night);border-color:var(--night);color:var(--on-night);}
.lead-wrap{display:grid;gap:clamp(24px,4vw,56px);align-items:start;}
@media (min-width:960px){.lead-wrap{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);}}
.patch{padding:clamp(22px,3vw,38px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-card);}
.lead-form h2{font-size:clamp(1.5rem,2.4vw,1.9rem);}
.lead-form .sub{margin-top:6px;color:var(--ink-3);}
.lead-form .fields{display:grid;gap:16px;margin-top:22px;}
.field-row{display:grid;gap:16px;align-items:start;}
@media (min-width:560px){.field-row{grid-template-columns:1fr 1fr;}}
.more-fields{display:grid;gap:14px;}
.more-fields summary{cursor:pointer;font-weight:600;color:var(--ink);}
.hint{display:block;margin-top:6px;font-size:.9rem;color:var(--ink-3);}
.field input[type="checkbox"],.field input[type="radio"]{width:22px;height:22px;min-height:0;padding:0;}
.consent{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;font-weight:400;font-size:.95rem;color:var(--ink-2);}
.field .consent{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;margin-bottom:0;font-weight:400;color:var(--ink-2);}
.form-foot{display:grid;gap:10px;}
.form-foot .btn{width:100%;}
.trust{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--ink-3);}
.trust svg{width:16px;height:16px;flex:none;}
.form-hidden{display:none;}
.lead-done{display:none;}
.lead-done.is-visible{display:block;}
.lead-done .mark{display:grid;place-items:center;width:56px;height:56px;margin-bottom:18px;border-radius:50%;background:var(--orange);}
.lead-done .mark::after{content:"";width:22px;height:12px;border-left:3px solid var(--on-orange);border-bottom:3px solid var(--on-orange);transform:rotate(-45deg) translate(2px,-2px);}
.lead-done p{margin-top:.8em;}
fieldset.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0;min-width:0;}
.chips legend{margin-bottom:8px;padding:0;font-weight:600;font-size:.95rem;color:var(--ink);}
.chip{position:relative;}
.chip input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;}
.chip span{display:inline-flex;align-items:center;min-height:44px;padding:.4em 1.05em;border:1.5px solid var(--line-strong);border-radius:999px;background:#fff;font-weight:600;font-size:.95rem;color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s;}
.chip input:checked + span{border-color:var(--orange);background:var(--orange-tint);box-shadow:0 0 0 3px var(--orange-soft);}
.chip input:focus-visible + span{outline:3px solid var(--ink);outline-offset:2px;}
.chips .err{flex-basis:100%;font-size:.9rem;font-weight:600;color:#B3261E;}
.chips.has-error .chip span{border-color:#B3261E;}
.steps-track .thread{display:none;}
.steps{display:grid;gap:18px;}
@media (min-width:900px){.steps-3{grid-template-columns:repeat(3,1fr);}}
.step{padding:clamp(22px,2.4vw,30px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
.step .num{display:grid;place-items:center;width:44px;height:44px;margin-bottom:16px;border-radius:50%;background:var(--orange);color:var(--on-orange);font-family:var(--f-display);font-weight:700;}
.step h3{margin-bottom:8px;}
.nametag{padding:clamp(24px,3vw,36px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
.nametag .who{font-family:var(--f-display);font-weight:700;font-size:1.5rem;line-height:1.2;color:var(--ink);}
.nametag .what{margin-top:6px;color:var(--ink-3);}
.nametag .strip{height:6px;margin:22px 0;border-radius:999px;background:var(--orange);}
.quote{margin:28px 0 0;padding:clamp(20px,2.6vw,28px);border-radius:var(--r-m);background:var(--card);box-shadow:var(--shadow-soft);}
.quote > p:first-child{font-family:var(--f-display);font-weight:600;font-size:1.15rem;line-height:1.4;color:var(--ink);}
.quote footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:.95rem;}
.quote-hint{margin-top:8px;font-size:.88rem;color:var(--ink-3);}
.legal h2{margin-top:2em;font-size:clamp(1.3rem,2vw,1.6rem);}
.legal ul{list-style:disc;padding-left:1.3em;}
.legal ol{list-style:decimal;padding-left:1.3em;}
.legal li+li{margin-top:.3em;}
.legal a{overflow-wrap:anywhere;}
.legal img{display:inline-block;}
.legal table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;}
.legal td,.legal th{padding:8px 12px;border:1px solid var(--line-strong);text-align:left;vertical-align:top;}
.prose:has(.faq){max-width:900px;}
@media (min-width:1160px){
  body:not(:has(.hero)) .site-head .wrap{width:auto;max-width:calc(var(--wrap) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter);}
  body:not(:has(.hero)) .brand{font-size:2.6rem;}
  body:not(:has(.hero)) .site-head .nav{gap:30px;margin-left:48px;}
  body:not(:has(.hero)) .site-head .nav > a:not(.btn),body:not(:has(.hero)) .nav-drop-btn{font-size:1.02rem;}
  body:not(:has(.hero)) .nav .head-cta{min-height:50px;padding:0 1.5em;font-size:1.02rem;}
}
.cta-band .btn-orange,.site-foot .btn-orange{box-shadow:none;}

/* Nummerierte Schritte im Fliesstext (z. B. Pflege-Seite) */
.prose ol{display:grid;gap:14px;margin:1.2em 0;padding:0;list-style:none;counter-reset:schritt;}
.prose ol > li{position:relative;padding-left:2.9em;color:var(--ink);counter-increment:schritt;}
.prose ol > li::before{content:counter(schritt);position:absolute;left:0;top:-.1em;display:grid;place-items:center;width:2em;height:2em;border-radius:50%;background:var(--orange);color:var(--on-orange);font-family:var(--f-display);font-weight:700;font-size:.95em;}
.legal ol > li{padding-left:0;color:inherit;}
.legal ol > li::before{content:none;}
.legal ol{display:block;margin:1em 0;padding-left:1.3em;list-style:decimal;}
/* Unterseiten-Feinschliff: lange Titelwoerter am Handy, Rechtstexte ohne Leerraum unter dem Einstieg */
.page-hero h1{font-size:clamp(1.85rem,5.2vw,3.7rem);overflow-wrap:break-word;hyphens:auto;}
.page-hero:has(+ .section .legal){padding-bottom:clamp(28px,3vw,44px);}
.page-hero + .section:has(.legal){padding-top:0;}
.legal ul,.legal ol{margin:.8em 0;}

/* Textseiten: Gewerk-Seiten und Ratgeber (gebaut mit seo/werkzeug/baue_seite.py) */
.crumbs{margin-bottom:22px;font-size:.92rem;color:var(--ink-3);}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.2em .55em;margin:0;padding:0;list-style:none;}
.crumbs li + li::before{content:"/";margin-right:.55em;color:var(--line-strong);}
.crumbs a{color:var(--ink-2);text-decoration:none;}
.crumbs a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);}
.byline{margin-top:18px;font-size:.95rem;color:var(--ink-3);}
.article-section{padding-top:clamp(8px,2vw,24px);}
.article{display:grid;gap:clamp(36px,5vw,80px);align-items:start;}
.article-body{max-width:68ch;}
.article-body h2{font-size:clamp(1.5rem,2.5vw,2.05rem);line-height:1.2;scroll-margin-top:96px;}
.article-body > h2:not(:first-child){margin-top:2.1em;}
.article-body h3{font-size:1.22rem;scroll-margin-top:96px;}
.article-body .checklist li > span{min-width:0;}
.article-side{display:grid;gap:18px;}
.aside-card{padding:clamp(22px,2.4vw,28px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
.aside-card h2{margin-bottom:12px;font-size:1.08rem;line-height:1.3;letter-spacing:0;}
.toc{display:none;}
.toc ol{display:grid;gap:9px;margin:0;padding:0;list-style:none;}
.toc a{display:block;font-size:.95rem;line-height:1.35;color:var(--ink-2);text-decoration:none;}
.toc a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);}
.side-cta p{font-size:.98rem;}
.side-cta .btn{width:100%;margin-top:18px;}
.side-tel{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:8px;font-weight:600;color:var(--ink);text-decoration:none;}
.side-tel svg{width:18px;height:18px;flex:none;}
@media (min-width:1040px){
  .article{grid-template-columns:minmax(0,1fr) 320px;}
  .article-side{display:block;align-self:stretch;}
  .toc{display:block;margin-bottom:18px;}
  .article-side .side-cta{position:sticky;top:96px;}
}
/* Ist das Fenster hoch genug, bleibt die ganze Randspalte stehen; sonst nur die Karte mit dem Knopf */
@media (min-width:1040px) and (min-height:920px){
  .article-side{display:grid;align-self:start;position:sticky;top:96px;}
  .toc{margin-bottom:0;}
  .article-side .side-cta{position:static;}
}
.more-services ul + h2{margin-top:28px;}
#fragen{scroll-margin-top:72px;}
.prose ul + p,.prose ol + p{margin-top:1.1em;}

/* Webdesign-Seite: Gewerke-Karten und drei Spalten */
.hero-more{margin-top:16px;max-width:62ch;}
.gewerke-section{padding-top:clamp(8px,2vw,24px);scroll-margin-top:72px;}
.gewerk-grid{display:grid;gap:18px;margin:0;padding:0;list-style:none;}
@media (min-width:700px){.gewerk-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:1080px){.gewerk-grid{grid-template-columns:repeat(3,1fr);}}
.gewerk{display:flex;flex-direction:column;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-soft);}
.gewerk h3{margin-bottom:10px;font-size:1.25rem;}
.gewerk p{font-size:1.02rem;}
.gewerk .more{align-self:flex-start;margin-top:auto;padding-top:18px;}
.gewerk-mehr{margin-top:28px;max-width:70ch;color:var(--ink-2);}
.three-col{display:grid;gap:clamp(28px,4vw,56px);align-items:start;}
@media (min-width:960px){.three-col{grid-template-columns:repeat(3,1fr);}}
.three-col .prose{max-width:none;}
.three-col h2{font-size:clamp(1.35rem,1.9vw,1.6rem);line-height:1.25;}

/* Nachbesserungen aus der Schlusspruefung vom 11.11.2026 */
/* Handy-Rahmen: Seitentasten wie im Entwurf */
.find-phone::before,.find-phone::after{content:"";position:absolute;width:calc(3 * var(--u));border-radius:calc(2 * var(--u));background:linear-gradient(90deg,#8A8175,#4A443D);}
.find-phone::before{left:calc(-5 * var(--u));top:calc(104 * var(--u));height:calc(30 * var(--u));box-shadow:0 calc(42 * var(--u)) 0 0 #6A6258;}
.find-phone::after{right:calc(-5 * var(--u));top:calc(128 * var(--u));height:calc(58 * var(--u));}
.fp-photo .ki-label{top:calc(6 * var(--u));bottom:auto;}
/* Einstieg am Handy: Fundstellen ruecken in den ersten Blick, die drei Fakten stehen darunter */
@media (max-width:1159px){
  .hero-frame{display:flex;flex-direction:column;padding-top:clamp(12px,3vw,40px);}
  .hero-copy{display:contents;}
  .chip-rating{align-self:flex-start;}
  .hero h1{margin-top:16px;}
  .hero-lead{margin-top:16px;font-size:clamp(1.05rem,4.2vw,1.3rem);}
  .hero-actions{margin-top:22px;gap:10px;}
  .hero-actions .btn{min-height:56px;}
  .finds{order:2;margin-top:26px;padding-bottom:26px;}
  .hero-facts{order:3;margin-top:0;}
}
.mobile-bar{transition:transform .3s var(--ease),opacity .3s;}
.mobile-bar.is-away{transform:translateY(110%);opacity:0;pointer-events:none;}
/* Problem: beide Spalten beginnen auf einer Linie */
.problem-text p{margin:0;}
/* Leistungen: offene Spalten mit Trennlinie statt gleich grosser Karten */
.svc-main{gap:0;}
.svc-main .svc{padding:0;border:0;border-radius:0;background:none;box-shadow:none;transition:none;}
.svc-main .svc:hover{transform:none;box-shadow:none;}
.svc-main .svc + .svc{margin-top:30px;padding-top:30px;border-top:1px solid var(--line-strong);}
.svc-main h3{font-size:clamp(1.3rem,1.8vw,1.55rem);}
@media (min-width:900px){
  .svc-main .svc{padding:4px clamp(22px,2.8vw,40px);}
  .svc-main .svc:first-child{padding-left:0;}
  .svc-main .svc:last-child{padding-right:0;}
  .svc-main .svc + .svc{margin-top:0;padding-top:4px;border-top:0;border-left:1px solid var(--line-strong);}
}
.section-sand .svc-extra .svc{background:var(--card);border-color:transparent;}
/* KI-Test: Knopf am Handy unter dem Test, am Bildschirm unter dem Text */
.kitest-grid{grid-template-areas:"text" "test" "knopf";}
.kitest-copy{grid-area:text;}
.ki-tool{grid-area:test;}
.kitest-cta{grid-area:knopf;margin:0;}
.kitest-cta .btn{width:100%;}
@media (min-width:980px){
  .kitest-grid{grid-template-areas:"text test" "knopf test";grid-template-rows:auto auto;row-gap:28px;}
  .kitest-copy{align-self:end;}
  .kitest-cta{align-self:start;}
  .kitest-cta .btn{width:auto;}
}
/* Ueber mich: am Handy erst Ueberschrift und Text, dann das Kurzprofil */
@media (max-width:979px){.about-copy{order:-1;}}
/* Anfrage: fuenf Wuensche ohne leeres Feld */
@media (min-width:1200px){
  .opts-need{grid-template-columns:repeat(6,1fr);}
  .opts-need .opt{grid-column:span 2;}
  .opts-need .opt:nth-child(4){grid-column:2 / span 2;}
}
/* Am Handy ist das Beispiel-Handy kleiner, damit die Reihe der Fundstellen nicht hoeher wird als ihre ersten Karten */
@media (max-width:1159px){.find-phone{--u:.8px;}.hero-facts{margin-top:4px;}}

/* Anfrage zum Durchklicken: heller, mittiger Aufbau mit grossen Klickzeilen (11.11.2026) */
.contact{position:relative;background:var(--paper);color:var(--ink-2);overflow:hidden;}
.contact::before{content:"";position:absolute;inset:0;background:radial-gradient(46% 52% at 50% 40%,rgba(255,176,120,.2),transparent 72%);pointer-events:none;}
.contact .wrap{position:relative;}
.contact h2,.contact h3{color:var(--ink);}
.contact .lead{color:var(--ink-2);}
.contact :focus-visible{outline-color:var(--ink);}
.contact-head{max-width:760px;margin:0 auto clamp(28px,4vw,44px);text-align:center;}
.contact-head .lead{margin:16px auto 0;}
.contact-card{max-width:680px;margin-inline:auto;}
.wizard{border:1px solid var(--line);box-shadow:var(--shadow-card);}
.wiz-done{border:1px solid var(--line);box-shadow:var(--shadow-card);}
.is-wizard .wiz-top{flex-direction:row-reverse;margin-bottom:26px;}
.wiz-count{color:var(--ink-3);}
.wizard legend{margin-bottom:8px;}
.wiz-hint{margin:0 0 20px;color:var(--ink-3);}
.wizard fieldset:not(:has(.wiz-hint)) legend{margin-bottom:20px;}
.opts{gap:10px;}
@media (min-width:620px){.opts{grid-template-columns:1fr;}}
.opt{min-height:68px;padding:12px 58px 12px 16px;border-radius:18px;font-size:1.06rem;}
.opt::after{content:"";position:absolute;right:20px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;border:2px solid var(--line-strong);background:#fff;transition:border-color .2s,background-color .2s,box-shadow .2s;pointer-events:none;}
.opt:hover::after{border-color:var(--ink);}
.opt:has(input:checked)::after{border-color:var(--orange);background:var(--orange);box-shadow:inset 0 0 0 4px #fff;}
@media (min-width:1200px){
  .opts-need{grid-template-columns:1fr;}
  .opts-need .opt{grid-column:auto;flex-direction:row;justify-content:flex-start;text-align:left;min-height:68px;padding:12px 58px 12px 16px;}
  .opts-need .opt:nth-child(4){grid-column:auto;}
  .opts-need .opt-ico{width:44px;height:44px;border-radius:13px;}
  .opts-need .opt-ico svg{width:24px;height:24px;}
}
.opts-chips{display:grid;gap:10px;}
@media (min-width:560px){.opts-chips{grid-template-columns:1fr 1fr;}}
.opts-chips .opt{min-height:58px;padding:10px 54px 10px 20px;border-radius:16px;font-size:1rem;}
.wiz-nav{margin-top:22px;}
.wiz-nav .btn-orange{flex:1;min-width:0;min-height:60px;margin-left:0;font-size:1.06rem;}
.wiz-nav .btn-quiet{flex:none;min-height:60px;}
.wiz-fields .btn-orange{width:100%;min-height:60px;font-size:1.06rem;}
.contact-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:.5em 1.6em;max-width:900px;margin:26px auto 0;padding:0;list-style:none;font-weight:600;font-size:.98rem;color:var(--ink);}
.contact-facts li{display:inline-flex;align-items:center;gap:.5em;}
.contact-facts svg{width:1.2em;height:1.2em;color:var(--orange);flex:none;}
.contact-direct{margin-top:clamp(30px,4vw,48px);text-align:center;}
.contact-direct p{margin-bottom:14px;font-family:var(--f-display);font-weight:600;color:var(--ink);}
.contact .direct{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none;}
.contact .direct a{min-height:50px;padding:.5em 1.25em;gap:10px;border:1.5px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink);transition:border-color .2s,transform .3s var(--ease);}
.contact .direct a:hover{border-color:var(--ink);text-decoration:none;transform:translateY(-2px);}
.contact .direct svg{width:20px;height:20px;}
.form-status:empty{min-height:0;margin:0;}
@media (max-width:619px){
  .contact-facts{flex-direction:column;align-items:flex-start;width:fit-content;margin-inline:auto;}
  .contact-facts li{align-items:flex-start;}
  .contact-facts svg{margin-top:.2em;}
  .contact .direct{flex-direction:column;align-items:stretch;max-width:340px;margin-inline:auto;}
  .contact .direct a{justify-content:center;}
}
.audience-more{margin-top:22px;}

/* Korrekturen aus der Pruefung vor dem Livegang (11.11.2026) */
/* Bildschirm: 100vw zaehlt die Bildlaufleiste mit, deshalb 17px abziehen, sonst schneidet der rechte Rand das Handy an */
@media (min-width:1160px){
  :root{--u:clamp(.79px,calc((100vw - 17px) / 1440),1.2px);}
  .fm-map{height:calc(121 * var(--u));}
  .fm-actions{margin-top:calc(11 * var(--u));}
  .fm-call{margin-top:calc(10 * var(--u));}
}
/* Feste Leiste am Handy: kein Umbruch im Knopf, der orange Knopf bekommt mehr Platz */
.mobile-bar .btn{flex:1 1 auto;padding:.5em .8em;white-space:nowrap;}
.mobile-bar .btn-orange{flex-grow:1.5;}
@media (max-width:400px){.mobile-bar{gap:8px;padding-inline:12px;}.mobile-bar .btn{font-size:.96rem;gap:.4em;}}
/* Bewertungs-Pille oben: auf schmalen Handys einzeilig */
@media (max-width:420px){.chip-rating{gap:.45em;padding-inline:.75em .9em;font-size:.86rem;white-space:nowrap;}.chip-rating .stars{font-size:1.1em;}}
/* Quellenhinweis der IT-Recht Kanzlei unter Impressum und Datenschutz (eingesetzt von rechtstexte/seite.php) */
.legal .itrk-quelle{display:inline-flex;align-items:center;min-height:44px;margin-right:14px;vertical-align:middle;font-size:.9rem;color:var(--ink-2);text-decoration:none;}
.legal .itrk-quelle:hover{text-decoration:underline;}
.legal .itrk-quelle b{color:var(--ink);font-weight:600;margin-left:.3em;}
.legal .itrk-quelle img{display:block;width:204px;height:auto;max-width:100%;}

/* Korrekturen aus der Durchsicht aller Seiten (11.11.2026) */
/* Pfeil-Links: der Pfeil folgt dem letzten Wort, auch wenn der Text umbricht */
.more{display:inline;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.more svg{display:inline-block;vertical-align:-.2em;margin-left:.45em;}
.prose > p + .more{display:inline-block;margin-top:14px;}
.gewerk .more{display:block;}
/* Kartenreihen: Text, Zeitangabe und Liste beginnen auf einer Linie */
@media (min-width:1000px){
  .svc-main h3 span{min-height:2.7em;}
  .timeline h3{min-height:2.6em;}
  .pack .tagline{min-height:4.95em;}
}
/* Bewertungen: nur die aufgeklappte Karte wird hoch */
.reviews-track:has(.review-card.is-open){align-items:flex-start;}
/* Seitenkopf der Unterseiten am Handy: beide Knöpfe über die ganze Breite */
@media (max-width:559px){.page-hero .actions .btn{flex:1 1 100%;}}
/* Fuß am Handy: Links groß genug zum Antippen */
@media (max-width:759px){
  .site-foot li+li{margin-top:0;}
  .site-foot li a{display:block;padding:9px 0;}
  .site-foot address a{display:inline-block;padding:8px 0;}
  .foot-legal{gap:0 26px;}
  .foot-legal span{flex-basis:100%;margin:0 0 6px;}
  .foot-legal a,.foot-legal button{padding:10px 0;}
}
/* Kopfzeile am Bildschirm flacher und die Wortmarke kleiner (Wunsch Eugen, 11.11.2026) */
@media (min-width:1160px){
  .site-head .wrap{min-height:max(52px,calc(54 * var(--u)));}
  .brand{font-size:max(33px,calc(38 * var(--u)));}
  .nav{gap:calc(32 * var(--u));margin-left:calc(52 * var(--u));}
  .nav > a:not(.btn),.nav-drop-btn{font-size:max(15px,calc(16.2 * var(--u)));}
  .nav .head-cta{min-height:max(40px,calc(42 * var(--u)));padding:0 calc(24 * var(--u));font-size:max(15px,calc(16.2 * var(--u)));}
  body:not(:has(.hero)) .site-head .wrap{min-height:60px;}
  body:not(:has(.hero)) .brand{font-size:2.15rem;}
  body:not(:has(.hero)) .site-head .nav{gap:28px;margin-left:44px;}
  body:not(:has(.hero)) .site-head .nav > a:not(.btn),body:not(:has(.hero)) .nav-drop-btn{font-size:1rem;}
  body:not(:has(.hero)) .nav .head-cta{min-height:44px;padding:0 1.35em;font-size:1rem;}
}
