/*
Theme Name: Elite Finishing Contractors
Author: Digital Process Solutions
Description: Bespoke responsive homepage for Elite Finishing Contractors. Charcoal, bronze and ivory styling with residential, commercial and public sector services. Contact details and imagery can be edited under Appearance > Customize > Elite Homepage.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: elite-finishing
*/
:root{--charcoal:#20201e;--dark:#181918;--ivory:#f6f3ee;--bronze:#b88759;--gold:#ddb481;--ink:#21211f;--muted:#595955;--line:#b68b5b;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(44px,4.5vw,70px)}h2{font-size:clamp(32px,3.2vw,48px)}h3{font-size:28px}em{font-style:normal;color:var(--bronze)}.container{width:calc(100% - 96px);max-width:var(--max);margin:auto}.icon{width:28px;height:28px;flex-shrink:0;color:var(--gold)}.button{min-height:48px;padding:14px 24px;display:inline-flex;align-items:center;justify-content:center;gap:20px;background:linear-gradient(115deg,#efca95,#bb8d5f);color:#171715;border:1px solid #d2ac7b;box-shadow:inset 0 0 0 3px #fff1;font-size:11px;font-weight:700;line-height:1.35;letter-spacing:1.7px;text-transform:uppercase;white-space:nowrap;transition:filter .2s,background .2s}.button:hover{filter:brightness(1.12)}.button span{font-size:20px;font-weight:400}.button.outline{background:transparent;color:#fff;box-shadow:none}.button.outline:hover{background:#ffffff14}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:10px;font-weight:500;letter-spacing:2.2px;line-height:1.5;margin-bottom:16px}.eyebrow:before{content:'';height:1px;width:48px;background:var(--bronze);flex-shrink:0}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #9b6738;outline-offset:5px}.skip-link{position:fixed;left:16px;top:-100px;background:white;color:black;z-index:100;padding:12px}.skip-link:focus{top:12px}.site-header{background:var(--charcoal);color:#fff;position:relative;z-index:20}.contact-strip{border-bottom:1px solid #b68b5b66;font-size:12px}.contact-strip .container{display:flex;justify-content:flex-end;gap:25px;padding:8px 0}.contact-strip a{display:flex;align-items:center;gap:10px}.contact-strip .icon{width:17px;height:17px}.navigation{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:100px}.brand{width:132px;position:relative;z-index:3;flex-shrink:0;align-self:flex-start;margin-bottom:-30px;padding-top:5px}.brand img{width:132px;height:132px;border-radius:50%;}.navigation nav{margin-left:auto}.navigation ul{padding:0;margin:0;display:flex;align-items:center;gap:25px;list-style:none}.navigation nav a{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;padding:14px 0;white-space:nowrap}.navigation nav a:hover,.navigation nav a[aria-current]{color:var(--gold)}.navigation nav a[aria-current]{position:relative}.navigation nav a[aria-current]:after{position:absolute;content:'';height:1px;background:var(--gold);bottom:6px;left:0;right:0}.header-quote{font-size:10px;padding:13px 20px;min-height:44px;margin-left:12px}.mobile-actions{display:none}.hero{position:relative;isolation:isolate;color:white;background:var(--dark);overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-position:center 53%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,17,16,.86) 0%,rgba(17,17,15,.67) 35%,rgba(17,17,15,.08) 72%)}.hero-inner{min-height:560px;display:flex;align-items:center;padding-top:72px;padding-bottom:75px}.hero-copy{max-width:680px}.hero h1 em{color:#c39768}.hero-description{font-size:18px;line-height:1.6;max-width:490px;margin:24px 0 32px}.hero-buttons{display:flex;gap:18px}.features{background:var(--charcoal);border-top:1px solid var(--line);color:white}.feature-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;padding:24px 0}.feature-grid>div{display:flex;align-items:center;justify-content:center;gap:22px;padding:0 25px;border-left:1px solid #b68b5b77}.feature-grid>div:first-child{border:0;padding-left:0}.feature-grid span{font-size:12px;letter-spacing:1px;line-height:1.5}.feature-grid .icon{width:34px;height:34px}.section{padding:55px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:32px}.section-heading>p{max-width:350px;font-size:14px;color:var(--muted);line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-card{scroll-margin-top:35px}.service-card img{width:100%;aspect-ratio:1.65;object-position:center 57%;height:auto}.service-card h3{margin:18px 0 10px}.service-card p{color:var(--muted);font-size:15px;line-height:1.6;max-width:380px;min-height:48px}.text-link{font-size:11px;font-weight:600;letter-spacing:1.7px;display:inline-flex;align-items:center;gap:25px;text-transform:uppercase;border-bottom:1px solid var(--bronze);padding-bottom:7px;margin-top:23px}.text-link:hover{color:#8f623a}.text-link span{font-size:20px;font-weight:400}.approach{display:grid;grid-template-columns:1fr 1.05fr .85fr;background:var(--charcoal);color:white;align-items:center}.approach-photo{align-self:stretch;min-height:350px}.approach-photo img{width:100%;height:100%;max-height:440px;object-position:center 50%}.approach-copy{padding:45px 45px 45px 50px}.approach-copy p:last-child{font-size:15px;line-height:1.65;margin-top:22px}.qualities{margin:35px 40px 35px 0;padding-left:38px;border-left:1px solid #b68b5b77;display:grid;gap:26px}.qualities>div{display:flex;gap:23px}.qualities .icon{width:36px;height:36px}.qualities strong{display:block;font-weight:400;font-size:15px;line-height:1.4;margin-bottom:7px}.qualities span{display:block;font-size:13px;color:#d3d0ca;line-height:1.55}.projects .image-note{font-size:12px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery figure img{width:100%;aspect-ratio:1.75;height:auto;object-position:center}.gallery h3{font-size:22px;margin:12px 0 5px;letter-spacing:-.025em}.gallery p{font-size:13px;line-height:1.5;color:var(--muted)}.gallery-controls{display:none}.contact-cta{color:#fff;background:radial-gradient(ellipse at 10% 10%,#35322c,transparent 65%),#1b1c1a;border-bottom:1px solid var(--bronze);padding:35px 0}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr auto;align-items:center;gap:32px}.contact-grid h2{font-size:32px}.contact-grid p{font-size:13px;line-height:1.55;margin-top:10px}.contact-details{border-left:1px solid #b68b5b77;padding-left:30px;display:grid;gap:8px}.contact-details a{display:flex;align-items:center;gap:15px;font-size:13px}.contact-details a:first-child{font-size:23px;letter-spacing:1px}.contact-details .icon{width:23px;height:23px}.contact-details span{overflow-wrap:anywhere}.site-footer{background:var(--charcoal);color:#eee;padding-top:35px}.footer-grid{display:grid;grid-template-columns:150px 1.15fr 1.25fr .65fr;gap:35px;align-items:center;padding-bottom:30px}.footer-brand img{width:120px;height:120px;border-radius:50%}.footer-grid>div{border-left:1px solid #b68b5b77;padding-left:28px}.footer-grid h2{font-family:Arial,Helvetica,sans-serif;font-size:10px;letter-spacing:1.2px;line-height:1.5;font-weight:600;text-transform:uppercase;margin-bottom:10px}.footer-grid p,.footer-grid address,.footer-grid a,.pending-link{font-size:12px;font-style:normal;line-height:1.8}.company address{max-width:225px}.footer-contact a{display:flex;gap:12px;align-items:center;margin-top:5px;overflow-wrap:anywhere}.footer-contact .icon{width:18px;height:18px}.footer-contact span{min-width:0;overflow-wrap:anywhere}.footer-info a,.pending-link{display:block;text-decoration:underline;margin-top:6px}.pending-link{opacity:.7;cursor:default}.footer-bottom{border-top:1px solid #b68b5b88;padding:24px 0;display:flex;justify-content:space-between;gap:25px}.footer-bottom span{font-size:9px;letter-spacing:1.3px;text-transform:uppercase}.footer-bottom span:last-child{text-transform:none;letter-spacing:.2px;font-size:11px}.mobile-bottom{display:none}.page-content{max-width:900px;min-height:55vh}.page-content h1{margin-bottom:30px}.page-content p{margin-bottom:20px}
@media(min-width:1700px){.approach{grid-template-columns:1fr 1fr 1fr}.approach-copy{max-width:550px}.qualities{max-width:400px}}
@media(max-width:1150px){.container{width:calc(100% - 60px)}.navigation{gap:20px}.navigation ul{gap:16px}.navigation nav a{font-size:9px;letter-spacing:.8px}.brand,.brand img{width:110px;height:110px}.header-quote{padding:12px 14px;font-size:9px}.hero-inner{min-height:510px}.approach-copy{padding:30px}.qualities{padding-left:25px;margin-right:25px}.qualities>div{gap:15px}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>.button{grid-column:2;justify-self:start}.contact-details{grid-row:span 1}.footer-grid{grid-template-columns:105px 1fr 1.2fr .6fr;gap:20px}.footer-grid>div{padding-left:20px}.footer-brand img{width:100px;height:100px}}
@media(max-width:900px){.container{width:calc(100% - 44px)}.navigation{min-height:92px}.navigation ul{gap:14px}.header-quote{display:none}.hero-inner{min-height:530px}.hero-copy{max-width:600px}.hero h1{font-size:54px}.service-grid{gap:20px}.service-card h3{font-size:24px}.service-card p{font-size:14px}.section-heading{gap:30px}.section-heading>p{max-width:250px}.approach{grid-template-columns:1fr 1.15fr}.approach-photo{grid-row:span 2}.qualities{margin:0 30px 30px;border:0;padding:0}.qualities>div{gap:20px}.approach-copy{padding-bottom:25px}.qualities{gap:20px}.footer-grid{grid-template-columns:90px 1fr 1fr}.footer-info{grid-column:2 / -1;display:flex;align-items:center;gap:25px}.footer-info h2{margin:0}.footer-info a,.pending-link{margin:0}.footer-bottom{flex-wrap:wrap}.contact-details{padding-left:20px}.contact-grid{gap:25px}}
@media(max-width:700px){html{scroll-padding-top:20px}body{font-size:16px;padding-bottom:72px}.container{width:calc(100% - 40px)}h1{font-size:46px}h2{font-size:36px;line-height:1.08}h3{font-size:28px}.eyebrow{font-size:9px;letter-spacing:1.5px;gap:10px;margin-bottom:16px}.eyebrow:before{width:30px}.site-header{display:flex;flex-direction:column}.navigation{order:0;width:calc(100% - 36px);min-height:105px;position:relative}.brand{width:88px;margin:0;padding:7px 0}.brand img{width:88px;height:88px}.contact-strip{order:1;border-top:1px solid #b68b5b88;border-bottom:0}.contact-strip .container{justify-content:center;padding:6px 0;font-size:14px}.contact-strip a:nth-child(2){display:none}.mobile-actions{display:flex;align-items:center;gap:28px}.mobile-actions>a{display:flex}.mobile-actions .icon{width:25px;height:25px}.menu-toggle{background:none;border:0;color:white;padding:8px 0;min-width:45px;min-height:48px;display:flex;flex-direction:column;gap:7px;align-items:center}.menu-toggle>span{width:30px;height:1px;background:currentColor}.menu-toggle small{font-size:9px;letter-spacing:1px;text-transform:uppercase;margin-top:0}.navigation nav{display:none;position:absolute;left:-18px;right:-18px;top:105px;background:#20201e;box-shadow:0 14px 20px #0004;border-top:1px solid var(--bronze);padding:20px 30px;z-index:10}.navigation nav.open{display:block}.navigation ul{display:block}.navigation nav a{font-size:13px;letter-spacing:1.3px;padding:13px 0;border-bottom:1px solid #ffffff14}.navigation nav a[aria-current]:after{display:none}.hero{padding-top:265px}.hero-image{height:400px;object-position:68% center}.hero:after{background:linear-gradient(0deg,#1b1c1a 0%,#1b1c1a 38%,rgba(27,28,26,.95) 48%,rgba(27,28,26,.2) 69%,transparent 88%)}.hero-inner{min-height:0;padding-top:22px;padding-bottom:30px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(41px,11vw,52px);line-height:1.03;max-width:350px;letter-spacing:-.04em}.hero h1 br{display:none}.hero h1 em{display:block}.hero-description{font-size:16px;margin:20px 0 24px;line-height:1.55}.hero-buttons{display:grid;gap:13px}.button{min-height:50px;font-size:11px;padding:15px 18px}.feature-grid{display:block;padding:0}.feature-grid>div{justify-content:flex-start;padding:20px 0;border-left:0;border-bottom:1px solid #b68b5b66;gap:22px}.feature-grid>div:first-child{padding-left:0}.feature-grid>div:last-child{border-bottom:0}.feature-grid span{font-size:13px;letter-spacing:.2px}.feature-grid .icon{width:31px;height:31px}.section{padding:35px 0}.section-heading{display:block;margin-bottom:25px}.section-heading>p{max-width:none;margin-top:18px;font-size:14px}.service-grid{display:block}.service-card{margin-bottom:34px}.service-card:last-child{margin-bottom:0}.service-card img{aspect-ratio:1.35;object-position:center 55%}.service-card h3{font-size:28px;margin:16px 0 9px}.service-card p{font-size:16px;line-height:1.55;min-height:0}.text-link{font-size:11px;margin-top:18px;padding-bottom:8px}.approach{display:block;padding:20px 20px 30px}.approach-photo{min-height:0}.approach-photo img{height:190px;width:100%;object-position:center 50%}.approach-copy{padding:26px 0 24px}.approach-copy h2{font-size:36px}.approach-copy p:last-child{font-size:16px;margin-top:20px;line-height:1.55}.qualities{padding:0;margin:0;gap:22px}.qualities .icon{width:34px;height:34px}.qualities strong{font-size:16px;margin-bottom:4px}.qualities span{font-size:14px}.qualities>div{gap:22px}.projects .image-note{font-size:12px;margin-top:14px}.gallery{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery::-webkit-scrollbar{display:none}.gallery figure{flex:0 0 100%;scroll-snap-align:start}.gallery img{aspect-ratio:1.45!important}.gallery h3{font-size:23px}.gallery p{font-size:14px}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:23px;margin-top:18px}.gallery-controls button{border:1px solid #bb926b;background:transparent;width:44px;height:40px;font-size:22px}.gallery-count{font-size:12px;color:var(--muted)}.contact-cta{padding:28px 0}.contact-grid{display:block}.contact-grid h2{font-size:31px;line-height:1.15}.contact-grid p{font-size:14px;margin-top:12px}.contact-details{border:0;padding:0;margin:24px 0;gap:12px}.contact-details a{font-size:13px;gap:12px}.contact-details a:first-child{font-size:25px}.contact-grid>.button{width:100%}.site-footer{padding-top:28px}.footer-grid{display:grid;grid-template-columns:1fr;gap:24px;padding-bottom:25px}.footer-brand{display:none}.footer-grid>div{border:0;padding:0}.footer-grid h2{font-size:10px;letter-spacing:1px;margin-bottom:8px}.footer-grid address,.footer-grid p,.footer-grid a,.pending-link{font-size:13px}.footer-grid address{max-width:280px}.footer-contact{display:grid;gap:4px}.footer-info{grid-column:auto;display:flex;flex-wrap:wrap;gap:12px 25px}.footer-info h2{width:100%;margin:0}.footer-bottom{display:grid;gap:12px;text-align:center;padding:22px 0}.footer-bottom span{font-size:9px}.footer-bottom span:last-child{font-size:10px;letter-spacing:0}.mobile-bottom{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--charcoal);border-top:1px solid #b68b5b;box-shadow:0 -3px 15px #0002}.mobile-bottom>a:first-child{display:flex;align-items:center;justify-content:center;gap:14px;color:white;font-size:14px;min-height:44px;border-right:1px solid #b68b5b77}.mobile-bottom .button{min-height:44px;padding:10px 8px;font-size:11px;letter-spacing:.7px}.mobile-bottom .icon{width:21px;height:21px}.page-content h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
