/*
Theme Name: MDG Consulting
Description: An editorial, fully editable WordPress block theme for MDG Consulting. Native Site Editor templates, global styles, and reusable section patterns.
Version: 1.0.1
Requires at least: 6.6
Tested up to: 6.6
Requires PHP: 7.4
Author: MDG Consulting
Text Domain: mdg-consulting
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--mdg-dark:var(--wp--preset--color--charcoal,#191b1a);--mdg-light:var(--wp--preset--color--ivory,#f3f0e9);--mdg-red:var(--wp--preset--color--red,#991f25);--mdg-muted:var(--wp--preset--color--muted,#b8b8b0);--mdg-line:rgba(243,240,233,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--mdg-light);color:var(--mdg-dark);font-family:var(--wp--preset--font-family--sans,Arial,Helvetica,sans-serif);font-size:16px;line-height:1.65}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #191b1a;outline-offset:5px;box-shadow:0 0 0 5px #ffffff}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:700;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(3.3rem,6.7vw,6.5rem);margin-bottom:1.75rem}h2{font-size:clamp(2.7rem,4.6vw,4.75rem);margin-bottom:2rem}h3{font-size:clamp(1.7rem,2.4vw,2.25rem);margin-bottom:1rem}em{font-family:var(--wp--preset--font-family--serif,Georgia,serif);font-weight:700}p{margin-bottom:1.3rem}p:last-child{margin-bottom:0}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-group{margin-block-start:0}.mdg-section{padding:110px max(6vw,24px);position:relative}.mdg-eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;margin-bottom:30px}.mdg-site-header{background:var(--mdg-dark);color:var(--mdg-light);border-bottom:1px solid var(--mdg-line);position:relative;z-index:10}.mdg-header-inner{display:flex;justify-content:space-between;align-items:center;padding:24px max(6vw,24px);gap:24px;max-width:1600px;margin:auto}.mdg-brand{margin:0;line-height:1}.mdg-brand a{display:flex;align-items:center;gap:16px;text-decoration:none}.mdg-brand strong{font-size:36px;letter-spacing:-3px;font-style:italic;color:#d94b50}.mdg-brand span{font-size:10px;letter-spacing:.27em;border-left:1px solid #747672;padding:8px 0 8px 17px}.mdg-preview-nav,.mdg-navigation{font-size:12px}.mdg-preview-nav{display:flex;gap:30px;align-items:center}.mdg-preview-nav a{text-decoration:none}.mdg-preview-nav a:last-child{border-bottom:1px solid #9b9c94;padding-bottom:4px}.mdg-hero{background:var(--mdg-dark);color:var(--mdg-light);display:grid;grid-template-columns:1.2fr 1fr;min-height:800px;padding-top:75px;padding-bottom:90px;gap:40px;overflow:hidden}.mdg-hero-content{position:relative;z-index:2}.mdg-hero h1 em{color:#ddd2c0}.mdg-hero-copy{max-width:360px;font-size:15px;color:#c5c6be;line-height:1.8}.wp-block-buttons{display:flex;flex-wrap:wrap;margin-top:30px}.wp-block-button__link{display:inline-flex;justify-content:space-between;gap:40px;align-items:center;border:1px solid transparent;border-radius:0;background:var(--mdg-red);color:white;font-size:12px;font-weight:700;letter-spacing:.02em;padding:17px 23px;text-decoration:none;transition:background .2s,transform .2s}.wp-block-button__link:hover{background:#b62d33;transform:translateY(-2px)}.wp-block-button__link span{font-size:20px;line-height:1}.mdg-explore{font-size:11px;margin-top:28px}.mdg-explore a{text-decoration:none;color:#c5c6be}.mdg-explore span{margin-left:14px}.mdg-hero-art{position:relative;align-self:stretch;min-height:570px;border:1px solid #4a4b44;margin:25px 0 55px 10px;background:repeating-linear-gradient(0deg,transparent,transparent 49px,#ffffff05 49px,#ffffff05 50px),repeating-linear-gradient(90deg,transparent,transparent 49px,#ffffff05 49px,#ffffff05 50px);transform:perspective(1200px) rotateY(-7deg);overflow:hidden}.mdg-hero-art:before{content:'';position:absolute;width:250px;height:250px;left:12%;top:22%;border-radius:50%;background:radial-gradient(circle,#b92d3255,transparent 70%)}.mdg-art-label{position:absolute;left:22px;top:21px;font:8px monospace;letter-spacing:.11em;color:#c1c1b7}.mdg-art-caption{position:absolute;bottom:23px;left:24px;font-family:Georgia,serif;font-size:24px;font-style:italic;line-height:1.2}.mdg-house{position:absolute;left:15%;top:29%;width:70%;height:42%;border:1px solid #e0d5bd;transform:skewY(-12deg);box-shadow:20px 20px 0 -19px #e0d5bd,45px 45px 0 -44px #e0d5bd}.mdg-house:before{content:'';position:absolute;left:10%;top:-29%;width:72%;height:58%;border-top:1px solid #e0d5bd;border-left:1px solid #e0d5bd;transform:rotate(37deg) skew(-12deg);background:linear-gradient(120deg,#b4292f88,transparent)}.mdg-house:after{content:'';position:absolute;inset:30% 18% 0 15%;border:1px solid #e0d5bd;background:repeating-linear-gradient(90deg,transparent,transparent 30%,#e0d5bd 30%,#e0d5bd 30.5%)}.mdg-section-number{position:absolute;left:max(6vw,24px);bottom:24px;font:9px monospace;letter-spacing:.14em;color:#b6b8ac}.mdg-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:8vw}.mdg-intro h2 em{color:var(--mdg-red)}.mdg-intro-copy{padding-top:45px;max-width:470px;color:#5a5b55;font-size:14px}.mdg-lead{font-weight:600;font-size:22px;line-height:1.4;color:var(--mdg-dark);letter-spacing:-.025em}.mdg-text-link{display:inline-block;font-size:12px;color:var(--mdg-dark);text-decoration:none;border-bottom:1px solid #8e8f85;padding:8px 0}.mdg-text-link span{margin-left:26px}.mdg-process{background:#e7e4dc;display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;border-top:1px solid #cccbc0}.mdg-process-title>p:last-child{font-size:14px;color:#616259}.mdg-steps{border-top:1px solid #b9b9ac}.mdg-step{display:grid;grid-template-columns:65px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid #b9b9ac}.mdg-step-number{font-family:Georgia,serif;font-size:40px;font-style:italic;line-height:1.1;color:var(--mdg-red)}.mdg-step-content h3{font-size:25px;letter-spacing:-.035em;margin:0 0 12px}.mdg-step-content p{color:#5d5e56;font-size:14px;max-width:350px}.mdg-about{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw}.mdg-about-copy>p:not(.mdg-eyebrow):not(.mdg-lead){font-size:14px;color:#606159;max-width:430px}.mdg-about-panel{padding:38px;border:1px solid #c6c6b9;position:relative;background:linear-gradient(135deg,#e5e1d5,transparent)}.mdg-about-panel:after{content:'+';position:absolute;right:16px;top:8px;color:var(--mdg-red);font-size:25px}.mdg-about-panel h3{font-family:Georgia,serif;font-style:italic;font-size:41px;margin-bottom:28px}.mdg-credential{border-top:1px solid #bcbdb1;padding-top:16px;font-size:14px;line-height:1.5}.mdg-small{font-size:11px;line-height:1.7;max-width:400px}.mdg-about-panel .mdg-small{color:#606159}.mdg-contact{text-align:center;background:var(--mdg-red);color:#fff6ec;padding-top:90px;padding-bottom:90px}.mdg-contact h2{font-size:clamp(3.1rem,6vw,6rem)}.mdg-contact .mdg-eyebrow{color:#edc4c1}.mdg-contact-copy{font-size:14px;color:#f1d5d1}.mdg-contact .wp-block-buttons{justify-content:center}.mdg-button-light .wp-block-button__link{background:#f3f0e9;color:#3a2522}.mdg-button-light .wp-block-button__link:hover{background:white}.mdg-email{font-size:13px;margin-top:25px;overflow-wrap:anywhere}.mdg-contact .mdg-small{margin:24px auto 0;color:#f1d5d1}.mdg-site-footer{background:var(--mdg-dark);color:var(--mdg-light)}.mdg-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px max(6vw,24px)}.mdg-footer-label{font-size:9px;letter-spacing:.12em;color:#c2c3b9;margin:0}.mdg-footer-top{font-size:11px}.mdg-footer-top a{text-decoration:none}.mdg-page{padding:80px max(6vw,24px);min-height:60vh}.mdg-skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:var(--mdg-light);color:var(--mdg-dark);padding:12px}.mdg-skip-link:focus{top:16px}.mdg-progress{height:2px;background:#d94b50;position:fixed;left:0;top:0;z-index:99;transform-origin:left;width:100%;transform:scaleX(0);pointer-events:none}.mdg-motion .mdg-reveal{transition:opacity .7s ease,transform .7s ease}.mdg-motion .mdg-reveal.mdg-pending{opacity:0;transform:translateY(24px)}
/* Keep native editor content visible and editable. */
.editor-styles-wrapper .mdg-reveal{opacity:1!important;transform:none!important}.editor-styles-wrapper .mdg-hero-art{min-height:450px}
@media(min-width:1600px){.mdg-section{padding-left:calc((100vw - 1408px)/2);padding-right:calc((100vw - 1408px)/2)}}
@media(max-width:1000px){.mdg-hero{min-height:710px;gap:25px}.mdg-hero-art{min-height:490px}.mdg-header-inner{padding-top:22px;padding-bottom:22px}.mdg-preview-nav{gap:18px}.mdg-section{padding-top:80px;padding-bottom:80px}.mdg-intro,.mdg-process,.mdg-about{gap:5vw}.mdg-about-panel{padding:28px}.mdg-footer-label{display:none}}
@media(max-width:700px){html{scroll-padding-top:25px}.mdg-header-inner{flex-wrap:wrap;gap:20px}.mdg-brand strong{font-size:31px}.mdg-brand span{font-size:8px}.mdg-preview-nav{width:100%;justify-content:space-between;font-size:11px;gap:10px}.mdg-navigation{margin-left:auto}.mdg-hero{grid-template-columns:1fr;gap:30px;padding-top:50px;padding-bottom:65px}.mdg-hero h1{font-size:clamp(3.3rem,11vw,5rem)}.mdg-hero-art{min-height:360px;width:100%;margin:0;transform:none}.mdg-house{left:21%;width:60%;top:27%;height:42%}.mdg-art-caption{font-size:21px}.mdg-section-number{bottom:20px}.mdg-section{padding-left:24px;padding-right:24px}.mdg-intro,.mdg-process,.mdg-about{grid-template-columns:1fr;gap:30px;padding-top:64px;padding-bottom:64px}.mdg-intro-copy{padding-top:0}.mdg-process-title h2{margin-bottom:24px}.mdg-step{grid-template-columns:48px 1fr;gap:12px}.mdg-step-number{font-size:34px}.mdg-about-panel{padding:30px}.mdg-contact{padding-top:64px;padding-bottom:64px}.mdg-contact h2{font-size:clamp(3rem,10.4vw,4.5rem)}.mdg-footer-inner{padding:30px 24px;flex-wrap:wrap}.mdg-footer-top{margin:0}.mdg-hero-copy{max-width:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.mdg-motion .mdg-reveal.mdg-pending{opacity:1;transform:none}.mdg-progress{display:none}.wp-block-button__link:hover{transform:none}}

/* A native Image block keeps the hero photograph replaceable in WordPress. */
.mdg-hero-photograph{transform:none;background:var(--mdg-dark);isolation:isolate}
.mdg-hero-photograph:before{display:none}
.mdg-property-photo{position:absolute;inset:0;margin:0!important;width:100%;height:100%;z-index:-2}
.mdg-property-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.mdg-hero-photograph:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(10,14,13,.58),transparent 32%,transparent 48%,rgba(10,14,13,.86))}
.mdg-hero-photograph .mdg-art-label{color:#fff;font-weight:700;text-shadow:0 1px 8px #000}
.mdg-hero-photograph .mdg-art-caption{color:#fff;font-weight:700;text-shadow:0 2px 12px #000}

/* Full-bleed section photography; text remains independent editable blocks. */
.mdg-hero{isolation:isolate;position:relative}
.mdg-hero .mdg-hero-photograph{position:absolute;inset:0;min-height:0;margin:0;border:0;z-index:-1;transform:none}
.mdg-hero-photograph .mdg-property-photo img{object-position:center 48%}
.mdg-hero-photograph:after{background:linear-gradient(90deg,rgba(11,16,14,.96) 0%,rgba(11,16,14,.89) 30%,rgba(11,16,14,.68) 49%,rgba(11,16,14,.10) 78%),linear-gradient(0deg,rgba(11,16,14,.65),transparent 35%)}
.mdg-hero-photograph .mdg-art-label{left:auto;right:6vw;top:40px}
.mdg-hero-photograph .mdg-art-caption{left:auto;right:6vw;bottom:44px;text-align:right}
.mdg-hero .mdg-section-number{z-index:2}
.mdg-process,.mdg-contact{isolation:isolate;overflow:hidden;position:relative}
.mdg-section-photo{position:absolute;inset:0;margin:0!important;width:100%;height:100%;z-index:-2;pointer-events:none}
.mdg-section-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.mdg-process{background:var(--mdg-dark);color:var(--mdg-light);border-top:0;min-height:660px}
.mdg-process:before,.mdg-contact:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.mdg-process:before{background:linear-gradient(90deg,rgba(14,20,18,.88),rgba(14,20,18,.60))}
.mdg-process h2,.mdg-process h3{color:#f3f0e9}
.mdg-process-title>p:last-child,.mdg-step-content p{color:#e0e2dc}
.mdg-process .mdg-step-number{color:#f1b6a9}
.mdg-process .mdg-steps,.mdg-process .mdg-step{border-color:rgba(243,240,233,.35)}
.mdg-contact:before{background:rgba(114,16,23,.88)}
.mdg-contact .mdg-section-photo img{object-position:center 55%}
@media(max-width:700px){
 .mdg-hero{padding-bottom:140px;min-height:820px}
 .mdg-hero-photograph:after{background:linear-gradient(90deg,rgba(11,16,14,.94),rgba(11,16,14,.68)),linear-gradient(0deg,rgba(11,16,14,.6),transparent 45%)}
 .mdg-hero-photograph .mdg-art-label{top:auto;bottom:108px;right:24px;font-size:7px}
 .mdg-hero-photograph .mdg-art-caption{right:24px;bottom:48px;font-size:20px}
 .mdg-hero .mdg-section-number{font-size:8px}
 .mdg-process .mdg-section-photo img{object-position:64% center}
 .mdg-process:before{background:rgba(14,20,18,.84)}
}

/* Consistent device-independent CTA arrows, drawn with CSS rather than a font glyph. */
.wp-block-button__link span[aria-hidden="true"]{display:inline-block;position:relative;flex:0 0 18px;width:18px;height:18px;font-size:0;line-height:0;margin:0;color:inherit}
.wp-block-button__link span[aria-hidden="true"]:before{content:'';position:absolute;left:1px;top:8px;width:19px;height:2px;background:currentColor;transform:rotate(-45deg);transform-origin:center}
.wp-block-button__link span[aria-hidden="true"]:after{content:'';position:absolute;right:0;top:0;width:10px;height:10px;border-top:2px solid currentColor;border-right:2px solid currentColor}
/* Explicit modal colors override the core Navigation block's default white overlay. */
.mdg-navigation .wp-block-navigation__responsive-container.is-menu-open{background:var(--mdg-dark)!important;color:#fff!important;padding:32px 24px}
.mdg-navigation .is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch;padding-top:72px}
.mdg-navigation .is-menu-open .wp-block-navigation__container{align-items:stretch;width:100%;gap:0}
.mdg-navigation .is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid rgba(255,255,255,.25)}
.mdg-navigation .is-menu-open .wp-block-navigation-item__content{display:block;width:100%;padding:18px 0;color:#fff!important;font-size:28px;font-weight:600;line-height:1.3;text-align:left;text-decoration:none}
.mdg-navigation .is-menu-open .wp-block-navigation-item__content:hover{color:#fff!important;text-decoration:underline;text-underline-offset:7px}
.mdg-navigation .wp-block-navigation__responsive-container-open,.mdg-navigation .wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;align-items:center;justify-content:center;color:inherit}
.mdg-navigation .is-menu-open .wp-block-navigation__responsive-container-close{display:flex;color:#fff!important}
@media(max-width:700px){
 .mdg-header-inner{flex-wrap:nowrap;gap:12px;padding-top:16px;padding-bottom:16px}
 .mdg-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .mdg-navigation .wp-block-navigation__responsive-container-open{display:flex!important}
 .mdg-hero h1{font-size:clamp(2.75rem,11vw,5rem)}
 .mdg-hero-content,.mdg-intro-title,.mdg-intro-copy,.mdg-process-title,.mdg-steps,.mdg-about-copy,.mdg-about-panel{min-width:0}
 .wp-block-button__link{min-height:52px;max-width:100%;gap:24px}
 .mdg-hero-copy{font-size:15px}
}
@media(max-width:700px){.mdg-about-panel h3{font-size:clamp(1.85rem,8vw,2.56rem)}}
/* Let the menu panel end after its links so the website stays visible below. */
.mdg-navigation .wp-block-navigation__responsive-container.is-menu-open{bottom:auto;height:auto;min-height:0;max-height:calc(100dvh - var(--wp-admin--admin-bar--height,0px));overflow-y:auto;padding:20px 24px 24px;box-shadow:0 14px 28px rgba(0,0,0,.25);border-bottom:1px solid rgba(255,255,255,.2)}
.mdg-navigation .is-menu-open .wp-block-navigation__responsive-dialog{min-height:0}
.mdg-navigation .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:44px}
.mdg-navigation .is-menu-open .wp-block-navigation-item__content{padding:14px 0;font-size:25px}
/* Translucent menu panel with blur confined to the dropdown area. */
.mdg-navigation .wp-block-navigation__responsive-container.is-menu-open{background:rgba(25,27,26,.75)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

/* Sticky navigation retains its normal document space; anchors clear the header. */
:root{--mdg-header-height:88px;--mdg-toolbar-offset:0px}
html{scroll-padding-top:calc(var(--mdg-header-height) + var(--mdg-toolbar-offset) + 16px)}
.mdg-site-header{position:sticky;top:var(--mdg-toolbar-offset);z-index:1000;background:rgba(25,27,26,.75);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.mdg-navigation .wp-block-navigation__responsive-container.is-menu-open{top:0!important}
.mdg-navigation .is-menu-open .wp-block-navigation__responsive-dialog{margin-top:0!important}
@media(max-width:700px){:root{--mdg-header-height:76px}html{scroll-padding-top:calc(var(--mdg-header-height) + var(--mdg-toolbar-offset) + 16px)}}

/* v1.0.3: stable charcoal header and targeted supporting-text readability. */
.mdg-site-header{background:#191b1a;-webkit-backdrop-filter:none;backdrop-filter:none}
.mdg-preview-nav,.mdg-navigation{font-size:14.4px}
.mdg-navigation .wp-block-navigation__responsive-container.is-menu-open{top:var(--mdg-toolbar-offset)!important;background:rgba(25,27,26,.80)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.mdg-navigation .is-menu-open .wp-block-navigation-item__content{font-size:30px}
.mdg-eyebrow{font-size:12.5px;line-height:1.5}
.mdg-hero-copy{font-size:18px;line-height:1.75}
.mdg-explore{font-size:13.75px}
.mdg-intro-copy{font-size:17px;line-height:1.7}
.mdg-text-link{font-size:15px;line-height:1.5}
.mdg-process-title>p:last-child,.mdg-step-content p{font-size:17px;line-height:1.65}
.mdg-about-copy>p:not(.mdg-eyebrow):not(.mdg-lead){font-size:17px;line-height:1.7}
.mdg-credential{font-size:17px;line-height:1.55}
.mdg-small{font-size:13.75px;line-height:1.7}
.mdg-contact-copy{font-size:17px;line-height:1.65}
.mdg-email{font-size:16.25px}
.mdg-footer-label{font-size:11.25px;line-height:1.5}
.mdg-footer-top{font-size:13.75px}
.mdg-section-number{font-size:11.25px;line-height:1.5}
.mdg-art-label{font-size:10px;line-height:1.5}
.mdg-hero-copy,.mdg-explore a{color:#d7d8d0}
@media(min-width:701px) and (max-width:1000px){.mdg-navigation .wp-block-navigation__container{gap:18px}}
@media(max-width:700px){
 .mdg-preview-nav{font-size:13.2px}
 .mdg-hero-photograph .mdg-art-label{font-size:8.75px}
 .mdg-hero .mdg-section-number{font-size:10px}
 .mdg-hero-copy{font-size:18px}
}

/* Keep the header anchored and equally padded at every scroll position. */
.admin-bar #wpadminbar{position:fixed!important;top:0}
.mdg-header-spacer{display:none;margin:0!important;pointer-events:none}
.mdg-fixed-header .mdg-header-spacer{display:block;height:var(--mdg-header-height)}
.mdg-fixed-header .mdg-site-header{position:fixed!important;top:var(--mdg-toolbar-offset)!important;left:0;right:0;width:100%;margin:0!important;z-index:1000}
.mdg-header-inner{min-height:88px;padding-top:24px;padding-bottom:24px;align-items:center}
.mdg-header-inner>.mdg-navigation{margin-block:0!important}
@media(max-width:700px){.mdg-header-inner{min-height:84px;padding:20px 24px;gap:12px}.mdg-header-inner .mdg-brand{margin:0}}
