/* adavanti. v1.3 — unified stylesheet (graphite × slate blue)
   Brand geometry follows the riordi. marketing header: max 1180 / 84px desktop,
   70px mobile, side margins 32/20/18px; only brand colors differ.
   To match Manrope exactly, copy your licensed Manrope-Variable.woff2 from
   the existing riordi.hu deployment into /fonts/. No external font requests. */
@font-face{font-family:Manrope;src:url('../../fonts/Manrope-Variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{
 color-scheme:light;
 --graphite:#343E42;--graphite-deep:#29363B;--ink:#303A3E;
 --slate:#658E9B;--slate-light:#9ABAC5;--slate-deep:#446A78;
 --muted:#61737B;--line:#DCE6E9;--pale:#EDF2F3;--cloud:#F6F9FA;
 --white:#FFFFFF;--bg:#FAFBFC;--shadow:0 21px 55px rgba(33,60,68,.08);
 --radius:18px;--max:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:103px}
body{margin:0;font-family:Manrope,'Avenir Next','Segoe UI',Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.72;background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}img,svg{max-width:100%}
a:focus-visible,button:focus-visible{outline:3px solid var(--slate);outline-offset:4px}
::selection{background:#DDEAF0;color:var(--graphite-deep)}
.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.skip-link{position:fixed;top:-90px;left:16px;z-index:1200;background:white;color:var(--graphite);padding:12px 17px;border-radius:9px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--graphite-deep);line-height:1.17;letter-spacing:-.045em}
h1{font-weight:710;font-size:clamp(38px,4.6vw,63px)}h2{font-weight:700;font-size:clamp(28px,3.1vw,40px)}h3{font-weight:690;font-size:20px}
.lead{color:#5D6F77;font-size:18px;line-height:1.83;max-width:840px}
.eyebrow,.section-serial{display:inline-flex;align-items:center;gap:10px;color:var(--slate-deep);font-size:11px;font-weight:780;letter-spacing:.14em;text-transform:uppercase}
.eyebrow::before{content:"";width:16px;height:2px;background:var(--slate);border-radius:3px}
.eyebrow-light{color:var(--slate-deep)}.eyebrow-light:before{background:var(--slate)}
.section{padding:96px 0}.section-tight{padding:70px 0}.section-muted{background:var(--cloud)}
.section-head{margin-bottom:34px}.section-head h2{margin:12px 0 13px;max-width:830px}.section-head p{color:var(--muted);max-width:800px;margin:0}

/* Header: deliberately identical in geometry to riordi. */
.site-header{position:sticky;top:0;z-index:100;height:84px;background:rgba(250,251,252,.93);border-bottom:1px solid rgba(218,229,232,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:baseline;flex:none;line-height:1;min-width:0}
.brand-name{display:inline-block;font-size:31px;font-weight:600;letter-spacing:-.09em;line-height:1;color:var(--graphite);white-space:nowrap}
.brand-dot{color:var(--slate)}
.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.desktop-nav a{font-size:12.5px;color:#5C6D72;font-weight:710;transition:color .18s}
.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{color:var(--slate-deep)}
.header-contact{min-height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--graphite);color:#fff;border:1px solid var(--graphite);border-radius:10px;font-size:12px;font-weight:720;padding:0 17px;white-space:nowrap;transition:background .18s,transform .18s}
.header-contact:hover,.header-contact[aria-current="page"]{background:#4E6A75;border-color:#4E6A75}
.header-contact:hover{transform:translateY(-1px)}
.menu-toggle{display:none;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid var(--line);background:white;border-radius:11px;color:var(--graphite);cursor:pointer}
.menu-toggle svg{width:22px;height:22px}.mobile-nav{display:none}

/* Actions */
.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 21px;border:1px solid transparent;border-radius:11px;cursor:pointer;white-space:normal;font-size:13px;font-weight:750;line-height:1.3;transition:transform .18s,background .18s,border-color .18s}
.btn:hover{transform:translateY(-2px)}.btn svg,.text-link svg{width:16px;height:16px;flex:none}
.btn-teal{background:var(--graphite);color:#fff}.btn-teal:hover{background:#4D6872}
.btn-outline-dark,.btn-outline-light{border-color:#B8CDD4;color:var(--graphite);background:transparent}
.btn-outline-dark:hover,.btn-outline-light:hover{background:#E4EEF1}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--slate-deep);font-size:13px;font-weight:760}
.text-link:hover{color:var(--graphite-deep)}

/* Main hero */
.hero{padding:28px 0 0}
.hero-frame{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;min-height:542px;border:1px solid #DAE6E9;border-radius:24px;background:linear-gradient(126deg,#F5F8FA 0%,#ECF3F5 55%,#DEE9EE 100%);box-shadow:0 22px 65px rgba(47,75,84,.065)}
.hero-frame:before{content:"";position:absolute;z-index:-1;top:-320px;right:-130px;width:610px;height:610px;border:1px solid rgba(104,151,168,.17);border-radius:50%;box-shadow:0 0 0 105px rgba(104,151,168,.035),0 0 0 220px rgba(104,151,168,.022)}
.hero-copy{min-width:0;padding:76px 18px 78px 66px}
.hero h1{overflow-wrap:break-word;hyphens:auto;font-size:clamp(36px,4.2vw,58px);font-weight:690;line-height:1.13;color:var(--graphite-deep);margin:22px 0 22px}
.nonbreak{white-space:nowrap}
.hero h1 em{font-style:normal;color:var(--slate-deep);font-weight:700}
.hero p{color:#556D77;font-size:16px;line-height:1.83;max-width:575px;margin-bottom:29px}
.hero-meta{padding-top:23px}.hero-meta span{font-size:10px;font-weight:650;letter-spacing:.105em;color:#768991}.hero-meta strong{color:#8EADB8}
.hero-diagram{min-width:0;width:min(374px,calc(100% - 35px));padding:25px 20px;justify-self:center;align-self:center;background:rgba(255,255,255,.77);border:1px solid #D7E3E8;border-radius:18px;box-shadow:0 18px 42px rgba(44,81,92,.07)}
.diagram-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:10px;font-weight:780;letter-spacing:.115em;color:#718A95}.diagram-index{color:var(--slate-deep)}
.diagram-card{position:relative;display:flex;align-items:center;gap:14px;border:1px solid #DCE6E9;background:#F8FAFB;border-radius:12px;padding:13px 14px;margin:0 0 12px;box-shadow:0 4px 12px rgba(38,77,90,.025)}
.diagram-card:last-child{margin-bottom:0}.diagram-card:before{content:"";position:absolute;left:32px;bottom:-13px;height:13px;width:1px;background:#ADCAD3}.diagram-card:last-child:before{display:none}
.diagram-card:nth-child(3){margin-left:14px;background:#F3F7F8}.diagram-card:nth-child(4){margin-left:28px;background:#EFF5F7}.diagram-card:nth-child(5){margin-left:42px;background:#E5EFF2;border-color:#BAD1D9}
.diagram-number{flex:none;display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#E5EFF2;color:var(--slate-deep);font-size:12px;font-weight:780}
.diagram-card strong{display:block;font-size:12.5px;color:var(--graphite);line-height:1.4}.diagram-card small{display:block;font-size:10.5px;color:#78919C}

/* Home sections */
.issue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.issue-card{background:white;border:1px solid var(--line);border-radius:16px;padding:29px;min-height:218px}
.issue-n,.service-n{color:var(--slate-deep);font-size:11px;font-weight:800;letter-spacing:.04em}
.issue-n{margin-bottom:21px}.issue-card h3{font-size:19px;margin-bottom:12px}.issue-card p{font-size:14px;color:var(--muted);line-height:1.76;margin:0}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.service-card{display:flex;flex-direction:column;min-height:265px;padding:31px;background:white;border:1px solid var(--line);border-radius:17px;transition:box-shadow .2s,transform .2s,border-color .2s}
.service-card:hover{box-shadow:var(--shadow);border-color:#ABC9D3;transform:translateY(-3px)}
.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:10px}
.service-arrow{display:grid;place-items:center;flex:none;background:#E7F0F3;width:35px;height:35px;color:var(--slate-deep);border-radius:10px;font-size:18px}
.service-card h3{margin-bottom:14px;font-size:20px}.service-card p{font-size:14px;line-height:1.78;color:var(--muted);margin-bottom:0}
.service-card-primary{grid-column:1 / -1;min-height:220px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);grid-template-rows:auto 1fr;gap:0 55px;background:linear-gradient(110deg,#EDF3F5,#E3EFF2);border-color:#C9DBE1;padding:36px 42px}
.service-card-primary .service-top{grid-column:1 / -1;margin-bottom:18px}.service-card-primary h3{font-size:clamp(24px,2.7vw,34px);max-width:500px}.service-card-primary p{font-size:16px;max-width:570px}
.process-panel{background:#EDF3F5;border:1px solid #D7E4E8;border-radius:22px;padding:47px 48px;color:var(--graphite)}
.process-panel h2{color:var(--graphite-deep);max-width:830px;margin:14px 0 14px}
.process-panel .panel-intro{color:#61757F;max-width:730px;margin-bottom:43px}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.process-item{border-top:1px solid #BACDD5;padding-top:19px;position:relative}
.process-item:before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;background:var(--slate);border-radius:50%;box-shadow:0 0 0 5px #EDF3F5}
.process-item .num{font-size:12px;color:var(--slate-deep);font-weight:800;margin-bottom:15px}
.process-item h3{font-size:16px;min-height:43px;margin-bottom:8px}.process-item p{font-size:13px;color:#607781;line-height:1.72;margin:0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.split h2{margin:13px 0 18px}.split p{color:var(--muted)}
.check-list,.dot-list{list-style:none;margin:0;padding:0}
.check-list li{display:flex;gap:12px;border-bottom:1px solid var(--line);padding:12px 0;font-size:14px;font-weight:670}
.check-list li:before{content:'↗';color:var(--slate);font-size:17px;font-weight:750}
.dot-list li{position:relative;padding-left:18px;margin-bottom:10px;line-height:1.7}
.dot-list li:before{content:"";position:absolute;top:.79em;left:2px;width:6px;height:6px;border-radius:50%;background:var(--slate)}
.about-band{background:#EFF4F6;border:1px solid #DEE8EC;border-radius:19px;padding:41px 44px;display:grid;grid-template-columns:240px 1fr;gap:31px;align-items:center}
.about-band .label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:780;color:var(--slate-deep)}
.about-band h2{font-size:27px;margin:5px 0 0}.about-band p{color:var(--muted);margin-bottom:13px}
.riordi-strip{border-block:1px solid var(--line);background:#FCFDFD;padding:30px 0}
.riordi-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}
.riordi-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--slate-deep);margin-bottom:6px}
.riordi-inner h3{margin:0 0 6px;font-size:22px}.riordi-inner p{color:var(--muted);font-size:13px;margin:0}
.riordi-name{color:#174737;letter-spacing:-.05em;font-weight:800}.riordi-name .dot{color:#7DCEA5}

/* Footer / universal CTA */
.site-cta{background:#E7F0F3;border-top:1px solid #DAE8ED;padding:70px 0}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}
.site-cta h2{margin:13px 0 13px;font-size:clamp(29px,3.3vw,42px);max-width:740px}.site-cta p{color:#61757F;max-width:750px;margin:0}
.site-footer{background:var(--graphite);color:#E1E7E9;padding:29px 0}
.footer-inner{display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:12px}
.footer-links{display:flex;flex-wrap:wrap;gap:19px}.footer-links a{color:#E1EBEF}.footer-links a:hover{color:#B2CFDA}

/* Subpages */
.page-top{padding:72px 0 65px;background:#F4F8F9;border-bottom:1px solid var(--line)}
.breadcrumb{font-size:12px;color:#738891;display:flex;align-items:center;gap:9px;margin-bottom:32px}
.breadcrumb a:hover{color:var(--slate-deep)}.page-top h1{font-size:clamp(35px,4vw,53px);margin:14px 0 20px;max-width:960px}.page-top .lead{margin:0}
.page-top .small-note{margin-top:26px;color:#82969F;font-size:12px}
.service-block{padding:60px 0;border-bottom:1px solid var(--line);scroll-margin-top:85px}.service-block:last-child{border-bottom:0}
.service-block-head{display:grid;grid-template-columns:65px 1fr;gap:21px;margin-bottom:25px}
.large-n{font-size:14px;color:var(--slate-deep);font-weight:800;padding-top:6px}
.service-block h2{font-size:clamp(27px,3vw,38px);margin:0 0 16px}.service-block-head p{max-width:850px;color:var(--muted);margin:0 0 12px}
.dual-boxes{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-left:86px}
.detail-card{border:1px solid var(--line);background:#FBFCFD;border-radius:16px;padding:28px 30px}
.detail-card h3{margin:0 0 17px;font-size:17px}.detail-card .dot-list{color:#5D707A;font-size:14px}
.editorial-dark{border:1px solid #DCE7EA;background:#EDF4F6;border-radius:21px;padding:44px 48px}
.editorial-dark h2,.editorial-dark h3{color:var(--graphite-deep)}.editorial-dark p{color:#61757D;margin-bottom:13px}.editorial-dark p:last-child{margin-bottom:0}
.value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.value-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px}
.value-card h3{font-size:19px;margin-bottom:12px}.value-card p{font-size:14px;color:var(--muted);margin:0}
.numbered-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.numbered-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:29px}
.numbered-card .num{color:var(--slate-deep);font-size:12px;font-weight:800;margin-bottom:21px}
.numbered-card h3{font-size:18px;margin-bottom:13px}.numbered-card p{font-size:14px;color:var(--muted);margin-bottom:12px}.numbered-card p:last-child{margin:0}
/* Fully connected four-stage journey on How we work; keeps all original descriptions. */
.timeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;position:relative;align-items:stretch}
.timeline:before{content:"";position:absolute;left:25px;right:25px;top:29px;height:2px;background:#C1D6DF}
.timeline .numbered-card{padding:57px 23px 28px;background:#F8FAFB;border-color:#D9E5E9}
.timeline .numbered-card:before{content:"";width:14px;height:14px;position:absolute;top:22px;left:25px;border:3px solid #F8FAFB;background:var(--slate);border-radius:50%;box-shadow:0 0 0 2px #B5CFD9}
.timeline .numbered-card .num{margin-bottom:22px}
.wide-panel{border-radius:20px;padding:40px 43px;background:var(--pale)}
.wide-panel h2{font-size:27px;margin-bottom:16px}.wide-panel p{color:var(--muted)}.wide-panel p:last-child{margin:0}
.grid-3-2{display:grid;grid-template-columns:3fr 2fr;gap:58px;align-items:start}
.narrative p{color:#60727C;font-size:16px;line-height:1.84}
.about-pullquote{background:#EFF4F6;border-left:3px solid var(--slate);border-radius:0 16px 16px 0;padding:35px 37px}
.about-pullquote .quote{font-size:25px;font-weight:660;line-height:1.46;letter-spacing:-.03em;color:var(--graphite)}
.about-pullquote .caption{margin-top:23px;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:800;color:var(--slate-deep)}
.credential-list{display:flex;flex-wrap:wrap;gap:11px;padding:0;margin:0;list-style:none}
.credential-list li{border:1px solid #C8DDE4;border-radius:10px;background:white;color:#536E7A;padding:10px 14px;font-size:13px;font-weight:690}
.experience-note{border-top:1px solid #D8E6EB;padding-top:23px;margin-top:34px}
.experience-label{color:var(--slate-deep);font-weight:780;font-size:11px;letter-spacing:.12em;margin-bottom:8px}
.experience-note p{color:var(--muted);font-size:14px;max-width:850px;margin:0}
/* Client-facing engagement forms */
.engagement-section{background:#F6F9FA;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.engagement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.engagement-card{background:white;border:1px solid var(--line);border-radius:17px;padding:32px}
.engagement-icon{display:grid;place-items:center;height:38px;width:38px;border-radius:9px;background:#E4F0F4;color:var(--slate-deep);font-weight:780;font-size:13px;margin-bottom:24px}
.engagement-card h3{font-size:21px;margin-bottom:14px}.engagement-card p{color:var(--muted);font-size:14px;max-width:530px}
.engagement-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:23px}.engagement-tags span{font-size:11px;color:var(--slate-deep);background:#EEF4F6;border-radius:6px;padding:6px 9px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}
.contact-list{list-style:none;margin:20px 0 0;padding:0}
.contact-list li{padding:12px 0 12px 25px;border-bottom:1px solid var(--line);position:relative;color:#586F78}
.contact-list li:before{content:"·";position:absolute;left:2px;top:1px;color:var(--slate);font-size:28px;font-weight:800}
.contact-hint{font-size:12px;color:#81929A;line-height:1.6;margin-top:17px;max-width:480px}
.contact-feature{border:1px solid #D4E4E9;background:#EDF4F6;color:var(--graphite);border-radius:21px;padding:42px}
.contact-feature h2,.contact-feature h3{color:var(--graphite-deep)}.contact-feature p{color:#5B7480}
.contact-line{padding:16px 0;border-top:1px solid #CDDDE4}
.contact-line .key{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:780;color:var(--slate-deep);margin-bottom:5px}
.contact-line a{font-size:16px;font-weight:760;overflow-wrap:anywhere}.contact-line a:hover{color:var(--slate-deep)}
.legal-wrap{width:min(845px,calc(100% - 64px));margin:0 auto;padding:70px 0 104px}
.legal-wrap h2{font-size:26px;margin:47px 0 16px;letter-spacing:-.025em}.legal-wrap h3{font-size:18px;margin:27px 0 10px;letter-spacing:-.02em}
.legal-wrap p,.legal-wrap li{font-size:15px;line-height:1.85;color:#536B76;overflow-wrap:break-word}
.legal-wrap .dot-list{padding-bottom:5px}
.legal-info{background:#F5F8F9;border-radius:16px;padding:28px 30px;margin:25px 0}
.legal-info p{margin:0 0 8px}.legal-info p:last-child{margin:0}.legal-info strong{color:var(--graphite)}
.legal-wrap a{word-break:break-word;text-decoration:underline;text-decoration-color:#A3C3CE;text-underline-offset:3px}.legal-wrap a:hover{color:var(--slate-deep)}
.legal-note{font-size:12px!important;color:#81929A!important;margin-top:25px}
.animate-in{animation:rise .65s both}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Responsive */
@media(max-width:1080px){
 .desktop-nav{gap:18px}.header-inner{gap:18px}
 .hero-frame{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.hero-copy{padding-left:43px;padding-right:12px}
 .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card{padding:26px}
 .split{gap:40px}.timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline:before{display:none}
}
@media(max-width:800px){
 .container{width:min(var(--max),calc(100% - 40px))}
 .site-header{height:70px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:inline-flex}
 .mobile-nav{position:absolute;left:0;right:0;top:69px;background:rgba(250,251,252,.99);border-bottom:1px solid var(--line);box-shadow:0 14px 26px rgba(25,47,56,.07)}
 .mobile-nav.is-open{display:block}.mobile-nav .container{padding:13px 0 20px;display:flex;flex-direction:column;gap:4px}
 .mobile-nav a{display:block;border-radius:9px;padding:12px;font-size:14px;color:#50636B;font-weight:720}
 .mobile-nav a:hover,.mobile-nav a[aria-current="page"]{background:#EEF3F5;color:var(--graphite)}
 .mobile-nav .mobile-action{margin-top:9px;background:var(--graphite);color:#fff;text-align:center}
 .mobile-nav .mobile-action:hover,.mobile-nav .mobile-action[aria-current="page"]{background:#4D6872;color:#fff}
 .hero{padding-top:20px}.hero-frame{grid-template-columns:minmax(0,1fr);min-height:0}
 .hero-copy{padding:58px 40px 17px}.hero h1{max-width:620px}
 .hero-diagram{width:calc(100% - 80px);margin:25px auto 42px;max-width:520px}
 .diagram-card:nth-child(3){margin-left:14px}.diagram-card:nth-child(4){margin-left:28px}.diagram-card:nth-child(5){margin-left:42px}
 .section{padding:76px 0}.section-tight{padding:62px 0}
 .issue-grid{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.service-card-primary{grid-column:1/-1}
 .service-card-primary{padding:30px;grid-template-columns:1fr;grid-template-rows:auto auto auto;min-height:0;gap:0}.service-card-primary .service-top{grid-column:auto}
 .process-panel{padding:40px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 .split,.about-band,.contact-grid,.grid-3-2{grid-template-columns:1fr;gap:30px}
 .about-band{padding:34px}.dual-boxes{margin-left:0}
 .service-block-head{grid-template-columns:50px 1fr}
 .cta-inner{align-items:flex-start;flex-direction:column;gap:23px}
}
@media(max-width:640px){
 .service-grid,.issue-grid,.value-grid,.engagement-grid,.dual-boxes,.numbered-grid,.timeline{grid-template-columns:1fr}
 .timeline:before{display:block;left:24px;right:auto;top:24px;bottom:24px;width:2px;height:auto}
 .timeline .numbered-card{padding:24px 22px 24px 62px}
 .timeline .numbered-card:before{top:30px;left:17px}
 .timeline .numbered-card .num{margin-bottom:12px}
 .process-grid{grid-template-columns:1fr;gap:21px}.process-item h3{min-height:0}
 .riordi-inner{align-items:flex-start;flex-direction:column;gap:21px}
 .footer-inner{align-items:flex-start;flex-direction:column;gap:12px}
 .service-block-head{grid-template-columns:1fr;gap:7px}.large-n{padding:0}
}
@media(max-width:560px){
 .container{width:calc(100% - 36px)}.legal-wrap{width:calc(100% - 36px)}
 .brand-name{font-size:31px;letter-spacing:-.09em}
 .hero{padding-top:15px}.hero-copy{padding:42px 25px 13px}
 .hero h1{font-size:clamp(28px,7.55vw,38px);letter-spacing:-.052em;overflow-wrap:normal;hyphens:manual}
 .hero p{font-size:14px;line-height:1.78}.hero-diagram{width:calc(100% - 40px);margin:17px auto 28px;padding:17px}
 .diagram-card:nth-child(3),.diagram-card:nth-child(4),.diagram-card:nth-child(5){margin-left:0}
 .section{padding:61px 0}.section-tight{padding:54px 0}
 .section-head{margin-bottom:28px}.issue-card,.service-card,.value-card,.detail-card,.numbered-card,.engagement-card{padding:25px}
 .hero-meta span{font-size:9px}.process-panel{padding:29px 24px}
 .page-top{padding:49px 0 50px}.breadcrumb{margin-bottom:27px}.lead{font-size:16px}
 .service-block{padding:47px 0}.detail-card{padding:24px}
 .about-band,.wide-panel,.editorial-dark,.contact-feature{padding:28px}
 .about-pullquote{padding:28px}.about-pullquote .quote{font-size:22px}
 .legal-wrap{padding:50px 0 70px}.legal-info{padding:22px}.site-cta{padding:52px 0}
}
