/* Breakpoints are shared layout thresholds; typography/spacing remain token driven. */
@media(max-width:1100px){:root{--header-height:80px;--hero-image-height:530px}.primary-nav ul{gap:var(--space-4)}.nav-wrap{gap:var(--space-4)}.brand img{width:140px;height:35px}.brand span{font-size:.75rem}.hero-grid{gap:var(--space-6)}.split{gap:var(--space-7)}.audience{padding:var(--space-5)}.hero-copy .actions{align-items:stretch;flex-direction:column}.hero-copy .actions .button{align-self:start}.header-inner{gap:var(--space-4)}}
@media(max-width:950px){:root{--header-height:76px;--hero-image-height:460px}.menu-toggle{display:flex}.nav-wrap{display:block}.primary-nav ul{gap:var(--space-5)}.js .nav-wrap{display:none;position:absolute;top:100%;left:0;right:0;padding:var(--space-5) var(--page-gutter) var(--space-6);background:var(--color-white);border-bottom:var(--border);box-shadow:var(--shadow);max-height:calc(100dvh - var(--header-height));overflow-y:auto}.js .nav-wrap.is-open{display:block}.primary-nav ul{flex-direction:column;align-items:stretch;gap:0}.primary-nav a{padding:var(--space-4) 0;border-bottom:var(--border);font-size:var(--text-base)}.nav-wrap>.button{margin-top:var(--space-5)}.hero-grid,.technical-hero .hero-grid{gap:var(--space-6)}.hero-copy{padding-block:var(--space-5)}.hero-copy h1{font-size:clamp(2.5rem,5.2vw,3.8rem)}.hero-copy .lead{font-size:var(--text-base)}.home-hero{padding-top:var(--space-5)}.hero-figure img{height:var(--hero-image-height)}.photo-label{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);display:block}.photo-label span{display:block}.promise-strip div{padding:var(--space-4);font-size:var(--text-xs)}.split{gap:var(--space-6)}.panel-visual{padding:var(--space-4)}.panel-visual img{height:280px}.audiences{grid-template-columns:repeat(2,1fr)}.audience:nth-child(2){border-right:0}.audience:nth-child(3){padding-left:0}.audience:nth-child(n+3){border-top:var(--border)}.steps{gap:var(--space-6)}.video-split{gap:var(--space-6);grid-template-columns:1.3fr 1fr}.project-grid{grid-template-columns:1.2fr 1fr}.project-text{padding:var(--space-5)}.project-card img{height:260px}.enquiry-grid{gap:var(--space-7)}.footer-grid{gap:var(--space-6)}.technical-hero .panel-visual img{height:270px}.scope-table th,.scope-table td{padding:var(--space-4)}.faq-layout{gap:var(--space-7);grid-template-columns:1fr 1.5fr}.documents-box{padding:var(--space-5)}.no-js .header-inner{flex-wrap:wrap;padding-block:var(--space-4)}.no-js .nav-wrap{width:100%}.no-js .menu-toggle{display:none}}
@media(max-width:640px){:root{--hero-image-height:350px;--header-height:74px;--page-gutter:1.25rem}.brand img{width:145px;height:36px}.brand span{font-size:var(--text-xs)}.home-hero{padding-top:var(--space-4);padding-bottom:var(--space-7)}.hero-grid,.technical-hero .hero-grid,.split,.enquiry-grid,.faq-layout{grid-template-columns:1fr}.hero-copy{padding-block:var(--space-5)}.hero-copy h1{font-size:var(--text-h1)}.hero-copy .lead{font-size:var(--text-lead);margin-top:var(--space-5)}.hero-copy .actions{gap:var(--space-3);margin-top:var(--space-5)}.hero-copy .actions .button{align-self:stretch}.hero-note{font-size:var(--text-xs)}.hero-figure img{object-position:center 62%}.photo-label{display:flex;align-items:center;font-size:.75rem}.photo-label span{display:inline}.promise-strip{grid-template-columns:1fr;margin-top:var(--space-5)}.promise-strip div,.promise-strip div:first-child{padding:var(--space-3) 0;display:flex;justify-content:space-between;gap:var(--space-3);border-right:0;border-bottom:var(--border)}.promise-strip div:last-child{border:0}.promise-strip span{text-align:right}.section-heading{display:block;margin-bottom:var(--space-6)}.section-heading>p{margin-top:var(--space-5)}.section-heading h2{max-width:none}.panel-visual{padding:var(--space-5)}.panel-visual img{height:280px}.panel-visual figcaption{font-size:var(--text-xs)}.split{gap:var(--space-7)}.audiences{grid-template-columns:1fr}.audience,.audience:first-child,.audience:nth-child(3){padding:var(--space-5) 0;border-right:0;border-top:var(--border)}.audience:first-child{border-top:0}.audience .index{margin-bottom:var(--space-3)}.audience p{font-size:var(--text-base);margin-block:var(--space-3)}.audience .link{font-size:var(--text-sm)}.steps{grid-template-columns:1fr 1fr;gap:var(--space-5)}.steps h3{font-size:var(--text-lg);letter-spacing:-.02em}.steps p{font-size:var(--text-sm)}.video-split{grid-template-columns:1fr;margin-top:var(--space-7);padding-top:var(--space-7);gap:var(--space-5)}.project-grid{grid-template-columns:1fr}.project-card img{height:280px}.project-copy,.project-text{padding:var(--space-5)}.project-text .index{margin-bottom:var(--space-5)}.enquiry-grid{gap:var(--space-5)}.enquiry-contact{padding-top:0}.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-6)}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom nav{gap:var(--space-4);margin-top:var(--space-3)}.breadcrumbs{padding-block:var(--space-4)}.technical-hero{padding-top:0;padding-bottom:var(--space-7)}.technical-hero .panel-visual img{height:270px}.technical-hero h1{font-size:2.65rem}.page-index .wrap{gap:var(--space-2) var(--space-5)}.page-index span{width:100%;margin:0}.scope-table{min-width:650px}.table-scroll{border:var(--border)}.technical-detail img{height:250px}.specs>div{grid-template-columns:1fr 1.3fr;gap:var(--space-4)}.faq-layout{gap:var(--space-6)}.enquiry .actions .button{width:100%}.technical-hero .hero-copy .lead{font-size:var(--text-base)}}

/* v0.2 responsive photography and a shorter first screen. */
@media(max-width:950px){:root{--hero-image-height:410px;--material-image-height:350px;--kit-photo-height:420px}.technical-hero .hero-grid{gap:var(--space-6)}.photo-label{display:block}.photo-label span{display:block}.technical-hero .hero-copy h1{font-size:clamp(2.1rem,4.35vw,3rem)}}
@media(max-width:640px){:root{--hero-image-height:290px;--material-image-height:280px;--kit-photo-height:290px}.home-hero .hero-grid,.technical-hero .hero-grid{grid-template-columns:1fr;gap:var(--space-4)}.hero-copy{padding-block:var(--space-3)}.hero-copy .eyebrow{margin-bottom:var(--space-4)}.hero-copy .lead{margin-top:var(--space-4);font-size:var(--text-base);line-height:1.6}.hero-copy .actions{margin-top:var(--space-4);gap:var(--space-2)}.hero-copy .actions>.link{align-self:center}.hero-note{margin-top:var(--space-3);margin-bottom:0}.hero-figure img{object-position:58% 58%}.photo-label{display:block;font-size:var(--photo-caption-size);padding:var(--space-3) var(--space-4)}.photo-label span{display:block}.technical-hero .hero-copy h1{font-size:2.15rem;line-height:1.12}.kit-photo img{object-position:38% center}.project-card img{height:auto}.material-figure figcaption,.kit-photo figcaption{padding:var(--space-3) var(--space-4)}}

/* Content-page breakpoints extend the approved reference design. */
@media(min-width:951px) and (max-width:1250px){.header-inner{flex-wrap:wrap;padding-block:var(--space-3)}.nav-wrap{width:100%;justify-content:space-between}.site-header .brand img{width:140px}.site-header .brand span{font-size:var(--text-xs)}:root{--header-height:142px}.primary-nav>ul{gap:var(--space-5)}}
@media(max-width:950px){:root{--content-image-height:370px;--content-section-gap:2.75rem;--content-card-padding:1.25rem}.primary-nav .nav-group ul{position:static;width:100%;box-shadow:none;border:0;border-left:2px solid var(--color-line);padding:0 0 0 var(--space-4);max-height:none}.nav-group summary{padding:var(--space-4) 0;font-size:var(--text-base);border-bottom:var(--border)}.primary-nav .nav-group a{font-size:var(--text-base);padding:var(--space-3) 0}.content-hero-grid{gap:var(--space-6)}.content-hero h1{font-size:clamp(2.2rem,4.3vw,3rem)}.content-layout{grid-template-columns:minmax(0,1fr);gap:0}.content-aside{display:none}.nav-wrap>.button{max-width:none}.content-section h2{max-width:32ch}.related-grid{gap:var(--space-4)}}
@media(max-width:640px){:root{--content-image-height:280px;--content-section-gap:2.5rem}.content-hero{padding-top:var(--space-5)}.content-hero-grid{grid-template-columns:1fr;gap:var(--space-6)}.content-hero h1{font-size:2.25rem;line-height:1.12}.content-hero .lead{font-size:var(--text-base)}.content-hero .actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3)}.content-hero .actions .link{align-self:center}.hero-points{display:block;margin-top:var(--space-5)}.hero-points li{margin-block:var(--space-3)}.detail-cards,.related-grid{grid-template-columns:1fr}.content-section h2{font-size:1.9rem}.content-hero .eyebrow{margin-bottom:var(--space-4)}.related-card{padding-block:var(--space-4)}.content-faq summary{font-size:var(--text-base)}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.nav-wrap>.button{width:100%}}
@media(max-width:950px){.form-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-6)}:root{--form-padding:1.5rem}.form-fields{grid-template-columns:1fr}.contact-options h2{font-size:1.8rem}}
@media(max-width:640px){.form-layout{grid-template-columns:1fr}.form-panel{padding:var(--space-4)}.contact-intro h1{font-size:2.25rem}.contact-intro{padding-block:var(--space-4) var(--space-6)}.contact-options{padding-top:0}.form-panel button{width:100%}.enquiry .actions{flex-direction:column;align-items:flex-start}}

/* v0.5 wide-hero overrides. Height grows naturally with text. */
@media(max-width:950px){:root{--hero-wide-height:650px;--hero-wide-copy:580px;--hero-wide-position:60% center}.wide-hero .hero-copy h1,.wide-hero h1{font-size:clamp(2.5rem,6vw,3.8rem)}.wide-hero .hero-copy .actions{flex-direction:row;align-items:center}.wide-hero .hero-copy .actions .button{align-self:auto}}
@media(max-width:640px){:root{--hero-wide-height:650px;--hero-wide-copy:100%;--hero-wide-position:58% center;--hero-wide-shade:linear-gradient(90deg,rgba(10,28,38,.89),rgba(10,28,38,.62))}.wide-hero .hero-grid,.wide-hero .content-hero-grid{min-height:var(--hero-wide-height)}.wide-hero .hero-copy,.wide-hero .content-hero-grid>div{padding-block:var(--space-8) calc(var(--space-8) + var(--space-5));width:100%}.wide-hero .hero-copy h1,.wide-hero h1{font-size:clamp(2.35rem,10vw,3rem);line-height:1.1;overflow-wrap:break-word}.wide-hero .hero-copy .actions,.wide-hero .actions{flex-direction:column;align-items:stretch;gap:var(--space-4)}.wide-hero .hero-copy .actions .button{align-self:stretch}.wide-hero figure>figcaption{font-size:.75rem;line-height:1.4}.home-hero.wide-hero figure{bottom:135px}.home-hero.wide-hero .promise-strip{padding-block:var(--space-3)}.content-hero:not(.wide-hero){padding-block:var(--space-7)}}

/* v0.6: supporting media within the reading flow. */
:root{--story-gap:1.5rem;--story-caption-size:.875rem;--story-radius:2px}
.story-photo,.story-video{margin:var(--space-6) 0 0;min-width:0;background:var(--color-paper);border-radius:var(--story-radius);overflow:hidden}
.story-photo img{width:100%;height:auto;display:block}.story-photo figcaption,.story-video figcaption{padding:var(--space-4);font-size:var(--story-caption-size);line-height:1.55;color:var(--color-muted)}
.story-video video{display:block;width:100%;aspect-ratio:16/9;background:var(--color-dark)}.story-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--story-gap);align-items:start}.story-pair .story-photo img{aspect-ratio:4/3;object-fit:cover}.content-section>.story-photo{max-width:100%}.content-section>.story-video{margin-top:var(--space-7)}
@media(max-width:640px){.story-pair{grid-template-columns:1fr;gap:0}.story-photo figcaption,.story-video figcaption{padding:var(--space-3)}.wide-hero .enquiry-contact .actions{align-items:stretch}}
