/*
Theme Name: Die Heizungsprofis
Theme URI: https://die-heizungsprofis.jimdosite.com/
Author: OpenAI
Description: Individuelles WordPress-Theme auf Basis des Website-Entwurfs von Die Heizungsprofis.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: die-heizungsprofis
*/


:root{--ink:#171a1b;--paper:#f2f1eb;--green:#b6ef45;--orange:#ff6b35;--muted:#aeb4b1;--line:#343a39}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f8f8f3;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.top{position:sticky;top:0;z-index:10;background:#171a1bf0;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-weight:950;letter-spacing:-1.5px;font-size:20px}.logo span{color:var(--green)}.links{display:flex;gap:22px;font-size:13px;font-weight:700;color:#d7dad5}.links a:hover{color:var(--green)}.menu{display:none;background:none;color:white;border:1px solid var(--line);padding:9px 12px;border-radius:4px}
.hero{padding:90px 0 70px;position:relative;overflow:hidden}.eyebrow{color:var(--green);font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:45px;align-items:center}.hero h1{font-size:clamp(48px,7.4vw,100px);line-height:.91;letter-spacing:-6px;margin:18px 0 24px;font-weight:950;text-transform:uppercase}.hero h1 em{font-style:normal;color:var(--green)}.lead{font-size:18px;max-width:520px;color:#c7ccc7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;padding:14px 19px;font-size:12px;font-weight:900;letter-spacing:.7px;text-transform:uppercase;border:1px solid #f4f4ed}.btn.primary{background:var(--green);color:var(--ink);border-color:var(--green)}.hero-photo{min-height:490px;position:relative;background:#2b3130;overflow:hidden}.hero-photo img{width:100%;height:490px;object-fit:cover;filter:saturate(.8) contrast(1.06)}.photo-tag{position:absolute;bottom:18px;left:18px;background:var(--orange);color:#171a1b;padding:10px 13px;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:1px}.ticker{background:var(--green);color:#171a1b;padding:13px 0;overflow:hidden;font-weight:950;letter-spacing:2px;text-transform:uppercase;white-space:nowrap}.ticker span{padding:0 25px}.section{padding:90px 0}.section.light{background:var(--paper);color:var(--ink)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section h2{font-size:clamp(36px,5vw,62px);line-height:.95;letter-spacing:-3px;text-transform:uppercase;margin:10px 0}.section-intro{max-width:430px;color:#aeb4b1}.light .section-intro{color:#565c58}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{background:#222728;min-height:275px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #343a39;transition:.2s}.card:hover{transform:translateY(-5px);border-color:var(--green)}.card .num{font-size:12px;color:var(--green);font-weight:900}.card h3{font-size:25px;line-height:1.02;letter-spacing:-1px;text-transform:uppercase;margin:0 0 10px}.card p{color:#b9c0bc;font-size:14px;margin:0}.arrow{font-size:22px;color:var(--green);align-self:flex-end}.community{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.statblock{background:var(--green);color:var(--ink);padding:38px;min-height:310px;display:flex;flex-direction:column;justify-content:space-between}.statblock strong{font-size:clamp(48px,7vw,84px);line-height:.9;letter-spacing:-5px}.statblock p{font-weight:700;max-width:300px}.socials{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.socials a{border:1px solid #777d78;padding:12px 15px;font-size:12px;font-weight:900;text-transform:uppercase}.socials a:hover{background:var(--green);color:var(--ink);border-color:var(--green)}.feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center}.feature-img{height:370px;background:#303635;overflow:hidden}.feature-img img{width:100%;height:100%;object-fit:cover}.feature-copy h2{font-size:clamp(38px,5vw,64px)}.feature-copy p{color:#b9c0bc;max-width:510px}.partner-band{background:#252b2b;padding:35px;display:flex;justify-content:space-between;align-items:center;gap:25px}.partner-band strong{font-size:28px;text-transform:uppercase;letter-spacing:-1px}.faq{max-width:850px}.faq details{border-top:1px solid #454b48;padding:18px 0}.faq summary{font-weight:800;cursor:pointer}.faq p{color:#b9c0bc;max-width:700px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:35px}.contact-box{background:#222728;padding:28px}.contact-box a{color:var(--green)}footer{border-top:1px solid var(--line);padding:28px 0;color:#aeb4b1;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.small{font-size:12px;color:#858d88}
@media(max-width:850px){.links{display:none;position:absolute;top:76px;left:0;right:0;background:#171a1b;padding:20px 24px;flex-direction:column;border-bottom:1px solid var(--line)}.links.open{display:flex}.menu{display:block}.hero-grid,.community,.feature,.contact{grid-template-columns:1fr}.hero{padding:55px 0}.hero h1{letter-spacing:-3px}.hero-photo,.hero-photo img{height:360px;min-height:360px}.cards{grid-template-columns:repeat(2,1fr)}.section{padding:65px 0}.section-head{display:block}.feature-img{height:280px}}
@media(max-width:520px){.wrap{width:min(100% - 30px,1180px)}.cards{grid-template-columns:1fr}.card{min-height:210px}.hero h1{font-size:54px}.statblock{min-height:250px;padding:25px}.partner-band{display:block}.partner-band strong{display:block;margin-bottom:12px}}


/* Native Gutenberg homepage blocks */
.dhp-home-content { overflow:hidden; }
.dhp-home-content .wp-block-group.alignfull { margin-block:0; }
.dhp-wrap { width:min(1180px,calc(100% - 44px)); margin-left:auto !important; margin-right:auto !important; }
.dhp-hero { background:var(--ink); color:#f8f8f3; padding:90px 0 70px; }
.dhp-hero .wp-block-columns { gap:45px; margin-bottom:0; }
.dhp-main-title { font-size:clamp(48px,7.4vw,100px) !important; line-height:.91 !important; letter-spacing:-6px !important; margin:18px 0 24px !important; font-weight:950 !important; text-transform:uppercase; }
.dhp-main-title em { color:var(--green); font-style:normal; }
.dhp-hero .lead { font-size:18px; max-width:520px; color:#c7ccc7; }
.dhp-hero-image { height:490px; margin:0; overflow:hidden; }
.dhp-hero-image img { width:100%; height:490px; object-fit:cover; }
.dhp-photo-tag { display:inline-block; background:var(--orange); color:var(--ink); padding:10px 13px; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:1px; margin-top:14px; }
.dhp-actions { margin-top:30px; gap:12px; }
.dhp-home-content .wp-block-button__link { border-radius:0; font-size:12px; font-weight:900; letter-spacing:.7px; text-transform:uppercase; padding:14px 19px; border:1px solid #f4f4ed; }
.dhp-home-content .dhp-button-primary .wp-block-button__link { background:var(--green); color:var(--ink); border-color:var(--green); }
.dhp-home-content .dhp-button-outline .wp-block-button__link { background:transparent; color:#fff; }
.dhp-ticker { background:var(--green); color:var(--ink); padding:13px 0; font-weight:950; letter-spacing:2px; text-transform:uppercase; }
.dhp-ticker p { margin:0; text-align:center; }
.dhp-section { padding:90px 0; background:var(--ink); color:#f8f8f3; }
.dhp-section.dhp-light { background:var(--paper); color:var(--ink); }
.dhp-section .wp-block-columns { gap:28px; margin-bottom:0; }
.dhp-section h2 { font-size:clamp(36px,5vw,62px); line-height:.95; letter-spacing:-3px; text-transform:uppercase; margin:10px 0; }
.dhp-section .eyebrow { color:var(--green); font-size:12px; font-weight:900; letter-spacing:2px; text-transform:uppercase; }
.dhp-light .eyebrow { color:#527a19; }
.dhp-section-head { align-items:end; margin-bottom:35px !important; }
.dhp-section .section-intro { color:#565c58; max-width:430px; }
.dhp-cards { gap:14px !important; }
.dhp-card { background:#222728; color:#f8f8f3; min-height:275px; padding:22px; height:100%; border:1px solid #343a39; }
.dhp-card .num { color:var(--green); font-size:12px; font-weight:900; }
.dhp-card h3 { font-size:25px; line-height:1.02; letter-spacing:-1px; text-transform:uppercase; }
.dhp-card p:not(.num) { color:#b9c0bc; font-size:14px; }
.dhp-community { align-items:center; }
.dhp-community .lead { font-size:18px; color:#c7ccc7; }
.dhp-green { color:var(--green); }
.dhp-statblock { background:var(--green); color:var(--ink); padding:38px; min-height:310px; height:100%; display:flex; flex-direction:column; justify-content:space-between; }
.dhp-statblock .eyebrow { color:var(--ink); }
.dhp-statblock h3 { font-size:clamp(48px,7vw,84px); line-height:.9; letter-spacing:-5px; }
.dhp-socials .wp-block-button__link { border:1px solid #777d78; background:transparent; color:inherit; }
.dhp-feature .wp-block-image { height:370px; margin:0; overflow:hidden; }
.dhp-feature .wp-block-image img { height:100%; width:100%; object-fit:cover; }
.dhp-feature p { color:inherit; }
.dhp-partner-band { background:#252b2b; color:#fff; padding:35px; align-items:center; }
.dhp-partner-band h3 { font-size:28px; text-transform:uppercase; letter-spacing:-1px; }
.dhp-faq { max-width:850px; }
.dhp-faq h4 { border-top:1px solid #454b48; padding-top:18px; margin-bottom:8px; font-weight:800; }
.dhp-faq p { color:#b9c0bc; }
.dhp-contact-box { background:#222728; color:#fff; padding:28px; }
.dhp-contact-box a { color:var(--green); }
@media(max-width:850px) {
 .dhp-hero { padding:55px 0; }
 .dhp-main-title { letter-spacing:-3px !important; }
 .dhp-hero-image,.dhp-hero-image img { height:360px; }
 .dhp-section { padding:65px 0; }
 .dhp-feature .wp-block-image { height:280px; }
 .dhp-cards .wp-block-column { flex-basis:calc(50% - 14px) !important; }
}
@media(max-width:600px) {
 .dhp-wrap { width:calc(100% - 30px); }
 .dhp-main-title { font-size:54px !important; }
 .dhp-cards .wp-block-column { flex-basis:100% !important; }
 .dhp-card { min-height:210px; }
 .dhp-statblock { min-height:250px; padding:25px; }
 .dhp-partner-band { padding:25px; }
}


/* Complete multi-page WordPress theme */
body.page .wp-site-blocks, body.page main { color: inherit; }
body.page:not(.home) main, body.page:not(.home) .entry-content {
  width: min(900px, calc(100% - 40px)); margin-left: auto; margin-right: auto;
}
body.page:not(.home) main { padding-top: 72px; padding-bottom: 82px; }
body.page:not(.home) h1 { font-size: clamp(42px, 6vw, 76px); line-height: .98; letter-spacing: -3px; text-transform: uppercase; margin: 12px 0 24px; }
body.page:not(.home) h2 { margin-top: 42px; font-size: clamp(28px, 4vw, 42px); text-transform: uppercase; letter-spacing: -1.5px; }
body.page:not(.home) h3 { margin-top: 28px; font-size: 23px; }
body.page:not(.home) .lead { max-width: 780px; margin-bottom: 42px; }
body.page:not(.home) p, body.page:not(.home) li { color: #c7ccc7; font-size: 17px; }
body.page:not(.home) a { color: var(--green); text-decoration: underline; text-underline-offset: 3px; }
body.page:not(.home) .wp-block-details { border-top: 1px solid var(--line); padding: 18px 0; }
body.page:not(.home) .wp-block-details summary { cursor: pointer; font-weight: 800; font-size: 18px; }
body.page:not(.home) .wp-block-details p { margin-top: 14px; }
body.page:not(.home) .wp-block-list { padding-left: 24px; }
.dhp-home-content > .wp-block-group { margin-block: 0; }
.dhp-hero { padding: 78px 0 64px; }
.dhp-wrap { width: min(1180px, calc(100% - 44px)); margin-left: auto; margin-right: auto; }
.dhp-main-title { font-size: clamp(48px, 7.4vw, 100px); line-height: .91; letter-spacing: -6px; margin: 18px 0 24px; font-weight: 950; text-transform: uppercase; }
.dhp-main-title em { color: var(--green); font-style: normal; }
.dhp-hero-image img { width: 100%; height: 490px; object-fit: cover; }
.dhp-photo-tag { background: var(--orange); color: var(--ink); display: inline-block; padding: 9px 13px; font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; margin-top: 0; }
.dhp-actions { gap: 12px; }
.dhp-button-primary .wp-block-button__link { background: var(--green); color: var(--ink); border: 1px solid var(--green); border-radius: 0; font-size: 12px; font-weight: 900; letter-spacing: .7px; text-transform: uppercase; padding: 14px 19px; }
.dhp-button-outline .wp-block-button__link, .dhp-socials .wp-block-button__link { background: transparent; color: inherit; border: 1px solid currentColor; border-radius: 0; font-size: 12px; font-weight: 900; text-transform: uppercase; padding: 12px 15px; }
.dhp-ticker { background: var(--green); color: var(--ink); padding: 13px 0; overflow: hidden; font-weight: 950; letter-spacing: 2px; text-transform: uppercase; white-space: nowrap; }
.dhp-ticker p { margin: 0; }
.dhp-section { padding: 82px 0; }
.dhp-light { background: var(--paper); color: var(--ink); }
.dhp-light p { color: #565c58; }
.dhp-section-head { align-items: end; margin-bottom: 32px; }
.dhp-section h2 { font-size: clamp(36px, 5vw, 62px); line-height: .95; letter-spacing: -3px; text-transform: uppercase; margin: 10px 0; }
.dhp-cards { gap: 14px; }
.dhp-card { background: #222728; color: #f8f8f3; min-height: 250px; padding: 22px; border: 1px solid #343a39; height: 100%; }
.dhp-card .num { color: var(--green); font-size: 12px; font-weight: 900; }
.dhp-card h3 { font-size: 24px; line-height: 1.02; text-transform: uppercase; }
.dhp-card p { color: #b9c0bc; font-size: 14px; }
.dhp-community, .dhp-feature, .dhp-contact { align-items: center; gap: 42px; }
.dhp-statblock { background: var(--green); color: var(--ink); padding: 36px; min-height: 300px; justify-content: space-between; }
.dhp-statblock .eyebrow, .dhp-statblock p { color: var(--ink); }
.dhp-statblock h3 { font-size: clamp(44px, 6vw, 76px); line-height: .9; letter-spacing: -4px; }
.dhp-green { color: var(--green); }
.dhp-feature img { width: 100%; height: 350px; object-fit: cover; }
.dhp-partner-band { background: #252b2b; color: white; padding: 34px; }
.dhp-partner-band p { color: #c7ccc7; }
.dhp-faq { max-width: 850px; }
.dhp-contact-box { background: #222728; padding: 28px; color: white; }
.dhp-contact-box p { color: #c7ccc7; }
@media(max-width:850px) {
 .dhp-hero { padding: 52px 0; }
 .dhp-main-title { letter-spacing: -3px; }
 .dhp-hero-image img { height: 360px; }
 .dhp-section { padding: 60px 0; }
 .dhp-cards { flex-wrap: wrap; }
 .dhp-cards > .wp-block-column { flex-basis: calc(50% - 8px) !important; }
}
@media(max-width:520px) {
 .dhp-wrap { width: calc(100% - 30px); }
 .dhp-main-title { font-size: 54px; }
 .dhp-cards > .wp-block-column { flex-basis: 100% !important; }
 .dhp-statblock { min-height: 245px; padding: 24px; }
 .dhp-partner-band { padding: 24px; }
 body.page:not(.home) main { width: calc(100% - 30px); padding-top: 48px; }
}
