.service-planner{display:flex;flex-wrap:wrap;gap:10px;max-width:1160px;margin:0 auto;padding:24px 5%;background:#f4f1e9}.service-planner a{display:block;padding:12px 17px;border:1px solid #b99a64;border-radius:6px;text-decoration:none;color:#0b2032;font-size:14px;font-weight:750;background:#fffdf7}.service-planner a:hover,.service-planner a[aria-current=page]{background:#0b2032;color:#f4d49c}.service-cartoon{max-width:1100px;margin:12px auto 0;padding:0 5% 24px}.service-cartoon img{display:block;width:100%;height:auto;max-height:430px;object-fit:contain;background:#f6f0e4;border-radius:10px}.service-cartoon figcaption{font-size:12px;color:#657480;margin-top:8px}.planner-overview{padding-top:40px;padding-bottom:40px}.planner-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.planner-card{background:#fffdf7;border:1px solid #dab879;border-radius:8px;overflow:hidden;text-decoration:none;color:#0b2032;box-shadow:0 6px 18px #0b20320a}.planner-card:first-child{border-width:3px}.planner-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;display:block}.planner-card span{display:block;font-weight:750;padding:18px;line-height:1.4}.form-activation{padding:20px;background:#e9e2d3;border-left:3px solid #b99a64;margin-bottom:25px}.form-activation p{margin:10px 0 0;font-size:14px}button:disabled{opacity:.65;cursor:default}@media(max-width:900px){.planner-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.planner-cards{grid-template-columns:1fr}.service-planner{gap:8px}.service-planner a{flex:1 1 42%;font-size:13px;padding:12px}}

/* Compact headings, with comfortable body text and clear service navigation. */
main h1{font-size:clamp(32px,4.5vw,48px)!important;line-height:1.12!important;letter-spacing:-1px!important}main h2{font-size:clamp(26px,3.4vw,36px)!important;line-height:1.18!important}.planner-card span{font-size:16px;padding:15px 17px}.planner-overview{padding-top:32px;padding-bottom:32px}

.planner-card-heading{display:flex;align-items:center;justify-content:center;min-height:76px;margin:0;padding:18px 12px;color:#0b2032;background:#eee3ca;border-bottom:1px solid #dab879;font:700 clamp(21px,2vw,25px)/1.2 Georgia,serif;text-align:center}.soft-wash-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin:26px 0}.soft-wash-examples figure{margin:0}.soft-wash-examples img{width:100%;height:auto;display:block}.soft-wash-examples figcaption{font-size:14px;margin-top:10px}@media(max-width:600px){.soft-wash-examples{grid-template-columns:1fr}.planner-card-heading{min-height:68px}}

.home-bio{max-width:1000px;padding-top:30px;padding-bottom:22px}.home-bio h1{font-size:clamp(26px,3vw,34px)!important;margin-bottom:14px}.home-bio p{font-size:17px;line-height:1.65;color:#d6dfe5;max-width:850px;margin:0}.planner-overview{padding-top:22px;padding-bottom:35px}.compact-soft-wash{height:205px}.compact-soft-wash span{display:block;min-width:0;height:205px;background:#071e33}.compact-soft-wash img{width:100%;height:205px!important;object-fit:contain!important}#our-soft-washing .soft-wash-examples{max-width:780px;margin-left:auto;margin-right:auto}#our-soft-washing .soft-wash-examples img{max-height:340px;object-fit:contain}

/* Approved service headings: RAF dark blue with centred gold lettering. */
.planner-card-heading{background:#071e33;color:#f2d596;border-bottom:1px solid #d7b879;justify-content:center;text-align:center;font-family:Georgia,serif;font-weight:400;font-size:clamp(22px,2vw,26px);letter-spacing:.1px;min-height:72px;padding:18px 12px}.planner-card{border-color:#d7b879}.planner-card:first-child{border-width:1px}

/* Readable soft-washing photographs within the existing service card. */
.home-bio h1{text-align:center}.home-bio p{margin-left:auto;margin-right:auto}.service-tile:has(.compact-soft-wash){grid-column:1/-1;max-width:900px;width:100%;justify-self:center}.compact-soft-wash{height:auto!important;gap:14px;padding:14px;max-width:900px;margin:auto}.compact-soft-wash span{height:auto!important}.compact-soft-wash img{height:auto!important;width:100%;max-height:none!important;aspect-ratio:auto}.service-tiles{align-items:start}@media(max-width:600px){.compact-soft-wash{grid-template-columns:1fr;max-width:440px}.compact-soft-wash span{height:auto!important}.compact-soft-wash img{height:auto!important}}

/* A consistent, centred story card and clear unobscured local photograph. */
.story-section{background:#f4f1e9;padding:30px 5%}.story-box{max-width:1060px;margin:auto;padding:30px 36px;display:grid;grid-template-columns:1fr 150px;align-items:center;gap:32px;background:#071e33;color:#d6dfe5;border:1px solid #d7b879;border-radius:10px}.story-box h2{color:#f2d596;font-size:30px!important;margin-bottom:18px}.story-box .eyebrow{color:#d7b879;margin-bottom:12px}.story-box p{font-size:16px;max-width:700px}.story-box img{width:150px;height:225px;object-fit:contain}.home-panorama{max-width:1160px;margin:22px auto 42px;border-radius:9px;overflow:hidden}.home-panorama img{width:100%!important;height:auto!important;display:block;opacity:1;filter:none}.home-panorama figcaption{position:static!important;padding:20px 26px!important;background:#071e33!important}.home-panorama figcaption strong{font-size:28px!important;margin:8px 0}.compact-soft-wash{max-width:780px;padding:14px}.service-tile:has(.compact-soft-wash){max-width:800px}.compact-soft-wash a{display:block;cursor:zoom-in}.service-tile-copy h3 a{color:inherit;text-decoration:none}.service-tile-link{font-weight:750}.photo-viewer{max-width:94vw;max-height:94vh;padding:16px;border:1px solid #d7b879;border-radius:9px;background:#071e33;color:#f4f1e9}.photo-viewer::backdrop{background:#071e33e8}.photo-viewer img{display:block;max-width:88vw;max-height:78vh;object-fit:contain;margin:auto}.photo-viewer p{font-size:14px;margin:12px auto 0;text-align:center}.photo-viewer-close{display:block;margin:0 0 12px auto;padding:9px 16px;border:1px solid #d7b879;background:#f2d596;color:#071e33;font-weight:750;border-radius:4px;cursor:pointer}@media(max-width:600px){.story-box{grid-template-columns:1fr;padding:24px;gap:12px}.story-box img{width:95px;height:140px;justify-self:center}.home-panorama{margin:16px 5% 30px}.home-panorama figcaption{padding:18px!important}.home-panorama figcaption strong{font-size:24px!important}}

/* Final homepage: Ellie, then five evenly framed project examples. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.service-showcase .service-tiles{display:grid;grid-template-columns:1fr;gap:24px;max-width:1040px;margin:auto}.service-showcase .service-tile{width:100%;max-width:none;grid-column:auto}.service-showcase .service-tile-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;height:auto!important;padding:16px;background:#071e33}.service-showcase .service-tile-photos span{height:300px!important;display:block;min-width:0}.service-showcase .service-tile-photos a{height:300px;display:block;cursor:zoom-in}.service-showcase .service-tile-photos img{display:block;width:100%;height:300px!important;object-fit:contain!important}.service-showcase .compact-soft-wash{max-width:none;margin:0}.service-showcase .service-tile-copy{padding:18px 24px}.service-showcase .service-tile-copy h3{font-size:24px;margin-top:8px}.service-showcase .service-tile-copy p{margin-bottom:8px}.service-showcase .service-tile-photos:has(span:only-child){grid-template-columns:1fr}.service-showcase .service-tile-photos:has(span:only-child) a{max-width:520px;margin:auto}.service-showcase>h2,.service-showcase>.eyebrow{text-align:center}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-options h2{font-size:25px!important}.contact-options a{overflow-wrap:anywhere}@media(max-width:600px){.service-showcase .service-tile-photos{grid-template-columns:1fr}.service-showcase .service-tile-photos span,.service-showcase .service-tile-photos a,.service-showcase .service-tile-photos img{height:270px!important}.service-showcase .service-tile-copy{padding:18px}.contact-options{grid-template-columns:1fr}}
