.story-hero .service-photo{max-width:440px;justify-self:center}.story-intro{margin-top:24px;max-width:530px;color:var(--muted);font-size:16px;line-height:1.8}.story-chapter{display:grid;grid-template-columns:1fr 1.6fr;gap:10%;padding-top:78px;padding-bottom:78px;border-top:1px solid var(--line)}.story-chapter>div{max-width:720px}.story-chapter p:not(.eyebrow){margin-top:25px;color:var(--muted);font-size:17px;line-height:1.8}.story-chapter .text-link{margin-top:24px}.team-chapter{background:var(--cream)}.atelier-copy>.text-link{margin-top:24px}.services>.text-link{margin-top:38px}.services-intro{padding-top:68px;padding-bottom:54px;text-align:center}.services-intro .lead{margin:0 auto;max-width:650px}.services-intro .text-link{margin-top:22px}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;padding-bottom:65px}.service-cards article{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.service-cards img{width:100%;height:auto;display:block}.service-cards .eyebrow{margin-top:24px}.service-cards h2{font-size:32px;margin:13px 0 18px}.service-cards p:not(.eyebrow){color:var(--muted);font-size:16px}.service-cards .text-link{margin-top:auto;padding-top:20px;font-size:11px;gap:12px}.services-seasonal{margin:0}.services-seasonal .text-link{font-size:12px}.pack-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-top:78px;padding-bottom:78px;background:var(--cream)}.pack-preview{max-width:340px;justify-self:center;display:block;box-shadow:0 12px 40px #24252018}.pack-preview img{display:block;width:100%;height:auto}.pack-section h2{margin:24px 0}.pack-section p:not(.eyebrow){max-width:450px;color:var(--muted);font-size:17px;line-height:1.8}.pack-download{display:block;width:max-content;margin-top:16px;text-decoration:underline;text-underline-offset:4px}.services-intro+.service-cards{border-bottom:1px solid var(--line)}
@media(min-width:701px) and (max-width:1100px){.site-header nav{gap:16px}.site-header nav a{font-size:11px}.service-cards{gap:24px}.service-cards h2{font-size:27px}.service-cards .text-link{font-size:10px;gap:8px}.pack-section{gap:8%}}
@media(max-width:700px){.story-hero .service-photo{max-width:340px}.story-chapter{grid-template-columns:1fr;gap:24px;padding-top:46px;padding-bottom:46px}.story-chapter p:not(.eyebrow){font-size:16px;margin-top:22px}.story-intro{font-size:16px}.services-intro{padding-top:38px;padding-bottom:40px;text-align:left}.services-intro .lead{margin:0}.service-cards{grid-template-columns:1fr;gap:45px;padding-bottom:45px}.service-cards img{max-height:450px;object-fit:contain;background:#eee8df}.service-cards h2{font-size:32px}.service-cards .text-link{margin-top:12px;padding-top:0;font-size:11px;min-height:44px}.services-seasonal>span{display:block}.pack-section{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:45px}.pack-preview{max-width:260px}.pack-section>div{width:100%}.pack-section p:not(.eyebrow){font-size:16px}.growth-footer nav{column-gap:18px;row-gap:0}}
/* Full-frame portfolio images and seasonal feature. */
.card-wide{grid-column:1/-1}.christmas-stack-photo{max-width:420px;justify-self:center}.service-cards img{aspect-ratio:4/5;object-fit:contain;background:#eee8df}.photo img{object-fit:contain}.portfolio-carousel{padding-top:64px;padding-bottom:66px;background:var(--cream)}.carousel-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}.carousel-heading h2{margin-top:20px}.carousel-controls{display:flex;align-items:center;gap:12px}.carousel-controls button{height:46px;width:46px;border:1px solid var(--olive);background:transparent;color:var(--ink);font-size:23px;cursor:pointer}.carousel-controls button:disabled{opacity:.3;cursor:default}.carousel-controls button:focus-visible,.carousel-track:focus-visible{outline:2px solid var(--olive);outline-offset:4px}.carousel-track{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0 0 20px;scrollbar-width:thin;scrollbar-color:#77765d #d8d2c7}.carousel-slide{flex:0 0 29%;min-width:0;scroll-snap-align:start}.carousel-slide img{display:block;width:100%;height:360px;object-fit:contain;background:#f6f3ed}.carousel-slide figcaption{font-family:'Bodoni Moda',Georgia,serif;font-size:24px;line-height:1.3;margin-top:17px}.carousel-note{color:var(--muted);font-size:12px;margin-top:22px}.carousel-note a{text-decoration:underline;text-underline-offset:4px}
/* Keep all five sections visible without crowding the centred wordmark. */
@media(min-width:701px){.site-header{height:157px;grid-template-rows:105px 52px}.site-header .wordmark{grid-column:2;grid-row:1}.site-header .nav-enquiry{grid-column:3;grid-row:1}.site-header .desktop-nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:38px;align-self:stretch;border-top:1px solid #d8d2c7}.site-header .desktop-nav a{font-size:12px}}
@media(max-width:700px){.portfolio-carousel{padding-top:44px;padding-bottom:45px}.carousel-heading{align-items:flex-start;gap:12px}.carousel-heading h2{font-size:32px}.carousel-controls{gap:8px;padding-top:34px}.carousel-controls button{width:44px;height:44px}.carousel-slide{flex-basis:82%}.carousel-slide img{height:345px}.carousel-track{gap:18px}.carousel-slide figcaption{font-size:23px}.card-wide{grid-column:auto}.christmas-stack-photo{max-width:340px}}
@media(prefers-reduced-motion:reduce){.carousel-track{scroll-behavior:auto}}

/* Complete, centred slides with consistent image height and no white panels. */
.portfolio-carousel{--carousel-image-height:360px}
.carousel-track{gap:24px}
.carousel-slide{flex:0 0 calc((100% - 48px)/3);width:auto;min-width:0}
.carousel-slide img{display:block;width:100%;height:var(--carousel-image-height);background:transparent;object-fit:contain;object-position:center}
.carousel-slide figcaption{text-align:center;min-height:2.6em;padding:0 5px}
@media(min-width:701px) and (max-width:1000px){.carousel-slide{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:700px){.portfolio-carousel{--carousel-image-height:clamp(330px,68vw,440px)}.carousel-slide{flex:0 0 100%;width:100%}.carousel-track{gap:24px}}

/* Give the story's section headings a stronger, readable hierarchy. */
.story-hero .eyebrow,.story-chapter .eyebrow,.story-chapter+.closing .eyebrow{font-size:14px;letter-spacing:1.8px;line-height:1.5}
.growth-page .story-chapter h2,.growth-page .story-chapter+.closing h2{font-size:clamp(42px,4.5vw,64px);line-height:1.12}
@media(max-width:700px){.growth-page .story-chapter h2,.growth-page .story-chapter+.closing h2{font-size:clamp(40px,6.5vw,46px)}.story-chapter{gap:28px}}

/* Understated olive rules beneath the story headings. */
.story-hero .eyebrow::after,.story-chapter .eyebrow::after,.story-chapter+.closing .eyebrow::after{content:"";display:block;width:72px;height:1px;background:var(--olive);margin-top:12px}
.story-chapter+.closing .eyebrow::after{background:var(--cream)}

/* Clear service copy and an easy route from inspiration to an enquiry. */
.hero-service-clarity{font-size:17px;line-height:1.55;margin-top:20px;max-width:380px;color:var(--ink)}
.corporate-pack-link{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;width:fit-content;margin-top:20px;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
.corporate-pack-link span{font-size:11px;color:var(--muted);text-decoration:none}
.portfolio-browse{padding:0 5vw 34px}.portfolio-filter-buttons{display:flex;flex-wrap:wrap;gap:10px}
.portfolio-filter-buttons button{min-height:44px;padding:10px 22px;border:1px solid #b6b0a5;border-radius:0;background:transparent;color:#292c24;font:400 14px/1.4 Jost,Arial,sans-serif;cursor:pointer}
.portfolio-filter-buttons button:hover{background:#eae7df}.portfolio-filter-buttons button[aria-pressed="true"]{background:#292c24;color:#f6f3ed;border-color:#292c24}
.portfolio-filter-buttons button:focus-visible{outline:2px solid #77765d;outline-offset:4px}.portfolio-filter-status{font-size:13px;color:#64665c;margin:16px 0 0}
.portfolio-enquiry{padding:56px 5vw 64px;border-top:1px solid #d7d4ca;background:#eae7df;text-align:center}.portfolio-enquiry h2{margin:0 0 20px}.portfolio-enquiry>p:not(.eyebrow){max-width:530px;margin:0 auto 26px;font-size:17px;line-height:1.7}.portfolio-enquiry .pack{align-items:center;min-height:48px}
@media(max-width:700px){.hero-service-clarity{font-size:16px;margin-top:18px}.portfolio-browse{padding:0 6vw 30px}.portfolio-filter-buttons{gap:8px}.portfolio-filter-buttons button{padding:10px 16px}.portfolio-enquiry{padding:44px 6vw 50px}.portfolio-enquiry>p:not(.eyebrow){font-size:16px}}
@media(max-width:480px){.portfolio-filter-buttons{display:grid;grid-template-columns:1fr 1fr}.portfolio-filter-buttons button{width:100%}}

/* Photographic pine frame inspired by the supplied reference; only active for Christmas. */
.christmas-frame{display:contents}
.christmas-selected .christmas-frame{display:block;background:#f6f3ed;border:clamp(30px,7vw,90px) solid transparent;border-image-source:url("christmas-pine-frame.png");border-image-slice:230 fill;border-image-repeat:round}
.christmas-selected .christmas-frame>.intro{padding-top:22px;padding-bottom:38px}
.christmas-selected .christmas-frame>.intro,.christmas-selected .portfolio-browse,.christmas-selected .christmas-frame>.grid,.christmas-selected .portfolio-enquiry{padding-left:clamp(8px,2vw,28px);padding-right:clamp(8px,2vw,28px)}
.christmas-selected .portfolio-enquiry{background:transparent}
.christmas-selected .portfolio-filter-buttons button[data-filter="christmas"][aria-pressed="true"]{background:#294834;border-color:#294834;color:#f6f3ed}
@media(max-width:700px){.christmas-selected .christmas-frame>.intro{padding-top:12px;padding-bottom:30px}.christmas-selected .portfolio-enquiry{padding-bottom:12px}}
@media print{.christmas-selected .christmas-frame{border:0;background:transparent}}

/* Fine ivory paper across every page, beneath content rather than over photographs. */
:root{--paper-grain:url("ivory-paper-texture.png");--paper-wash:linear-gradient(rgba(246,243,237,.55),rgba(246,243,237,.55))}
body,.site-header,.site-header .mobile-menu nav{background-image:var(--paper-wash),var(--paper-grain);background-size:640px 640px;background-repeat:repeat}
.craft,.editorial-split,.team-chapter,.pack-section,.portfolio-carousel,.seasonal-banner,.enquiry-review,.portfolio-enquiry{background-image:linear-gradient(rgba(234,228,217,.78),rgba(234,228,217,.78)),var(--paper-grain);background-size:640px 640px;background-repeat:repeat}
.editorial-split>figure{background-image:linear-gradient(rgba(238,235,229,.68),rgba(238,235,229,.68)),var(--paper-grain);background-size:640px 640px}
.christmas-selected .portfolio-enquiry{background-image:none}
@media print{body,.site-header,.craft,.editorial-split,.editorial-split>figure,.team-chapter,.pack-section,.portfolio-carousel,.seasonal-banner,.enquiry-review,.portfolio-enquiry{background-image:none}}

/* Frame the dedicated Christmas service page on desktop and mobile. */
.christmas-service-page .christmas-frame>.section{padding-left:clamp(8px,2.5vw,36px);padding-right:clamp(8px,2.5vw,36px)}
.christmas-service-page .christmas-frame>.service-hero{padding-top:24px;padding-bottom:48px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.christmas-service-page .christmas-frame .offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.christmas-service-page .christmas-frame>.service-hero{grid-template-columns:1fr}.christmas-service-page .christmas-frame .offer-grid{grid-template-columns:1fr}.christmas-service-page .christmas-frame .editorial-split{grid-template-columns:1fr}.christmas-service-page .christmas-frame .questions,.christmas-service-page .christmas-frame .section-intro{grid-template-columns:1fr;gap:26px}}
@media(max-width:700px){.christmas-service-page .christmas-frame>.service-hero{padding-top:12px;padding-bottom:35px}.christmas-service-page .christmas-frame h1{font-size:clamp(38px,10vw,58px)}.christmas-service-page .christmas-frame .button{min-width:0;max-width:100%;gap:14px}.christmas-service-page .christmas-frame .editorial-split>div{padding:36px 12px}.christmas-service-page .christmas-frame .editorial-split>figure{padding:16px 12px}}
