:root{--blue:#075886;--deep:#073b59;--orange:#ed8500;--paper:#f5f4f0;--white:#fff;--ink:#252b2e;--muted:#596168;--rule:#d0d6d8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Barlow,Arial,sans-serif;font-size:17px;line-height:1.5}img{display:block;max-width:100%}a{color:inherit}button{font:inherit}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;top:-100px;left:10px;z-index:20;background:var(--white);padding:10px}.skip:focus{top:10px}
.site-header{background:var(--orange)}.utility-bar{background:var(--deep);color:#fff;font-size:13px;font-weight:500}.utility-inner{min-height:37px;display:flex;justify-content:space-between;align-items:center;gap:25px}.utility-inner>div{display:flex;gap:28px}.utility-inner a{text-decoration:none}.utility-inner a:hover{text-decoration:underline}.header-inner{min-height:82px;display:flex;align-items:center;gap:40px}.wordmark{display:block;background:#fff;padding:10px 15px;flex:0 0 auto;text-decoration:none}.wordmark img{width:320px;height:auto}.site-header nav{display:flex;align-items:center;gap:40px;margin-left:auto}.site-header nav a{color:#172a32;text-decoration:none;font-size:16px;font-weight:700}.site-header nav a:hover,.site-header nav a:focus-visible{color:#fff}.menu-button{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-button span{display:block;width:25px;height:2px;background:var(--ink);margin:5px 0}
.opening{background:var(--deep);color:#fff}.opening-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7%;align-items:center;min-height:625px;padding-block:56px 64px}.opening-copy{padding:28px 0 38px}.opening-copy:before{content:"";display:block;width:65px;height:5px;background:var(--orange);margin-bottom:34px}.location{color:var(--orange);font-size:14px;font-weight:700;letter-spacing:.065em;text-transform:uppercase;margin:0 0 28px}.opening h1{font-size:clamp(51px,5vw,74px);line-height:1.02;letter-spacing:-.035em;font-weight:600;margin:0 0 30px;max-width:670px}.opening-intro{max-width:550px;font-size:20px;line-height:1.48;margin:0 0 32px;color:#e5edf1}.primary-link{display:inline-block;background:var(--orange);color:#162c37;text-decoration:none;font-weight:700;padding:13px 22px}.primary-link:hover{background:#ff9a13}.opening-photo{margin:0;position:relative;border-bottom:5px solid var(--orange)}.opening-photo img{width:100%;height:480px;object-fit:cover;object-position:center}.opening-photo figcaption{position:absolute;right:0;bottom:0;background:rgba(7,59,89,.94);color:#fff;padding:8px 13px;font-size:13px;font-weight:600}
.work-section{background:#fff;padding:90px 0 100px}.section-top{display:grid;grid-template-columns:1fr 390px;gap:60px;align-items:end;margin-bottom:48px}h2{font-size:clamp(40px,4vw,58px);line-height:1.06;letter-spacing:-.03em;font-weight:600;margin:0;color:var(--deep)}.section-top h2:before,.services-heading h2:before{content:"";display:block;width:48px;height:4px;background:var(--orange);margin-bottom:19px}.section-top p{margin:0 0 3px;color:var(--muted);font-size:17px}.work-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);column-gap:5%;row-gap:60px;align-items:start}.work-item{margin:0;min-width:0}.work-item img{width:100%;height:auto;object-fit:cover;background:#d6d0c2}.work-main img{aspect-ratio:1.25;object-position:center}.work-door{margin-top:80px}.work-door img{aspect-ratio:.8;object-position:center}.work-kitchen{grid-column:1/-1;width:min(70%,820px);justify-self:end}.work-kitchen img{aspect-ratio:1.45}.work-item figcaption{display:grid;grid-template-columns:minmax(150px,.45fr) 1fr;gap:20px;border-top:1px solid var(--rule);padding-top:11px;margin-top:13px;font-size:14px}.work-item figcaption strong{font-size:18px;font-weight:700;color:var(--deep)}.work-item figcaption span{color:var(--muted)}.plain-link{display:inline-block;font-weight:700;text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:4px;color:var(--deep)}.plain-link:hover{color:var(--blue)}.more-photos{margin-top:48px}
.services-section{padding-top:100px;padding-bottom:110px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8%}.services-heading h2{max-width:480px}.services-heading p{max-width:370px;color:var(--muted);font-size:17px;margin:27px 0 0}.services-list{border-top:2px solid var(--blue)}.services-list article{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px;padding:27px 0 31px;border-bottom:1px solid var(--rule)}.services-list h3{font-weight:600;font-size:25px;line-height:1.15;letter-spacing:-.02em;margin:0;color:var(--deep)}.services-list p{font-size:16px;line-height:1.55;margin:0;color:#505c62}
.enquiry{background:var(--blue);color:#fff;padding:90px 0 100px;border-top:6px solid var(--orange)}.enquiry-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:12%;align-items:end}.enquiry .location{color:#ffb146;margin-bottom:26px}.enquiry h2{max-width:700px;font-size:clamp(48px,5vw,70px);color:#fff}.enquiry p:not(.location){max-width:590px;margin:25px 0 0;color:#e0ebf0}.enquiry-links{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding-bottom:9px}.enquiry-links a{font-size:clamp(20px,2vw,28px);font-weight:600;text-underline-offset:6px;text-decoration-thickness:1px;overflow-wrap:anywhere}.enquiry-links a:hover{color:#ffb146}.site-footer{background:var(--deep);color:#d9e7ec;padding:22px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px;font-size:13px}
@media(max-width:1120px){.wrap{width:calc(100% - 56px)}.wordmark img{width:285px}.site-header nav{gap:25px}.opening-inner{gap:4%;min-height:560px}.opening h1{font-size:clamp(47px,5.5vw,65px)}.opening-photo img{height:430px}.services-section{gap:5%}}
@media(max-width:1000px){.utility-inner>span{display:none}.utility-inner{justify-content:center}.header-inner{min-height:76px;position:relative}.menu-button{display:block;margin-left:auto}.site-header nav{display:none;position:absolute;top:76px;left:-28px;right:-28px;z-index:10;margin:0;background:var(--orange);padding:10px 28px 22px;border-top:1px solid #cc7300;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:11px 0}.opening-inner{grid-template-columns:1fr;padding-block:54px 65px}.opening h1{max-width:720px;font-size:clamp(50px,8vw,70px)}.opening-photo{margin-top:40px}.opening-photo img{height:auto;aspect-ratio:1.6}.section-top{grid-template-columns:1fr;gap:16px}.section-top p{max-width:540px}.work-section{padding:75px 0 85px}.work-door{margin-top:65px}.work-kitchen{width:80%}.services-section{display:block;padding-top:85px;padding-bottom:95px}.services-heading{margin-bottom:45px}.services-heading p{max-width:600px}.enquiry-inner{grid-template-columns:1fr;gap:45px}}
@media(max-width:580px){.wrap{width:calc(100% - 36px)}.utility-inner{font-size:11px}.utility-inner>div{gap:12px}.wordmark{padding:7px}.wordmark img{width:min(67vw,272px)}.site-header nav{left:-18px;right:-18px;padding-inline:18px}.opening-inner{padding-block:42px 57px}.opening-copy:before{margin-bottom:27px}.location{margin-bottom:22px}.opening h1{font-size:clamp(43px,11vw,60px);margin-bottom:24px}.opening-intro{font-size:18px}.opening-photo{margin-top:27px}.opening-photo img{aspect-ratio:1.2}h2{font-size:40px}.work-grid{display:block}.work-item,.work-door,.work-kitchen{width:100%;margin:0 0 46px}.work-main img{aspect-ratio:1.15}.work-door img{aspect-ratio:1}.work-kitchen img{aspect-ratio:1.15}.work-item figcaption{grid-template-columns:1fr;gap:3px}.more-photos{margin-top:0}.services-list article{display:block;padding:23px 0}.services-list h3{font-size:23px;margin-bottom:9px}.enquiry{padding:70px 0 80px}.footer-inner{display:block}.footer-inner span{display:block;margin:4px 0}}

/* Soft edges and restrained motion, with the original angular logo retained. */
.wordmark,.primary-link{border-radius:7px}
.opening-photo{border-radius:11px;overflow:hidden}
.opening-photo figcaption{border-top-left-radius:6px}
.work-item img{border-radius:10px}
.site-header nav a,.plain-link,.enquiry-links a{transition:color .18s ease}
.primary-link{transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}
.primary-link:hover,.primary-link:focus-visible{transform:translateY(-2px);box-shadow:0 5px 12px rgba(0,0,0,.16)}
.opening-copy{animation:arrive .45s ease-out both}
.opening-photo{animation:arrive .55s .08s ease-out both}
@keyframes arrive{from{opacity:.6;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.opening-copy,.opening-photo{animation:none}.site-header nav a,.plain-link,.enquiry-links a,.primary-link{transition:none}.primary-link:hover,.primary-link:focus-visible{transform:none}}

/* Additional pages use the same colours and straightforward editorial layout. */
.site-header nav a[aria-current="page"]{border-bottom:2px solid var(--deep);padding-bottom:3px}
.services-list h3 a{text-decoration:none}.services-list h3 a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:5px}
.section-label,.eyebrow{color:var(--blue);font-size:14px;font-weight:700;letter-spacing:.065em;text-transform:uppercase;margin:0 0 20px}
.team-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:10%;align-items:end;padding-block:85px 90px;border-top:1px solid var(--rule)}
.team-intro h2{max-width:750px}.team-intro>div:last-child{padding-bottom:7px}.team-intro p:not(.section-label){font-size:19px;max-width:500px;margin:0 0 25px}
.brand-strip{background:#f0f2f1;padding:65px 0 72px}.brand-strip-inner{display:grid;grid-template-columns:330px 1fr;gap:5%;align-items:center}.brand-strip h2{font-size:36px}.brand-strip p{color:var(--muted);margin:18px 0 0}.brand-strip figure{margin:0}.brand-strip img{width:100%;height:auto;border-radius:8px}.brand-strip figcaption{font-size:12px;color:var(--muted);margin-top:10px}
.contact-page-link{font-size:15px!important;margin-top:12px}
.interior-hero{background:var(--deep);color:#fff;padding:86px 0 92px}.interior-hero .wrap{max-width:1320px}.interior-hero h1{font-size:clamp(48px,5.3vw,76px);line-height:1.03;letter-spacing:-.035em;font-weight:600;max-width:920px;margin:0 0 26px}.interior-hero p:not(.section-label){font-size:21px;max-width:750px;color:#e5edf1;margin:0}.interior-hero .section-label{margin-bottom:25px}.interior-hero .section-label:before{content:"";display:block;width:55px;height:4px;background:var(--orange);margin-bottom:26px}
.page-section{padding:90px 0 105px}.page-white{background:#fff}.page-section h2{font-size:clamp(37px,3.7vw,52px)}.page-section p{font-size:18px;color:#4e595f}.page-section .section-label{font-size:14px;color:var(--blue)}.page-section .plain-link{margin-top:13px}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.profile{border-top:3px solid var(--orange);padding-top:25px}.profile h2{margin-bottom:28px}.profile p{max-width:570px}.profile .eyebrow{font-size:13px;color:var(--blue);margin:0 0 18px}
.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.detail-split h2{max-width:650px;margin-bottom:28px}.detail-split p{max-width:630px}.detail-photo{margin:0}.detail-photo img{width:100%;height:auto;max-height:590px;object-fit:cover;border-radius:10px}.detail-photo figcaption{font-size:13px;color:var(--muted);border-top:1px solid var(--rule);padding-top:10px;margin-top:10px}.compact-photo{max-width:480px}.service-detail-list{border-top:2px solid var(--blue)}.service-detail-list article{display:grid;grid-template-columns:1fr 1.15fr;gap:7%;padding:30px 0 35px;border-bottom:1px solid var(--rule);align-items:start}.service-detail-list article h2{font-size:clamp(27px,3vw,39px)}.service-detail-list article p{margin:4px 0 0}.service-detail-list article .plain-link{grid-column:2;justify-self:start;margin-top:-3px}.page-copy{max-width:760px;margin-inline:auto}.page-copy h2{margin-bottom:23px}
.page-cta{background:var(--blue);color:#fff;padding:74px 0 82px;border-top:5px solid var(--orange)}.page-cta-inner{display:grid;grid-template-columns:1fr .7fr;gap:10%;align-items:end}.page-cta h2{color:#fff}.page-cta p:not(.section-label){color:#e5edf1;margin:0 0 23px;font-size:18px}.page-cta .section-label{color:#ffb146}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:11%}.contact-grid>div{border-top:3px solid var(--orange);padding-top:25px}.contact-grid h2{margin-bottom:28px}.contact-grid p{margin:0 0 27px}.contact-grid a:not(.primary-link){color:var(--deep);text-underline-offset:4px;overflow-wrap:anywhere}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}
@media(max-width:1000px){.brand-strip-inner{grid-template-columns:1fr;gap:25px}.brand-strip h2{font-size:34px}.brand-strip p{margin-top:10px}.brand-strip figure{max-width:800px}}
@media(max-width:750px){.team-intro,.profile-grid,.detail-split,.page-cta-inner,.contact-grid{grid-template-columns:1fr;gap:38px}.interior-hero{padding:65px 0 72px}.interior-hero h1{font-size:clamp(44px,8vw,62px)}.page-section{padding:70px 0 80px}.team-intro{padding-block:65px}.service-detail-list article{grid-template-columns:1fr;gap:8px}.service-detail-list article .plain-link{grid-column:1;margin-top:7px}.page-cta{padding:65px 0 70px}.detail-photo img{max-height:none}.compact-photo{max-width:360px}}
@media(max-width:580px){.interior-hero h1{font-size:43px}.interior-hero p:not(.section-label){font-size:18px}.page-section p{font-size:17px}.team-intro h2,.page-section h2{font-size:38px}.brand-strip{padding-block:55px}.brand-strip h2{font-size:31px}.page-cta h2{font-size:40px}}

.enquiry-form-section{background:var(--paper)}
.form-layout{display:grid;grid-template-columns:.68fr 1.32fr;gap:8%;align-items:start}
.form-layout>div>p:not(.section-label){max-width:390px;margin-top:25px}
.contact-form{background:#fff;border-top:4px solid var(--orange);border-radius:10px;padding:35px;box-shadow:0 8px 22px rgba(7,59,89,.06)}
.contact-form>div:not(.honeypot){margin-bottom:23px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:23px}
.contact-form label:not(.consent){display:block;font-size:15px;font-weight:700;color:var(--deep);margin-bottom:8px}
.contact-form input:not([type="checkbox"]),.contact-form select,.contact-form textarea{width:100%;border:1px solid #aab8bf;border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-size:16px;padding:11px 12px}
.contact-form textarea{resize:vertical;min-height:145px}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:3px solid rgba(237,133,0,.45);outline-offset:1px;border-color:var(--deep)}
.contact-form .consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.4;margin-bottom:26px;cursor:pointer}
.contact-form .consent input{margin-top:4px;accent-color:var(--blue);width:17px;height:17px;flex:none}
.contact-form .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-form .form-submit{display:flex;align-items:center;gap:20px;margin-bottom:0!important}
.contact-form button{border:0;cursor:pointer;white-space:nowrap}
.contact-form button:disabled{opacity:.6;cursor:wait;transform:none}
#form-status{margin:0;font-size:15px;line-height:1.4}
@media(max-width:850px){.form-layout{grid-template-columns:1fr;gap:28px}.form-layout>div>p:not(.section-label){max-width:650px}}
@media(max-width:580px){.contact-form{padding:23px}.form-row{grid-template-columns:1fr;gap:19px}.contact-form .form-submit{display:block}.contact-form button{width:100%}#form-status{margin-top:17px}}
.project-photo-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:58px}
.project-photo-row figure{margin:0;min-width:0}
.project-photo-row img,.project-photo-row video{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:10px;background:#d6d0c2}
.project-photo-row figcaption{border-top:1px solid var(--rule);padding-top:10px;margin-top:12px;color:var(--muted);font-size:14px}
@media(max-width:750px){.project-photo-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:580px){.project-photo-row{grid-template-columns:1fr;margin-top:0}.project-photo-row img{aspect-ratio:1.2}.project-photo-row video{aspect-ratio:3/4}}
.photo-credit{display:block;margin-top:7px;font-size:13px;line-height:1.45;color:var(--muted)}
.photo-credit a{color:var(--deep);text-decoration-thickness:1px;text-underline-offset:2px}
.photo-credit a:hover,.photo-credit a:focus-visible{color:var(--blue)}

/* Client-supplied logos sit with selected marks from Claypotts' existing site. */
.footer-logos{padding-block:12px 28px}
.footer-logos-title{margin:0 0 16px;color:#fff;font-size:15px;font-weight:600}
.footer-logo-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.footer-logo{flex:0 1 calc((100% - 48px)/5);min-width:0;height:145px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}
.footer-logo img{max-width:100%;max-height:110px;width:auto;height:auto;object-fit:contain}
.legacy-logo{display:block;flex:none;background-image:url('assets/claypotts-brand-logos.jpg');background-repeat:no-repeat;background-size:600px 150px}
.legacy-magnet{width:79px;height:80px;background-position:-14px -13px}
.legacy-safecontractor{width:112px;height:126px;background-position:-237px -12px}
.legacy-veka{width:103px;height:105px;background-position:-353px -14px}

/* Small uppercase labels must remain readable on their section backgrounds. */
.opening .location,.interior-hero .section-label{color:#ffb146}
.enquiry .location,.page-cta .section-label{color:#ffd080}
.legacy-encon{width:116px;height:58px;background-position:-471px -19px}
.legacy-neville{width:116px;height:39px;background-position:-471px -76px}
.footer-inner{border-top:1px solid rgba(255,255,255,.24);padding-top:19px}
.footer-inner #year{display:inline;margin:0}
.footer-credit{margin-block:12px 0;text-align:right;font-size:13px;color:#d9e7ec}
.footer-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:580px){.footer-credit{text-align:left}}
.profile{display:flex;flex-direction:column}
.profile .profile-phone{margin-top:auto;padding-top:26px;font-weight:700}
.profile-phone a{color:var(--deep);text-underline-offset:4px}
.profile-phone a:hover{color:var(--blue)}
.utility-contacts a{white-space:nowrap}
@media(max-width:700px){.utility-inner{padding-block:6px}.utility-contacts{flex-wrap:wrap;justify-content:center;gap:2px 13px!important}}
@media(max-width:580px){.header-inner{gap:10px}}
@media(max-width:850px){.footer-logo{flex-basis:calc((100% - 24px)/3)}}
@media(max-width:580px){.footer-logo-grid{gap:9px}.footer-logo{flex-basis:calc((100% - 9px)/2);height:130px}.footer-logos{padding-bottom:20px}}

