/* Layout based on the approved desktop reference. Mobile rules are independent.
 * 3.0.1: regular display typography and medium UI text, without layout changes. */
:root{color-scheme:light;scroll-behavior:smooth}
body.kym-design{--deep:#03272e;--deepest:#022329;--cream:#faf8f2;--paper:#fdfbf6;--ink:#111b1c;--muted:#545762;--gold:#f1ce88;--u:1px;margin:0;background:var(--cream);color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif;-webkit-text-size-adjust:100%}
.kym-design *,.kym-design *::before,.kym-design *::after{box-sizing:border-box}
.kym-design :where(h1,h2,h3,p,figure,ul){margin:0}
.kym-design h1,.kym-design h2,.kym-design h3{font-family:Georgia,'Times New Roman',serif;line-height:1.08;font-weight:400;letter-spacing:-.027em}
.kym-design h1{font-size:38px}.kym-design h2{font-size:30px}.kym-design h3{font-size:21px}
.kym-design a{color:inherit;text-underline-offset:4px}
.kym-design img{display:block;max-width:100%;height:auto}
.kym-design .wrap{width:calc(100% - 40px);max-width:1450px;margin:auto}
.kym-design .icon{width:32px;height:32px;flex:none;display:block;color:var(--gold)}
.kym-design .eyebrow{font:500 10px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#705132;margin-bottom:8px}
.kym-design .gold{color:var(--gold)}
.kym-design .button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:13px 19px;border:1px solid #e4c68b;border-radius:5px;background:linear-gradient(108deg,#eac582,#f7dda4 50%,#e8c076);color:#171b18;font:500 14px/1.3 Arial,Helvetica,sans-serif;text-decoration:none;box-shadow:0 1px 0 #fff3 inset;cursor:pointer;text-align:center}
.kym-design .button:hover{filter:brightness(1.06)}
.kym-design .button.small{min-height:38px;padding:10px 15px;font-size:11px;gap:9px}
.kym-design .arrow{display:block;flex:none;width:14px;height:10px;position:relative}
.kym-design .arrow::before{content:'';position:absolute;top:5px;left:0;width:13px;border-top:1.5px solid}
.kym-design .arrow::after{content:'';position:absolute;top:2px;right:0;width:6px;height:6px;border-top:1.5px solid;border-right:1.5px solid;transform:rotate(45deg)}
.kym-design .down-arrow{display:inline-block;width:7px;height:7px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg);margin:0 0 3px 7px}
.kym-design :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #b88324;outline-offset:4px}
.kym-design .skip{position:fixed;top:-100px;left:20px;background:var(--gold);padding:10px 15px;z-index:20;color:#09262a}
.kym-design .skip:focus{top:10px}
.kym-design section[id]{scroll-margin-top:20px}
.kym-design .topbar{background:var(--deepest);color:#fff;position:relative;z-index:5;border-bottom:1px solid #ffffff2b}
.kym-design .nav{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:66px}
.kym-design .brand{font:700 19px/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.045em;text-decoration:none;white-space:nowrap}
.kym-design .brand span{font-weight:400}
.kym-design .brand img{width:auto;height:30px;max-width:190px;object-fit:contain}
.kym-design .desktop-nav{display:none}
.kym-design .nav>.button{display:none}
.kym-design .mobile-menu>summary{width:42px;height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;list-style:none}
.kym-design .mobile-menu>summary::-webkit-details-marker{display:none}
.kym-design .mobile-menu>summary span{width:23px;border-top:1.5px solid var(--gold)}
.kym-design .mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:var(--deep);padding:16px 20px;box-shadow:0 10px 25px #0003;display:grid}
.kym-design .mobile-menu nav a{padding:12px 6px;text-decoration:none}
.kym-design .hero{position:relative;isolation:isolate;color:#fff;overflow:hidden;background:var(--deep)}
.kym-design .hero-picture{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(0,29,34,.58),rgba(0,29,34,.25) 48%,transparent 72%),var(--hero-image,url('../images/hero.webp'));background-size:cover;background-position:center}
.kym-design .hero-content{padding:40px 0 38px}
.kym-design .hero h1{max-width:650px;text-shadow:0 1px 5px #0002}
.kym-design .hero-text{font-size:16px;line-height:1.45;max-width:470px;margin:18px 0 24px}
.kym-design .hero-link{display:block;width:fit-content;margin-top:13px;font-size:13px;font-weight:500}
.kym-design .confidence{background:var(--deep);color:#fff}
.kym-design .confidence-grid{display:grid;gap:0;padding:10px 0}
.kym-design .confidence-grid>div{display:flex;align-items:center;gap:19px;padding:15px 0;border-bottom:1px solid #f1ce8826}
.kym-design .confidence-grid>div:last-child{border:none}
.kym-design .confidence strong{font:400 17px/1.2 Georgia,serif;display:block;margin-bottom:5px}
.kym-design .confidence p>span{font-size:13px;line-height:1.4;display:block;color:#e3e8e6}
.kym-design .offer{padding:35px 0 32px;background:linear-gradient(110deg,#fbf9f4,#f8f5ee)}
.kym-design .offer-wrap{width:calc(100% - 40px);max-width:1560px;margin:auto}
.kym-design .offer-grid{display:grid;gap:25px;align-items:center}
.kym-design .offer .intro{font-size:14px;color:var(--muted);line-height:1.5;margin-top:8px}
.kym-design .service-grid{display:grid;gap:13px;margin-top:21px}
.kym-design .service-grid article{padding:22px 21px;background:#ffffff76;border:1px solid #ebe5da;border-radius:6px;box-shadow:0 5px 17px #442a0710}
.kym-design .service-icon{width:49px;height:49px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#f0d6a9,#faead0)}
.kym-design .service-icon .icon{width:27px;height:27px;color:#1b2827}
.kym-design .service-grid h3{font-size:21px;line-height:1.2;margin-top:17px}
.kym-design .service-grid p{font-size:14px;line-height:1.45;margin-top:16px;color:var(--muted)}
.kym-design .showcase{margin:0 auto;width:100%;max-width:600px}
.kym-design .showcase img{width:100%;height:auto;mix-blend-mode:multiply}
.kym-design .showcase figcaption{font-size:11px;line-height:1.4;text-align:center;color:var(--muted);margin-top:9px}
.kym-design .price-section{display:grid;background:var(--deep);color:#fff}
.kym-design .price-photo{background-image:var(--table-image,url('../images/table.webp'));background-position:center;background-size:cover;min-height:240px}
.kym-design .price-content{padding:30px 20px 34px}
.kym-design .price-content h2{font-size:29px;line-height:1.13}
.kym-design .price{font:400 40px/1.12 Georgia,serif;letter-spacing:-.02em;color:var(--gold);margin:3px 0 17px}
.kym-design .price span{font-size:.67em;font-weight:400;letter-spacing:0}
.kym-design .price-details{display:grid;gap:18px;margin-bottom:16px}
.kym-design .checklist{padding:0;list-style:none;display:grid;gap:11px;font-size:14px}
.kym-design .checklist li{display:flex;gap:10px;align-items:center}
.kym-design .checklist .icon{width:20px;height:20px}
.kym-design .price-notes{display:grid;gap:17px;font-size:13px;line-height:1.4;border-top:1px solid #dfc78e44;padding-top:17px}
.kym-design .price-notes p{display:flex;align-items:flex-start;gap:15px}
.kym-design .price-notes .icon{width:26px;height:26px}
.kym-design .promise{background:var(--cream);padding:31px 0}
.kym-design .promise-wrap{width:calc(100% - 40px);max-width:1500px;margin:auto}
.kym-design .promise-grid{display:grid;gap:22px;align-items:center}
.kym-design .promise-heading{display:flex;align-items:center;gap:16px}
.kym-design .shield-circle{display:flex;align-items:center;justify-content:center;width:65px;height:75px;border-radius:50%;background:#efeadd;flex:none}
.kym-design .shield-circle .icon{width:47px;height:54px;color:#be892d;stroke-width:2.1}
.kym-design .promise h2{font-size:27px;line-height:1.02;color:#0c0e0d;letter-spacing:-.015em}
.kym-design .promise-text{font-size:13px;line-height:1.45;color:var(--muted)}
.kym-design .qualified-definition{margin-top:10px}
.kym-design .qualified-definition>summary{font-size:12px;cursor:pointer;font-weight:500}
.kym-design .qualified-definition>p{margin-top:9px}
.kym-design .person-section{display:grid;background:var(--deep);color:#fff}
.kym-design .person-photo{min-height:225px;background:#143638;position:relative}
.kym-design .portrait-image{width:100%;height:100%!important;object-fit:cover;object-position:center;position:absolute;inset:0}
.kym-design .portrait-placeholder{height:100%;min-height:240px;display:flex;flex-direction:column;gap:13px;align-items:center;justify-content:center;padding:25px;text-align:center;color:#e8ddc5;background:radial-gradient(ellipse at 20% 30%,#696347,#243b34 45%,#05292e);font-size:15px}
.kym-design .portrait-placeholder small{font-size:11px;color:#c4d2cb;max-width:240px}
.kym-design .placeholder-monitor{height:55px;width:85px;border:2px solid #e2bf7c;border-radius:5px;position:relative;margin-bottom:15px}
.kym-design .placeholder-monitor::after{content:'';position:absolute;left:33px;width:20px;top:55px;height:13px;border-left:2px solid #e2bf7c;border-bottom:2px solid #e2bf7c}
.kym-design .person-content{padding:28px 20px 32px}
.kym-design .person-content h2{font-size:34px}
.kym-design .person-text{font-size:15px;line-height:1.5;margin:9px 0 17px;max-width:710px}
.kym-design .person-benefits{display:grid;gap:18px}
.kym-design .person-benefits>div{display:flex;align-items:flex-start;gap:13px}
.kym-design .person-benefits .icon{width:26px;height:26px}
.kym-design .person-benefits p{font-size:12px;line-height:1.45}
.kym-design .person-benefits strong,.kym-design .person-benefits span{display:block}
.kym-design .person-benefits strong{font-weight:500;margin-bottom:4px}
.kym-design .person-benefits span{color:#d9e1df}
.kym-design .faq-section{padding:31px 0;background:var(--cream)}
.kym-design .faq-grid{display:grid;gap:20px;align-items:start}
.kym-design .faq{display:grid;gap:7px}
.kym-design .faq details{border:1px solid #ece7df;border-radius:5px;background:#ffffff87;box-shadow:0 2px 7px #5551}
.kym-design .faq summary{position:relative;cursor:pointer;list-style:none;font:500 13px/1.4 Arial,Helvetica,sans-serif;padding:11px 32px 11px 14px}
.kym-design .faq summary::-webkit-details-marker{display:none}
.kym-design .faq summary::after{content:'';position:absolute;right:15px;top:14px;width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg)}
.kym-design .faq details[open] summary::after{transform:rotate(225deg);top:18px}
.kym-design .faq details>p{padding:2px 14px 14px;font-size:14px;line-height:1.5;color:var(--muted)}
.kym-design .closing{background:linear-gradient(90deg,#00212bbb,#00212b44),var(--closing-image,url('../images/closing.webp')) center/cover;color:#fff;padding:32px 0}
.kym-design .closing-grid{display:grid;gap:24px;align-items:center}
.kym-design .closing h2{font-size:30px;line-height:1.05}
.kym-design .closing p{font-size:14px;line-height:1.4;margin-top:10px;max-width:620px}
.kym-design .closing-action>.button{width:100%;max-width:470px}
.kym-design .closing-facts{display:flex;flex-wrap:wrap;gap:15px;margin-top:16px;font-size:10px;line-height:1.3}
.kym-design .closing-facts span{display:flex;align-items:center;gap:7px}
.kym-design .closing-facts .icon{width:18px;height:18px}
.kym-design .site-footer{background:var(--deepest);color:#fff;padding:21px 0}
.kym-design .footer-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.kym-design .region{display:flex;align-items:center;gap:7px;font-size:10px}
.kym-design .region .icon{width:17px;height:17px}
.kym-design .footer-row nav{display:flex;gap:20px;margin-left:auto;font-size:11px}
.kym-design .footer-row nav a{text-decoration:none}
.kym-design .inner-page{padding:56px 0 64px;min-height:60vh}
.kym-design .prose{max-width:900px;font-size:17px;line-height:1.75}
.kym-design .prose h1{font-size:44px;line-height:1.1;margin-bottom:28px}
.kym-design .prose h2{margin:30px 0 13px;font-size:29px}.kym-design .prose h3{margin:22px 0 10px;font-size:23px}
.kym-design .prose p{margin-bottom:17px}.kym-design .inner-action{margin-top:30px}
.kym-design .inner-portrait{float:left;width:40%;min-height:270px;position:relative;margin:0 30px 20px 0}
.kym-design .related-pages{display:flex;flex-wrap:wrap;gap:13px 24px;padding:0 0 32px;font-size:14px}
.kym-design .contact-page{background:var(--deep);color:#fff;padding:40px 0 55px;min-height:75vh}
.kym-design .contact-grid{display:grid;gap:27px;align-items:start}
.kym-design .contact-copy h1{font-size:37px;line-height:1.09;margin:10px 0 20px}
.kym-design .contact-copy p{font-size:16px;line-height:1.5;margin-bottom:20px}
.kym-design .form-card{padding:25px 20px;background:var(--paper);color:var(--ink);border-radius:6px}
.kym-design .form-card h2{font-size:29px;margin-bottom:12px}.kym-design .form-card>p{font-size:14px;color:var(--muted)}
.kym-design #anfrageformular{display:grid;gap:15px;margin-top:22px}
.kym-design #anfrageformular .feld{display:flex;flex-direction:column;gap:6px;min-width:0}
.kym-design #anfrageformular label{font-size:13px;font-weight:500;line-height:1.5}
.kym-design #anfrageformular .optional{font-weight:400;color:var(--muted)}
.kym-design #anfrageformular input:not([type=checkbox]),.kym-design #anfrageformular select{box-sizing:border-box;border:1px solid #b5bebe;border-radius:3px;width:100%;min-width:0;padding:10px 12px;background:#fff;color:#102a2d;font:16px/1.4 Arial,Helvetica,sans-serif;min-height:44px}
.kym-design #anfrageformular .zwei{display:grid;gap:15px}
.kym-design #anfrageformular .honig{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.kym-design #anfrageformular .einwilligung{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:12px}
.kym-design #einwilligung{width:18px;height:18px;flex:none;margin:2px 0 0;accent-color:#21545a}
.kym-design .meldung:empty{display:none}
.kym-design .meldung{padding:13px;background:#fff1e3;font-size:14px;border:1px solid #a16738;color:#653100}
.kym-design #anfrageformular button{width:100%;padding:14px 20px;min-height:47px;background:linear-gradient(110deg,#ebc782,#f7dda4,#e8bf79);border:1px solid #caaa6d;border-radius:4px;font-size:15px;font-weight:500;cursor:pointer;color:#142422}
.kym-design #anfrageformular button:disabled{opacity:.6;cursor:wait}
.kym-design .form-caption{font-size:12px!important;margin-top:15px;text-align:center}
@media(min-width:640px) and (max-width:899px){.kym-design .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kym-design .service-grid article{padding:18px 14px}.kym-design .service-grid h3{font-size:19px}.kym-design .confidence-grid{grid-template-columns:repeat(3,1fr);gap:20px}.kym-design .confidence-grid>div{border:none}.kym-design .confidence strong{font-size:15px}.kym-design .confidence .icon{width:27px;height:27px}.kym-design .confidence p>span{font-size:11px}.kym-design .person-benefits{grid-template-columns:repeat(3,1fr)}.kym-design .person-section{grid-template-columns:38% 62%}.kym-design .person-benefits>div{gap:7px}.kym-design .person-benefits .icon{width:20px}.kym-design .person-benefits p{font-size:10px}.kym-design .nav>.button{display:flex}.kym-design .showcase{max-width:460px}.kym-design #anfrageformular .zwei{grid-template-columns:1fr 2fr}}
@media(min-width:900px){
body.kym-design{--u:min(.10627vw,1.8px);font-size:calc(13 * var(--u))}
.kym-design .wrap{width:84.5%;max-width:1450px}.kym-design .offer-wrap{width:92.5%;max-width:1590px}
.kym-design h1{font-size:calc(44 * var(--u))}.kym-design h2{font-size:calc(33 * var(--u))}.kym-design h3{font-size:calc(16 * var(--u))}
.kym-design .eyebrow{font-size:calc(8 * var(--u));margin-bottom:calc(7 * var(--u));line-height:1.35}
.kym-design .brand{font-size:calc(19 * var(--u))}
.kym-design .brand img{height:calc(27 * var(--u));max-width:calc(205 * var(--u))}
.kym-design .nav{min-height:calc(44 * var(--u));gap:calc(20 * var(--u))}
.kym-design .desktop-nav{display:flex;gap:calc(28 * var(--u));font-size:calc(9 * var(--u));margin-left:auto;margin-right:auto;padding-left:calc(50 * var(--u))}
.kym-design .desktop-nav a{text-decoration:none;padding:12px 0}
.kym-design .desktop-nav a:hover{text-decoration:underline}
.kym-design .mobile-menu{display:none}.kym-design .nav>.button{display:inline-flex}
.kym-design .button{font-size:calc(12 * var(--u));padding:calc(10 * var(--u)) calc(19 * var(--u));min-height:calc(38 * var(--u));gap:calc(12 * var(--u));border-radius:calc(4 * var(--u))}
.kym-design .button.small{font-size:calc(9 * var(--u));padding:calc(7 * var(--u)) calc(14 * var(--u));min-height:calc(30 * var(--u));gap:calc(8 * var(--u))}
.kym-design .hero-content{min-height:calc(292 * var(--u));padding-top:calc(26 * var(--u));padding-bottom:calc(20 * var(--u))}
.kym-design .hero h1{max-width:calc(610 * var(--u));font-weight:400;line-height:.98;margin-bottom:calc(16 * var(--u));letter-spacing:-.032em}
.kym-design .hero .eyebrow{margin-bottom:calc(10 * var(--u))}
.kym-design .hero-text{font-size:calc(13 * var(--u));line-height:1.35;max-width:calc(420 * var(--u));margin:0 0 calc(15 * var(--u))}
.kym-design .hero-link{font-size:calc(11 * var(--u));margin-top:calc(8 * var(--u))}
.kym-design .confidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:calc(17 * var(--u)) 0;min-height:calc(77 * var(--u))}
.kym-design .confidence-grid>div{padding:0 calc(21 * var(--u));border-bottom:0;border-right:1px solid #b89e6955;gap:calc(20 * var(--u))}
.kym-design .confidence-grid>div:first-child{padding-left:0}.kym-design .confidence-grid>div:last-child{padding-right:0}
.kym-design .confidence .icon{width:calc(37 * var(--u));height:calc(37 * var(--u))}
.kym-design .confidence strong{font-size:calc(15 * var(--u));line-height:1.1;margin-bottom:calc(6 * var(--u));letter-spacing:-.01em}
.kym-design .confidence p>span{font-size:calc(10 * var(--u));line-height:1.28}
.kym-design .offer{padding:calc(20 * var(--u)) 0 calc(22 * var(--u));min-height:calc(307 * var(--u))}
.kym-design .offer-grid{grid-template-columns:59% 41%;gap:0;align-items:center}
.kym-design .offer-copy>h2,.kym-design .offer-copy>.eyebrow,.kym-design .offer-copy>.intro{margin-left:calc(21 * var(--u))}
.kym-design .offer h2{font-size:calc(33 * var(--u));line-height:1.07;white-space:nowrap;color:#111}
.kym-design .offer .intro{font-size:calc(11 * var(--u));line-height:1.35;margin-top:calc(6 * var(--u));white-space:nowrap}
.kym-design .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(8 * var(--u));margin-top:calc(15 * var(--u))}
.kym-design .service-grid article{padding:calc(12 * var(--u)) calc(19 * var(--u)) calc(18 * var(--u));min-height:calc(182 * var(--u));border-radius:calc(6 * var(--u));display:flex;flex-direction:column}
.kym-design .service-icon{width:calc(45 * var(--u));height:calc(45 * var(--u))}
.kym-design .service-icon .icon{width:calc(25 * var(--u));height:calc(25 * var(--u))}
.kym-design .service-grid h3{font-size:calc(15 * var(--u));line-height:1.17;letter-spacing:0;margin-top:calc(14 * var(--u));min-height:calc(35 * var(--u))}
.kym-design .service-grid p{font-size:calc(10 * var(--u));line-height:1.42;margin-top:calc(12 * var(--u))}
.kym-design .showcase{max-width:none;padding-left:calc(11 * var(--u));padding-top:calc(5 * var(--u))}
.kym-design .showcase figcaption{font-size:calc(10 * var(--u));line-height:1.25;margin-top:calc(4 * var(--u))}
.kym-design .price-section{grid-template-columns:44% 56%;min-height:calc(274 * var(--u))}
.kym-design .price-photo{min-height:0}
.kym-design .price-content{padding:calc(19 * var(--u)) calc(29 * var(--u)) calc(16 * var(--u)) calc(26 * var(--u))}
.kym-design .price-content h2{font-size:calc(28 * var(--u));line-height:1.05;letter-spacing:-.025em;white-space:nowrap;font-weight:400}
.kym-design .price{font-size:calc(38 * var(--u));margin:calc(4 * var(--u)) 0 calc(10 * var(--u));line-height:1.1}
.kym-design .price-details{grid-template-columns:53% 47%;gap:0;margin-bottom:calc(11 * var(--u))}
.kym-design .checklist{font-size:calc(10.5 * var(--u));gap:calc(8 * var(--u));padding-right:calc(12 * var(--u));line-height:1.35}
.kym-design .checklist li{gap:calc(9 * var(--u))}.kym-design .checklist .icon{width:calc(19 * var(--u));height:calc(19 * var(--u))}
.kym-design .price-notes{border-top:0;border-left:1px solid #d7c18466;padding:0 0 0 calc(16 * var(--u));font-size:calc(10 * var(--u));line-height:1.3;gap:calc(21 * var(--u))}
.kym-design .price-notes p{gap:calc(11 * var(--u))}.kym-design .price-notes .icon{width:calc(24 * var(--u));height:calc(24 * var(--u))}
.kym-design .price-content>.button{min-width:calc(280 * var(--u));font-size:calc(11 * var(--u));min-height:calc(34 * var(--u));padding:calc(8 * var(--u)) calc(15 * var(--u))}
.kym-design .promise{padding:calc(23 * var(--u)) 0;min-height:calc(141 * var(--u))}
.kym-design .promise-wrap{width:86.5%;max-width:1490px}
.kym-design .promise-grid{grid-template-columns:56% 44%;gap:0}
.kym-design .promise-heading{gap:calc(15 * var(--u));padding-right:calc(22 * var(--u))}
.kym-design .shield-circle{width:calc(79 * var(--u));height:calc(87 * var(--u))}.kym-design .shield-circle .icon{width:calc(52 * var(--u));height:calc(61 * var(--u))}
.kym-design .promise h2{font-size:calc(28 * var(--u));line-height:1.04;letter-spacing:-.02em}
.kym-design .promise-text{border-left:1px solid #dfdcd5;padding-left:calc(22 * var(--u));font-size:calc(10 * var(--u));line-height:1.43}
.kym-design .qualified-definition{margin-top:calc(8 * var(--u))}.kym-design .qualified-definition>summary{font-size:calc(10 * var(--u))}
.kym-design .person-section{grid-template-columns:44% 56%;min-height:calc(194 * var(--u))}
.kym-design .person-photo{min-height:0}
.kym-design .portrait-placeholder{min-height:calc(194 * var(--u));font-size:calc(15 * var(--u))}
.kym-design .portrait-placeholder small{font-size:calc(10 * var(--u));max-width:90%}
.kym-design .person-content{padding:calc(20 * var(--u)) calc(28 * var(--u)) calc(18 * var(--u)) calc(26 * var(--u))}
.kym-design .person-content h2{font-size:calc(32 * var(--u));font-weight:400;line-height:1.04}
.kym-design .person-text{font-size:calc(11.5 * var(--u));line-height:1.4;margin:calc(8 * var(--u)) 0 calc(15 * var(--u));max-width:none}
.kym-design .person-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(13 * var(--u))}
.kym-design .person-benefits>div{gap:calc(9 * var(--u))}.kym-design .person-benefits .icon{width:calc(24 * var(--u));height:calc(24 * var(--u))}
.kym-design .person-benefits p{font-size:calc(9 * var(--u));line-height:1.35}.kym-design .person-benefits strong{white-space:nowrap;margin-bottom:calc(5 * var(--u))}
.kym-design .faq-section{padding:calc(14 * var(--u)) 0;min-height:calc(133 * var(--u))}
.kym-design .faq-grid{grid-template-columns:38% 62%;gap:0}.kym-design .faq-grid>div:first-child{padding-top:calc(12 * var(--u))}
.kym-design .faq h2{font-size:calc(32 * var(--u))}
.kym-design .faq{gap:calc(4 * var(--u))}
.kym-design .faq summary{font-size:calc(9 * var(--u));padding:calc(3 * var(--u)) calc(30 * var(--u)) calc(3 * var(--u)) calc(14 * var(--u));min-height:calc(20 * var(--u));line-height:1.5}
.kym-design .faq summary::after{right:calc(15 * var(--u));top:calc(7 * var(--u));width:calc(5 * var(--u));height:calc(5 * var(--u))}
.kym-design .faq details[open] summary::after{top:calc(11 * var(--u))}
.kym-design .faq details>p{font-size:calc(11 * var(--u));padding:calc(6 * var(--u)) calc(14 * var(--u)) calc(12 * var(--u))}
.kym-design .closing{padding:calc(19 * var(--u)) 0;min-height:calc(145 * var(--u))}
.kym-design .closing-grid{grid-template-columns:49% 51%;gap:0}
.kym-design .closing h2{font-size:calc(28 * var(--u));line-height:.98;font-weight:400}
.kym-design .closing p{font-size:calc(10.5 * var(--u));line-height:1.35;max-width:calc(405 * var(--u));margin-top:calc(10 * var(--u))}
.kym-design .closing-action{padding-left:calc(12 * var(--u));text-align:center}
.kym-design .closing-action>.button{width:auto;max-width:none;font-size:calc(11 * var(--u));padding:calc(10 * var(--u)) calc(23 * var(--u));min-width:calc(252 * var(--u))}
.kym-design .closing-facts{font-size:calc(8 * var(--u));gap:calc(15 * var(--u));justify-content:flex-end;margin-top:calc(15 * var(--u));flex-wrap:nowrap}
.kym-design .closing-facts span{gap:calc(7 * var(--u));white-space:nowrap}.kym-design .closing-facts .icon{width:calc(15 * var(--u));height:calc(15 * var(--u))}
.kym-design .site-footer{padding:calc(14 * var(--u)) 0;min-height:calc(45 * var(--u))}
.kym-design .footer-row{gap:calc(21 * var(--u));flex-wrap:nowrap}
.kym-design .region{font-size:calc(8 * var(--u));gap:calc(8 * var(--u))}.kym-design .region .icon{width:calc(15 * var(--u));height:calc(15 * var(--u))}
.kym-design .footer-row nav{font-size:calc(9 * var(--u));gap:calc(27 * var(--u))}
.kym-design .contact-grid{grid-template-columns:42% 53%;gap:5%}.kym-design .contact-page{padding:64px 0}
.kym-design .contact-copy h1{font-size:clamp(35px,4vw,62px)}.kym-design .contact-copy{padding-top:25px}
.kym-design .form-card{padding:32px}.kym-design #anfrageformular{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kym-design #anfrageformular>.zwei,.kym-design #anfrageformular>.einwilligung,.kym-design #anfrageformular>#meldung,.kym-design #anfrageformular>button{grid-column:1/-1}
.kym-design #anfrageformular .zwei{grid-template-columns:1fr 2fr;gap:16px}
}
@media(max-width:639px){.kym-design .hero-picture{background-position:64% center;background-image:linear-gradient(90deg,#00262bdf,#00262b88),var(--hero-image,url('../images/hero.webp'))}.kym-design .hero h1{font-size:clamp(33px,9.5vw,54px)}.kym-design .hero h1 br{display:none}.kym-design .hero .eyebrow{max-width:300px}.kym-design .hero .button{width:100%}.kym-design .hero-text{max-width:350px}.kym-design .price-content>.button{width:100%;font-size:13px}.kym-design .promise h2 br{display:none}.kym-design .promise-heading{gap:14px}.kym-design .shield-circle{width:52px;height:68px}.kym-design .shield-circle .icon{width:42px;height:49px}.kym-design .service-grid h3 br{display:none}.kym-design .person-benefits{grid-template-columns:1fr;gap:16px}.kym-design .person-benefits span br{display:none}.kym-design .footer-row nav{width:100%;margin-top:8px;margin-left:0}.kym-design .contact-copy{order:2}.kym-design .form-card{order:1}.kym-design .contact-grid{width:calc(100% - 24px)}.kym-design .form-card h2{font-size:27px}.kym-design .inner-portrait{float:none;width:100%;margin:0 0 25px;min-height:235px}.kym-design .prose h1{font-size:36px}.kym-design .prose h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
@media print{.kym-design .mobile-menu,.kym-design .skip{display:none}.kym-design .hero-picture{opacity:.2}.kym-design .hero,.kym-design .price-section,.kym-design .person-section,.kym-design .closing{background:white;color:#111}.kym-design .button{color:#111}}
/* Final reference alignment: lighter display face, tighter cards, compact bands. */
@media(min-width:900px){
.kym-design .hero h1{font-weight:400;line-height:1.02;font-size:calc(43 * var(--u));margin-bottom:calc(14 * var(--u))}
.kym-design .hero-content{padding-bottom:calc(15 * var(--u));padding-top:calc(23 * var(--u))}
.kym-design .hero-text{max-width:calc(407 * var(--u));margin-bottom:calc(13 * var(--u))}
.kym-design .service-grid article{padding-bottom:calc(15 * var(--u))}
.kym-design .service-grid h3{min-height:calc(30 * var(--u));margin-top:calc(12 * var(--u))}
.kym-design .service-grid p{margin-top:calc(10 * var(--u))}
.kym-design .faq-section{padding:calc(12 * var(--u)) 0}
}
.kym-design .prose{overflow-wrap:anywhere}
.kym-design .form-card :where(input,select,textarea){max-width:100%}
.kym-design .promise-heading>div,.kym-design .promise-text{min-width:0}
@media(max-width:639px){.kym-design .promise-grid{grid-template-columns:minmax(0,1fr)}.kym-design .promise h2{font-size:26px}}


/* KAYUYImedia 3.0.2: preserve the complete selected portrait.
   The previous absolute/cover treatment cropped landscape portraits at the top.
   A normal-flow image determines its own height using the original aspect ratio. */
.kym-design .person-photo {
  display: flex;
  align-items: center;
  min-height: 0;
  overflow: hidden;
}
.kym-design .person-photo > .portrait-image,
.kym-design .inner-portrait > .portrait-image {
  position: static;
  inset: auto;
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto !important;
  max-height: none;
  object-fit: contain;
  object-position: center top;
}
.kym-design .person-content {
  align-self: center;
}
.kym-design .inner-portrait {
  min-height: 0;
}
.kym-design .person-photo > .portrait-placeholder {
  width: 100%;
}
/* On tablets the picture comes first rather than being squeezed into a narrow column. */
@media (min-width: 640px) and (max-width: 899px) {
  .kym-design .person-section {
    grid-template-columns: minmax(0, 1fr);
  }
}
