/* Noluvio custom-products catalog, same navy/cyan/mint brand as the service hubs. */
.products-body{background:#f6f9fd}
.products-hero{background:radial-gradient(ellipse at 82% 18%,#1ca9a75c,transparent 43%),linear-gradient(125deg,#07192f,#123d60);color:#f4fbff;overflow:hidden}
.products-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.78fr);gap:clamp(25px,5vw,80px);align-items:center;padding-block:clamp(64px,7vw,110px)}
.products-kicker{font-size:11px;letter-spacing:.16em;font-weight:870;color:#007f70;margin:0 0 16px;text-transform:uppercase}
.products-hero .products-kicker{color:#71f5ce}
.products-hero h1{font-size:clamp(45px,5.3vw,79px);letter-spacing:-.06em;line-height:1.03;color:#fff;margin:0 0 22px;max-width:730px}
.products-hero-grid>div:first-child>p:not(.products-kicker){color:#c5dfea;font-size:clamp(15px,1.45vw,19px);line-height:1.83;max-width:720px;margin:0}
.products-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px;margin-top:29px}
.products-action-primary,.products-action-secondary{min-height:50px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;font-size:13px;font-weight:850;text-decoration:none!important}
.products-action-primary{background:#22e08a;color:#083b32!important}
.products-action-primary:hover{background:#8af7c6}
.products-action-secondary{border:1px solid #81a8be;color:#f3fbff!important}
.products-action-secondary:hover{background:#234765}
.products-hero-notes{display:flex;flex-wrap:wrap;gap:9px 17px;color:#a9d8e5;font-size:11px;font-weight:710;margin-top:27px}
.products-hero-notes span:before{content:"✓";color:#6af2c7;margin-inline-end:7px}
.products-hero-aside{background:#0c2b49;border:1px solid #416e8d;border-radius:21px;padding:clamp(20px,2.8vw,34px);box-shadow:0 27px 65px #00132870}
.products-aside-tag{font-size:11px;font-weight:850;color:#75f3d1;letter-spacing:.14em}
.products-aside-step{display:flex;gap:15px;align-items:flex-start;margin-top:25px}
.products-aside-step>strong{background:#123d5b;border:1px solid #4e8ca3;color:#b1ffe8;border-radius:10px;padding:10px;font-size:16px;font-weight:860}
.products-aside-step b{display:block;color:#fff;font-size:14px}
.products-aside-step small{display:block;color:#b6d2e5;font-size:12px;line-height:1.65;margin-top:5px}
.products-hero-aside>p{border-top:1px solid #345875;padding-top:18px;margin:27px 0 0;color:#bad0e0;font-size:11px;line-height:1.75}
.products-proof{background:#e9f3f9;border-bottom:1px solid #d1e3ed}
.products-proof .hub-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:10px 35px;min-height:59px;padding-block:12px}
.products-proof span{font-size:11px;font-weight:800;color:#335c74}
.products-proof span:before{content:"✓";color:#008c74;margin-inline-end:7px}
.products-catalog-section{padding:clamp(60px,7vw,95px) 0}
.products-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.75fr);gap:35px;align-items:end;margin-bottom:34px}
.products-section-heading h2{font-size:clamp(30px,4vw,52px);letter-spacing:-.05em;line-height:1.13;color:#0e3451;margin:0}
.products-section-heading>p{font-size:13px;line-height:1.85;color:#536e82;margin:0}
.products-controls{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px;background:#fff;border:1px solid #d3e3ef;border-radius:16px;padding:19px;margin-bottom:14px}
.products-filter-buttons{display:flex;gap:7px;flex-wrap:wrap;flex:1}
.products-filter-buttons button{min-height:43px;border:1px solid #c7deec;color:#245b7c;background:#eef6fb;border-radius:10px;padding:10px 13px;font-size:12px;font-weight:810;cursor:pointer}
.products-filter-buttons button:hover{border-color:#69b7e6}
.products-filter-buttons button[aria-pressed=true]{color:#fff;background:#094c9b;border-color:#094c9b}
.products-search{display:grid;gap:7px;flex:0 1 315px;min-width:210px}
.products-search label{font-size:11px;font-weight:850;color:#385970}
.products-search input{min-height:45px;width:100%;border-radius:9px;border:1px solid #b8d0e1;padding:10px 13px;background:#fbfdff;font-size:13px;color:#123450}
.products-results-line{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 22px;color:#536f85;font-size:12px;font-weight:710}
.products-results-line button{border:0;background:transparent;color:#0454ac;font-size:12px;font-weight:860;text-decoration:underline;cursor:pointer;min-height:40px}
.products-results-line button:disabled{color:#8ea3b2;text-decoration:none;cursor:default}
.products-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.product-item{display:flex;flex-direction:column;min-width:0;gap:14px;background:#fff;border:1px solid #d5e4f0;border-radius:20px;padding:clamp(19px,2.3vw,29px);box-shadow:0 9px 28px #1738590c}
.product-item[hidden]{display:none!important}
.product-card-head{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap}
.product-category-label{font-size:10px;font-weight:870;color:#006f71;letter-spacing:.095em}
.product-quote-label{border:1px solid #b6dbcc;color:#0e6a54;background:#edf8f2;border-radius:80px;font-size:10px;font-weight:830;padding:5px 10px}
.product-item h3{font-size:clamp(23px,2.55vw,33px);color:#133652;letter-spacing:-.045em;line-height:1.14;margin:6px 0 0}
.product-summary{color:#4d6e85;font-size:13px;line-height:1.8;margin:0;max-width:690px}
.product-item h4{font-size:12px;font-weight:860;color:#245a78;margin:6px 0 -2px}
.product-options{display:grid;gap:10px}
.product-option{display:grid;gap:6px;min-height:105px;background:#f7fbff;border:1px solid #d4e4ef;border-radius:12px;padding:15px 16px;text-decoration:none!important;transition:border-color .15s ease,box-shadow .15s ease}
.product-option:hover{border-color:#559ee2;box-shadow:0 6px 18px #135caa12;background:#f1f8ff}
.product-option strong{font-size:14px;color:#0e395e;line-height:1.4}
.product-option small{font-size:11px;color:#547087;line-height:1.65}
.product-option-cta{color:#0057b8;font-size:11px;font-weight:870;align-self:end}
.product-boundary{border-top:1px solid #e1ebf2;margin-top:auto;padding-top:15px;display:grid;gap:6px}
.product-boundary strong{font-size:11px;color:#4d6576}
.product-boundary p{font-size:11px;color:#687f90;line-height:1.7;margin:0}
.product-preview{display:inline-flex;font-size:12px;font-weight:790;color:#0354a2;text-decoration:underline;text-underline-offset:3px;margin-top:5px;min-height:40px;align-items:center}
.products-empty{border:1px dashed #a1c5df;border-radius:15px;padding:28px;text-align:center;background:#f0f6fb;color:#3a607d;font-size:13px}
.products-empty[hidden]{display:none}
.products-clarity{background:#e8f2f8;padding:clamp(58px,7vw,85px) 0}
.products-clarity-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.products-clarity h2{font-size:clamp(27px,3vw,44px);letter-spacing:-.05em;line-height:1.17;color:#143955;margin:0}
.products-clarity-grid>div:nth-child(2)>p{font-size:14px;line-height:1.84;color:#516d82;margin:0}
.products-clarity-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.products-clarity-actions a{display:inline-flex;align-items:center;min-height:46px;padding:11px 14px;background:#fff;border:1px solid #aacbe0;color:#0b517d;font-size:12px;font-weight:850;border-radius:10px;text-decoration:none}
.products-clarity-actions a:last-child{background:#0e466d;color:#fff;border-color:#0e466d}
.products-faq{padding:clamp(60px,7vw,90px) 0;background:#fff}
.products-faq h2{font-size:clamp(27px,3.4vw,44px);letter-spacing:-.045em;line-height:1.15;color:#143855;max-width:800px}
.products-faq details{max-width:970px;border-bottom:1px solid #d8e5ee;padding:19px 0}
.products-faq summary{font-size:15px;font-weight:850;color:#173954;cursor:pointer;line-height:1.5}
.products-faq details p{margin:14px 0 0;color:#566f84;font-size:13px;line-height:1.85}
.product-option:focus-visible,.product-preview:focus-visible,.products-filter-buttons button:focus-visible,
.products-search input:focus-visible,.products-results-line button:focus-visible,
.products-hero a:focus-visible,.products-clarity a:focus-visible,.products-faq summary:focus-visible{outline:3px solid #00a9ff;outline-offset:3px}
@media(max-width:950px){.products-hero-grid{grid-template-columns:1fr;gap:22px}.products-hero-aside{max-width:700px}.products-section-heading{grid-template-columns:1fr;gap:12px}.products-clarity-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:760px){.products-hero-grid{padding-block:55px}.products-hero h1{font-size:clamp(40px,8vw,57px)}.products-grid{grid-template-columns:1fr}.products-controls{align-items:stretch;flex-direction:column}.products-filter-buttons{width:100%}.products-search{flex:1;width:100%;min-width:0}.product-item{padding:20px}.products-proof .hub-wrap{gap:10px 18px}}
@media(prefers-reduced-motion:reduce){.product-option{transition:none!important}}
@media(forced-colors:active){.products-action-primary,.products-filter-buttons button[aria-pressed=true],.product-quote-label{border:2px solid ButtonText}}

.products-ar-note{background:#f0f8fc;padding:46px 0;border-top:1px solid #d4e5ed;border-bottom:1px solid #d4e5ed}
.products-ar-note h2{color:#153b59;font-size:29px;line-height:1.25;margin:0 0 12px}
.products-ar-note p{color:#4b6b81;font-size:14px;line-height:1.9;max-width:950px;margin:0}
.products-ar-note a{display:inline-flex;align-items:center;margin-top:16px;color:#0057a9;font-size:13px;font-weight:850;min-height:43px;text-decoration:underline;text-underline-offset:3px}
.products-ar-note a:focus-visible{outline:3px solid #00a9ff;outline-offset:3px}
