:root{
 --bg:#06101e;--bg-2:#0a1627;--panel:#0d1d31;--panel-2:#112640;--glass:rgba(10,25,43,.76);
 --text:#f7f9fc;--muted:#aebdd0;--soft:#d8e3ef;--line:rgba(255,255,255,.105);
 --gold:#d5a93f;--gold-2:#f4d579;--blue:#1eb8ff;--cyan:#67dcff;--navy:#06101e;
 --success:#69e6b4;--shadow:0 28px 78px rgba(0,0,0,.34);--shadow-soft:0 16px 42px rgba(0,0,0,.22);
 --radius:24px;--radius-sm:15px;--wrap:min(1360px,calc(100% - 40px));--header:82px;
 --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
html[data-theme="light"]{--bg:#eef4fb;--bg-2:#fff;--panel:#fff;--panel-2:#f3f7fb;--glass:rgba(255,255,255,.88);--text:#0b1726;--muted:#52657b;--soft:#273d54;--line:rgba(11,23,38,.13);--shadow:0 24px 66px rgba(25,58,91,.13);--shadow-soft:0 12px 34px rgba(25,58,91,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}html[data-theme="light"]{color-scheme:light}body{margin:0;font-family:var(--font);background:radial-gradient(circle at 12% -5%,rgba(30,184,255,.16),transparent 26rem),radial-gradient(circle at 90% 5%,rgba(213,169,63,.12),transparent 24rem),linear-gradient(180deg,var(--bg),#040a12 62%,var(--bg));color:var(--text);line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html[data-theme="light"] body{background:radial-gradient(circle at 12% -5%,rgba(30,184,255,.10),transparent 26rem),radial-gradient(circle at 90% 5%,rgba(213,169,63,.09),transparent 24rem),linear-gradient(180deg,#f7fbff,#eaf1f8 62%,#f4f8fc)}
a{color:inherit}.wrap{width:var(--wrap);margin-inline:auto}.skip-link{position:fixed;left:12px;top:-100px;z-index:10000;background:#fff;color:#000;padding:11px 16px;border-radius:10px;font-weight:800}.skip-link:focus{top:12px}.announcement{background:#030a12;border-bottom:1px solid rgba(213,169,63,.22);font-size:.82rem;color:#dae7f4}.announcement-inner{min-height:34px;display:flex;align-items:center;justify-content:center;gap:10px}.announcement-inner a{margin-left:auto;color:#fff;text-decoration:none;font-weight:750}.pulse{width:7px;height:7px;border-radius:999px;background:var(--gold-2);box-shadow:0 0 18px var(--gold-2);flex:0 0 auto}
.site-header{position:sticky;top:0;z-index:300;background:rgba(5,14,25,.84);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid var(--line)}html[data-theme="light"] .site-header{background:rgba(255,255,255,.88)}.header-inner{min-height:var(--header);display:flex;align-items:center;gap:18px}.site-brand{display:flex;align-items:center;gap:11px;text-decoration:none;min-width:max-content}.site-brand .media-picture{display:block}.header-logo{display:block;width:94px;height:56px;object-fit:contain;border-radius:10px;border:1px solid rgba(213,169,63,.36);box-shadow:0 7px 26px rgba(0,0,0,.24)}.site-brand-copy strong{display:block;font-size:1rem;line-height:1.1;letter-spacing:-.01em}.site-brand-copy small{display:block;color:var(--muted);font-size:.7rem;margin-top:4px}.nav{margin-left:auto;display:flex;align-items:center;gap:2px}.nav>details{position:relative}.nav summary,.nav-link{display:block;list-style:none;cursor:pointer;text-decoration:none;padding:11px 10px;border-radius:10px;color:var(--soft);font-size:.87rem;font-weight:730;white-space:nowrap}.nav summary::-webkit-details-marker{display:none}.nav summary::after{content:"⌄";font-size:.7em;margin-left:5px;color:var(--muted)}.nav summary:hover,.nav-link:hover,.nav details[open]>summary{background:rgba(255,255,255,.06);color:var(--text)}html[data-theme="light"] .nav summary:hover,html[data-theme="light"] .nav-link:hover,html[data-theme="light"] .nav details[open]>summary{background:#eef4f9}.mega{position:absolute;right:-18px;top:52px;width:min(770px,92vw);display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px;background:rgba(7,17,30,.985);border:1px solid rgba(213,169,63,.28);border-radius:20px;box-shadow:0 28px 90px rgba(0,0,0,.55)}html[data-theme="light"] .mega{background:#fff}.mega-products{grid-template-columns:repeat(4,1fr);width:min(980px,94vw)}.mega a{text-decoration:none;padding:13px;border:1px solid transparent;border-radius:13px;transition:background .18s,border-color .18s,transform .18s}.mega a:hover{background:rgba(30,184,255,.07);border-color:rgba(103,220,255,.18);transform:translateY(-1px)}.mega b{display:block;font-size:.92rem}.mega span{display:block;color:var(--muted);font-size:.73rem;line-height:1.38;margin-top:3px}.mega-kicker{color:var(--gold-2)!important;text-transform:uppercase;letter-spacing:.13em;font-size:.62rem!important;font-weight:850}.header-actions{display:flex;align-items:center;gap:8px}.theme-toggle,.menu-toggle{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);border-radius:12px;min-height:43px;padding:0 12px;font:inherit;font-weight:750;cursor:pointer}.theme-toggle{width:43px;padding:0}.menu-toggle{display:none;gap:8px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;border:1px solid var(--line);border-radius:13px;text-decoration:none;font-weight:800;font-size:.9rem;letter-spacing:-.01em;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.20)}.btn-primary{background:linear-gradient(180deg,#f4d77c,#c89b34);border-color:#efcf70;color:#161005;text-shadow:0 1px rgba(255,255,255,.35);box-shadow:inset 0 1px rgba(255,255,255,.62),0 10px 28px rgba(213,169,63,.16)}.btn-secondary{background:linear-gradient(180deg,#37c6ff,#0d87da);border-color:#5dd6ff;color:#03111e;box-shadow:inset 0 1px rgba(255,255,255,.34),0 10px 28px rgba(30,184,255,.16)}.btn-ghost{background:rgba(255,255,255,.045)}html[data-theme="light"] .btn-ghost{background:#fff}.button-row{display:flex;gap:11px;flex-wrap:wrap;margin-top:26px}.text-link{font-weight:800;text-decoration:none;color:var(--text)}.text-link:hover{color:var(--cyan)}
.eyebrow,.card-kicker{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:900;color:var(--gold-2)}.home-hero{position:relative;overflow:hidden;padding:92px 0 78px;border-bottom:1px solid var(--line)}.home-hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:58px;align-items:center}.hero-aurora,.hero-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 68% 34%,rgba(30,184,255,.15),transparent 28%),radial-gradient(circle at 82% 58%,rgba(213,169,63,.10),transparent 22%)}.hero-copy{position:relative;z-index:2}.home-hero h1{font-size:clamp(3rem,5.8vw,6.4rem);line-height:.94;letter-spacing:-.058em;margin:.16em 0 .28em;max-width:880px}.home-hero h1 span{font-size:.66em;line-height:1.02;background:linear-gradient(90deg,#fff 15%,#80e4ff 58%,#f3d77a);-webkit-background-clip:text;background-clip:text;color:transparent}html[data-theme="light"] .home-hero h1 span{background:linear-gradient(90deg,#0b1726 15%,#0877b8 58%,#8f6919);-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:clamp(1.08rem,1.55vw,1.31rem);color:var(--soft);max-width:780px}.hero-proof{display:flex;gap:7px;flex-wrap:wrap;margin-top:28px}.hero-proof span{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:.72rem;color:var(--muted);background:rgba(255,255,255,.025)}.hero-showcase{position:relative;min-height:520px;display:grid;place-items:center}.hero-showcase .media-picture{position:relative;z-index:3}.hero-logo{display:block;width:min(680px,100%);height:auto;border-radius:30px;box-shadow:0 44px 110px rgba(0,0,0,.42),0 0 90px rgba(30,184,255,.10);border:1px solid rgba(103,220,255,.18)}.showcase-ring{position:absolute;border:1px solid rgba(103,220,255,.18);border-radius:50%;width:78%;aspect-ratio:1.7;transform:rotate(-8deg)}.showcase-ring.r2{width:62%;border-color:rgba(213,169,63,.24);transform:rotate(13deg)}.showcase-chip{position:absolute;z-index:4;padding:8px 12px;border-radius:999px;background:rgba(7,20,35,.92);border:1px solid var(--line);box-shadow:var(--shadow-soft);font-size:.72rem;font-weight:800;color:#e5edf6}.chip-a{left:0;top:18%}.chip-b{right:0;top:32%}.chip-c{right:9%;bottom:10%}.metric-strip{border-bottom:1px solid var(--line);background:rgba(255,255,255,.018)}.metrics{display:grid;grid-template-columns:repeat(5,1fr)}.metrics div{text-align:center;padding:21px 12px;border-right:1px solid var(--line)}.metrics div:last-child{border-right:0}.metrics strong{display:block;font-size:1.65rem;line-height:1;color:var(--text)}.metrics span{display:block;color:var(--muted);font-size:.74rem;margin-top:5px}
.page-hero{position:relative;overflow:hidden;padding:76px 0 62px;border-bottom:1px solid var(--line)}.page-hero .hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);gap:48px;align-items:center}.page-hero h1{font-size:clamp(2.8rem,5vw,5.4rem);line-height:.96;letter-spacing:-.052em;margin:.15em 0 .25em}.hero-media .media-picture{display:block}.hero-media img,.brand-art{display:block;width:100%;height:auto;border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow);background:#07111e}.section{padding:82px 0}.section-alt{background:rgba(255,255,255,.018);border-block:1px solid var(--line)}html[data-theme="light"] .section-alt{background:rgba(255,255,255,.58)}.section-heading{max-width:900px;margin:0 auto 38px;text-align:center}.section-heading h2{font-size:clamp(2rem,3.8vw,3.7rem);line-height:1.04;letter-spacing:-.04em;margin:.18em 0 .22em}.section-heading>p:not(.eyebrow){font-size:1.04rem;color:var(--muted)}.card-grid{display:grid;gap:18px}.cols-2{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}.card{display:flex;flex-direction:column;min-width:0;background:linear-gradient(180deg,rgba(17,38,64,.82),rgba(8,20,35,.94));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .2s,border-color .2s,box-shadow .2s}html[data-theme="light"] .card{background:linear-gradient(180deg,#fff,#f7fafc)}.card:hover{transform:translateY(-3px);border-color:rgba(213,169,63,.35);box-shadow:var(--shadow)}.card>.media-picture{display:block;aspect-ratio:16/9;background:#06101e;overflow:hidden}.brand-grid .card>.media-picture{aspect-ratio:16/10}.card>.media-picture img{width:100%;height:100%;object-fit:cover}.card-body{padding:22px;display:flex;flex-direction:column;flex:1}.card h3{font-size:1.22rem;line-height:1.15;margin:.28em 0 .5em;letter-spacing:-.02em}.card p{color:var(--muted);margin:.1em 0 1.15em}.card .text-link{margin-top:auto}.division-grid .card{min-height:270px}.division-grid .card:nth-child(1){border-top-color:#45caff}.division-grid .card:nth-child(2){border-top-color:#e6bd59}.division-grid .card:nth-child(3){border-top-color:#80e0ba}.division-grid .card:nth-child(4){border-top-color:#b9a6ff}.solution-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.solution-grid>a{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;text-decoration:none;padding:19px;border:1px solid var(--line);border-radius:16px;background:var(--panel);transition:transform .18s,border-color .18s}.solution-grid>a:hover{transform:translateY(-2px);border-color:rgba(103,220,255,.38)}.solution-grid h3{margin:0;font-size:1rem}.solution-grid p{margin:3px 0 0;color:var(--muted);font-size:.84rem}.solution-no,.solution-index{font-variant-numeric:tabular-nums;color:var(--gold-2);font-weight:900}.media-split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;margin:36px 0 72px}.media-split.reverse .media-copy{order:2}.media-split.reverse .media-frame{order:1}.media-copy h3{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 .4em}.media-copy p{font-size:1.04rem;color:var(--muted)}.media-frame{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#05101d;box-shadow:var(--shadow)}.media-frame img{display:block;width:100%;height:auto}.corporate-panel{display:grid;grid-template-columns:1fr .9fr;gap:38px;align-items:center;padding:34px;background:linear-gradient(135deg,rgba(17,40,67,.88),rgba(7,18,31,.92));border:1px solid rgba(213,169,63,.28);border-radius:30px;box-shadow:var(--shadow)}html[data-theme="light"] .corporate-panel{background:linear-gradient(135deg,#fff,#eef5fb)}.corporate-copy h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1;letter-spacing:-.045em;margin:.18em 0}.corporate-copy>p:not(.eyebrow){color:var(--muted);font-size:1.06rem}.corporate-art img{display:block;width:100%;height:auto;border-radius:22px}.solution-details{max-width:1040px;margin:auto}.solution-detail{display:grid;grid-template-columns:72px 1fr;gap:20px;padding:28px 0;border-top:1px solid var(--line);scroll-margin-top:120px}.solution-detail:last-child{border-bottom:1px solid var(--line)}.solution-detail h2{font-size:1.8rem;margin:0 0 .25em}.solution-detail p{color:var(--muted);max-width:760px}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-grid figure{margin:0;border:1px solid var(--line);background:var(--panel);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-soft)}.gallery-grid figure .media-picture{display:block}.gallery-grid img{display:block;width:100%;height:auto}.gallery-grid figcaption{padding:12px 15px;color:var(--muted);font-size:.8rem}.kjv-gallery figure:first-child{grid-column:1/-1}.legal-content{max-width:980px}.legal-content>.legal-box,.legal-content .legal-box{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;margin:16px 0}.legal-content h1{display:none}.legal-content h2{font-size:1.45rem;line-height:1.2;color:var(--text);margin-top:0}.legal-content h3{font-size:1.15rem}.legal-content p,.legal-content li{color:var(--soft)}.legal-content a{color:var(--cyan)}.legal-content ul,.legal-content ol{padding-left:1.35em}.faq-list{max-width:950px;margin:auto}.faq-list details{border:1px solid var(--line);border-radius:16px;background:var(--panel);margin:10px 0}.faq-list summary{cursor:pointer;padding:18px 20px;font-weight:850;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";float:right;color:var(--gold-2)}.faq-list details[open] summary::after{content:"–"}.faq-list details>div{padding:0 20px 18px}.faq-list p{color:var(--muted)}
.site-footer{padding:66px 0 24px;background:#030911;border-top:1px solid rgba(213,169,63,.24);color:#e7eef6}html[data-theme="light"] .site-footer{background:#081523;color:#eef5fb}.footer-lead{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid rgba(255,255,255,.11)}.footer-lead h2{font-size:clamp(1.9rem,3.2vw,3.2rem);line-height:1.05;letter-spacing:-.04em;margin:.18em 0 .2em;max-width:850px}.footer-lead p{color:#aebdd0;max-width:820px}.footer-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}.footer-col h3{font-size:.86rem;color:#fff;margin:0 0 14px}.footer-col a{display:block;color:#a8b7c9;text-decoration:none;font-size:.8rem;margin:8px 0}.footer-col a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.10);font-size:.75rem;color:#8ea0b4}.footer-bottom p{margin:0}.footer-bottom a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid #7ee1ff;outline-offset:3px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:1180px){.nav{display:none;position:absolute;left:20px;right:20px;top:calc(var(--header) + 35px);margin:0;max-height:calc(100vh - 140px);overflow:auto;background:rgba(5,16,29,.98);border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow)}html[data-theme="light"] .nav{background:#fff}.nav.open{display:flex;flex-direction:column;align-items:stretch}.nav>details,.nav-link{width:100%}.mega,.mega-products{position:static;width:100%;grid-template-columns:repeat(2,1fr);margin-top:6px;box-shadow:none}.menu-toggle{display:inline-flex;margin-left:auto}.header-actions{margin-left:0}.header-cta{display:none}.home-hero-grid,.page-hero .hero-grid{grid-template-columns:1fr}.hero-showcase{min-height:auto;margin-top:14px}.hero-logo{width:100%}.showcase-chip,.showcase-ring{display:none}.cols-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-lead{grid-template-columns:1fr}.corporate-panel{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(3,1fr)}.metrics div:nth-child(3){border-right:0}}@media (max-width:760px){:root{--wrap:min(100% - 24px,1360px);--header:72px}.announcement-inner{justify-content:flex-start;overflow:hidden;white-space:nowrap}.announcement-inner a{display:none}.site-brand-copy small{display:none}.header-logo{width:72px;height:44px}.home-hero{padding:58px 0 52px}.home-hero h1{font-size:clamp(2.6rem,13vw,4.2rem)}.page-hero{padding:52px 0 42px}.section{padding:60px 0}.cols-2,.cols-3,.cols-4,.solution-grid,.gallery-grid,.footer-grid{grid-template-columns:1fr}.kjv-gallery figure:first-child{grid-column:auto}.media-split{grid-template-columns:1fr;margin-bottom:52px}.media-split.reverse .media-copy,.media-split.reverse .media-frame{order:initial}.metrics{grid-template-columns:1fr 1fr}.metrics div{border-bottom:1px solid var(--line)}.metrics div:nth-child(odd){border-right:1px solid var(--line)}.metrics div:nth-child(even){border-right:0}.metrics div:last-child{grid-column:1/-1}.mega,.mega-products{grid-template-columns:1fr}.solution-detail{grid-template-columns:46px 1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.button-row .btn{width:100%}.theme-toggle{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* === 2026-09-07 REAL-ASSET HERO & MEDIA REFINEMENT === */
.page-hero-art{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;filter:drop-shadow(0 24px 46px rgba(0,0,0,.34));}
.hero-media{display:flex;align-items:center;justify-content:center;min-height:280px;}
.hero-media .media-picture{display:block;width:min(100%,720px);margin-inline:auto;}
.media-feature{padding-block:clamp(3.5rem,7vw,6rem);}
.media-feature .split-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:clamp(2rem,5vw,5rem);align-items:center;}
.media-feature .media-card{padding:clamp(1rem,2vw,1.5rem);border:1px solid rgba(212,175,55,.34);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.018));box-shadow:0 30px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);}
.media-feature .media-card img{display:block;width:100%;height:auto;border-radius:20px;}
@media(max-width:820px){.media-feature .split-panel{grid-template-columns:1fr}.hero-media{min-height:0}}

/* === SOURCE-VERIFIED 2026-09-07 REBUILD === */
.verified-profile{position:relative;overflow:hidden;border-block:1px solid rgba(212,175,55,.16);background:radial-gradient(circle at 12% 0%,rgba(31,157,255,.08),transparent 34%),radial-gradient(circle at 88% 100%,rgba(212,175,55,.075),transparent 36%),linear-gradient(180deg,rgba(5,14,26,.98),rgba(3,9,18,.99));}
.verified-profile::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(80,170,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(80,170,255,.03) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 90%)}
.verified-profile>.wrap{position:relative;z-index:1}
.verified-grid{margin-top:clamp(1.6rem,3vw,2.7rem)}
.verified-card{border-color:rgba(88,176,255,.22)!important;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;box-shadow:0 18px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.06)!important}
.verified-card h3{color:var(--gold,#e6c75d)}
.verified-actions{margin-top:clamp(1.8rem,4vw,3rem);justify-content:center;flex-wrap:wrap}
.verified-network{background:linear-gradient(180deg,rgba(3,10,20,.98),rgba(5,16,29,.98))}
.compact-network .card{min-height:210px}.compact-network .card h3{margin-bottom:.55rem}.compact-network .card p{margin-bottom:1rem}
.legal-scope-note{margin-top:clamp(2rem,5vw,4rem)}
html[data-theme="light"] .verified-profile{background:radial-gradient(circle at 12% 0%,rgba(31,157,255,.07),transparent 34%),radial-gradient(circle at 88% 100%,rgba(180,130,20,.07),transparent 36%),linear-gradient(180deg,#fff,#f5f8fb)}
@media(max-width:760px){.verified-grid{grid-template-columns:1fr!important}.compact-network{grid-template-columns:1fr!important}}

/* PlatformClouds logo: always show complete artwork without cropping */
img[src*="/assets/img/platformclouds-logo/"]{object-fit:contain!important;object-position:center center!important;}


/* ==========================================================
   PLATFORMCLOUDS — PREMIUM SITE-WIDE NAV + FOOTER BUTTON SYSTEM
   Correct selectors for the actual current HTML structure.
   This block styles only navigation/footer presentation.
   ========================================================== */

/* ----------------------------------------------------------
   TOP NAVIGATION — PREMIUM 3D BUTTONS
   IMPORTANT: these rules do NOT alter the established header
   positioning, centring, wrapping, logo placement or dropdown
   geometry. They style the existing .nav summary and .nav-link.
   ---------------------------------------------------------- */

.site-header .nav > details > summary,
.site-header .nav > .nav-link{
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:11px 14px;
  margin:0 2px;
  border:1px solid rgba(112,205,255,.30);
  border-radius:13px;
  background:
    linear-gradient(180deg,
      rgba(38,91,132,.98) 0%,
      rgba(18,55,88,.98) 52%,
      rgba(8,30,53,.99) 100%);
  color:#f7fbff;
  text-decoration:none;
  font-size:.86rem;
  font-weight:820;
  line-height:1;
  letter-spacing:.005em;
  white-space:nowrap;
  text-shadow:0 1px 1px rgba(0,0,0,.65);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -2px 0 rgba(0,0,0,.30),
    0 4px 0 rgba(2,14,27,.82),
    0 8px 16px rgba(0,0,0,.25);
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease,
    filter .16s ease;
}

.site-header .nav > details > summary::before,
.site-header .nav > .nav-link::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px 1px auto 1px;
  height:42%;
  border-radius:11px 11px 8px 8px;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,0));
  pointer-events:none;
}

.site-header .nav > details > summary:hover,
.site-header .nav > details[open] > summary,
.site-header .nav > .nav-link:hover{
  color:#fff;
  border-color:rgba(116,221,255,.68);
  filter:brightness(1.08);
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -2px 0 rgba(0,0,0,.27),
    0 6px 0 rgba(2,14,27,.78),
    0 12px 22px rgba(0,0,0,.30),
    0 0 18px rgba(30,184,255,.12);
}

.site-header .nav > details > summary:active,
.site-header .nav > .nav-link:active{
  transform:translateY(2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.24),
    0 2px 0 rgba(2,14,27,.84),
    0 5px 10px rgba(0,0,0,.24);
}

.site-header .nav > details > summary:focus-visible,
.site-header .nav > .nav-link:focus-visible{
  outline:3px solid #7ee1ff;
  outline-offset:3px;
}

/* Keep the existing dropdown arrow, but make it premium. */
.site-header .nav > details > summary::after{
  color:#bfeeff;
  font-weight:900;
  text-shadow:0 1px 1px rgba(0,0,0,.55);
}

/* Light theme version — same geometry, lighter 3D face. */
html[data-theme="light"] .site-header .nav > details > summary,
html[data-theme="light"] .site-header .nav > .nav-link{
  color:#082139;
  text-shadow:0 1px 0 rgba(255,255,255,.75);
  border-color:rgba(34,129,190,.30);
  background:
    linear-gradient(180deg,#fafdff 0%,#dcecf8 50%,#b8d7ec 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -2px 0 rgba(27,91,130,.18),
    0 4px 0 rgba(77,124,157,.34),
    0 8px 16px rgba(31,78,112,.14);
}

/* ----------------------------------------------------------
   RESPONSIVE TOP NAV
   On the existing mobile dropdown the links remain full width
   and gain comfortable separation without changing menu logic.
   ---------------------------------------------------------- */

@media (max-width:1180px){
  .site-header .nav > details > summary,
  .site-header .nav > .nav-link{
    width:100%;
    min-height:48px;
    margin:4px 0;
    justify-content:space-between;
    padding:12px 15px;
  }
}

/* ==========================================================
   PREMIUM FOOTER — BRAND/CATEGORY PANELS IN ROWS + COLUMNS
   Supports BOTH the latest footer classes:
     .pc-premium-footer-grid / .pc-footer-group /
     .pc-footer-button-grid
   AND the requested semantic aliases:
     .pc-footer-brand-grid / .pc-footer-brand /
     .pc-footer-brand-links
   ========================================================== */

.site-footer{
  padding:68px 0 26px;
  background:
    radial-gradient(circle at 12% 0%,rgba(30,184,255,.075),transparent 28rem),
    radial-gradient(circle at 88% 100%,rgba(213,169,63,.065),transparent 25rem),
    linear-gradient(180deg,#040c16 0%,#02070d 100%);
  border-top:1px solid rgba(213,169,63,.30);
  color:#eaf2fb;
}

.site-footer > .wrap{
  width:min(96%,1760px);
  max-width:1760px;
}

/* Footer title area */
.pc-premium-footer-head,
.pc-footer-heading{
  max-width:1120px;
  margin:0 auto 38px;
  text-align:center;
}

.pc-premium-footer-head h2,
.pc-footer-heading h2{
  margin:0 0 10px;
  font-size:clamp(1.65rem,2.5vw,2.55rem);
  line-height:1.08;
  letter-spacing:-.025em;
  color:#fff;
  text-shadow:0 2px 16px rgba(0,0,0,.35);
}

.pc-premium-footer-head p,
.pc-footer-heading p{
  margin:0;
  color:#aebdd0;
  font-size:.94rem;
}

/* THE MAIN BRAND GRID:
   4 columns large desktop, 3 desktop, 2 tablet, 1 mobile. */
.pc-premium-footer-grid,
.pc-footer-brand-grid,
.pc-footer-sections{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:start!important;
}

/* Each brand/category is a distinct premium panel. */
.pc-footer-group,
.pc-footer-brand,
.pc-footer-section{
  min-width:0!important;
  margin:0!important;
  padding:18px!important;
  border:1px solid rgba(125,189,235,.18)!important;
  border-top-color:rgba(213,169,63,.42)!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(15,36,59,.86),rgba(6,18,31,.95))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 12px 28px rgba(0,0,0,.20)!important;
  overflow:hidden!important;
}

/* Brand/category title */
.pc-footer-group h3,
.pc-footer-brand h3,
.pc-footer-section h3{
  margin:0 0 14px!important;
  padding:0 0 11px!important;
  border-bottom:1px solid rgba(255,255,255,.105)!important;
  color:#f7fbff!important;
  font-size:.91rem!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.012em!important;
  text-align:left!important;
}

/* Short premium buttons directly under each title. */
.pc-footer-button-grid,
.pc-footer-brand-links,
.pc-footer-buttons{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}

/* Override old generic .footer-col anchor treatment when needed. */
.site-footer .pc-footer-button-grid a,
.site-footer .pc-footer-brand-links a,
.site-footer .pc-footer-buttons a{
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:38px!important;
  margin:0!important;
  padding:8px 9px!important;
  border:1px solid rgba(103,220,255,.24)!important;
  border-radius:10px!important;
  background:
    linear-gradient(180deg,
      rgba(26,67,103,.98) 0%,
      rgba(13,43,72,.99) 54%,
      rgba(7,26,46,.99) 100%)!important;
  color:#f4f9ff!important;
  text-decoration:none!important;
  font-size:.75rem!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-shadow:0 1px 1px rgba(0,0,0,.55)!important;
  overflow-wrap:anywhere!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -1px 0 rgba(0,0,0,.26),
    0 3px 0 rgba(1,11,21,.82),
    0 6px 12px rgba(0,0,0,.22)!important;
  transition:
    transform .15s ease,
    border-color .15s ease,
    box-shadow .15s ease,
    filter .15s ease!important;
}

/* Small upper gloss, visually related to header but intentionally softer. */
.site-footer .pc-footer-button-grid a::before,
.site-footer .pc-footer-brand-links a::before,
.site-footer .pc-footer-buttons a::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px 1px auto 1px;
  height:42%;
  border-radius:8px 8px 6px 6px;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0));
  pointer-events:none;
}

.site-footer .pc-footer-button-grid a:hover,
.site-footer .pc-footer-brand-links a:hover,
.site-footer .pc-footer-buttons a:hover,
.site-footer .pc-footer-button-grid a:focus-visible,
.site-footer .pc-footer-brand-links a:focus-visible,
.site-footer .pc-footer-buttons a:focus-visible{
  color:#fff!important;
  border-color:rgba(117,225,255,.60)!important;
  filter:brightness(1.08)!important;
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.17),
    inset 0 -1px 0 rgba(0,0,0,.22),
    0 5px 0 rgba(1,11,21,.78),
    0 9px 16px rgba(0,0,0,.27),
    0 0 14px rgba(30,184,255,.09)!important;
}

.site-footer .pc-footer-button-grid a:active,
.site-footer .pc-footer-brand-links a:active,
.site-footer .pc-footer-buttons a:active{
  transform:translateY(1px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 2px 0 rgba(1,11,21,.82),
    0 4px 8px rgba(0,0,0,.22)!important;
}

/* Ministry partner / explanatory notes */
.pc-footer-note{
  margin:12px 2px 0!important;
  color:#91a5bb!important;
  font-size:.72rem!important;
  line-height:1.42!important;
}

/* Bottom copyright strip */
.pc-premium-footer-bottom,
.pc-footer-bottom{
  margin-top:34px!important;
  padding-top:22px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  color:#8fa2b7!important;
  text-align:center!important;
  font-size:.76rem!important;
}

.pc-premium-footer-bottom p,
.pc-footer-bottom p{
  margin:0!important;
}

/* Footer responsive columns/rows */
@media (max-width:1380px){
  .pc-premium-footer-grid,
  .pc-footer-brand-grid,
  .pc-footer-sections{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media (max-width:980px){
  .pc-premium-footer-grid,
  .pc-footer-brand-grid,
  .pc-footer-sections{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:620px){
  .site-footer{
    padding-top:54px;
  }

  .site-footer > .wrap{
    width:min(94%,100%)!important;
  }

  .pc-premium-footer-grid,
  .pc-footer-brand-grid,
  .pc-footer-sections{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .pc-footer-group,
  .pc-footer-brand,
  .pc-footer-section{
    padding:16px!important;
  }
}

@media (max-width:430px){
  .pc-footer-button-grid,
  .pc-footer-brand-links,
  .pc-footer-buttons{
    grid-template-columns:1fr!important;
  }

  .site-footer .pc-footer-button-grid a,
  .site-footer .pc-footer-brand-links a,
  .site-footer .pc-footer-buttons a{
    min-height:40px!important;
    font-size:.78rem!important;
  }
}

/* Reduced-motion accessibility */
@media (prefers-reduced-motion:reduce){
  .site-header .nav > details > summary,
  .site-header .nav > .nav-link,
  .site-footer .pc-footer-button-grid a,
  .site-footer .pc-footer-brand-links a,
  .site-footer .pc-footer-buttons a{
    transition:none!important;
  }
}

/* ==========================================================
   PLATFORMCLOUDS — SITE-WIDE CONTENT LINK BUTTON SYSTEM
   Applies to links throughout cards, page sections, legal text,
   feature panels, resource areas and other page content.
   This style is intentionally similar to, but distinct from,
   the TOP NAV and FOOTER button systems.
   ========================================================== */

:root{
  --pc-content-link-border:rgba(122,203,255,.30);
  --pc-content-link-border-hover:rgba(150,224,255,.72);
  --pc-content-link-top:#2f72a7;
  --pc-content-link-mid:#17517f;
  --pc-content-link-bottom:#0b3154;
  --pc-content-link-edge:#031525;
  --pc-content-link-text:#f8fbff;
}

/* ----------------------------------------------------------
   SHARED CONTENT BUTTON FACE
   ---------------------------------------------------------- */

main .text-link,
main .card a:not(.media-picture):not(.btn),
main .verified-card a:not(.media-picture):not(.btn),
main .solution-detail a:not(.btn),
main .media-copy a:not(.btn),
main .corporate-copy a:not(.btn),
main .legal-content a:not(.btn),
main .faq-list a:not(.btn),
main .resource-card a:not(.media-picture):not(.btn),
main .feature-card a:not(.media-picture):not(.btn),
main .product-card a:not(.media-picture):not(.btn),
main .brand-card a:not(.media-picture):not(.btn),
main .info-card a:not(.media-picture):not(.btn),
main .download-card a:not(.media-picture):not(.btn),
main .pricing-card a:not(.media-picture):not(.btn),
main .news-card a:not(.media-picture):not(.btn),
main p > a:not(.btn):not(.media-picture),
main li > a:not(.btn):not(.media-picture){
  position:relative;
  isolation:isolate;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  max-width:100%;
  padding:8px 12px;
  margin:4px 2px;
  border:1px solid var(--pc-content-link-border);
  border-radius:11px;
  background:
    linear-gradient(180deg,
      var(--pc-content-link-top) 0%,
      var(--pc-content-link-mid) 54%,
      var(--pc-content-link-bottom) 100%);
  color:var(--pc-content-link-text)!important;
  text-decoration:none!important;
  font-size:.79rem;
  font-weight:820;
  line-height:1.15;
  text-align:center;
  letter-spacing:.003em;
  text-shadow:0 1px 1px rgba(0,0,0,.56);
  overflow-wrap:anywhere;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -2px 0 rgba(0,0,0,.23),
    0 3px 0 var(--pc-content-link-edge),
    0 7px 14px rgba(0,0,0,.22);
  transition:
    transform .15s ease,
    border-color .15s ease,
    box-shadow .15s ease,
    filter .15s ease;
}

/* Gloss highlight */
main .text-link::before,
main .card a:not(.media-picture):not(.btn)::before,
main .verified-card a:not(.media-picture):not(.btn)::before,
main .solution-detail a:not(.btn)::before,
main .media-copy a:not(.btn)::before,
main .corporate-copy a:not(.btn)::before,
main .legal-content a:not(.btn)::before,
main .faq-list a:not(.btn)::before,
main .resource-card a:not(.media-picture):not(.btn)::before,
main .feature-card a:not(.media-picture):not(.btn)::before,
main .product-card a:not(.media-picture):not(.btn)::before,
main .brand-card a:not(.media-picture):not(.btn)::before,
main .info-card a:not(.media-picture):not(.btn)::before,
main .download-card a:not(.media-picture):not(.btn)::before,
main .pricing-card a:not(.media-picture):not(.btn)::before,
main .news-card a:not(.media-picture):not(.btn)::before,
main p > a:not(.btn):not(.media-picture)::before,
main li > a:not(.btn):not(.media-picture)::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px 1px auto 1px;
  height:42%;
  border-radius:9px 9px 6px 6px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,0));
  pointer-events:none;
}

/* Hover/focus */
main .text-link:hover,
main .card a:not(.media-picture):not(.btn):hover,
main .verified-card a:not(.media-picture):not(.btn):hover,
main .solution-detail a:not(.btn):hover,
main .media-copy a:not(.btn):hover,
main .corporate-copy a:not(.btn):hover,
main .legal-content a:not(.btn):hover,
main .faq-list a:not(.btn):hover,
main .resource-card a:not(.media-picture):not(.btn):hover,
main .feature-card a:not(.media-picture):not(.btn):hover,
main .product-card a:not(.media-picture):not(.btn):hover,
main .brand-card a:not(.media-picture):not(.btn):hover,
main .info-card a:not(.media-picture):not(.btn):hover,
main .download-card a:not(.media-picture):not(.btn):hover,
main .pricing-card a:not(.media-picture):not(.btn):hover,
main .news-card a:not(.media-picture):not(.btn):hover,
main p > a:not(.btn):not(.media-picture):hover,
main li > a:not(.btn):not(.media-picture):hover,
main .text-link:focus-visible,
main .card a:not(.media-picture):not(.btn):focus-visible,
main .verified-card a:not(.media-picture):not(.btn):focus-visible,
main .solution-detail a:not(.btn):focus-visible,
main .media-copy a:not(.btn):focus-visible,
main .corporate-copy a:not(.btn):focus-visible,
main .legal-content a:not(.btn):focus-visible,
main .faq-list a:not(.btn):focus-visible,
main .resource-card a:not(.media-picture):not(.btn):focus-visible,
main .feature-card a:not(.media-picture):not(.btn):focus-visible,
main .product-card a:not(.media-picture):not(.btn):focus-visible,
main .brand-card a:not(.media-picture):not(.btn):focus-visible,
main .info-card a:not(.media-picture):not(.btn):focus-visible,
main .download-card a:not(.media-picture):not(.btn):focus-visible,
main .pricing-card a:not(.media-picture):not(.btn):focus-visible,
main .news-card a:not(.media-picture):not(.btn):focus-visible,
main p > a:not(.btn):not(.media-picture):focus-visible,
main li > a:not(.btn):not(.media-picture):focus-visible{
  color:#fff!important;
  border-color:var(--pc-content-link-border-hover);
  filter:brightness(1.08);
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.19),
    inset 0 -2px 0 rgba(0,0,0,.20),
    0 5px 0 var(--pc-content-link-edge),
    0 11px 18px rgba(0,0,0,.27),
    0 0 15px rgba(30,184,255,.10);
}

/* Pressed state */
main .text-link:active,
main .card a:not(.media-picture):not(.btn):active,
main .verified-card a:not(.media-picture):not(.btn):active,
main .solution-detail a:not(.btn):active,
main .media-copy a:not(.btn):active,
main .corporate-copy a:not(.btn):active,
main .legal-content a:not(.btn):active,
main .faq-list a:not(.btn):active,
main .resource-card a:not(.media-picture):not(.btn):active,
main .feature-card a:not(.media-picture):not(.btn):active,
main .product-card a:not(.media-picture):not(.btn):active,
main .brand-card a:not(.media-picture):not(.btn):active,
main .info-card a:not(.media-picture):not(.btn):active,
main .download-card a:not(.media-picture):not(.btn):active,
main .pricing-card a:not(.media-picture):not(.btn):active,
main .news-card a:not(.media-picture):not(.btn):active,
main p > a:not(.btn):not(.media-picture):active,
main li > a:not(.btn):not(.media-picture):active{
  transform:translateY(1px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 2px 0 var(--pc-content-link-edge),
    0 4px 8px rgba(0,0,0,.20);
}

/* ----------------------------------------------------------
   EXISTING BUTTON CLASSES — SAME FAMILY, DISTINCT CONTENT STYLE
   Keeps primary/secondary colour identity while matching the
   site-wide 3D depth.
   ---------------------------------------------------------- */

main .btn{
  border-radius:12px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 0 rgba(0,0,0,.23),
    0 4px 0 var(--pc-content-link-edge),
    0 8px 16px rgba(0,0,0,.23);
}

main .btn:hover{
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -2px 0 rgba(0,0,0,.20),
    0 6px 0 var(--pc-content-link-edge),
    0 12px 21px rgba(0,0,0,.27);
}

/* Large solution-path links retain their card dimensions,
   but now use the same content-link visual language. */
main .solution-grid > a{
  border:1px solid var(--pc-content-link-border)!important;
  background:
    linear-gradient(180deg,
      rgba(38,86,125,.97),
      rgba(14,45,74,.99))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    inset 0 -2px 0 rgba(0,0,0,.23),
    0 4px 0 var(--pc-content-link-edge),
    0 9px 18px rgba(0,0,0,.22)!important;
}

main .solution-grid > a:hover{
  border-color:var(--pc-content-link-border-hover)!important;
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    inset 0 -2px 0 rgba(0,0,0,.20),
    0 6px 0 var(--pc-content-link-edge),
    0 12px 22px rgba(0,0,0,.27)!important;
}

/* ----------------------------------------------------------
   PROTECT LINKED IMAGES / LOGOS
   Linked artwork must never become a button.
   ---------------------------------------------------------- */

main a.media-picture,
main .card > a.media-picture,
main .hero-media a,
main .hero-showcase a,
main a:has(> picture),
main a:has(> img){
  display:block;
  min-height:0;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:inherit;
  background:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
  filter:none!important;
}

main a:has(> picture)::before,
main a:has(> img)::before{
  display:none!important;
  content:none!important;
}

/* ----------------------------------------------------------
   LIGHT THEME
   ---------------------------------------------------------- */

html[data-theme="light"] main .text-link,
html[data-theme="light"] main .card a:not(.media-picture):not(.btn),
html[data-theme="light"] main .verified-card a:not(.media-picture):not(.btn),
html[data-theme="light"] main .solution-detail a:not(.btn),
html[data-theme="light"] main .media-copy a:not(.btn),
html[data-theme="light"] main .corporate-copy a:not(.btn),
html[data-theme="light"] main .legal-content a:not(.btn),
html[data-theme="light"] main .faq-list a:not(.btn),
html[data-theme="light"] main p > a:not(.btn):not(.media-picture),
html[data-theme="light"] main li > a:not(.btn):not(.media-picture){
  color:#08233d!important;
  text-shadow:0 1px 0 rgba(255,255,255,.80);
  border-color:rgba(35,130,190,.30);
  background:linear-gradient(180deg,#fbfdff 0%,#deedf8 52%,#bddbed 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -2px 0 rgba(27,91,130,.15),
    0 3px 0 rgba(77,124,157,.32),
    0 7px 14px rgba(31,78,112,.14);
}

/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media(max-width:430px){
  main p > a:not(.btn):not(.media-picture),
  main li > a:not(.btn):not(.media-picture),
  main .legal-content a:not(.btn),
  main .faq-list a:not(.btn){
    width:100%;
    margin:4px 0;
  }
}

@media(prefers-reduced-motion:reduce){
  main .text-link,
  main .card a:not(.media-picture):not(.btn),
  main .verified-card a:not(.media-picture):not(.btn),
  main .solution-detail a:not(.btn),
  main .media-copy a:not(.btn),
  main .corporate-copy a:not(.btn),
  main .legal-content a:not(.btn),
  main .faq-list a:not(.btn),
  main p > a:not(.btn):not(.media-picture),
  main li > a:not(.btn):not(.media-picture),
  main .solution-grid > a,
  main .btn{
    transition:none!important;
  }
}

/* ==========================================================
   PLATFORMCLOUDS — FULL RESPONSIVE VIEWPORT HARDENING
   Prevents desktop mega menus from leaving the viewport and
   strengthens all-device responsiveness site-wide.
   ========================================================== */

/* Never allow media or layout children to force horizontal overflow. */
html,
body{
  max-width:100%;
  overflow-x:clip;
}

img,
svg,
video,
canvas,
iframe{
  max-width:100%;
}

.wrap,
.header-inner,
.nav,
.mega,
.mega-products,
.card-grid,
.solution-grid,
.gallery-grid,
.pc-premium-footer-grid,
.pc-footer-brand-grid,
.pc-footer-sections{
  min-width:0;
}

/* ----------------------------------------------------------
   DESKTOP / LARGE TABLET NAVIGATION
   ---------------------------------------------------------- */

@media (min-width:1181px){

  /* Keep every dropdown inside the visible browser viewport. */
  .site-header .nav > details{
    position:relative;
  }

  .site-header .nav > details > .mega{
    width:min(770px,calc(100vw - 32px));
    max-width:calc(100vw - 32px);
    left:auto;
    right:0;
    transform:none;
  }

  /* Products is the widest menu. Centre it in the VIEWPORT
     instead of around the Products button so it can never
     disappear off the left or right edge. */
  .site-header .nav > details > .mega.mega-products{
    position:fixed;
    left:50%;
    right:auto;
    top:calc(var(--header) + 5px);
    width:min(980px,calc(100vw - 32px));
    max-width:calc(100vw - 32px);
    transform:translateX(-50%);
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-height:calc(100vh - var(--header) - 28px);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  /* Ensure menu cards themselves can shrink rather than
     increasing the dropdown width. */
  .site-header .mega > *,
  .site-header .mega a{
    min-width:0;
  }

  .site-header .mega a{
    overflow-wrap:anywhere;
  }
}

/* ----------------------------------------------------------
   MEDIUM DESKTOP / SMALL LAPTOP
   Still desktop navigation, but reduce mega-menu columns.
   ---------------------------------------------------------- */

@media (min-width:1181px) and (max-width:1320px){
  .site-header .nav > details > .mega.mega-products{
    width:min(900px,calc(100vw - 28px));
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .site-header .nav > details > .mega:not(.mega-products){
    width:min(700px,calc(100vw - 28px));
  }
}

/* ----------------------------------------------------------
   TABLET / MOBILE NAVIGATION
   Uses the site's existing hamburger/mobile menu logic.
   Mega menus become normal in-flow responsive grids.
   ---------------------------------------------------------- */

@media (max-width:1180px){

  .site-header .nav{
    box-sizing:border-box;
    width:auto;
    max-width:calc(100vw - 24px);
    left:12px;
    right:12px;
  }

  .site-header .nav > details{
    width:100%;
    min-width:0;
  }

  .site-header .nav > details > .mega,
  .site-header .nav > details > .mega.mega-products{
    position:static;
    left:auto;
    right:auto;
    top:auto;
    width:100%;
    max-width:100%;
    max-height:none;
    margin-top:8px;
    transform:none;
    overflow:visible;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .site-header .mega > *,
  .site-header .mega a{
    min-width:0;
  }
}

@media (max-width:760px){

  .site-header .nav{
    left:10px;
    right:10px;
    max-width:calc(100vw - 20px);
  }

  .site-header .nav > details > .mega,
  .site-header .nav > details > .mega.mega-products{
    grid-template-columns:1fr;
    padding:10px;
  }

  .site-header .mega a{
    padding:12px;
  }

  /* Prevent long titles, URLs and technical names from
     creating horizontal page overflow. */
  main,
  main section,
  main article,
  main .card,
  main .card-body,
  .site-footer,
  .site-footer *{
    min-width:0;
    max-width:100%;
  }

  main h1,
  main h2,
  main h3,
  main p,
  main li,
  main a,
  .site-footer a{
    overflow-wrap:anywhere;
  }
}

/* ----------------------------------------------------------
   SITE-WIDE RESPONSIVE GRID SAFETY
   ---------------------------------------------------------- */

@media (max-width:1180px){
  .cols-4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .cols-3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .media-split,
  .corporate-panel,
  .page-hero .hero-grid,
  .home-hero-grid{
    min-width:0;
  }
}

@media (max-width:760px){
  .cols-2,
  .cols-3,
  .cols-4,
  .solution-grid,
  .gallery-grid{
    grid-template-columns:1fr!important;
  }

  .page-hero .hero-grid,
  .home-hero-grid,
  .media-split,
  .corporate-panel{
    grid-template-columns:minmax(0,1fr)!important;
  }

  .hero-media,
  .hero-showcase,
  .media-frame,
  .corporate-art{
    min-width:0;
    max-width:100%;
  }
}

/* ----------------------------------------------------------
   VERY SMALL DEVICES
   ---------------------------------------------------------- */

@media (max-width:390px){
  :root{
    --wrap:min(100% - 18px,1360px);
  }

  .site-header .nav{
    left:8px;
    right:8px;
    max-width:calc(100vw - 16px);
  }

  .site-header .nav > details > summary,
  .site-header .nav > .nav-link{
    font-size:.82rem;
  }

  .pc-footer-button-grid,
  .pc-footer-brand-links,
  .pc-footer-buttons{
    grid-template-columns:1fr!important;
  }
}

/* ==========================================================
   PLATFORMCLOUDS — FINAL UNIVERSAL CONTENT ACTION BUTTON OVERRIDE
   AUDIT TARGETS:
   .text-link
   .btn / .btn-primary / .btn-secondary / .btn-ghost
   .email-route
   .download-route
   .catalog-index-row > a
   classless text links inside cards/content
   This block is deliberately LAST so page/card legacy rules
   cannot turn these back into plain text links.
   ========================================================== */

/* ---- Universal premium action-button face for page content ---- */
main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
){
  position:relative!important;
  isolation:isolate!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:auto!important;
  max-width:100%!important;
  min-height:42px!important;
  padding:9px 14px!important;
  margin:8px 0 0!important;
  border:1px solid rgba(118,211,255,.42)!important;
  border-radius:12px!important;
  background:
    linear-gradient(180deg,
      #347fb8 0%,
      #1b5a8d 46%,
      #0d3b64 72%,
      #082b4a 100%)!important;
  color:#f8fbff!important;
  text-decoration:none!important;
  font-size:.80rem!important;
  font-weight:850!important;
  line-height:1.15!important;
  letter-spacing:.004em!important;
  text-align:center!important;
  text-shadow:0 1px 1px rgba(0,0,0,.62)!important;
  overflow-wrap:anywhere!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 0 rgba(0,0,0,.27),
    0 4px 0 #031827,
    0 8px 16px rgba(0,0,0,.25)!important;
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease,
    filter .15s ease!important;
}

/* Upper gloss */
main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
)::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:1px 1px auto 1px!important;
  height:42%!important;
  border-radius:10px 10px 7px 7px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0))!important;
  pointer-events:none!important;
}

/* Hover/focus */
main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
):hover,
main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
):focus-visible{
  color:#fff!important;
  border-color:rgba(131,226,255,.86)!important;
  filter:brightness(1.10)!important;
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -2px 0 rgba(0,0,0,.23),
    0 6px 0 #031827,
    0 12px 21px rgba(0,0,0,.30),
    0 0 18px rgba(30,184,255,.14)!important;
}

/* Pressed state */
main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
):active{
  transform:translateY(1px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    0 2px 0 #031827,
    0 4px 8px rgba(0,0,0,.24)!important;
}

/* Card action placement — keeps button at the bottom where applicable. */
main .card .text-link,
main .card-body .text-link{
  margin-top:auto!important;
  align-self:flex-start!important;
}

/* Download/email route blocks may contain two lines. */
main .download-route,
main .email-route{
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
  padding:12px 14px!important;
}

/* Existing .btn buttons remain the stronger content CTA tier,
   but receive consistent 3D depth across every page. */
main .btn{
  position:relative!important;
  isolation:isolate!important;
  min-height:46px!important;
  border-radius:13px!important;
  text-decoration:none!important;
  font-weight:850!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -2px 0 rgba(0,0,0,.22),
    0 4px 0 #031827,
    0 9px 17px rgba(0,0,0,.25)!important;
}

main .btn:hover,
main .btn:focus-visible{
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -2px 0 rgba(0,0,0,.20),
    0 6px 0 #031827,
    0 13px 23px rgba(0,0,0,.30)!important;
}

main .btn:active{
  transform:translateY(1px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 2px 0 #031827,
    0 5px 9px rgba(0,0,0,.22)!important;
}

/* Explicitly protect image/logo links from button styling. */
main a.media-picture,
main a:has(>img),
main a:has(>picture),
main .card > a:has(>img),
main .card > a:has(>picture){
  padding:0!important;
  margin:0!important;
  min-height:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
  transform:none!important;
}

main a:has(>img)::before,
main a:has(>picture)::before{
  content:none!important;
  display:none!important;
}

/* Classless navigation links used by legal/index content.
   Keep normal inline legal/email links readable unless they
   are in a known action/navigation container. */
main .legal-content .button-row a,
main .legal-box .button-row a{
  display:inline-flex!important;
}

/* Responsive action buttons */
@media(max-width:760px){
  main .card .text-link,
  main .card-body .text-link,
  main .catalog-index-row > a{
    width:100%!important;
    align-self:stretch!important;
  }

  main .download-route,
  main .email-route{
    width:100%!important;
  }
}

@media(max-width:430px){
  main :is(.text-link,.email-route,.download-route,.catalog-index-row > a){
    width:100%!important;
    min-height:44px!important;
  }
}

/* Light theme */
html[data-theme="light"] main :is(
  .text-link,
  .email-route,
  .download-route,
  .card a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .card-body a:not(.media-picture):not(.btn):not(:has(>img)):not(:has(>picture)),
  .catalog-index-row > a
){
  color:#08233d!important;
  text-shadow:0 1px 0 rgba(255,255,255,.82)!important;
  border-color:rgba(35,130,190,.38)!important;
  background:
    linear-gradient(180deg,#ffffff 0%,#deeffa 48%,#bedced 75%,#aacfe5 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -2px 0 rgba(30,90,126,.16),
    0 4px 0 rgba(67,114,147,.36),
    0 8px 16px rgba(31,78,112,.15)!important;
}

/* ==========================================================
   EXPLORE BY NEED — LIGHT MODE CORRECTION ONLY
   Keeps dark mode unchanged.
   ========================================================== */

html[data-theme="light"] main .solution-grid > a{
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f4f9fd 52%,
      #e7f1f8 100%
    ) !important;

  border-color:rgba(24,96,142,.24) !important;

  color:#0b1726 !important;

  text-shadow:none !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -2px 0 rgba(39,91,128,.10),
    0 4px 0 rgba(82,126,157,.22),
    0 9px 18px rgba(31,78,112,.12) !important;
}

/* Main card title */
html[data-theme="light"] main .solution-grid > a h3{
  color:#0b1726 !important;
  text-shadow:none !important;
}

/* Description text */
html[data-theme="light"] main .solution-grid > a p{
  color:#52657b !important;
  text-shadow:none !important;
}

/* ==========================================================
   PLATFORMCLOUDS — SITE-WIDE BRIGHTER BODY TEXT
   DARK MODE ONLY
   Applies across ALL pages and ALL content areas.
   Does NOT alter light mode.
   ========================================================== */

/* ----------------------------------------------------------
   GLOBAL BODY / CONTENT TEXT
   ---------------------------------------------------------- */

html:not([data-theme="light"]) body{
  color:#f1f8ff;
}


/* ----------------------------------------------------------
   MAIN BODY TEXT — ALL PAGES
   ---------------------------------------------------------- */

html:not([data-theme="light"]) main p,
html:not([data-theme="light"]) main li,
html:not([data-theme="light"]) main dd,
html:not([data-theme="light"]) main dt,
html:not([data-theme="light"]) main blockquote,
html:not([data-theme="light"]) main figcaption,
html:not([data-theme="light"]) main td,
html:not([data-theme="light"]) main th{
  color:#f1f8ff !important;
  opacity:1 !important;
}


/* ----------------------------------------------------------
   COMMON CONTENT / DESCRIPTION CONTAINERS
   ---------------------------------------------------------- */

html:not([data-theme="light"]) main :is(
  .lead,
  .section-heading,
  .card,
  .card-body,
  .verified-card,
  .brand-card,
  .product-card,
  .feature-card,
  .resource-card,
  .download-card,
  .pricing-card,
  .news-card,
  .info-card,
  .solution-detail,
  .corporate-panel,
  .corporate-copy,
  .media-copy,
  .legal-content,
  .faq-list
) p{
  color:#f1f8ff !important;
  opacity:1 !important;
}


/* ----------------------------------------------------------
   LISTS AND SUPPORTING CONTENT
   ---------------------------------------------------------- */

html:not([data-theme="light"]) main :is(
  .card,
  .card-body,
  .legal-content,
  .faq-list,
  .solution-detail,
  .corporate-copy,
  .media-copy
) :is(li,dd,dt){
  color:#f1f8ff !important;
  opacity:1 !important;
}


/* ----------------------------------------------------------
   MUTED / SECONDARY BODY TEXT
   Still visually secondary, but MUCH easier to read.
   ---------------------------------------------------------- */

html:not([data-theme="light"]) main :is(
  .muted,
  .meta,
  .description,
  .supporting-text,
  .helper-text,
  .small-print
){
  color:#dceeff !important;
  opacity:1 !important;
}


/* ----------------------------------------------------------
   SUBTLE PREMIUM LEGIBILITY
   ---------------------------------------------------------- */

html:not([data-theme="light"]) main p,
html:not([data-theme="light"]) main li,
html:not([data-theme="light"]) main dd,
html:not([data-theme="light"]) main blockquote{
  text-shadow:
    0 1px 1px rgba(0,0,0,.30),
    0 0 5px rgba(142,220,255,.055);
}