/* DIVERSYS / VYNZO — EDITORIAL EDITION 02
   Art direction: evidence-led luxury, mineral paper, deep Atlantic ink, regenerative mint.
   The original audit, data and functionality are preserved. */
:root{
 --ink:#10252e;--ink2:#263e45;--night:#0b222d;--night2:#16333b;
 --cream:#f5f5f0;--paper:#fffefa;--faint:#edf2ed;
 --mint:#a8ead4;--deep:#136c61;--gold:#d4bb86;--plum:#333e45;
 --muted:#566b71;--stroke:#dbe3dd;--serif:'Instrument Serif','Newsreader',Georgia,serif;
 --sans:'Manrope','DM Sans',Arial,sans-serif;--max:1330px;--rad:19px;
 --shadow:0 35px 100px rgba(6,39,35,.07);
 --acid:#d8f38b;
}
html{scroll-padding-top:105px}
body{background:var(--cream);letter-spacing:-.012em}
body::before{content:'';position:fixed;inset:0;z-index:150;pointer-events:none;background:url('img/grain.svg');background-size:220px 220px;opacity:.065;mix-blend-mode:multiply}
::selection{background:#c1e8d3;color:#082b2b}
.container{width:min(calc(100% - 116px),var(--max))}
.section{padding:143px 0;isolation:isolate}
.section h2{font-size:clamp(46px,5.35vw,85px);line-height:1.015;letter-spacing:-.064em;font-weight:620;text-wrap:balance}
.section h2 em{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.042em;font-size:1.10em}
.section-heading,.two-column-heading{align-items:end;gap:clamp(50px,9vw,155px);margin-bottom:65px}
.section-heading>p,.section-intro p{font-size:16px;line-height:1.85;color:var(--muted);max-width:420px}
.section h3{letter-spacing:-.04em}
.kicker{display:inline-flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.22em;font-weight:800;color:var(--deep);margin-bottom:36px}
.kicker:before{content:'';display:inline-block;width:27px;height:1px;background:currentColor;opacity:.62}
.micro-label,.eyebrow,.metric-top,.small-index{letter-spacing:.185em}
.btn{border-radius:100px;min-height:59px;font-size:12px;font-weight:750;gap:32px;letter-spacing:0;padding:17px 27px;position:relative;overflow:hidden}
.btn::after{content:'';position:absolute;inset:0;background:linear-gradient(112deg,transparent 26%,rgba(255,255,255,.28) 46%,transparent 65%);transform:translateX(-150%);transition:transform .7s}
.btn:hover::after{transform:translateX(150%)}
.btn-light{background:var(--acid);color:#0c2d32}.btn-light:hover{background:#e9ffaf}
.btn-outline{border-color:rgba(18,43,44,.23)}
.btn-ink{background:var(--night)}
.reveal{transform:translateY(24px);transition:opacity .85s cubic-bezier(.2,.75,.28,1),transform .85s cubic-bezier(.2,.75,.28,1)}
/* floating editorial page rail */
.page-edge-index{position:fixed;z-index:24;left:14px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:13px;writing-mode:vertical-rl;rotate:180deg;font-size:9px;letter-spacing:.23em;color:#7a9594;font-weight:850;pointer-events:none;opacity:.8}
.page-edge-index .edge-line{width:1px;height:66px;background:linear-gradient(transparent,#7bb2a8)}
.page-edge-index .edge-number{color:#56968c}
/* elevated navigation */
.site-header{top:18px;width:min(calc(100% - 76px),1440px);min-height:78px;padding:10px 16px 10px 17px;border-radius:18px;background:rgba(255,254,250,.935);box-shadow:0 14px 42px rgba(5,26,31,.14),inset 0 1px 0 white;border:1px solid rgba(255,255,255,.95)}
.site-header:before{content:'';position:absolute;bottom:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(30,135,118,.18),transparent)}
.brand-pair{gap:14px;min-width:265px}
.client-mark{border-radius:9px;padding:10px 15px;max-width:148px;min-width:120px;background:var(--night)}
.client-mark img{width:115px}
.brand-fallback{font-weight:770;font-size:19px;letter-spacing:-.075em}
.brand-cross{color:#91b3a9;font-size:23px;font-family:var(--serif)}
.vynzo-mark{width:130px;object-fit:contain}
.desktop-nav{gap:clamp(12px,1.3vw,22px)}
.desktop-nav a{font-size:11px;font-weight:750;letter-spacing:-.025em;color:#597073;position:relative;padding:14px 0}
.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:6px;height:2px;background:var(--deep);transition:right .27s}
.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}
.nav-proposal{font-size:11px;padding:15px 17px;background:#eaf5ee;border:1px solid #d7e7dd;border-radius:12px;color:#12564e;min-height:45px}
.nav-proposal:hover{background:#dbefdf}
.nav-proposal span{margin-left:5px}
.scroll-progress{height:3px;background:linear-gradient(90deg,#8fe5c4,var(--acid));z-index:110}
/* HERO — a bespoke information object, not a generic decorative orbit */
.hero{min-height:900px;height:auto;padding:170px 0 95px;background:
 radial-gradient(ellipse at 81% 43%,rgba(40,93,92,.48),transparent 45%),
 radial-gradient(ellipse at 14% 93%,rgba(24,67,68,.5),transparent 43%),
 linear-gradient(122deg,#071b26 3%,#102b35 56%,#0b202b 100%);overflow:hidden}
.hero:before{opacity:.31;background-image:repeating-linear-gradient(90deg,transparent 0 94px,rgba(147,208,192,.045) 95px 96px),repeating-linear-gradient(0deg,transparent 0 94px,rgba(147,208,192,.04) 95px 96px)}
.hero:after{width:1000px;height:920px;right:-450px;top:-260px;background:radial-gradient(circle,rgba(195,238,187,.12),transparent 68%)}
.hero-grid{width:min(calc(100% - 116px),var(--max));grid-template-columns:55% 45%;align-items:center;gap:0}
.hero-copy{padding:10px 0 45px}
.hero-eyebrow{margin-bottom:57px;color:#b5c9c6;font-size:10px;letter-spacing:.18em;font-weight:800}
.eyebrow-dot{background:var(--acid);box-shadow:0 0 0 5px rgba(216,243,139,.09),0 0 18px rgba(216,243,139,.32)}
.eyebrow-line{background:#6e958a;opacity:.55;width:44px}
.hero-small{display:flex;flex-direction:column;gap:5px;color:#e2ebe4;font-size:14px;margin-bottom:30px}
.hero-client-label{font-size:10px;letter-spacing:.16em;font-weight:800;color:#85a39f}
.hero h1{white-space:normal;font-weight:560;font-size:clamp(74px,7.2vw,107px);line-height:.995;letter-spacing:-.085em;margin:0 0 37px;max-width:785px}
.hero h1 em{color:#b9edcd;font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.055em;font-size:1.06em}
.headline-period{color:var(--acid)}
.hero-description{max-width:540px;font-size:16px;line-height:1.83;color:#bbcfcc;margin-bottom:38px;letter-spacing:0}
.hero-buttons{gap:12px}.btn-quiet{border:1px solid rgba(205,228,223,.36);background:rgba(255,255,255,.035)}
.hero-note{margin-top:56px;font-size:11px;color:#92ada9}.tiny-stars{color:var(--acid);font-size:24px}
.hero-art{height:600px;min-width:0;margin:18px -15px 0 2px}
.signal-frame{position:absolute;inset:0;max-width:590px;margin:auto;isolation:isolate;overflow:visible;border-radius:3px}
.signal-frame:before{content:'';position:absolute;inset:49px 24px 42px;border:1px solid rgba(185,238,215,.17);background:radial-gradient(ellipse at 43% 46%,rgba(79,132,120,.15),transparent 64%),linear-gradient(140deg,rgba(9,40,47,.6),rgba(11,42,45,.18));clip-path:polygon(4% 0,96% 0,100% 4%,100% 96%,96% 100%,4% 100%,0 96%,0 4%)}
.signal-grid-lines{position:absolute;inset:49px 24px 42px;background:linear-gradient(90deg,transparent 49.8%,rgba(167,224,205,.1) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,rgba(167,224,205,.1) 50%,transparent 50.2%),repeating-linear-gradient(90deg,transparent 0 59px,rgba(142,224,194,.045) 60px),repeating-linear-gradient(0deg,transparent 0 59px,rgba(142,224,194,.045) 60px);mask-image:linear-gradient(to bottom,transparent,black 15%,black 85%,transparent)}
.signal-frame-top,.signal-frame-bottom{position:absolute;left:28px;right:30px;display:flex;justify-content:space-between;gap:10px;font-size:8px;font-weight:800;letter-spacing:.16em;color:#a5c3bc;z-index:5}
.signal-frame-top{top:13px}.signal-frame-bottom{bottom:8px;color:#9ab6ae}.signal-frame-bottom i{font-style:normal;color:var(--acid);margin:0 3px}
.signal-live{display:flex;align-items:center;gap:10px}.signal-live i{width:6px;height:6px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 6px rgba(221,244,155,.09)}
.signal-paths{position:absolute;inset:46px 0 30px;width:100%;height:calc(100% - 76px);z-index:2;overflow:visible}
.signal-path{fill:none;stroke:rgba(210,245,219,.18);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.signal-path.primary{stroke:url(#signalGradient);stroke-width:2.5;stroke-dasharray:6 17;animation:traceFlow 21s linear infinite}
.signal-path.secondary{stroke:var(--acid);stroke-opacity:.63;stroke-dasharray:5 21;animation:traceFlow 15s linear infinite reverse}
@keyframes traceFlow{to{stroke-dashoffset:-450}}
.signal-corner{width:23px;height:23px;position:absolute;border-color:#acebd2;z-index:5;opacity:.8}.signal-corner-tl{top:49px;left:24px;border-left:2px solid;border-top:2px solid}.signal-corner-br{bottom:42px;right:24px;border-bottom:2px solid;border-right:2px solid}
.proof-caption{position:absolute;left:62px;top:88px;z-index:4;display:flex;flex-direction:column;gap:5px}.proof-caption span{font-size:8px;letter-spacing:.18em;color:#a0d8c7}.proof-caption strong{font:italic 25px var(--serif);font-weight:400;color:#f7f6e9}
.signal-node{position:absolute;z-index:5;min-width:165px;min-height:85px;padding:17px 20px;border:1px solid rgba(163,218,200,.28);background:rgba(14,40,46,.94);box-shadow:0 18px 50px rgba(0,9,14,.19);backdrop-filter:blur(13px)}
.signal-node:before{content:'';height:2px;width:22px;position:absolute;top:0;left:20px;background:var(--acid)}
.signal-node b{display:block;font-size:13px;color:#f2f7f0;margin:7px 0 4px}.signal-node small{font-size:9px;color:#a1bbb6}.node-index{color:#a0dcca;font-size:8px;letter-spacing:.16em;font-weight:800}
.node-top{top:150px;left:13px}.node-right{bottom:132px;right:1px}.node-bottom{bottom:130px;left:7px}
.node-beacon{position:absolute;bottom:14px;right:14px;width:6px;height:6px;border:1px solid var(--acid);border-radius:50%}
.signal-core{position:absolute;z-index:4;top:47%;left:49%;transform:translate(-50%,-50%);height:270px;width:270px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#d0f2d4;background:radial-gradient(circle at 30% 20%,#315d58,#154340 65%,#0e3537);border:1px solid rgba(223,250,216,.44);border-radius:50%;box-shadow:0 0 0 17px rgba(77,149,134,.08),0 0 0 36px rgba(77,149,134,.035),0 20px 100px rgba(0,0,0,.18)}
.signal-core .core-overline{color:#a8e8d0;font-size:8px;letter-spacing:.21em;font-weight:800;margin-bottom:0}.signal-core svg{color:var(--acid);margin:7px 0 1px}.signal-core b{font:italic 39px/.93 var(--serif);color:#f8f4e8;letter-spacing:-.015em}
.hero-bottom{border-top:1px solid rgba(205,245,225,.12);padding-top:22px;bottom:19px;font-size:9px;color:#819c99;letter-spacing:.14em}
.hero-bottom a{color:#d9e8da}.hero-bottom a span{color:var(--acid)}
/* The chapter map */
.chapter-ribbon{background:#deeadf;border-bottom:1px solid #c9ddd1;border-top:1px solid #d7e7dc;position:relative;z-index:1}
.ribbon-inner{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.ribbon-label,.ribbon-end{font-size:9px;color:#315e54;letter-spacing:.16em;font-weight:850;white-space:nowrap}
.ribbon-end b{font-size:18px;font-weight:400;vertical-align:middle;margin-left:7px}
.ribbon-steps{display:flex;gap:18px;align-items:center;justify-content:center;flex:1}
.ribbon-steps span{font-size:13px;font-weight:700;white-space:nowrap;color:#2a6156;display:flex;gap:11px;align-items:center}
.ribbon-steps b{font:italic 22px var(--serif);color:#508e76}.ribbon-steps i{width:24px;height:1px;background:#a4c0ad}
/* Elegant chapters and material surfaces */
.section-perspective{background:linear-gradient(156deg,#f7f7f1,#f3f1e9)}
.section-perspective::before,.search-section::before,.campaign-section::before,.journey-section::before{content:'';position:absolute;right:0;top:0;width:39%;height:100%;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 76px,rgba(28,90,86,.045) 77px);mask-image:linear-gradient(to left,black,transparent);opacity:.55;z-index:-1}
.thesis-board{grid-template-columns:1fr 70px 1fr;border-radius:9px;border:1px solid #d5e0d4;background:var(--paper);box-shadow:0 34px 70px rgba(11,43,40,.07)}
.thesis-left,.thesis-right{padding:64px 55px 49px;min-height:455px}.thesis-left{background:#fffefa}.thesis-right{background:#dceee1}
.thesis-middle{background:#123c3a;width:70px;height:70px;border:4px solid #f6f5ef;color:var(--acid);font-size:29px}
.thesis-large{font-weight:600;font-size:clamp(33px,3.1vw,51px);margin:41px 0 27px;letter-spacing:-.06em}
.thesis-large em{font-family:var(--serif);font-weight:400;font-size:1.06em}
.thesis-board p{font-size:14px;line-height:1.75;max-width:420px;color:#49625d}
.chip{border-radius:7px!important;font-size:10px!important;padding:9px 12px!important}
.proof-strip{border-top:1px solid #d7ded5;border-bottom:1px solid #d7ded5;margin-top:55px!important;padding:25px 0!important;background:transparent!important}
.proof-strip>div:not(:last-child){border-right:1px solid #d6e1d8}
.proof-strip b{font-family:var(--serif);font-style:italic;font-size:30px!important;font-weight:400!important;color:#244f47}
/* Metrics: meaningful contrast + bespoke instrument styling */
.section-evidence{background:#fdfefa}
.audit-grid{gap:13px}
.metric-feature{border-radius:8px;min-height:440px;background:radial-gradient(ellipse at 84% 8%,rgba(82,147,122,.29),transparent 39%),linear-gradient(138deg,#0c2730,#143b3f);padding:42px 44px;position:relative;overflow:hidden}
.metric-feature:after{content:'';position:absolute;right:-60px;top:-50px;width:300px;height:300px;border:1px solid rgba(177,232,205,.18);border-radius:50%;box-shadow:0 0 0 46px rgba(177,232,205,.035),0 0 0 92px rgba(177,232,205,.025)}
.metric-number{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.075em}
.metric-feature small{color:#98b5ac}
.metric-track{background:#3e6660!important;height:5px!important;border-radius:0!important}
.metric-track span{background:var(--acid)!important}
.metric-card{background:#f2f6f0!important;border-radius:8px!important;min-height:210px!important;padding:33px!important;border:1px solid #e1e9dc!important;position:relative;transition:transform .3s,background .3s,box-shadow .3s}
.metric-card:hover{background:#eaf3e7!important;transform:translateY(-4px);box-shadow:0 16px 30px rgba(15,68,55,.06)}
.metric-card:before{content:'';position:absolute;right:22px;top:24px;width:7px;height:7px;border:1px solid #648f79;transform:rotate(45deg)}
.metric-card strong{font-family:var(--serif);font-size:clamp(49px,5vw,77px)!important;font-weight:400!important;letter-spacing:-.055em!important;color:#133e3a}
.metric-card.highlight-card{background:#dcf2df!important}
.metric-card .metric-word{font-family:var(--sans);font-style:normal;font-size:clamp(26px,2.7vw,43px)!important;font-weight:650!important;letter-spacing:-.055em}
/* Social: a crafted dossier rather than another white box */
.social-section{background:#e8efea}
.social-shell{border-radius:10px;background:#fbfcf9;border:1px solid #d2ded5;box-shadow:0 34px 82px rgba(19,62,48,.07)}
.social-tab{min-width:146px;padding:27px 14px;background:#fbfcf9;font-size:12px;letter-spacing:-.02em}
.social-tab:not(:last-child){border-right:1px solid #e9ede7}
.social-tab.active{background:#dcefe5;color:#164e47;border-bottom:3px solid #2b7364}
.social-tab .social-icon{border-radius:6px}
.social-stage{padding:62px;gap:65px;min-height:580px}
.social-analysis h3{font-size:clamp(35px,3.7vw,57px);font-weight:600;letter-spacing:-.061em}
.social-visual{border-radius:8px;background:#e2ebe6;padding:35px}
.social-post{border-radius:8px;box-shadow:0 20px 60px rgba(18,56,43,.08)}
.post-graphic{border-radius:4px;background:linear-gradient(138deg,#123f41,#1a6b59)}
.post-graphic strong{font-family:var(--serif);font-weight:400;font-style:italic;font-size:30px;line-height:1.06}
.social-read{border-radius:6px;background:#e5f2e6}
.social-stat strong{font:italic 39px var(--serif);color:#184b42;letter-spacing:-.02em}
.social-foot{margin-top:45px;gap:25px}.mini-insight{border-top:1px solid #bfcfc3;padding-top:23px}
/* Search laboratory: immersive chapter, practical search interaction inside */
.search-section{background:#0c2930;color:#f0f7ed}
.search-section .kicker,.search-section h2 em{color:var(--acid)}
.search-section .section-heading>p{color:#afc9c1}
.search-section:before{background:repeating-linear-gradient(90deg,transparent 0 76px,rgba(168,233,212,.08) 77px);opacity:.35}
.search-lab{background:#f5f8f3;border:1px solid rgba(225,246,220,.28);border-radius:11px;color:var(--ink);box-shadow:0 34px 85px rgba(1,12,15,.16)}
.search-lab-top{background:#eef5ed;padding:31px 38px 20px}
.keyword-selector{background:#e9f1e9!important}
.serp-browser{background:#fffefa;padding:40px 41px}
.serp-bar{box-shadow:0 10px 25px rgba(33,44,40,.045)}
/* every insight chart can breathe */
.section-deep{background:#edf2ed}
.diagnostic-grid{gap:14px}
.diag-card{border-radius:8px;background:#fffefa;min-height:340px;padding:42px}
.diag-card h3{font-size:31px}.diag-card-dark{background:#143a3e}
.organic-panel,.competitor-panel{border-radius:10px!important;box-shadow:0 12px 44px rgba(17,50,36,.04)}
.organic-panel h3,.competitor-panel h3{font-family:var(--serif)!important;font-style:italic;font-size:clamp(32px,3vw,48px)!important;line-height:1.1}
.reputation-section{background:#faf9f3}
.reputation-grid article{border-radius:8px;background:#fffefa;padding:41px 36px;min-height:390px}
.reputation-grid article:nth-child(2){background:#dfece3}
.reputation-grid article:nth-child(3){background:#eff2ec}
.reputation-grid h3{font-size:30px}
.rep-metric{font-family:var(--serif);font-style:italic}
/* Interactive stages elevated to a central exhibit */
.journey-section{background:#fcfdf9}
.journey-shell{border:1px solid #d5e2d6;border-radius:10px;padding:49px 49px 46px;background:#eaf2ea;box-shadow:0 30px 70px rgba(13,53,39,.07)}
.journey-step.active i{background:#164f46!important;color:var(--acid)!important}
.journey-detail{border-radius:6px;padding:52px;background:radial-gradient(ellipse at 90% 20%,rgba(75,144,128,.17),transparent 50%),linear-gradient(120deg,#0c2832,#1a4240);min-height:380px}
.journey-message h3{font-family:var(--serif);font-size:clamp(40px,4vw,63px);font-weight:400;font-style:italic}
/* Market moments = editorial tiles */
.moments-section{background:#e2eee3}
.moment-grid{gap:11px}
.moment-card{background:#fcfef9;border:1px solid #d2e1d4;border-radius:7px;min-height:330px;padding:31px;position:relative;overflow:hidden}
.moment-card:before{content:'';position:absolute;inset:auto -40px -80px auto;width:175px;height:175px;border:1px solid rgba(46,122,84,.09);border-radius:50%;box-shadow:0 0 0 26px rgba(46,122,84,.035),0 0 0 52px rgba(46,122,84,.025)}
.moment-card:hover{transform:translateY(-7px);box-shadow:0 25px 45px rgba(22,66,50,.08)}
.campaign-bridge{border-radius:8px!important;background:#11413d!important;color:#effbf1}
/* Connected offering */
.approach-section{background:#fffefa}
.capability-layout{gap:62px}
.capability-visual{border-radius:7px;height:590px;background:radial-gradient(circle at 48% 44%,#d0e7d7 0,#e2f0e5 35%,#e9f1e9 64%,#e5eee7 100%);border:1px solid #cbdcd1}
.capability-ring{border-color:#7fae98}
.capability-center{background:#123c3c!important;box-shadow:0 10px 70px rgba(32,90,75,.19)}
/* Campaign cover artworks */
.campaign-section{background:#e9efec}
.campaign-cards{gap:13px}
.campaign-card{border-radius:8px;min-height:470px;padding:36px;background:#17343b;box-shadow:0 16px 34px rgba(11,37,36,.09)}
.campaign-card:nth-child(3n+2){background:#225248}
.campaign-card:nth-child(3n+3){background:#393e51}
.campaign-card:after{border-color:rgba(199,238,202,.16)!important}
.campaign-card:hover{transform:translateY(-9px);box-shadow:0 35px 70px rgba(13,44,43,.18)}
/* sales, timeline, governance */
.growth-section{background:#fcfdf8}
.growth-architecture{border-radius:8px}
.persona-card{background:#e2eee3;padding:50px}
.persona-detail{padding:50px!important;background:#f8faf5!important}
.persona{border-radius:5px!important;min-height:61px!important}
.funnel-strip{border-radius:8px!important;background:#123d3d!important}
.roadmap-section{background:#e7eee7}
.roadmap-switch{gap:12px}
.roadmap-tab{border-radius:6px;padding:29px;background:#f9fbf6}
.roadmap-tab.active{background:#143e3c;border-color:#143e3c}
.roadmap-tab.active span{color:var(--acid)}
.roadmap-detail{border-radius:8px;min-height:420px;padding:57px;background:#fffefa}
.team-section{background:#fafaf5}
.team-grid article{border-radius:7px;background:#edf3e9;padding:35px;min-height:260px}
.formal-section{background:#e0ece5}
.formal-card{border-radius:9px;min-height:550px;box-shadow:0 28px 70px rgba(10,46,37,.09)}
.formal-art{background:radial-gradient(circle at 40% 36%,#397b69,#153b41 62%,#092732)}
.contact-section{background:radial-gradient(ellipse at 50% 0,rgba(71,146,124,.22),transparent 52%),#091f2a;color:#f3f8ee;padding:165px 0 90px}
.contact-section h2{font-size:clamp(55px,7vw,108px);font-weight:550;line-height:1.0}
.contact-section h2 em{color:#bde8c7}
.contact-section:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 96px,rgba(133,216,181,.035) 97px);pointer-events:none}
/* Focus, accessibility and motion */
button:focus-visible,a:focus-visible,[role=tab]:focus-visible{outline:3px solid #b6e48d;outline-offset:4px}
@media(hover:hover){.metric-card:hover,.reputation-grid article:hover,.diag-card:hover{filter:saturate(1.035)}
 .signal-node{transition:border-color .35s,transform .35s,background .35s}.signal-node:hover{transform:translateY(-7px);border-color:rgba(212,243,155,.68);background:#173f3e}}
@media(max-width:1280px){.container,.hero-grid{width:min(calc(100% - 85px),var(--max))}.hero h1{font-size:clamp(65px,7.1vw,91px)}.hero-art{height:535px}.signal-core{width:240px;height:240px}.signal-node{min-width:146px;padding:15px 13px}.node-top{left:0}.node-right{right:-5px}.node-bottom{left:-4px}.signal-core b{font-size:34px}.hero{min-height:810px}}
@media(max-width:1120px){.site-header{top:13px}.page-edge-index{display:none}.ribbon-label,.ribbon-end{display:none}.mobile-nav{background:#fffefa;border:1px solid #d9e4db;border-radius:16px;box-shadow:0 32px 65px rgba(8,31,33,.16)}}
@media(max-width:850px){
 .container,.hero-grid{width:calc(100% - 50px)}.section{padding:108px 0}.section-heading,.two-column-heading{margin-bottom:43px;gap:24px}
 .section h2{font-size:clamp(42px,7.2vw,64px)}
 .hero{padding:155px 0 95px;min-height:auto}.hero-grid{grid-template-columns:1fr;gap:23px}.hero-copy{padding:0}.hero h1{font-size:clamp(62px,9vw,90px);max-width:680px}.hero-description{max-width:610px}
 .hero-art{height:510px;margin:6px auto 0;width:min(100%,570px)}
 .ribbon-inner{min-height:82px}.ribbon-steps{gap:15px}.ribbon-steps span{font-size:12px}.ribbon-steps i{width:12px}
 .thesis-left,.thesis-right{padding:45px 36px}.social-stage{padding:38px;gap:28px}.moment-card{padding:24px}.capability-visual{height:490px}
}
@media(max-width:580px){
 html{scroll-padding-top:80px}
 .site-header{top:9px;border-radius:13px;min-height:61px;box-shadow:0 11px 33px rgba(0,0,0,.16);padding:7px 10px}
 .client-mark{min-width:92px;max-width:105px;padding:8px 10px}.brand-fallback{font-size:17px}.brand-cross{font-size:17px}.vynzo-mark{width:92px}.brand-pair{gap:9px;min-width:0}
 .menu-button{width:35px}.menu-button span{width:20px}.nav-proposal{border-radius:9px;min-height:38px;padding:9px 12px}
 .container,.hero-grid{width:calc(100% - 36px)}
 .hero{padding:133px 0 67px}.hero-eyebrow{font-size:8px;gap:9px;margin-bottom:38px}.hero-small{font-size:12px;margin-bottom:20px}.hero-client-label{font-size:9px}
 .hero h1{font-size:clamp(51px,12.7vw,74px);line-height:.985;letter-spacing:-.074em;margin:0 0 25px}.hero-description{font-size:14px;line-height:1.8;margin-bottom:28px}
 .hero-buttons{align-items:stretch;display:flex;flex-direction:column;max-width:295px}.hero-buttons .btn{width:100%;justify-content:space-between;min-height:53px;font-size:11px}
 .hero-note{margin:30px 0 18px;font-size:10px}.hero-bottom{display:none}
 .hero-art{height:375px;width:100%;margin-top:6px;overflow:visible}
 .signal-frame:before,.signal-grid-lines{inset:34px 5px 25px}.signal-frame-top{top:4px;left:9px;right:9px;font-size:6px}.signal-frame-bottom{left:8px;right:8px;bottom:0;font-size:5.4px;letter-spacing:.09em}.signal-corner-tl{top:34px;left:5px}.signal-corner-br{bottom:25px;right:5px}
 .signal-paths{inset:34px 0 20px;height:calc(100% - 54px)}
 .proof-caption{top:58px;left:25px}.proof-caption span{font-size:6px}.proof-caption strong{font-size:19px}
 .signal-core{height:174px;width:174px;top:50%;left:49%;box-shadow:0 0 0 12px rgba(77,149,134,.07),0 0 0 23px rgba(77,149,134,.03)}.signal-core .core-overline{font-size:6px}.signal-core svg{width:45px;height:45px;margin:4px 0}.signal-core b{font-size:27px}
 .signal-node{min-width:116px;min-height:61px;padding:9px 10px}.signal-node b{font-size:10px;margin:4px 0 1px}.signal-node small{font-size:7px}.node-index{font-size:6px}.node-top{top:92px;left:0}.node-right{right:-3px;bottom:78px}.node-bottom{bottom:73px;left:0}.node-beacon{bottom:7px;right:7px;width:4px;height:4px}
 .chapter-ribbon{overflow:hidden}.ribbon-inner{min-height:72px}.ribbon-steps{gap:8px;justify-content:space-between}.ribbon-steps span{font-size:9px;gap:4px}.ribbon-steps b{font-size:16px}.ribbon-steps i{width:7px}
 .section{padding:85px 0}.kicker{font-size:9px;letter-spacing:.17em;margin-bottom:27px;gap:10px}.kicker:before{width:19px}
 .section h2{font-size:clamp(40px,10.8vw,60px);line-height:1.04;letter-spacing:-.055em}
 .section-heading,.two-column-heading{gap:20px;margin-bottom:32px}.section-heading>p,.section-intro p{font-size:14px;line-height:1.75}
 .thesis-board{border-radius:7px}.thesis-left,.thesis-right{padding:29px 25px;min-height:320px}.thesis-large{font-size:34px;margin:25px 0}.proof-strip b{font-size:23px!important}
 .metric-feature{min-height:330px;padding:31px}.metric-number{font-size:98px}.metric-card{min-height:180px!important;padding:22px!important}.metric-card strong{font-size:50px!important}
 .social-shell{border-radius:7px}.social-tab{padding:19px 11px;min-width:120px}.social-stage{padding:25px;gap:27px}.social-analysis h3{font-size:36px}.social-visual{padding:20px;border-radius:5px}.social-post{padding:14px}.post-graphic strong{font-size:25px}
 .search-lab{border-radius:7px}.search-lab-top{padding:23px 18px 13px}.serp-browser{padding:18px}
 .diag-card,.reputation-grid article{padding:27px;border-radius:7px}.journey-shell{padding:20px;border-radius:6px}.journey-detail{padding:27px;min-height:335px}.journey-message h3{font-size:40px}
 .moment-card{min-height:250px;padding:23px}.capability-visual{height:390px}.campaign-card{min-height:365px;padding:28px}.persona-card,.persona-detail{padding:28px!important}.roadmap-detail{padding:27px;min-height:350px}.team-grid article{min-height:210px}.formal-card{border-radius:7px}.contact-section{padding:110px 0 75px}
}
@media(prefers-reduced-motion:reduce){.signal-path.primary,.signal-path.secondary{animation:none}.btn::after{display:none}}
@media print{body::before,.page-edge-index,.chapter-ribbon{display:none!important}.hero,.search-section,.contact-section{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* final small device fit */
@media(max-width:580px){
 .site-header{width:calc(100% - 20px)}
 .brand-pair{flex-shrink:0;gap:8px}
 .vynzo-mark{display:block;width:87px;max-width:87px;flex-shrink:0}
 .nav-proposal{font-size:0;min-height:38px;padding:9px 11px}
 .nav-proposal span{font-size:17px;margin:0}
 .header-actions{flex-shrink:0;margin-left:auto;gap:3px}
 .roadmap-switch{grid-template-columns:repeat(3,minmax(0,1fr))}
 .roadmap-tab{min-width:0;overflow:hidden}
 .roadmap-tab b{font-size:12px;overflow-wrap:anywhere}
 .map-panel{overflow:hidden}.map-grid{max-width:100%;overflow:hidden}
 .hero h1{font-size:clamp(49px,12.2vw,73px)}
}
@media(max-width:360px){.vynzo-mark{width:78px;max-width:78px}.brand-pair{gap:5px}.client-mark{min-width:88px;max-width:92px;padding:7px 8px}.site-header{padding:7px}.menu-button{width:30px}}
@media(min-width:581px) and (max-width:700px){
 .journey-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 8px}
 .journey-steps:before{display:none}
 .journey-step strong{white-space:normal}
 .journey-shell{padding:28px}
 .map-panel{overflow:hidden}
}


/* R3 readability fixes */
.persona-detail{background:#f8faf5!important;color:#17353b!important;border-left:1px solid #dbe8df}
.persona-detail .micro-label{color:#6aa690!important}
.persona-detail h3{color:#1a3f45!important}
.persona-detail p{color:#5f7474!important}
.persona-detail p b{color:#213c3f!important}
.persona-detail ul{margin-top:22px!important}
.persona-detail li{color:#506766!important;border-top:1px solid #bfd1c7!important}
.persona-detail li:before{color:#69a792!important}

.funnel-strip{background:#123d3d!important}
.funnel-strip>div{background:#14504f!important;border-color:rgba(234,245,240,.36)!important}
.funnel-strip span{color:#89cdc0!important}
.funnel-strip b{color:#f4f8f2!important}
.funnel-strip small{color:#c2d8d0!important}

.search-section .map-panel,
.search-section .tech-panel{color:#17373e!important}
.search-section .map-panel .micro-label,
.search-section .tech-panel .micro-label{color:#7fb8a3!important}
.search-section .map-panel h3,
.search-section .tech-panel h3{color:#1b4348!important}
.search-section .map-panel>p,
.search-section .tech-panel>p{color:#586e71!important}
.search-section .speed-row span{color:#35585a!important}
.search-section .speed-row b{color:#1f3f43!important}
.search-section .tech-callout{background:#e7efe9!important}
.search-section .tech-callout b{color:#1b4348!important}
.search-section .tech-callout span{color:#5d7173!important}
.search-section .fine-print{color:#6f8383!important}
.search-section .map-actions a{color:#0f6258!important}
