/* Public catalogue pages share CTM's light palette, typography and controls. */
.seo-page{background:#fbfdff;color:var(--navy,#112451)}
.seo-header{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid #dbe7f0;box-shadow:0 4px 20px #10326908}
.seo-header .header-inner{max-width:1320px;height:auto;min-height:92px;padding:12px 32px;gap:24px;justify-content:space-between;flex-wrap:wrap}
.seo-header .brand{position:static;inset:auto;height:auto;display:block;width:180px;flex:0 0 180px}
.seo-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px}
.seo-nav a{font-weight:800;padding:10px 2px;text-decoration:none}
.seo-nav a:hover{color:var(--pink,#ef006c)}
.seo-header .button{white-space:nowrap}
.seo-main{max-width:1320px;margin:auto;padding:28px 32px 64px;min-width:0}
.seo-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 28px;padding:0;font-size:14px;color:#59677d}
.seo-breadcrumb li{min-width:0;overflow-wrap:anywhere}
.seo-breadcrumb li+li::before{content:'›';margin-right:8px;color:#8291a8}
.seo-breadcrumb a{color:var(--navy,#112451);text-underline-offset:4px}
.seo-intro{max-width:780px;margin:18px 0 36px}
.seo-intro h1,.seo-product h1{font-family:var(--display);font-weight:800;font-size:clamp(32px,4vw,54px);line-height:1.12;margin:12px 0 20px;overflow-wrap:anywhere}
.seo-intro p:not(.eyebrow){color:#59677d;line-height:1.7;font-size:18px}
.seo-range .service-grid{container-type:inline-size}
.seo-range .service-card{min-width:0}
.seo-card-description{font-size:14px;line-height:1.6;color:#59677d;flex:1;margin:0 0 18px}
.seo-range .service-image-button{height:clamp(150px,15vw,215px)}
.seo-enquiry,.seo-related{margin-top:48px;padding:32px;border:1px solid #dbe7f0;border-radius:24px;background:linear-gradient(125deg,#edf8ff,#fff6fa)}
.seo-enquiry h2,.seo-related h2{font-size:clamp(26px,3vw,34px);margin:0 0 12px}
.seo-enquiry p,.seo-related p{color:#59677d;max-width:760px;line-height:1.7;margin:0 0 22px}
.seo-product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.seo-product-image{min-width:0;border:1px solid #dbe7f0;border-radius:24px;padding:32px;background:linear-gradient(145deg,#ecf8ff,#fff);overflow:hidden}
.seo-product-image img{display:block;width:100%;height:auto;aspect-ratio:885/650;object-fit:contain}
.seo-product-copy{min-width:0}
.seo-product-copy>p,.seo-product-copy li{line-height:1.7;color:#59677d;overflow-wrap:anywhere}
.seo-product-copy .seo-tagline{font-size:20px;font-weight:800;color:var(--navy,#112451)}
.seo-product-copy h2{font-size:26px;margin:24px 0 12px}
.seo-features,.seo-options{padding-left:22px;margin:0}
.seo-features li,.seo-options li{margin-bottom:8px}
.seo-features li::marker{color:#008deb}
.seo-options li::marker{color:#ef006c}
.seo-note{padding:16px 18px;background:#edf8ff;border-radius:14px;border:1px solid #d2eafa}
.seo-confirmation{font-size:14px}
.seo-product-copy>.button{max-width:100%;margin-top:8px}
.seo-footer{max-width:1320px;margin:auto;padding:32px;border-top:1px solid #dbe7f0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;color:#59677d;font-size:14px;overflow-wrap:anywhere}
.seo-footer strong{color:var(--navy,#112451)}
.seo-footer p{margin:8px 0;line-height:1.7}
.seo-footer nav{display:flex;flex-wrap:wrap;align-items:start;gap:18px}
.seo-footer a{color:var(--navy,#112451);text-underline-offset:4px}
.seo-footer>p{flex-basis:100%;font-size:12px}
@media(max-width:759px){
 .seo-header .header-inner{min-height:76px;padding:10px 20px;gap:10px 16px}
 .seo-header .brand{width:140px;flex-basis:140px}
 .seo-header .button{font-size:13px;padding:12px 16px;gap:8px}
 .seo-nav{order:3;flex-basis:100%;gap:24px}
 .seo-nav a{font-size:14px;padding:4px 0}
 .seo-main{padding:22px 20px 40px}
 .seo-breadcrumb ol{margin-bottom:22px;font-size:12px}
 .seo-intro{margin:12px 0 26px}
 .seo-intro p:not(.eyebrow){font-size:16px}
 .seo-product{grid-template-columns:minmax(0,1fr);gap:28px}
 .seo-product-image{padding:20px}
 .seo-product-copy>.button{width:100%;white-space:normal;text-align:center}
 .seo-enquiry,.seo-related{margin-top:32px;padding:24px}
 .seo-footer{padding:28px 20px}
 .seo-range .service-image-button{height:clamp(110px,30vw,170px)}
}
@media(max-width:359px){
 .seo-header .header-inner{padding-inline:14px;gap:8px}
 .seo-header .brand{width:120px;flex-basis:120px}
 .seo-header .button{padding-inline:12px;font-size:12px}
 .seo-main{padding-inline:16px}
 .seo-range .service-image-button{height:168px}
}
@media print{.seo-header,.seo-footer,.seo-breadcrumb,.seo-enquiry,.seo-related{display:none}.seo-main{padding:0}.seo-product{grid-template-columns:1fr 1fr;gap:24px}.seo-product-copy>.button{display:none}.seo-product-image{break-inside:avoid}}
