/* Kategorien und Kontakt: Farben, Schriften und Bildsprache der Startseite. */
.cat-page{font-family:var(--sans);color:var(--text)}.cat-page img{max-width:100%}.cat-shell{width:min(1200px,90%);margin-inline:auto}.cat-section{padding:76px 0}.cat-soft{background:var(--off)}.cat-page h1,.cat-page h2,.cat-page h3{font-family:var(--serif);letter-spacing:-.025em}.cat-page h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;margin:12px 0 23px;font-weight:700}.cat-page h3{font-size:1.35rem;line-height:1.35;margin-bottom:13px;font-weight:600}.cat-page p{font-size:1rem;line-height:1.85;color:var(--text2);margin:0 0 19px}.cat-page .eyebrow{font-size:.73rem;line-height:1.6}.cat-hero{position:relative;isolation:isolate;background:#142136;min-height:560px;display:flex;align-items:center;padding:33px 0 60px;overflow:hidden}.cat-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.cat-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,18,33,.92),rgba(9,18,33,.74) 48%,rgba(9,18,33,.17));z-index:-1}.cat-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:.73rem;color:rgba(255,255,255,.8);margin:0 0 40px}.cat-breadcrumb a{color:inherit;text-decoration:none}.cat-hero .eyebrow{color:#b9d1f7;letter-spacing:.12em}.cat-hero h1{font-size:clamp(2.3rem,4.3vw,3.7rem);line-height:1.12;color:#fff;font-weight:700;max-width:870px;margin:15px 0 22px}.cat-hero p{color:rgba(255,255,255,.91);max-width:670px;font-size:1.08rem;line-height:1.85}.cat-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:25px 0}.cat-actions .btn-blue{display:inline-flex;align-items:center;gap:18px}.cat-hero .btn-ghost{color:#fff;border-color:#ffffff66;background:transparent}.cat-hero .btn-ghost:hover{border-color:#fff}.cat-proof{display:flex;gap:25px;flex-wrap:wrap;margin-top:30px;color:#ffffffdb;font-size:.78rem}.cat-proof span{display:flex;align-items:center;gap:7px}.cat-proof .fx-icon{width:16px;height:16px;color:#b9d1f7}.cat-page .fx-icon{display:inline-block;width:20px;height:20px;flex-shrink:0;vertical-align:middle}.cat-jumps{border-bottom:1px solid var(--border);background:#fff}.cat-jumps .cat-shell{display:flex;gap:28px;padding-block:17px;flex-wrap:wrap}.cat-jumps a{font-size:.83rem;text-decoration:none;color:var(--text2)}.cat-jumps a:hover{color:var(--accent)}.cat-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:start}.cat-intro h2{margin-top:0}.cat-intro p{font-size:1.06rem;margin:0}.cat-intro>div{min-width:0}.cat-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.cat-choice{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:28px;box-shadow:var(--shadow-sm)}.cat-choice-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:var(--accent-light);color:var(--accent);margin-bottom:22px}.cat-choice p{font-size:.94rem;margin:0}.cat-story{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.cat-story.reverse .cat-story-copy{order:-1}.cat-story figure{margin:0;min-width:0}.cat-story figure img{width:100%;height:390px;object-fit:cover;border-radius:10px;box-shadow:var(--shadow-sm)}.cat-caption{font-size:.72rem!important;color:var(--text3)!important;line-height:1.6!important;margin:10px 0 0!important}.cat-story-copy{min-width:0}.cat-story-copy>p:last-child{margin-bottom:0}.cat-widecopy{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}.cat-sidebox{background:#fff;border:1px solid var(--border);border-radius:8px;padding:30px;box-shadow:var(--shadow-sm)}.cat-sidebox p{font-size:.93rem}.cat-sidebox a{color:var(--accent)}.cat-checks{list-style:none;padding:0;margin:20px 0}.cat-checks li{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid var(--border);font-size:.94rem;line-height:1.7;color:var(--text2)}.cat-checks .fx-icon{color:var(--accent);margin-top:4px;width:17px;height:17px}.cat-plan{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:start}.cat-plan p{max-width:690px}.cat-textlink{display:inline-flex;gap:12px;align-items:center;text-decoration:none;font-size:.9rem;color:var(--accent);font-weight:600;line-height:1.7}.cat-guide-links{list-style:none;margin:18px 0 0;padding:0}.cat-guide-links li{border-top:1px solid var(--border);padding:14px 0}.cat-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%}.cat-faq details{border-bottom:1px solid var(--border);margin:0;padding:0;background:transparent}.cat-faq details:first-child{border-top:1px solid var(--border)}.cat-faq .faq-q{position:relative;display:block;margin:0;padding:21px 32px 21px 0;font-size:1rem;font-weight:500;line-height:1.65;list-style:none;cursor:pointer}.cat-faq .faq-q:before,.cat-faq .faq-a:before{content:none}.cat-faq .faq-q:after{position:absolute;right:2px;top:20px;content:'+';color:var(--accent);font-size:1.4rem}.cat-faq details[open] .faq-q:after{content:'−'}.cat-faq summary::-webkit-details-marker{display:none}.cat-faq .faq-a{padding:0 18px 4px 0}.cat-faq .faq-a p{font-size:.95rem}.cat-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.cat-related>a{display:block;text-decoration:none;background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm);color:var(--text)}.cat-related img{width:100%;height:200px;object-fit:cover}.cat-related-copy{padding:23px}.cat-related h3{font-size:1.25rem;overflow-wrap:anywhere}.cat-related p{font-size:.88rem;margin:0}.cat-related-copy>span{color:var(--accent);font-weight:600;font-size:.85rem;display:inline-flex;gap:10px;align-items:center;margin-top:18px}.cat-cta{background:linear-gradient(105deg,var(--accent2),var(--accent));padding:50px 0}.cat-cta .cat-shell{display:flex;align-items:center;justify-content:space-between;gap:30px}.cat-cta h2{color:#fff;margin:0 0 15px;max-width:770px;font-size:clamp(1.8rem,2.8vw,2.5rem)}.cat-cta p{color:#ffffffdc;max-width:690px;margin:0}.cat-cta .btn-ghost{flex-shrink:0;color:var(--accent2);background:#fff}.cat-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin-top:35px}.cat-gallery figure{margin:0;background:#fff;border:1px solid var(--border);border-radius:7px;padding:12px}.cat-gallery img{width:100%;height:160px;object-fit:cover;border-radius:4px}.cat-gallery figcaption{font-size:.84rem;line-height:1.65;padding:10px 3px 0}.cat-glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 60px}.cat-glossary article{border-top:2px solid var(--accent);padding-top:25px}.cat-swatches .swatch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.cat-swatches .swatch{margin:0}.cat-swatches .swatch i{display:block;height:100px;border:1px solid var(--border);border-radius:5px}.cat-swatches figcaption{font-size:.84rem;line-height:1.6;margin-top:10px}.cat-hero.contact-hero{min-height:300px;padding-bottom:70px}.contact-hero .cat-breadcrumb{margin-bottom:23px}.contact-hero h1{font-size:clamp(2.3rem,4vw,3.3rem);margin-top:12px}.contact-hero p{max-width:780px;margin-bottom:0}.contact-methods{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:-32px;z-index:1}.contact-method{display:flex;flex-direction:column;padding:25px 28px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;text-decoration:none;color:var(--text);min-width:0}.contact-method .fx-icon{color:var(--accent);width:25px;height:25px;margin-bottom:17px}.contact-method>span{font-size:.75rem;color:var(--text3);text-transform:uppercase;letter-spacing:.09em}.contact-method strong{font-weight:600;font-size:1.14rem;line-height:1.6;margin:7px 0;overflow-wrap:anywhere}.contact-method small{font-size:.8rem;line-height:1.6;color:var(--text2)}.contact-method.whatsapp{border-top:3px solid #25d366}.contact-method.whatsapp .fx-icon{color:#138b42}.contact-main{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:start}.contact-main aside{min-width:0}.contact-main h2{margin-top:0}.contact-address{padding:26px 0;border-top:1px solid var(--border);margin-top:27px}.contact-address address{font-style:normal;font-size:.94rem;line-height:1.9;color:var(--text2);margin-bottom:18px}.contact-hours{list-style:none;font-size:.9rem;color:var(--text2);line-height:1.9;padding:0}.contact-hours strong{font-weight:500;color:var(--text)}.contact-formbox{padding:33px;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow)}.contact-formbox h2{font-size:1.8rem;margin:0 0 12px}.contact-formbox>p{font-size:.9rem;margin-bottom:25px}.contact-formbox .form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-formbox .fg{margin-bottom:18px}.contact-formbox label{font-size:.82rem;line-height:1.6;display:block;color:var(--text2);margin-bottom:6px}.contact-formbox input:not([type=checkbox]),.contact-formbox select,.contact-formbox textarea{font:400 16px/1.5 var(--sans);color:var(--text);background:#fff;width:100%;min-height:46px;padding:11px 13px;border:1px solid #c9c8c4;border-radius:5px}.contact-formbox textarea{height:140px;resize:vertical}.contact-formbox .checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:9px 15px;margin-top:17px}.contact-formbox .checkbox-item{font-size:.83rem;display:flex;gap:9px;align-items:center;line-height:1.6;min-height:33px;margin:0}.contact-formbox input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px;flex-shrink:0}.contact-formbox details{margin:0 0 23px;border:1px solid var(--border);padding:14px 17px;border-radius:5px}.contact-formbox summary{font-size:.88rem;font-weight:500;cursor:pointer;line-height:1.6;color:var(--accent)}.contact-formbox .form-submit{width:100%;font:600 .95rem var(--sans);border:0;min-height:52px;padding:15px;background:var(--accent);color:#fff;border-radius:5px;cursor:pointer}.contact-formbox .form-note{font-size:.74rem;line-height:1.7;margin:14px 0 0}.contact-formbox .form-note a{color:var(--accent)}.contact-next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:30px}.contact-next>div{border-top:2px solid var(--accent);padding-top:22px}.contact-next h3{font-size:1.25rem}.contact-next p{font-size:.93rem}.cat-page :focus-visible{outline:3px solid #80a7df;outline-offset:4px}
@media(max-width:960px){.cat-section{padding:58px 0}.cat-hero{min-height:510px}.cat-choices{gap:16px}.cat-choice{padding:23px}.cat-story{gap:5%}.cat-story figure img{height:370px}.contact-method{padding:23px 20px}.contact-main{grid-template-columns:.75fr 1.25fr;gap:5%}.contact-formbox{padding:26px}.cat-cta .cat-shell{align-items:flex-start;flex-direction:column}.cat-hero.contact-hero{min-height:290px}}
@media(max-width:720px){.cat-hero{min-height:auto;padding:25px 0 43px}.cat-hero:after{background:rgba(8,18,33,.8)}.cat-breadcrumb{margin-bottom:28px}.cat-hero h1{font-size:clamp(2.2rem,7.5vw,3.1rem)}.cat-hero p{font-size:1rem}.cat-proof{gap:14px;font-size:.73rem;margin-top:24px}.cat-jumps .cat-shell{gap:12px 21px;padding-block:15px}.cat-intro,.cat-story,.cat-widecopy,.cat-plan,.cat-faq,.contact-main{grid-template-columns:1fr;gap:28px}.cat-intro h2{margin-bottom:0}.cat-choices,.contact-next{grid-template-columns:1fr;gap:18px}.cat-choice{padding:25px}.cat-choice-icon{margin-bottom:16px}.cat-story.reverse .cat-story-copy{order:0}.cat-story figure img{height:330px}.cat-section{padding:48px 0}.cat-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cat-glossary{grid-template-columns:1fr;gap:24px}.cat-swatches .swatch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cat-related{gap:16px}.cat-related img{height:145px}.cat-related-copy{padding:18px}.cat-related h3{font-size:1.05rem}.cat-related p{font-size:.82rem}.contact-methods{gap:13px}.contact-method{padding:22px 15px}.contact-method strong{font-size:.92rem}.contact-method>span{font-size:.66rem}.contact-method small{font-size:.74rem}.cat-hero.contact-hero{min-height:0;padding-bottom:58px}.contact-main aside>p{max-width:620px}.contact-formbox{padding:25px}}
@media(max-width:520px){.contact-methods{grid-template-columns:1fr;margin-top:22px;gap:12px}.contact-method{padding:19px 22px;display:grid;grid-template-columns:32px 1fr;column-gap:16px}.contact-method .fx-icon{grid-row:1/4;margin-top:6px;margin-bottom:0}.contact-method strong{font-size:1.05rem;margin:4px 0}.contact-method>span{font-size:.72rem}.contact-method small{font-size:.8rem}.cat-hero.contact-hero{padding-bottom:34px}.contact-formbox .form-row{grid-template-columns:1fr;gap:0}.contact-formbox .checkbox-group{grid-template-columns:1fr}.cat-related{grid-template-columns:1fr}.cat-related img{height:200px}.cat-related h3{font-size:1.2rem}.cat-related p{font-size:.9rem}.cat-sidebox{padding:25px}.cat-swatches .swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cat-story figure img{height:280px}.cat-cta{padding:40px 0}}
@media(max-width:360px){.cat-shell{width:89%}.cat-actions .btn-blue,.cat-actions .btn-ghost{padding:13px 20px}.cat-hero h1{font-size:2.15rem}.contact-formbox{padding:21px}.cat-gallery{gap:13px}.cat-gallery img{height:130px}}
@media(prefers-reduced-motion:reduce){.cat-page *{transition:none!important}}

/* Explicit placement for every contact-card child, including the WhatsApp mark. */
.contact-method>svg{flex-shrink:0;width:25px;height:25px;color:var(--accent);margin-bottom:17px}.contact-method.whatsapp>svg{color:#138b42}.contact-method>*{min-width:0}
@media(max-width:520px){.contact-method>svg{grid-column:1;grid-row:1/4;width:25px;height:25px;margin:6px 0 0}.contact-method>span,.contact-method>strong,.contact-method>small{grid-column:2}.contact-method>span{grid-row:1}.contact-method>strong{grid-row:2;overflow-wrap:break-word;word-break:normal}.contact-method>small{grid-row:3}}

/* Required acknowledgement: large tap target, clear label, no preselection. */
.contact-formbox .contact-privacy{padding:19px;margin:4px 0 22px;background:#f4f7fb;border:1px solid #d7e1ef;border-radius:6px}.contact-formbox .contact-privacy-check{display:flex;gap:12px;align-items:flex-start;font-size:.88rem;line-height:1.75;margin:0;min-height:44px;cursor:pointer}.contact-formbox .contact-privacy-check input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:4px 0 0}.contact-privacy-check>span{min-width:0}.contact-privacy-check a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.contact-formbox .contact-privacy>p{font-size:.76rem;line-height:1.75;margin:9px 0 0 32px;color:var(--text2)}
@media(max-width:420px){.contact-formbox .contact-privacy{padding:15px}.contact-formbox .contact-privacy>p{margin-left:0}.contact-formbox .contact-privacy-check{font-size:.86rem}}
