/* RUNLEVELS V0.9: interactive contact stage. All overrides scoped to #kontakt. */
#kontakt.contact-stage-section{padding:90px 0 105px; background:radial-gradient(ellipse 45% 65% at 5% 52%,rgba(252,215,195,.36),transparent 76%),radial-gradient(ellipse 35% 48% at 95% 18%,rgba(233,228,221,.62),transparent 78%),#f8f7f5; color:#24292c;}
#kontakt .contact-stage{max-width:1180px;}
#kontakt .contact-intro{text-align:center;margin:0 auto 40px;max-width:900px;}
#kontakt .contact-intro h2{font:750 clamp(38px,4.2vw,61px)/1.14 var(--font);letter-spacing:-.055em;color:#20272a;margin:0;}
#kontakt .contact-intro p{font-size:16px;line-height:1.65;color:#737d81;margin:12px 0 0;}
#kontakt .contact-stage-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:27px;}
#kontakt .contact-choice-area{min-width:0;padding:36px 20px 20px 0;}
#kontakt .contact-choice-area>h3{font:750 clamp(23px,2.4vw,32px)/1.23 var(--font);letter-spacing:-.045em;color:#22292d;margin:0 0 12px;}
#kontakt .contact-choice-area>p{font-size:14px;line-height:1.75;color:#70797c;max-width:400px;margin:0 0 28px;}
#kontakt .contact-choice-list{display:flex;flex-direction:column;gap:12px;}
#kontakt .contact-choice{position:relative;display:flex;align-items:center;gap:15px;min-height:110px;padding:20px;text-align:left;background:rgba(255,255,255,.7);border:1px solid #e7e5e0;border-radius:17px;color:#20272a;box-shadow:0 12px 30px rgba(40,36,29,.02);transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;}
#kontakt .contact-choice:hover{transform:translateY(-2px);border-color:#e4b9a9;}
#kontakt .contact-choice.is-selected{background:#fff;border-color:#ff7d56;box-shadow:0 12px 34px rgba(255,116,76,.09),inset 0 0 0 1px rgba(255,125,86,.32);}
#kontakt .contact-choice:focus-visible{outline:3px solid #ff7855;outline-offset:3px;}
#kontakt .contact-choice-icon{display:grid;place-items:center;flex:0 0 51px;width:51px;height:51px;border-radius:14px;background:#f3f1ed;color:#3f4b50;}
#kontakt .contact-choice.is-selected .contact-choice-icon{background:#fff0ea;color:#f16e48;}
#kontakt .contact-choice-icon svg{width:24px;height:24px;}
#kontakt .contact-choice-copy{display:flex;flex-direction:column;gap:4px;min-width:0;}
#kontakt .contact-choice-copy strong{font:750 16px/1.32 var(--font);letter-spacing:-.035em;}
#kontakt .contact-choice-copy>span{font:400 13px/1.5 var(--body);color:#7a8386;}
#kontakt .contact-choice-check{margin-left:auto;display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#ff7852;color:#fff;font-size:13px;font-weight:800;opacity:0;transition:opacity .2s;}
#kontakt .contact-choice.is-selected .contact-choice-check{opacity:1;}
#kontakt .contact-choice-footnote{display:flex;gap:8px;align-items:flex-start;margin:22px 4px 0;color:#81898c;font-size:12px;line-height:1.6;}
#kontakt .contact-choice-footnote svg{flex:0 0 17px;width:17px;height:17px;color:#f57853;margin-top:1px;}
#kontakt .contact-shell{padding:0;margin:0;max-width:none;min-width:0;}
#kontakt .contact-shell form{background:#fff;border:1px solid #ece9e4;border-radius:23px;padding:35px 38px 29px;box-shadow:0 22px 70px rgba(42,39,34,.09);}
#kontakt .contact-form-head{display:flex;align-items:flex-start;gap:14px;margin:0 0 27px;}
#kontakt .contact-form-symbol{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;background:#f5f4f1;border:1px solid #edebe6;border-radius:13px;}
#kontakt .contact-form-symbol img{width:28px;height:28px;}
#kontakt .contact-form-head h3{font:750 clamp(22px,2.5vw,29px)/1.25 var(--font);letter-spacing:-.045em;margin:0 0 7px;color:#24292d;}
#kontakt .contact-form-head p{margin:0;color:#7d8588;font-size:12.5px;line-height:1.6;max-width:430px;}
#kontakt .contact-interest-hidden{display:none!important;}
#kontakt .contact-shell form>label,#kontakt .contact-shell .form-row label{font:700 12px/1.55 var(--body);color:#465057;display:block;margin:0 0 18px;min-width:0;}
#kontakt .contact-shell .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
#kontakt .contact-shell input:not([type=checkbox]),#kontakt .contact-shell textarea{display:block;width:100%;margin-top:8px;background:#faf9f7;border:1px solid #e9e5df;color:#2c363a;border-radius:11px;font:400 13px/1.45 var(--body);transition:border-color .18s,box-shadow .18s;}
#kontakt .contact-shell input:not([type=checkbox]){height:49px;min-height:49px;padding:0 14px;}
#kontakt .contact-shell textarea{min-height:100px;padding:12px 14px;resize:vertical;}
#kontakt .contact-shell input:not([type=checkbox]):focus,#kontakt .contact-shell textarea:focus{outline:none;border-color:#ff805f;box-shadow:0 0 0 3px rgba(255,129,88,.15);}
#kontakt .contact-optional{font-weight:400;color:#99a0a2;}
#kontakt .contact-shell label.contact-detail[hidden],#kontakt .contact-shell label[hidden]{display:none!important;}
#kontakt .selected-plan{margin:0 0 23px;display:inline-flex;background:#fff2eb;border:1px solid #ffe0d0;padding:8px 12px;border-radius:50px;color:#af5537;font:700 12px var(--body);}
#kontakt .selected-plan[hidden]{display:none;}
#kontakt .contact-shell .consent-row{display:flex!important;gap:10px;align-items:flex-start;margin:5px 0 16px;font:400 11.5px/1.55 var(--body);color:#68747a;}
#kontakt .consent-row input{margin:3px 0 0;flex:0 0 16px;width:16px;height:16px;accent-color:#fa7550;}
#kontakt .consent-row a{text-decoration:underline;text-underline-offset:2px;color:#3d4b50;}
#kontakt .contact-shell .btn-submit{width:100%;min-height:53px;border-radius:12px;margin:0;background:linear-gradient(100deg,#ff8c35,#ff694b);color:#fff;box-shadow:0 10px 22px rgba(250,115,70,.17);justify-content:center;font-size:14px;}
#kontakt .contact-shell .btn-submit:hover{box-shadow:0 13px 25px rgba(250,115,70,.27);}
#kontakt .contact-shell small{margin:13px 0 0;font-size:10.5px;line-height:1.65;text-align:center;color:#92999c;}
@media(max-width:980px){
  #kontakt .contact-stage-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;}
  #kontakt .contact-choice-area{padding-right:0;}
  #kontakt .contact-shell form{padding:28px 24px 25px;}
}
@media(max-width:760px){
  #kontakt.contact-stage-section{padding:68px 0 80px;}
  #kontakt .contact-intro{text-align:center;margin-bottom:25px;}
  #kontakt .contact-intro h2{font-size:clamp(30px,7.8vw,43px);white-space:normal;}
  #kontakt .contact-intro p{font-size:14px;line-height:1.55;}
  #kontakt .contact-stage-grid{grid-template-columns:minmax(0,1fr);gap:17px;}
  #kontakt .contact-choice-area{padding:0;}
  #kontakt .contact-choice-area>h3,#kontakt .contact-choice-area>p{display:none;}
  #kontakt .contact-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  #kontakt .contact-choice{min-height:88px;padding:14px 11px;flex-direction:column;align-items:flex-start;gap:9px;border-radius:15px;}
  #kontakt .contact-choice-icon{display:none;}
  #kontakt .contact-choice-copy strong{font-size:13px;line-height:1.24;}
  #kontakt .contact-choice-copy>span{font-size:11px;}
  #kontakt .contact-choice-check{position:absolute;top:11px;right:9px;width:17px;height:17px;font-size:10px;}
  #kontakt .contact-choice-copy{padding-right:12px;}
  #kontakt .contact-choice-footnote{display:none;}
  #kontakt .contact-shell form{padding:25px 20px 23px;border-radius:19px;}
  #kontakt .contact-form-head{margin-bottom:22px;gap:10px;}
  #kontakt .contact-form-symbol{flex:0 0 39px;width:39px;height:39px;border-radius:11px;}
  #kontakt .contact-form-symbol img{width:23px;height:23px;}
  #kontakt .contact-form-head h3{font-size:23px;margin-bottom:5px;}
  #kontakt .contact-form-head p{font-size:12px;}
  #kontakt .contact-shell .form-row{grid-template-columns:1fr;gap:0;}
  #kontakt .contact-shell form>label,#kontakt .contact-shell .form-row label{margin-bottom:15px;}
}
@media(max-width:375px){
  #kontakt.contact-stage-section{padding-top:55px;}
  #kontakt .contact-choice-copy strong{font-size:12px;}
  #kontakt .contact-choice{padding:12px 10px;}
  #kontakt .contact-shell form{padding:23px 15px 20px;}
  #kontakt .contact-form-head h3{font-size:21px;}
}
@media(prefers-reduced-motion:reduce){#kontakt .contact-choice{transition:none;}}
