/* Shared KezConcepts navigation and compact footer. Demo brands keep their own shell. */
body[data-site-shell]{padding-bottom:0!important;min-height:100vh;display:flex;flex-direction:column}
body[data-site-shell]>main{flex:1 0 auto}
.kc-site-header{display:block!important;position:fixed!important;inset:0 0 auto;z-index:80;width:100%;max-width:none!important;margin:0!important;padding:0!important;border-bottom:1px solid #d8ddcf80;background:rgba(247,246,242,.97);backdrop-filter:blur(16px);font:400 14px/1.5 Inter,Arial,sans-serif;color:#273b22}
.kc-site-header .kc-site-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;height:72px;width:min(1216px,calc(100% - 64px));margin:0 auto;padding:0;background:transparent!important;border:0!important;backdrop-filter:none!important}
.kc-site-header a{text-decoration:none;letter-spacing:normal;color:inherit}
.kc-site-header .kc-site-brand{font-family:"Playfair Display",Georgia,serif;font-size:21px;font-weight:600;letter-spacing:-.7px;white-space:nowrap;color:#34522a}
.kc-site-header .kc-site-links{display:flex;align-items:center;gap:29px}
.kc-site-header .kc-site-links>a{font-size:14px;line-height:1.5;white-space:nowrap;color:#53534f}
.kc-site-header .kc-site-links>a:hover,.kc-site-header a[aria-current]{color:#34552b}
.kc-site-header .kc-site-links>a[aria-current]{font-weight:500}
.kc-site-header a.kc-site-preview{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#34552b;color:#fff;padding:11px 21px;font-size:13px;font-weight:500;line-height:1.5;white-space:nowrap}
.kc-site-header a.kc-site-preview:hover{background:#243f20;color:#fff}
.kc-site-header .kc-site-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:0;background:transparent;color:#24351f;cursor:pointer}
.kc-site-toggle svg{display:block;width:24px;height:24px}
.kc-site-header .kc-site-mobile{display:none;margin:0;border-top:1px solid #d8ddcf;padding:16px 24px 22px;background:#f7f6f2;max-height:calc(100dvh - 72px);overflow-y:auto}
.kc-site-header .kc-site-mobile.is-open{display:flex!important;position:static;flex-direction:column;gap:2px;box-shadow:0 16px 22px #182a1512}
.kc-site-header .kc-site-mobile>a{display:block;font-size:17px;line-height:1.5;padding:10px 0}
.kc-site-header .kc-site-mobile>a.kc-site-preview{font-size:14px;padding:12px 20px;margin-top:10px;text-align:center}
.kc-site-header a:focus-visible,.kc-site-header button:focus-visible,.kc-site-footer a:focus-visible{outline:2px solid #8baf65;outline-offset:5px}
.kc-site-footer{background:#1b2918;color:#f4f3e9;padding:43px 0 0;margin:0;width:100%;font:400 12px/1.8 Inter,Arial,sans-serif;letter-spacing:normal}
.kc-site-footer a{color:inherit;text-decoration:none;letter-spacing:normal}
.kc-site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.kc-site-footer-grid{width:min(1216px,calc(100% - 64px));margin:0 auto;display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:38px;padding-bottom:32px}
.kc-site-footer .kc-site-footer-brand{font-family:"Playfair Display",Georgia,serif;font-size:23px;font-weight:500;color:#f4f3e9}
.kc-site-footer .kc-site-footer-about>p{max-width:280px;margin:12px 0;font-size:12px;line-height:1.8;color:#bfccb5}
.kc-site-footer .kc-site-footer-about>p.kc-site-footer-region{margin:0 0 10px;font-size:11px}
.kc-site-footer-email,.kc-site-footer-contact{display:block;width:fit-content;font-size:12px;line-height:1.8}
.kc-site-footer-contact{margin-top:3px}
.kc-site-footer-group>.kc-site-footer-heading{display:block;font-size:10px;font-weight:400;line-height:1.8;text-transform:uppercase;letter-spacing:.1em;color:#adbea1;margin:8px 0 15px}
.kc-site-footer-group>a:not(.kc-site-footer-heading){display:block;width:fit-content;font-size:12px;line-height:1.8;margin:7px 0;color:#e5ebdf}
.kc-site-footer-bottom{width:min(1216px,calc(100% - 64px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #3d4d35;padding:18px 0;font-size:10px;line-height:1.8;color:#b8c8aa}
.kc-site-footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px}
body[data-page="work--bathroom-website-concept"][data-site-shell]>main{padding-top:72px}
.kc-review-received[data-site-shell]>main.kc-review-layout.kc-review-call-value{margin-top:94px}
body.kc-site-utility{margin:0;background:#f7f6f2;color:#273b22;font-family:Inter,Arial,sans-serif}
.kc-site-utility>main h1{font:400 clamp(34px,5vw,48px)/1.15 "Playfair Display",Georgia,serif;letter-spacing:-1px}
@media(max-width:1100px){.kc-site-header .kc-site-links{display:none!important}.kc-site-header .kc-site-toggle{display:flex!important}}
@media(min-width:1101px){.kc-site-header .kc-site-toggle,.kc-site-header .kc-site-mobile,.kc-site-header .kc-site-mobile.is-open{display:none!important}}
@media(max-width:780px){.kc-site-header .kc-site-nav,.kc-site-footer-grid,.kc-site-footer-bottom{width:calc(100% - 40px)}.kc-site-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.kc-site-footer-about{grid-column:1/-1}.kc-site-footer .kc-site-footer-about>p{max-width:520px}.kc-site-footer-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:35px}.kc-site-footer-about>.kc-site-footer-brand,.kc-site-footer-about>p{grid-column:1}.kc-site-footer-about>.kc-site-footer-email{grid-column:2;grid-row:2;align-self:center}.kc-site-footer-about>.kc-site-footer-contact{grid-column:2;grid-row:3;align-self:start}.kc-site-footer-bottom{align-items:start}.kc-site-footer-bottom>div{gap:15px}}
@media(max-width:540px){.kc-site-footer{padding-top:32px}.kc-site-footer-grid{grid-template-columns:1fr 1fr;gap:25px 20px}.kc-site-footer-about{display:block}.kc-site-footer .kc-site-footer-about>p{max-width:310px}.kc-site-footer-industries{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.kc-site-footer-industries>.kc-site-footer-heading{grid-column:1/-1;margin-bottom:8px}.kc-site-footer-group>a:not(.kc-site-footer-heading){font-size:11px;margin:6px 0}.kc-site-footer-bottom{gap:12px}.kc-site-footer-bottom>div{gap:12px}.kc-site-header .kc-site-brand{font-size:20px}}
@media(prefers-reduced-motion:reduce){.kc-site-header *,.kc-site-footer *{transition:none!important}}

.kc-review-received main>.kc-review-contact{font-size:12px;margin:24px 0 0;padding:0}
/* Article navigation is content, separate from the fixed site menu. */
body[data-site-shell] main nav{background:transparent!important;border:0!important;backdrop-filter:none!important}
@media(max-width:540px){body[data-site-shell] main :is(a,button).inline-flex{max-width:100%;white-space:normal;text-align:center;justify-content:center}body[data-site-shell] main nav[aria-label="Breadcrumb"] li{white-space:normal;overflow-wrap:anywhere}}
