/*
Theme Name: Stem Builders
Theme URI: https://example.com/stem-builders
Author: STEM BUILDERS LTD
Author URI: https://example.com
Description: A polished, responsive WordPress theme for a UK construction and building company.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: stem-builders
Tags: construction, custom-logo, custom-menu, featured-images, one-column, full-width-template, blog
*/
:root{--ink:#16211f;--muted:#697471;--cream:#f5f3ee;--paper:#fff;--orange:#e66b35;--orange-dark:#bd4c20;--green:#23443c;--line:#deded7;--max:1240px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea{font:inherit}.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;padding:12px;z-index:100}.skip-link:focus{left:8px}.site-header{position:absolute;z-index:10;inset:0 0 auto;color:#fff}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.18)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.07em;font-size:15px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;color:#fff;background:var(--orange);font-family:var(--serif);font-size:22px;clip-path:polygon(50% 0,100% 28%,100% 100%,0 100%,0 28%)}.brand-small{display:block;font-size:9px;letter-spacing:.24em;font-weight:600;opacity:.72;margin-top:2px}.custom-logo{max-height:48px;width:auto}.main-nav ul{list-style:none;display:flex;align-items:center;gap:34px;margin:0;padding:0}.main-nav a{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:650;color:rgba(255,255,255,.84);transition:color .2s}.main-nav a:hover{color:#fff}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--orange);color:#fff;padding:14px 21px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;transition:background .2s,transform .2s}.header-cta:hover,.button:hover{background:var(--orange-dark);transform:translateY(-2px)}.menu-toggle{display:none;color:#fff;background:none;border:0;font-size:25px;cursor:pointer}.hero{min-height:750px;display:flex;align-items:center;position:relative;color:#fff;background:linear-gradient(90deg,rgba(11,23,21,.88) 0%,rgba(11,23,21,.68) 43%,rgba(11,23,21,.12) 100%),linear-gradient(0deg,rgba(11,23,21,.36),transparent 44%),url('assets/hero-construction.jpg') center 52%/cover no-repeat;background-color:#243732}.hero-content{padding-top:96px;max-width:690px}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.eyebrow:before{content:'';width:34px;height:2px;background:currentColor}.hero h1{font:500 clamp(48px,7vw,86px)/.99 var(--serif);letter-spacing:-.045em;margin:26px 0 24px;max-width:760px}.hero h1 em{font-style:normal;color:#f0a17b}.hero-copy{font-size:17px;line-height:1.75;color:rgba(255,255,255,.78);max-width:540px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:34px}.text-link{font-weight:700;font-size:12px;letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:6px}.hero-note{position:absolute;right:max(24px,calc((100vw - var(--max))/2));bottom:46px;border-left:2px solid var(--orange);padding:4px 0 4px 14px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8)}.hero-note strong{display:block;font-size:14px;color:#fff;letter-spacing:.02em}.trust-strip{background:var(--green);color:#fff}.trust-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.trust-item{display:flex;align-items:center;gap:13px;color:rgba(255,255,255,.76);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.trust-item strong{color:#fff;font-size:12px}.trust-icon{color:var(--orange);font-size:21px}.section{padding:112px 0}.section-kicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);font-weight:800;margin-bottom:20px}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;align-items:start}.intro-title{font:500 clamp(38px,5vw,61px)/1.06 var(--serif);letter-spacing:-.035em;margin:0}.intro-body{padding-top:8px;color:var(--muted);font-size:16px}.intro-body p{margin:0 0 20px}.arrow-link{display:inline-flex;align-items:center;gap:12px;margin-top:13px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--ink)}.arrow-link span{color:var(--orange);font-size:19px}.services{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:49px}.section-heading h2{font:500 clamp(39px,5vw,60px)/1.04 var(--serif);letter-spacing:-.04em;margin:0}.section-heading p{color:var(--muted);max-width:390px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{background:#fff;padding:34px 31px 38px;min-height:245px;transition:background .25s}.service-card:hover{background:#fffaf6}.service-number{font:italic 15px var(--serif);color:var(--orange)}.service-card h3{font:500 27px/1.15 var(--serif);margin:28px 0 11px}.service-card p{color:var(--muted);font-size:14px;margin:0}.service-mark{margin-top:20px;color:var(--orange);font-size:19px}.approach{background:var(--green);color:#fff}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.approach h2{font:500 clamp(39px,5vw,60px)/1.04 var(--serif);letter-spacing:-.04em;margin:0 0 24px}.approach-copy{color:rgba(255,255,255,.72);max-width:500px}.steps{border-top:1px solid rgba(255,255,255,.2)}.step{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.2)}.step-num{color:var(--orange);font:italic 15px var(--serif)}.step h3{font:500 21px var(--serif);margin:0 0 5px}.step p{font-size:13px;color:rgba(255,255,255,.65);margin:0}.contact{background:#f4f2ed}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:13%;align-items:start}.contact h2{font:500 clamp(42px,5vw,64px)/1.03 var(--serif);letter-spacing:-.04em;margin:0 0 20px}.contact-intro{color:var(--muted);max-width:480px}.contact-card{background:#fff;padding:36px 38px;box-shadow:0 12px 36px rgba(24,39,34,.06)}.contact-row{padding:17px 0;border-bottom:1px solid var(--line)}.contact-row:last-child{border:0}.contact-label{display:block;text-transform:uppercase;font-size:9px;font-weight:800;letter-spacing:.18em;color:var(--orange);margin-bottom:5px}.contact-value{font-size:15px;font-weight:650;overflow-wrap:anywhere}.contact-action{display:block;margin-top:22px;text-align:center}.site-footer{background:#15231f;color:#fff;padding:34px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-copy,.footer-meta{font-size:11px;color:rgba(255,255,255,.56)}.footer-meta a{color:rgba(255,255,255,.8)}.page-hero{background:var(--green);color:#fff;padding:155px 0 70px}.page-hero h1{font:500 clamp(42px,6vw,72px)/1 var(--serif);margin:20px 0 0}.content-area{padding:70px 0;min-height:45vh}.content-area article{max-width:800px;margin:auto}.content-area h2,.content-area h3{font-family:var(--serif);font-weight:500}.post-list{max-width:850px;margin:auto}.post-item{padding:24px 0;border-bottom:1px solid var(--line)}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;white-space:nowrap}@media(max-width:820px){.main-nav{display:none;position:absolute;top:92px;left:0;right:0;background:#16211f;padding:22px 24px}.main-nav.is-open{display:block}.main-nav ul{align-items:flex-start;flex-direction:column;gap:19px}.header-cta{display:none}.menu-toggle{display:block}.hero{min-height:700px;background-position:58% center}.hero h1{max-width:600px}.trust-inner{justify-content:flex-start;flex-wrap:wrap;padding:21px 0;gap:17px 28px}.trust-item{flex:1 1 40%}.intro-grid,.approach-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.section{padding:82px 0}.service-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:flex-start;flex-direction:column}.approach-grid{gap:40px}}@media(max-width:560px){.wrap{width:min(var(--max),calc(100% - 36px))}.header-inner{min-height:78px}.main-nav{top:78px}.hero{min-height:680px;background-position:62% center}.hero-content{padding-top:90px}.hero h1{font-size:54px}.hero-copy{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-note{display:none}.trust-item{font-size:9px;flex-basis:42%}.trust-item strong{font-size:10px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto;padding:27px}.service-card h3{margin-top:18px}.contact-card{padding:26px 24px}.footer-inner{align-items:flex-start;flex-direction:column;gap:10px}}
