/*
Theme Name: HADWERK
Author: HADWERK
Description: Individuelles Erscheinungsbild für HADWERK. Einrichtung unter Design > HADWERK einrichten.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: hadwerk
*/
@font-face{font-family:Manrope;src:url('assets/Manrope-400.ttf');font-display:swap}@font-face{font-family:Manrope;src:url('assets/Manrope-800.ttf');font-weight:800;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:#252a30;background:#fff;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid #b57800;outline-offset:5px}header{min-height:100px;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:white;border-bottom:1px solid #e4e6e8}.logo{width:245px;max-width:48vw;height:auto;display:block}header nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 24px;background:#f2b720;color:#252a30;font-weight:800;border:0;cursor:pointer;line-height:1.45}.button:hover{background:#ffca3b;text-decoration:none}.small{padding:13px 18px}.menu{display:none}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#252a30;color:white}.hero-copy{padding:80px 9% 65px 10%}.eyebrow{display:block;font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:24px}.hero .eyebrow,.dark .eyebrow{color:#f2b720}h1,h2,h3{font-weight:800;line-height:1.13;letter-spacing:-.045em;margin:0 0 24px}h1{font-size:clamp(38px,4.6vw,72px)}h2{font-size:clamp(30px,3.2vw,48px)}h3{font-size:24px;letter-spacing:-.025em}h1 span{color:#f2b720}.hero p{max-width:530px;color:#e3e5e7}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.textlink{font-weight:800;text-decoration:underline;text-underline-offset:5px}.hero-note{font-size:14px;border-top:1px solid #52565c;margin-top:42px;padding-top:24px;color:#c7cbcf}.hero-note strong{color:white}.hero-image{position:relative;margin:0;min-height:500px}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:55% center;position:absolute}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:13px}.section{padding:90px 6%;max-width:1600px;margin:auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading p{max-width:430px;color:#626971}.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d7dade}.service{display:flex;flex-direction:column;padding:30px 22px;border-right:1px solid #d7dade;transition:background .2s}.service:last-child{border-right:0}.service:hover{background:#f4f5f6;text-decoration:none}.number{color:#796013;font-size:14px;font-weight:800;display:block;margin-bottom:25px}.service h3{font-size:clamp(19px,1.6vw,25px);overflow-wrap:anywhere}.service p{color:#626971;font-size:15px}.more{font-weight:800;font-size:14px;margin-top:auto;padding-top:30px;display:flex;justify-content:space-between}.gray{background:#f4f5f6}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.gallery figure{margin:0}.gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}.gallery figcaption{font-size:14px;padding-top:16px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.lead{font-size:23px;line-height:1.55}.dark{background:#252a30;color:white}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.steps span{display:block;color:#f2b720;border-top:1px solid #626971;padding-top:20px;margin-bottom:25px}.steps p{color:#d4d7da}.cta{background:#f2b720;padding:65px 6%;display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{margin-bottom:18px}.cta p{max-width:650px}.cta .button{background:#252a30;color:white;flex-shrink:0}footer{background:#1c2025;color:#e4e6e8;padding:60px 6%;display:grid;grid-template-columns:1.2fr 1fr .6fr;gap:45px;font-size:14px}footer strong{font-size:28px;letter-spacing:.04em}footer a{display:inline-block;padding:5px 0}.breadcrumb{display:block;font-size:14px;margin-bottom:50px;text-decoration:underline}.detail h1{max-width:950px}.detail p{max-width:800px}.detail .button{margin:20px 0}.detail-image{display:block;max-width:100%;width:100%;height:550px;object-fit:cover;margin-top:50px}.points{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:50px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:65px}.contact-link{display:block;font-weight:800;font-size:clamp(18px,2vw,26px);margin:20px 0;overflow-wrap:anywhere}form{background:#f4f5f6;padding:35px}form h2{font-size:28px}label{display:block;font-size:14px;font-weight:800;margin:17px 0 7px}input,select,textarea{display:block;width:100%;border:1px solid #abb1b8;background:white;padding:12px;color:#252a30;border-radius:0}textarea{resize:vertical}.hint,#form-status{font-size:14px}.entry-content>p:empty{display:none}.wp-block-html{margin:0}.legal{max-width:850px;min-height:60vh}.preview-note{padding:12px 5%;background:#fff3cc;color:#252a30;font-size:14px}
@media(min-width:1600px){.hero{max-width:1600px;margin:auto}}@media(max-width:1050px){header nav{gap:15px}.services{grid-template-columns:1fr 1fr}.service{border-bottom:1px solid #d7dade}.hero-copy{padding:60px 8%}.hero{min-height:600px}.section{padding:65px 5%}}@media(max-width:760px){header{min-height:85px;flex-wrap:wrap;padding:15px 5%}.logo{width:220px;max-width:65vw}.menu{display:block;border:1px solid #252a30;background:white;padding:9px 14px;font-weight:800}header nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-top:15px}header nav.open{display:flex}header nav a{padding:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 6%}.hero-image{min-height:360px}.hero-image img{object-position:center}.section-heading,.cta{display:block}.section-heading{margin-bottom:25px}.section-heading p{margin-top:25px}.services,.gallery,.about,.steps,.points,.contact-grid{grid-template-columns:1fr}.service{padding:28px 5px;border-right:0}.service h3{font-size:25px}.section{padding:55px 6%}.gallery{gap:35px}.about,.steps,.contact-grid{gap:35px}.cta{padding:45px 6%}.cta .button{margin-top:20px}footer{grid-template-columns:1fr;gap:25px;padding:45px 6%}.detail-image{height:330px}.contact-grid{margin-top:35px}form{padding:24px}.points{margin:30px 0}h1{font-size:42px;overflow-wrap:break-word}.lead{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* HADWERK 1.1: consistent layout and responsive service imagery */
body{font-size:17px}header{position:relative;z-index:20}header nav{font-size:15px}.logo{width:260px;max-width:52vw}.hero{min-height:610px}.hero-copy{padding-top:70px;padding-bottom:60px}.hero h1{font-size:clamp(39px,4.5vw,68px);line-height:1.08}.hero p{font-size:18px;line-height:1.65}.hero-note{margin-top:32px}.hero-note strong{font-size:15px}.section{padding-top:76px;padding-bottom:76px}.section-heading{align-items:center}.section-heading p{font-size:17px}.eyebrow{line-height:1.55;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.service-card{display:flex;flex-direction:column;border:1px solid #dce0e3;background:#fff;min-width:0}.service-image{display:block;overflow:hidden}.service-image img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}.service-copy{padding:28px 30px;display:flex;flex:1;flex-direction:column}.service-copy .number{margin-bottom:14px;font-size:12px;letter-spacing:1px}.service-copy h3{font-size:28px;margin-bottom:12px;overflow-wrap:normal;hyphens:auto}.service-copy p{color:#525b64;margin:0 0 20px;font-size:16px}.service-copy .more{padding-top:15px;border-top:1px solid #e3e5e8;font-size:15px}.service-copy .more span{margin-left:20px}.hero-image img{object-position:58% center}.hero-image figcaption{line-height:1.5}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:42px;font-size:14px;color:#525b64}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.service-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:55px}.service-hero h1{font-size:clamp(34px,3.8vw,56px);overflow-wrap:normal;hyphens:auto;line-height:1.13}.service-hero .lead{font-size:20px;line-height:1.65}.service-hero .eyebrow{letter-spacing:1.4px}.service-hero .button{margin-top:10px;max-width:100%;font-size:16px}.service-hero-figure{margin:0;min-width:0}.service-hero-figure img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.service-hero-figure figcaption{font-size:12px;color:#606971;margin-top:10px}.service-details{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:75px;align-items:start}.service-details h2{font-size:36px}.service-details p{max-width:720px}.feature-list{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:12px}.feature-list li{padding:14px 18px;border-left:4px solid #f2b720;background:#fff;font-size:16px}.request-panel{padding:30px;background:#fff;border-top:4px solid #f2b720}.request-panel h3{font-size:26px}.request-panel .eyebrow{margin-bottom:16px}.related-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}.related-links a{display:flex;gap:24px;justify-content:space-between;padding:18px 22px;border:1px solid #c6ccd2;font-size:16px;font-weight:800}.related-links a:hover{background:#f2b720;text-decoration:none}.contact-section h1{font-size:clamp(36px,4vw,58px);line-height:1.15}.intro-text{max-width:770px;font-size:19px;color:#525b64}.contact-grid{margin-top:42px;gap:65px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}.contact-details h2{font-size:32px}.contact-advice{margin-top:38px;border-top:1px solid #dce0e3;padding-top:26px}.contact-advice h3{font-size:23px}.contact-details p{color:#525b64}.form-intro{font-size:16px;color:#525b64}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}input,textarea,select{min-width:0;font-size:16px;border-radius:3px}label{font-size:14px}.hint{line-height:1.6}.secondary-button{border:1px solid #252a30;background:white;padding:12px 18px;font-weight:800;cursor:pointer}.secondary-button:hover{background:#e7e9eb}[hidden]{display:none!important}#email-fallback{border-top:1px solid #c6ccd2;padding-top:20px;margin-top:24px;font-size:15px}#email-fallback a{text-decoration:underline}#copy-status{display:block;margin-top:10px}.about-page h1{font-size:clamp(36px,3.7vw,54px)}.owner-panel{align-self:start;padding:45px;background:#252a30;color:white;border-top:5px solid #f2b720}.owner-panel h2{font-size:34px}.owner-panel .eyebrow{color:#f2b720}.owner-panel .contact-link{font-size:21px}.about-page .button{margin-top:20px}.footer-services{list-style:none;margin:0;padding:0}.footer-services a{padding:6px 0}.footer-title{font-weight:800;color:#f2b720;font-size:13px;letter-spacing:1.4px;text-transform:uppercase;display:block;margin-bottom:13px}.footer-bottom{grid-column:1/-1;border-top:1px solid #555b63;padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#c8cdd2}.footer-bottom p{margin:0}.footer-bottom a{padding:0}.preview-note{font-size:13px;padding-top:9px;padding-bottom:9px}.preview-note a{text-decoration:underline}.lead,p{overflow-wrap:break-word}.site-main-empty{min-height:60vh}html{scroll-padding-top:35px}.gallery img{height:auto;aspect-ratio:4/3}form .button{font-size:16px;max-width:100%}footer{grid-template-columns:1.1fr 1fr 1fr;font-size:15px}footer p{line-height:1.7}a,button{ -webkit-tap-highlight-color:rgba(242,183,32,.2)}.service-card a:focus-visible{outline-offset:-4px}
@media(min-width:1600px){header,footer,.cta{padding-left:max(6%,calc((100% - 1408px)/2));padding-right:max(6%,calc((100% - 1408px)/2))}}
@media(max-width:1100px){header nav{gap:17px;font-size:14px}.logo{width:225px}.hero-copy{padding:55px 7%}.hero h1{font-size:48px}.hero-note strong{font-size:14px}.service-hero{gap:32px}.service-hero h1{font-size:42px}.contact-grid{gap:35px}.service-details{gap:35px}.about{gap:35px}.service-copy{padding:24px}.owner-panel{padding:30px}}
@media(max-width:860px){header{flex-wrap:wrap;padding:15px 5%;min-height:86px}.menu{display:block;border:1px solid #252a30;background:#fff;padding:11px 15px;font-size:15px;font-weight:800;line-height:1.4}header nav{display:none;width:100%;padding-top:10px;flex-direction:column;align-items:stretch;gap:4px}header nav.open{display:flex}header nav a{padding:13px 15px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:48px 6%}.hero h1{font-size:clamp(38px,6.8vw,60px)}.hero p{max-width:650px}.hero-image{min-height:0;height:400px}.hero-image img{object-position:center 48%}.service-hero{grid-template-columns:1fr}.service-hero>div{max-width:680px}.service-hero-figure img{aspect-ratio:16/10;max-height:510px}.service-hero h1{font-size:46px}.section-heading{display:block}.section-heading p{max-width:620px}.contact-grid{grid-template-columns:1fr}.contact-details{max-width:640px}.service-details{grid-template-columns:1fr;gap:30px}.service-details .request-panel{max-width:none}.about{grid-template-columns:1fr;gap:32px}.owner-panel{max-width:640px}.section{padding:55px 6%}.steps{gap:28px}.steps h3{font-size:22px}.cta{display:block}.cta .button{margin-top:20px}footer{grid-template-columns:1fr 1fr}.footer-bottom{font-size:13px}.logo{width:245px;max-width:66vw}}
@media(max-width:580px){body{font-size:16px}.hero h1{font-size:40px;letter-spacing:-.04em}.hero-copy{padding-top:42px;padding-bottom:40px}.hero .eyebrow{font-size:11px;letter-spacing:1.4px}.hero-image{height:300px}.hero-note{margin-top:28px}.hero-note strong{font-size:14px}.hero p{font-size:17px}.actions{gap:20px}.service-grid{grid-template-columns:1fr;gap:25px}.service-copy{padding:23px}.service-copy h3{font-size:27px}.service-copy .more{font-size:14px}.service-image img{aspect-ratio:3/2}.section h2{font-size:32px}.service-hero h1{font-size:36px;hyphens:auto}.service-hero .lead{font-size:18px}.service-hero .button{font-size:14px;padding:15px 16px;gap:12px}.breadcrumbs{font-size:12px;gap:8px;margin-bottom:30px}.service-hero-figure img{aspect-ratio:3/2}.related-links{display:grid;grid-template-columns:1fr}.related-links a{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}.contact-section h1{font-size:36px}.contact-grid{gap:32px}.contact-link{font-size:22px}.contact-details h2{font-size:29px}form{padding:23px 20px}form h2{font-size:25px!important}.contact-advice{margin-top:28px}.owner-panel{padding:26px}.owner-panel .contact-link{font-size:20px}.about-page h1{font-size:36px}.steps{grid-template-columns:1fr}.steps h3{font-size:25px}footer{grid-template-columns:1fr;gap:30px}.footer-bottom{gap:14px}.logo{width:210px;max-width:64vw}.menu{padding:9px 12px}.gallery figcaption{font-size:13px}.preview-note{font-size:12px}.cta .button{width:100%}input,select,textarea{font-size:16px}.button{min-height:46px}.service-intro{padding-top:35px}}
@media(max-width:360px){.hero h1{font-size:35px}.logo{width:185px}.hero-note strong{font-size:13px}.service-hero h1{font-size:32px}.contact-section h1{font-size:32px}.service-copy h3{font-size:25px}}

/* HADWERK mobile refinement */
@media(max-width:760px){main,footer,header{min-width:0}main img{max-width:100%}.section{padding:44px 6%}.section h2,.cta h2{font-size:clamp(27px,7.2vw,32px);line-height:1.18;overflow-wrap:break-word}.section-heading{margin-bottom:28px}.section-heading p{font-size:16px;line-height:1.65;margin:18px 0 0}.eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:18px}.service-copy{padding:22px 20px}.service-copy h3{font-size:clamp(22px,6vw,27px);line-height:1.2}.service-copy p{line-height:1.65}.service-grid{gap:20px}.service-copy .more{min-height:48px;align-items:center;padding:14px 0 4px;gap:12px}.service-copy .more span{margin-left:0;flex-shrink:0}.service-hero h1,.about-page h1,.contact-section h1{font-size:clamp(30px,7.6vw,40px);line-height:1.15;overflow-wrap:break-word}.service-hero .lead,.intro-text,.lead{font-size:18px;line-height:1.6}.service-hero{gap:26px}.breadcrumbs{margin-bottom:26px;row-gap:6px}.request-panel,.owner-panel{padding:25px 22px}.request-panel h3,.steps h3{font-size:23px;line-height:1.25}.steps{margin-top:28px;gap:22px}.steps span{margin-bottom:18px}.gallery figcaption{font-size:13px;line-height:1.55;padding-top:12px}.feature-list li{padding:13px 15px}.contact-link{min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere}.contact-grid{margin-top:28px;gap:28px}.contact-advice{margin-top:26px;padding-top:22px}form{padding:24px 20px}form input,form select,form textarea{font-size:16px;max-width:100%}form input,form select{min-height:48px}form label{line-height:1.5}form .button{width:100%;min-height:50px}.related-links a{min-height:48px;align-items:center}footer{padding:38px 6%;gap:26px}.footer-services a,.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}.footer-title{margin-bottom:10px}.footer-bottom{padding-top:16px;align-items:center}.cta{padding:38px 6%}.cta p{font-size:16px}.menu{min-width:68px;min-height:44px}header nav a{min-height:48px}.hero.hadwerk-balanced .hero-copy{padding:30px 6%}.hero.hadwerk-balanced .actions{gap:12px}.hero.hadwerk-balanced .actions .button{width:100%;min-height:50px}.hero.hadwerk-balanced .actions .textlink{display:flex;align-items:center;justify-content:center;min-height:46px;width:100%}}
@media(min-width:581px) and (max-width:760px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){header{gap:12px}.logo{width:185px;max-width:calc(100vw - 106px)}.section h2,.cta h2{font-size:27px}.service-copy{padding:20px 17px}.service-copy h3{font-size:22px}.service-copy .more{font-size:13px}.owner-panel .contact-link{font-size:18px}.contact-link{font-size:21px}}

/* Final review: clear contact actions and keyboard access */
.skip{z-index:100001}.cta>div{min-width:0}.cta-actions{display:flex;flex-direction:column;align-items:center;gap:16px;flex-shrink:0}.cta-actions .textlink{display:inline-flex;min-height:44px;align-items:center}.service-hero .actions{margin-top:26px;gap:18px 24px}.service-hero .actions .button{margin-top:0}.service-hero .actions .textlink{display:inline-flex;align-items:center;min-height:44px}.cta .cta-actions .button{margin-top:0}.cta h2{max-width:760px}
@media(max-width:860px){.cta-actions{align-items:flex-start;margin-top:25px}}
@media(max-width:580px){.service-hero .actions{display:grid;grid-template-columns:1fr;gap:10px}.service-hero .actions .button{width:100%}.service-hero .actions .textlink{justify-content:center}.cta-actions{align-items:stretch}.cta-actions .textlink{justify-content:center}.cta-actions .button{white-space:normal;text-align:center;width:100%}}
