:root{--navy:#12354c;--teal:#2bae9b;--ink:#263746;--muted:#5b6c77;--light:#f5f7fa;--line:#dce5e8;--green:#087769}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.65;background:white}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #087769;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy);line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,4.4vw,4.3rem);font-weight:650;margin-bottom:26px}h2{font-size:clamp(2rem,3vw,2.9rem);font-weight:600;margin-bottom:24px}h3{font-size:1.3rem;letter-spacing:-.02em}.container{width:min(1200px,calc(100% - 64px));margin:auto}.header{position:sticky;top:0;background:#fffffff5;z-index:10;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:30px}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);font-size:29px;font-weight:750;letter-spacing:.035em}.brand small{display:block;font-size:8px;font-weight:600;letter-spacing:.03em;line-height:1.5}.brand-icon{font-size:48px;color:var(--green);line-height:1}nav{display:flex;align-items:center;gap:24px}nav>a{font-size:13px;font-weight:600}nav>a:hover,.text-link:hover{color:var(--green)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 22px;background:var(--navy);color:white;border:1px solid var(--navy);border-radius:5px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#20516d;color:white;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--navy);border-color:#a8bac4}.button.outline:hover{background:#e9f3f1}.button.small{padding:11px 16px}.menu-toggle{display:none}.hero{overflow:hidden;background:linear-gradient(120deg,#f6f9fa,#eef5f4);padding:88px 0 82px}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:35px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:var(--green);margin-bottom:20px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:8px}h1 span{color:var(--green)}.hero-copy{font-size:17px;max-width:570px;color:var(--muted);margin-bottom:32px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:11px;color:var(--muted);margin-top:25px;margin-bottom:0}.network{position:relative;min-height:410px}.orbit{position:absolute;border:1px solid #aacac5;border-radius:50%;left:50%;top:47%;transform:translate(-50%,-50%)}.orbit-one{width:300px;height:300px}.orbit-two{width:410px;height:410px;border-style:dashed;opacity:.5}.hub{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);width:194px;height:194px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-direction:column;color:white;box-shadow:0 20px 60px #12354c25}.hub-symbol{color:#71d4c5;font-size:45px;line-height:1}.hub strong{font-size:29px;letter-spacing:.06em}.hub small{font-size:8px;color:#b8d5de}.node{position:absolute;padding:14px 18px;background:white;box-shadow:0 8px 30px #12354c12;border:1px solid #dbe7e5;border-radius:7px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:12px}.node span{font-size:24px;color:var(--green)}.node-a{top:14px;left:38px}.node-b{top:164px;right:-8px}.node-c{bottom:56px;left:-8px}.spark{position:absolute;background:var(--teal);width:11px;height:11px;border:3px solid white;border-radius:50%}.spark-a{top:50px;right:62px}.spark-b{bottom:63px;right:78px}.network-label{position:absolute;bottom:-15px;right:0;font-size:11px;color:var(--muted);border-left:2px solid var(--teal);padding-left:15px}.principles{border-bottom:1px solid var(--line);padding:24px 0}.principles .container{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.principles span:before{content:'✧';color:var(--green);margin-right:10px}.section{padding:88px 0;scroll-margin-top:20px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.lead{font-size:19px;color:var(--navy)}.intro-grid p:not(.eyebrow){max-width:550px}.text-link{color:var(--green);font-weight:650;font-size:14px}.muted{background:var(--light)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);margin-bottom:0}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.audience-card{background:white;border:1px solid var(--line);padding:40px;border-radius:8px}.icon-box{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:8px;background:#e7f4f0;color:var(--green);font-size:27px;margin-bottom:25px}.audience-card h3{font-size:27px}.audience-card>p:not(.eyebrow){font-size:14px;color:var(--muted)}.check-list{list-style:none;padding:0;font-size:13px;margin:25px 0 30px}.check-list li{position:relative;padding-left:22px;margin:13px 0}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--green)}.dark{background:var(--navy);border-color:var(--navy);color:white}.dark h3{color:white}.dark>p:not(.eyebrow){color:#c5d7e0}.dark .eyebrow,.dark .text-link,.dark .check-list li:before{color:#80dccd}.dark .icon-box{background:#ffffff14;color:#80dccd}.fine-print{font-size:12px;color:var(--muted);margin:22px 0 0}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card{padding:25px 22px;border:1px solid var(--line);border-radius:6px;transition:border-color .2s}.category-card:hover{border-color:var(--teal)}.category-icon{font-size:26px;color:var(--green);display:block;margin-bottom:18px}.category-card h3{font-size:15px;line-height:1.4;letter-spacing:0}.category-card p{font-size:12px;color:var(--muted);margin-bottom:0}.pill{font-size:10px;letter-spacing:.05em;border:1px solid #bed7d0;border-radius:30px;color:var(--green);padding:6px 10px;background:#eef7f3;display:inline-block}.section-copy{font-size:14px;color:var(--muted);max-width:700px}.rfp-grid,.membership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rfp-card{padding:28px;background:white;border:1px solid var(--line);border-radius:7px}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.rfp-number{color:#96a8b3;font-size:12px}.rfp-card .eyebrow{font-size:9px;margin-bottom:10px}.rfp-card h3{font-size:21px;line-height:1.3}.rfp-card>p{font-size:13px;color:var(--muted)}dl{margin:22px 0}dl div{padding:10px 0;border-bottom:1px solid #edf0f2;font-size:11px}dt{color:var(--muted)}dd{margin:0;font-weight:600}.rfp-card .demo-status{font-size:10px;color:var(--green);margin:20px 0 0}.membership-tabs{display:flex;gap:5px;background:var(--light);border:1px solid var(--line);padding:5px;border-radius:6px;width:fit-content;margin-bottom:28px}.tab{border:0;border-radius:4px;background:transparent;padding:10px 18px;color:var(--muted);font-size:13px}.tab.active{background:var(--navy);color:white}.plan{padding:32px;border:1px solid var(--line);border-radius:7px;display:flex;flex-direction:column}.plan.featured{border-color:var(--green);box-shadow:0 8px 25px #12354c08}.plan .eyebrow{font-size:9px}.plan h3{font-size:23px}.plan-price{color:var(--green);font-size:14px;margin-bottom:0}.plan ul{flex:1}.notice{background:var(--light);border-left:3px solid var(--teal);margin-top:28px;padding:22px 26px;font-size:12px}.notice strong{font-size:14px;color:var(--navy)}.notice p{margin:8px 0 0;color:var(--muted)}.verified-section{background:#eaf3f1}.verified-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.verified-grid p:not(.eyebrow){font-size:14px;max-width:560px}.verified-grid .button{margin-top:10px}.platform-card{padding:35px;background:white;border:1px solid #d5e3df;border-radius:10px;text-align:center;box-shadow:0 15px 40px #12354c08}.platform-mark{font-size:30px;font-weight:750;color:var(--navy);letter-spacing:.03em}.platform-mark.pv{font-size:25px;color:var(--green);letter-spacing:-.04em}.platform-card p{font-size:12px!important;color:var(--muted);margin:10px 0 0}.platform-connector{display:block;font-size:30px;color:var(--green);margin:18px}.contact-section{text-align:center}.contact-section>.container>p:not(.eyebrow){max-width:550px;margin:0 auto 25px;color:var(--muted)}.contact-placeholder{border:1px dashed #b2c7cd;background:var(--light);border-radius:7px;padding:22px;max-width:620px;margin:30px auto 20px}.contact-placeholder strong{font-size:14px}.contact-placeholder p{font-size:12px;margin:8px 0 0;color:var(--muted)}footer{background:var(--navy);color:#d3dfe5;padding:55px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-grid .brand{color:white}.footer-grid .brand-icon{color:#80dccd}.footer-grid p{font-size:12px;margin-top:18px}.footer-grid h3{color:white;font-size:12px;letter-spacing:0;margin-bottom:20px}.footer-grid>div>a:not(.brand){display:block;font-size:12px;margin:10px 0}.footer-grid a:hover{color:#80dccd}.footer-bottom{border-top:1px solid #ffffff20;margin-top:35px;padding-top:25px;font-size:10px;color:#b8cbd5}.footer-bottom p{max-width:950px}.footer-bottom>span{display:block;margin-top:25px}.skip{position:fixed;top:-100px;left:15px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero{padding:110px 0}}@media(max-width:1100px){nav{gap:14px}nav>a{font-size:11px}.brand{font-size:25px}.brand small{font-size:7px}.hero-grid{grid-template-columns:1.2fr 1fr;gap:20px}.network{transform:scale(.85)}.category-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.container{width:calc(100% - 40px)}.header-inner{min-height:78px}.menu-toggle{display:block;padding:8px 12px;background:white;border:1px solid var(--line);border-radius:4px;color:var(--navy);font-size:13px}nav{display:none;position:absolute;top:78px;left:0;width:100%;background:white;padding:20px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a{font-size:14px;padding:12px}nav .button{margin-top:10px}.hero{padding:60px 0}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:620px}.network{width:480px;max-width:100%;margin:20px auto 0;transform:scale(.9)}.intro-grid{gap:30px}.section{padding:60px 0}.section-heading{align-items:start;gap:20px;flex-direction:column}.audience-card{padding:28px}.rfp-grid{grid-template-columns:1fr}.rfp-card{display:block}.membership-grid{grid-template-columns:1fr}.plan{padding:28px}.verified-grid{gap:35px}.footer-grid{grid-template-columns:2fr 1fr;gap:30px}.principles .container{display:grid;grid-template-columns:1fr 1fr;font-size:11px}}@media(max-width:550px){h1{font-size:2.7rem}.hero-copy{font-size:15px}.eyebrow{font-size:9px}.actions{flex-direction:column;align-items:stretch}.hero-note{font-size:10px}.network{height:340px;min-height:340px;transform:none}.orbit-one{width:230px;height:230px}.orbit-two{width:300px;height:300px}.hub{width:150px;height:150px}.hub strong{font-size:25px}.hub small{font-size:6px}.node{font-size:9px;padding:10px;gap:7px}.node span{font-size:20px}.node-a{left:4px;top:8px}.node-b{right:-4px;top:142px}.node-c{left:0;bottom:44px}.spark-a{right:35px}.spark-b{right:28px;bottom:60px}.network-label{font-size:9px;bottom:-4px}.intro-grid,.audience-grid,.verified-grid{grid-template-columns:1fr}.intro-grid{gap:8px}.category-grid{grid-template-columns:1fr 1fr;gap:10px}.category-card{padding:20px 15px}.category-card h3{font-size:13px}.category-card p{font-size:11px}.membership-tabs{width:100%}.tab{flex:1;padding:10px;font-size:12px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.principles .container{gap:12px}.section-heading h2{font-size:2rem}.button{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Compact spacing with a horizontal icon/title layout for categories. */
.hero { padding: 58px 0 52px; }
.section { padding: 56px 0; }
.section-heading { margin-bottom: 24px; gap: 24px; }
.eyebrow { margin-bottom: 12px; }
h2 { margin-bottom: 18px; }
.intro-grid { gap: 40px; }
.principles { padding: 18px 0; }
.audience-card { padding: 28px; }
.icon-box { margin-bottom: 18px; }
.check-list { margin: 18px 0 22px; }
.check-list li { margin: 9px 0; }
.category-grid { gap: 12px; }
.category-card {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-content: start;
  column-gap: 12px;
  row-gap: 10px;
  padding: 20px 18px;
}
.category-icon { grid-column: 1; margin: 0; line-height: 1.4; }
.category-card h3 {
  grid-column: 2;
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
}
.category-card p { grid-column: 1 / -1; margin: 0; }
.rfp-card { padding: 22px; }
.card-top { margin-bottom: 18px; }
dl { margin: 16px 0; }
.plan { padding: 24px; }
.membership-tabs { margin-bottom: 22px; }
.notice { margin-top: 22px; padding: 18px 22px; }
.verified-grid { gap: 50px; }
.platform-card { padding: 26px; }
.contact-placeholder { margin: 22px auto 16px; padding: 18px; }
footer { padding-top: 40px; }
.footer-bottom { margin-top: 26px; padding-top: 20px; }
@media (min-width: 1500px) { .hero { padding: 70px 0; } }
@media (max-width: 850px) {
  .hero { padding: 42px 0; }
  .section { padding: 42px 0; }
  .audience-card { padding: 24px; }
  .intro-grid { gap: 24px; }
  .section-heading { gap: 14px; }
  .plan { padding: 24px; }
}
@media (max-width: 550px) {
  .section { padding: 36px 0; }
  .category-grid { grid-template-columns: 1fr; }
  .category-card { padding: 18px; }
  .category-card h3 { font-size: 15px; }
  .category-card p { font-size: 13px; }
  .intro-grid { gap: 8px; }
}

/* Compact review: explicit card headings and short, consistent content gaps. */
.header-inner { min-height: 76px; }
.hero { padding: 32px 0; }
.hero-grid { gap: 24px; }
.network { min-height: 350px; transform: scale(.85); }
.hero-copy { margin-bottom: 20px; }
.hero-note { margin-top: 16px; }
.section { padding: 32px 0; }
.section-heading { margin-bottom: 18px; gap: 20px; }
h2 { margin-bottom: 14px; }
.eyebrow { margin-bottom: 8px; }
.intro-grid { gap: 28px; }
.audience-grid, .rfp-grid, .membership-grid { gap: 16px; align-items: start; }
.audience-card, .rfp-card, .plan { padding: 18px; }
.audience-card h3, .rfp-card h3, .plan h3, .category-card h3 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #12354c !important;
  -webkit-text-fill-color: #12354c;
  font-weight: 700;
  margin: 0 0 10px;
  line-height: 1.3;
}
.dark h3 { color: #ffffff !important; -webkit-text-fill-color: #ffffff; }
.audience-card h3 { font-size: 24px; }
.rfp-card h3, .plan h3 { font-size: 20px; }
.category-card h3 { font-size: 15px; margin: 0; }
.icon-box { margin-bottom: 12px; width: 40px; height: 40px; }
.audience-card > p:not(.eyebrow), .rfp-card > p { margin-bottom: 12px; }
.check-list { margin: 12px 0 16px; }
.check-list li { margin: 7px 0; }
.category-grid { gap: 10px; }
.category-card { padding: 14px; row-gap: 6px; column-gap: 8px; }
.card-top { margin-bottom: 12px; }
.rfp-card .eyebrow { margin-bottom: 6px; }
dl { margin: 10px 0; }
dl div { padding: 6px 0; }
.rfp-card .demo-status { margin-top: 12px; }
.membership-tabs { margin-bottom: 16px; }
.plan { display: block; }
.plan .eyebrow { margin-bottom: 8px; }
.plan-price { margin: 0 0 12px; }
.plan .check-list { margin: 0 0 16px; }
.plan .button { width: 100%; padding: 11px 14px; }
.notice { margin-top: 16px; padding: 14px 18px; }
.verified-grid { gap: 32px; }
.platform-card { padding: 18px; }
.platform-connector { margin: 10px; }
.contact-placeholder { margin: 16px auto 12px; padding: 14px; }
footer { padding: 28px 0 20px; }
.footer-grid { gap: 24px; }
.footer-bottom { margin-top: 20px; padding-top: 16px; }
@media (min-width: 1500px) { .hero { padding: 40px 0; } }
@media (max-width: 850px) {
  nav { top: 76px; }
  .hero { padding: 28px 0; }
  .section { padding: 28px 0; }
  .audience-card, .plan, .rfp-card { padding: 18px; }
  .network { margin-top: 0; }
  .rfp-grid { grid-template-columns: 1fr; }
}
@media (max-width: 550px) {
  .section { padding: 24px 0; }
  .category-card { padding: 14px; }
  .network { min-height: 310px; height: 310px; transform: scale(.9); }
  .section-heading { gap: 10px; }
}

.membership-group + .membership-group { margin-top: 28px; }
.membership-group > h3 { color: #12354c; -webkit-text-fill-color: #12354c; font-size: 22px; margin-bottom: 6px; }
.membership-group > p { font-size: 14px; color: var(--muted); margin-bottom: 14px; }

.hero-copy { margin-bottom: 12px; }
.hero-benefit { font-size: 15px; line-height: 1.6; color: var(--ink); max-width: 570px; margin-bottom: 20px; }
#rfp-publishing { scroll-margin-top: 95px; }

.hero-pathways { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:18px 0; }
.hero-pathways h2 { font-size:16px; letter-spacing:0; margin-bottom:8px; }
.hero-action { display:block; padding:12px 14px; border:1px solid #b4c9cc; border-radius:5px; background:white; margin-bottom:8px; }
.hero-action strong { display:block; color:var(--navy); font-size:14px; }
.hero-action > span { display:block; font-size:12px; color:var(--muted); }
.hero-action:hover { border-color:var(--green); background:#eef6f4; }
.directory-page h1 { font-size:clamp(2rem,4vw,3rem); }
.directory-page h2 { font-size:24px; margin-top:24px; }
.directory-page .notice { margin:18px 0; }
.directory-filters { display:grid; grid-template-columns:1.5fr 1fr 1fr auto; align-items:end; gap:12px; margin:22px 0; }
.directory-filters label,.date-filter { font-size:14px; font-weight:600; display:block; }
input,select { display:block; width:100%; padding:10px; border:1px solid #a8bac4; border-radius:4px; background:white; font:inherit; color:var(--ink); margin-top:5px; }
input:focus-visible,select:focus-visible { outline:3px solid var(--green); outline-offset:2px; }
.date-filter { display:inline-block; margin:0 12px 14px 0; }
.preparation-list li { padding:7px 0; }
.directory-page .rfp-grid { margin-bottom:20px; }
[hidden] { display:none!important; }
@media(max-width:850px) { .directory-filters { grid-template-columns:1fr 1fr; } }
@media(max-width:550px) { .hero-pathways,.directory-filters { grid-template-columns:1fr; } }

/* Orange audience accents with subtle label shadows. */
#buyers .eyebrow, #buyers .icon-box { color: #a84300; }
#suppliers .eyebrow, #suppliers .icon-box { color: #ff9a45; }
#buyers .eyebrow { text-shadow: 0 1px 2px #12354c20; }
#suppliers .eyebrow { text-shadow: 0 1px 2px #00000055; }
#buyers .icon-box { background: #fff0e3; }
#suppliers .icon-box { background: #ff9a451a; }

/* Readable organization name beneath the wordmark. */
.brand small {
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: .015em;
  max-width: 245px;
}
@media (max-width: 1100px) { .brand small { font-size: 10px; max-width: 210px; } }
@media (max-width: 550px) { .brand small { font-size: 10px; max-width: 195px; } }

/* Unified navy/orange identity, inspired by common corporate template patterns. */
:root { --navy: #12354c; --teal: #f58220; --green: #a84300; --light: #f5f7fa; }
h1 span, .text-link, .eyebrow { color: #a84300; }
.brand-icon, .category-icon, .node span { color: #a84300; }
.dot, .spark { background: #f58220; }
.orbit { border-color: #d9bb9e; }
.hub-symbol { color: #ffac65; }
.network-label { border-left-color: #f58220; }
.node { border-color: #e7d5c6; }
.hero { background: linear-gradient(120deg, #f5f7fa, #fff4e9); }
.hero-action:hover, .button.outline:hover { background: #fff0e2; border-color: #a84300; }
.hero-pathways > div:last-child .hero-action { background: #fff0e2; border-color: #d6a578; }
.icon-box { background: #fff0e2; color: #a84300; }
.dark .eyebrow, .dark .text-link, .dark .check-list li:before { color: #ffac65; }
.dark .icon-box { background: #ffffff14; color: #ffac65; }
.pill { background: #fff0e2; border-color: #e3be9c; color: #8e3800; }
.plan.featured { border-color: #c35b0d; }
.notice { border-left-color: #f58220; }
.verified-section { background: #fff4e9; }
.platform-mark.pv, .platform-connector { color: #a84300; }
.footer-grid .brand-icon, .footer-grid a:hover { color: #ffac65; }
a:focus-visible, button:focus-visible { outline-color: #c35b0d; }
.logo-section { overflow: hidden; background: #f5f7fa; }
.supplier-logos { background: #fff4e9; }
.logo-section .section-heading { align-items: center; }
.logo-section h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); }
.logo-disclaimer { font-size: 13px; margin-bottom: 18px; color: var(--muted); }
.logo-rows { display: grid; gap: 10px; }
.logo-viewport { overflow: hidden; }
.logo-track { display: flex; width: max-content; animation: logo-scroll 100s linear infinite; }
.logo-track.row-1 { animation-direction: reverse; animation-duration: 115s; }
.logo-set { display: flex; gap: 12px; padding-right: 12px; }
.logo-placeholder { display: flex; align-items: center; gap: 12px; width: 190px; min-height: 70px; padding: 12px 16px; border: 1px solid #dce5e8; border-radius: 5px; background: white; color: #12354c; font-size: 13px; font-weight: 650; }
.logo-placeholder small { display: block; font-size: 11px; color: var(--muted); font-weight: 400; }
.logo-glyph { font-size: 28px; color: #12354c; }
.supplier-logos .logo-glyph { color: #a84300; }
.logo-section.paused .logo-track, .logo-rows:hover .logo-track { animation-play-state: paused; }
@keyframes logo-scroll { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
 .logo-track { animation: none; }
 .logo-viewport { overflow-x: auto; }
 .logo-set[aria-hidden="true"] { display: none; }
 .logo-pause { display: none; }
}

/* Consistent orange section labels with a slightly larger type size. */
.eyebrow, .rfp-card .eyebrow, .plan .eyebrow,
#buyers .eyebrow, #suppliers .eyebrow, .dark .eyebrow {
  color: #f58220;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .1em;
  text-shadow: 0 1px 1px #12354c25;
}
#suppliers .eyebrow, .dark .eyebrow {
  text-shadow: 0 1px 2px #00000055;
}

/* Gradient design study: retain approved content and compact spacing. */
.hero {
 background:
  radial-gradient(ellipse at 95% 15%, #4b88b942 0%, transparent 56%),
  radial-gradient(ellipse at 10% 95%, #ff9a4540 0%, transparent 52%),
  linear-gradient(120deg, #f5f8fc 0%, #edf4fb 50%, #fff3e8 100%);
 border-bottom: 1px solid #dbe5ee;
}
.network {
 border-radius: 32px;
 background: radial-gradient(ellipse at 75% 25%, #407eaa35, transparent 65%), radial-gradient(ellipse at 20% 85%, #f5822030, transparent 60%);
}
.hub { background: linear-gradient(135deg, #376c96, #12354c 72%); box-shadow: 0 16px 35px #12354c30; }
.audience-card { background: linear-gradient(135deg, #ffffff, #edf4fc); }
.audience-card.dark { background: linear-gradient(135deg, #376c96, #12354c 70%); }
.muted { background: linear-gradient(115deg, #f2f6fb, #fafbfc 65%, #fff6ec); }
.verified-section { background: linear-gradient(115deg, #ffe5cd 0%, #fff5eb 45%, #e4eff8 100%); }
.buyer-logos { background: linear-gradient(110deg, #e2edf7, #f7f9fc); }
.supplier-logos { background: linear-gradient(110deg, #ffdfc1, #fff7ef 65%, #edf4fa); }
.hero-action, .platform-card, .rfp-card { box-shadow: 0 4px 16px #12354c09; }
.plan.featured { background: linear-gradient(150deg, #fff, #fff3e7); }
.contact-section { background: radial-gradient(ellipse at 50% 100%, #ffe5ce 0%, #fff 70%); }
footer { background: linear-gradient(115deg, #12354c, #244e6d); }

/* Interactive lift and color feedback, including keyboard access. */
a, button {
 transition: color .18s ease, background-color .18s ease, border-color .18s ease,
 box-shadow .18s ease, transform .18s ease;
}
.button, .hero-action, .text-link, nav > a, .footer-grid a,
.brand, .tab, .menu-toggle { position: relative; }
.text-link, .footer-grid > div > a:not(.brand) { display: inline-block; }
.button:hover, .button:focus-visible,
.hero-action:hover, .hero-action:focus-visible,
.tab:hover, .tab:focus-visible,
.menu-toggle:hover, .menu-toggle:focus-visible {
 transform: translateY(-3px);
 box-shadow: 0 7px 16px #12354c24;
}
.button:hover, .button:focus-visible {
 background: #f58220; border-color: #a84300; color: #12354c;
}
.button.outline:hover, .button.outline:focus-visible {
 background: #ffe1c6; border-color: #a84300; color: #12354c;
}
.hero-action:hover, .hero-action:focus-visible {
 background: #ffe1c6; border-color: #a84300;
}
.hero-action:hover strong, .hero-action:focus-visible strong { color: #843400; }
.text-link:hover, .text-link:focus-visible,
nav > a:not(.button):hover, nav > a:not(.button):focus-visible {
 color: #a84300; transform: translateY(-2px);
 text-decoration: underline; text-underline-offset: 4px;
}
.dark .text-link:hover, .dark .text-link:focus-visible { color: #ffc38f; }
.footer-grid a:hover, .footer-grid a:focus-visible {
 color: #ffc38f; transform: translateY(-2px);
}
.brand:hover, .brand:focus-visible { transform: translateY(-2px); }
.tab:hover, .menu-toggle:hover { background: #ffe1c6; color: #12354c; }
a:active, button:active { transform: translateY(0); box-shadow: none; }
@media (prefers-reduced-motion: reduce) {
 a, button { transition: none !important; }
 a:hover, a:focus-visible, button:hover, button:focus-visible,
 a:active, button:active { transform: none !important; }
}

/* Symmetric buyer/supplier cards with shared light gradient and readable text. */
.audience-grid { align-items: stretch; }
#buyers.audience-card, #suppliers.audience-card {
  background: linear-gradient(135deg, #ffffff, #edf4fc);
  border: 1px solid #dce5e8;
  color: #263746;
  display: flex;
  flex-direction: column;
}
#buyers.audience-card h3, #suppliers.audience-card h3 {
  color: #12354c !important;
  -webkit-text-fill-color: #12354c;
}
#buyers.audience-card > p:not(.eyebrow), #suppliers.audience-card > p:not(.eyebrow) { color: #5b6c77; }
#buyers.audience-card .icon-box, #suppliers.audience-card .icon-box { background: #fff0e3; color: #a84300; flex-shrink: 0; }
#buyers.audience-card .eyebrow, #suppliers.audience-card .eyebrow { text-shadow: 0 1px 1px #12354c25; }
#buyers.audience-card .check-list li:before, #suppliers.audience-card .check-list li:before { color: #a84300; }
#buyers.audience-card > .text-link, #suppliers.audience-card > .text-link { color: #a84300; margin-top: auto; align-self: flex-start; }
#buyers.audience-card > .text-link:hover, #suppliers.audience-card > .text-link:hover { color: #843400; }

/* Stronger contrast: paired navy cards and alternating dark sections. */
#buyers.audience-card, #suppliers.audience-card {
 background: linear-gradient(135deg, #2d5e80, #12354c 75%);
 border-color: #12354c;
 color: #ffffff;
}
#buyers.audience-card h3, #suppliers.audience-card h3 {
 color: #ffffff !important;
 -webkit-text-fill-color: #ffffff;
}
#buyers.audience-card > p:not(.eyebrow), #suppliers.audience-card > p:not(.eyebrow) { color: #dfebf2; }
#buyers.audience-card .icon-box, #suppliers.audience-card .icon-box { background: #ffffff12; color: #ffac65; }
#buyers.audience-card .eyebrow, #suppliers.audience-card .eyebrow { color: #ffac65; text-shadow: 0 1px 2px #00000055; }
#buyers.audience-card .check-list li:before, #suppliers.audience-card .check-list li:before { color: #ffac65; }
#buyers.audience-card > .text-link, #suppliers.audience-card > .text-link { color: #ffac65; }
#buyers.audience-card > .text-link:hover, #suppliers.audience-card > .text-link:hover,
#buyers.audience-card > .text-link:focus-visible, #suppliers.audience-card > .text-link:focus-visible { color: #ffd0a8; }
.principles { background: #12354c; border-color: #12354c; }
.principles .container { color: #ffffff; }
.principles span:before { color: #ffac65; }
.supplier-logos { background: linear-gradient(115deg, #12354c, #285775); }
.supplier-logos h2 { color: #ffffff; }
.supplier-logos .eyebrow { color: #ffac65; }
.supplier-logos .logo-disclaimer { color: #dfebf2; }
.supplier-logos .logo-pause { color: #ffffff; border-color: #9fb9ca; }
.supplier-logos .logo-pause:hover, .supplier-logos .logo-pause:focus-visible { color: #12354c; }
#opportunities.muted { background: linear-gradient(115deg, #dce7f1, #eaf0f6 65%, #f4e7da); }
.category-card, .rfp-card, .plan { border-color: #b4c5d0; }
.category-card:hover { border-color: #a84300; }
.section-heading > p, .hero-copy, .section-copy, .category-card p,
.rfp-card > p, .fine-print, .notice p { color: #405565; }
.contact-section { background: linear-gradient(120deg, #12354c, #285775); color: #ffffff; }
.contact-section h2 { color: #ffffff; }
.contact-section .eyebrow { color: #ffac65; }
.contact-section > .container > p:not(.eyebrow) { color: #dfebf2; }
.contact-section .text-link { color: #ffac65; }
.contact-section .text-link:hover { color: #ffd0a8; }
.contact-section .contact-placeholder { background: #ffffff; color: #12354c; border-style: solid; }
footer { background: #0c2435; }

/* Compact hero headlines: two single-line sentences on laptop screens. */
.hero h1 { font-size: clamp(1.65rem, 2.35vw, 2.15rem); line-height: 1.2; margin-bottom: 18px; letter-spacing: -.035em; }
.hero-title-line { display: block; }
.hero h1 .hero-title-line:first-child { color: #12354c; }
@media (min-width: 851px) { .hero-title-line { white-space: nowrap; } }
@media (max-width: 850px) { .hero h1 { font-size: 30px; } }
@media (max-width: 550px) { .hero h1 { font-size: clamp(20px, 5.5vw, 25px); line-height: 1.25; margin-bottom: 14px; } }

.create-rfp-section { background: #fff4e9; }
.rfp-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; list-style-position: inside; padding: 0; }
.rfp-steps li { border: 1px solid #d8c3ae; border-radius: 5px; padding: 16px; background: #ffffff; }
.rfp-steps strong { color: #12354c; font-size: 15px; }
.rfp-steps span { display: block; font-size: 13px; margin-top: 6px; }
@media(max-width:650px) { .rfp-steps { grid-template-columns: 1fr; gap: 10px; } }

/* Version 2: navy, teal and white across all public pages. */
:root { --navy:#12354c; --teal:#2bae9b; --green:#087769; }
.eyebrow,.rfp-card .eyebrow,.plan .eyebrow,h1 span,.text-link,.category-icon,.plan-price,.platform-connector { color:#087769; }
.hero h1 .hero-title-line:first-child { color:#12354c; }
.hero { background:linear-gradient(120deg,#f5f7fa,#e5f3f0); }
.hero-grid { grid-template-columns:1.3fr 1fr; gap:28px; }
.hero-photo { margin:0; min-width:0; }
.hero-photo img { width:100%; height:340px; object-fit:cover; object-position:50% 45%; border-radius:16px; display:block; box-shadow:0 12px 30px #12354c20; }
.hero-photo figcaption { font-size:12px; color:#405565; margin-top:8px; }
.brand-logo { width:148px; height:86px; object-fit:contain; display:block; background:#fff; border-radius:6px; }
.header-inner { min-height:96px; }
.audience-photo { width:100%; height:185px; object-fit:cover; border-radius:8px; margin-bottom:16px; }
#buyers.audience-card .icon-box,#suppliers.audience-card .icon-box { color:#80dccd; background:#ffffff12; }
#buyers.audience-card .eyebrow,#suppliers.audience-card .eyebrow,
#buyers.audience-card .check-list li:before,#suppliers.audience-card .check-list li:before,
#buyers.audience-card > .text-link,#suppliers.audience-card > .text-link { color:#80dccd; }
#buyers.audience-card > .text-link:hover,#suppliers.audience-card > .text-link:hover { color:#bbf4ea; }
.hero-action,.hero-pathways > div:last-child .hero-action { background:#fff; border-color:#b4c9cc; }
.hero-action:hover,.hero-action:focus-visible { background:#e0f3ee; border-color:#087769; }
.hero-action:hover strong,.hero-action:focus-visible strong { color:#065e54; }
.button:hover,.button:focus-visible { background:#2bae9b; border-color:#087769; color:#12354c; }
.button.outline:hover,.button.outline:focus-visible { background:#d8f0e9; border-color:#087769; color:#12354c; }
.text-link:hover,.text-link:focus-visible,nav > a:not(.button):hover,nav > a:not(.button):focus-visible { color:#065e54; }
.principles span:before,.supplier-logos .eyebrow,.contact-section .eyebrow,.contact-section .text-link,.footer-grid a:hover { color:#80dccd; }
.logo-glyph,.supplier-logos .logo-glyph { color:#087769; }
.buyer-logos,.muted,#opportunities.muted { background:linear-gradient(115deg,#edf3f8,#f5f7fa); }
.verified-section,.create-rfp-section { background:linear-gradient(115deg,#e2f3ee,#f5f8fa); }
.pill { background:#e8f5f0; border-color:#b1d5ca; color:#087769; }
.notice { border-left-color:#2bae9b; }
.plan.featured { border-color:#087769; background:linear-gradient(150deg,#fff,#ecf7f3); }
.icon-box { color:#087769; background:#e8f5f0; }
.check-list li:before,.rfp-card .demo-status { color:#087769; }
.platform-mark.pv { color:#087769; }
.pv-logo { width:170px; height:170px; object-fit:contain; display:block; margin:auto; }
.platform-card .brand-disclaimer { font-size:12px!important; max-width:300px; margin:8px auto; }
.category-photo { grid-column:1/-1; width:100%; height:120px; object-fit:cover; border-radius:6px; margin-top:4px; }
.rfp-steps li { border-color:#b8d2ca; }
a:focus-visible,button:focus-visible { outline-color:#087769; }
.footer-grid a:hover,.footer-grid a:focus-visible,.contact-section .text-link:hover { color:#bbf4ea; }
@media(max-width:1100px) { .hero h1 { font-size:clamp(24px,2.3vw,30px); } }
@media(max-width:850px) { .hero-grid { grid-template-columns:1fr; } .hero-photo img { height:300px; } nav { top:96px; } }
@media(max-width:550px) { .hero h1 { font-size:clamp(20px,5.5vw,25px); } .hero-photo img { height:220px; } .brand-logo { width:125px; height:76px; } .header-inner { min-height:86px; } nav { top:86px; } }

/* Vivid blue accent based on the supplied color swatch. */
:root { --teal:#4b32f3; --green:#4b32f3; }
.eyebrow,.rfp-card .eyebrow,.plan .eyebrow,h1 span,.text-link,
.category-icon,.plan-price,.platform-connector,.logo-glyph,
.supplier-logos .logo-glyph,.check-list li:before,.rfp-card .demo-status { color:#4b32f3; }
.hero { background:linear-gradient(120deg,#f5f7fa,#eeebff); }
.hero-action:hover,.hero-action:focus-visible,.button.outline:hover,.button.outline:focus-visible { background:#e9e4ff; border-color:#4b32f3; color:#12354c; }
.hero-action:hover strong,.hero-action:focus-visible strong,.text-link:hover,.text-link:focus-visible,nav > a:not(.button):hover,nav > a:not(.button):focus-visible { color:#3820bf; }
.button:hover,.button:focus-visible { background:#4b32f3; border-color:#4b32f3; color:#ffffff; }
.button.outline:hover,.button.outline:focus-visible { background:#e9e4ff; color:#12354c; }
#buyers.audience-card .eyebrow,#suppliers.audience-card .eyebrow,
#buyers.audience-card .icon-box,#suppliers.audience-card .icon-box,
#buyers.audience-card .check-list li:before,#suppliers.audience-card .check-list li:before,
#buyers.audience-card > .text-link,#suppliers.audience-card > .text-link,
.principles span:before,.supplier-logos .eyebrow,.contact-section .eyebrow,
.contact-section .text-link,.footer-grid a:hover { color:#c7bfff; }
#buyers.audience-card > .text-link:hover,#suppliers.audience-card > .text-link:hover,
.footer-grid a:hover,.footer-grid a:focus-visible,.contact-section .text-link:hover { color:#e2ddff; }
.verified-section,.create-rfp-section { background:linear-gradient(115deg,#eeeaff,#f5f8fa); }
.pill,.icon-box { background:#eeebff; color:#4b32f3; border-color:#c4baf7; }
.notice { border-left-color:#4b32f3; }
.plan.featured { border-color:#4b32f3; background:linear-gradient(150deg,#ffffff,#f0edff); }
a:focus-visible,button:focus-visible { outline-color:#4b32f3; }

/* Horizontal brand artwork, preserved in its original colors. */
.brand-logo { width:250px; height:auto; aspect-ratio:3/1; object-fit:contain; background:#ffffff; padding:5px 8px; }
.intro-brand-logo { display:block; width:min(340px,100%); height:auto; margin-bottom:14px; }
footer .brand-logo { width:260px; max-width:100%; border-radius:6px; padding:10px; }
@media(max-width:1100px) { .header .brand-logo { width:205px; } }
@media(max-width:550px) { .header .brand-logo { width:210px; max-width:100%; } .intro-brand-logo { width:280px; } }

/* Explicit base sizing and constrained branding for deployment. */
html { font-size:16px; }
body { font-size:16px; }
.brand { flex-shrink:0; max-width:100%; }
.brand-logo { max-width:100%; }
.intro-grid > div { min-width:0; }
.intro-brand-logo { max-width:100%; }
