/*
Theme Name: Quick Fix Kitchens
Theme URI: https://www.quickfixkitchens.co.uk/
Author: Quick Fix Kitchens
Description: Editable one-page WordPress theme for Quick Fix Kitchens, with native section and image controls.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: quick-fix-kitchens
*/

@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/anton-latin.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 700;font-display:swap;src:url('assets/fonts/cormorant-garamond-latin.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/inter-latin.woff2') format('woff2')}

:root{--ink:#27282B;--paper:#FFFFFF;--cream:#FAF8F5;--line:#E6E2DA;--mid:#7A7A7A;--gold:#C9A24B}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--paper);color:var(--ink);line-height:1.7;font-size:.98rem}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:600;letter-spacing:.01em;color:var(--ink)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;display:block;top:5px;left:5px;padding:15px 23px;background:#fff;color:#000;z-index:100000}

.topbar{background:var(--ink);color:#D9D9D9;font-size:.8rem;letter-spacing:.08em;display:flex;justify-content:space-between;align-items:center;padding:10px 5%}
.topbar a{color:#D9D9D9}
.topbar .phone{font-weight:600;color:#fff}
.topbar-actions{display:flex;align-items:center;gap:24px}
.topbar .enquire{border:1px solid var(--gold);color:var(--gold);padding:6px 18px;text-transform:uppercase;font-size:.72rem;letter-spacing:.15em;font-weight:600}

.site-header{position:relative;background:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:22px 5%;border-bottom:1px solid var(--line);z-index:100}
.logo{display:flex;align-items:center;gap:14px}
.logo img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.logo-text{font-family:'Anton',sans-serif;font-size:1.5rem;font-weight:400;letter-spacing:.04em;text-transform:uppercase}
.logo-text span{color:var(--gold)}
.primary-navigation ul{display:flex;gap:38px;list-style:none}
.primary-navigation a{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:500}
.primary-navigation a:hover,.primary-navigation a:focus{color:var(--gold)}
.menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:9px;cursor:pointer}
.menu-toggle>span:not(.screen-reader-text){display:block;height:2px;background:var(--ink);margin:5px 0;transition:transform .2s,opacity .2s}

.hero{position:relative;height:62vh;min-height:500px;display:flex;align-items:flex-end;overflow:hidden}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:heroFade 12s infinite}
.hero-slide:nth-child(1){animation-delay:0s}
.hero-slide:nth-child(2){animation-delay:6s}
@keyframes heroFade{0%{opacity:1}42%{opacity:1}50%{opacity:0}92%{opacity:0}100%{opacity:1}}
.hero::after{content:'';position:absolute;inset:0;background:rgba(30,31,33,.28);z-index:1}
.hero-inner{position:relative;z-index:2;margin:0 5% 42px;padding:38px 44px 40px;color:#fff;max-width:600px;background:rgba(28,29,31,.9);border-top:3px solid var(--gold)}
.hero-inner .eyebrow,.intro .eyebrow,.feature-text .eyebrow,.why-text .eyebrow,.process-head .eyebrow,.reviews-head .eyebrow,.join-text .eyebrow{font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:block;font-weight:600}
.hero-inner .eyebrow{color:#DFBB63}
.hero-inner h1{font-size:clamp(2.1rem,4.2vw,3rem);line-height:1.16;margin-bottom:16px;color:#fff}
.hero-inner p{font-size:1rem;color:#E6E3DD;margin-bottom:28px}
.btn-row{display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-block;padding:15px 34px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:all .25s;border:1px solid currentColor;font-family:'Inter',sans-serif}
.btn-gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.btn-gold:hover,.btn-gold:focus{background:transparent;color:var(--gold)}
.btn-line{color:#fff}
.btn-line:hover,.btn-line:focus{background:#fff;color:var(--ink)}

.intro{max-width:760px;margin:0 auto;text-align:center;padding:90px 5% 70px}
.intro .eyebrow{margin-bottom:18px}
.intro h2,.why-text h2,.process-head h2,.reviews-head h2,.join-text h2{font-size:clamp(2rem,3.6vw,2.8rem)}
.intro h2{margin-bottom:20px}
.intro p,.feature-text p,.process-head p,.process-step p,.join-text p{color:var(--mid)}
.intro p{font-size:1.02rem}

.feature{display:flex;flex-wrap:wrap;align-items:center;gap:0;max-width:1240px;margin:0 auto;padding:50px 5%}
.feature.reverse{flex-direction:row-reverse}
.feature-text{flex:1;min-width:300px;padding:30px 50px}
.feature-text h2{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:18px}
.feature-text p{margin-bottom:14px}
.feature-images{flex:1;min-width:300px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.feature-images img{border-radius:2px;height:280px;object-fit:cover;width:100%}
.feature-images.single{grid-template-columns:1fr}
.feature-images.single img{height:420px}

.why-section{background:var(--cream);padding:90px 5%}
.why-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.why-inner>img{border-radius:2px;height:460px;object-fit:cover;width:100%}
.why-text h2{margin-bottom:24px}
.why-list{list-style:none}
.why-list li{padding:18px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:flex-start}
.why-list li:first-child{border-top:1px solid var(--line)}
.why-list .mark{color:var(--gold);font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:600;flex-shrink:0}
.why-list b{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;display:block;margin-bottom:2px}
.why-list span{color:var(--mid);font-size:.92rem}

.process-section{padding:90px 5%;max-width:1180px;margin:0 auto}
.process-head{text-align:center;max-width:680px;margin:0 auto 60px}
.process-head p{margin-top:14px}
.process-row{display:grid;grid-template-columns:repeat(5,1fr);gap:30px;position:relative}
.process-row::before{content:'';position:absolute;top:22px;left:5%;right:5%;height:1px;background:var(--line)}
.process-step{text-align:center;position:relative}
.process-num{width:46px;height:46px;border-radius:50%;border:1px solid var(--gold);background:var(--paper);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;position:relative;z-index:1;font-family:'Cormorant Garamond',serif;color:var(--gold);font-size:1.1rem;font-weight:600}
.process-step h3{font-size:1.1rem;margin-bottom:8px}
.process-step p{font-size:.86rem}

.reviews-section{background:var(--ink);color:#fff;padding:90px 5%}
.reviews-head{text-align:center;max-width:680px;margin:0 auto 60px}
.reviews-head h2{color:#fff}
.reviews-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}
.review-card{border:1px solid #3A3B3E;padding:32px}
.review-card .stars,.google-rating .stars{color:var(--gold);font-size:1rem;letter-spacing:3px}
.review-card .stars{margin-bottom:16px}
.review-card p{font-size:.95rem;color:#C8C8C8;margin-bottom:20px}
.review-author{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.05rem}
.review-source{font-size:.78rem;color:#8A8A8A;margin-top:2px}
.google-rating{display:flex;align-items:center;gap:14px;justify-content:center;margin-top:50px}
.google-rating .big{font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--gold);font-weight:600}
.google-rating .stars{font-size:1.1rem}
.google-rating .meta{font-size:.8rem;color:#9A9A9A;text-transform:uppercase;letter-spacing:.12em}

.join-section{display:flex;flex-wrap:wrap}
.join-text{flex:1;min-width:320px;background:var(--cream);padding:90px 6%;display:flex;flex-direction:column;justify-content:center}
.join-text h2{margin-bottom:18px}
.join-text p{max-width:440px}
.join-form{position:relative;flex:1;min-width:320px;padding:90px 6%;display:flex;flex-direction:column;gap:20px;justify-content:center}
.join-form label{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--mid);margin-bottom:6px;display:block}
.join-form input,.join-form select,.join-form textarea{width:100%;border:1px solid var(--line);padding:13px 14px;font-family:'Inter',sans-serif;font-size:.92rem;background:transparent;border-radius:2px}
.join-form input:focus,.join-form select:focus,.join-form textarea:focus{outline:2px solid var(--gold);outline-offset:2px}
.join-form button{align-self:flex-start;margin-top:6px;border:none;cursor:pointer}
.qfk-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-notice{padding:12px 14px;border-left:4px solid;font-size:.9rem}
.form-success{background:#edf7ed;border-color:#2e7d32;color:#1b5e20}
.form-error{background:#fff1f0;border-color:#c62828;color:#8e0000}

.site-footer{background:var(--ink);color:#A8A8A8;padding:60px 5% 30px}
.footer-grid{max-width:1180px;margin:0 auto 50px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px}
.footer-grid h2{color:#fff;font-family:'Cormorant Garamond',serif;font-size:1.15rem;margin-bottom:14px;font-weight:600}
.footer-grid p,.footer-grid a{font-size:.92rem;display:block;margin-bottom:8px;color:#A8A8A8}
.footer-grid a:hover,.footer-grid a:focus{color:var(--gold)}
.footer-bottom{max-width:1180px;margin:0 auto;border-top:1px solid #3A3B3E;padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#8A8A8A}
.footer-bottom .gold{color:var(--gold);font-weight:600}
.whatsapp-btn{position:fixed;bottom:26px;right:26px;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.25);z-index:200;transition:transform .2s}
.whatsapp-btn:hover,.whatsapp-btn:focus{transform:scale(1.08)}
.whatsapp-btn svg{width:28px;height:28px;fill:#fff}

.content-container{width:min(1100px,90%);margin:70px auto;min-height:50vh}
.content-container article>*+*{margin-top:1.2em}
.content-container h1{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.1}
.content-container a{text-decoration:underline;color:#7a5a12}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide{animation:none;opacity:0}.hero-slide:first-child{opacity:1}}
@media (max-width:900px){
	.topbar{display:none}
	.site-header{padding:15px 20px}
	.logo-text{font-size:1.2rem}
	.menu-toggle{display:block}
	.primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 8px 20px rgba(0,0,0,.08)}
	.menu-open .primary-navigation{display:block}
	.menu-open .menu-toggle>span:nth-of-type(1){transform:translateY(7px) rotate(45deg)}
	.menu-open .menu-toggle>span:nth-of-type(2){opacity:0}
	.menu-open .menu-toggle>span:nth-of-type(3){transform:translateY(-7px) rotate(-45deg)}
	.primary-navigation ul{display:block;padding:12px 20px}
	.primary-navigation li{border-bottom:1px solid var(--line)}
	.primary-navigation a{display:block;padding:14px 4px}
	.feature,.feature.reverse{flex-direction:column}
	.feature-text{padding:30px 0}
	.why-inner{grid-template-columns:1fr;gap:40px}
	.why-inner>img{height:320px}
	.process-row{grid-template-columns:1fr;gap:46px}
	.process-row::before{display:none}
	.feature-images img,.feature-images.single img{height:240px}
	.hero-inner{margin:0 20px 32px;padding:30px 26px 32px;max-width:none}
}
@media (max-width:520px){
	.logo-text{font-size:1rem}
	.logo img{width:42px;height:42px}
	.hero{min-height:570px}
	.hero-inner h1{font-size:2rem}
	.btn{width:100%;text-align:center}
	.feature-images{grid-template-columns:1fr}
	.reviews-grid{grid-template-columns:1fr}
	.google-rating{align-items:flex-start}
	.join-form,.join-text{padding:65px 7%}
}

