/*
Theme Name: Sash & Case Heritage v1.6.6
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.6.9
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}}


/* ---------------------------------------------------------------------------
   Mobile performance (v1.3.0)
   --------------------------------------------------------------------------- */

/* Paint the hero's dark ground on the very first frame so the page is never a
   blank white screen while the photograph downloads. This is what the Speed
   Index metric measures. */
.hero{background-color:var(--deep)}
.hero picture{display:contents}

/* <picture> is inline by default, which leaves a baseline gap under the
   photographs in the work gallery. */
.gallery picture{display:block;line-height:0}

/* Reserve the gallery's height before the lazy images arrive so scrolling
   never shifts the layout. */
.gallery figure{min-height:430px}
@media(max-width:1000px){.gallery figure{min-height:420px}}
@media(max-width:600px){.gallery figure{min-height:340px}}

/* Skip layout and paint work for sections that are far below the fold until
   they are scrolled near. The intrinsic sizes keep the scrollbar honest. */
.work,.trust,.priority-service-links,.site-footer{content-visibility:auto}
.work{contain-intrinsic-size:auto 1400px}
.trust{contain-intrinsic-size:auto 700px}
.priority-service-links{contain-intrinsic-size:auto 600px}
.site-footer{contain-intrinsic-size:auto 1200px}

/* Honour a reduced-motion preference and drop the smooth-scroll work. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* v1.6.9 mobile homepage spacing */
@media(max-width:600px){
 .hero{min-height:650px;align-items:flex-start;padding:58px 0 62px}
 .hero-copy{width:auto;margin:0 7vw}
 .hero .eyebrow{font-size:.68rem;line-height:1.55;margin-bottom:16px;letter-spacing:.13em}
 .hero h1{font-size:clamp(2.45rem,11.5vw,3.05rem);line-height:1.04}
 .hero-copy>p:not(.eyebrow){font-size:1.03rem;line-height:1.55;margin:22px 0 25px}
 .actions{gap:20px}
 .actions .button{padding:14px 18px;font-size:.7rem}
}

@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/dm-sans-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/dm-sans-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/dm-sans-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/dm-sans-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Libre Caslon Display';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/libre-caslon-display-latin-400-normal.woff2') format('woff2')}

.site-header .menu-toggle{display:flex;align-items:center;gap:12px;border:1px solid rgba(24,53,47,.26);background:transparent;color:#18352f;padding:11px 14px;cursor:pointer;font:600 .72rem/1 "DM Sans",Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;position:relative;z-index:1002}
.menu-open .site-header .menu-toggle{position:fixed;top:24px;right:28px;background:#f5f1e8;z-index:1003}
.admin-bar.menu-open .site-header .menu-toggle{top:56px}
.menu-toggle-icon{display:grid;gap:4px;width:21px}.menu-toggle-icon i{display:block;width:21px;height:1px;background:currentColor;transition:transform .25s,opacity .2s}.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:first-child{transform:translateY(5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:last-child{transform:translateY(-5px) rotate(-45deg)}
.site-header>.site-nav,.site-header>.site-nav.is-open{display:block;position:fixed;inset:0;z-index:1000;padding:0;border:0;background:transparent;visibility:hidden;pointer-events:none}.site-header>.site-nav.is-open{visibility:visible;pointer-events:auto}.menu-backdrop{position:absolute;inset:0;background:rgba(10,25,22,.68);opacity:0;transition:opacity .28s}.site-nav.is-open .menu-backdrop{opacity:1}.menu-drawer{position:absolute;top:0;right:0;width:min(1040px,94vw);height:100%;overflow:auto;padding:52px clamp(28px,5vw,72px);background:#f5f1e8;color:#292b28;transform:translateX(100%);transition:transform .32s ease}.site-nav.is-open .menu-drawer{transform:none}body.menu-open{overflow:hidden}
.menu-drawer-heading{padding:0 130px 28px 0;border-bottom:1px solid rgba(24,53,47,.18)}.menu-drawer-heading span{display:block;color:#8b7548;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.menu-drawer-heading strong{display:block;margin-top:8px;color:#18352f;font:normal clamp(1.8rem,3vw,3rem)/1.1 "Libre Caslon Display",Georgia,serif}.menu-columns{display:grid;grid-template-columns:minmax(190px,.62fr) minmax(0,1.7fr);gap:52px;padding:38px 0}.menu-columns h2{margin:0 0 18px;color:#8b7548;font:700 .7rem/1.2 "DM Sans",Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.menu-columns ul{display:block;list-style:none;margin:0;padding:0}.menu-columns li{margin:0 0 8px}.menu-columns a{font-size:.87rem;line-height:1.35;color:#18352f}.menu-columns a:hover,.menu-columns a:focus-visible{text-decoration:underline;text-decoration-color:#b29a67;text-underline-offset:4px}.menu-primary-list li{margin-bottom:12px}.menu-main a{font:normal 1.48rem/1.3 "Libre Caslon Display",Georgia,serif}.menu-service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.menu-service-groups h3{min-height:2.7em;margin:0 0 13px;padding-bottom:10px;border-bottom:1px solid rgba(24,53,47,.16);color:#18352f;font:normal 1.05rem/1.3 "Libre Caslon Display",Georgia,serif}.menu-service-groups li{margin-bottom:9px}.menu-areas{grid-column:1/-1;padding-top:22px;border-top:1px solid rgba(24,53,47,.18)}.menu-areas summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;color:#8b7548;font:700 .72rem/1.2 "DM Sans",Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.menu-areas summary::-webkit-details-marker{display:none}.menu-areas summary::after{content:'+';color:#18352f;font-size:1.25rem;line-height:1}.menu-areas[open] summary::after{content:'−'}.menu-areas ul{columns:4;column-gap:28px;margin-top:20px}.menu-areas li{break-inside:avoid}.menu-contact{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px;border-top:1px solid rgba(24,53,47,.18)}.menu-contact>a:last-child{color:#18352f;font-weight:700}.header-quote{margin-left:auto}
@media(max-width:900px){.menu-toggle-label{display:none}.header-quote{display:none!important}.menu-drawer{padding-top:82px}.menu-columns{grid-template-columns:1fr;gap:34px}.menu-service-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-areas{grid-column:auto}.menu-areas ul{columns:3}.menu-contact{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.menu-drawer{width:100%;padding-left:24px;padding-right:24px}.menu-drawer-heading{padding-right:74px}.menu-open .site-header .menu-toggle{right:18px}.drawer-site-search{margin-right:72px}.menu-columns{gap:34px;padding-top:32px}.menu-primary-list{display:block!important}.menu-primary-list li{margin-bottom:10px}.menu-main a{font-size:1.4rem}.menu-service-groups{grid-template-columns:1fr;gap:24px}.menu-service-groups h3{min-height:0}.menu-service-groups ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.menu-service-groups a{font-size:.84rem}.menu-areas ul{columns:2}.menu-contact .button{width:100%;text-align:center}}

.site-footer .footer-main{grid-template-columns:minmax(340px,430px) minmax(0,1fr);max-width:1180px;align-items:center}
.site-footer .footer-main .footer-logo{display:block;width:100%;max-width:430px;height:auto}
.site-footer .footer-links{grid-template-columns:.85fr 1.1fr 1.45fr;gap:clamp(28px,4vw,64px);align-items:start;margin-top:56px}
.site-footer .footer-links section{min-width:0}
.site-footer .footer-links h3{margin:0 0 18px;text-transform:uppercase;letter-spacing:.08em;font:600 .88rem/1.3 "DM Sans",Arial,sans-serif;color:#18352f}
.site-footer .footer-links address,.site-footer .footer-link-stream{margin:0;font-size:.84rem;line-height:1.75;color:#535650}
.site-footer .footer-links address{display:grid;gap:2px;padding:0;border:0;font-style:normal}
.site-footer .footer-links address strong{display:block;margin:0 0 3px;color:#18352f;font-family:"Libre Caslon Display",Georgia,serif;font-size:1.04rem}
.site-footer .footer-links address span{display:block;margin:0}
.site-footer .footer-links a{color:#315f55;text-decoration:none}
.site-footer .footer-links a:hover{text-decoration:underline;text-decoration-color:#b29a67;text-underline-offset:3px}
.footer-legal-name{max-width:780px;margin:0 0 20px;color:#686963;font-size:.76rem;line-height:1.6}
@media(max-width:900px){.site-footer .footer-links{grid-template-columns:1fr 1fr}.site-footer .footer-contact{grid-column:1/-1}.site-footer .footer-main{grid-template-columns:minmax(260px,330px) 1fr}}
@media(max-width:620px){.site-footer .footer-main,.site-footer .footer-links{grid-template-columns:1fr}.site-footer .footer-contact{grid-column:auto}.site-footer .footer-main .footer-logo{width:100%;max-width:330px}.site-footer .footer-links{gap:34px}}
.footer-facebook{display:inline-flex;align-items:center;gap:12px;margin:8px 0 28px;color:#18352f;font-weight:700;font-size:.84rem;letter-spacing:.04em}
.footer-facebook img{display:block;width:42px;height:42px}
.footer-facebook:hover span,.footer-facebook:focus-visible span{text-decoration:underline;text-decoration-color:#b29a67;text-underline-offset:4px}

/* Neutralise inherited white Elementor typography on the new ivory page canvas. */
body:not(.home) .entry-content,
body:not(.home) .entry-content .elementor,
body:not(.home) .entry-content .elementor-section,
body:not(.home) .entry-content .e-con,
body:not(.home) .entry-content .elementor-widget-container{color:#292b28}

body:not(.home) .entry-content p,
body:not(.home) .entry-content li,
body:not(.home) .entry-content blockquote,
body:not(.home) .entry-content .elementor-widget-text-editor,
body:not(.home) .entry-content .elementor-widget-text-editor p,
body:not(.home) .entry-content .elementor-widget-text-editor span{color:#292b28!important}

body:not(.home) .entry-content h1,
body:not(.home) .entry-content h2,
body:not(.home) .entry-content h3,
body:not(.home) .entry-content h4,
body:not(.home) .entry-content h5,
body:not(.home) .entry-content h6,
body:not(.home) .entry-content h1 span,
body:not(.home) .entry-content h2 span,
body:not(.home) .entry-content h3 span,
body:not(.home) .entry-content h4 span,
body:not(.home) .entry-content .eael-dch-title-text{color:#18352f!important}

body:not(.home) .entry-content a:not(.elementor-button):not(.wp-block-button__link){color:#315f55!important;text-decoration:underline;text-decoration-color:#b29a67;text-underline-offset:3px}
body:not(.home) .entry-content .elementor-button,
body:not(.home) .entry-content .elementor-button span,
body:not(.home) .entry-content .wp-block-button__link{color:#142721!important}

body:not(.home) .entry-content input,
body:not(.home) .entry-content textarea,
body:not(.home) .entry-content select{color:#292b28;background:#fff;border-color:rgba(24,53,47,.3)}

/*
 * About and Contact were built with the previous site's Elementor colours.
 * Keep their content, links, media and map intact while presenting them on
 * the same warm ivory canvas and at the same reading width as the new site.
 */
body.scw-standard-content-page .content-wrap{
    max-width:1180px;
    padding-top:72px;
}

body.scw-standard-content-page .entry-content{
    max-width:none;
    width:100%;
}

body.scw-standard-content-page .entry-content .elementor,
body.scw-standard-content-page .entry-content .elementor-section,
body.scw-standard-content-page .entry-content .elementor-section-wrap,
body.scw-standard-content-page .entry-content .elementor-container,
body.scw-standard-content-page .entry-content .elementor-column,
body.scw-standard-content-page .entry-content .elementor-column-wrap,
body.scw-standard-content-page .entry-content .elementor-widget-wrap,
body.scw-standard-content-page .entry-content .elementor-element-populated,
body.scw-standard-content-page .entry-content .e-con,
body.scw-standard-content-page .entry-content .e-con-inner,
body.scw-standard-content-page .entry-content .elementor-widget-container{
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
}

body.scw-standard-content-page .entry-content>.elementor,
body.scw-standard-content-page .entry-content>.elementor>.elementor-section-wrap{
    width:100%;
}

body.scw-standard-content-page .entry-content .elementor-section>.elementor-container{
    width:100%;
    max-width:1040px!important;
    margin-left:auto;
    margin-right:auto;
}

body.scw-standard-content-page .entry-content .elementor-column-gap-default>.elementor-column>.elementor-element-populated{
    padding:26px!important;
}

body.scw-standard-content-page .entry-content p,
body.scw-standard-content-page .entry-content li{
    color:#292b28!important;
    line-height:1.75;
}

body.scw-standard-content-page .entry-content h2,
body.scw-standard-content-page .entry-content h3,
body.scw-standard-content-page .entry-content h4{
    color:#18352f!important;
}

body.scw-standard-content-page .entry-content .elementor-widget-image img{
    display:block;
    width:auto;
    max-width:100%;
    margin:0 auto;
}

body.scw-page-contact .entry-content iframe{
    display:block;
    width:100%!important;
    min-height:420px;
    border:0;
    margin-top:28px;
}

@media(max-width:767px){
    body.scw-standard-content-page .content-wrap{padding:46px 22px 72px}
    body.scw-standard-content-page .entry-content .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:14px 0!important}
    body.scw-standard-content-page .entry-content .elementor-column{width:100%!important}
    body.scw-page-contact .entry-content iframe{min-height:340px}
}

/* Expanded homepage service grid. */
.services .service-grid {
    border-left: 1px solid rgba(255, 255, 255, .25);
    border-bottom: 0;
}

.services .service-card,
.services .service-card:first-child,
.services .service-card:last-child {
    padding: 32px 28px 36px;
    border-right: 1px solid rgba(255, 255, 255, .25);
    border-bottom: 1px solid rgba(255, 255, 255, .25);
}

.services .service-card h3 {
    font-size: clamp(1.45rem, 2vw, 1.9rem);
    line-height: 1.15;
}

.services .service-card p {
    min-height: 112px;
}

@media (max-width: 1000px) {
    .services .service-card p {
        min-height: 88px;
    }
}

@media (max-width: 600px) {
    .services .service-card,
    .services .service-card:first-child,
    .services .service-card:last-child {
        padding: 28px 24px 32px;
    }

    .services .service-card p {
        min-height: 0;
    }
}

/* v1.6.8 tighter integrated brand lock-up */
.site-header .brand{display:block;flex:0 1 590px;max-width:590px;margin-right:auto;min-width:0}.site-header .brand-picture{display:block;width:100%}.site-header .brand .brand-lockup{display:block;width:100%!important;max-width:590px;height:auto!important;margin:0!important;object-fit:contain;overflow:visible}@media(min-width:1100px){.site-header{min-height:116px;padding-top:10px;padding-bottom:10px}.site-header .brand{flex-basis:590px;max-width:590px}}@media(max-width:760px){.site-header{display:grid!important;grid-template-columns:1fr;gap:7px;padding:6px 2.5vw 9px;min-height:0}.site-header .brand{grid-column:1;width:100%;max-width:none;flex:none;margin:0}.site-header .brand-picture{display:block;width:100%}.site-header .brand .brand-lockup{display:block;width:100%!important;max-width:none!important;height:auto!important;margin:0!important}.site-header .header-actions{grid-column:1;width:100%}}
/* v1.6.9 — compact mobile masthead: one cohesive lock-up without crowding */
@media(max-width:760px){
  html body header.site-header{padding:8px 14px 11px!important;gap:9px!important}
  html body header.site-header .brand{max-height:102px!important;overflow:hidden!important}
  html body header.site-header .brand-picture{height:102px!important;display:flex!important;align-items:center!important}
  html body header.site-header .brand .brand-lockup{width:100%!important;height:102px!important;object-fit:contain!important;object-position:left center!important}
}
@media(max-width:430px){
  html body header.site-header .brand,html body header.site-header .brand-picture,html body header.site-header .brand .brand-lockup{height:94px!important;max-height:94px!important}
}

.header-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.mobile-site-search{display:none}
.site-search{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}
.site-search input{min-width:0;height:46px;padding:0 15px;border:1px solid rgba(24,53,47,.28);border-right:0;border-radius:0;background:#fff;color:#292b28;font:500 .86rem "DM Sans",Arial,sans-serif;outline:0}
.site-search input:focus{border-color:#826e44;box-shadow:inset 0 0 0 1px #826e44}
.site-search button{height:46px;padding:0 18px;border:1px solid #18352f;border-radius:0;background:#18352f;color:#fff;cursor:pointer;font:700 .69rem "DM Sans",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.site-search button:hover{background:#244a42}
.drawer-site-search{max-width:100%;margin:26px 0 0}
.drawer-site-search input{height:50px;background:rgba(255,255,255,.7)}.drawer-site-search button{height:50px;background:#b29a67;border-color:#b29a67;color:#142721}
.results-site-search{max-width:760px;margin:0 0 30px}.search-summary{color:#686963;margin-bottom:25px}.search-result-list{display:grid;gap:16px}.search-result-card{padding:27px 30px;background:#fff;border:1px solid rgba(24,53,47,.16)}.search-result-card .section-label{margin-bottom:8px}.search-result-card h2{margin:0 0 10px;font:normal clamp(1.65rem,2.5vw,2.4rem)/1.15 "Libre Caslon Display",Georgia,serif}.search-result-card h2 a{color:#18352f}.search-result-card p:not(.section-label){margin:0 0 13px}.no-search-results{padding:35px;background:#fff;border:1px solid rgba(24,53,47,.16)}
@media(max-width:760px){html body header.site-header{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;inset:auto!important;width:100%!important;min-height:0!important;flex-wrap:wrap!important;padding:4px 14px 12px!important;gap:8px!important;background:#f5f1e8!important;z-index:999!important}html body header.site-header .brand{display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important;flex:0 0 100%!important;width:100%!important;max-width:none!important;margin:0!important}html body header.site-header .brand-picture{display:block!important;width:100%!important}html body header.site-header .brand .brand-lockup{display:block!important;visibility:visible!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important}html body header.site-header .header-actions{display:grid!important;visibility:visible!important;opacity:1!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;margin:0!important;gap:9px!important}html body header.site-header .header-quote{display:none!important}html body header.site-header .mobile-site-search{display:grid!important;visibility:visible!important;opacity:1!important}.mobile-site-search input,.mobile-site-search button{height:42px}.mobile-site-search button{padding:0 12px}html body header.site-header .menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important;align-self:stretch;height:42px}.menu-open .site-header .menu-toggle{height:auto}.drawer-site-search{margin-top:22px}}
@media(max-width:430px){.mobile-site-search button{font-size:0;width:44px;padding:0}.mobile-site-search button:after{content:'⌕';font-size:21px;line-height:1}.site-search input{padding-left:11px;font-size:.78rem}}

/* Equal-height craftsmanship gallery cards. */
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.gallery figure,.gallery figure.wide{display:flex;flex-direction:column;min-width:0;height:100%}
.gallery img,.gallery .wide img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.gallery figcaption{align-items:center;gap:16px;min-height:64px;margin-top:auto}
.gallery figcaption span{white-space:nowrap}
@media(max-width:1000px){.gallery{grid-template-columns:1fr}.gallery img,.gallery .wide img{height:auto;aspect-ratio:16/10}}

/* Complete mobile frame. Independent edge overlays avoid Safari dropping the left border. */
@media(max-width:600px){.service-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;position:relative!important;width:100%!important;max-width:100%!important;overflow:hidden!important;border-left:0!important;border-right:0!important;border-top:1px solid rgba(255,255,255,.32)!important;border-bottom:1px solid rgba(255,255,255,.32)!important}.service-grid:before,.service-grid:after{content:""!important;display:block!important;position:absolute!important;top:0!important;bottom:0!important;width:1px!important;background:rgba(255,255,255,.32)!important;z-index:5!important;pointer-events:none!important}.service-grid:before{left:0!important}.service-grid:after{right:0!important}.service-grid .service-card,.service-grid .service-card:first-child{position:relative!important;z-index:1!important;min-width:0!important;width:100%!important;padding:27px 24px!important;border-left:0!important;border-right:0!important;border-top:0!important;border-bottom:1px solid rgba(255,255,255,.32)!important}.service-grid .service-card:last-child{border-bottom:0!important}}

/* v1.6.9 — give the search/menu row breathing room on phones */
@media(max-width:760px){
 .mobile-site-search input,.mobile-site-search button,html body header.site-header .menu-toggle{height:48px!important}
 .mobile-site-search input{font-size:.9rem!important}
}

.priority-service-links{background:#ece7dc;border-top:1px solid rgba(24,53,47,.16);padding:58px max(7vw,calc((100vw - 1240px)/2))}
.priority-service-links__inner{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.45fr);gap:clamp(36px,6vw,90px);align-items:end}
.priority-service-links__intro .section-label{margin-bottom:12px}
.priority-service-links__intro h2{margin:0 0 14px;color:#18352f;font:normal clamp(2rem,3vw,3.15rem)/1.05 "Libre Caslon Display",Georgia,serif}
.priority-service-links__intro>p:last-child{margin:0;color:#535650;font-size:.92rem;line-height:1.7}
.priority-service-links__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(24,53,47,.2)}
.priority-service-link{display:flex;min-width:0;min-height:145px;padding:25px 26px;flex-direction:column;justify-content:space-between;background:#f5f1e8;color:#18352f}
.priority-service-link:first-child{border-right:1px solid rgba(24,53,47,.2)}
a.priority-service-link{transition:background-color .18s ease,color .18s ease}
a.priority-service-link:hover,a.priority-service-link:focus-visible{background:#18352f;color:#fff;outline:0}
.priority-service-link span{font:normal 1.38rem/1.25 "Libre Caslon Display",Georgia,serif}
.priority-service-link small{display:block;margin-top:20px;font:600 .68rem/1.55 "DM Sans",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#6a6b65}
a.priority-service-link:hover small,a.priority-service-link:focus-visible small{color:#ddd5c4}
.priority-service-link small b{margin-left:5px;color:#b29a67;font-size:1rem}
.priority-service-link.is-current{background:rgba(245,241,232,.6)}
@media(max-width:820px){.priority-service-links__inner{grid-template-columns:1fr;align-items:start}.priority-service-links__cards{grid-template-columns:1fr}.priority-service-link:first-child{border-right:0;border-bottom:1px solid rgba(24,53,47,.2)}}
@media(max-width:620px){.priority-service-links{padding:46px 7vw}.priority-service-links__inner{gap:28px}.priority-service-link{min-height:125px;padding:22px}.priority-service-link span{font-size:1.25rem}}

/* Dependency-free page layouts introduced in v1.2.0. */
.native-special-page .entry-content,
.entry-content .native-content{max-width:none;width:100%}
.native-content{color:#292b28}
.native-content>h2:first-child{margin-top:0}
.native-content h2,.native-content h3,.native-content h4{font-family:"Libre Caslon Display",Georgia,serif;color:#18352f;line-height:1.16}
.native-content h2{font-size:clamp(2rem,3.5vw,3.5rem);margin:2.25rem 0 1rem}
.native-content h3{font-size:clamp(1.35rem,2vw,1.75rem);margin:1.8rem 0 .65rem}
.native-content p,.native-content li{font-size:1.04rem;line-height:1.78}
.native-content p,.native-content ul,.native-content ol,.native-content blockquote,.native-content table{max-width:850px}
.native-content a:not(.button):not(.native-project-card){color:#315f55;text-decoration:underline;text-decoration-color:#b29a67;text-underline-offset:3px}
.native-content>img,.native-content>figure{display:block;max-width:920px;margin:32px 0}
.native-content img{height:auto}
.native-content blockquote{margin:2rem 0;padding:18px 24px;border-left:4px solid #b29a67;background:#fff}
.native-content table{width:100%;border-collapse:collapse;margin:2rem 0;background:#fff}
.native-content th,.native-content td{padding:12px 14px;border:1px solid rgba(24,53,47,.18);text-align:left;vertical-align:top}
.native-content details{max-width:900px;padding:18px 0;border-bottom:1px solid rgba(24,53,47,.18)}
.native-content summary{cursor:pointer;color:#18352f;font:1.25rem "Libre Caslon Display",Georgia,serif}
.service-intro{max-width:920px;margin-bottom:32px}
.service-intro h2{margin:.2rem 0 1rem}
.service-lead{font-size:clamp(1.15rem,2vw,1.35rem)!important;line-height:1.62!important;color:#18352f}
.service-feature-image{max-width:100%!important;margin:0 0 46px!important;background:#fff;border:1px solid rgba(24,53,47,.16)}
.service-feature-image img{display:block;width:100%;max-height:590px;object-fit:cover;margin:0}
.service-feature-image figcaption{padding:12px 16px;color:#5d615d;font-size:.8rem}
.service-feature-graphic{display:block;max-width:660px!important;margin:8px auto 50px!important;text-align:center}
.service-feature-graphic img{display:block;width:100%;height:auto;margin:0 auto;filter:drop-shadow(0 18px 28px rgba(24,53,47,.08))}
.service-feature-graphic figcaption{max-width:620px;margin:12px auto 0;color:#5d615d;font-size:.82rem;line-height:1.55}
.service-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:920px;margin:1.5rem 0 2.5rem}
.service-benefits section{padding:24px;background:#fff;border:1px solid rgba(24,53,47,.16)}
.service-benefits h3{margin:0 0 .55rem}
.service-benefits p{margin:0;font-size:.96rem;line-height:1.68}
.service-cta{max-width:920px;margin-top:50px;padding:38px;background:#18352f;color:#fff}
.service-cta h2{margin:0 0 12px;color:#fff}
.service-cta p{margin:0 0 22px;color:#e5e2d8}

.native-intro-grid,.native-contact-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:70px;align-items:center;padding-bottom:65px;border-bottom:1px solid rgba(24,53,47,.18)}
.native-intro-grid h2,.native-contact-grid h2{margin-top:0}
.native-brand-panel{display:block!important;width:100%!important;max-width:470px!important;height:auto!important;margin:0 auto!important;padding:36px;background:#fff;border:1px solid rgba(24,53,47,.16)}
.native-copy-section{padding-top:40px}
.native-contact-card{display:flex;flex-direction:column;gap:7px;margin:28px 0;font-style:normal}
.native-contact-card strong{font:1.35rem "Libre Caslon Display",Georgia,serif;color:#18352f}
.native-contact-card a{font-weight:700}
.native-map-section{margin-top:65px;padding-top:45px;border-top:1px solid rgba(24,53,47,.18)}
.native-map-section h2{margin-top:0}
.native-map-section iframe{display:block;width:100%;min-height:430px;border:0}

.native-section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:end;margin-bottom:42px}
.native-section-heading h2{margin:0}
.native-section-heading>p{margin:0}
.native-project-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.native-project-card{display:flex;flex-direction:column;position:relative;background:#fff;border:1px solid rgba(24,53,47,.15);color:#18352f;text-decoration:none!important;cursor:zoom-in;overflow:hidden}
.native-project-card img{display:block;width:100%;height:235px;object-fit:cover;margin:0;transition:transform .25s ease}
.native-project-card span{padding:14px 16px;font-size:.82rem;line-height:1.45;font-weight:600}
.native-project-card:hover img,.native-project-card:focus-visible img{transform:scale(1.025)}
.native-project-card:focus-visible{outline:3px solid #b29a67;outline-offset:3px}
.native-guidance-panel{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:55px;align-items:center;margin-top:70px;padding:48px;background:#fff;border-top:1px solid rgba(24,53,47,.18);border-bottom:1px solid rgba(24,53,47,.18)}
.native-guidance-panel img{display:block;width:100%;height:auto;margin:0}
.native-guidance-panel h2{margin:0 0 15px}

@media(max-width:950px){
    .native-intro-grid,.native-contact-grid,.native-section-heading,.native-guidance-panel{grid-template-columns:1fr;gap:32px}
    .native-brand-panel{margin:0!important}
    .native-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
    .native-intro-grid,.native-contact-grid{padding-bottom:42px}
    .native-brand-panel{padding:20px}
    .native-contact-grid .actions{align-items:flex-start}
    .native-map-section{margin-top:45px;padding-top:32px}
    .native-map-section iframe{min-height:340px}
    .native-project-gallery{grid-template-columns:1fr}
    .native-project-card img{height:270px}
    .native-guidance-panel{margin-top:48px;padding:28px 22px}
    .service-benefits{grid-template-columns:1fr}
    .service-feature-image img{max-height:none}
    .service-feature-graphic{max-width:100%!important;margin-bottom:38px!important}
    .service-cta{padding:28px 22px}
}


/* Mobile image sizing and LCP improvements for the two Stirling service pages. */
@media(max-width:600px){
    body.scw-page-sash-and-case-window-repairs-stirling .native-content a:has(> img),
    body.scw-page-sash-and-case-window-draught-proofing-companies-stirling .native-content a:has(> img){
        display:block;
        position:relative;
        width:100%;
        max-width:100%;
        margin:22px 0 32px;
        line-height:0;
        box-sizing:border-box;
    }

    body.scw-page-sash-and-case-window-repairs-stirling .native-content img,
    body.scw-page-sash-and-case-window-draught-proofing-companies-stirling .native-content img{
        display:block;
        width:100%;
        max-width:100%;
        height:auto;
        margin:0 auto;
        box-sizing:border-box;
    }

    /* Keep the Enlarge label inside the image/link area. */
    body.scw-page-sash-and-case-window-repairs-stirling .native-content .enlarge,
    body.scw-page-sash-and-case-window-draught-proofing-companies-stirling .native-content .enlarge,
    body.scw-page-sash-and-case-window-repairs-stirling .native-content .enlarge-button,
    body.scw-page-sash-and-case-window-draught-proofing-companies-stirling .native-content .enlarge-button,
    body.scw-page-sash-and-case-window-repairs-stirling .native-content [aria-label*="Enlarge" i],
    body.scw-page-sash-and-case-window-draught-proofing-companies-stirling .native-content [aria-label*="Enlarge" i]{
        position:absolute;
        right:8px;
        bottom:8px;
        z-index:2;
        max-width:calc(100% - 16px);
        box-sizing:border-box;
    }
}

/* Commercial and geographic internal-link structure for service-area pages. */
.location-service-hub,.location-nearby,.location-quotation{margin-top:72px}
.native-location-kicker{margin:0 0 18px;color:#806d43;font-size:.75rem!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.location-service-hub{background:var(--green);color:var(--white);padding:56px}
.location-service-hub__intro{max-width:780px;margin-bottom:38px}
.location-service-hub__intro h2,.location-nearby h2,.location-quotation h2{font:normal clamp(2.2rem,4vw,3.75rem)/1.08 "Libre Caslon Display",Georgia,serif;margin:0 0 18px}
.location-service-hub__intro>p:last-child{color:#d6dcd8;max-width:720px}
.location-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.22);border-left:1px solid rgba(255,255,255,.22)}
.location-service-card{display:flex;flex-direction:column;min-height:290px;padding:28px;border-right:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);transition:background .2s ease}
.location-service-card:hover,.location-service-card:focus-visible{background:rgba(255,255,255,.07)}
.location-service-card>span{color:var(--brass);font-size:.75rem}
.location-service-card h3{font:normal 1.55rem/1.2 "Libre Caslon Display",Georgia,serif;color:var(--white);margin:24px 0 12px}
.location-service-card p{color:#d6dcd8;font-size:.91rem;margin:0 0 22px}
.location-service-card b{margin-top:auto;color:#ddcda8;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.location-specialist-links{margin-top:36px}
.location-specialist-links h3{font:normal 1.55rem "Libre Caslon Display",Georgia,serif;color:var(--white);margin:0 0 17px}
.location-specialist-links ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}
.location-specialist-links a{display:block;border:1px solid rgba(255,255,255,.26);padding:10px 14px;color:#e7dfcf;font-size:.82rem;font-weight:600}
.location-specialist-links a:hover,.location-specialist-links a:focus-visible{border-color:var(--brass);background:rgba(255,255,255,.05)}
.location-nearby{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.location-nearby h2{color:var(--green);font-size:clamp(2rem,3vw,3rem)}
.location-nearby ul{display:grid;grid-template-columns:1fr 1fr;gap:12px;list-style:none;margin:0;padding:0}
.location-nearby a{display:flex;height:100%;justify-content:space-between;gap:15px;background:var(--white);border:1px solid var(--line);padding:17px 18px;color:var(--green);font-weight:600}
.location-nearby a:hover,.location-nearby a:focus-visible{border-color:var(--brass)}
.location-quotation{display:grid;grid-template-columns:1fr auto;align-items:center;gap:55px;background:#e7dfcf;padding:46px 50px}
.location-quotation h2{color:var(--green);font-size:clamp(2rem,3.5vw,3.25rem)}
.location-quotation p:not(.section-label){max-width:680px;margin-bottom:0}
.location-quotation>div:last-child{display:flex;flex-direction:column;align-items:stretch;gap:14px;min-width:245px;text-align:center}
.location-phone{color:var(--green);font-weight:700;text-decoration:underline;text-underline-offset:4px}

@media(max-width:900px){
  .location-service-hub{padding:42px 30px}
  .location-service-grid{grid-template-columns:1fr 1fr}
  .location-nearby{grid-template-columns:1fr;gap:25px}
  .location-quotation{grid-template-columns:1fr;gap:28px}
  .location-quotation>div:last-child{align-items:flex-start;min-width:0}
}
@media(max-width:600px){
  .location-service-hub,.location-nearby,.location-quotation{margin-top:52px}
  .location-service-hub{margin-left:-20px;margin-right:-20px;padding:38px 20px}
  .location-service-grid{grid-template-columns:1fr}
  .location-service-card{min-height:0;padding:24px}
  .location-nearby ul{grid-template-columns:1fr}
  .location-quotation{margin-left:-20px;margin-right:-20px;padding:36px 20px}
  .location-quotation>div:last-child,.location-quotation .button{width:100%}
}

/* Resources: inherits the existing heritage palette and typography. */
.scw-resource-hero h1{max-width:1050px;font-size:clamp(2.4rem,4.5vw,4.5rem);line-height:1.08}
.scw-resource-hero .section-label{color:#d5c59e}
.scw-resource-content{max-width:820px;margin-inline:auto}
.scw-resource-content p,.scw-resource-content li,.scw-resource-content dd{font-size:1.06rem;line-height:1.85}
.scw-resource-content>p:first-child{font-size:1.2rem;color:#18352f;border-left:3px solid #b29a67;padding-left:24px;margin-bottom:36px}
.scw-resource-content h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-top:2.5rem}
.scw-resource-content dd{margin:0 0 18px}
.scw-resource-content dt{color:#18352f}
.scw-resource-content table{width:100%;border-collapse:collapse}
.scw-resource-content td,.scw-resource-content th{padding:14px;border:1px solid #c9c6bc;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.scw-resource-content a:focus-visible,.scw-resource-back a:focus-visible,.scw-whatsapp-button:focus-visible{outline:3px solid #b29a67;outline-offset:4px}
.scw-resource-hub .scw-resource-content{max-width:none}
.scw-resource-hub .scw-resource-content>p{max-width:850px}
.scw-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0 48px}
.scw-resource-card{display:flex;flex-direction:column;padding:30px;background:#fff;border:1px solid #d5d6ce;border-top:3px solid #b29a67}
.scw-resource-card .section-label{font-size:.72rem;color:#526253;line-height:1.5}
.scw-resource-card h3{font-size:1.9rem;margin:0 0 18px}
.scw-resource-card p{font-size:1rem;line-height:1.7;margin:0 0 20px}
.scw-resource-card .scw-guide-link{margin-top:auto;font-weight:700}
.scw-resource-callout{margin-top:48px;padding:28px;border-left:3px solid #b29a67;background:#fff;max-width:920px}
.scw-resource-callout h2{font:normal 2rem/1.2 "Libre Caslon Display",Georgia,serif;margin:0 0 16px;color:#18352f}
.scw-resource-callout h2 a{text-decoration:underline;text-underline-offset:4px}
.scw-resource-callout p:last-child{margin-bottom:0}
.scw-resource-back{max-width:820px;margin:48px auto 0;border-top:1px solid #d5d6ce;padding-top:24px}
.scw-resource-back a{color:#18352f;text-decoration:underline;text-underline-offset:4px}
.scw-whatsapp-button{position:fixed;right:20px;bottom:calc(90px + env(safe-area-inset-bottom,0px));z-index:90;display:flex;gap:14px;align-items:center;min-height:48px;padding:12px 20px;border-radius:28px;background:#18352f;color:#fff;border:2px solid #b29a67;box-shadow:0 4px 18px #0002;font-size:.9rem;font-weight:700}
.scw-whatsapp-button:hover{background:#264c40}
@media(max-width:650px){.scw-resource-grid{grid-template-columns:1fr}.scw-resource-card{padding:24px}.scw-resource-wrap{padding:38px 22px 65px}.scw-resource-content>p:first-child{padding-left:18px;font-size:1.1rem}.scw-resource-hero{padding:40px 22px}.scw-whatsapp-button{right:12px}.scw-resource-content td,.scw-resource-content th{padding:7px;font-size:.88rem}}
@media print{.site-header,.site-footer,.priority-service-links,.scw-whatsapp-button,.scw-resource-back{display:none!important}.scw-resource-hero{background:#fff;color:#000;padding:12px 0}.scw-resource-wrap{padding:0}.scw-resource-content{max-width:none}.scw-resource-content h2{break-after:avoid}.scw-resource-card{break-inside:avoid}}

.scw-cookie-banner[hidden],.scw-cookie-reopen[hidden],.scw-map-placeholder[hidden]{display:none!important}
.scw-cookie-banner,.scw-cookie-dialog{background:#f5f1e8;color:#292b28;border:1px solid #b29a67;border-top:4px solid #b29a67;box-shadow:0 8px 40px #0003;font-family:"DM Sans",Arial,sans-serif;font-size:15px;line-height:1.6;text-align:left;box-sizing:border-box}
.scw-cookie-banner{position:fixed;right:22px;bottom:22px;z-index:10020;width:min(660px,calc(100% - 44px));padding:26px 30px;max-height:calc(100dvh - 44px);overflow:auto}
.scw-cookie-banner h2,.scw-cookie-dialog h2{font:normal 2rem/1.15 "Libre Caslon Display",Georgia,serif;color:#18352f;margin:0 0 14px}
.scw-cookie-banner p{margin:0 0 16px}.scw-cookie-banner .scw-cookie-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:#526253;margin-bottom:8px}
.scw-cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 12px}
.scw-cookie-button{appearance:none;border:2px solid #18352f;background:#18352f;color:#fff;padding:11px 14px;min-height:46px;font:600 14px/1.4 "DM Sans",Arial,sans-serif;cursor:pointer;border-radius:2px;letter-spacing:0;text-transform:none;box-sizing:border-box;text-align:center}
.scw-cookie-actions>.scw-cookie-button{flex:1 1 160px}
.scw-cookie-button:hover{background:#2b5147;border-color:#2b5147;color:#fff}
.scw-cookie-secondary{background:transparent;color:#18352f}
.scw-cookie-banner a,.scw-cookie-dialog a,.scw-map-placeholder a{color:#18352f;text-decoration:underline;text-underline-offset:3px}
.scw-cookie-policy-link{font-size:13px}
.scw-cookie-reopen{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:9998;background:#f5f1e8;color:#18352f;border:1px solid #b29a67;padding:11px 15px;min-height:44px;font:600 13px/1.4 "DM Sans",Arial,sans-serif;cursor:pointer;border-radius:3px;box-shadow:0 3px 16px #0002}
.scw-cookie-dialog{width:min(630px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:28px;margin:auto;overflow:auto;z-index:10030}
.scw-cookie-dialog::backdrop{background:#10251fe0}
.scw-cookie-dialog-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}
.scw-cookie-close{flex-shrink:0;width:44px;height:44px;line-height:1;background:transparent;border:1px solid #18352f;color:#18352f;font-size:27px;cursor:pointer}
.scw-cookie-category{padding:18px 0;border-top:1px solid #cbc7bb}
.scw-cookie-category h3,.scw-cookie-category label{display:flex;justify-content:space-between;align-items:center;gap:15px;font:600 16px/1.5 "DM Sans",Arial,sans-serif;margin:0;color:#18352f}
.scw-cookie-category h3 span{font-size:12px;white-space:nowrap}
.scw-cookie-category input{appearance:auto;width:24px;height:24px;accent-color:#18352f;flex-shrink:0;cursor:pointer}
.scw-cookie-category p{margin:10px 0 0;font-size:14px}
.scw-cookie-banner button:focus-visible,.scw-cookie-dialog :focus-visible,.scw-cookie-reopen:focus-visible,.scw-consent-map button:focus-visible{outline:3px solid #8c713d;outline-offset:3px}
.scw-map-placeholder{padding:28px;background:#f5f1e8;border:1px solid #b29a67;margin:24px 0}
.scw-map-placeholder h3{margin-top:0!important}.scw-map-placeholder p{max-width:740px}
.scw-consent-map iframe{display:block;width:100%;height:430px;border:0;margin:24px 0}
.scw-cookie-noscript{padding:20px;background:#f5f1e8;color:#18352f}
.scw-cookie-banner-visible .scw-whatsapp-button{visibility:hidden}
@media(max-width:600px){.scw-cookie-banner{right:12px;bottom:12px;width:calc(100% - 24px);padding:20px;max-height:calc(100dvh - 24px)}.scw-cookie-banner h2,.scw-cookie-dialog h2{font-size:1.75rem}.scw-cookie-actions>.scw-cookie-button{flex-basis:calc(50% - 5px);padding-inline:8px}.scw-cookie-actions>.scw-cookie-secondary{flex-basis:100%}.scw-cookie-dialog{padding:22px}.scw-consent-map iframe{height:340px}}
@media print{.scw-cookie-banner,.scw-cookie-dialog,.scw-cookie-reopen{display:none!important}}

.scw-footer-cookie{font:inherit;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

.scw-whatsapp-button{position:fixed;right:20px;bottom:20px;z-index:9997;display:flex;align-items:center;gap:9px;min-height:52px;padding:10px 16px 10px 12px;border:2px solid #b29a67;border-radius:999px;background:#18352f;color:#fff!important;text-decoration:none!important;font:600 14px/1 "DM Sans",Arial,sans-serif;box-shadow:0 5px 22px #0003;transition:transform .15s ease,background .15s ease}.scw-whatsapp-button:hover{background:#2b5147;transform:translateY(-2px);color:#fff!important}.scw-whatsapp-button svg{width:28px;height:28px;flex:none}.scw-whatsapp-button:focus-visible{outline:3px solid #b29a67;outline-offset:3px}@media(max-width:600px){.scw-whatsapp-button{right:12px;bottom:12px;width:52px;height:52px;min-height:52px;padding:10px;justify-content:center}.scw-whatsapp-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media print{.scw-whatsapp-button{display:none!important}}

/* Footer typography (1.6.4): Libre Franklin for the footer columns, stacked link lists.
   Libre Franklin is self-hosted; until it is available the stack falls back to DM Sans. */
.site-footer .footer-links{font-family:"Libre Franklin","DM Sans",Arial,sans-serif;grid-template-columns:.9fr 1.15fr 1.35fr}
.site-footer .footer-links h3{position:relative;margin:0 0 20px;padding-bottom:12px;font:600 .8rem/1.3 "Libre Franklin","DM Sans",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#18352f}
.site-footer .footer-links h3::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;background:#b29a67}
.site-footer .footer-links address{font-size:.94rem;line-height:1.8;color:#2f3a35}
.site-footer .footer-links address strong{font-size:1.1rem;margin-bottom:6px}
.site-footer .footer-link-list{columns:1;list-style:none;margin:0;padding:0;font-size:.94rem;line-height:1.45}
.site-footer .footer-link-list li{margin:0;padding:0;break-inside:avoid}
.site-footer .footer-link-list a{display:inline-block;padding:5px 0;color:#2f3a35;font-weight:400;text-decoration:none;transition:color .15s ease}
.site-footer .footer-link-list a:hover,.site-footer .footer-link-list a:focus-visible,.site-footer .footer-links address a:hover{color:#18352f;text-decoration:underline;text-decoration-color:#b29a67;text-decoration-thickness:1px;text-underline-offset:4px}
.site-footer .footer-links address a{color:#18352f;font-weight:500}
.site-footer .footer-link-list--areas{columns:3;column-gap:24px}
.footer-legal-name,.site-footer .copyright{font-family:"Libre Franklin","DM Sans",Arial,sans-serif}
@media(max-width:1100px){.site-footer .footer-link-list--areas{columns:2}}
@media(max-width:900px){.site-footer .footer-links{grid-template-columns:1fr 1fr}.site-footer .footer-links section:last-child{grid-column:1/-1}.site-footer .footer-link-list--areas{columns:3}}
@media(max-width:620px){.site-footer .footer-links{grid-template-columns:1fr}.site-footer .footer-link-list a{padding:7px 0}.site-footer .footer-link-list--areas{columns:2}}
/* Collapsible footer lists (1.6.5) */
.site-footer .footer-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:0;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;text-align:left;cursor:pointer}
.site-footer .footer-toggle:disabled{cursor:default;opacity:1;color:inherit}
.site-footer .footer-toggle-icon{display:none}
@media(max-width:620px){
.site-footer .footer-links{gap:0}
.site-footer .footer-links section{padding:22px 0}
.site-footer .footer-links .footer-contact{padding-top:0;padding-bottom:26px}
.site-footer .footer-collapsible{border-top:1px solid rgba(24,53,47,.18)}
.site-footer .footer-collapsible:last-child{border-bottom:1px solid rgba(24,53,47,.18)}
.site-footer .footer-collapsible h3{margin:0;padding:0}
.site-footer .footer-collapsible h3::after{display:none}
.site-footer .footer-toggle{min-height:44px;font-size:.86rem}
.site-footer .footer-toggle:focus-visible{outline:2px solid #b29a67;outline-offset:4px}
.site-footer .footer-toggle-icon{display:block;position:relative;flex:0 0 32px;width:32px;height:32px;border:1px solid #b29a67;border-radius:50%}
.site-footer .footer-links.is-ready .footer-toggle-icon{transition:background .2s ease}
.site-footer .footer-toggle-icon::before,.site-footer .footer-toggle-icon::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:#18352f}
.site-footer .footer-links.is-ready .footer-toggle-icon::before,.site-footer .footer-links.is-ready .footer-toggle-icon::after{transition:transform .2s ease}
.site-footer .footer-toggle-icon::after{transform:rotate(90deg)}
.site-footer .footer-collapsible:not(.is-collapsed) .footer-toggle-icon{background:#b29a67}
.site-footer .footer-collapsible:not(.is-collapsed) .footer-toggle-icon::after{transform:rotate(0deg)}
.site-footer .footer-collapsible .footer-link-list{margin-top:14px}
.site-footer .footer-collapsible.is-collapsed .footer-link-list{display:none}
}

/* v1.6.20: compact National Trust conservation feature */
.nts-feature{padding:48px max(7vw,calc((100vw - var(--max))/2));display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:42px;align-items:center;background:#eee8dc;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.nts-feature h2,.nts-inline h2{font:normal clamp(2rem,3vw,3.1rem)/1.08 "Libre Caslon Display",Georgia,serif;color:var(--green);margin:0 0 16px}.nts-feature-copy>p:not(.section-label){max-width:720px;margin-top:0}.nts-lead{font-size:1.02rem;color:var(--green)}.nts-feature-media{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:18px;align-items:center}.nts-feature-media>picture img{display:block;width:100%;height:230px;object-fit:cover}.nts-mark{width:auto;margin:0;position:relative;background:#fff;padding:12px 14px 10px;box-shadow:0 8px 22px rgba(20,53,47,.12);border-bottom:3px solid var(--brass)}.nts-mark img{display:block;width:100%;height:auto;margin:0 0 7px}.nts-mark span{display:block;font-size:.58rem;line-height:1.4;letter-spacing:.05em;text-transform:uppercase;color:#5c5d58}.nts-inline{margin:38px 0 12px;padding:24px 28px;display:grid;grid-template-columns:130px 1fr;gap:26px;align-items:center;background:#eee8dc;border-left:4px solid var(--brass)}.nts-inline>img{display:block;width:100%;height:auto}.nts-inline h2{font-size:clamp(1.7rem,2.5vw,2.35rem);margin-bottom:10px}.nts-inline .section-label{margin-bottom:7px}.nts-inline p{margin-top:0}
@media(max-width:900px){.nts-feature{grid-template-columns:1fr;gap:26px;padding:44px 7vw}.nts-feature-media{grid-template-columns:minmax(0,1fr) 150px}.nts-feature-media>picture img{height:210px}}
@media(max-width:600px){.nts-feature{padding:38px 7vw;gap:24px}.nts-feature h2{font-size:2.15rem}.nts-feature-media{grid-template-columns:1fr;gap:12px}.nts-feature-media>picture img{height:auto;aspect-ratio:3/2}.nts-mark{width:min(230px,68%);margin:-30px 12px 0 auto}.nts-inline{grid-template-columns:1fr;padding:22px}.nts-inline>img{width:min(190px,62%)}}
/* v1.6.22 — wider Culross / NTS feature image on desktop */
@media (min-width: 901px){
  .nts-feature{grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);gap:48px;}
  .nts-feature-media{grid-template-columns:minmax(0,1fr) 155px;gap:18px;}
  .nts-feature-media>picture{display:block;min-width:0;}
  .nts-feature-media>picture img{width:100%;height:360px;object-fit:cover;object-position:center center;}
}
@media (min-width: 1250px){
  .nts-feature-media>picture img{height:400px;}
}
