/* ===== MG About + Contact ===== */
#page:has(.about-page),#page:has(.contact-page),
.about-page,.contact-page,.about-container,.contact-container{background:var(--mg-base)!important;color:var(--mg-text)!important;}
.about-page .section,.about-page .section-padding,
.contact-page .contact-form-section,.contact-page .section{background:transparent!important;}
.about-page .section-dark,.about-page .section-dark-alt{background:var(--mg-panel-2)!important;}

/* headings / text / buttons shared */
.about-page .section-title,.about-page .section-subtitle,
.about-page .about-hero__title,
.contact-page .contact-hero__title,.contact-page .contact-section-title,.contact-page .home-contact__title,.contact-page .contact-hours__subtitle,.contact-page .contact-notice__title{font-family:var(--mg-head)!important;color:var(--mg-white)!important;text-transform:uppercase;letter-spacing:.02em;}
.about-page .section-lead,.about-page .about-hero__subtitle,.about-page p,.about-page li,
.contact-page p,.contact-page li,.contact-page .contact-hours__list{color:var(--mg-text)!important;}
.about-hero__overlay,.contact-hero__overlay{background:linear-gradient(180deg,rgba(9,10,12,.5),rgba(9,10,12,.8))!important;}

.about-page .btn-primary,.about-page .contact-btn--primary,
.contact-page .btn-primary,.contact-page .contact-btn--primary,.contact-page .contact-form__submit{background:var(--mg-accent)!important;background-image:none!important;border:1px solid var(--mg-accent)!important;color:#fff!important;border-radius:0!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
.about-page .btn-primary:hover,.contact-page .contact-form__submit:hover{background:var(--mg-accent-2)!important;border-color:var(--mg-accent-2)!important;}
.about-page .btn-outline,.contact-page .contact-btn--outline{background:transparent!important;border:1px solid var(--mg-hair-2)!important;color:var(--mg-text)!important;border-radius:0!important;font-family:var(--mg-head)!important;text-transform:uppercase;}
.about-page .btn-outline:hover,.contact-page .contact-btn--outline:hover{border-color:var(--mg-accent)!important;color:var(--mg-white)!important;}

/* About: team + testimonials + faq */
.about-page .team-card{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-top:3px solid var(--mg-accent)!important;border-radius:0!important;}
.about-page .team-card__name{font-family:var(--mg-head)!important;color:var(--mg-white)!important;text-transform:uppercase;}
.about-page .team-card__role{color:var(--mg-accent-2)!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
.about-page .team-card__text{color:var(--mg-text)!important;}
.about-page .testimonial-card{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-radius:0!important;color:var(--mg-text)!important;}
.about-page .testimonial-card strong,.about-page .testimonial-card b,.about-page .testimonial-card h4{color:var(--mg-white)!important;font-family:var(--mg-head)!important;}
.about-page .faq-item{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-radius:0!important;}
.about-page .faq-question{color:var(--mg-white)!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.02em;}
.about-page .faq-answer,.about-page .faq-answer *{color:var(--mg-text)!important;}

/* Contact: info + hours + notice + form */
.contact-page .contact-info__item{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-top:3px solid var(--mg-accent)!important;border-radius:0!important;}
.contact-page .contact-info__label{color:var(--mg-dim)!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
.contact-page .contact-info__value,.contact-page .contact-info__value a{color:var(--mg-text)!important;text-decoration:none;}
.contact-page .contact-info__value a:hover{color:var(--mg-accent-2)!important;}
.contact-page .contact-notice{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-left:3px solid var(--mg-accent)!important;border-radius:0!important;}
.contact-page .contact-notice__text{color:var(--mg-text)!important;}
.contact-page .contact-page-form,.contact-page .contact-form__wrapper{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-top:3px solid var(--mg-accent)!important;border-radius:0!important;}
.contact-page .contact-form__field label,.contact-page .contact-form label{color:var(--mg-dim)!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;font-size:12px;}
.contact-page input,.contact-page select,.contact-page textarea{background:var(--mg-panel-2)!important;color:var(--mg-text)!important;border:1px solid var(--mg-hair-2)!important;border-radius:0!important;}
.contact-page input:focus,.contact-page select:focus,.contact-page textarea:focus{border-color:var(--mg-accent)!important;outline:0!important;box-shadow:0 0 0 2px rgba(224,31,38,.22)!important;}
.contact-page .contact-form__note,.contact-page .contact-form__checkbox{color:var(--mg-dim)!important;}
.contact-page .dag-phone-prefix{background:var(--mg-panel)!important;color:var(--mg-text)!important;border-color:var(--mg-hair-2)!important;}
/* MESSAGE US (home-contact block) reused on Contact page */
.home-contact{background:var(--mg-base)!important;}
.home-contact__inner{background:var(--mg-panel)!important;border:1px solid var(--mg-hair)!important;border-top:3px solid var(--mg-accent)!important;border-radius:0!important;}
.home-contact__title{font-family:var(--mg-head)!important;color:var(--mg-white)!important;text-transform:uppercase;}
.home-contact__header p,.home-contact__note,.home-contact__checkbox{color:var(--mg-text)!important;}
.home-contact__field,.home-contact__row label,.home-contact label{color:var(--mg-dim)!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
.home-contact input,.home-contact select,.home-contact textarea{border-radius:0!important;}
.home-contact input:focus,.home-contact select:focus,.home-contact textarea:focus{border-color:var(--mg-accent)!important;box-shadow:0 0 0 2px rgba(224,31,38,.22)!important;outline:0!important;}
.home-contact .btn--primary,.home-contact__submit{background:var(--mg-accent)!important;background-image:none!important;border:1px solid var(--mg-accent)!important;color:#fff!important;border-radius:0!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
.home-contact .btn--primary:hover,.home-contact__submit:hover{background:var(--mg-accent-2)!important;}
/* force red primary buttons (match home specificity html body .btn.btn--primary) */
html body .btn.btn--primary,
html body .home-contact__submit,
html body .contact-form__submit{background:var(--mg-accent)!important;background-image:none!important;border:1px solid var(--mg-accent)!important;color:#fff!important;border-radius:0!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
html body .btn.btn--primary:hover,html body .home-contact__submit:hover{background:var(--mg-accent-2)!important;}
/* FIX: contact button uses single-dash .btn-primary (not BEM .btn--primary) */
html body .btn.btn-primary,
html body .btn.btn-primary.contact-form__submit,
html body .contact-form__submit.btn-primary,
html body .contact-page-form .btn-primary{background:var(--mg-accent)!important;background-image:none!important;border:1px solid var(--mg-accent)!important;color:#fff!important;border-radius:0!important;font-family:var(--mg-head)!important;text-transform:uppercase;letter-spacing:.05em;}
html body .btn.btn-primary:hover{background:var(--mg-accent-2)!important;border-color:var(--mg-accent-2)!important;}
/* fix: preserve-css leaves .contact-info grid wrapper white (shows on mobile beside cards) */
html body .contact-info,html body .contact-info__grid,html body .contact-hours,
html body .contact-form-section,html body .contact-page .section{background:transparent!important;}
