/*
Theme Name:   Divi Child Doro Hartmann
Description:  Child-Theme für dorohartmann.de nach der Markenwelt (Final, April 2026)
Template:     Divi
Version:      1.0.7
Text Domain:  divi-child-dorohartmann
*/

/* 1. Schriften, lokal eingebunden (SIL Open Font License) */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/manrope-400.woff2") format("woff2");}
@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/manrope-600.woff2") format("woff2");}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/jetbrains-mono-400.woff2") format("woff2");}

/* 1a. Grundschrift für die gesamte Website (auch Impressum, Datenschutz und Divi-Module) */
body,button,input,select,textarea,.et_pb_button{font-family:"Manrope","Helvetica Neue",Helvetica,Arial,sans-serif;}

/* 2. Header */
header.et-l,.et-l--header{position:sticky;top:0;z-index:999;}
.admin-bar header.et-l,.admin-bar .et-l--header{top:32px;}
.et_pb_section:has(.dh-head){background-color:#F7F6F2;padding:0;}
.et_pb_row:has(.dh-head){width:100%;max-width:100%;padding:0;}
html{scroll-behavior:smooth;}
#profil,#leistungen,#zusammenarbeit,#kontakt{scroll-margin-top:96px;}
.dh-head{background:#F7F6F2;border-bottom:1px solid #D8D7D4;font-family:"Manrope","Helvetica Neue",Helvetica,Arial,sans-serif;}
.dh-head *{box-sizing:border-box;}
.dh-head-in{max-width:1080px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.dh-head a{text-decoration:none;}
.dh-head a:focus-visible{outline:2px solid #3A5A7A;outline-offset:3px;}
.dh-brand{display:flex;align-items:center;gap:12px;color:#1A1C1F;}
.dh-mono{font-size:30px;font-weight:600;letter-spacing:-0.04em;color:#1A1C1F;line-height:1;}
.dh-mono span{color:#C8902A;}
.dh-logo{display:block;height:40px;width:auto;max-width:140px;}
.dh-name{display:flex;flex-direction:column;line-height:1.25;}
.dh-name b{font-size:15px;font-weight:600;color:#1A1C1F;}
.dh-name small{font-size:12px;color:#383A3E;}
.dh-nav{display:flex;gap:28px;}
.dh-nav a{font-size:14px;font-weight:600;color:#1A1C1F;}
.dh-nav a:hover{color:#3A5A7A;}
.dh-head a.dh-cta{display:inline-block;border:1px solid #3A5A7A;color:#3A5A7A;padding:9px 18px;font-size:14px;font-weight:600;border-radius:999px;white-space:nowrap;}
.dh-head a.dh-cta:hover{background:#3A5A7A;color:#FFFFFF;}
@media (max-width:900px){.dh-head-in{flex-wrap:wrap;row-gap:0;padding:12px 16px 0;}.dh-name small{display:none;}.dh-nav{order:3;width:100%;justify-content:space-between;gap:16px;margin-top:12px;border-top:1px solid #D8D7D4;overflow-x:auto;scrollbar-width:none;}.dh-nav::-webkit-scrollbar{display:none;}.dh-nav a{padding:12px 0;white-space:nowrap;}#profil,#leistungen,#zusammenarbeit,#kontakt{scroll-margin-top:124px;}}
/* 2a. Mobiles Menü (Drei-Strich). Ohne JavaScript bleibt die sichtbare Leiste als Rückfallebene. */
.dh-burger{display:none;}
.dh-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
@media (max-width:900px){.dh-head.dh-js .dh-head-in{padding-bottom:12px;}.dh-head.dh-js .dh-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 -10px 0 0;padding:0;background:transparent;border:0;border-radius:4px;color:#1A1C1F;cursor:pointer;}.dh-head.dh-js .dh-burger:focus-visible{outline:2px solid #3A5A7A;outline-offset:2px;}.dh-bars{position:relative;display:block;width:24px;height:16px;}.dh-bars span{position:absolute;left:0;width:24px;height:2px;background:currentColor;border-radius:1px;transition:transform .2s ease,opacity .2s ease,top .2s ease;}.dh-bars span:nth-child(1){top:0;}.dh-bars span:nth-child(2){top:7px;}.dh-bars span:nth-child(3){top:14px;}.dh-head.dh-open .dh-bars span:nth-child(1){top:7px;transform:rotate(45deg);}.dh-head.dh-open .dh-bars span:nth-child(2){opacity:0;}.dh-head.dh-open .dh-bars span:nth-child(3){top:7px;transform:rotate(-45deg);}.dh-head.dh-js .dh-nav{display:none;}.dh-head.dh-js.dh-open .dh-nav{display:flex;flex-direction:column;gap:0;overflow:visible;width:calc(100% + 32px);margin:12px -16px -12px;padding:4px 16px 8px;background:#3A5A7A;border-top:0;}.dh-head.dh-js.dh-open .dh-nav a{display:block;padding:14px 0;font-size:16px;color:#FFFFFF;border-bottom:1px solid rgba(255,255,255,.25);}.dh-head.dh-js.dh-open .dh-nav a:hover{color:#FFFFFF;text-decoration:underline;}.dh-head.dh-js.dh-open .dh-nav a:focus-visible{outline:2px solid #FFFFFF;outline-offset:-2px;}.dh-head.dh-js.dh-open .dh-nav a:last-child{border-bottom:0;}:root:has(.dh-head.dh-js) :is(#profil,#leistungen,#zusammenarbeit,#kontakt){scroll-margin-top:84px;}}
@media (prefers-reduced-motion:reduce){.dh-bars span{transition:none;}}
@media (max-width:782px){.admin-bar header.et-l,.admin-bar .et-l--header{top:46px;}}
@media (max-width:600px){.admin-bar header.et-l,.admin-bar .et-l--header{top:0;}}

/* 3. Startseite */
.et_pb_section:has(.dh-page){background-color:#F7F6F2;}
.dh-page{color:#1A1C1F;font-family:"Manrope","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6;font-weight:400;}
.dh-page *{box-sizing:border-box;}
.dh-page p{margin:0 0 1.1em 0;padding:0;}
.dh-page a{color:#3A5A7A;text-decoration:none;}
.dh-page a:hover{text-decoration:underline;}
.dh-page a:focus-visible{outline:2px solid #3A5A7A;outline-offset:3px;}
.dh-page ul{margin:0;padding:0 0 0 18px;}
.dh-page li{margin-bottom:6px;}
.dh-page h1,.dh-page h2,.dh-page h3{font-family:"Manrope","Helvetica Neue",Helvetica,Arial,sans-serif;color:#1A1C1F;padding:0;}
.dh-kicker,.dh-num,.dh-lbl,.dh-meta .k,.dh-card .k,.dh-rows .k,.dh-small,.dh-ticker span,.dh-leist .n{font-family:"JetBrains Mono",Menlo,Consolas,"Courier New",monospace;}
.dh-kicker,.dh-num,.dh-lbl,.dh-meta .k,.dh-card .k,.dh-rows .k{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#3A5A7A;}
.dh-kicker{margin-bottom:28px;}
.dh-page h1.dh-claim{font-weight:600;font-size:clamp(36px,6vw,54px);line-height:1.05;letter-spacing:-0.03em;margin:0;padding:0 0 22px 0;border-bottom:2px solid #C8902A;}
.dh-claim span{display:block;}
.dh-acc{color:#3A5A7A;}
.dh-page p.dh-lede{font-size:18px;line-height:1.6;color:#383A3E;max-width:720px;margin-top:32px;}
.dh-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;padding-top:20px;border-top:1px solid #D8D7D4;}
.dh-meta .k{display:block;}
.dh-meta .v{display:block;font-size:15px;margin-top:4px;color:#1A1C1F;}
.dh-ticker{overflow:hidden;white-space:nowrap;border-top:1px solid #D8D7D4;border-bottom:1px solid #D8D7D4;padding:16px 0;margin-top:48px;}
.dh-track{display:inline-block;animation:dhmove 45s linear infinite;}
.dh-ticker span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#383A3E;margin-right:28px;}
.dh-ticker span.dot{color:#3A5A7A;}
@keyframes dhmove{from{transform:translateX(0);}
to{transform:translateX(-50%);}
}
@media (prefers-reduced-motion:reduce){.dh-track{animation:none;}
}
.dh-num{margin-bottom:14px;}
.dh-page h2{font-weight:600;font-size:clamp(28px,3.4vw,34px);line-height:1.1;letter-spacing:-0.025em;margin:0 0 32px 0;}
.dh-page h3{font-weight:600;font-size:22px;line-height:1.2;letter-spacing:-0.02em;margin:0 0 10px 0;}
.dh-grid2{display:grid;grid-template-columns:1.45fr 1fr;gap:64px;align-items:start;}
.dh-grid2 p{color:#383A3E;}
.dh-box{background:#FFFFFF;border:1px solid #D8D7D4;padding:24px 26px;margin-top:24px;color:#1A1C1F;}
.dh-box.dh-sand{background:#ECEBE6;border-color:#ECEBE6;}
.dh-box.dh-first{margin-top:0;}
.dh-lbl{display:block;margin-bottom:10px;}
.dh-box li{font-size:15px;}
.dh-leist{display:grid;grid-template-columns:70px 1fr 2fr;gap:24px;padding:26px 0;border-top:1px solid #D8D7D4;align-items:start;}
.dh-leist.last{border-bottom:1px solid #D8D7D4;}
.dh-leist .n{font-size:12px;color:#3A5A7A;padding-top:5px;}
.dh-leist .t{font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-0.02em;}
.dh-pills{display:flex;flex-wrap:wrap;gap:10px;}
.dh-pills span{border:1px solid #D8D7D4;background:#FFFFFF;border-radius:999px;padding:7px 14px;font-size:14px;line-height:1.35;color:#1A1C1F;}
.dh-intro{max-width:800px;margin-bottom:48px;}
.dh-big{font-size:clamp(24px,2.8vw,28px);line-height:1.2;font-weight:600;letter-spacing:-0.02em;color:#3A5A7A;margin-bottom:14px;}
.dh-intro p{color:#383A3E;}
.dh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.dh-card{background:#FFFFFF;border:1px solid #D8D7D4;padding:28px 26px;}
.dh-card .k{display:block;margin-bottom:10px;}
.dh-card p{font-size:15px;color:#383A3E;}
.dh-page p.dh-note{margin-top:28px;font-size:14px;color:#383A3E;}
.dh-book{background:#ECEBE6;padding:40px 44px;display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:center;}
.dh-book p{color:#383A3E;}
.dh-page h3.dh-booktitle{font-size:28px;font-weight:600;letter-spacing:-0.025em;}
.dh-page a.dh-btn{display:inline-block;background:#3A5A7A;color:#FFFFFF;padding:14px 26px;font-size:15px;font-weight:600;border-radius:2px;}
.dh-page a.dh-btn:hover{background:#1A1C1F;color:#FFFFFF;text-decoration:none;}
.dh-page a.dh-btn2{display:inline-block;border:1px solid #3A5A7A;color:#3A5A7A;padding:13px 24px;font-size:15px;font-weight:600;border-radius:2px;}
.dh-page a.dh-btn2:hover{background:#3A5A7A;color:#FFFFFF;text-decoration:none;}
.dh-small{font-size:13px;color:#383A3E;margin-top:16px;line-height:1.8;}
.dh-rows{border-top:1px solid #D8D7D4;}
.dh-row{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid #D8D7D4;font-size:16px;}
.dh-rows .k{padding-top:4px;}
.dh-cbtns{display:flex;flex-direction:column;gap:12px;}
.dh-page .dh-cbtns a.dh-btn,.dh-page .dh-cbtns a.dh-btn2{display:block;text-align:center;margin:0;padding:16px 24px;font-size:16px;}
@media (max-width:900px){.dh-kicker,.dh-num,.dh-lbl,.dh-meta .k,.dh-card .k,.dh-rows .k,.dh-ticker span,.dh-leist .n{font-size:12px;}
.dh-grid2,.dh-book{grid-template-columns:1fr;gap:32px;}
.dh-cards{grid-template-columns:1fr;}
.dh-leist{grid-template-columns:1fr;gap:10px;}
.dh-meta{grid-template-columns:1fr;}
.dh-row{grid-template-columns:1fr;gap:2px;}
.dh-book{padding:30px 24px;}
}
.et_pb_section:has(.dh-site){padding:0;}
.et_pb_row:has(.dh-site){width:100%;max-width:100%;padding:0;}
.dh-site{background:#F7F6F2;}
.dh-sec{padding:64px 0;}
.dh-wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
.dh-hero-img{margin:40px 0 0 0;}
.dh-hero-img img{display:block;width:100%;max-height:560px;object-fit:cover;object-position:center 25%;}
.dh-hero-img img[src='']{display:none;}
@media (max-width:900px){.dh-sec{padding:44px 0;}
}

/* 4. Footer */
.et_pb_section:has(.dh-foot){background-color:#ECEBE6;padding:0;}
.et_pb_row:has(.dh-foot){width:100%;max-width:100%;padding:0;}
.dh-foot{background:#ECEBE6;font-family:"Manrope","Helvetica Neue",Helvetica,Arial,sans-serif;color:#383A3E;}
.dh-foot *{box-sizing:border-box;}
.dh-foot-in{max-width:1080px;margin:0 auto;padding:36px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.dh-foot a{text-decoration:none;color:#1A1C1F;}
.dh-foot a:hover{color:#3A5A7A;text-decoration:underline;}
.dh-foot a:focus-visible{outline:2px solid #3A5A7A;outline-offset:3px;}
.dh-flogo{display:block;height:28px;width:auto;max-width:100px;}
.dh-fbrand{display:flex;align-items:center;gap:14px;}
.dh-fmono{font-size:26px;font-weight:600;letter-spacing:-0.04em;color:#1A1C1F;line-height:1;}
.dh-fmono span{color:#C8902A;}
.dh-copy{font-family:"JetBrains Mono",Menlo,Consolas,"Courier New",monospace;font-size:11px;letter-spacing:.08em;color:#383A3E;}
.dh-legal{display:flex;gap:24px;font-size:14px;}
@media (max-width:700px){.dh-copy{font-size:12px;}.dh-foot-in{flex-direction:column;align-items:flex-start;gap:16px;}}
