/*
Theme Name: Sash & Case Heritage v1.1.15
Theme URI: https://sashandcasewindow.co.uk/
Author: Premier Joiners
Description: A lightweight conservation-led WordPress theme for The Sash & Case Window Company. Designed to preserve existing WordPress pages, URLs, Yoast metadata and media while improving navigation, accessibility and internal linking.
Version: 1.1.15
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: sash-case-heritage
*/

:root{--ivory:#f5f1e8;--green:#18352f;--deep:#0f2823;--charcoal:#292b28;--brass:#b29a67;--cream:#ddd5c4;--line:rgba(24,53,47,.18);--white:#fff;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--charcoal);font:16px/1.65 "DM Sans",Arial,sans-serif}body.admin-bar .site-header{top:32px}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;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{background:#fff;color:#000;clip:auto;width:auto;height:auto;padding:12px;left:8px;top:8px;z-index:99999}.topbar{min-height:38px;padding:7px 4vw;background:var(--deep);color:var(--cream);display:flex;justify-content:space-between;align-items:center;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.site-header{min-height:92px;padding:14px 4vw;display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--line);position:relative;z-index:50;background:var(--ivory)}.brand{display:flex;align-items:center;margin-right:auto;line-height:1.05}.brand img,.custom-logo{width:62px!important;height:62px!important;object-fit:contain;margin-right:12px}.brand-name{display:block;font:1.25rem "Libre Caslon Display",Georgia,serif;color:var(--green)}.brand-subtitle{display:block;color:#6d6c65;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;margin-top:6px}.site-nav ul{display:flex;align-items:center;gap:1.45rem;list-style:none;margin:0;padding:0}.site-nav a{font-size:.79rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em}.site-nav a:hover,.site-nav .current-menu-item>a{color:#826e44}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:10px 14px;text-transform:uppercase;font-weight:600}.button,.wp-block-button__link{display:inline-block;border:0;border-radius:0;background:var(--brass);color:#142721!important;padding:15px 22px;font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.button:hover,.wp-block-button__link:hover{background:#c2aa77}.button-small{padding:11px 16px}.hero{min-height:700px;position:relative;display:flex;align-items:center;color:var(--white);overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(10,31,27,.94) 0%,rgba(12,35,30,.73) 48%,rgba(12,35,30,.12) 80%)}.hero-copy{position:relative;z-index:2;width:min(760px,78%);margin-left:max(7vw,calc((100vw - var(--max))/2))}.eyebrow,.section-label{margin:0 0 20px;color:var(--brass);text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:700}.hero h1,.intro h2,.section-heading h2,.trust h2,.site-footer h2,.page-hero h1{font:normal clamp(3rem,5.4vw,5.7rem)/1 "Libre Caslon Display",Georgia,serif;margin:0}.hero-copy>p:not(.eyebrow){font-size:1.14rem;max-width:620px;color:#e7e2d7;margin:27px 0}.actions{display:flex;align-items:center;gap:29px}.text-link{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.text-link span{color:var(--brass);font-size:1.15rem;margin-left:8px}.hero-note{position:absolute;z-index:2;right:0;bottom:0;width:365px;padding:23px 31px;background:var(--ivory);color:var(--charcoal)}.hero-note strong,.hero-note span{display:block}.hero-note strong{font-family:"Libre Caslon Display",Georgia,serif;color:var(--green);font-size:1.12rem}.hero-note span{font-size:.8rem;margin-top:4px}.intro{padding:105px max(7vw,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.55fr 1.1fr 1fr;gap:50px;border-bottom:1px solid var(--line)}.intro h2{font-size:clamp(2.8rem,4vw,4.6rem);color:var(--green)}.intro-copy p:first-child{font-size:1.08rem;color:var(--green)}.services{background:var(--green);color:var(--white);padding:95px max(7vw,calc((100vw - var(--max))/2))}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:50px}.section-heading h2{font-size:clamp(2.7rem,4vw,4.4rem)}.section-label.light,.text-link.light{color:#d5c59e}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}.service-card{padding:32px 28px 36px;border-right:1px solid rgba(255,255,255,.22);transition:.2s}.service-card:first-child{padding-left:0}.service-card:last-child{border:0}.service-card:hover{background:rgba(255,255,255,.05)}.service-card .number{color:var(--brass);font-size:.72rem}.service-card h3{font:normal 1.9rem "Libre Caslon Display",Georgia,serif;margin:30px 0 13px}.service-card p{color:#cfd6d2;font-size:.91rem;min-height:90px}.service-card b{font-size:.7rem;color:#d5c59e;text-transform:uppercase;letter-spacing:.1em}.work{padding:105px max(7vw,calc((100vw - var(--max))/2))}.section-heading.dark h2{color:var(--green)}.section-heading.dark>p{max-width:350px}.gallery{display:grid;grid-template-columns:1.3fr .82fr .82fr;gap:18px}.gallery figure{margin:0;background:var(--white)}.gallery img{width:100%;height:430px;object-fit:cover}.gallery .wide img{height:520px}.gallery figcaption{padding:17px 20px;display:flex;justify-content:space-between}.gallery figcaption b{font-family:"Libre Caslon Display",Georgia,serif;color:var(--green)}.gallery figcaption span{font-size:.76rem;color:#777}.trust{padding:90px max(7vw,calc((100vw - var(--max))/2));background:var(--charcoal);color:var(--white);display:grid;grid-template-columns:1fr 1.1fr;gap:9vw}.trust h2{font-size:clamp(2.8rem,4vw,4.5rem)}.trust-points p{display:grid;grid-template-columns:55px 1fr;margin:0;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.15)}.trust-points b{color:var(--brass)}.trust-points strong,.trust-points span{display:block}.trust-points strong{font:normal 1.2rem "Libre Caslon Display",Georgia,serif;margin-bottom:4px}.trust-points span{color:#ccd0cc;font-size:.88rem}.page-hero{padding:70px max(7vw,calc((100vw - var(--max))/2));background:var(--green);color:#fff}.page-hero h1{font-size:clamp(2.8rem,5vw,5rem);max-width:950px}.breadcrumbs{margin-bottom:18px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#d5c59e}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.content-wrap{max-width:1180px;margin:0 auto;padding:65px 30px 100px}.entry-content{max-width:850px}.entry-content>*:first-child{margin-top:0}.entry-content h2,.entry-content h3{font-family:"Libre Caslon Display",Georgia,serif;color:var(--green);line-height:1.2}.entry-content h2{font-size:clamp(2rem,3vw,3.2rem);margin-top:2.2rem}.entry-content h3{font-size:1.6rem;margin-top:1.8rem}.entry-content p,.entry-content li{font-size:1.03rem}.entry-content a:not(.button){color:#315f55;text-decoration:underline;text-underline-offset:3px}.entry-content img{margin:22px 0}.seo-links{margin-top:65px;border-top:1px solid var(--line);padding-top:38px}.seo-links h2{font:normal 2.1rem "Libre Caslon Display",Georgia,serif;color:var(--green);margin:0 0 20px}.seo-links ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}.seo-links a{display:block;background:#fff;border:1px solid var(--line);padding:17px 19px;color:var(--green);font-weight:600}.seo-links a:hover{border-color:var(--brass)}.site-footer{padding:78px max(7vw,calc((100vw - var(--max))/2)) 30px;background:var(--ivory)}.footer-main{display:grid;grid-template-columns:120px 1.25fr .7fr;gap:45px;align-items:start}.footer-logo{width:108px}.site-footer h2{font-size:clamp(2.4rem,3.5vw,3.8rem);color:var(--green);max-width:700px}.site-footer address{font-style:normal;border-left:1px solid var(--line);padding-left:32px}.site-footer address a{font-weight:700;color:var(--green)}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:65px 0 35px;padding-top:35px;border-top:1px solid var(--line)}.footer-links h3{font:normal 1.2rem "Libre Caslon Display",Georgia,serif;color:var(--green)}.footer-links ul{list-style:none;margin:0;padding:0;columns:2}.footer-links li{margin:6px 0}.footer-links a{font-size:.86rem}.copyright{display:flex;justify-content:space-between;gap:25px;padding-top:22px;border-top:1px solid var(--line);font-size:.76rem;color:#686963}.elementor-location-header,.elementor-location-footer,.elementor[data-elementor-type="templately-header"],.elementor[data-elementor-type="templately-footer"]{display:none!important}@media(max-width:1000px){.site-nav,.site-header>.button{display:none}.menu-toggle{display:block}.site-nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:20px 5vw;border-bottom:1px solid var(--line)}.site-nav.is-open ul{display:block}.site-nav.is-open li{margin:12px 0}.intro{grid-template-columns:1fr;gap:12px}.service-grid{grid-template-columns:1fr 1fr}.service-card{border-bottom:1px solid rgba(255,255,255,.22)}.gallery{grid-template-columns:1fr}.gallery img,.gallery .wide img{height:420px}.trust{grid-template-columns:1fr}.footer-main{grid-template-columns:90px 1fr}.site-footer address{grid-column:2;border:0;padding-left:0}}@media(max-width:782px){body.admin-bar .site-header{top:46px}}@media(max-width:600px){.topbar span{display:none}.topbar{justify-content:center}.site-header{min-height:76px}.brand img,.custom-logo{width:48px!important;height:48px!important}.brand-name{font-size:1rem}.brand-subtitle{font-size:.58rem}.hero{min-height:620px}.hero-copy{width:87%;margin-left:7vw}.hero h1{font-size:3.05rem}.hero-note{display:none}.actions{align-items:flex-start;flex-direction:column;gap:17px}.section-heading{display:block}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child{padding:27px 0}.service-card p{min-height:0}.gallery img,.gallery .wide img{height:340px}.seo-links ul{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-logo{width:82px}.site-footer address{grid-column:auto}.footer-links{grid-template-columns:1fr}.footer-links ul{columns:1}.copyright{display:block}.copyright span{display:block;margin-bottom:6px}}
