@import url('/assets/fonts/site-fonts.css');
:root{--ink:#000000;--muted:#626662;--paper:#fff;--soft:#f0f1ed;--line:#dcded9;--accent:#bb4929}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:40}.brand img{width:155px;height:32px;object-fit:contain;object-position:left;filter:brightness(0)}.brand small{font-size:11px;letter-spacing:.22em;display:block;margin-top:7px}header>nav{display:flex;gap:30px;align-items:center}header>nav>a,header>nav>button{font-size:14px;background:none;border:0;padding:10px 0}header>nav>a.active{border-bottom:1px solid}.navTools{display:flex;gap:20px;align-items:center}.enquire{background:var(--ink);color:#fff;padding:13px 24px;font-size:13px}.iconButton{border:0;background:none;padding:10px;display:grid;place-items:center}.searchIcon{width:17px;height:17px;border:1.5px solid currentColor;border-radius:50%;position:relative}.searchIcon:after{content:'';height:7px;width:1.5px;background:currentColor;position:absolute;right:-3px;bottom:-5px;transform:rotate(-45deg)}.menuToggle{display:none}.mega{background:#fff;position:fixed;top:92px;left:0;right:0;z-index:39;padding:35px 5%;border-bottom:1px solid var(--line);box-shadow:0 18px 28px #0001;display:none}.mega.open{display:grid;grid-template-columns:1fr 3fr;gap:60px}.megaLinks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 30px}.megaLinks a{font-size:14px;padding:8px 0;border-bottom:1px solid var(--line)}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;line-height:1.4}.wrap{padding:0 5%;max-width:1800px;margin:auto}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.055em;font-weight:500;line-height:1.05;margin:0}h1{font-size:clamp(46px,6.2vw,104px)}h2{font-size:clamp(34px,4.1vw,66px)}h3{font-size:24px;letter-spacing:-.03em}p{margin:0 0 1.1em}.hero{position:relative;height:min(770px,calc(100svh - 92px));min-height:570px;background:#000000;overflow:hidden;color:white}.hero>img{width:100%;height:100%;object-fit:cover}.hero iframe{position:absolute;left:50%;top:50%;width:max(100vw,177.78vh);height:max(56.25vw,100vh);transform:translate(-50%,-50%);border:0;pointer-events:none}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000a,transparent 80%)}.heroContent{position:absolute;bottom:65px;left:5%;right:5%;z-index:2;display:grid;grid-template-columns:2fr 1fr;gap:50px;align-items:end}.hero h1{max-width:900px}.heroAside p{max-width:340px;font-size:18px;line-height:1.6}.heroAside .textLink{color:#fff}.hero .eyebrow{margin-bottom:25px}.videoControl{position:absolute;right:5%;top:30px;z-index:3;border:1px solid #ffffff80;color:white;background:#0003;padding:9px 17px;font-size:12px}.textLink{display:inline-block;border-bottom:1px solid;padding:8px 0;font-size:14px}.intro{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding-top:105px;padding-bottom:105px}.intro h2{max-width:740px}.intro p{max-width:480px;font-size:18px}.intro .eyebrow{margin-bottom:30px}.section{padding-top:85px;padding-bottom:85px}.sectionHead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.sectionHead .eyebrow{margin-bottom:20px}.sectionHead p{max-width:420px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.card{display:block;min-width:0}.card .picture{aspect-ratio:4/3;overflow:hidden;background:var(--soft)}.card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.card:hover img{transform:scale(1.025)}.card .eyebrow{color:var(--muted);margin:18px 0 8px;font-size:11px}.card h3{font-size:25px}.card p{font-size:14px;color:var(--muted);margin-top:12px;max-width:95%}.materials{background:var(--soft)}.materials .cards{grid-template-columns:repeat(4,minmax(0,1fr))}.materials .card .picture{aspect-ratio:1}.splitFeature{display:grid;grid-template-columns:1.2fr 1fr;min-height:640px}.splitFeature>img{width:100%;height:100%;object-fit:cover}.splitFeature .copy{padding:80px 12%;background:var(--ink);color:white;display:flex;flex-direction:column;justify-content:center}.splitFeature h2{margin:25px 0}.splitFeature p{color:#d2d5ce}.splitFeature .textLink{align-self:start}.applicationLinks{display:grid;grid-template-columns:repeat(3,1fr);gap:0 45px}.applicationLinks a{border-bottom:1px solid var(--line);padding:19px 0;font-size:22px;letter-spacing:-.02em}.applicationLinks a:hover{color:var(--accent)}.journal .card .picture{aspect-ratio:3/2}.callout{background:var(--accent);color:#fff;padding:70px 5%;display:flex;justify-content:space-between;align-items:center;gap:40px}.callout h2{max-width:800px}.callout a{border:1px solid #fff;padding:18px 32px;white-space:nowrap;font-size:14px}footer{padding:65px 5% 25px;background:var(--ink);color:#fff}.footerGrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px}.footerGrid h3{font-family:'DM Sans';font-size:14px;letter-spacing:0;margin-bottom:20px}.footerGrid a{display:block;font-size:14px;color:#ced0c9;margin:8px 0}.footerBrand{font-size:38px;letter-spacing:.1em}.footerBottom{border-top:1px solid #fff3;padding-top:25px;color:#aaaea6;font-size:12px;display:flex;justify-content:space-between;gap:40px}.pageIntro{padding:55px 5% 70px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:45px;display:flex;gap:12px}.pageIntro h1{max-width:1100px;margin:20px 0}.pageIntro .lead{font-size:19px;max-width:820px;color:var(--muted)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:30px 0;border-bottom:1px solid var(--line);margin-bottom:40px}.chip{background:white;border:1px solid var(--line);padding:10px 18px;font-size:13px;border-radius:0}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.filterInput{border:0;border-bottom:1px solid var(--ink);padding:10px 4px;min-width:240px;max-width:100%;margin-left:auto;background:transparent}.resultsCount{font-size:12px;color:var(--muted);margin-bottom:25px}.detailLayout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:60px;padding:55px 5% 85px}.detailSide{align-self:start;position:sticky;top:120px}.detailSide p{font-size:14px;color:var(--muted)}.detailSide a{display:block;font-size:14px;padding:10px 0;border-bottom:1px solid var(--line)}.contentFlow{min-width:0}.contentFlow>.prose{max-width:850px;padding:12px 0}.prose{font-size:17px;line-height:1.8}.prose h1,.prose h2{font-size:34px;margin:35px 0 25px}.prose h3,.prose h4{font-size:23px;margin:25px 0 15px}.prose a{border-bottom:1px solid var(--line)}.prose table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.prose td,.prose th{padding:10px;border:1px solid var(--line)}.imageGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:35px 0 50px}.imageGrid.single{grid-template-columns:1fr}.imageGrid figure{margin:0;min-width:0}.imageGrid img{width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--soft);cursor:zoom-in}.imageGrid.single img{aspect-ratio:auto;max-height:760px}.imageGrid figcaption{font-size:13px;color:var(--muted);padding-top:12px}.videoFrame{width:100%;aspect-ratio:16/9;border:0;background:#000000}.film{margin-bottom:40px}.film h3{margin:15px 0;font-size:21px}.filmGrid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.originalLink{font-size:13px;color:var(--muted);border-top:1px solid var(--line);margin-top:40px;padding-top:20px}.empty{padding:55px 0;color:var(--muted)}.loadMore{display:block;background:var(--ink);color:white;border:0;padding:15px 35px;margin:45px auto 0}.searchDialog{position:fixed;inset:0;background:#fff;z-index:70;padding:35px 8%;overflow:auto}.searchDialog[hidden]{display:none}.searchTop{display:flex;justify-content:space-between;align-items:center}.searchTop button{background:none;border:0;font-size:30px}.searchField{font-size:clamp(28px,4vw,60px);width:100%;border:0;border-bottom:1px solid var(--line);padding:40px 0 25px;outline:none}.searchResults{max-width:1000px;margin:40px auto}.searchResult{display:grid;grid-template-columns:95px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:23px 0}.searchResult img{height:80px;width:95px;object-fit:cover}.searchResult h3{font-size:24px;margin:5px 0}.searchResult p{font-size:14px;color:var(--muted)}.lightbox{position:fixed;inset:0;background:#000e;z-index:80;display:grid;place-items:center;padding:65px 5%}.lightbox[hidden]{display:none}.lightbox img{max-width:100%;max-height:85vh;object-fit:contain}.lightbox button{position:absolute;right:30px;top:20px;background:none;border:0;color:white;font-size:35px}.skip{position:absolute;left:15px;top:-60px;background:#fff;padding:12px;z-index:99}.skip:focus{top:15px}.loading{padding:100px 5%}.srOnly{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1600px){.hero{height:850px}.wrap{padding-left:7%;padding-right:7%}}@media(max-width:1100px){header>nav{gap:18px}.brand img{width:130px}.navTools{gap:8px}.detailLayout{grid-template-columns:180px 1fr;gap:35px}.heroContent{grid-template-columns:1.6fr 1fr}.materials .cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){header{height:78px}.brand img{width:130px}.brand small{font-size:9px}.menuToggle{display:block}.navTools>.enquire{display:none}header>nav{position:fixed;top:78px;inset-inline:0;background:#fff;padding:25px 5%;display:none;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - 78px);overflow:auto}header>nav.open{display:flex}header>nav>a,header>nav>button{text-align:left;font-size:20px;padding:15px 0;border-bottom:1px solid var(--line)}.mega{top:78px}.mega.open{grid-template-columns:1fr;padding:25px;gap:20px}.megaLinks{grid-template-columns:1fr 1fr}.hero{min-height:630px;height:calc(90svh - 78px)}.heroContent{grid-template-columns:1fr;gap:30px;bottom:40px}.hero h1{font-size:clamp(43px,10vw,72px)}.heroAside p{font-size:16px;max-width:440px}.hero .eyebrow{margin-bottom:18px}.intro{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:60px}.intro p{max-width:100%;font-size:17px}.section{padding-top:60px;padding-bottom:60px}.sectionHead{align-items:start;flex-direction:column;gap:20px}.cards,.materials .cards{grid-template-columns:1fr 1fr;gap:30px 18px}.card h3{font-size:21px}.splitFeature{grid-template-columns:1fr;min-height:0}.splitFeature>img{height:450px}.splitFeature .copy{padding:55px 6%}.applicationLinks{grid-template-columns:1fr 1fr;gap:0 20px}.applicationLinks a{font-size:18px}.callout{flex-direction:column;align-items:start;padding:55px 5%}.footerGrid{grid-template-columns:1fr 1fr}.footerBottom{flex-direction:column;gap:15px}.pageIntro{padding:35px 5% 45px}.breadcrumb{margin-bottom:30px}.detailLayout{grid-template-columns:1fr;padding-top:30px;gap:30px}.detailSide{position:static;display:flex;flex-wrap:wrap;gap:10px 25px}.detailSide p{width:100%}.detailSide a{font-size:13px}.filterInput{margin-left:0;flex:1;min-width:160px}.filmGrid{grid-template-columns:1fr}.imageGrid{gap:15px}.searchDialog{padding:25px 5%}.searchResult{grid-template-columns:65px 1fr;gap:16px}.searchResult img{width:65px;height:65px}.searchResult h3{font-size:20px}}@media(max-width:480px){.cards{grid-template-columns:1fr}.materials .cards{grid-template-columns:1fr 1fr}.materials .card h3{font-size:18px}.imageGrid{grid-template-columns:1fr}.splitFeature>img{height:330px}.footerGrid{gap:25px}.footerGrid>div:first-child{grid-column:1/-1}.applicationLinks a{font-size:17px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.hero iframe{display:none}}

.card .picture.noImage{display:none}.card:has(.noImage){border-top:1px solid var(--line);padding-top:22px}.card:has(.noImage) h3{font-size:30px}

/* Compact reading rhythm throughout the website. */
p{margin-bottom:.65em}
.contentFlow>.prose{padding:0;margin:0 0 10px}
.prose{line-height:1.65}
.prose>:last-child{margin-bottom:0}
.prose h1,.prose h2{margin:22px 0 12px}
.prose h3,.prose h4{margin:18px 0 10px}
.prose ul,.prose ol{margin:8px 0 12px}
.prose p:empty{display:none}
.imageGrid{margin:24px 0 30px}

/* Larger Axolotl wordmark with a restrained supporting line. */
header{height:104px}
.brand img{width:220px;height:43px}
.brand small{font-size:10px;letter-spacing:.23em;margin-top:5px}
.mega{top:104px}
@media(max-width:1100px){.brand img{width:180px;height:38px}}
@media(max-width:800px){header{height:86px}.brand img{width:175px;height:35px}.brand small{font-size:9px;margin-top:4px}.mega,header>nav{top:86px}}

/* Linked material icons on the homepage. */
.materials .cards.materialIcons{grid-template-columns:repeat(5,minmax(0,1fr));gap:32px 22px}
.materialIcons .card img{object-fit:contain}
.materialIcons .card .eyebrow{display:none}
.materialIcons .card h3{font-size:20px;margin-top:14px}
@media(max-width:1100px){.materials .cards.materialIcons{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.materials .cards.materialIcons{grid-template-columns:repeat(2,minmax(0,1fr))}.materialIcons .card h3{font-size:18px}}

.materialIconCard>h3,.materialIconCard>.eyebrow{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

.materialIconCard{position:relative}.materialIconCard .picture{aspect-ratio:4/3}.materialIconCard .picture img{object-fit:cover}.freshMaterialName{display:block;font-size:15px;letter-spacing:.03em;padding:13px 0;border-bottom:1px solid var(--line)}@supports ((-webkit-background-clip:text) or (background-clip:text)){
.materialIcons .freshMaterialName{background-image:linear-gradient(90deg,#111 0%,#111 35%,#999 48%,#ddd 52%,#111 65%,#111 100%);background-size:320% 100%;background-position:100% 50%;-webkit-background-clip:text;background-clip:text}
.materialIcons .card:is(:hover,:focus-visible) .freshMaterialName{color:transparent;-webkit-text-fill-color:transparent;animation:surfaceTitleLight 4s cubic-bezier(.2,.65,.3,1) forwards}
@keyframes surfaceTitleLight{from{background-position:100% 50%}to{background-position:0% 50%}}
}
@media(prefers-reduced-motion:reduce){.materialIcons .card:is(:hover,:focus-visible) .freshMaterialName{animation:none;color:#111;-webkit-text-fill-color:#111}}

/* Larger navigation wordmark without the supporting tagline. */
.brand small{display:none}.brand img{width:280px;height:56px}@media(max-width:1100px){.brand img{width:225px;height:46px}}@media(max-width:800px){.brand img{width:205px;height:42px}}

/* Neutral enquiry banner. */
.callout{background:#e7e9e6;color:var(--ink)}.callout a{border-color:var(--ink);color:var(--ink)}.callout a:hover{background:var(--ink);color:#fff}

/* Axolotl Art Projects homepage feature */
.artProjectsFeature{background:#e7e9e6}.artProjectsImage{display:block;position:relative;min-width:0;overflow:hidden}.artProjectsImage img{width:100%;height:100%;min-height:520px;object-fit:cover;display:block}.artProjectsCredit{position:absolute;bottom:0;left:0;right:0;padding:28px 24px 16px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font-size:12px;line-height:1.5}.artProjectsImage:focus-visible{outline:3px solid var(--ink);outline-offset:-3px}.artProjectsFeature h2{max-width:650px}.artProjectsFeature .copy p{max-width:560px}
@media(max-width:800px){.artProjectsImage img{height:450px;min-height:0}}@media(max-width:480px){.artProjectsImage img{height:330px}.artProjectsCredit{font-size:11px;padding:24px 18px 12px}}

/* Give homepage spotlights their own space; organise magazines in Media. */
.artProjectsFeature{margin-bottom:80px;color:var(--ink)}.artProjectsFeature .copy{background:#e7e9e6}.artProjectsFeature .textLink{color:var(--ink)}.artProjectsFeature h2{font-size:clamp(38px,4.1vw,68px);line-height:1.08}.mediaMagazines{margin-bottom:72px}.mediaMagazines h2,.mediaPress h2{font-size:clamp(28px,3vw,42px);margin:0 0 30px}.mediaMagazines .card picture{background:#eeefec}.mediaMagazines .card img{object-fit:contain}
@media(max-width:800px){.artProjectsFeature{margin-bottom:48px}.mediaMagazines{margin-bottom:48px}}

/* Readable Art Projects copy and embedded showroom scheduling. */
.artProjectsFeature .copy h2,.artProjectsFeature .copy .eyebrow,.artProjectsFeature .copy p,.artProjectsFeature .copy a{color:#202421;opacity:1}.artProjectsFeature .copy p{color:#343a35}.appointmentBooking{margin:45px 0}.appointmentBooking iframe{display:block;width:100%;height:900px;border:0;background:#fff}.appointmentBooking h2{font-size:32px;margin-bottom:16px}.mediaMagazines .cards,.mediaPress .cards{gap:44px 28px}.mediaPress .card picture{background:#eeefec}.mediaPress .card img{object-fit:contain}
@media(max-width:800px){.appointmentBooking iframe{height:1000px}.mediaMagazines .cards,.mediaPress .cards{gap:32px 18px}}

/* Match surface names to selected-project card titles. */
.freshMaterialName{font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:500;letter-spacing:-.03em;line-height:1.05;padding:16px 0}
@media(max-width:800px){.freshMaterialName{font-size:21px}}

/* Browse enlarged gallery images and material swatches. */
.lightbox{padding:65px 80px 100px;touch-action:pan-y}.lightbox img{max-height:calc(100svh - 180px)}.lightbox .galleryArrow{top:50%;transform:translateY(-50%);width:50px;height:64px;font-size:52px;line-height:1;border:1px solid #ffffff60;border-radius:4px;background:#202421bb;color:#fff}.lightbox .galleryPrevious{left:18px;right:auto}.lightbox .galleryNext{right:18px}.lightbox .galleryArrow[hidden]{display:none}.lightbox button:focus-visible{outline:3px solid #fff;outline-offset:4px}.galleryInfo{position:absolute;bottom:24px;left:80px;right:80px;display:flex;justify-content:space-between;gap:24px;color:#fff;font-size:15px;line-height:1.4}.galleryInfo #galleryCaption{max-width:85%}.galleryInfo #galleryCount{white-space:nowrap}
@media(max-width:800px){.lightbox{padding:65px 48px 100px}.lightbox .galleryArrow{width:36px;height:52px;font-size:38px}.lightbox .galleryPrevious{left:6px}.lightbox .galleryNext{right:6px}.galleryInfo{left:20px;right:20px;font-size:13px}}

/* Keep Gavin Harris’s face visible in the artist portrait. */
a[href="/artwork-gavin-harris"] img{object-position:center top}

.materialCarousel{margin:16px 0 28px;width:100%}.materialCarouselStage{background:#eef0ed;position:relative;aspect-ratio:3/2;max-height:680px;overflow:hidden}.materialSlide{width:100%;height:100%;margin:0;position:absolute;inset:0;opacity:0;z-index:1;pointer-events:none;transition:opacity .7s ease-in-out}.materialSlide.isActive{opacity:1;z-index:2;pointer-events:auto}.materialSlide img{width:100%;height:100%;object-fit:contain;cursor:zoom-in}.materialSlide figcaption{position:absolute;bottom:0;left:0;right:0;padding:12px 18px;background:rgba(255,255,255,.9);font-size:14px;color:#202421}.materialCarouselControls{display:flex;align-items:center;gap:16px;padding:10px 0}.materialCarouselControls button{background:transparent;border:1px solid #b7beb7;min-height:40px;min-width:44px;padding:7px 14px;color:#202421;cursor:pointer;font:inherit}.materialCarouselControls button:last-child{margin-left:auto}.materialCarouselControls span{font-size:14px;color:#343a35}@media(max-width:800px){.materialCarouselStage{aspect-ratio:4/3}.materialCarouselControls{gap:10px}}

.filmCover{display:block;position:relative;width:100%;aspect-ratio:16/9;border:0;padding:0;overflow:hidden;background:#000000;cursor:pointer}.filmCover img{width:100%;height:100%;object-fit:cover}.filmPlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;padding-left:4px;border-radius:50%;background:rgba(255,255,255,.92);color:#000000;font-size:24px;box-shadow:0 3px 18px #0003}.filmCover:hover .filmPlay{background:#ad8a60}

@media(prefers-reduced-motion:reduce){.materialSlide{transition:none}}

.materialJumpLinks{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 32px}.materialJumpLinks a{font-size:16px;line-height:1.4;border-bottom:1px solid #899b80;padding:8px 0;color:#202421}.contentFlow [id]{scroll-margin-top:125px}.materialJumpLinks a:hover{color:#536b48}

.appointmentBooking{scroll-margin-top:115px}.filmCover img{display:block;opacity:1}

/* Scoped team page layout. Names remain attached to their portraits. */
.teamIntroduction{max-width:800px;margin-bottom:40px}.teamIntroduction p{font-size:16px;line-height:1.65;margin-bottom:16px}.teamProfileGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}.teamPortrait{background:#ecece8;height:245px;overflow:hidden}.teamPortrait img{width:100%;height:100%;object-fit:contain;object-position:center}.teamProfile h3{font-size:17px;line-height:1.25;letter-spacing:-.02em;margin:15px 0 6px}.teamRole{font-size:12px;line-height:1.5;margin:0;color:#444943}.teamBio{margin-top:14px;font-size:13px;line-height:1.6}.teamBio summary{cursor:pointer;border-top:1px solid var(--line);padding-top:10px;font-size:12px}.teamBio p{font-size:13px;line-height:1.6;margin:12px 0}.teamAdditional{margin-top:55px}.teamAdditional h2{font-size:30px;margin-bottom:24px}.teamAdditionalGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.teamAdditionalGrid img{height:220px;width:100%;object-fit:contain;background:#ecece8}.teamFactoryGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:45px}.teamFactoryGrid figure{margin:0}.teamFactoryGrid img{height:280px;width:100%;object-fit:contain;background:#ecece8}.teamFactoryGrid figcaption{font-size:12px;line-height:1.5;margin-top:10px}
@media(max-width:1100px){.teamProfileGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.teamPortrait{height:270px}.teamAdditionalGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.teamProfileGrid{gap:30px 16px}.teamPortrait{height:210px}.teamProfile h3{font-size:15px}.teamAdditionalGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.teamAdditionalGrid img{height:190px}.teamFactoryGrid{grid-template-columns:1fr}.teamFactoryGrid img{height:240px}}

.projectStoryPreview{font-size:15px;line-height:1.65;margin-top:14px;margin-bottom:14px}.projectReadMore{display:inline-block;font-size:12px;border-bottom:1px solid;padding-bottom:4px}

.specificationHeading{font-size:1rem;letter-spacing:.08em;margin-top:2rem!important;margin-bottom:1rem!important;}

.storyCarousel{width:100%;margin:1.5rem 0}.storyStage figure{margin:0}.storyStage figure[hidden]{display:none}.storyStage img{width:100%;height:min(65vh,700px);object-fit:contain;background:#f1f1ef;cursor:zoom-in}.storyControls{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1rem}.storyControls button{background:transparent;border:1px solid #222;color:#222;padding:.5rem 1rem;cursor:pointer;font-size:1.5rem}.storyControls button:hover{background:#222;color:white}

.rippleSample{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem;margin:2rem 0}.rippleSample>img{width:100%;aspect-ratio:1;object-fit:contain;cursor:zoom-in}.rippleSampleInfo h3{margin:0 0 1rem;font-size:1.5rem}.rippleSampleInfo dl{display:grid;grid-template-columns:5rem 1fr;gap:.5rem 1rem;margin:0}.rippleSampleInfo dt{color:var(--muted)}.rippleSampleInfo dd{margin:0}@media(max-width:600px){.rippleSample{grid-template-columns:1fr;gap:1rem}.rippleSampleInfo{padding-bottom:1rem}}

.materialIcons .completedSurfaceCard .picture{aspect-ratio:4/5;overflow:hidden}.materialIcons .completedSurfaceCard .picture img{transform:scale(1.12)}.materialIcons .surface-glass .picture img{transform:scale(1.45);object-position:65% 50%}.materialIcons .surface-concrete .picture img{transform:scale(1.4);object-position:50% 75%}.materialIcons .surface-terracotta .picture img{transform:scale(1.9);object-position:55% 25%}.materialIcons .surface-sheetmetal .picture img{transform:scale(1.5);object-position:50% 15%}
/* Homepage material grid */
.materials .materialIcons{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:800px){.materials .materialIcons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.materials .materialIcons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.materialIcons .materialIconCard .picture{aspect-ratio:4/5}

.materialIcons .surface-stone .picture img{transform:scale(1.12);object-position:50% 50%}.materialIcons .surface-solidsurface .picture img{transform:scale(1.4);object-position:40% 100%}.materialIcons .surface-axolotl-paint .picture img{transform:scale(1.65);object-position:55% 58%}
/* Keep World of Surfaces at three columns at every viewport. */
.materials .cards.materialIcons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:600px){.materials .cards.materialIcons{gap:18px 10px}.materials .materialIcons .freshMaterialName{font-size:clamp(12px,3.5vw,18px);overflow-wrap:anywhere}}

/* Match the homepage surface tiles to the Ideas, realised image cards. */
.materials .cards.materialIcons{gap:40px 24px}
.materials .materialIcons .materialIconCard .picture{aspect-ratio:4/3}
@media(max-width:800px){.materials .cards.materialIcons{gap:30px 18px}}

/* Crops for the five supplied World of Surfaces photographs. */
.materials .materialIcons :is(.surface-stone,.surface-timber,.surface-sheetmetal,.surface-terracotta,.surface-solidsurface) .picture img{transform:none;object-position:50% 50%}

/* Paint sample cards follow the Applied Metal swatch and details format. */
.paintSampleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0 30px;scroll-margin-top:120px}.paintSample{margin:0;min-width:0}.paintSamplePanel{display:grid;grid-template-columns:1fr 1fr;background:#fff;aspect-ratio:2/1}.paintSamplePanel>img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;min-height:0}.paintSampleInfo{padding:8%;display:flex;flex-direction:column;justify-content:center}.paintSampleInfo .paintSampleLogo{width:70%;height:auto;max-height:48px;object-fit:contain;object-position:left;filter:brightness(0);margin-bottom:18px}.paintSampleInfo dl{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;margin:0;font-size:14px;line-height:1.4}.paintSampleInfo dd{margin:0}.paintSampleInfo dt{color:var(--muted)}.paintSample figcaption{font-size:13px;padding-top:8px}@media(max-width:1100px){.paintSampleGrid{grid-template-columns:1fr}}@media(max-width:480px){.paintSampleInfo dl{font-size:12px;gap:6px}.paintSampleInfo .paintSampleLogo{margin-bottom:10px}}

/* Shared branding and contact treatment for material sample sheets. */
.sampleBrand{display:block;width:145px;max-width:80%;height:auto;max-height:58px;object-fit:contain;object-position:left;filter:brightness(0);margin-bottom:22px}.sampleContact{font-style:normal;font-size:12px;line-height:1.5;margin-top:22px;color:var(--ink)}.materialSampleGrid img{aspect-ratio:2/1;background:#fff}.concreteSample{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin:2rem 0}.concreteSample>img{width:100%;aspect-ratio:1;object-fit:contain;cursor:zoom-in}.concreteSampleInfo dl{display:grid;grid-template-columns:5rem 1fr;gap:.5rem 1rem;margin:0}.concreteSampleInfo dd{margin:0}.concreteSampleInfo dt{color:var(--muted)}.paintSamplePanel{aspect-ratio:auto;min-height:230px}.paintSampleInfo .sampleBrand{width:90px;max-height:35px;margin-bottom:15px}.paintSampleInfo .sampleContact{font-size:11px;margin-top:15px}.paintSampleGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.teamPortrait img{filter:grayscale(1)}.teamProfile:has(h3):not(:has(.teamPortrait)){align-self:start;padding-top:22px;border-top:1px solid var(--line)}
@media(max-width:600px){.concreteSample{grid-template-columns:1fr;gap:1rem}.paintSampleGrid{grid-template-columns:1fr}.paintSampleInfo .sampleContact{font-size:12px}}

.consistentSampleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0 30px}.consistentSampleGrid :is(.rippleSample,.concreteSample){margin:0;gap:0;align-items:stretch}.consistentSampleGrid :is(.rippleSampleInfo,.concreteSampleInfo){padding:8%;display:flex;flex-direction:column;justify-content:center}.consistentSampleGrid :is(.rippleSample,.concreteSample)>img{height:100%;min-height:0;object-fit:cover}.consistentSampleGrid .sampleBrand{width:90px;max-height:35px;margin-bottom:15px}.consistentSampleGrid dl{grid-template-columns:auto 1fr;font-size:14px;line-height:1.4;gap:7px 10px}.consistentSampleGrid h3{font-size:18px}.consistentSampleGrid .sampleContact{font-size:11px;margin-top:15px}@media(max-width:1100px){.consistentSampleGrid{grid-template-columns:1fr}}@media(max-width:600px){.consistentSampleGrid :is(.rippleSample,.concreteSample){grid-template-columns:1fr 1fr}.consistentSampleGrid .sampleContact{font-size:12px}}

.mediaStories{max-width:1100px}.mediaStories section+section{margin-top:65px}.mediaStories h2{font-size:32px;margin-bottom:25px}.mediaStory{padding:30px 0;border-top:1px solid var(--line)}.mediaStory h3{font-size:clamp(25px,3vw,38px);line-height:1.15;margin:0 0 18px}.mediaStory p{max-width:900px;font-size:17px;line-height:1.65;margin:0 0 12px}.mediaStory .textLink{font-size:14px}

/* Use the supplied Axolotl artwork on every swatch, including existing printed sheets. */
.sampleBrand{filter:none}.swatchSheetFrame{position:relative;background:#fff}.swatchSheetFrame>img{display:block;width:100%}.swatchLogoStamp{display:block;background:#fff;padding:15px 6%;pointer-events:none}.swatchLogoStamp .sampleBrand{width:120px;max-width:85%;max-height:60px;margin:0;filter:none}.brandedSheet>.swatchLogoStamp{position:absolute;right:0;top:0;width:50%;height:31%;padding:5% 4% 0;display:flex;align-items:flex-start}.brandedSheet>.swatchLogoStamp .sampleBrand{width:65%;max-width:100%;height:auto;max-height:100%;margin:0}.lightboxImageFrame{position:relative;max-width:100%;width:fit-content;max-height:85vh}.lightboxImageFrame>img{max-height:85vh;max-width:100%}.lightboxImageFrame .swatchLogoStamp[hidden]{display:none}

.swatchLogoStamp[hidden]{display:none!important}

.finishCards .picture{aspect-ratio:1/1}.finishCards .picture img{width:100%;height:100%;object-fit:cover;object-position:left center}

.mediaLeadImage{display:block;width:100%;max-width:900px;max-height:650px;object-fit:contain;object-position:left center;margin:0 0 24px}

.standardSwatch{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:#fff}.standardSwatch>img{aspect-ratio:1;width:100%;height:100%;object-fit:contain}.swatchDetails{padding:8%;display:flex;flex-direction:column;justify-content:center}.swatchDetails .sampleBrand{width:90px;max-height:35px;margin-bottom:15px}.swatchDetails dl{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;font-size:14px;line-height:1.4;margin:0}.swatchDetails dd{margin:0}.swatchDetails .sampleContact{font-size:11px;margin-top:15px}

h1,h2,h3,h4,p,figcaption,.lead,.artist{ text-wrap:pretty }

.applicationFilters{padding:22px 0;margin-bottom:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.applicationFilterFields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.applicationFilterFields label{display:block;font-size:13px;line-height:1.5}.applicationFilterFields :is(select,input){display:block;width:100%;min-height:44px;margin-top:7px;padding:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:14px}.applicationFilterFields label:last-of-type{grid-column:1/3}.applicationFilterFields button{align-self:end;min-height:44px;padding:10px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:14px}.applicationFilters>p{font-size:13px;margin:18px 0 0}.applicationPhotoLinks{font-size:12px;margin-top:10px}.applicationPhotoLinks a{text-decoration:underline;text-underline-offset:3px}.applicationGalleryBody [hidden],.applicationFilterEmpty[hidden]{display:none!important}.applicationFilterEmpty{padding:20px 0}@media(max-width:600px){.applicationFilterFields{grid-template-columns:1fr 1fr}.applicationFilterFields label:first-child{grid-column:1/-1}.applicationFilterFields label:last-of-type{grid-column:1/-1}.applicationFilterFields button{grid-column:1/-1}}

.detailSide .applicationFilters{width:100%;padding:22px 0 0;margin:24px 0 0;border:0}.detailSide .applicationFiltersHeading{font-size:23px;line-height:1.2;margin:0 0 20px}.detailSide .applicationFilterFields{display:flex;flex-direction:column;gap:16px}.detailSide .applicationFilterFields label{width:100%;font-size:13px}.detailSide .applicationFilterFields button{width:100%;align-self:auto}.detailSide .applicationFilters>p{width:100%;font-size:12px;margin:16px 0 0}.detailSide:has(.applicationFilters){max-height:calc(100svh - 130px);overflow-y:auto;padding-right:8px}@media(max-width:800px){.detailSide:has(.applicationFilters){max-height:none;overflow:visible;padding-right:0}.detailSide .applicationFilters{flex-basis:100%;margin-top:14px}.detailSide .applicationFilterFields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detailSide .applicationFilterFields label:first-child,.detailSide .applicationFilterFields label:last-of-type,.detailSide .applicationFilterFields button{grid-column:1/-1}}

.glassSample{display:grid;grid-template-columns:1fr 1fr;background:#fff;min-width:0}.glassSample>img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;cursor:zoom-in}.glassSampleInfo{padding:8%;display:flex;flex-direction:column;justify-content:center}.glassSampleInfo .sampleBrand{width:90px;max-height:35px;margin-bottom:15px}.glassSampleInfo dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 10px;font-size:13px;line-height:1.4;margin:0}.glassSampleInfo dd{margin:0}.glassSampleInfo dt{color:var(--muted)}.glassSampleInfo .sampleContact{font-size:11px;margin-top:15px}

/* Subtle brightness lift for Miro and Lustre sample photographs. */
img[data-image-tone="bright-glass"]{filter:brightness(1.12) contrast(1.04)}

.glassSample>.swatchCompletedProjects{grid-column:1/-1;width:100%}

.concreteSample>.swatchCompletedProjects,.rippleSample>.swatchCompletedProjects{grid-column:1/-1;width:100%}

.mediaStory>a:first-child{display:block;overflow:hidden;margin-bottom:24px}.mediaStory .mediaLeadImage{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;object-position:center;margin:0}

.clientListColumns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:start}.clientListColumn{min-width:0}.clientListGroup{margin-bottom:36px}.clientListGroup h1{margin-top:0}.clientListGroup:last-child{margin-bottom:0}@media(max-width:600px){.clientListColumns{grid-template-columns:1fr;gap:36px}}

.hero h1.heroStatement{font-size:clamp(28px,4.3vw,72px)}.heroStatement span{display:block;white-space:nowrap}@media(max-width:900px){.hero h1.heroStatement{font-size:clamp(24px,6vw,54px)}}

/* Readable material descriptions and consistent sample enquiries. */
.materialDetail .contentFlow>.prose p{font-size:23px;line-height:1.8;font-weight:400;margin:0 0 1.35em;max-width:850px}
.materialDetail .contentFlow>.prose{margin-bottom:18px}
.materialDetail .contentFlow>.prose h3,.materialDetail .contentFlow>.prose h4{line-height:1.45}
.sampleEnquiry{display:block;width:fit-content;margin:14px 0 4px;font-size:13px;line-height:1.5}
.galleryInfo{flex-wrap:wrap;align-items:center;gap:12px 24px}
.galleryInfo #galleryEnquiry{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.galleryInfo #galleryEnquiry[hidden]{display:none}
.contactPage{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:7%;padding-top:55px;padding-bottom:80px}
.contactDetails{display:grid;align-content:start;gap:28px}
.contactDetails h2,.contactPage .appointmentBooking h2{font-size:28px;line-height:1.3;margin:0 0 20px}
.contactDetails address{font-style:normal;line-height:1.8}
.contactHours{margin:0}.contactHours dt{font-weight:500;margin:24px 0 6px}.contactHours dd{margin:0;line-height:1.8}
.contactPage .appointmentBooking{margin:0;padding:0;border:0;min-width:0;scroll-margin-top:120px}
.contactPage .appointmentBooking iframe{width:100%;min-height:760px;border:0;background:var(--soft)}
.heroStatement span{white-space:normal;text-wrap:pretty}
@media(max-width:700px){.materialDetail .contentFlow>.prose p{font-size:23px;line-height:1.8}.contactPage{grid-template-columns:1fr;gap:45px;padding-top:35px;padding-bottom:50px}.contactDetails h2,.contactPage .appointmentBooking h2{font-size:25px}.contactPage .appointmentBooking iframe{min-height:800px}.hero h1.heroStatement{font-size:clamp(23px,5.8vw,40px)}}

/* Smaller About copy from Community onwards. */
.aboutCompact .prose h3,.aboutCompact .prose h4,.aboutCompact .prose p{font-size:18px;line-height:1.7;font-weight:400}
.aboutCompact .prose h1,.aboutCompact .prose h2{font-size:28px;line-height:1.35}
.aboutCompact .clientListGroup h1{font-size:22px;line-height:1.35;margin:0 0 16px}
.aboutCompact .clientListGroup h3{font-size:17px;line-height:1.5;margin:0}
.aboutCompact .clientListGroup ul{margin:0;padding:0;list-style:none}
.aboutCompact .clientListGroup li{margin:0 0 7px;break-inside:avoid}
.aboutCompact .clientListColumns{align-items:start}
@media(max-width:700px){.aboutCompact .prose h3,.aboutCompact .prose h4,.aboutCompact .prose p{font-size:17px}.aboutCompact .prose h1,.aboutCompact .prose h2{font-size:25px}.aboutCompact .clientListGroup h1{font-size:21px}.aboutCompact .clientListGroup h3{font-size:17px}}

/* Match material descriptions to the Garage Doors introduction. */
.materialDetail .contentFlow>.prose p{font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:500;letter-spacing:-.055em;line-height:1.05;margin:18px 0 10px}
.materialDetail .contentFlow>.prose h3,.materialDetail .contentFlow>.prose h4{line-height:1.05}

/* Match the About text measure and bring client columns together. */
.aboutCompact>.prose{max-width:850px}
.aboutCompact .clientListColumns{gap:32px}
@media(max-width:700px){.aboutCompact .clientListColumns{gap:36px}}

/* Phone layouts: readable text, comfortable controls and contained galleries. */
@media(max-width:800px){
 header{padding-inline:5%;gap:12px}.brand{min-width:0}.brand img{width:min(205px,48vw)}
 .navTools{gap:4px}.iconButton{min-width:44px;min-height:44px}.menuToggle{font-size:24px}
 header>nav{max-height:calc(100dvh - 86px);overscroll-behavior:contain;padding-bottom:max(28px,env(safe-area-inset-bottom))}
 .mega.open{display:block;max-height:calc(100dvh - 86px);overflow-y:auto;overscroll-behavior:contain;padding:22px 5% max(28px,env(safe-area-inset-bottom));box-shadow:none}
 .megaLinks{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;gap:4px 20px}.megaLinks a{display:flex;align-items:center;min-height:48px;font-size:16px;overflow-wrap:break-word}
 .menuBack{background:none;border:0;border-bottom:1px solid var(--line);padding:12px 0;margin:0 0 24px;font-size:16px;min-height:44px}
 .contentFlow,.copy,.intro>div,.footerGrid>div,.searchResult>div{min-width:0}
 .hero{min-height:560px;height:calc(90svh - 86px)}.heroContent{bottom:32px;gap:24px}.hero h1.heroStatement{font-size:clamp(30px,7.3vw,48px);line-height:1.08}.heroStatement span{display:inline}.hero .eyebrow{font-size:11px;max-width:80%}
 .pageIntro h1{font-size:clamp(36px,8vw,60px);overflow-wrap:break-word}.pageIntro .lead{font-size:17px;line-height:1.55}.breadcrumb{flex-wrap:wrap;gap:6px 10px}
 .prose{overflow-wrap:break-word}.prose h3,.prose h4,.materialDetail .contentFlow>.prose p{font-size:20px;line-height:1.35}.prose h1,.prose h2{font-size:30px;line-height:1.2}.materialDetail .contentFlow>.prose h3,.materialDetail .contentFlow>.prose h4{line-height:1.35}
 .detailLayout{padding-bottom:55px}.detailSide{gap:0 20px}.detailSide a{min-height:44px;padding:12px 0}.materialJumpLinks{gap:4px 18px}.materialJumpLinks a{min-height:44px}
 .materials .cards.materialIcons{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.materials .materialIcons .freshMaterialName{font-size:19px;line-height:1.2;overflow-wrap:normal}
 .card p{font-size:16px;max-width:100%;line-height:1.55}.textLink,.sampleEnquiry{min-height:44px;line-height:1.5}.freshMaterialName{overflow-wrap:break-word}
 input,select,textarea,.applicationFilterFields :is(select,input),.detailSide .applicationFilterFields :is(select,input){font-size:16px}.chip{min-height:44px}.toolbar{gap:10px}.filterInput{flex-basis:100%;min-width:0;width:100%}
 .materialCarouselControls,.storyControls{flex-wrap:wrap;gap:10px}.materialCarouselControls button,.storyControls button{min-height:44px;min-width:44px}.materialCarouselControls span{font-size:13px}.storyStage img{height:auto;max-height:65svh}
 .lightbox{padding:64px 48px 180px}.lightboxImageFrame,.lightboxImageFrame>img,.lightbox img{max-height:calc(100svh - 244px)}.lightbox #closeLightbox{top:10px;right:10px;min-width:44px;min-height:44px}.lightbox .galleryArrow{width:44px;min-height:52px}.lightbox .galleryPrevious{left:2px}.lightbox .galleryNext{right:2px}.galleryInfo{bottom:max(20px,env(safe-area-inset-bottom));gap:8px 16px;max-height:140px;overflow-y:auto}.galleryInfo #galleryCaption{max-width:100%;flex:1 1 75%;overflow-wrap:anywhere}.galleryInfo #galleryEnquiry{flex-basis:100%;min-height:44px;display:flex;align-items:center}.galleryInfo #galleryEnquiry[hidden]{display:none}
 .searchDialog{padding-bottom:max(28px,env(safe-area-inset-bottom));overscroll-behavior:contain}.searchTop button{min-width:44px;min-height:44px}.searchResult p{font-size:15px}
 .callout a{white-space:normal;text-align:center;min-height:48px}.contactDetails a{overflow-wrap:anywhere}.footerGrid a{padding:8px 0;margin:0;min-height:44px}.footerBottom{overflow-wrap:anywhere}
}
@media(max-width:600px){
 .cards{grid-template-columns:1fr}.materials .cards.materialIcons{grid-template-columns:repeat(2,minmax(0,1fr))}.applicationLinks{grid-template-columns:1fr}.applicationLinks a{min-height:52px;font-size:19px}
 .glassSample,.standardSwatch,.paintSamplePanel,.consistentSampleGrid :is(.rippleSample,.concreteSample){grid-template-columns:1fr}
 .glassSample>img,.standardSwatch>img,.paintSamplePanel>img,.consistentSampleGrid :is(.rippleSample,.concreteSample)>img{height:auto;aspect-ratio:1;object-fit:contain}
 .glassSampleInfo,.swatchDetails,.paintSampleInfo,.consistentSampleGrid :is(.rippleSampleInfo,.concreteSampleInfo){padding:22px}
 .glassSampleInfo dl,.swatchDetails dl,.paintSampleInfo dl,.consistentSampleGrid dl{font-size:15px;grid-template-columns:auto minmax(0,1fr);gap:8px 14px}
 .glassSampleInfo dd,.swatchDetails dd,.paintSampleInfo dd,.consistentSampleGrid dd{overflow-wrap:anywhere}.sampleContact,.glassSampleInfo .sampleContact,.swatchDetails .sampleContact,.paintSampleInfo .sampleContact,.consistentSampleGrid .sampleContact{font-size:13px}
 .sampleEnquiry{font-size:15px;margin:12px 0}.teamProfileGrid{grid-template-columns:1fr}.teamPortrait{height:auto;aspect-ratio:4/5}.teamProfile h3{font-size:21px}.teamAdditionalGrid img{height:auto;aspect-ratio:4/5}
 .imageGrid{grid-template-columns:1fr}.mediaStories h2{font-size:28px}.mediaStory h3{font-size:28px}
 .aboutCompact .clientListGroup h3{font-size:17px;line-height:1.6}.aboutCompact .clientListColumns{gap:36px}.prose ul,.prose ol{padding-left:22px}
}
@media(max-width:380px){.footerGrid{grid-template-columns:1fr}.footerGrid>div:first-child{grid-column:auto}.megaLinks{grid-template-columns:1fr}.materials .materialIcons .freshMaterialName{font-size:17px}.hero h1.heroStatement{font-size:29px}}
@media(max-width:800px) and (max-height:500px) and (orientation:landscape){.hero{height:auto;min-height:430px}.heroContent{position:relative;padding:90px 0 30px;bottom:auto}.hero>img{position:absolute;inset:0}}

/* Team and Careers copy use the Garage Doors introduction typography. */
.teamIntroduction{max-width:850px}
.teamIntroduction p,.careersDetail .prose :is(h1,h2,h3,h4,p){font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:500;letter-spacing:-.055em;line-height:1.05;margin:18px 0 10px}
@media(max-width:800px){.teamIntroduction p,.careersDetail .prose :is(h1,h2,h3,h4,p){font-size:20px;line-height:1.35}}

/* Section indexes stay in the document flow; only the header menu is fixed. */
.materialJumpLinks{position:static;inset:auto;max-height:none;overflow:visible}

/* Give the opening statement more presence. */
.hero h1.heroStatement{font-size:clamp(48px,5.8vw,100px);line-height:1.04}
@media(max-width:800px){.hero h1.heroStatement{font-size:clamp(34px,8.8vw,60px);line-height:1.08}}

/* Match portrait head sizes across the team. */
.teamPortrait:has(img[alt="FOX MCDONALD"]){background:#fff}
.teamPortrait img[alt="FOX MCDONALD"]{transform:translateY(7%);object-fit:cover;object-position:50% 50%;filter:grayscale(1) brightness(1.22) contrast(1.04)}
.teamPortrait img[alt="ALIVIA PAGANO"]{transform:scale(1.5);transform-origin:50% 25%}

/* Formed Glass colour preview, separate from the original Low Iron sample sheet. */
.formedSampleType{display:block;margin-top:5px;color:var(--ink);font-size:12px}
.formedGlassColours{margin:14px 0 4px;border-top:1px solid var(--line);padding-top:12px}
.formedGlassColours>summary{cursor:pointer;font-size:13px;line-height:1.5;width:fit-content}
.formedColourContent{padding-top:14px}.formedOriginal,.formedColourSelection{font-size:13px;line-height:1.5;margin:0 0 10px}
.formedColourPreview{overflow:hidden;position:relative;width:100%;aspect-ratio:1;background:#e7e9e8}
.imageGrid .formedColourPreview>img{display:block;width:200%;max-width:none;height:100%;aspect-ratio:auto;object-fit:fill;cursor:default;transition:filter .2s ease}
.formedColourPreview[data-glass-colour="lowiron"]>img{filter:none}
.formedColourPreview[data-glass-colour="clear"]>img{filter:sepia(.15) hue-rotate(65deg) saturate(.75) brightness(.96)}
.formedColourPreview[data-glass-colour="grey"]>img{filter:grayscale(.92) brightness(.62) contrast(1.1)}
.formedColourOptions{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:16px 0 12px;min-width:0}
.formedColourOptions legend{font-size:13px;margin-bottom:10px;padding:0}
.formedColourOptions button{display:inline-flex;gap:7px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:0;padding:9px 11px;font:inherit;font-size:12px;color:var(--ink);cursor:pointer;min-height:42px}
.formedColourOptions button[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.formedColourOptions button:focus-visible,.formedGlassColours>summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.formedColourDot{width:13px;height:13px;border:1px solid #aaa;border-radius:50%;flex-shrink:0}.formedColourDot.lowiron{background:#f1f4f3}.formedColourDot.clear{background:#ccdad0}.formedColourDot.grey{background:#60625e}
.formedColourNote{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 12px}
.formedColourEnquiry{font-size:13px}
@media(prefers-reduced-motion:reduce){.imageGrid .formedColourPreview>img{transition:none}}

/* Bronze option and the original Veil glass types. */
.formedColourDot.bronze{background:#897965}
.formedColourPreview[data-glass-colour="bronze"]>img{filter:url("#bronze-glass")}
.formedColourPreview[data-original-colour="bronze"][data-glass-colour="lowiron"]>img{filter:grayscale(.95) brightness(1.07)}
.formedColourPreview[data-original-colour="clear"][data-glass-colour="lowiron"]>img{filter:grayscale(.5) brightness(1.04)}
.formedColourPreview[data-original-colour="bronze"][data-glass-colour="clear"]>img{filter:grayscale(.9) sepia(.15) hue-rotate(65deg) brightness(1.02)}
.formedColourPreview[data-original-colour="clear"][data-glass-colour="clear"]>img{filter:none}

/* Centred Media stories, with complete mastheads and a photographic anniversary grid. */
.mediaCollection .toolbar,.mediaCollection>.resultsCount,.mediaStories{width:100%;max-width:960px;margin-left:auto;margin-right:auto}
.mediaStories .mediaStory{padding:36px 0 44px}.mediaStoryVisual{display:block;margin-bottom:24px}
.mediaStories .mediaStoryVisual>.mediaLeadImage{width:100%;max-width:none;margin:0;object-position:center}
.mediaStories .mediaStoryVisual>.mediaHero-banner,.mediaStories .mediaStoryVisual>.mediaHero-logo,.mediaDetail .mediaHero-banner,.mediaDetail .mediaHero-logo{aspect-ratio:auto;height:auto;max-height:none;object-fit:contain;object-position:center}
.mediaStories .mediaStoryVisual>.mediaHero-logo,.mediaDetail .mediaHero-logo{width:min(100%,540px);margin-left:auto;margin-right:auto;padding:24px 0}
.mediaProjectGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:100%;margin-bottom:24px;background:#fff}
.mediaProjectGrid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.mediaDetail{display:block;width:min(960px,calc(100% - 48px));max-width:960px;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
.mediaDetail>.detailSide{position:static;display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:28px;padding:0;border:0}
.mediaDetail>.detailSide p{width:100%;margin:0}.mediaDetail>.contentFlow{width:100%;min-width:0}
.mediaDetail .prose,.mediaDetail .mediaLeadImage{max-width:none}.mediaDetail .mediaLeadImage{object-position:center}
.artworkDetails{margin:24px 0 32px}.artworkDetails h3{margin:0 0 14px}.artworkFacts>p{display:block;margin:0 0 6px;font-size:18px;line-height:1.55;font-weight:400}.artworkPurchase{display:block;width:fit-content;margin-top:16px}
@media(max-width:600px){.mediaProjectGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.mediaStories .mediaStory{padding:28px 0 34px}.mediaDetail{width:calc(100% - 40px)}}

/* Fifty different project photographs for the legacy story: ten by five on desktop. */
.mediaProjectGrid.mediaProjectGridDense{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px}
.mediaProjectGridDense img{aspect-ratio:1;min-width:0}
@media(max-width:800px){.mediaProjectGrid.mediaProjectGridDense{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* Balance Reina and Fox against the team portraits using their existing photographs. */
.teamPortrait img[alt="REINA RIVERA"]{object-fit:contain;object-position:center;transform:scale(1.22);transform-origin:50% 0%}
.teamPortrait img[alt="FOX MCDONALD"]{object-fit:contain;object-position:50% 25%;transform:none}

/* Lower Fred’s eye line slightly within the existing portrait frame. */
.teamPortrait img[alt="FREDRICK KITSAO"]{object-position:50% 50%;transform:translateY(10%)}

/* Lustre Glass colour and gradient visualiser. Sheet matches the original 2:1 sample format. */
.lustreVisualiser{margin:24px 0 36px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:24px 28px;scroll-margin-top:100px}
.lustreVisualiserHeading{grid-column:1/-1}.lustreVisualiserHeading h3{margin:0 0 10px;font-size:28px}.lustreVisualiserHeading p{margin:0;font-size:17px;line-height:1.6}
.lustreSampleColumn{min-width:0}.lustrePreviewSheet{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:2/1;background:#fff;overflow:hidden}
.lustreGlassPreview{position:relative;min-width:0;aspect-ratio:1;box-shadow:inset 0 0 0 1px #0002}
.lustreGlassPreview::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 2% 2%,#ffffffeb 0%,#ffffff6b 23%,transparent 68%),linear-gradient(125deg,transparent 35%,#ffffff12 55%,#0002 100%);pointer-events:none}
.lustrePreviewInfo{padding:9%;display:flex;flex-direction:column;justify-content:center}.lustrePreviewInfo .sampleBrand{width:85px;max-height:35px;margin-bottom:16px}.lustrePreviewInfo dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;font-size:11px;line-height:1.4;margin:0}.lustrePreviewInfo dt{color:var(--muted)}.lustrePreviewInfo dd{margin:0;overflow-wrap:anywhere}
.lustrePreviewNote{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 0}.lustreSampleColumn>.textLink{font-size:13px}
.lustreControls{min-width:0}.lustreMode,.lustreStops{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.lustreControls button{border:1px solid var(--line);padding:9px 12px;background:#fff;color:var(--ink);font:inherit;font-size:13px;min-height:40px;cursor:pointer}.lustreControls button[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.lustreControls button[hidden]{display:none}.lustreStops button{display:flex;gap:8px;align-items:center}.lustreStops span{width:18px;height:18px;border:1px solid #0003;border-radius:50%}
.lustrePickerLayout{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,1fr);gap:18px;align-items:center}.lustreWheel{position:relative;width:100%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff 0%,#fff0 70%),conic-gradient(from 90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);touch-action:none;cursor:crosshair}.lustreWheelMarker{position:absolute;width:14px;height:14px;border:2px solid #fff;box-shadow:0 0 0 1px #111;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.lustreControls :focus-visible{outline:2px solid var(--ink);outline-offset:3px}.lustrePickerFields label,.lustreDirection{display:block;font-size:12px;line-height:1.5;margin-bottom:10px}.lustrePickerFields input{display:block;width:100%;min-width:0}.lustrePickerFields input[type="color"]{height:34px;padding:2px;border:1px solid var(--line);background:#fff;cursor:pointer}.lustrePickerFields input[type="text"]{height:34px;border:1px solid var(--line);font:inherit;padding:5px 8px}.lustreControls input[type="range"]{accent-color:var(--ink);cursor:pointer;min-height:24px}.lustreDirection[hidden]{display:none}.lustreDirection{margin-top:15px}.lustreDirection input{display:block;width:100%}.lustreDirection output{float:right}.lustreColourStatus{font-size:12px;margin:12px 0 0;color:var(--muted)}
@media(max-width:650px){.lustreVisualiser{grid-template-columns:1fr}.lustreVisualiserHeading{grid-column:auto}.lustrePickerLayout{grid-template-columns:minmax(140px,200px) minmax(100px,1fr)}.lustrePreviewInfo dl{font-size:12px}}

/* Lustre swatches: installed photographic surfaces, with clean HTML sample information. */
.lustreSwatch{align-items:start}.lustreSwatchPhoto{width:100%;aspect-ratio:1;background-repeat:no-repeat;background-color:#deded8;box-shadow:inset 0 0 0 1px #0001}
.lustreSwatchPhoto.softenedReflection{filter:contrast(.72) brightness(1.06)}
.lustreSwatch .glassSampleInfo{align-self:stretch;padding:8%}.lustreSwatch .glassSampleInfo dl{font-size:11px;gap:6px 8px}.lustreSwatch .sampleContact{font-size:10px;line-height:1.5}
.lustreSwatch>.sampleEnquiry{grid-column:1/-1;margin:12px 0 0}.lustreSwatch>.swatchCompletedProjects{margin-top:12px}
/* Broad, diffuse satin reflections in the custom-colour preview. */
.lustreGlassPreview::after{background:radial-gradient(ellipse at 22% 20%,#ffffff38 0%,#ffffff16 35%,transparent 75%),linear-gradient(105deg,#0000000c 0%,transparent 30%,#ffffff12 50%,transparent 70%,#00000018 100%)}

/* Align the colour wheel with the sample square, with all controls below. */
.lustreControls{display:flex;flex-direction:column;align-items:stretch;gap:14px}
.lustreControls .lustrePickerLayout{display:contents}
.lustreControls .lustreWheel{order:0;width:50%;flex:none}
.lustreControls .lustreMode{order:1;margin:0}
.lustreControls .lustreStops{order:2;margin:0}
.lustreControls .lustrePickerFields{order:3;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}
.lustreControls .lustreDirection{order:4;margin:0}
.lustreControls .lustreColourStatus{order:5;margin:0}

/* Each technical document has its own readable row. */
.specificationList{display:block;margin:16px 0 28px}.specificationList>p{display:block;margin:0;padding:10px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.5}

/* 10 mm glass colour references supplied by Axolotl, 19 October 2026. */
.formedColourDot.bronze{background:#6a573b}.formedColourDot.grey{background:#60625e}

/* Homepage film: native silent loop with a still-image fallback. */
.hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border:0;pointer-events:none}.hero>video[hidden]{display:none}.hero>img{object-position:center}

/* Keep native films within phone layouts, at their original proportions. */
video.videoFrame{display:block;max-width:100%;height:auto;object-fit:contain}.film{min-width:0}.filmCover{max-width:100%}@media(max-width:700px){video.videoFrame{width:100%;height:auto}.film h3{overflow-wrap:anywhere}}

/* Consistent smaller body copy across all project stories. */
.projectDetail .prose p,.projectDetail .prose h3,.projectDetail .prose h4{font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.8;font-weight:400;letter-spacing:normal;margin:0 0 1em}

/* Consistent Projects typography and readable project facts. */
.projectIntro h1{font-size:clamp(36px,4.5vw,64px);line-height:1.12;max-width:1000px}
.projectIntro .lead{font-size:17px;line-height:1.65;max-width:720px}
.projectsCollection .cards{align-items:start;gap:48px 28px}
.projectsCollection .card h3{font-size:20px;line-height:1.3;letter-spacing:-.025em}
.projectsCollection .card .projectStoryPreview{font-size:15px;line-height:1.65;margin:12px 0 16px;max-width:100%}
.projectsCollection .projectReadMore{font-size:13px;line-height:1.5}
.projectDetail .contentFlow>.prose{max-width:760px;margin-bottom:12px}
.projectDetail .prose{font-size:17px;line-height:1.75}
.projectDetail .prose h2{font-size:22px;line-height:1.3;letter-spacing:-.025em;margin:28px 0 10px}
.projectDetail .prose p,.projectDetail .prose h3,.projectDetail .prose h4{font-size:17px;line-height:1.75}
.projectDetail .prose dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:9px 24px;margin:16px 0 24px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.projectDetail .prose dt{font-size:14px;color:var(--muted);font-weight:400}
.projectDetail .prose dd{margin:0;font-size:16px;line-height:1.6;min-width:0;overflow-wrap:anywhere}
.projectDetail .storyStage figcaption{font-size:13px;line-height:1.6;max-width:760px;margin:12px auto 0;color:var(--muted)}
@media(max-width:800px){.projectsCollection .cards{gap:36px 20px}.projectIntro .breadcrumb{margin-bottom:24px}.projectDetail .prose h2{font-size:21px;margin-top:24px}.projectDetail .prose dl{grid-template-columns:105px minmax(0,1fr);gap:8px 16px}}
