/* EDM_TENDER_PUBLIC_DESIGN_SYSTEM_R1 */
:root{
  --font-primary:'Poppins','Segoe UI',Arial,sans-serif;
  --font-size-body:15px;
  --font-size-small:12px;
  --font-size-label:13px;
  --font-size-button:13px;
  --font-size-card-title:19px;
  --font-size-section-title:28px;
  --line-height-body:1.65;
}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-primary)!important;font-size:var(--font-size-body);font-weight:400;line-height:var(--line-height-body);letter-spacing:-.006em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:var(--font-primary)!important}
h1,h2,h3,h4,h5,h6{font-family:var(--font-primary);font-weight:600;letter-spacing:-.032em;line-height:1.18}
p{font-size:var(--font-size-body);line-height:var(--line-height-body)}
.top{min-height:76px;padding-top:13px;padding-bottom:13px}
.brand{gap:13px;font-weight:600;line-height:1.2}
.brand-mark{width:48px;height:48px;font-size:12px;font-weight:700;letter-spacing:.02em}
.brand-copy{display:flex;flex-direction:column;gap:3px}
.brand-copy strong{display:block;color:#fff;font-size:16px;font-weight:600;letter-spacing:-.015em}
.brand-copy small{display:block;color:#a9c0cb;font-size:11px;font-weight:400;letter-spacing:.01em}
.top nav a{font-size:13px;font-weight:500;letter-spacing:-.005em}
.rfq-link{font-weight:600}
.hero{padding-top:78px;padding-bottom:78px}
.hero .eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em}
.hero h1{max-width:850px;margin:12px 0 18px;font-size:clamp(40px,5vw,68px);font-weight:600;line-height:1.03;letter-spacing:-.048em}
.hero p{max-width:780px;margin:0;color:#cfdee3;font-size:15px;font-weight:400;line-height:1.7}
.hero-note{padding:24px}
.hero-note strong{font-size:30px;font-weight:600;letter-spacing:-.035em}
.hero-note span{display:block;margin-top:5px;color:#c7d9df;font-size:12px;line-height:1.5}
.eyebrow{font-family:var(--font-primary);font-weight:600}
.filters{padding:16px}
.input,select,textarea{font-size:14px;font-weight:400;line-height:1.45}
.btn{min-height:44px;padding:11px 17px;font-family:var(--font-primary)!important;font-size:var(--font-size-button)!important;font-weight:600!important;line-height:1.35;letter-spacing:-.006em}
.section-head{margin-top:38px;margin-bottom:18px}
.section-head h2{font-size:var(--font-size-section-title);font-weight:600}
.section-head p{font-size:14px;line-height:1.55}
.section-head>span{font-size:13px;font-weight:500}
.grid{grid-template-columns:repeat(auto-fit,minmax(290px,370px));gap:22px}
.card-body{padding:21px}
.tag{font-family:var(--font-primary);font-size:10px;font-weight:600;letter-spacing:.035em}
.card h3{margin:14px 0 8px;font-size:var(--font-size-card-title);font-weight:600;line-height:1.3}
.code{font-family:var(--font-primary);font-size:11px;font-weight:500;letter-spacing:.025em}
.card p{display:-webkit-box;overflow:hidden;margin:12px 0;color:var(--muted);font-size:13px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:6}
.price{font-size:13px;font-weight:600}
.product-copy h1{font-size:clamp(32px,3.2vw,46px);font-weight:600;line-height:1.12}
.summary{font-size:15px;line-height:1.75}
.fact{font-size:14px;line-height:1.5}
.fact b{font-size:10px;font-weight:600;letter-spacing:.045em}
.panel{padding:25px}
.panel h2{font-size:22px;font-weight:600}
.panel p,.prose{font-size:14px;line-height:1.75}
.field label{font-size:var(--font-size-label);font-weight:500}
.notice{font-size:13px;line-height:1.65}
.basket-row{font-size:14px}
.success h1{font-size:34px;font-weight:600}
footer{font-size:14px;line-height:1.6}
footer strong{font-size:17px;font-weight:600}
footer span{font-size:13px}
footer small{font-size:11px}
@media(max-width:860px){.top{min-height:68px}.hero{padding-top:58px;padding-bottom:58px}.hero h1{font-size:clamp(36px,7vw,54px)}.section-head h2{font-size:25px}}
@media(max-width:560px){body{font-size:14px}.top{align-items:center}.brand-mark{width:42px;height:42px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:9px}.hero{padding-top:46px;padding-bottom:46px}.hero h1{font-size:36px}.hero p{font-size:14px}.grid{grid-template-columns:1fr}.panel{padding:20px}.success h1{font-size:29px}}

/* EDM_TENDER_PRODUCT_LAYOUT_R1 */
body{overflow-x:hidden}
.product-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:44px}
.product-layout>*{min-width:0}
.gallery-main{width:100%;min-height:460px;max-height:610px;aspect-ratio:4/3}
.gallery-main img{width:100%;height:100%;max-height:590px;padding:32px;object-fit:contain}
.thumbs{max-width:100%;padding-bottom:5px}
.product-copy{min-width:0;padding-top:5px}
.product-copy .code{display:block;max-width:100%;overflow-wrap:anywhere}
.product-copy .facts{width:100%}
.product-copy form{flex-wrap:wrap}
.product-copy form .input{flex:0 0 90px}
.product-copy form .btn{flex:1 1 220px}
.prose{overflow-wrap:anywhere}
@media(max-width:980px){.product-layout{gap:28px}.gallery-main{min-height:390px;max-height:520px}.gallery-main img{max-height:500px;padding:24px}}
@media(max-width:860px){.product-layout{grid-template-columns:1fr;gap:28px}.gallery-main{min-height:360px;max-height:560px}.product-copy{padding-top:0}}
@media(max-width:560px){.gallery-main{min-height:300px;max-height:430px;aspect-ratio:1/1}.gallery-main img{padding:18px}.product-copy form .input,.product-copy form .btn{flex:1 1 100%;max-width:none!important}}
