/*
Theme Name: M&A Pro Renovation
Theme URI: https://marenovations.ca/
Author: M&A Pro Renovation
Description: Custom, responsive charcoal-and-gold renovation contractor theme for M&A Pro Renovation serving London and the Greater Toronto Area.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ma-pro-renovation
*/
:root{--ink:#121418;--ink2:#1b1f22;--ink3:#292d30;--gold:#caa462;--goldlight:#ecd19b;--paper:#f7f6f3;--cream:#eeebe5;--white:#fff;--muted:#757574;--line:#e0dcd4;--max:1220px;--shadow:0 20px 65px rgba(17,19,21,.13)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Manrope',Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}::selection{background:#cfa963;color:#181818}.container{width:min(calc(100% - 56px),var(--max));margin-inline:auto}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.7px;text-transform:uppercase}.gold{color:var(--gold)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:9999;top:-80px;left:16px;background:#fff;color:#111;padding:10px 16px}.skip-link:focus{top:12px}.section-pad{padding:112px 0}.section-intro{max-width:610px}.section-intro .eyebrow{color:#9c7736;display:block;margin-bottom:16px}.section-heading{font-family:'DM Sans','Arial',sans-serif;font-size:clamp(35px,4.2vw,60px);line-height:1.08;letter-spacing:-2.3px;font-weight:700;margin:0}.section-intro p{font-size:16px;color:#777775;line-height:1.9;margin:23px 0 0}.btn{display:inline-flex;gap:16px;align-items:center;justify-content:center;min-height:54px;padding:14px 23px;border-radius:2px;border:1px solid transparent;font-size:12px;font-weight:800;letter-spacing:.7px;line-height:1.3;text-transform:uppercase;transition:transform .2s,background .2s,color .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#181a1c}.btn-gold:hover{background:var(--goldlight)}.btn-outline{border-color:#6b6557;color:#fff;background:transparent}.btn-outline:hover{border-color:var(--gold);color:var(--gold)}.btn-light{background:#fff;color:#171719}.arrow{font-size:19px;font-weight:400;line-height:1}
/* Header */
.site-topbar{background:#0b0d0f;color:#c6c4be;font-size:11px;letter-spacing:.25px}.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:37px}.topbar-inner span{display:inline-flex;align-items:center;gap:9px}.topbar-inner a:hover{color:var(--gold)}.topbar-sep{color:#6f6a60;margin:0 10px}.site-header{background:#151719;color:#fff;border-bottom:1px solid #ffffff12;position:relative;z-index:30}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:24px}.brand-link{display:block;width:205px;flex:0 0 205px}.brand-link img{width:100%;height:auto;max-height:76px}.header-nav{display:flex;align-items:center;gap:35px}.header-nav>a:not(.btn){font-size:12px;font-weight:700;color:#d5d5d3;letter-spacing:.35px;transition:color .15s}.header-nav>a:hover,.header-nav>a.active{color:var(--gold)}.header-cta{padding:11px 18px;min-height:46px}.menu-toggle{display:none;border:1px solid #555;background:transparent;color:#fff;border-radius:2px;width:46px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{height:2px;width:19px;background:#e8e3d8}
/* Hero */
.hero{background:#151719;color:#fff;position:relative;overflow:hidden;min-height:668px}.hero::before{content:"";position:absolute;inset:0 0 0 0;opacity:.22;pointer-events:none;background:radial-gradient(ellipse 45% 50% at 36% 63%,#79603a11 0,transparent 80%)}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;min-height:668px}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:2;padding:65px 55px 83px 0}.hero-copy .eyebrow{color:var(--goldlight);margin:0 0 27px;display:flex;align-items:center;gap:14px}.hero-copy .eyebrow::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold)}.hero h1{font-family:'DM Sans','Arial',sans-serif;font-size:clamp(52px,6vw,86px);font-weight:700;letter-spacing:-4.8px;line-height:1.01;max-width:720px;margin:0 0 27px}.hero h1 em{font-style:normal;color:var(--goldlight)}.hero-copy>p{margin:0;color:#b5b6b6;max-width:440px;font-size:15px;line-height:2}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}.hero-note{display:flex;align-items:center;gap:13px;color:#bab7af;margin-top:47px;font-size:11px;letter-spacing:.4px;font-weight:700}.hero-note .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}.hero-visual{position:relative;min-height:620px;margin-right:calc((min(100vw, var(--max)) - 100vw)/2);background:#34332c;overflow:hidden}.hero-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#151719 0%,#15171988 10%,transparent 42%),linear-gradient(0deg,#0c0d0e6b,transparent 31%);z-index:1}.hero-visual img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.hero-overlay{position:absolute;bottom:35px;right:32px;z-index:2;background:#151719d9;border:1px solid #d8b57555;backdrop-filter:blur(10px);padding:20px 23px;min-width:216px}.hero-overlay strong{font-size:13px;letter-spacing:1.1px;color:#eed9b0}.hero-overlay span{display:block;margin-top:6px;font-size:11px;color:#b0b0ae}.hero-watermark{position:absolute;bottom:36px;left:3%;font-size:118px;line-height:1;font-family:Georgia,serif;color:#cfa45714;pointer-events:none}
/* Trust strip */
.value-strip{background:#eae7df;border-bottom:1px solid #dfd9d0}.value-grid{display:grid;grid-template-columns:repeat(3,1fr)}.value-item{display:flex;align-items:center;gap:20px;padding:26px 35px;border-left:1px solid #d9d2c8}.value-item:first-child{border-left:0;padding-left:0}.value-item svg{color:#aa8146;flex:none}.value-item strong{display:block;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.value-item span{display:block;margin-top:2px;font-size:12px;color:#77736e}
/* Services */
.services{background:var(--paper)}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:44px}.services-heading .view-link{border-bottom:1px solid #a8874b;padding-bottom:8px;color:#7f6437;font-size:12px;font-weight:800;white-space:nowrap}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service-card{border:1px solid #e2dfd8;background:#fff;padding:32px 28px 27px;min-height:217px;display:flex;flex-direction:column;position:relative;transition:background .2s,transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);background:#fffdfa;box-shadow:0 14px 34px #16161612}.service-icon{height:47px;width:47px;display:flex;align-items:center;justify-content:center;color:#9e763b;margin-bottom:20px}.service-icon svg{width:36px;height:36px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.2;letter-spacing:-.4px;margin:0 0 10px}.service-card p{margin:0;color:#82817d;font-size:12px;line-height:1.8}.service-card .service-n{position:absolute;top:27px;right:24px;font-size:11px;font-weight:800;color:#d0c8bb}
/* Feature */
.feature{background:#eae7e0;overflow:hidden}.feature-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:8.8%}.feature-photo{height:515px;background:linear-gradient(140deg,#96876b,#e9d6af);position:relative;overflow:visible}.feature-photo>img{width:100%;height:100%;object-fit:cover;position:absolute}.feature-photo::after{content:"";position:absolute;bottom:-22px;right:-23px;width:150px;height:145px;border-right:6px solid #c69b58;border-bottom:6px solid #c69b58;z-index:2}.feature-mark{position:absolute;bottom:25px;left:27px;z-index:2;background:#171a1be8;color:white;padding:15px 20px;font-size:12px;font-weight:800;letter-spacing:1px}.feature-copy{padding:24px 0}.feature-copy .eyebrow{color:#93723c}.feature-copy h2{font-size:clamp(37px,4vw,55px);line-height:1.1;letter-spacing:-2px;margin:19px 0 23px}.feature-copy h2 em{font-style:normal;color:#a78248}.feature-copy>p{font-size:15px;color:#71706d;line-height:2;margin:0 0 20px}.feature-list{list-style:none;padding:0;margin:28px 0 35px}.feature-list li{display:flex;align-items:center;gap:12px;padding:9px 0;font-size:13px;font-weight:700}.feature-list svg{color:#a47c42;flex:none}
/* Inspiration */
.inspiration{background:#151719;color:#fff}.inspiration .section-intro .eyebrow{color:var(--goldlight)}.inspiration .section-intro p{color:#a7aaa9}.gallery-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:39px;gap:24px}.gallery-notice{font-size:11px;color:#9fa29f;border-left:2px solid var(--gold);padding-left:13px;max-width:285px}.gallery-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:15px}.gallery-card{position:relative;height:342px;overflow:hidden;background:linear-gradient(138deg,#716d62,#c5b99c)}.gallery-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-card:hover img{transform:scale(1.05)}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#101114b8,transparent 53%)}.gallery-card div{position:absolute;bottom:23px;left:25px;z-index:2}.gallery-card strong{display:block;font-size:17px;letter-spacing:-.5px}.gallery-card span{color:#d9c28e;font-size:11px;letter-spacing:1.1px;text-transform:uppercase;font-weight:800}.gallery-card:first-child{height:342px}
/* Process */
.process{background:var(--paper)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:45px}.process-step{border-top:1px solid #d8d1c6;padding-top:25px;position:relative}.process-step::before{content:"";position:absolute;top:-2px;left:0;width:54px;height:3px;background:var(--gold)}.step-num{font-family:Georgia,serif;color:#b99352;font-size:42px;line-height:1}.process-step h3{font-size:18px;letter-spacing:-.5px;margin:18px 0 11px}.process-step p{font-size:13px;color:#817f79;line-height:1.9;max-width:300px;margin:0}
/* CTA / contact */
.contact-section{background:#202225;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.contact-copy .eyebrow{color:var(--goldlight)}.contact-copy h2{font-size:clamp(40px,4vw,61px);line-height:1.08;letter-spacing:-2.2px;margin:19px 0 23px}.contact-copy>p{color:#adaead;font-size:15px;line-height:2;max-width:540px}.contact-details{display:grid;gap:26px;margin-top:0}.contact-detail{display:flex;align-items:start;gap:15px}.contact-icon{display:flex;align-items:center;justify-content:center;flex:0 0 39px;height:39px;color:var(--gold);border:1px solid #6c5b3f}.contact-detail small{font-size:10px;letter-spacing:1.1px;color:#a9a9a7;text-transform:uppercase;font-weight:800;display:block}.contact-detail a,.contact-detail strong{font-size:15px;line-height:1.6;color:white;font-weight:700}.contact-detail a:hover{color:var(--gold)}
/* Footer */
.site-footer{background:#111315;color:#a8aaa9}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px;padding:72px 0 62px}.footer-main .brand-link{width:192px}.footer-about p{max-width:320px;font-size:12px;line-height:1.95;margin:17px 0 0;color:#969797}.footer-col h3{color:#e9e6e1;font-size:12px;text-transform:uppercase;letter-spacing:1.3px;margin:9px 0 22px}.footer-col a{display:block;font-size:12px;color:#aaa9a5;padding:4px 0}.footer-col a:hover{color:var(--gold)}.footer-col p{font-size:12px;margin:3px 0 10px}.footer-bottom{border-top:1px solid #303234;padding:19px 0;display:flex;justify-content:space-between;font-size:11px;gap:20px;color:#888}.footer-bottom strong{color:#c6a568}
/* Content pages */
.inner-banner{background:#191b1e;color:#fff;padding:75px 0}.inner-banner h1{font-size:clamp(38px,5vw,65px);line-height:1.1;letter-spacing:-2px;margin:10px 0 0}.inner-banner .eyebrow{color:var(--gold)}.content-area{min-height:40vh;padding:68px 0;max-width:860px}.content-area h1,.content-area h2,.content-area h3{line-height:1.3}.content-area a:not(.btn){color:#916d34;text-decoration:underline}.content-area img{height:auto}.post-card{padding:25px 0;border-bottom:1px solid #ddd}.post-card h2{margin:5px 0;font-size:26px}.post-card p{color:#777}.screen-reader-text{position:absolute;width:1px;height:1px;clip:rect(1px,1px,1px,1px);overflow:hidden}
@media(max-width:1120px){.header-nav{gap:21px}.hero h1{font-size:clamp(48px,6vw,75px)}.service-grid{grid-template-columns:repeat(4,1fr)}.service-card{padding:26px 20px}.feature-grid{gap:6%}}@media(max-width:900px){.container{width:min(calc(100% - 36px),var(--max))}.header-inner{min-height:75px}.brand-link{width:177px;flex-basis:177px}.menu-toggle{display:flex}.header-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#171a1b;padding:21px 23px 27px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #333;box-shadow:0 16px 23px #0005}.header-nav.is-open{display:flex}.header-nav>a:not(.btn){padding:12px 0;border-bottom:1px solid #ffffff19}.header-cta{margin-top:16px}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy{padding-right:14px}.hero h1{font-size:clamp(43px,6vw,60px);letter-spacing:-3px}.hero-visual{min-height:590px}.service-grid{grid-template-columns:repeat(2,1fr)}.value-item{padding:22px 14px;gap:12px}.value-item:first-child{padding-left:0}.feature-photo{height:445px}.contact-grid{gap:4%}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-card:last-child{display:none}.footer-main{gap:30px}}@media(max-width:640px){.container{width:calc(100% - 36px)}.section-pad{padding:72px 0}.topbar-inner{min-height:35px}.topbar-right{display:none!important}.header-inner{min-height:70px}.brand-link{width:165px;flex-basis:165px}.hero{min-height:auto}.hero-grid{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:72px 0 51px}.hero h1{font-size:clamp(46px,13vw,67px);letter-spacing:-3.6px;max-width:530px}.hero-copy .eyebrow{font-size:10px}.hero-copy>p{font-size:14px}.hero-actions{margin-top:29px}.hero-actions .btn{min-height:49px;padding:13px 18px;font-size:11px}.hero-note{margin-top:35px}.hero-visual{height:300px;min-height:0;margin-right:0;margin-inline:-18px}.hero-visual::before{background:linear-gradient(0deg,#0b0d0f76,transparent 48%)}.hero-overlay{right:21px;bottom:20px;padding:13px 15px;min-width:0}.hero-overlay strong{font-size:11px}.hero-overlay span{font-size:10px}.value-grid{grid-template-columns:1fr}.value-item,.value-item:first-child{padding:14px 0;border-left:0;border-bottom:1px solid #d8d1c6}.value-item:last-child{border-bottom:0}.value-item svg{height:24px;width:24px}.services-heading{display:block;margin-bottom:28px}.services-heading .view-link{display:inline-block;margin-top:19px}.section-heading{font-size:39px;letter-spacing:-1.5px}.section-intro p{font-size:14px}.service-grid{gap:11px}.service-card{padding:23px 17px 19px;min-height:196px}.service-icon{margin-bottom:15px}.service-icon svg{width:33px;height:33px}.service-card h3{font-size:15px}.service-card p{font-size:11px}.feature-grid{grid-template-columns:1fr;gap:36px}.feature-photo{height:300px;margin-right:12px}.feature-photo::after{width:85px;height:85px;right:-13px;bottom:-12px;border-width:4px}.feature-copy{padding:0}.feature-copy h2{font-size:40px}.gallery-head{display:block}.gallery-notice{margin-top:19px}.gallery-grid{grid-template-columns:1fr 1fr;gap:9px}.gallery-card,.gallery-card:first-child{height:220px}.gallery-card div{bottom:13px;left:14px}.gallery-card strong{font-size:13px}.gallery-card span{font-size:9px}.process-grid{grid-template-columns:1fr;gap:26px;margin-top:32px}.contact-grid{grid-template-columns:1fr;gap:39px}.contact-copy h2{font-size:43px}.contact-details{margin-top:30px}.footer-main{grid-template-columns:1fr 1fr;gap:30px;padding:45px 0 35px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.inner-banner{padding:55px 0}}@media(max-width:375px){.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.hero h1{font-size:45px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
