/* Khushan Fabrication navigation layout: loaded after all theme styles. */
nav.navbar.navbar-style-one > .site-nav-container,
nav.navbar.navbar-style-one > .site-nav-container * { box-sizing: border-box; }
nav.navbar.navbar-style-one > .site-nav-container::before,
nav.navbar.navbar-style-one > .site-nav-container::after,
nav.navbar.navbar-style-one > .site-nav-container .navbar-header::before,
nav.navbar.navbar-style-one > .site-nav-container .navbar-header::after,
nav.navbar.navbar-style-one > .site-nav-container .navbar-collapse::before,
nav.navbar.navbar-style-one > .site-nav-container .navbar-collapse::after { content: none !important; display: none !important; }

@media (min-width: 1440px) {
  nav.navbar.navbar-style-one > .site-nav-container { display:grid!important; grid-template-columns:230px minmax(0,1fr) auto!important; align-items:center!important; gap:12px!important; width:calc(100% - 48px)!important; max-width:1680px!important; min-height:104px!important; margin:0 auto!important; padding:8px 0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header { display:block!important; float:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .navbar-brand { position:static!important; display:block!important; margin:0!important; padding:0!important; transform:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-display { display:block!important; width:230px!important; max-height:88px!important; height:auto!important; object-fit:contain!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-scrolled,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header > .navbar-toggle,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > img,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > .navbar-toggle { display:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse.collapse { position:static!important; display:block!important; float:none!important; width:auto!important; height:auto!important; max-height:none!important; margin:0!important; padding:0!important; overflow:visible!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav { display:flex!important; flex-flow:row nowrap!important; justify-content:center!important; align-items:center!important; float:none!important; width:100%!important; margin:0!important; padding:0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav > li { display:block!important; flex:0 0 auto!important; float:none!important; margin:0!important; white-space:nowrap!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav > li > a { display:block!important; padding:14px 7px!important; font-size:12px!important; white-space:nowrap!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .attr-right { display:block!important; float:none!important; margin:0!important; }
}
@media (min-width:1024px) and (max-width:1439px) {
  nav.navbar.navbar-style-one > .site-nav-container { display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; grid-template-areas:'brand action' 'menu menu'!important; align-items:center!important; gap:0 14px!important; width:calc(100% - 40px)!important; max-width:1320px!important; margin:0 auto!important; padding:8px 0 0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header { grid-area:brand!important; display:flex!important; float:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .navbar-brand { position:static!important; margin:0!important; padding:0!important; transform:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-display { display:block!important; width:min(230px,24vw)!important; max-height:76px!important; height:auto!important; object-fit:contain!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-scrolled,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header > .navbar-toggle,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > img,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > .navbar-toggle { display:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse.collapse { grid-area:menu!important; position:static!important; display:block!important; float:none!important; width:100%!important; height:auto!important; max-height:none!important; margin:0!important; padding:0!important; overflow:visible!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav { display:flex!important; flex-flow:row wrap!important; justify-content:center!important; align-items:center!important; float:none!important; width:100%!important; margin:0!important; padding:0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav > li { display:block!important; flex:0 0 auto!important; float:none!important; white-space:nowrap!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav > li > a { display:block!important; padding:12px 9px!important; font-size:12px!important; white-space:nowrap!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .attr-right { grid-area:action!important; display:block!important; float:none!important; margin:0!important; }
}
@media (max-width:1023px) {
  nav.navbar.navbar-style-one > .site-nav-container { display:flex!important; justify-content:space-between!important; align-items:center!important; width:100%!important; min-height:76px!important; padding:8px 16px!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header { display:flex!important; align-items:center!important; float:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-header > .navbar-toggle { display:inline-flex!important; align-items:center!important; justify-content:center!important; width:42px!important; height:42px!important; margin:0!important; }
  nav.navbar.navbar-style-one > .site-nav-container .navbar-brand { position:static!important; margin:0 0 0 10px!important; padding:0!important; transform:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-display { display:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container .logo-scrolled { display:block!important; width:min(190px,50vw)!important; max-height:62px!important; height:auto!important; object-fit:contain!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse.collapse { position:fixed!important; top:0!important; bottom:0!important; left:-105%!important; right:auto!important; z-index:9999!important; display:block!important; float:none!important; width:min(380px,88vw)!important; height:100vh!important; max-height:100vh!important; margin:0!important; padding:24px 20px!important; overflow:auto!important; background:#fff!important; box-shadow:12px 0 32px rgba(11,31,58,.18)!important; }
  nav.navbar.navbar-style-one.navbar-responsive > .site-nav-container > .navbar-collapse.collapse,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse.collapse.show,
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse.collapse.in { left:0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > img { display:block!important; width:190px!important; max-height:66px!important; margin:0 0 18px!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > .navbar-toggle { display:inline-flex!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav { display:block!important; float:none!important; width:100%!important; margin:0!important; padding:0!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .navbar-collapse > ul.navbar-nav > li { display:block!important; float:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container > .attr-right { display:none!important; }
}

/* Professional four-column dropdown for products and fabrication services. */
@media (min-width: 1024px) {
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu { position:relative!important; }
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu > ul.brand-mega-menu {
    position:absolute!important; top:calc(100% + 10px)!important; left:50%!important; right:auto!important;
    display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:24px!important;
    width:min(1040px,calc(100vw - 48px))!important; padding:28px 30px!important; margin:0!important;
    border:1px solid #DCE3EA!important; border-top:3px solid #B8202A!important; border-radius:0 0 16px 16px!important;
    background:#fff!important; box-shadow:0 22px 55px rgba(11,31,58,.18)!important;
    transform:translateX(-50%)!important; opacity:0; visibility:hidden; transition:opacity .18s ease,visibility .18s ease;
  }
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu:hover > ul.brand-mega-menu,
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu:focus-within > ul.brand-mega-menu,
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu.open > ul.brand-mega-menu { opacity:1; visibility:visible; }
  nav.navbar.navbar-style-one ul.nav > li.brand-product-menu > ul.brand-mega-menu > li.brand-mega-group {
    display:block!important; float:none!important; width:auto!important; min-width:0!important; margin:0!important; padding:0!important;
  }
  nav.navbar.navbar-style-one .brand-mega-title {
    display:block!important; margin:0 0 12px!important; padding:0 0 11px!important;
    border-bottom:1px solid #DCE3EA!important; color:#0B1F3A!important; font-size:12px!important;
    font-weight:800!important; letter-spacing:.075em!important; line-height:1.4!important;
  }
  nav.navbar.navbar-style-one .brand-mega-links {
    display:flex!important; flex-direction:column!important; gap:3px!important; margin:0!important; padding:0!important; list-style:none!important;
  }
  nav.navbar.navbar-style-one .brand-mega-links > li { display:block!important; float:none!important; width:100%!important; margin:0!important; padding:0!important; }
  nav.navbar.navbar-style-one .brand-mega-links > li > a {
    display:flex!important; align-items:center!important; min-height:38px!important; padding:8px 10px!important;
    border-radius:7px!important; color:#344256!important; font-size:14px!important; font-weight:600!important; line-height:1.35!important;
    white-space:normal!important; text-decoration:none!important; transition:background-color .16s ease,color .16s ease,transform .16s ease!important;
  }
  nav.navbar.navbar-style-one .brand-mega-links > li > a:hover,
  nav.navbar.navbar-style-one .brand-mega-links > li > a:focus-visible {
    color:#B8202A!important; background:#F7F1F2!important; transform:translateX(3px);
  }
}
@media (max-width: 1023px) {
  nav.navbar.navbar-style-one > .site-nav-container .brand-mega-menu { display:none!important; }
  nav.navbar.navbar-style-one > .site-nav-container li.brand-product-menu.on > .brand-mega-menu,
  nav.navbar.navbar-style-one > .site-nav-container li.brand-product-menu.open > .brand-mega-menu { display:block!important; }
  nav.navbar.navbar-style-one > .site-nav-container .brand-mega-group { display:block!important; width:100%!important; margin:0!important; padding:10px 12px!important; }
  nav.navbar.navbar-style-one > .site-nav-container .brand-mega-title { font-size:11px!important; }
  nav.navbar.navbar-style-one > .site-nav-container .brand-mega-links { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:2px 8px!important; }
  nav.navbar.navbar-style-one > .site-nav-container .brand-mega-links > li > a { padding:7px 8px!important; font-size:13px!important; }
}

/* Static SEO content immediately below the home-page banner carousel. */
.welding-seo-section { position:relative; padding:clamp(48px,7vw,88px) 0; background:#F5F7FA; border-bottom:1px solid #E2E8EF; }
.welding-seo-section::before { position:absolute; top:0; left:0; width:100%; height:4px; content:""; background:linear-gradient(90deg,#B8202A 0 16%,#0B1F3A 16% 100%); }
.welding-seo-intro { max-width:900px; margin:0 auto 34px; text-align:center; }
.welding-seo-eyebrow { display:inline-block; margin-bottom:12px; color:#B8202A; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.welding-seo-intro h1 { margin:0 0 16px; color:#0B1F3A; font-size:clamp(30px,4vw,46px); font-weight:800; line-height:1.15; }
.welding-seo-intro p { margin:0 auto 12px; max-width:850px; color:#4B5868; font-size:16px; line-height:1.8; }
.welding-seo-intro .welding-seo-lead { color:#26364A; font-size:18px; line-height:1.65; }
.welding-seo-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.welding-seo-card { min-height:205px; padding:26px 26px 24px; border:1px solid #E0E6ED; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.055); }
.welding-seo-number { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; margin-bottom:17px; border-radius:9px; background:#F8EDEF; color:#B8202A; font-size:13px; font-weight:800; }
.welding-seo-card h2 { margin:0 0 10px; color:#0B1F3A; font-size:19px; font-weight:750; line-height:1.35; }
.welding-seo-card p { margin:0; color:#596575; font-size:14px; line-height:1.7; }
.welding-seo-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:24px; padding:22px 26px; border-radius:10px; background:#0B1F3A; }
.welding-seo-footer p { margin:0; color:#fff; font-size:15px; line-height:1.65; }
.welding-seo-footer p strong { color:#fff; }
.welding-seo-cta { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; gap:10px; min-height:46px; padding:0 20px; border-radius:7px; background:#B8202A; color:#fff!important; font-size:13px; font-weight:800; text-decoration:none!important; transition:background-color .18s ease,transform .18s ease; }
.welding-seo-cta:hover,.welding-seo-cta:focus-visible { background:#961923; color:#fff!important; transform:translateY(-1px); }
@media (max-width:767px) {
  .welding-seo-section { padding:48px 0; }
  .welding-seo-intro { margin-bottom:26px; text-align:left; }
  .welding-seo-intro .welding-seo-lead { font-size:16px; }
  .welding-seo-services { grid-template-columns:1fr; gap:14px; }
  .welding-seo-card { min-height:0; padding:22px; }
  .welding-seo-footer { align-items:flex-start; flex-direction:column; gap:16px; padding:21px; }
}

/* Refined, responsive fabrication SEO section. */
.welding-seo-section { padding:clamp(48px,6vw,82px) 0; background:linear-gradient(180deg,#F7F9FB 0%,#EEF2F6 100%); overflow:hidden; }
.welding-seo-section > .container { max-width:1240px; }
.welding-seo-intro { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr); align-items:center; gap:clamp(28px,5vw,64px); max-width:none; margin:0 auto 38px; text-align:left; }
.welding-seo-copy { max-width:760px; }
.welding-seo-eyebrow { display:inline-flex; align-items:center; gap:9px; margin-bottom:15px; padding:7px 12px; border:1px solid #E3D2D4; border-radius:99px; background:#fff; color:#25364B; font-size:11px; font-weight:800; letter-spacing:.095em; }
.welding-seo-eyebrow > span { width:8px; height:8px; border-radius:50%; background:#B8202A; box-shadow:0 0 0 4px #F8EDEF; }
.welding-seo-eyebrow b { color:#B8202A; }
.welding-seo-intro h1 { margin:0 0 17px; max-width:760px; font-size:clamp(34px,4.2vw,54px); line-height:1.08; letter-spacing:-.035em; }
.welding-seo-intro h1 em { color:#B8202A; font-style:normal; }
.welding-seo-intro p { max-width:760px; margin:0 0 13px; font-size:15px; line-height:1.78; }
.welding-seo-intro .welding-seo-lead { margin-bottom:12px; color:#26364A; font-size:clamp(16px,1.55vw,19px); line-height:1.65; }
.welding-seo-highlight { position:relative; padding:28px 28px 25px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:16px; background:linear-gradient(145deg,#122B4B,#0B1F3A 70%); box-shadow:0 18px 42px rgba(11,31,58,.16); color:#fff; }
.welding-seo-highlight::after { position:absolute; right:-45px; bottom:-75px; width:190px; height:190px; border:1px solid rgba(255,255,255,.11); border-radius:50%; box-shadow:0 0 0 20px rgba(255,255,255,.025),0 0 0 42px rgba(255,255,255,.02); content:""; }
.welding-seo-highlight-icon { display:flex; align-items:center; justify-content:center; width:48px; height:48px; margin-bottom:22px; border-radius:12px; background:#B8202A; color:#fff; font-size:20px; }
.welding-seo-highlight-label { display:block; margin-bottom:8px; color:#F0B5B9; font-size:10px; font-weight:800; letter-spacing:.13em; }
.welding-seo-highlight h2 { position:relative; z-index:1; margin:0 0 17px; color:#fff; font-size:22px; font-weight:750; line-height:1.3; }
.welding-seo-highlight ul { position:relative; z-index:1; display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.welding-seo-highlight li { display:flex; align-items:flex-start; gap:10px; color:#E6ECF3; font-size:13px; line-height:1.5; }
.welding-seo-highlight li i { margin-top:3px; color:#F0B5B9; font-size:11px; }
.welding-seo-services { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.welding-seo-card { position:relative; min-height:220px; padding:25px 25px 24px; border:1px solid #DCE3EA; border-radius:13px; box-shadow:0 8px 22px rgba(11,31,58,.045); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.welding-seo-card::before { position:absolute; top:0; left:25px; width:38px; height:3px; border-radius:0 0 3px 3px; background:#B8202A; content:""; }
.welding-seo-card:hover { transform:translateY(-4px); border-color:#C8D2DD; box-shadow:0 16px 32px rgba(11,31,58,.1); }
.welding-seo-number { width:44px; height:44px; margin-bottom:17px; border:1px solid #F0D9DC; border-radius:11px; font-size:17px; }
.welding-seo-card h2 { font-size:18px; }
.welding-seo-card p { font-size:14px; }
.welding-seo-footer { gap:24px; margin-top:20px; padding:21px 24px; border:1px solid rgba(255,255,255,.08); border-radius:12px; box-shadow:0 10px 25px rgba(11,31,58,.1); }
.welding-seo-cta { min-height:48px; padding:0 22px; border:1px solid #D43A44; border-radius:7px; letter-spacing:.015em; }
@media (max-width: 1100px) {
  .welding-seo-intro { grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr); gap:28px; }
  .welding-seo-highlight { padding:24px; }
  .welding-seo-services { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .welding-seo-section { padding:48px 0; }
  .welding-seo-intro { grid-template-columns:1fr; gap:24px; margin-bottom:28px; }
  .welding-seo-intro h1 { font-size:clamp(32px,9vw,42px); }
  .welding-seo-intro p { font-size:14px; }
  .welding-seo-intro .welding-seo-lead { font-size:16px; }
  .welding-seo-highlight { padding:22px; }
  .welding-seo-highlight-icon { margin-bottom:16px; }
  .welding-seo-services { grid-template-columns:1fr; gap:13px; }
  .welding-seo-card { min-height:0; padding:23px 22px; }
  .welding-seo-footer { align-items:stretch; flex-direction:column; gap:15px; padding:20px; }
  .welding-seo-footer p { font-size:14px; }
  .welding-seo-cta { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  .welding-seo-card,.welding-seo-cta { transition:none!important; }
}

/* Static product collection below the welding SEO section. */
.home-products-section { padding:clamp(52px,7vw,88px) 0; background:#fff; }
.home-products-section > .container { max-width:1240px; }
.home-products-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:30px; }
.home-products-eyebrow { display:block; margin-bottom:8px; color:#B8202A; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.home-products-heading h2 { margin:0 0 9px; color:#0B1F3A; font-size:clamp(30px,3.5vw,42px); font-weight:800; letter-spacing:-.025em; line-height:1.15; }
.home-products-heading p { margin:0; color:#586576; font-size:15px; line-height:1.65; }
.home-products-all { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; gap:10px; min-height:45px; padding:0 18px; border:1px solid #D2DAE3; border-radius:7px; color:#0B1F3A!important; font-size:13px; font-weight:750; text-decoration:none!important; transition:border-color .18s ease,color .18s ease,background .18s ease; }
.home-products-all:hover,.home-products-all:focus-visible { border-color:#B8202A; background:#F8EDEF; color:#A51C25!important; }
.home-products-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.home-product-card { position:relative; display:flex; align-items:center; min-width:0; gap:16px; min-height:124px; padding:20px; overflow:hidden; border:1px solid #DEE5EC; border-radius:11px; background:linear-gradient(135deg,#fff 0%,#FAFBFC 100%); color:inherit!important; text-decoration:none!important; box-shadow:0 5px 18px rgba(11,31,58,.035); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.home-product-card::before { position:absolute; top:0; left:0; width:3px; height:100%; background:#B8202A; content:""; transform:scaleY(0); transform-origin:bottom; transition:transform .2s ease; }
.home-product-card:hover,.home-product-card:focus-visible { transform:translateY(-3px); border-color:#C7D1DC; box-shadow:0 13px 28px rgba(11,31,58,.095); }
.home-product-card:hover::before,.home-product-card:focus-visible::before { transform:scaleY(1); }
.home-product-icon { display:flex; align-items:center; justify-content:center; flex:0 0 48px; width:48px; height:48px; border:1px solid #E5EAF0; border-radius:10px; background:#F1F4F7; color:#0B1F3A; font-size:18px; transition:background .18s ease,color .18s ease; }
.home-product-card:hover .home-product-icon,.home-product-card:focus-visible .home-product-icon { border-color:#B8202A; background:#B8202A; color:#fff; }
.home-product-content { display:grid; min-width:0; gap:6px; }
.home-product-content strong { color:#0B1F3A; font-size:16px; font-weight:750; line-height:1.35; }
.home-product-content small { color:#647182; font-size:13px; line-height:1.5; }
.home-product-arrow { flex:0 0 auto; margin-left:auto; color:#9AA6B4; font-size:19px; transition:color .18s ease,transform .18s ease; }
.home-product-card:hover .home-product-arrow,.home-product-card:focus-visible .home-product-arrow { color:#B8202A; transform:translate(2px,-2px); }
@media (max-width: 991px) {
  .home-products-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .home-products-section { padding:48px 0; }
  .home-products-heading { align-items:flex-start; flex-direction:column; gap:17px; margin-bottom:22px; }
  .home-products-heading p { font-size:14px; }
  .home-products-all { width:100%; }
  .home-products-grid { grid-template-columns:1fr; gap:12px; }
  .home-product-card { min-height:108px; padding:17px; gap:13px; }
  .home-product-icon { flex-basis:42px; width:42px; height:42px; font-size:16px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-products-all,.home-product-card,.home-product-card::before,.home-product-icon,.home-product-arrow { transition:none!important; }
}

/* Product cards: image, title, two-line copy, and clear details action. */
.home-products-grid { align-items:stretch; gap:20px; }
.home-product-card { display:flex; flex-direction:column; align-items:stretch; gap:0; min-height:0; padding:0; overflow:hidden; border:1px solid #DCE3EA; border-radius:13px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.055); }
.home-product-card::before { display:none; }
.home-product-card:hover,.home-product-card:focus-within { transform:translateY(-4px); border-color:#C5D0DC; box-shadow:0 17px 34px rgba(11,31,58,.13); }
.home-product-image { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; background:#102742; }
.home-product-content { display:block; min-width:0; padding:18px 19px 0; }
.home-product-content h3 { margin:0 0 8px; color:#0B1F3A; font-size:18px; font-weight:800; line-height:1.35; }
.home-product-content p { display:-webkit-box; height:2.9em; margin:0; overflow:hidden; color:#647182; font-size:14px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.home-product-details { display:flex; align-items:center; justify-content:space-between; min-height:44px; margin:16px 19px 18px; padding:0 13px; border:1px solid #D7DFE8; border-radius:7px; color:#0B1F3A!important; font-size:13px; font-weight:800; text-decoration:none!important; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.home-product-details span { color:#B8202A; font-size:17px; transition:transform .18s ease; }
.home-product-details:hover,.home-product-details:focus-visible { border-color:#B8202A; background:#B8202A; color:#fff!important; }
.home-product-details:hover span,.home-product-details:focus-visible span { color:#fff; transform:translateX(3px); }
@media (max-width:600px) {
  .home-products-grid { gap:15px; }
  .home-product-image { aspect-ratio:16/9; }
  .home-product-content { padding:16px 16px 0; }
  .home-product-content h3 { font-size:17px; }
  .home-product-details { margin:14px 16px 16px; }
}
.home-product-image--upvc { object-position:center; background:#fff; }
.home-product-details { position:relative; min-height:46px; margin-top:auto; padding:0 12px 0 15px; border:0; border-radius:7px; background:#B8202A; color:#fff!important; letter-spacing:.025em; }
.home-product-details span { display:inline-flex; align-items:center; justify-content:center; width:27px; height:27px; border-radius:50%; background:rgba(255,255,255,.17); color:#fff; font-size:15px; }
.home-product-details:hover,.home-product-details:focus-visible { border:0; background:#0B1F3A; color:#fff!important; }
.home-product-details:hover span,.home-product-details:focus-visible span { color:#fff; background:rgba(255,255,255,.17); transform:translateX(2px); }

/* Fabrication services cards directly below the product collection. */
.home-fabrication-section { padding:clamp(52px,6.5vw,82px) 0; background:#F4F6F8; border-top:1px solid #E3E8EE; }
.home-fabrication-section > .container { max-width:1240px; }
.home-fabrication-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.home-fabrication-eyebrow { display:block; margin-bottom:8px; color:#B8202A; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.home-fabrication-heading h2 { margin:0 0 9px; color:#0B1F3A; font-size:clamp(30px,3.5vw,42px); font-weight:800; letter-spacing:-.025em; line-height:1.15; }
.home-fabrication-heading p { margin:0; color:#586576; font-size:15px; line-height:1.65; }
.home-fabrication-all { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; gap:10px; min-height:45px; padding:0 18px; border:1px solid #CAD4DE; border-radius:7px; background:#fff; color:#0B1F3A!important; font-size:13px; font-weight:750; text-decoration:none!important; transition:all .18s ease; }
.home-fabrication-all:hover,.home-fabrication-all:focus-visible { border-color:#B8202A; background:#B8202A; color:#fff!important; }
.home-fabrication-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:18px; }
.home-fabrication-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid #DDE4EB; border-radius:12px; background:#fff; box-shadow:0 7px 22px rgba(11,31,58,.05); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.home-fabrication-card:hover { transform:translateY(-4px); border-color:#C8D2DD; box-shadow:0 16px 32px rgba(11,31,58,.12); }
.home-fabrication-card > img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:#122842; }
.home-fabrication-card-content { display:flex; flex:1; flex-direction:column; padding:17px 17px 16px; }
.home-fabrication-card-content h3 { margin:0 0 7px; color:#0B1F3A; font-size:17px; font-weight:800; line-height:1.35; }
.home-fabrication-card-content p { display:-webkit-box; min-height:2.9em; margin:0 0 14px; overflow:hidden; color:#647182; font-size:13px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.home-fabrication-details { display:flex; align-items:center; justify-content:space-between; min-height:42px; margin-top:auto; padding:0 11px 0 13px; border-radius:6px; background:#B8202A; color:#fff!important; font-size:12px; font-weight:800; letter-spacing:.025em; text-decoration:none!important; transition:background .18s ease; }
.home-fabrication-details span { display:inline-flex; align-items:center; justify-content:center; width:25px; height:25px; border-radius:50%; background:rgba(255,255,255,.17); color:#fff; font-size:14px; transition:transform .18s ease; }
.home-fabrication-details:hover,.home-fabrication-details:focus-visible { background:#0B1F3A; color:#fff!important; }
.home-fabrication-details:hover span,.home-fabrication-details:focus-visible span { transform:translateX(2px); }
@media (max-width: 991px) { .home-fabrication-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } }
@media (max-width: 600px) {
  .home-fabrication-section { padding:48px 0; }
  .home-fabrication-heading { align-items:flex-start; flex-direction:column; gap:17px; margin-bottom:22px; }
  .home-fabrication-heading p { font-size:14px; }
  .home-fabrication-all { width:100%; }
  .home-fabrication-grid { grid-template-columns:1fr; gap:14px; }
  .home-fabrication-card { display:grid; grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr); align-items:stretch; }
  .home-fabrication-card > img { height:100%; min-height:166px; aspect-ratio:auto; }
  .home-fabrication-card-content { padding:15px 14px; }
  .home-fabrication-card-content h3 { font-size:16px; }
  .home-fabrication-card-content p { min-height:0; font-size:12px; }
}
@media (max-width:380px) {
  .home-fabrication-card { grid-template-columns:1fr; }
  .home-fabrication-card > img { height:auto; min-height:0; aspect-ratio:16/9; }
}
@media (prefers-reduced-motion: reduce) {
  .home-fabrication-card,.home-fabrication-all,.home-fabrication-details,.home-fabrication-details span { transition:none!important; }
}

/* Gates and grills collection follows the fabrication service cards. */
.home-gates-section { background:#fff; border-top:1px solid #E3E8EE; }
.home-gates-grid .home-fabrication-card > img { aspect-ratio:16/10; }
.home-gates-grid .home-gates-motor-image { object-position:82% 88%; }
@media (max-width:600px) {
  .home-gates-grid .home-fabrication-card > img { aspect-ratio:16/9; }
}

/* Roofing and structure cards use an even three-column desktop layout. */
.home-roofing-section { background:#F4F6F8; border-top:1px solid #E3E8EE; }
.home-roofing-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.home-roofing-grid .home-fabrication-card > img { aspect-ratio:16/10; }
@media (max-width:991px) {
  .home-roofing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .home-roofing-grid { grid-template-columns:1fr; }
  .home-roofing-grid .home-fabrication-card > img { aspect-ratio:16/9; }
}

/* Eight image gallery: consistent crops retain an orderly grid at every width. */
.home-photo-gallery-section { padding:clamp(52px,6.5vw,82px) 0; background:#fff; border-top:1px solid #E3E8EE; }
.home-photo-gallery-section > .container { max-width:1240px; }
.home-photo-gallery-heading { margin-bottom:28px; }
.home-photo-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home-photo-gallery-item { position:relative; display:block; min-width:0; overflow:hidden; aspect-ratio:4/3; border:1px solid #DDE4EB; border-radius:10px; background:#0B1F3A; box-shadow:0 7px 22px rgba(11,31,58,.08); }
.home-photo-gallery-item::after { position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent 0%,rgba(5,17,32,.8) 100%); content:""; }
.home-photo-gallery-item img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.home-photo-gallery-item span { position:absolute; z-index:1; right:15px; bottom:14px; left:15px; color:#fff; font-size:14px; font-weight:750; line-height:1.3; text-shadow:0 1px 5px rgba(0,0,0,.3); }
.home-photo-gallery-item:hover img,.home-photo-gallery-item:focus-visible img { transform:scale(1.045); }
.home-photo-gallery-item:focus-visible { outline:3px solid #B8202A; outline-offset:3px; }
@media (max-width:991px) { .home-photo-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; } }
@media (max-width:700px) {
  .home-photo-gallery-section { padding:48px 0; }
  .home-photo-gallery-heading { align-items:flex-start; flex-direction:column; gap:17px; margin-bottom:22px; }
  .home-photo-gallery-heading p { font-size:14px; }
  .home-photo-gallery-heading .home-fabrication-all { width:100%; }
  .home-photo-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .home-photo-gallery-item { border-radius:8px; }
  .home-photo-gallery-item span { right:10px; bottom:10px; left:10px; font-size:12px; }
}
@media (prefers-reduced-motion: reduce) { .home-photo-gallery-item img { transition:none!important; } }
.home-photo-gallery-item { padding:0; color:#fff; font:inherit; text-align:left; cursor:zoom-in; appearance:none; }
.home-photo-lightbox { position:fixed; width:min(92vw,1160px); max-width:92vw; max-height:92vh; margin:auto; padding:14px; overflow:visible; border:1px solid rgba(255,255,255,.2); border-radius:12px; background:#0B1F3A; color:#fff; box-shadow:0 24px 80px rgba(0,0,0,.4); }
.home-photo-lightbox::backdrop { background:rgba(4,13,25,.86); backdrop-filter:blur(3px); }
.home-photo-lightbox > img { display:block; width:100%; max-height:78vh; object-fit:contain; border-radius:7px; }
.home-photo-lightbox-caption { margin:12px 48px 2px 2px; color:#fff; font-size:15px; font-weight:700; }
.home-photo-lightbox-close { position:absolute; z-index:2; top:8px; right:8px; display:grid; width:42px; height:42px; place-items:center; border:1px solid rgba(255,255,255,.32); border-radius:50%; background:#B8202A; color:#fff; font-size:28px; line-height:1; cursor:pointer; }
.home-photo-lightbox-close:hover,.home-photo-lightbox-close:focus-visible { background:#92202A; outline:2px solid #fff; outline-offset:2px; }
@media (max-width:600px) {
  .home-photo-lightbox { width:96vw; max-width:96vw; padding:8px; border-radius:9px; }
  .home-photo-lightbox > img { max-height:76vh; }
}

/* Photo gallery refinements: branded heading, clear image affordances and in-page viewer controls. */
.home-photo-gallery-section { background:#F5F7F9; }
.home-photo-gallery-heading > div { position:relative; padding-left:16px; }
.home-photo-gallery-heading > div::before { position:absolute; top:3px; bottom:4px; left:0; width:4px; border-radius:4px; background:#B8202A; content:""; }
.home-photo-gallery-heading .home-fabrication-eyebrow { letter-spacing:.14em; }
.home-photo-gallery-grid { gap:18px; }
.home-photo-gallery-item { border-color:#D7E0E9; border-radius:12px; box-shadow:0 8px 25px rgba(11,31,58,.09); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.home-photo-gallery-item::before { position:absolute; z-index:2; top:13px; right:13px; padding:7px 10px; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:rgba(11,31,58,.72); color:#fff; content:"View photo  ↗"; font-size:10px; font-weight:750; letter-spacing:.04em; opacity:0; transform:translateY(-3px); transition:opacity .2s ease,transform .2s ease; }
.home-photo-gallery-item::after { z-index:1; inset:45% 0 0; }
.home-photo-gallery-item span { z-index:2; right:17px; bottom:16px; left:17px; font-size:14px; }
.home-photo-gallery-item:hover,.home-photo-gallery-item:focus-visible { transform:translateY(-3px); border-color:#B8202A; box-shadow:0 16px 32px rgba(11,31,58,.16); }
.home-photo-gallery-item:hover::before,.home-photo-gallery-item:focus-visible::before { opacity:1; transform:translateY(0); }
.home-photo-lightbox { width:min(92vw,1180px); max-width:92vw; max-height:94vh; padding:54px 18px 16px; overflow:hidden; border-color:rgba(255,255,255,.22); border-radius:14px; }
.home-photo-lightbox > img { width:100%; max-height:76vh; object-fit:contain; }
.home-photo-lightbox-close { top:9px; right:10px; }
.home-photo-lightbox-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:48px; padding:4px 2px 0; }
.home-photo-lightbox-caption { margin:0; color:#fff; font-size:15px; font-weight:750; }
.home-photo-lightbox-controls { display:flex; align-items:center; gap:12px; }
.home-photo-lightbox-controls button { display:grid; width:36px; height:36px; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:50%; background:rgba(255,255,255,.1); color:#fff; font-size:16px; cursor:pointer; transition:background .18s ease,border-color .18s ease; }
.home-photo-lightbox-controls button:hover,.home-photo-lightbox-controls button:focus-visible { border-color:#B8202A; background:#B8202A; outline:2px solid #fff; outline-offset:2px; }
.home-photo-lightbox-count { min-width:52px; color:#D5DEE9; font-size:12px; font-variant-numeric:tabular-nums; text-align:center; }
@media (max-width:700px) {
  .home-photo-gallery-grid { gap:12px; }
  .home-photo-gallery-item { border-radius:9px; }
  .home-photo-gallery-item::before { top:8px; right:8px; padding:6px 8px; font-size:9px; }
  .home-photo-gallery-item span { right:10px; bottom:10px; left:10px; font-size:12px; }
  .home-photo-lightbox { width:96vw; max-width:96vw; padding:48px 9px 10px; border-radius:10px; }
  .home-photo-lightbox > img { max-height:70vh; }
  .home-photo-lightbox-footer { gap:8px; }
  .home-photo-lightbox-caption { font-size:13px; }
  .home-photo-lightbox-controls { gap:7px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-photo-gallery-item,.home-photo-gallery-item::before,.home-photo-gallery-item img,.home-photo-lightbox-controls button { transition:none!important; }
}

/* Static YouTube video gallery: branded, accessible and responsive. */
.home-video-gallery-section { padding:clamp(52px,6.5vw,82px) 0; background:#0B1F3A; color:#fff; }
.home-video-gallery-section > .container { max-width:1240px; }
.home-video-gallery-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.home-video-gallery-heading .home-fabrication-eyebrow { color:#F06A70; }
.home-video-gallery-heading h2 { margin:0 0 9px; color:#fff; font-size:clamp(30px,3.5vw,42px); font-weight:800; letter-spacing:-.025em; line-height:1.15; }
.home-video-gallery-heading p { margin:0; color:#CBD5E1; font-size:15px; line-height:1.65; }
.home-video-gallery-count { display:inline-flex; flex:0 0 auto; align-items:center; gap:8px; padding:10px 14px; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(255,255,255,.07); color:#fff; font-size:12px; font-weight:750; }
.home-video-gallery-count i { color:#F0444B; font-size:16px; }
.home-video-gallery-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.home-video-card { min-width:0; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:12px; background:#102843; box-shadow:0 12px 30px rgba(0,0,0,.16); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.home-video-card:hover { transform:translateY(-3px); border-color:rgba(240,106,112,.62); box-shadow:0 18px 38px rgba(0,0,0,.24); }
.home-video-frame { overflow:hidden; aspect-ratio:16/9; background:#050E18; }
.home-video-frame iframe { display:block; width:100%; height:100%; border:0; }
.home-video-card-content { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:17px 19px 18px; }
.home-video-card-content > div { min-width:0; }
.home-video-card-content > span { display:none; }
.home-video-card-content h3 { margin:0; color:#fff; font-size:16px; font-weight:750; line-height:1.4; }
.home-video-card-content a { display:inline-flex; flex:0 0 auto; align-items:center; gap:7px; padding:8px 11px; border:1px solid rgba(255,255,255,.2); border-radius:6px; color:#fff!important; font-size:11px; font-weight:700; text-decoration:none!important; white-space:nowrap; transition:background .18s ease,border-color .18s ease; }
.home-video-card-content a:hover,.home-video-card-content a:focus-visible { border-color:#B8202A; background:#B8202A; }
.home-video-card-content a i { color:#F06A70; }
.home-video-card-content a:hover i,.home-video-card-content a:focus-visible i { color:#fff; }
.home-video-gallery-note { margin:17px 0 0; color:#AEBCCC; font-size:12px; line-height:1.55; }
@media (max-width:700px) {
  .home-video-gallery-section { padding:48px 0; }
  .home-video-gallery-heading { align-items:flex-start; flex-direction:column; gap:16px; margin-bottom:22px; }
  .home-video-gallery-heading p { font-size:14px; }
  .home-video-gallery-grid { grid-template-columns:1fr; gap:14px; }
  .home-video-card-content { align-items:flex-start; padding:14px; }
  .home-video-card-content h3 { font-size:15px; }
  .home-video-card-content a { padding:8px 9px; font-size:10px; }
}
@media (prefers-reduced-motion: reduce) { .home-video-card,.home-video-card-content a { transition:none!important; } }
.home-video-card-content > div { min-width:0; }
.home-video-card-content > div > span { display:block; margin:0 0 5px; color:#F06A70; font-size:10px; font-weight:800; letter-spacing:.1em; line-height:1.3; text-transform:uppercase; }
.home-video-gallery-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home-video-card-content { align-items:flex-start; flex-direction:column; gap:13px; padding:15px; }
.home-video-card-content a { width:100%; justify-content:center; }
@media (max-width:991px) {
  .home-video-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-video-card-content { flex-direction:row; align-items:flex-start; }
  .home-video-card-content a { width:auto; }
}
@media (max-width:700px) {
  .home-video-gallery-grid { grid-template-columns:1fr; }
  .home-video-card-content { flex-direction:row; align-items:flex-start; }
}
@media (max-width:420px) {
  .home-video-card-content { flex-direction:column; }
  .home-video-card-content a { width:100%; }
}

/* Google review carousel preview; sample cards are clearly labeled until real reviews are supplied. */
.home-google-reviews-section { padding:clamp(48px,6vw,76px) 0; background:#F4F6F8; border-top:1px solid #E3E8EE; }
.home-google-reviews-section > .container { max-width:1240px; }
.home-google-reviews-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:22px; }
.home-google-reviews-heading h2 { margin:0 0 8px; color:#0B1F3A; font-size:clamp(29px,3.2vw,40px); font-weight:800; letter-spacing:-.025em; line-height:1.15; }
.home-google-reviews-heading p { margin:0; color:#586576; font-size:14px; line-height:1.6; }
.home-reviews-controls { display:flex; flex:0 0 auto; gap:9px; }
.home-reviews-controls button { display:grid; width:42px; height:42px; place-items:center; border:1px solid #CAD4DE; border-radius:50%; background:#fff; color:#0B1F3A; font-size:18px; cursor:pointer; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.home-reviews-controls button:hover,.home-reviews-controls button:focus-visible { border-color:#B8202A; background:#B8202A; color:#fff; }
.home-google-reviews-notice { margin:0 0 15px; padding:10px 13px; border-left:3px solid #B8202A; border-radius:0 6px 6px 0; background:#FFF; color:#586576; font-size:12px; line-height:1.5; }
.home-google-reviews-notice strong { color:#0B1F3A; }
.home-google-reviews-track { display:flex; gap:18px; overflow-x:auto; padding:2px 2px 13px; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#B8202A #E5EAF0; }
.home-google-reviews-track:focus-visible { outline:2px solid #B8202A; outline-offset:3px; }
.home-google-review-card { display:flex; flex:0 0 calc((100% - 36px)/3); min-width:0; flex-direction:column; min-height:222px; padding:20px; scroll-snap-align:start; border:1px solid #DDE4EB; border-radius:11px; background:#fff; box-shadow:0 7px 22px rgba(11,31,58,.055); }
.home-google-review-sample { align-self:flex-start; padding:5px 8px; border-radius:999px; background:#FFF1F1; color:#A61922; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.home-google-review-card > p { flex:1; margin:14px 0 20px; color:#354458; font-size:14px; line-height:1.7; }
.home-google-review-author { display:flex; align-items:center; gap:11px; padding-top:13px; border-top:1px solid #E8EDF2; }
.home-google-review-author > span { display:grid; width:36px; height:36px; flex:0 0 36px; place-items:center; border-radius:50%; background:#0B1F3A; color:#fff; font-size:11px; font-weight:800; }
.home-google-review-author strong,.home-google-review-author small { display:block; }
.home-google-review-author strong { color:#0B1F3A; font-size:12px; font-weight:800; }
.home-google-review-author small { margin-top:3px; color:#788595; font-size:10px; }
.home-google-reviews-link { display:inline-flex; align-items:center; gap:8px; margin-top:13px; color:#0B1F3A!important; font-size:12px; font-weight:800; text-decoration:none!important; }
.home-google-reviews-link span { color:#B8202A; font-size:16px; }
.home-google-reviews-link:hover,.home-google-reviews-link:focus-visible { color:#B8202A!important; }
@media (max-width:991px) { .home-google-review-card { flex-basis:calc((100% - 18px)/2); } }
@media (max-width:600px) {
  .home-google-reviews-section { padding:46px 0; }
  .home-google-reviews-heading { align-items:flex-start; }
  .home-google-reviews-heading p { max-width:270px; font-size:13px; }
  .home-reviews-controls button { width:38px; height:38px; }
  .home-google-review-card { flex-basis:88%; min-height:210px; padding:17px; }
  .home-google-review-card > p { font-size:13px; }
}
@media (prefers-reduced-motion: reduce) { .home-reviews-controls button { transition:none!important; } .home-google-reviews-track { scroll-behavior:auto; } }
.home-google-review-card { flex-basis:calc(33.333% - 12px); }
@media (max-width:991px) { .home-google-review-card { flex-basis:calc(50% - 9px); } }

/* Static latest blog previews with expandable article text. */
.home-latest-blogs-section { padding:clamp(52px,6.5vw,82px) 0; background:#fff; border-top:1px solid #E3E8EE; }
.home-latest-blogs-section > .container { max-width:1240px; }
.home-latest-blogs-heading { margin-bottom:27px; }
.home-latest-blogs-heading h2 { margin:0 0 9px; color:#0B1F3A; font-size:clamp(30px,3.5vw,42px); font-weight:800; letter-spacing:-.025em; line-height:1.15; }
.home-latest-blogs-heading p { margin:0; color:#586576; font-size:15px; line-height:1.65; }
.home-latest-blogs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:20px; }
.home-latest-blog-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid #DDE4EB; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.06); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.home-latest-blog-card:hover { transform:translateY(-3px); border-color:#C8D2DD; box-shadow:0 16px 32px rgba(11,31,58,.12); }
.home-latest-blog-card > img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; background:#0B1F3A; }
.home-latest-blog-content { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:18px; }
.home-latest-blog-category { margin-bottom:10px; padding:5px 8px; border-radius:999px; background:#FFF1F1; color:#A61922; font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.home-latest-blog-content h3 { margin:0 0 9px; color:#0B1F3A; font-size:18px; font-weight:800; line-height:1.4; }
.home-latest-blog-content > p { margin:0 0 17px; color:#647182; font-size:13px; line-height:1.65; }
.home-latest-blog-more { width:100%; margin-top:auto; border-top:1px solid #E7ECF1; }
.home-latest-blog-more summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 0 1px; color:#0B1F3A; font-size:12px; font-weight:800; list-style:none; cursor:pointer; }
.home-latest-blog-more summary::-webkit-details-marker { display:none; }
.home-latest-blog-more summary span { display:grid; width:27px; height:27px; place-items:center; border-radius:50%; background:#B8202A; color:#fff; font-size:15px; transition:transform .18s ease; }
.home-latest-blog-more[open] summary span { transform:rotate(90deg); }
.home-latest-blog-more > div { padding:11px 0 2px; }
.home-latest-blog-more > div p { margin:0; color:#586576; font-size:13px; line-height:1.7; }
@media (max-width:991px) { .home-latest-blogs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } }
@media (max-width:600px) {
  .home-latest-blogs-section { padding:48px 0; }
  .home-latest-blogs-heading { margin-bottom:22px; }
  .home-latest-blogs-heading p { font-size:14px; }
  .home-latest-blogs-grid { grid-template-columns:1fr; gap:15px; }
  .home-latest-blog-card > img { aspect-ratio:16/9; }
  .home-latest-blog-content { padding:16px; }
  .home-latest-blog-content h3 { font-size:17px; }
}

/* Static fabrication guides page */
.fabrication-blog-page { color:#17283e; background:#fff; }
.fabrication-blog-hero { position:relative; overflow:hidden; padding:clamp(54px,7vw,94px) 0; color:#fff; background:linear-gradient(115deg,rgba(7,25,48,.97),rgba(14,43,73,.93)),#0b1f3a; }
.fabrication-blog-hero:after { position:absolute; right:-105px; bottom:-190px; width:390px; height:390px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.035),0 0 0 76px rgba(255,255,255,.025); content:""; pointer-events:none; }
.fabrication-blog-hero .container { position:relative; z-index:1; max-width:1200px; }
.fabrication-blog-breadcrumb { display:flex; align-items:center; gap:10px; margin-bottom:22px; color:rgba(255,255,255,.72); font-size:13px; }
.fabrication-blog-breadcrumb a { color:#fff; text-decoration:none; }
.fabrication-blog-breadcrumb a:hover { color:#ff6b6b; }
.fabrication-blog-eyebrow { display:inline-block; margin-bottom:12px; color:#c62b32; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.fabrication-blog-hero .fabrication-blog-eyebrow { color:#ff8a8e; }
.fabrication-blog-hero h1 { max-width:780px; margin:0 0 15px; color:#fff; font-size:clamp(34px,5vw,58px); font-weight:800; letter-spacing:-.035em; line-height:1.08; }
.fabrication-blog-hero p { max-width:680px; margin:0; color:rgba(255,255,255,.83); font-size:clamp(15px,1.8vw,18px); line-height:1.7; }
.fabrication-blog-hero-link { display:inline-flex; align-items:center; gap:12px; margin-top:25px; padding:13px 18px; border:1px solid rgba(255,255,255,.36); border-radius:6px; color:#fff; font-size:14px; font-weight:700; text-decoration:none; transition:background .2s ease,border-color .2s ease; }
.fabrication-blog-hero-link:hover,.fabrication-blog-hero-link:focus { border-color:#c3262e; background:#c3262e; color:#fff; }
.fabrication-blog-listing { padding:clamp(48px,6vw,76px) 0; background:#f5f7fa; }
.fabrication-blog-listing .container,.fabrication-blog-articles .container { max-width:1200px; }
.fabrication-blog-intro { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:27px; }
.fabrication-blog-intro h2 { margin:0; color:#0b1f3a; font-size:clamp(26px,3.2vw,36px); font-weight:800; letter-spacing:-.025em; line-height:1.2; }
.fabrication-blog-intro p { max-width:410px; margin:0 0 2px; color:#596779; font-size:15px; line-height:1.65; }
.fabrication-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.fabrication-blog-card { min-width:0; overflow:hidden; border:1px solid #e1e6ec; border-radius:11px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.055); transition:transform .2s ease,box-shadow .2s ease; }
.fabrication-blog-card:hover { transform:translateY(-4px); box-shadow:0 16px 32px rgba(11,31,58,.12); }
.fabrication-blog-image { display:block; overflow:hidden; aspect-ratio:16/10; background:#dce2e8; }
.fabrication-blog-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.fabrication-blog-card:hover .fabrication-blog-image img { transform:scale(1.035); }
.fabrication-blog-card-body { padding:22px 22px 24px; }
.fabrication-blog-category { display:inline-flex; align-items:center; min-height:25px; margin-bottom:10px; padding:4px 9px; border-radius:3px; background:#fbeaec; color:#ad2028; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.fabrication-blog-card h2 { margin:0 0 10px; color:#0b1f3a; font-size:20px; font-weight:750; line-height:1.35; }
.fabrication-blog-card h2 a { color:inherit; text-decoration:none; }
.fabrication-blog-card h2 a:hover { color:#b9212a; }
.fabrication-blog-card-body > p { min-height:50px; margin:0 0 17px; color:#596779; font-size:14px; line-height:1.65; }
.fabrication-blog-read { display:inline-flex; align-items:center; gap:10px; color:#b9212a; font-size:14px; font-weight:800; text-decoration:none; }
.fabrication-blog-read:hover { color:#0b1f3a; }
.fabrication-blog-articles { padding:clamp(48px,6vw,76px) 0; background:#fff; }
.fabrication-blog-article { max-width:850px; margin:0 auto 22px; padding:clamp(24px,4vw,42px); border:1px solid #e3e8ee; border-left:4px solid #be252d; border-radius:8px; background:#fff; }
.fabrication-blog-article h2 { margin:0 0 16px; color:#0b1f3a; font-size:clamp(23px,3vw,32px); font-weight:800; line-height:1.25; }
.fabrication-blog-article h3 { margin:24px 0 10px; color:#0b1f3a; font-size:18px; font-weight:750; }
.fabrication-blog-article p,.fabrication-blog-article li { color:#4f5d6d; font-size:15px; line-height:1.8; }
.fabrication-blog-article p { margin:0 0 14px; }
.fabrication-blog-article ul { margin:0 0 16px; padding-left:22px; }
.fabrication-blog-article li { margin:0 0 9px; padding-left:3px; }
.fabrication-blog-article strong { color:#26384c; }
.fabrication-blog-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:850px; margin:32px auto 0; padding:26px 30px; border-radius:9px; background:#0b1f3a; }
.fabrication-blog-cta h2 { margin:0 0 5px; color:#fff; font-size:21px; font-weight:800; }
.fabrication-blog-cta p { margin:0; color:rgba(255,255,255,.76); font-size:14px; }
.fabrication-blog-cta a { flex:0 0 auto; display:inline-flex; align-items:center; gap:10px; padding:12px 17px; border-radius:5px; background:#c3262e; color:#fff; font-size:14px; font-weight:800; text-decoration:none; }
.fabrication-blog-cta a:hover,.fabrication-blog-cta a:focus { background:#a71e25; color:#fff; }
@media (max-width:991px) { .fabrication-blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } .fabrication-blog-card:last-child { grid-column:1/-1; max-width:calc(50% - 8px); } }
@media (max-width:767px) { .fabrication-blog-intro { display:block; } .fabrication-blog-intro p { margin-top:12px; } .fabrication-blog-grid { grid-template-columns:1fr; gap:16px; } .fabrication-blog-card:last-child { grid-column:auto; max-width:none; } .fabrication-blog-card-body > p { min-height:0; } .fabrication-blog-cta { display:block; padding:23px; } .fabrication-blog-cta a { margin-top:17px; } }
@media (prefers-reduced-motion:reduce) { .fabrication-blog-card,.fabrication-blog-image img,.fabrication-blog-hero-link { transition:none; } }

/* Individual static blog detail pages */
.fabrication-blog-detail { color:#263447; background:#fff; }
.fabrication-blog-detail-hero { padding:22px 0 44px; background:linear-gradient(180deg,#f3f6f9 0%,#fff 100%); }
.fabrication-blog-detail-hero > .container { max-width:1100px; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb { color:#768294; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb a { color:#0b1f3a; }
.fabrication-blog-detail-category { display:inline-flex; margin:8px 0 14px; padding:6px 10px; border-radius:4px; background:#fbeaec; color:#ad2028; font-size:11px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.fabrication-blog-detail-hero h1 { max-width:900px; margin:0 0 15px; color:#0b1f3a; font-size:clamp(34px,5vw,54px); font-weight:850; letter-spacing:-.035em; line-height:1.12; }
.fabrication-blog-detail-lead { max-width:820px; margin:0; color:#526174; font-size:clamp(16px,2vw,19px); line-height:1.75; }
.fabrication-blog-detail-byline { display:flex; align-items:center; gap:10px; margin-top:23px; color:#566477; font-size:13px; font-weight:650; }
.fabrication-blog-detail-mark { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:#0b1f3a; color:#fff; font-size:14px; font-weight:850; }
.fabrication-blog-detail-dot { width:4px; height:4px; border-radius:50%; background:#be252d; }
.fabrication-blog-detail-layout { display:grid; grid-template-columns:minmax(0,800px) minmax(230px,290px); align-items:start; gap:38px; max-width:1100px; padding-top:38px; padding-bottom:75px; }
.fabrication-blog-detail-content { min-width:0; }
.fabrication-blog-detail-cover { overflow:hidden; margin:0 0 28px; aspect-ratio:16/8.5; border-radius:10px; background:#dce3ea; }
.fabrication-blog-detail-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.fabrication-blog-detail-prose { color:#48576a; font-size:16px; line-height:1.85; }
.fabrication-blog-detail-prose p { margin:0 0 17px; }
.fabrication-blog-detail-opening { color:#26384c; font-size:18px; font-weight:600; line-height:1.8; }
.fabrication-blog-detail-prose section { padding-top:12px; scroll-margin-top:100px; }
.fabrication-blog-detail-prose h2 { margin:22px 0 12px; color:#0b1f3a; font-size:clamp(23px,3vw,29px); font-weight:850; letter-spacing:-.02em; line-height:1.3; }
.fabrication-blog-detail-prose ul { margin:0 0 22px; padding-left:22px; }
.fabrication-blog-detail-prose li { margin:0 0 9px; padding-left:4px; }
.fabrication-blog-detail-prose li::marker { color:#be252d; }
.fabrication-blog-detail-note { display:flex; gap:13px; margin:27px 0; padding:18px 19px; border:1px solid #e5d0d1; border-left:4px solid #be252d; border-radius:7px; background:#fffafa; }
.fabrication-blog-detail-note > span { flex:0 0 auto; color:#be252d; font-size:18px; }
.fabrication-blog-detail-note p { margin:0; color:#48576a; font-size:14px; line-height:1.7; }
.fabrication-blog-detail-contact { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:34px; padding:23px; border-radius:9px; background:#0b1f3a; }
.fabrication-blog-detail-contact .fabrication-blog-eyebrow { margin-bottom:5px; color:#ff8a8e; }
.fabrication-blog-detail-contact h2 { margin:0 0 5px; color:#fff; font-size:22px; font-weight:850; }
.fabrication-blog-detail-contact p { margin:0; color:#d2dbe5; font-size:13px; line-height:1.6; }
.fabrication-blog-detail-contact > a { display:inline-flex; flex:0 0 auto; align-items:center; gap:10px; padding:12px 15px; border-radius:5px; background:#c3262e; color:#fff; font-size:13px; font-weight:850; text-decoration:none; }
.fabrication-blog-detail-contact > a:hover,.fabrication-blog-detail-contact > a:focus-visible { background:#a71e25; color:#fff; }
.fabrication-blog-detail-sidebar { position:sticky; top:24px; display:grid; gap:15px; }
.fabrication-blog-detail-toc,.fabrication-blog-detail-related { padding:20px; border:1px solid #e1e6ec; border-radius:9px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.045); }
.fabrication-blog-detail-toc h2,.fabrication-blog-detail-related h2 { margin:0 0 14px; color:#0b1f3a; font-size:16px; font-weight:850; }
.fabrication-blog-detail-toc ol { display:grid; gap:10px; margin:0; padding-left:19px; }
.fabrication-blog-detail-toc li { color:#be252d; font-size:12px; line-height:1.5; }
.fabrication-blog-detail-toc a { color:#4d5c6e; font-size:12px; font-weight:650; text-decoration:none; }
.fabrication-blog-detail-toc a:hover { color:#be252d; }
.fabrication-blog-related-link { position:relative; display:block; margin-top:10px; padding:12px 28px 12px 0; border-top:1px solid #e8edf2; text-decoration:none; }
.fabrication-blog-related-link > span:first-child { display:block; margin-bottom:4px; color:#ad2028; font-size:9px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.fabrication-blog-related-link strong { display:block; color:#0b1f3a; font-size:13px; line-height:1.45; }
.fabrication-blog-related-link:hover strong { color:#be252d; }
.fabrication-blog-related-arrow { position:absolute; top:50%; right:0; color:#be252d; font-size:17px; transform:translateY(-50%); }
.fabrication-blog-all-guides { display:flex; justify-content:space-between; margin-top:8px; padding-top:13px; border-top:1px solid #e8edf2; color:#be252d; font-size:12px; font-weight:850; text-decoration:none; }
.fabrication-blog-listing-cta { display:flex; align-items:center; justify-content:space-between; gap:22px; max-width:1200px; margin:0 auto 60px; padding:24px 28px; border-radius:9px; background:#0b1f3a; }
.fabrication-blog-listing-cta h2 { margin:0 0 5px; color:#fff; font-size:20px; font-weight:850; }
.fabrication-blog-listing-cta p { margin:0; color:#d2dbe5; font-size:14px; }
.fabrication-blog-listing-cta a { display:inline-flex; flex:0 0 auto; align-items:center; gap:10px; padding:12px 16px; border-radius:5px; background:#c3262e; color:#fff; font-size:13px; font-weight:850; text-decoration:none; }
@media (max-width:991px) { .fabrication-blog-detail-layout { grid-template-columns:minmax(0,1fr) 250px; gap:24px; } }
@media (max-width:767px) { .fabrication-blog-detail-hero { padding:14px 0 32px; } .fabrication-blog-detail-layout { grid-template-columns:1fr; padding-top:24px; padding-bottom:48px; } .fabrication-blog-detail-sidebar { position:static; grid-row:1; } .fabrication-blog-detail-toc ol { grid-template-columns:1fr; } .fabrication-blog-detail-contact,.fabrication-blog-listing-cta { align-items:flex-start; flex-direction:column; } .fabrication-blog-listing-cta { margin:0 15px 42px; padding:21px; } }

/* Refined editorial treatment for the fabrication article pages */
.fabrication-blog-detail-hero { position:relative; overflow:hidden; padding:18px 0 58px; background:radial-gradient(ellipse at 82% 8%,rgba(54,88,122,.42),transparent 34%),linear-gradient(120deg,#07182d 0%,#0b1f3a 58%,#102d4a 100%); }
.fabrication-blog-detail-hero:after { position:absolute; right:-130px; bottom:-225px; width:460px; height:460px; border:1px solid rgba(255,255,255,.1); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:""; pointer-events:none; }
.fabrication-blog-detail-hero > .container { position:relative; z-index:1; max-width:1200px; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb { margin-bottom:31px; color:rgba(255,255,255,.65); }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb a { color:#fff; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb a:hover { color:#ff777d; }
.fabrication-blog-detail-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; gap:clamp(32px,5vw,70px); }
.fabrication-blog-detail-hero-copy { max-width:640px; }
.fabrication-blog-detail-category { margin:0 0 16px; padding:7px 11px; border:1px solid rgba(255,255,255,.18); background:rgba(190,37,45,.18); color:#ff9a9e; }
.fabrication-blog-detail-hero h1 { margin-bottom:16px; color:#fff; font-size:clamp(36px,4.6vw,57px); }
.fabrication-blog-detail-lead { color:#d5deea; font-size:clamp(15px,1.55vw,17px); line-height:1.75; }
.fabrication-blog-detail-byline { margin-top:22px; color:#fff; }
.fabrication-blog-detail-byline > span:nth-child(2) { display:grid; gap:3px; }
.fabrication-blog-detail-byline strong { color:#fff; font-size:13px; }
.fabrication-blog-detail-byline small { color:#bac7d5; font-size:11px; font-weight:500; }
.fabrication-blog-detail-mark { border:1px solid rgba(255,255,255,.3); background:#be252d; }
.fabrication-blog-detail-start { display:inline-flex; align-items:center; gap:10px; margin-top:24px; padding:11px 15px; border:1px solid rgba(255,255,255,.3); border-radius:5px; color:#fff; font-size:12px; font-weight:850; text-decoration:none; transition:background .2s ease,border-color .2s ease; }
.fabrication-blog-detail-start:hover,.fabrication-blog-detail-start:focus-visible { border-color:#c3262e; background:#c3262e; color:#fff; }
.fabrication-blog-detail-cover { position:relative; overflow:hidden; margin:0; aspect-ratio:4/3; border:5px solid rgba(255,255,255,.12); border-radius:13px; background:#152a40; box-shadow:0 24px 60px rgba(0,0,0,.3); }
.fabrication-blog-detail-cover:after { position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent,rgba(4,15,28,.82)); content:""; pointer-events:none; }
.fabrication-blog-detail-cover img { object-fit:cover; transition:transform .5s ease; }
.fabrication-blog-detail-cover:hover img { transform:scale(1.035); }
.fabrication-blog-detail-cover figcaption { position:absolute; z-index:1; right:22px; bottom:20px; left:22px; display:grid; gap:5px; color:#fff; }
.fabrication-blog-detail-cover figcaption span { color:#ff9a9e; font-size:9px; font-weight:850; letter-spacing:.16em; }
.fabrication-blog-detail-cover figcaption strong { font-size:20px; font-weight:850; }
.fabrication-blog-detail-layout { max-width:1200px; grid-template-columns:minmax(0,800px) minmax(260px,320px); gap:30px; padding-top:45px; padding-bottom:78px; }
.fabrication-blog-detail-content { overflow:hidden; padding:clamp(24px,4vw,48px); border:1px solid #e2e7ed; border-radius:12px; background:#fff; box-shadow:0 12px 36px rgba(11,31,58,.065); scroll-margin-top:25px; }
.fabrication-blog-detail-prose { color:#4f5e70; font-size:16px; line-height:1.85; }
.fabrication-blog-detail-prose section { padding:0 0 22px; margin:0 0 21px; border-bottom:1px solid #e8edf2; scroll-margin-top:30px; }
.fabrication-blog-detail-prose section:last-of-type { padding-bottom:4px; border-bottom:0; }
.fabrication-blog-detail-prose h2 { display:flex; align-items:flex-start; gap:13px; margin:0 0 13px; font-size:clamp(21px,2.5vw,27px); }
.fabrication-blog-section-number { display:inline-grid; flex:0 0 34px; width:34px; height:34px; place-items:center; margin-top:1px; border-radius:7px; background:#fff0f1; color:#b8202a; font-size:11px; font-weight:900; letter-spacing:.03em; }
.fabrication-blog-detail-prose li { padding-left:7px; }
.fabrication-blog-detail-toc,.fabrication-blog-detail-related { padding:22px; border-color:#e1e7ed; border-radius:11px; box-shadow:0 10px 28px rgba(11,31,58,.055); }
.fabrication-blog-detail-toc h2,.fabrication-blog-detail-related h2 { display:flex; align-items:center; gap:9px; font-size:16px; }
.fabrication-blog-detail-toc h2:before,.fabrication-blog-detail-related h2:before { width:4px; height:18px; border-radius:3px; background:#be252d; content:""; }
.fabrication-blog-detail-toc { border-top:3px solid #0b1f3a; }
.fabrication-blog-detail-toc ol { gap:12px; }
.fabrication-blog-detail-toc a { font-size:13px; line-height:1.55; }
.fabrication-blog-detail-related-link { padding-top:14px; padding-bottom:14px; }
.fabrication-blog-detail-related-link strong { font-size:13px; }
.fabrication-blog-detail-side-cta { padding:22px; border-radius:11px; background:linear-gradient(145deg,#0b1f3a,#143957); color:#fff; box-shadow:0 10px 28px rgba(11,31,58,.12); }
.fabrication-blog-detail-side-icon { display:grid; width:39px; height:39px; place-items:center; margin-bottom:15px; border:1px solid rgba(255,255,255,.2); border-radius:9px; background:rgba(255,255,255,.08); color:#ff8a8e; font-size:16px; }
.fabrication-blog-detail-side-cta h2 { margin:0 0 8px; color:#fff; font-size:18px; font-weight:850; line-height:1.35; }
.fabrication-blog-detail-side-cta p { margin:0 0 17px; color:#d0dbe6; font-size:13px; line-height:1.65; }
.fabrication-blog-detail-side-cta a { display:flex; align-items:center; justify-content:space-between; padding-top:13px; border-top:1px solid rgba(255,255,255,.18); color:#fff; font-size:12px; font-weight:850; text-decoration:none; }
.fabrication-blog-detail-side-cta a:hover { color:#ff9a9e; }
.fabrication-blog-detail-contact { margin-top:28px; padding:26px; }
@media (max-width:991px) { .fabrication-blog-detail-hero-grid { grid-template-columns:minmax(0,1fr) minmax(290px,.8fr); gap:25px; } .fabrication-blog-detail-layout { grid-template-columns:minmax(0,1fr) 275px; gap:20px; } }
@media (max-width:767px) { .fabrication-blog-detail-hero { padding:12px 0 38px; } .fabrication-blog-detail-hero .fabrication-blog-breadcrumb { margin-bottom:22px; } .fabrication-blog-detail-hero-grid { grid-template-columns:1fr; gap:24px; } .fabrication-blog-detail-hero h1 { font-size:clamp(34px,9vw,46px); } .fabrication-blog-detail-cover { order:-1; aspect-ratio:16/10; } .fabrication-blog-detail-layout { grid-template-columns:1fr; gap:17px; padding-top:22px; padding-bottom:48px; } .fabrication-blog-detail-sidebar { grid-row:auto; } .fabrication-blog-detail-content { padding:22px 19px; } .fabrication-blog-detail-prose { font-size:15px; } .fabrication-blog-detail-contact { padding:21px; } .fabrication-blog-detail-contact h2 { font-size:20px; } }
@media (prefers-reduced-motion:reduce) { .fabrication-blog-detail-start,.fabrication-blog-detail-cover img { transition:none; } }
@media (prefers-reduced-motion: reduce) { .home-latest-blog-card,.home-latest-blog-more summary span { transition:none!important; } }

/* About Us page: owner profile and fabrication information. */
.about-khushan-page { color:#263447; }
.about-breadcrumb { display:flex; align-items:center; gap:10px; padding-top:15px; padding-bottom:12px; color:#758194; font-size:12px; }
.about-breadcrumb a { color:#0B1F3A; font-weight:700; text-decoration:none; }
.about-breadcrumb a:hover { color:#B8202A; }
.about-owner-hero { overflow:hidden; padding:clamp(34px,5vw,62px) 0 clamp(56px,7vw,88px); background:linear-gradient(120deg,#F4F6F8 0%,#fff 68%,#EDF1F5 100%); }
.about-owner-layout { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; gap:clamp(36px,6vw,82px); }
.about-owner-copy { max-width:620px; }
.about-eyebrow { display:inline-block; margin-bottom:12px; color:#B8202A; font-size:11px; font-weight:850; letter-spacing:.13em; line-height:1.5; text-transform:uppercase; }
.about-owner-copy h1 { max-width:590px; margin:0 0 18px; color:#0B1F3A; font-size:clamp(36px,4.7vw,57px); font-weight:850; letter-spacing:-.04em; line-height:1.08; }
.about-owner-copy > p { margin:0 0 13px; color:#536174; font-size:15px; line-height:1.75; }
.about-owner-copy > .about-owner-lead { color:#263447; font-size:17px; font-weight:600; line-height:1.65; }
.about-owner-nameplate { margin:25px 0 20px; padding:15px 17px; border-left:3px solid #B8202A; border-radius:0 8px 8px 0; background:#fff; box-shadow:0 6px 20px rgba(11,31,58,.055); }
.about-owner-nameplate-label { display:block; margin-bottom:4px; color:#778395; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.about-owner-nameplate h2 { margin:0 0 4px; color:#0B1F3A; font-size:21px; font-weight:850; line-height:1.3; }
.about-owner-nameplate p { margin:0; color:#647182; font-size:13px; }
.about-owner-nameplate p span { padding:0 5px; color:#B8202A; }
.about-owner-actions { display:flex; flex-wrap:wrap; gap:11px; }
.about-button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; gap:10px; padding:0 17px; border:1px solid transparent; border-radius:7px; font-size:12px; font-weight:800; text-decoration:none!important; transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease; }
.about-button-primary { background:#B8202A; color:#fff!important; }
.about-button-primary:hover,.about-button-primary:focus-visible { background:#951B23; color:#fff!important; transform:translateY(-1px); }
.about-button-secondary { border-color:#C8D2DD; background:#fff; color:#0B1F3A!important; }
.about-button-secondary:hover,.about-button-secondary:focus-visible { border-color:#0B1F3A; background:#0B1F3A; color:#fff!important; }
.about-owner-visual { position:relative; width:100%; max-width:520px; min-height:570px; justify-self:end; }
.about-owner-photo { position:absolute; overflow:hidden; margin:0; border:5px solid #fff; border-radius:14px; background:#DCE3EA; box-shadow:0 20px 48px rgba(11,31,58,.17); }
.about-owner-photo-main { top:0; right:0; width:78%; height:84%; }
.about-owner-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.about-owner-photo-main img { object-position:center 25%; }
.about-owner-photo-main figcaption { position:absolute; right:0; bottom:0; left:0; padding:42px 16px 15px; background:linear-gradient(180deg,transparent,rgba(7,20,37,.88)); color:#fff; font-size:14px; font-weight:800; }
.about-owner-photo-main figcaption span { display:block; margin-top:3px; color:#DFE6EE; font-size:11px; font-weight:600; }
.about-owner-photo-secondary { z-index:1; bottom:5%; left:0; width:39%; height:43%; border-width:4px; }
.about-owner-photo-secondary img { object-position:center 30%; }
.about-experience-badge { position:absolute; z-index:2; right:0; bottom:2%; display:flex; min-width:156px; align-items:center; gap:10px; padding:13px 16px; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:#0B1F3A; color:#fff; box-shadow:0 11px 28px rgba(11,31,58,.22); }
.about-experience-badge strong { color:#F06A70; font-size:35px; font-weight:900; line-height:1; }
.about-experience-badge span { color:#EDF2F7; font-size:11px; font-weight:750; line-height:1.35; }
.about-overview-section { padding:clamp(54px,7vw,86px) 0; background:#fff; }
.about-section-heading { max-width:740px; margin-bottom:30px; }
.about-section-heading h2,.about-approach-layout h2,.about-area-layout h2 { margin:0 0 11px; color:#0B1F3A; font-size:clamp(28px,3.4vw,40px); font-weight:850; letter-spacing:-.03em; line-height:1.17; }
.about-section-heading > p,.about-approach-layout > div > p,.about-area-layout > div > p { margin:0; color:#586576; font-size:15px; line-height:1.7; }
.about-service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.about-service-card { min-width:0; padding:19px 18px 17px; border:1px solid #DDE4EB; border-radius:10px; background:#fff; box-shadow:0 6px 20px rgba(11,31,58,.045); }
.about-service-number { display:block; margin-bottom:15px; color:#B8202A; font-size:11px; font-weight:900; letter-spacing:.12em; }
.about-service-card h3 { margin:0 0 8px; color:#0B1F3A; font-size:16px; font-weight:850; line-height:1.35; }
.about-service-card p { min-height:4.5em; margin:0 0 15px; color:#647182; font-size:12px; line-height:1.6; }
.about-service-card a { display:inline-flex; align-items:center; gap:8px; color:#0B1F3A!important; font-size:11px; font-weight:800; text-decoration:none!important; }
.about-service-card a span { color:#B8202A; font-size:15px; transition:transform .18s ease; }
.about-service-card a:hover,.about-service-card a:focus-visible { color:#B8202A!important; }
.about-service-card a:hover span,.about-service-card a:focus-visible span { transform:translateX(3px); }
.about-approach-section { padding:clamp(50px,6.5vw,78px) 0; background:#0B1F3A; }
.about-approach-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:start; gap:clamp(32px,6vw,76px); }
.about-approach-layout .about-eyebrow { color:#F06A70; }
.about-approach-layout h2 { color:#fff; }
.about-approach-layout > div > p { color:#CFD8E3; }
.about-approach-steps { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.about-approach-steps li { display:flex; gap:16px; padding:0 0 18px; }
.about-approach-steps li + li { padding-top:17px; border-top:1px solid rgba(255,255,255,.16); }
.about-approach-steps li > span { display:grid; width:34px; height:34px; flex:0 0 34px; place-items:center; border:1px solid rgba(240,106,112,.55); border-radius:50%; color:#F06A70; font-size:10px; font-weight:850; }
.about-approach-steps h3 { margin:0 0 5px; color:#fff; font-size:15px; font-weight:800; }
.about-approach-steps p { margin:0; color:#C5D0DD; font-size:13px; line-height:1.6; }
.about-area-section { padding:clamp(54px,7vw,84px) 0; background:#F4F6F8; }
.about-area-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); align-items:center; gap:30px; }
.about-area-card { padding:24px; border:1px solid #DDE4EB; border-top:3px solid #B8202A; border-radius:10px; background:#fff; box-shadow:0 10px 28px rgba(11,31,58,.07); }
.about-area-card-label { color:#B8202A; font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.about-area-card h3 { margin:8px 0 7px; color:#0B1F3A; font-size:20px; font-weight:850; line-height:1.35; }
.about-area-card p { margin:0 0 17px; color:#647182; font-size:13px; line-height:1.6; }
@media (max-width:991px) {
  .about-owner-layout { grid-template-columns:minmax(0,1fr) minmax(310px,.85fr); gap:30px; }
  .about-owner-visual { min-height:490px; }
  .about-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .about-approach-layout { grid-template-columns:1fr 1fr; gap:30px; }
}
@media (max-width:700px) {
  .about-owner-hero { padding:30px 0 50px; }
  .about-owner-layout,.about-approach-layout,.about-area-layout { grid-template-columns:1fr; }
  .about-owner-copy { order:1; }
  .about-owner-visual { order:2; width:min(100%,470px); min-height:clamp(390px,110vw,500px); justify-self:center; margin-top:4px; }
  .about-owner-photo-main { width:78%; height:83%; }
  .about-owner-photo-secondary { width:39%; height:42%; }
  .about-experience-badge { min-width:142px; padding:11px 13px; }
  .about-experience-badge strong { font-size:31px; }
  .about-overview-section,.about-area-section { padding:48px 0; }
  .about-section-heading { margin-bottom:23px; }
  .about-service-grid { gap:12px; }
  .about-service-card { padding:16px 14px; }
  .about-service-card p { min-height:0; }
  .about-approach-section { padding:48px 0; }
  .about-area-layout { gap:22px; }
  .about-area-card { padding:20px; }
}
@media (max-width:430px) {
  .about-owner-copy h1 { font-size:35px; }
  .about-owner-actions { flex-direction:column; }
  .about-owner-actions .about-button { width:100%; }
  .about-service-grid { grid-template-columns:1fr; }
  .about-service-card p { margin-bottom:12px; }
}
@media (prefers-reduced-motion: reduce) {
  .about-button,.about-service-card a span { transition:none!important; }
}

/* Photo Gallery page: filterable, uniform image grid with accessible lightbox. */
.fabrication-gallery-page { color:#263447; }
.fabrication-gallery-breadcrumb { display:flex; align-items:center; gap:10px; padding-top:15px; padding-bottom:12px; color:#758194; font-size:12px; }
.fabrication-gallery-breadcrumb a { color:#0B1F3A; font-weight:700; text-decoration:none; }
.fabrication-gallery-breadcrumb a:hover { color:#B8202A; }
.fabrication-gallery-hero { position:relative; overflow:hidden; padding:clamp(50px,7vw,88px) 0; background:linear-gradient(115deg,#0B1F3A 0%,#102B49 68%,#173957 100%); }
.fabrication-gallery-hero::after { position:absolute; top:-140px; right:-70px; width:360px; height:360px; border:1px solid rgba(255,255,255,.09); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.02); content:""; pointer-events:none; }
.fabrication-gallery-hero-inner { position:relative; z-index:1; }
.fabrication-gallery-eyebrow { display:block; margin-bottom:12px; color:#F06A70; font-size:11px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.fabrication-gallery-hero h1 { max-width:760px; margin:0 0 13px; color:#fff; font-size:clamp(36px,5vw,56px); font-weight:850; letter-spacing:-.035em; line-height:1.1; }
.fabrication-gallery-hero p { max-width:700px; margin:0 0 22px; color:#D1DBE7; font-size:16px; line-height:1.7; }
.fabrication-gallery-cta { display:inline-flex; min-height:45px; align-items:center; gap:10px; padding:0 16px; border:1px solid rgba(255,255,255,.24); border-radius:7px; background:#B8202A; color:#fff!important; font-size:12px; font-weight:800; text-decoration:none!important; transition:background .18s ease,transform .18s ease; }
.fabrication-gallery-cta:hover,.fabrication-gallery-cta:focus-visible { background:#951B23; color:#fff!important; transform:translateY(-1px); }
.fabrication-gallery-content { padding:clamp(40px,5.5vw,68px) 0 clamp(56px,7vw,84px); background:#F4F6F8; }
.fabrication-gallery-toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:19px; }
.fabrication-gallery-section-label { color:#0B1F3A; font-size:14px; font-weight:850; }
.fabrication-gallery-toolbar p { margin:4px 0 0; color:#6B7787; font-size:12px; }
.fabrication-gallery-total { display:inline-flex; align-items:center; gap:5px; color:#6B7787; font-size:12px; }
.fabrication-gallery-total strong { color:#0B1F3A; font-size:15px; }
.fabrication-gallery-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px; }
.fabrication-gallery-filters button { min-height:37px; padding:0 13px; border:1px solid #D2DBE4; border-radius:999px; background:#fff; color:#425166; font-size:11px; font-weight:750; cursor:pointer; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.fabrication-gallery-filters button:hover,.fabrication-gallery-filters button:focus-visible { border-color:#B8202A; color:#B8202A; }
.fabrication-gallery-filters button.is-active { border-color:#0B1F3A; background:#0B1F3A; color:#fff; }
.fabrication-gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px; }
.fabrication-gallery-item { position:relative; display:block; min-width:0; overflow:hidden; padding:0; aspect-ratio:4/3; border:1px solid #D9E1E9; border-radius:10px; background:#0B1F3A; box-shadow:0 7px 20px rgba(11,31,58,.07); color:#fff; font:inherit; text-align:left; cursor:zoom-in; appearance:none; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.fabrication-gallery-item[hidden] { display:none!important; }
.fabrication-gallery-item img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.fabrication-gallery-item-overlay { position:absolute; z-index:1; inset:38% 0 0; background:linear-gradient(180deg,transparent,rgba(5,17,32,.84)); }
.fabrication-gallery-item-title { position:absolute; z-index:2; right:14px; bottom:14px; left:14px; color:#fff; font-size:13px; font-weight:800; line-height:1.35; text-shadow:0 1px 5px rgba(0,0,0,.35); }
.fabrication-gallery-item-view { position:absolute; z-index:2; top:11px; right:11px; display:flex; align-items:center; gap:5px; padding:6px 8px; border:1px solid rgba(255,255,255,.3); border-radius:999px; background:rgba(11,31,58,.75); color:#fff; font-size:9px; font-weight:800; opacity:0; transform:translateY(-3px); transition:opacity .18s ease,transform .18s ease; }
.fabrication-gallery-item-view span { color:#F06A70; font-size:12px; }
.fabrication-gallery-item:hover,.fabrication-gallery-item:focus-visible { transform:translateY(-3px); border-color:#B8202A; box-shadow:0 14px 28px rgba(11,31,58,.15); }
.fabrication-gallery-item:hover img,.fabrication-gallery-item:focus-visible img { transform:scale(1.045); }
.fabrication-gallery-item:hover .fabrication-gallery-item-view,.fabrication-gallery-item:focus-visible .fabrication-gallery-item-view { opacity:1; transform:translateY(0); }
.fabrication-gallery-item:focus-visible { outline:3px solid #B8202A; outline-offset:3px; }
.fabrication-gallery-empty { margin:20px 0 0; color:#647182; font-size:14px; }
.fabrication-gallery-lightbox { position:fixed; width:min(92vw,1180px); max-width:92vw; max-height:94vh; margin:auto; padding:54px 18px 16px; overflow:hidden; border:1px solid rgba(255,255,255,.22); border-radius:14px; background:#0B1F3A; color:#fff; box-shadow:0 24px 80px rgba(0,0,0,.4); }
.fabrication-gallery-lightbox::backdrop { background:rgba(4,13,25,.86); backdrop-filter:blur(3px); }
.fabrication-gallery-lightbox > img { display:block; width:100%; max-height:76vh; object-fit:contain; border-radius:7px; }
.fabrication-gallery-lightbox-close { position:absolute; top:9px; right:10px; z-index:2; display:grid; width:42px; height:42px; place-items:center; border:1px solid rgba(255,255,255,.32); border-radius:50%; background:#B8202A; color:#fff; font-size:28px; line-height:1; cursor:pointer; }
.fabrication-gallery-lightbox-close:hover,.fabrication-gallery-lightbox-close:focus-visible { background:#951B23; outline:2px solid #fff; outline-offset:2px; }
.fabrication-gallery-lightbox-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:48px; padding:4px 2px 0; }
.fabrication-gallery-lightbox-caption { margin:0; color:#fff; font-size:15px; font-weight:750; }
.fabrication-gallery-lightbox-controls { display:flex; align-items:center; gap:12px; }
.fabrication-gallery-lightbox-controls button { display:grid; width:36px; height:36px; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:50%; background:rgba(255,255,255,.1); color:#fff; font-size:16px; cursor:pointer; }
.fabrication-gallery-lightbox-controls button:hover,.fabrication-gallery-lightbox-controls button:focus-visible { border-color:#B8202A; background:#B8202A; outline:2px solid #fff; outline-offset:2px; }
.fabrication-gallery-lightbox-count { min-width:52px; color:#D5DEE9; font-size:12px; font-variant-numeric:tabular-nums; text-align:center; }
@media (max-width:991px) { .fabrication-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; } }
@media (max-width:700px) {
  .fabrication-gallery-hero { padding:48px 0; }
  .fabrication-gallery-hero p { font-size:14px; }
  .fabrication-gallery-content { padding:40px 0 54px; }
  .fabrication-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
  .fabrication-gallery-item { border-radius:8px; }
  .fabrication-gallery-item-title { right:9px; bottom:10px; left:9px; font-size:11px; }
  .fabrication-gallery-item-view { top:7px; right:7px; padding:5px 7px; font-size:8px; }
  .fabrication-gallery-lightbox { width:96vw; max-width:96vw; padding:48px 9px 10px; border-radius:10px; }
  .fabrication-gallery-lightbox > img { max-height:70vh; }
  .fabrication-gallery-lightbox-footer { gap:8px; }
  .fabrication-gallery-lightbox-caption { font-size:13px; }
  .fabrication-gallery-lightbox-controls { gap:7px; }
}
@media (max-width:420px) {
  .fabrication-gallery-toolbar { align-items:flex-start; }
  .fabrication-gallery-filters { flex-wrap:nowrap; overflow-x:auto; padding:2px 2px 8px; }
  .fabrication-gallery-filters button { flex:0 0 auto; }
}
@media (prefers-reduced-motion: reduce) {
  .fabrication-gallery-cta,.fabrication-gallery-filters button,.fabrication-gallery-item,.fabrication-gallery-item img,.fabrication-gallery-item-view { transition:none!important; }
}

/* Video Gallery page: responsive YouTube embeds and search-friendly page content. */
.fabrication-video-page { color:#263447; }
.fabrication-video-breadcrumb { display:flex; align-items:center; gap:10px; padding-top:15px; padding-bottom:12px; color:#758194; font-size:12px; }
.fabrication-video-breadcrumb a { color:#0B1F3A; font-weight:700; text-decoration:none; }
.fabrication-video-breadcrumb a:hover { color:#B8202A; }
.fabrication-video-hero { position:relative; overflow:hidden; padding:clamp(50px,7vw,84px) 0; background:linear-gradient(115deg,#0B1F3A 0%,#102B49 68%,#173957 100%); }
.fabrication-video-hero::after { position:absolute; top:-140px; right:-70px; width:360px; height:360px; border:1px solid rgba(255,255,255,.09); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.02); content:""; pointer-events:none; }
.fabrication-video-hero-inner { position:relative; z-index:1; }
.fabrication-video-eyebrow { display:block; margin-bottom:11px; color:#F06A70; font-size:11px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.fabrication-video-hero h1 { max-width:820px; margin:0 0 13px; color:#fff; font-size:clamp(35px,5vw,55px); font-weight:850; letter-spacing:-.035em; line-height:1.1; }
.fabrication-video-hero p { max-width:720px; margin:0 0 22px; color:#D1DBE7; font-size:16px; line-height:1.7; }
.fabrication-video-cta { display:inline-flex; min-height:45px; align-items:center; gap:10px; padding:0 16px; border:1px solid rgba(255,255,255,.2); border-radius:7px; background:#B8202A; color:#fff!important; font-size:12px; font-weight:800; text-decoration:none!important; transition:background .18s ease,transform .18s ease; }
.fabrication-video-cta:hover,.fabrication-video-cta:focus-visible { background:#951B23; color:#fff!important; transform:translateY(-1px); }
.fabrication-video-content { padding:clamp(38px,5vw,60px) 0 clamp(54px,7vw,82px); background:#F4F6F8; }
.fabrication-video-notice { display:flex; align-items:center; gap:12px; margin:0 0 20px; padding:13px 15px; border:1px solid #E3C5C7; border-left:3px solid #B8202A; border-radius:8px; background:#fff; }
.fabrication-video-notice > i { flex:0 0 auto; color:#B8202A; font-size:20px; }
.fabrication-video-notice p { margin:0; color:#586576; font-size:12px; line-height:1.6; }
.fabrication-video-notice strong { color:#0B1F3A; }
.fabrication-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:20px; }
.fabrication-video-card { min-width:0; overflow:hidden; border:1px solid #DCE3EA; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(11,31,58,.065); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.fabrication-video-card:hover { transform:translateY(-3px); border-color:#C6D1DD; box-shadow:0 16px 34px rgba(11,31,58,.13); }
.fabrication-video-frame { overflow:hidden; aspect-ratio:16/9; background:#071424; }
.fabrication-video-frame iframe { display:block; width:100%; height:100%; border:0; }
.fabrication-video-card-body { padding:18px 19px 19px; }
.fabrication-video-category { display:inline-block; margin-bottom:8px; padding:5px 8px; border-radius:999px; background:#FFF1F1; color:#A61922; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.fabrication-video-card-body h2 { margin:0 0 7px; color:#0B1F3A; font-size:18px; font-weight:850; line-height:1.35; }
.fabrication-video-card-body p { margin:0 0 14px; color:#647182; font-size:13px; line-height:1.6; }
.fabrication-video-card-body > a { display:inline-flex; align-items:center; gap:8px; padding:8px 11px; border:1px solid #D6DEE7; border-radius:6px; color:#0B1F3A!important; font-size:11px; font-weight:800; text-decoration:none!important; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.fabrication-video-card-body > a span { color:#B8202A; font-size:14px; }
.fabrication-video-card-body > a:hover,.fabrication-video-card-body > a:focus-visible { border-color:#B8202A; background:#B8202A; color:#fff!important; }
.fabrication-video-card-body > a:hover span,.fabrication-video-card-body > a:focus-visible span { color:#fff; }
.fabrication-video-contact { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:30px; padding:24px; border-radius:10px; background:#0B1F3A; }
.fabrication-video-contact .fabrication-video-eyebrow { margin-bottom:6px; }
.fabrication-video-contact h2 { margin:0 0 6px; color:#fff; font-size:21px; font-weight:850; line-height:1.3; }
.fabrication-video-contact p { margin:0; color:#CBD5E1; font-size:13px; line-height:1.6; }
.fabrication-video-contact .fabrication-video-cta { flex:0 0 auto; }
@media (max-width:700px) {
  .fabrication-video-hero { padding:48px 0; }
  .fabrication-video-hero p { font-size:14px; }
  .fabrication-video-content { padding:38px 0 52px; }
  .fabrication-video-grid { grid-template-columns:1fr; gap:15px; }
  .fabrication-video-card-body { padding:16px; }
  .fabrication-video-contact { align-items:flex-start; flex-direction:column; gap:16px; margin-top:22px; padding:19px; }
}
@media (prefers-reduced-motion: reduce) { .fabrication-video-cta,.fabrication-video-card,.fabrication-video-card-body > a { transition:none!important; } }
.fabrication-video-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:991px) { .fabrication-video-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Alternate light editorial style for blog articles */
.fabrication-blog-detail-hero { padding:18px 0 52px; background:linear-gradient(180deg,#f5f7fa 0%,#fff 100%); }
.fabrication-blog-detail-hero:after { display:none; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb { color:#718095; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb a { color:#0b1f3a; }
.fabrication-blog-detail-hero .fabrication-blog-breadcrumb a:hover { color:#b8202a; }
.fabrication-blog-detail-hero-grid { grid-template-columns:minmax(0,1fr) minmax(390px,.92fr); gap:clamp(38px,6vw,84px); }
.fabrication-blog-detail-category { border-color:#f2d1d3; background:#fff; color:#b8202a; }
.fabrication-blog-detail-hero h1 { color:#0b1f3a; }
.fabrication-blog-detail-lead { color:#586779; }
.fabrication-blog-detail-byline { color:#526174; }
.fabrication-blog-detail-byline strong { color:#0b1f3a; }
.fabrication-blog-detail-byline small { color:#718095; }
.fabrication-blog-detail-mark { border:0; background:#0b1f3a; }
.fabrication-blog-detail-start { border-color:#0b1f3a; background:#0b1f3a; color:#fff; }
.fabrication-blog-detail-start:hover,.fabrication-blog-detail-start:focus-visible { border-color:#b8202a; background:#b8202a; }
.fabrication-blog-detail-cover { border:0; border-radius:4px 18px 4px 18px; box-shadow:0 22px 52px rgba(11,31,58,.15); }
.fabrication-blog-detail-cover:before { position:absolute; z-index:2; top:16px; left:16px; width:56px; height:5px; background:#c3262e; content:""; }
.fabrication-blog-detail-layout { background:#f5f7fa; }
.fabrication-blog-detail-content { border:0; border-radius:4px; box-shadow:0 4px 22px rgba(11,31,58,.045); }
.fabrication-blog-detail-prose section { border-color:#edf0f4; }
.fabrication-blog-detail-prose h2 { color:#102640; }
.fabrication-blog-section-number { border-radius:50%; background:#0b1f3a; color:#fff; }
.fabrication-blog-detail-note { border-color:#e3e8ee; border-left-color:#c3262e; border-radius:4px; background:#f7f9fb; }
.fabrication-blog-detail-contact { border-radius:4px; background:#f1f4f7; }
.fabrication-blog-detail-contact h2 { color:#0b1f3a; }
.fabrication-blog-detail-contact p { color:#596779; }
.fabrication-blog-detail-contact > a { border-radius:4px; background:#b8202a; }
.fabrication-blog-detail-toc,.fabrication-blog-detail-related { border-radius:4px; box-shadow:0 4px 18px rgba(11,31,58,.04); }
.fabrication-blog-detail-toc { border-top:0; border-left:3px solid #0b1f3a; }
.fabrication-blog-detail-side-cta { border-radius:4px; background:#fff; color:#0b1f3a; box-shadow:0 4px 18px rgba(11,31,58,.05); }
.fabrication-blog-detail-side-cta h2 { color:#0b1f3a; }
.fabrication-blog-detail-side-cta p { color:#596779; }
.fabrication-blog-detail-side-icon { border-color:#f2d1d3; background:#fff4f4; color:#b8202a; }
.fabrication-blog-detail-side-cta a { border-color:#e6ebf0; color:#b8202a; }
.fabrication-blog-detail-side-cta a:hover { color:#0b1f3a; }
@media (max-width:991px) { .fabrication-blog-detail-hero-grid { grid-template-columns:minmax(0,1fr) minmax(300px,.85fr); gap:28px; } }
@media (max-width:767px) { .fabrication-blog-detail-hero { padding-bottom:36px; } .fabrication-blog-detail-hero-grid { grid-template-columns:1fr; gap:22px; } .fabrication-blog-detail-cover { border-radius:4px 14px 4px 14px; } }

/* Database-driven related reading carousel on blog detail pages */
.recent-blogs-section { padding:clamp(48px,7vw,82px) 0; background:#f4f6f8; }
.recent-blogs-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.recent-blogs-kicker { display:inline-block; margin-bottom:8px; color:#b8202a; font-size:12px; font-weight:800; letter-spacing:.14em; }
.recent-blogs-heading h2 { margin:0 0 8px; color:#0b1f3a; font-size:clamp(26px,3vw,36px); font-weight:800; line-height:1.2; }
.recent-blogs-heading p { margin:0; color:#5c6878; font-size:15px; line-height:1.6; }
.recent-blogs-controls { display:flex; flex:0 0 auto; gap:10px; }
.recent-blogs-controls button { display:grid; width:44px; height:44px; place-items:center; border:1px solid #d5dce4; border-radius:50%; background:#fff; color:#0b1f3a; cursor:pointer; transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.recent-blogs-controls button:hover { transform:translateY(-2px); border-color:#b8202a; background:#b8202a; color:#fff; }
.recent-blog-card { height:100%; overflow:hidden; border:1px solid #e5e9ee; border-radius:12px; background:#fff; box-shadow:0 8px 26px rgba(11,31,58,.06); transition:transform .25s ease,box-shadow .25s ease; }
.recent-blog-card:hover { transform:translateY(-4px); box-shadow:0 16px 34px rgba(11,31,58,.12); }
.recent-blog-image { display:block; height:220px; overflow:hidden; background:#dfe5eb; }
.recent-blog-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.recent-blog-card:hover .recent-blog-image img { transform:scale(1.04); }
.recent-blog-copy { padding:20px 21px 22px; }
.recent-blog-date { display:inline-flex; align-items:center; gap:7px; color:#758194; font-size:12px; font-weight:700; }
.recent-blog-copy h3 { display:-webkit-box; overflow:hidden; margin:11px 0 9px; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#0b1f3a; font-size:19px; font-weight:750; line-height:1.4; }
.recent-blog-copy h3 a { color:inherit; text-decoration:none; }
.recent-blog-copy h3 a:hover { color:#b8202a; }
.recent-blog-copy p { display:-webkit-box; min-height:48px; overflow:hidden; margin:0 0 17px; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#5c6878; font-size:14px; line-height:1.7; }
.recent-blog-link { display:inline-flex; align-items:center; gap:9px; color:#b8202a; font-size:13px; font-weight:800; text-decoration:none; }
.recent-blog-link i { transition:transform .2s ease; }
.recent-blog-link:hover { color:#0b1f3a; }
.recent-blog-link:hover i { transform:translateX(4px); }
.recent-blogs-swiper { padding:0 1px 8px; }
@media (max-width:575px) { .recent-blogs-heading { align-items:flex-start; } .recent-blogs-heading p { max-width:280px; font-size:14px; } .recent-blogs-controls { gap:7px; } .recent-blogs-controls button { width:39px; height:39px; } .recent-blog-image { height:205px; } .recent-blog-copy { padding:18px; } }

/* Contact page: clear enquiry path and accessible brand styling */
.khushan-contact-page { color:#263447; background:#fff; }
.khushan-contact-hero { position:relative; overflow:hidden; padding:18px 0 58px; background:linear-gradient(135deg,#f4f7fa 0%,#fff 58%,#eef2f6 100%); }
.khushan-contact-hero:after { position:absolute; right:-130px; bottom:-230px; width:470px; height:470px; border:1px solid rgba(11,31,58,.08); border-radius:50%; box-shadow:0 0 0 40px rgba(11,31,58,.025),0 0 0 80px rgba(11,31,58,.018); content:""; pointer-events:none; }
.khushan-contact-hero > .container { position:relative; z-index:1; max-width:1200px; }
.khushan-contact-breadcrumb { display:flex; align-items:center; gap:10px; margin-bottom:28px; color:#7b8796; font-size:12px; }
.khushan-contact-breadcrumb a { color:#0b1f3a; font-weight:700; text-decoration:none; }
.khushan-contact-breadcrumb a:hover { color:#b8202a; }
.khushan-contact-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; gap:clamp(34px,5vw,72px); }
.khushan-contact-hero-copy { max-width:630px; }
.khushan-contact-eyebrow { display:inline-block; margin-bottom:12px; color:#b8202a; font-size:11px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.khushan-contact-hero h1 { margin:0 0 16px; color:#0b1f3a; font-size:clamp(36px,4.8vw,58px); font-weight:850; letter-spacing:-.04em; line-height:1.08; }
.khushan-contact-hero-copy > p { max-width:570px; margin:0; color:#586779; font-size:16px; line-height:1.75; }
.khushan-contact-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:24px; }
.khushan-contact-primary,.khushan-contact-call { display:inline-flex; min-height:46px; align-items:center; justify-content:center; gap:11px; padding:0 17px; border-radius:5px; font-size:12px; font-weight:850; text-decoration:none!important; transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease; }
.khushan-contact-primary { background:#b8202a; color:#fff!important; }
.khushan-contact-primary:hover,.khushan-contact-primary:focus-visible { background:#951b23; color:#fff!important; transform:translateY(-1px); }
.khushan-contact-call { border:1px solid #d4dce5; background:#fff; color:#0b1f3a!important; }
.khushan-contact-call:hover,.khushan-contact-call:focus-visible { border-color:#0b1f3a; background:#0b1f3a; color:#fff!important; }
.khushan-contact-call i { color:#b8202a; }
.khushan-contact-owner { display:flex; align-items:center; gap:11px; margin-top:28px; }
.khushan-contact-owner-mark { display:grid; width:39px; height:39px; place-items:center; border-radius:50%; background:#0b1f3a; color:#fff; font-size:15px; font-weight:900; }
.khushan-contact-owner > span:last-child { display:grid; gap:3px; }
.khushan-contact-owner strong { color:#0b1f3a; font-size:13px; }
.khushan-contact-owner small { color:#6c7989; font-size:11px; }
.khushan-contact-visual { position:relative; overflow:hidden; margin:0; aspect-ratio:4/3; border:5px solid #fff; border-radius:5px 18px 5px 18px; background:#152a40; box-shadow:0 22px 52px rgba(11,31,58,.15); }
.khushan-contact-visual:after { position:absolute; inset:38% 0 0; background:linear-gradient(180deg,transparent,rgba(4,15,28,.84)); content:""; }
.khushan-contact-visual img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.khushan-contact-visual:hover img { transform:scale(1.035); }
.khushan-contact-visual figcaption { position:absolute; z-index:1; right:22px; bottom:21px; left:22px; display:grid; gap:5px; color:#fff; }
.khushan-contact-visual figcaption span { color:#ff9a9e; font-size:9px; font-weight:900; letter-spacing:.15em; }
.khushan-contact-visual figcaption strong { max-width:350px; font-size:20px; font-weight:850; line-height:1.3; }
.khushan-contact-details { padding:25px 0; background:#0b1f3a; }
.khushan-contact-detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; max-width:1200px; }
.khushan-contact-detail-card { display:flex; min-width:0; align-items:flex-start; gap:13px; padding:17px; border:1px solid rgba(255,255,255,.12); border-radius:7px; background:rgba(255,255,255,.045); }
.khushan-contact-detail-icon { display:grid; flex:0 0 37px; width:37px; height:37px; place-items:center; border-radius:6px; background:rgba(255,255,255,.1); color:#ff9297; font-size:14px; }
.khushan-contact-detail-card > div { min-width:0; display:grid; gap:5px; }
.khushan-contact-detail-label { color:#b8c5d3; font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.khushan-contact-detail-card a { overflow-wrap:anywhere; color:#fff; font-size:13px; font-weight:750; line-height:1.5; text-decoration:none; }
.khushan-contact-detail-card a:hover { color:#ff9a9e; }
.khushan-contact-detail-card .khushan-contact-detail-secondary { color:#c6d0dc; font-size:11px; font-weight:600; }
.khushan-contact-detail-card p { margin:0; color:#fff; font-size:12px; line-height:1.6; }
.khushan-contact-main { padding:clamp(48px,6vw,78px) 0; background:#f5f7fa; }
.khushan-contact-main-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); align-items:start; gap:clamp(28px,5vw,70px); max-width:1200px; }
.khushan-contact-form-intro { padding-top:15px; }
.khushan-contact-form-intro h2 { max-width:420px; margin:0 0 13px; color:#0b1f3a; font-size:clamp(28px,3.6vw,40px); font-weight:850; letter-spacing:-.03em; line-height:1.16; }
.khushan-contact-form-intro > p { max-width:475px; margin:0; color:#596779; font-size:14px; line-height:1.8; }
.khushan-contact-prompt { display:flex; align-items:flex-start; gap:12px; margin-top:25px; padding:15px; border:1px solid #e0e6ed; border-radius:7px; background:#fff; }
.khushan-contact-prompt-icon { display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; border-radius:6px; background:#fff0f1; color:#b8202a; font-size:13px; }
.khushan-contact-prompt strong { color:#0b1f3a; font-size:12px; }
.khushan-contact-prompt p { margin:4px 0 0; color:#657285; font-size:11px; line-height:1.6; }
.khushan-contact-whatsapp { display:flex; align-items:center; gap:12px; margin-top:14px; padding:15px; border:1px solid #dce7e1; border-radius:7px; background:#fff; color:#263447; text-decoration:none; transition:border-color .18s ease,transform .18s ease; }
.khushan-contact-whatsapp:hover { border-color:#1ca765; color:#263447; transform:translateY(-1px); }
.khushan-contact-whatsapp > i { display:grid; flex:0 0 37px; width:37px; height:37px; place-items:center; border-radius:50%; background:#e9f8ef; color:#16864f; font-size:20px; }
.khushan-contact-whatsapp > span:nth-child(2) { display:grid; flex:1; gap:3px; }
.khushan-contact-whatsapp strong { color:#0b1f3a; font-size:12px; }
.khushan-contact-whatsapp small { color:#687688; font-size:11px; }
.khushan-contact-whatsapp-arrow { color:#16864f; font-size:18px; }
.khushan-contact-form-card { padding:clamp(22px,3vw,34px); border:1px solid #e1e7ed; border-radius:9px; background:#fff; box-shadow:0 12px 35px rgba(11,31,58,.07); }
.khushan-contact-form-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:22px; padding-bottom:15px; border-bottom:1px solid #e9edf2; }
.khushan-contact-form-heading > span { color:#0b1f3a; font-size:12px; font-weight:900; letter-spacing:.12em; }
.khushan-contact-form-heading p { margin:0; color:#748092; font-size:10px; }
.khushan-contact-form-heading b,.khushan-contact-field label b { color:#b8202a; }
.khushan-contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 14px; }
.khushan-contact-field { min-width:0; }
.khushan-contact-field-wide { grid-column:1/-1; }
.khushan-contact-field label { display:block; margin:0 0 7px; color:#24374d; font-size:11px; font-weight:800; }
.khushan-contact-form .form-control { width:100%; min-height:46px; padding:11px 12px; border:1px solid #dce3ea; border-radius:5px; outline:0; background:#fbfcfd; box-shadow:none; color:#17283e; font-size:13px; }
.khushan-contact-form textarea.form-control { min-height:126px; resize:vertical; }
.khushan-contact-form .form-control::placeholder { color:#98a3b1; }
.khushan-contact-form .form-control:focus { border-color:#0b1f3a; background:#fff; box-shadow:0 0 0 3px rgba(11,31,58,.08); }
.khushan-contact-submit-row { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:2px; }
.khushan-contact-submit { display:inline-flex; min-height:47px; align-items:center; justify-content:center; gap:18px; padding:0 18px; border:0; border-radius:5px; background:#b8202a; color:#fff; font-size:12px; font-weight:850; transition:background .18s ease,transform .18s ease; }
.khushan-contact-submit:hover,.khushan-contact-submit:focus-visible { background:#951b23; transform:translateY(-1px); }
.khushan-contact-form-note { color:#798597; font-size:10px; }
.khushan-contact-form-note i { margin-right:5px; color:#77869a; }
.khushan-contact-form-status { grid-column:1/-1; }
@media (max-width:991px) { .khushan-contact-hero-grid { grid-template-columns:minmax(0,1fr) minmax(300px,.85fr); gap:28px; } .khushan-contact-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .khushan-contact-address-card { grid-column:1/-1; } .khushan-contact-main-grid { gap:28px; } }
@media (max-width:767px) { .khushan-contact-hero { padding-bottom:38px; } .khushan-contact-breadcrumb { margin-bottom:22px; } .khushan-contact-hero-grid { grid-template-columns:1fr; gap:24px; } .khushan-contact-hero h1 { font-size:clamp(34px,9vw,46px); } .khushan-contact-visual { order:-1; aspect-ratio:16/10; } .khushan-contact-detail-grid { grid-template-columns:1fr; gap:10px; } .khushan-contact-address-card { grid-column:auto; } .khushan-contact-main-grid { grid-template-columns:1fr; gap:24px; } .khushan-contact-form-intro { padding-top:0; } .khushan-contact-form { grid-template-columns:1fr; gap:13px; } .khushan-contact-field-wide,.khushan-contact-submit-row,.khushan-contact-form-status { grid-column:auto; } .khushan-contact-submit-row { align-items:flex-start; flex-direction:column; } .khushan-contact-form-heading { align-items:flex-start; flex-direction:column; gap:5px; } }
@media (prefers-reduced-motion:reduce) { .khushan-contact-primary,.khushan-contact-call,.khushan-contact-visual img,.khushan-contact-whatsapp,.khushan-contact-submit { transition:none; } }

/* Products and services directory */
.fabrication-directory { color:#263447; background:#fff; }
.fabrication-directory-hero { position:relative; overflow:hidden; padding:18px 0 54px; background:linear-gradient(135deg,#f4f7fa 0%,#fff 58%,#edf2f6 100%); }
.fabrication-directory-hero:after { position:absolute; right:-120px; bottom:-235px; width:460px; height:460px; border:1px solid rgba(11,31,58,.08); border-radius:50%; box-shadow:0 0 0 40px rgba(11,31,58,.025),0 0 0 80px rgba(11,31,58,.018); content:""; pointer-events:none; }
.fabrication-directory-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; gap:clamp(35px,5vw,72px); max-width:1200px; }
.fabrication-directory-hero-copy { max-width:620px; }
.fabrication-directory-breadcrumb { display:flex; align-items:center; gap:10px; margin-bottom:27px; color:#7b8796; font-size:12px; }
.fabrication-directory-breadcrumb a { color:#0b1f3a; font-weight:700; text-decoration:none; }
.fabrication-directory-breadcrumb a:hover { color:#b8202a; }
.fabrication-directory-eyebrow,.fabrication-directory-section-eyebrow { display:inline-block; margin-bottom:11px; color:#b8202a; font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.fabrication-directory-hero h1 { max-width:620px; margin:0 0 15px; color:#0b1f3a; font-size:clamp(36px,4.7vw,57px); font-weight:850; letter-spacing:-.04em; line-height:1.08; }
.fabrication-directory-hero-copy > p { max-width:560px; margin:0; color:#586779; font-size:16px; line-height:1.75; }
.fabrication-directory-hero-button { display:inline-flex; min-height:46px; align-items:center; gap:13px; margin-top:23px; padding:0 17px; border-radius:5px; background:#b8202a; color:#fff!important; font-size:12px; font-weight:850; text-decoration:none!important; transition:background .18s ease,transform .18s ease; }
.fabrication-directory-hero-button:hover,.fabrication-directory-hero-button:focus-visible { background:#951b23; transform:translateY(-1px); }
.fabrication-directory-hero-note { display:flex; align-items:center; gap:10px; max-width:420px; margin-top:23px; color:#687688; font-size:11px; line-height:1.55; }
.fabrication-directory-hero-note span:first-child { display:grid; flex:0 0 29px; width:29px; height:29px; place-items:center; border-radius:50%; background:#0b1f3a; color:#fff; font-size:9px; font-weight:900; }
.fabrication-directory-hero-visual { position:relative; overflow:hidden; margin:0; aspect-ratio:4/3; border:5px solid #fff; border-radius:5px 18px 5px 18px; background:#142a40; box-shadow:0 22px 52px rgba(11,31,58,.15); }
.fabrication-directory-hero-visual:after { position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent,rgba(4,15,28,.84)); content:""; }
.fabrication-directory-hero-visual img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.fabrication-directory-hero-visual:hover img { transform:scale(1.035); }
.fabrication-directory-hero-visual figcaption { position:absolute; z-index:1; right:22px; bottom:21px; left:22px; display:grid; gap:5px; color:#fff; }
.fabrication-directory-hero-visual figcaption span { color:#ff9a9e; font-size:9px; font-weight:900; letter-spacing:.15em; }
.fabrication-directory-hero-visual figcaption strong { font-size:20px; font-weight:850; line-height:1.3; }
.fabrication-directory-jump { position:sticky; z-index:8; top:0; border-top:1px solid #e4e9ef; border-bottom:1px solid #e0e6ed; background:rgba(255,255,255,.96); box-shadow:0 5px 18px rgba(11,31,58,.045); backdrop-filter:blur(10px); }
.fabrication-directory-jump .container { display:flex; max-width:1200px; gap:8px; overflow-x:auto; padding-top:11px; padding-bottom:11px; scrollbar-width:thin; }
.fabrication-directory-jump a { display:inline-flex; flex:0 0 auto; align-items:center; gap:10px; padding:9px 12px; border:1px solid #e1e7ed; border-radius:4px; color:#0b1f3a; font-size:11px; font-weight:800; text-decoration:none; transition:border-color .18s ease,background .18s ease,color .18s ease; }
.fabrication-directory-jump a span { color:#b8202a; }
.fabrication-directory-jump a:hover,.fabrication-directory-jump a:focus-visible { border-color:#0b1f3a; background:#0b1f3a; color:#fff; }
.fabrication-directory-jump a:hover span,.fabrication-directory-jump a:focus-visible span { color:#ff9297; }
.fabrication-directory-sections { padding:25px 0 65px; background:#f5f7fa; }
.fabrication-directory-sections > .container { max-width:1200px; }
.fabrication-directory-section { padding:43px 0 46px; scroll-margin-top:80px; }
.fabrication-directory-section + .fabrication-directory-section { border-top:1px solid #e0e6ed; }
.fabrication-directory-section-heading { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:21px; }
.fabrication-directory-section-heading h2 { margin:0; color:#0b1f3a; font-size:clamp(27px,3.4vw,37px); font-weight:850; letter-spacing:-.03em; line-height:1.15; }
.fabrication-directory-section-heading > p { max-width:470px; margin:0 0 2px; color:#5d6a7b; font-size:13px; line-height:1.7; }
.fabrication-directory-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:16px; }
.fabrication-directory-item { min-width:0; overflow:hidden; border:1px solid #e1e7ed; border-radius:7px; background:#fff; box-shadow:0 6px 20px rgba(11,31,58,.045); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; scroll-margin-top:95px; }
.fabrication-directory-item:hover { transform:translateY(-3px); border-color:#cbd5df; box-shadow:0 14px 28px rgba(11,31,58,.1); }
.fabrication-directory-item-image { overflow:hidden; aspect-ratio:16/10; background:#e1e6eb; }
.fabrication-directory-item-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.fabrication-directory-item:hover .fabrication-directory-item-image img { transform:scale(1.04); }
.fabrication-directory-item-body { display:flex; min-height:177px; flex-direction:column; align-items:flex-start; padding:16px 16px 15px; }
.fabrication-directory-item-index { margin-bottom:7px; color:#b8202a; font-size:8px; font-weight:900; letter-spacing:.11em; line-height:1.4; text-transform:uppercase; }
.fabrication-directory-item h3 { margin:0 0 7px; color:#0b1f3a; font-size:16px; font-weight:850; line-height:1.35; }
.fabrication-directory-item p { display:-webkit-box; min-height:39px; overflow:hidden; margin:0 0 13px; color:#627082; font-size:11px; line-height:1.65; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.fabrication-directory-item-body > a { display:inline-flex; align-items:center; gap:9px; margin-top:auto; color:#b8202a; font-size:10px; font-weight:900; text-decoration:none; }
.fabrication-directory-item-body > a:hover { color:#0b1f3a; }
.fabrication-directory-bottom-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:15px; padding:26px 29px; border-radius:7px; background:#0b1f3a; }
.fabrication-directory-bottom-cta > div > span { display:block; margin-bottom:5px; color:#ff9297; font-size:9px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.fabrication-directory-bottom-cta h2 { margin:0 0 6px; color:#fff; font-size:21px; font-weight:850; line-height:1.3; }
.fabrication-directory-bottom-cta p { margin:0; color:#cad5e1; font-size:12px; line-height:1.6; }
.fabrication-directory-bottom-cta > a { display:inline-flex; flex:0 0 auto; align-items:center; gap:11px; min-height:43px; padding:0 15px; border-radius:4px; background:#b8202a; color:#fff; font-size:11px; font-weight:850; text-decoration:none; }
.fabrication-directory-bottom-cta > a:hover { background:#951b23; color:#fff; }
@media (max-width:991px) { .fabrication-directory-hero-grid { grid-template-columns:minmax(0,1fr) minmax(290px,.85fr); gap:25px; } .fabrication-directory-cards { grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; } .fabrication-directory-item-body { min-height:175px; } }
@media (max-width:767px) { .fabrication-directory-hero { padding-bottom:38px; } .fabrication-directory-breadcrumb { margin-bottom:21px; } .fabrication-directory-hero-grid { grid-template-columns:1fr; gap:23px; } .fabrication-directory-hero h1 { font-size:clamp(34px,9vw,46px); } .fabrication-directory-hero-visual { order:-1; aspect-ratio:16/10; } .fabrication-directory-jump .container { gap:7px; } .fabrication-directory-jump a { padding:8px 10px; font-size:10px; } .fabrication-directory-sections { padding-top:10px; } .fabrication-directory-section { padding:34px 0; } .fabrication-directory-section-heading { display:block; margin-bottom:17px; } .fabrication-directory-section-heading > p { margin-top:10px; } .fabrication-directory-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .fabrication-directory-item-body { min-height:174px; padding:13px 12px; } .fabrication-directory-item h3 { font-size:14px; } .fabrication-directory-item p { font-size:10px; } .fabrication-directory-bottom-cta { align-items:flex-start; flex-direction:column; padding:22px; } }
@media (max-width:420px) { .fabrication-directory-cards { grid-template-columns:1fr; } .fabrication-directory-item { display:grid; grid-template-columns:118px minmax(0,1fr); } .fabrication-directory-item-image { height:100%; min-height:165px; aspect-ratio:auto; } .fabrication-directory-item-body { min-height:165px; padding:12px 11px; } .fabrication-directory-item h3 { font-size:13px; } .fabrication-directory-item p { min-height:0; } }
@media (prefers-reduced-motion:reduce) { .fabrication-directory-hero-button,.fabrication-directory-hero-visual img,.fabrication-directory-jump a,.fabrication-directory-item,.fabrication-directory-item-image img { transition:none; } }

/* Static product and service detail pages */
.fabrication-item-detail { color:#263447; background:#fff; }
.fabrication-item-hero { position:relative; overflow:hidden; padding:18px 0 58px; background:radial-gradient(ellipse at 82% 10%,rgba(50,83,116,.4),transparent 34%),linear-gradient(120deg,#07182d 0%,#0b1f3a 58%,#123452 100%); }
.fabrication-item-hero:after { position:absolute; right:-130px; bottom:-225px; width:460px; height:460px; border:1px solid rgba(255,255,255,.1); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:""; pointer-events:none; }
.fabrication-item-hero > .container { position:relative; z-index:1; max-width:1200px; }
.fabrication-item-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:30px; color:rgba(255,255,255,.65); font-size:11px; }
.fabrication-item-breadcrumb a { color:#fff; font-weight:650; text-decoration:none; }
.fabrication-item-breadcrumb a:hover { color:#ff9a9e; }
.fabrication-item-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); align-items:center; gap:clamp(34px,5vw,72px); }
.fabrication-item-hero-copy { max-width:620px; }
.fabrication-item-category { display:inline-flex; margin-bottom:13px; padding:6px 10px; border:1px solid rgba(255,255,255,.2); border-radius:4px; background:rgba(190,37,45,.18); color:#ff9a9e; font-size:9px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.fabrication-item-eyebrow { display:block; margin-bottom:10px; color:#b9c6d4; font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.fabrication-item-hero h1 { margin:0 0 14px; color:#fff; font-size:clamp(38px,5vw,58px); font-weight:850; letter-spacing:-.04em; line-height:1.08; }
.fabrication-item-hero-copy > p { max-width:560px; margin:0; color:#d2dce7; font-size:15px; line-height:1.75; }
.fabrication-item-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:23px; }
.fabrication-item-primary,.fabrication-item-secondary { display:inline-flex; min-height:44px; align-items:center; justify-content:center; gap:10px; padding:0 15px; border-radius:5px; font-size:11px; font-weight:850; text-decoration:none!important; transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease; }
.fabrication-item-primary { background:#be252d; color:#fff!important; }
.fabrication-item-primary:hover,.fabrication-item-primary:focus-visible { background:#961e25; transform:translateY(-1px); }
.fabrication-item-secondary { border:1px solid rgba(255,255,255,.3); color:#fff!important; }
.fabrication-item-secondary:hover,.fabrication-item-secondary:focus-visible { border-color:#fff; background:#fff; color:#0b1f3a!important; }
.fabrication-item-hero-image { position:relative; overflow:hidden; margin:0; aspect-ratio:4/3; border:5px solid rgba(255,255,255,.13); border-radius:5px 17px 5px 17px; background:#142a40; box-shadow:0 24px 55px rgba(0,0,0,.28); }
.fabrication-item-hero-image:after { position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent,rgba(4,15,28,.84)); content:""; pointer-events:none; }
.fabrication-item-hero-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.fabrication-item-hero-image:hover img { transform:scale(1.04); }
.fabrication-item-hero-image figcaption { position:absolute; z-index:1; right:21px; bottom:19px; left:21px; display:grid; gap:4px; color:#fff; }
.fabrication-item-hero-image figcaption span { color:#ff9a9e; font-size:8px; font-weight:900; letter-spacing:.15em; }
.fabrication-item-hero-image figcaption strong { font-size:20px; font-weight:850; }
.fabrication-item-content { padding:clamp(42px,6vw,72px) 0; background:#f5f7fa; }
.fabrication-item-content-grid { display:grid; grid-template-columns:minmax(0,800px) minmax(260px,320px); align-items:start; gap:28px; max-width:1200px; }
.fabrication-item-main { padding:clamp(24px,4vw,43px); border:1px solid #e1e7ed; border-radius:9px; background:#fff; box-shadow:0 10px 30px rgba(11,31,58,.05); }
.fabrication-item-section-label { display:inline-block; margin-bottom:9px; color:#b8202a; font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.fabrication-item-main > h2 { margin:0 0 13px; color:#0b1f3a; font-size:clamp(25px,3.3vw,34px); font-weight:850; letter-spacing:-.025em; line-height:1.2; }
.fabrication-item-overview { margin:0; color:#566477; font-size:15px; line-height:1.8; }
.fabrication-item-checklist { margin-top:28px; padding-top:24px; border-top:1px solid #e8edf2; }
.fabrication-item-checklist h3 { margin:0 0 15px; color:#0b1f3a; font-size:17px; font-weight:850; }
.fabrication-item-checklist ul { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.fabrication-item-checklist li { display:flex; align-items:flex-start; gap:11px; color:#4e5d6f; font-size:13px; line-height:1.7; }
.fabrication-item-check { display:grid; flex:0 0 23px; width:23px; height:23px; place-items:center; margin-top:1px; border-radius:50%; background:#fff0f1; color:#b8202a; font-size:9px; }
.fabrication-item-note { display:flex; align-items:flex-start; gap:11px; margin-top:24px; padding:15px; border-left:3px solid #b8202a; border-radius:4px; background:#f5f7fa; }
.fabrication-item-note > i { margin-top:2px; color:#b8202a; font-size:14px; }
.fabrication-item-note p { margin:0; color:#637184; font-size:11px; line-height:1.7; }
.fabrication-item-bottom-cta { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:27px; padding:21px; border-radius:6px; background:#0b1f3a; }
.fabrication-item-bottom-cta > div > span { display:block; margin-bottom:5px; color:#ff9297; font-size:8px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.fabrication-item-bottom-cta h2 { margin:0; color:#fff; font-size:17px; font-weight:850; line-height:1.4; }
.fabrication-item-bottom-cta > a,.fabrication-item-enquiry-card > a { display:inline-flex; flex:0 0 auto; align-items:center; gap:10px; padding:11px 13px; border-radius:4px; background:#b8202a; color:#fff; font-size:10px; font-weight:850; text-decoration:none; }
.fabrication-item-bottom-cta > a:hover,.fabrication-item-enquiry-card > a:hover { background:#951b23; color:#fff; }
.fabrication-item-sidebar { position:sticky; top:24px; display:grid; gap:15px; }
.fabrication-item-enquiry-card { padding:21px; border-radius:8px; background:linear-gradient(145deg,#0b1f3a,#153a5c); color:#fff; box-shadow:0 10px 28px rgba(11,31,58,.12); }
.fabrication-item-enquiry-icon { display:grid; width:38px; height:38px; place-items:center; margin-bottom:14px; border:1px solid rgba(255,255,255,.2); border-radius:7px; background:rgba(255,255,255,.08); color:#ff9a9e; }
.fabrication-item-enquiry-card .fabrication-item-section-label { color:#ff9a9e; }
.fabrication-item-enquiry-card h2 { margin:0 0 8px; color:#fff; font-size:19px; font-weight:850; line-height:1.35; }
.fabrication-item-enquiry-card p { margin:0 0 17px; color:#d0dbe6; font-size:12px; line-height:1.7; }
.fabrication-item-related-card { padding:20px; border:1px solid #e1e7ed; border-radius:8px; background:#fff; box-shadow:0 8px 23px rgba(11,31,58,.04); }
.fabrication-item-related-card h2 { margin:0 0 11px; color:#0b1f3a; font-size:14px; font-weight:850; }
.fabrication-item-related-card > a:not(.fabrication-item-all-link) { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border-top:1px solid #e9edf2; color:#4c5b6d; font-size:12px; font-weight:700; text-decoration:none; }
.fabrication-item-related-card > a:not(.fabrication-item-all-link):hover { color:#b8202a; }
.fabrication-item-related-card > a b { color:#b8202a; font-size:15px; }
.fabrication-item-all-link { display:flex; align-items:center; justify-content:space-between; margin-top:7px; padding-top:13px; border-top:1px solid #e9edf2; color:#b8202a; font-size:11px; font-weight:900; text-decoration:none; }
.fabrication-item-all-link:hover { color:#0b1f3a; }
@media (max-width:991px) { .fabrication-item-hero-grid { grid-template-columns:minmax(0,1fr) minmax(290px,.85fr); gap:25px; } .fabrication-item-content-grid { grid-template-columns:minmax(0,1fr) 275px; gap:20px; } }
@media (max-width:767px) { .fabrication-item-hero { padding-bottom:38px; } .fabrication-item-breadcrumb { margin-bottom:22px; } .fabrication-item-hero-grid { grid-template-columns:1fr; gap:22px; } .fabrication-item-hero h1 { font-size:clamp(35px,9vw,47px); } .fabrication-item-hero-image { order:-1; aspect-ratio:16/10; } .fabrication-item-content-grid { grid-template-columns:1fr; gap:16px; } .fabrication-item-sidebar { position:static; } .fabrication-item-main { padding:23px 19px; } .fabrication-item-bottom-cta { align-items:flex-start; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { .fabrication-item-primary,.fabrication-item-secondary,.fabrication-item-hero-image img { transition:none; } }
.fabrication-item-editorial-content { margin-top:28px; padding-top:10px; border-top:1px solid #e8edf2; }
.fabrication-item-editorial-section { padding:18px 0 7px; }
.fabrication-item-editorial-section + .fabrication-item-editorial-section { border-top:1px solid #edf0f4; }
.fabrication-item-editorial-section h3,.fabrication-item-faq h3 { margin:0 0 10px; color:#0b1f3a; font-size:19px; font-weight:850; line-height:1.35; }
.fabrication-item-editorial-section p { margin:0 0 12px; color:#566477; font-size:13px; line-height:1.8; }
.fabrication-item-editorial-section ul { display:grid; gap:8px; margin:0 0 14px; padding-left:19px; color:#4e5d6f; font-size:12px; line-height:1.7; }
.fabrication-item-editorial-section li::marker { color:#b8202a; }
.fabrication-item-faq { margin-top:24px; padding-top:23px; border-top:1px solid #e8edf2; }
.fabrication-item-faq h3 { margin-bottom:14px; font-size:22px; }
.fabrication-item-faq details { border-top:1px solid #e8edf2; }
.fabrication-item-faq details:last-child { border-bottom:1px solid #e8edf2; }
.fabrication-item-faq summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 0; color:#1c3047; font-size:12px; font-weight:800; line-height:1.5; list-style:none; cursor:pointer; }
.fabrication-item-faq summary::-webkit-details-marker { display:none; }
.fabrication-item-faq summary span { display:grid; flex:0 0 25px; width:25px; height:25px; place-items:center; border-radius:50%; background:#fff0f1; color:#b8202a; font-size:16px; transition:transform .18s ease; }
.fabrication-item-faq details[open] summary span { transform:rotate(45deg); }
.fabrication-item-faq details p { margin:0; padding:0 34px 14px 0; color:#596779; font-size:12px; line-height:1.75; }
@media (prefers-reduced-motion:reduce) { .fabrication-item-faq summary span { transition:none; } }

/* Styling for the existing database-driven article layout */
.mycustomcss { max-width:100%; margin:0 auto; padding:clamp(22px,4vw,48px); border:1px solid #e1e7ed; border-radius:10px; background:#fff; box-shadow:0 12px 35px rgba(11,31,58,.07); color:#4e5d6f; font-size:15px; line-height:1.85; overflow-wrap:anywhere; }
.mycustomcss > img:first-child { display:block; width:100%; max-height:470px; margin:0 0 28px; border-radius:7px; object-fit:cover; }
.mycustomcss h1 { position:relative; margin:0 0 24px; padding:0 0 20px; color:#0b1f3a; font-size:clamp(30px,4vw,44px); font-weight:850; letter-spacing:-.035em; line-height:1.15; }
.mycustomcss h1:after { position:absolute; bottom:0; left:0; width:58px; height:4px; border-radius:4px; background:#be252d; content:""; }
.mycustomcss h2,.mycustomcss h3,.mycustomcss h4,.mycustomcss h5,.mycustomcss h6 { margin:26px 0 12px; color:#0b1f3a; font-weight:800; line-height:1.35; }
.mycustomcss h2 { padding-left:13px; border-left:3px solid #be252d; font-size:clamp(21px,2.8vw,28px); }
.mycustomcss h3 { font-size:21px; }
.mycustomcss h4 { font-size:18px; }
.mycustomcss p { margin:0 0 17px; color:#4f5e70; }
.mycustomcss img:not(:first-child) { display:block; max-width:100%; height:auto; margin:20px auto; border-radius:7px; }
.mycustomcss ul,.mycustomcss ol { margin:0 0 22px; padding-left:24px; }
.mycustomcss li { margin:0 0 8px; padding-left:3px; }
.mycustomcss li::marker { color:#be252d; }
.mycustomcss a { color:#a91f28; font-weight:700; text-underline-offset:3px; }
.mycustomcss a:hover { color:#0b1f3a; }
.mycustomcss blockquote { margin:24px 0; padding:17px 20px; border-left:4px solid #be252d; border-radius:0 6px 6px 0; background:#f4f6f8; color:#31445c; }
.mycustomcss table { display:block; width:100%; overflow-x:auto; border-collapse:collapse; }
.mycustomcss th,.mycustomcss td { padding:10px 12px; border:1px solid #e0e6ed; text-align:left; }
.mycustomcss th { background:#0b1f3a; color:#fff; }
.mycustomcss iframe,.mycustomcss video { max-width:100%; }
@media (max-width:767px) { .mycustomcss { padding:20px 17px; border-radius:7px; font-size:14px; line-height:1.8; } .mycustomcss > img:first-child { max-height:290px; margin-bottom:21px; } .mycustomcss h1 { margin-bottom:19px; font-size:clamp(27px,8vw,36px); } .mycustomcss h2 { font-size:22px; } }

/* Complete responsive styling for database-authored blog HTML */
.mycustomcss,.mycustomcss *,.mycustomcss *::before,.mycustomcss *::after { box-sizing:border-box; }
.mycustomcss { width:100%; min-width:0; color:#4d5b6d; font-family:inherit; overflow-wrap:anywhere; word-break:normal; }
.mycustomcss h1,.mycustomcss h2,.mycustomcss h3,.mycustomcss h4,.mycustomcss h5,.mycustomcss h6 { max-width:100%; color:#0b1f3a; font-family:inherit; font-weight:800; line-height:1.3; overflow-wrap:anywhere; scroll-margin-top:100px; }
.mycustomcss h1 { margin:0 0 22px; font-size:clamp(29px,4vw,44px); }
.mycustomcss h2 { margin:31px 0 13px; padding-left:13px; border-left:3px solid #be252d; font-size:clamp(22px,3vw,30px); }
.mycustomcss h3 { margin:25px 0 11px; font-size:clamp(19px,2.4vw,23px); }
.mycustomcss h4 { margin:22px 0 10px; font-size:clamp(17px,2vw,19px); }
.mycustomcss h5 { margin:19px 0 9px; font-size:16px; }
.mycustomcss h6 { margin:17px 0 8px; font-size:14px; }
.mycustomcss p,.mycustomcss address { margin:0 0 17px; color:#4d5b6d; font-size:15px; line-height:1.85; }
.mycustomcss span,.mycustomcss label,.mycustomcss time,.mycustomcss small { max-width:100%; overflow-wrap:anywhere; }
.mycustomcss strong,.mycustomcss b { color:#24374d; font-weight:800; }
.mycustomcss em,.mycustomcss i { color:inherit; }
.mycustomcss mark { padding:2px 5px; border-radius:3px; background:#fff0cf; color:#293b50; }
.mycustomcss ul,.mycustomcss ol { margin:0 0 22px; padding-left:clamp(20px,3vw,28px); }
.mycustomcss li { margin:0 0 9px; padding-left:3px; color:#4d5b6d; font-size:15px; line-height:1.75; }
.mycustomcss li::marker { color:#be252d; font-weight:800; }
.mycustomcss a { color:#a91f28; font-weight:700; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; overflow-wrap:anywhere; }
.mycustomcss a:hover { color:#0b1f3a; }
.mycustomcss a:focus-visible,.mycustomcss button:focus-visible,.mycustomcss summary:focus-visible { outline:3px solid rgba(190,37,45,.35); outline-offset:3px; }
.mycustomcss img,.mycustomcss picture,.mycustomcss svg,.mycustomcss video,.mycustomcss canvas,.mycustomcss embed,.mycustomcss object { max-width:100%; }
.mycustomcss img,.mycustomcss video { height:auto; }
.mycustomcss picture { display:block; margin:18px 0; }
.mycustomcss figure { max-width:100%; margin:24px 0; }
.mycustomcss figure img { display:block; margin:0 auto; }
.mycustomcss figcaption { margin-top:9px; color:#758194; font-size:12px; line-height:1.6; text-align:center; }
.mycustomcss iframe,.mycustomcss embed,.mycustomcss object { display:block; width:100%; max-width:100%; border:0; }
.mycustomcss iframe { min-height:220px; aspect-ratio:16/9; }
.mycustomcss table { display:block; width:100%; max-width:100%; margin:22px 0; overflow-x:auto; border-collapse:collapse; -webkit-overflow-scrolling:touch; }
.mycustomcss thead,.mycustomcss tbody,.mycustomcss tfoot { width:100%; }
.mycustomcss th,.mycustomcss td { min-width:90px; padding:11px 13px; border:1px solid #dce3ea; color:#445367; font-size:13px; line-height:1.6; text-align:left; vertical-align:top; }
.mycustomcss th { background:#0b1f3a; color:#fff; font-weight:800; }
.mycustomcss tr:nth-child(even) td { background:#f5f7fa; }
.mycustomcss blockquote { margin:24px 0; padding:18px 21px; border-left:4px solid #be252d; border-radius:0 7px 7px 0; background:#f4f6f8; color:#31445c; font-size:16px; line-height:1.75; }
.mycustomcss blockquote > :last-child { margin-bottom:0; }
.mycustomcss q { color:#26384c; font-style:italic; }
.mycustomcss hr { height:1px; margin:26px 0; border:0; background:#e1e7ed; }
.mycustomcss pre { max-width:100%; margin:18px 0; padding:16px; overflow-x:auto; border-radius:6px; background:#0b1f3a; color:#f4f7fa; font-size:12px; line-height:1.65; white-space:pre; }
.mycustomcss code,.mycustomcss kbd,.mycustomcss samp { padding:2px 5px; border-radius:3px; background:#eef1f4; color:#26384c; font-family:Consolas,monospace; font-size:.9em; overflow-wrap:anywhere; }
.mycustomcss pre code { padding:0; background:transparent; color:inherit; white-space:inherit; }
.mycustomcss dl { margin:0 0 20px; }
.mycustomcss dt { margin-top:12px; color:#0b1f3a; font-weight:800; }
.mycustomcss dd { margin:4px 0 0 18px; color:#4d5b6d; line-height:1.7; }
.mycustomcss details { margin:12px 0; padding:13px 15px; border:1px solid #e1e7ed; border-radius:6px; background:#fff; }
.mycustomcss summary { color:#0b1f3a; font-weight:800; line-height:1.55; cursor:pointer; }
.mycustomcss details > :last-child { margin-bottom:0; }
.mycustomcss form { max-width:100%; }
.mycustomcss input,.mycustomcss select,.mycustomcss textarea { max-width:100%; }
.mycustomcss button,.mycustomcss input[type="button"],.mycustomcss input[type="submit"] { min-height:42px; padding:9px 15px; border:0; border-radius:5px; background:#be252d; color:#fff; font-weight:800; cursor:pointer; }
.mycustomcss button:hover,.mycustomcss input[type="button"]:hover,.mycustomcss input[type="submit"]:hover { background:#961e25; }
.mycustomcss audio { display:block; width:100%; max-width:100%; margin:15px 0; }
.mycustomcss sub,.mycustomcss sup { position:relative; font-size:.75em; line-height:0; vertical-align:baseline; }
.mycustomcss sup { top:-.5em; }
.mycustomcss sub { bottom:-.25em; }
@media (max-width:767px) {
  .mycustomcss h1 { font-size:clamp(27px,7.5vw,36px); line-height:1.2; }
  .mycustomcss h2 { margin-top:25px; font-size:clamp(20px,6vw,25px); }
  .mycustomcss p,.mycustomcss li,.mycustomcss address { font-size:14px; line-height:1.8; }
  .mycustomcss blockquote { margin:19px 0; padding:15px 16px; font-size:14px; }
  .mycustomcss th,.mycustomcss td { min-width:115px; padding:9px 10px; font-size:12px; }
  .mycustomcss iframe { min-height:190px; }
}
@media (max-width:420px) {
  .mycustomcss { padding:18px 14px; }
  .mycustomcss > img:first-child { max-height:230px; }
  .mycustomcss ul,.mycustomcss ol { padding-left:20px; }
  .mycustomcss pre { padding:12px; font-size:11px; }
  .mycustomcss iframe { min-height:165px; }
}

/* Article cover on the right with a refined heading hierarchy */
.mycustomcss::after { display:block; clear:both; content:""; }
.mycustomcss > img:first-child { float:right; width:42%; max-width:440px; height:auto; max-height:390px; margin:5px 0 24px 30px; aspect-ratio:4/3; border:1px solid #e1e7ed; border-radius:8px; background:#f1f4f7; box-shadow:0 15px 36px rgba(11,31,58,.12); object-fit:cover; }
.mycustomcss h1 { max-width:100%; margin:0 0 22px; padding:3px 0 18px; border-bottom:1px solid #e5eaf0; color:#0b1f3a; font-size:clamp(30px,4vw,45px); font-weight:850; letter-spacing:-.035em; line-height:1.14; }
.mycustomcss h1::after { bottom:-2px; width:62px; height:4px; border-radius:3px; }
.mycustomcss h2 { clear:both; position:relative; margin:32px 0 14px; padding:0 0 10px 15px; border-left:3px solid #be252d; border-bottom:1px solid #e7ebf0; color:#0b1f3a; font-size:clamp(22px,2.8vw,29px); font-weight:850; letter-spacing:-.02em; line-height:1.3; }
.mycustomcss h3 { margin:25px 0 11px; padding-bottom:7px; border-bottom:1px solid #edf0f4; color:#183553; font-size:clamp(19px,2.2vw,22px); font-weight:800; }
.mycustomcss h4 { margin:21px 0 9px; color:#263f5b; font-size:clamp(17px,1.9vw,19px); font-weight:800; }
.mycustomcss h5 { margin:18px 0 8px; color:#334c66; font-size:16px; font-weight:800; }
.mycustomcss h6 { margin:16px 0 8px; color:#56677b; font-size:14px; font-weight:850; letter-spacing:.035em; text-transform:uppercase; }
@media (max-width:767px) {
  .mycustomcss > img:first-child { float:none; display:block; width:100%; max-width:none; max-height:330px; margin:0 0 22px; aspect-ratio:16/10; }
  .mycustomcss h1 { font-size:clamp(27px,7.5vw,37px); }
  .mycustomcss h2 { margin-top:25px; font-size:clamp(20px,5.8vw,25px); }
  .mycustomcss h3 { font-size:19px; }
}
@media (max-width:420px) { .mycustomcss > img:first-child { max-height:245px; } .mycustomcss h1 { font-size:27px; } }

/* Normalize CMS-authored typography and restore visible nested list markers */
.mycustomcss h1 { font-size:clamp(25px,2.7vw,34px)!important; line-height:1.22!important; }
.mycustomcss h2 { font-size:clamp(20px,2.25vw,25px)!important; line-height:1.3!important; }
.mycustomcss h3 { font-size:clamp(18px,1.9vw,21px)!important; line-height:1.35!important; }
.mycustomcss h4 { font-size:clamp(16px,1.6vw,18px)!important; line-height:1.4!important; }
.mycustomcss h5 { font-size:16px!important; line-height:1.45!important; }
.mycustomcss h6 { font-size:14px!important; line-height:1.5!important; }
.mycustomcss p,.mycustomcss address,.mycustomcss blockquote { font-size:14px!important; line-height:1.8!important; }
.mycustomcss li { display:list-item!important; margin:0 0 8px!important; padding:0 0 0 3px!important; color:#4d5b6d!important; font-size:14px!important; line-height:1.75!important; }
.mycustomcss ul { margin:15px 0 22px!important; padding:0 0 0 25px!important; list-style:disc outside!important; }
.mycustomcss ol { margin:15px 0 22px!important; padding:0 0 0 27px!important; list-style:decimal outside!important; }
.mycustomcss ul ul { list-style:circle outside!important; }
.mycustomcss ul ul ul { list-style:square outside!important; }
.mycustomcss ol ol { list-style:lower-alpha outside!important; }
.mycustomcss ol ol ol { list-style:lower-roman outside!important; }
.mycustomcss ul li::marker { color:#be252d!important; font-size:1em; }
.mycustomcss ol li::marker { color:#0b1f3a!important; font-weight:800; }
.mycustomcss > img:first-child { width:40%; max-width:390px; max-height:340px; }
@media (max-width:767px) {
  .mycustomcss h1 { font-size:clamp(25px,6.5vw,31px)!important; }
  .mycustomcss h2 { font-size:clamp(19px,5vw,23px)!important; }
  .mycustomcss h3 { font-size:18px!important; }
  .mycustomcss h4 { font-size:16px!important; }
  .mycustomcss p,.mycustomcss address,.mycustomcss li,.mycustomcss blockquote { font-size:14px!important; }
  .mycustomcss ul,.mycustomcss ol { padding-left:23px!important; }
  .mycustomcss > img:first-child { float:none; width:100%; max-width:none; max-height:280px; margin:0 0 20px; aspect-ratio:16/10; }
}
@media (max-width:420px) { .mycustomcss h1 { font-size:25px!important; } .mycustomcss p,.mycustomcss li { font-size:13px!important; } }

/* Reliable custom markers for rich-text lists, regardless of theme list resets */
.mycustomcss ul,.mycustomcss ol { margin:15px 0 22px!important; padding:0!important; list-style:none!important; }
.mycustomcss ol { counter-reset:khushan-list!important; }
.mycustomcss ul > li,.mycustomcss ol > li { position:relative!important; display:block!important; margin:0 0 9px!important; padding:0 0 0 28px!important; list-style:none!important; color:#4d5b6d!important; font-size:14px!important; line-height:1.75!important; }
.mycustomcss ul > li::before { position:absolute!important; top:.67em!important; left:7px!important; display:block!important; width:7px!important; height:7px!important; border-radius:1px!important; background:#be252d!important; content:""!important; }
.mycustomcss ol > li { counter-increment:khushan-list!important; padding-left:34px!important; }
.mycustomcss ol > li::before { position:absolute!important; top:0!important; left:1px!important; display:block!important; min-width:25px!important; color:#0b1f3a!important; content:counters(khushan-list, ".") "."!important; font-size:13px!important; font-weight:850!important; line-height:1.75!important; }
.mycustomcss ul ul,.mycustomcss ul ol,.mycustomcss ol ul,.mycustomcss ol ol { margin:8px 0 8px!important; padding:0!important; }
.mycustomcss ul ul > li,.mycustomcss ul ol > li,.mycustomcss ol ul > li,.mycustomcss ol ol > li { margin-bottom:7px!important; }
