@font-face{font-family:Roboto;src:url('/assets/fonts/roboto-300.woff2') format('woff2');font-weight:300;font-display:swap}
@font-face{font-family:Roboto;src:url('/assets/fonts/roboto-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Roboto;src:url('/assets/fonts/roboto-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Roboto;src:url('/assets/fonts/roboto-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Roboto;src:url('/assets/fonts/roboto-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'PT Sans Narrow';src:url('/assets/fonts/pt-sans-narrow-400.woff2') format('woff2');font-weight:400;font-display:swap}

:root {
  --capalight-blue:#00B0EC;
  --capalight-dark:#102832;
  --capalight-dark-alt:#173843;
  --text-primary:#20272B;
  --text-secondary:#667078;
  --background-main:#FFFFFF;
  --background-soft:#F5F8F9;
  --border-light:#E3EAED;
  font-family:Roboto,Arial,sans-serif;
  color:var(--text-primary);
  background:var(--background-main);
  font-synthesis:none;
}
*{box-sizing:border-box}
body{margin:0;font-size:16px;line-height:1.5}
h1,h2,h3,p,ul{margin:0}
h1,h2,h3{font-weight:600;line-height:1.3}
ul{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
button,summary{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
button,summary{cursor:pointer}
img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--capalight-blue);outline-offset:5px;box-shadow:0 0 0 2px var(--capalight-dark)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:100;top:10px;left:16px;padding:10px 16px;background:white;color:var(--capalight-dark);transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}

/* Shared navigation: the original 72px header, with a dark surface for the supplied logo. */
.site-header{position:relative;z-index:20;background:var(--capalight-dark);color:white}
.header-inner{max-width:1272px;min-height:72px;margin:auto;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{flex:0 1 334px}
.brand img{width:334px;height:auto}
.primary-navigation>ul{display:flex;align-items:center;gap:15px}
.primary-navigation a,.primary-navigation summary{display:flex;align-items:center;gap:8px;min-height:40px;font-size:12px;font-weight:300}
.primary-navigation a:hover,.primary-navigation summary:hover{color:var(--capalight-blue)}
.insights{position:relative}
.insights summary{list-style:none}
.insights summary::-webkit-details-marker{display:none}
.chevron{width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin:0 3px 4px}
details[open] .chevron{transform:rotate(225deg);margin-bottom:0}
.submenu{position:absolute;top:100%;left:-16px;width:285px;background:var(--capalight-dark-alt);border:1px solid #33505a;border-radius:4px;padding:8px;box-shadow:0 12px 24px #10283229}
.submenu a{padding:8px;line-height:1.5;font-size:14px;font-weight:400}
.nav-toggle{display:none}

.home-content{max-width:1256px;padding:0 16px;margin:auto}
.intro{height:184px;padding-top:60px;text-align:center}
.intro h1{font-size:40px}
.intro-line{width:480px;height:3px;margin:auto}
.panel{position:relative;isolation:isolate;overflow:hidden;color:white;background:var(--capalight-dark-alt)}
.panel-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
.panel::after{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none}
.hero{min-height:730px;margin-bottom:20px;text-align:center}
.hero-copy{position:relative;padding:29px 28px 36px}
.hero h2{font-size:32px}
.hero p{max-width:530px;margin:24px auto 16px;font-size:24px;line-height:1.3}
.button{display:inline-flex;align-items:center;justify-content:center;position:relative;min-width:173px;min-height:50px;padding:12px 25px;border:1px solid currentColor;border-radius:28px;color:white;background:transparent;font:500 16px/1.4 Inter,Arial,sans-serif;text-align:center;transition:background-color .15s,color .15s}
.button:hover{background:var(--capalight-dark);color:white}
.services{min-height:735px}
.services .panel-image{object-position:42.1933% 68.2848%;transform:scale(1.22);transform-origin:42.1933% 68.2848%}
.services::after,.fila::after{background:linear-gradient(to bottom,#000a 0 300px,#0003 470px)}
.services h2{font-weight:700}
.trema{color:var(--capalight-dark)}
.trema .panel-image{object-position:65.2727% 100%}
.trema .hero-copy{padding-top:40px}
.trema p{margin-top:7px;margin-bottom:24px}
.button-dark-outline{color:var(--capalight-dark);min-width:156px;min-height:45px;font-family:Roboto,Arial,sans-serif;font-weight:300;background:#ffffff0f}
.fila{min-height:731px}
.fila .panel-image{object-position:100% 68.4971%}
.fila .hero-copy{padding-top:49px}
.fila p{margin-top:13px}

.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
.feature{min-height:480px;border-radius:20px}
.feature::after{background:linear-gradient(#000a 0 375px,#0002 100%)}
.feature-copy{padding:18px 50px 28px;display:grid;grid-template-rows:minmax(100px,auto) minmax(162px,auto) auto;justify-items:center;align-items:start}
.feature h2{font-size:24px;text-align:center}
.feature p{width:100%;margin-top:10px;font-size:16px;line-height:1.5}
.resistance .feature-copy{padding-top:24px;grid-template-rows:minmax(102px,auto) minmax(154px,auto) auto}
.resistance p{font-family:Inter,Arial,sans-serif}
.resistance .panel-image{object-position:100% 0}
.hcl h2,.green h2{font-size:28px}
.profiled .panel-image{object-position:59.4737% 0}
.profiled .feature-copy{grid-template-rows:minmax(116px,auto) minmax(186px,auto) auto}
.green .feature-copy{grid-template-rows:minmax(116px,auto) minmax(96px,auto) minmax(90px,auto) auto}
.green-caption{max-width:352px;text-align:center}
.unavailable{cursor:not-allowed;border-style:dashed}
.unavailable:hover{background:transparent}

.partners{padding:104px 0 64px}
.partners>h2{text-align:center;font-size:32px;margin-bottom:18px}
.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.partner{min-height:480px;border-radius:20px}
.partner::after{background:linear-gradient(#0002 20%,#000a 45%)}
.partner-copy{padding:230px 40px 40px;display:flex;flex-direction:column;align-items:flex-start}
.partner h3{font-size:20px}
.partner p{margin-top:12px;min-height:96px}
.partner .button{align-self:flex-end}
.securlite .panel-image{object-position:37.5796% 0}
.radian .panel-image{object-position:78.2132% 0}
.representation .panel-image{object-position:0 0}
.contact-cta{background:var(--background-soft);border-top:1px solid var(--border-light);text-align:center}
.contact-inner{max-width:1256px;min-height:387px;margin:auto;padding:45px 16px 50px}
.contact-inner h2{max-width:649px;margin:auto;font-size:32px}
.contact-inner p{max-width:742px;margin:38px auto 48px}
.button-solid{background:var(--capalight-dark-alt);border-color:var(--capalight-dark-alt);min-width:156px;min-height:45px;font-family:Roboto,Arial,sans-serif;font-weight:700}
.button-solid:hover{background:var(--capalight-dark);border-color:var(--capalight-blue)}

.site-footer{background:var(--capalight-dark-alt);color:white}
.footer-inner{position:relative;max-width:1256px;min-height:162px;padding:12px 16px 16px;margin:auto;font-family:'PT Sans Narrow',Arial,sans-serif;font-size:14px;line-height:1.5}
.footer-navigation{display:flex;flex-wrap:wrap;justify-content:center;gap:0 27px}
.footer-navigation a{display:flex;align-items:center;min-height:40px}
.footer-navigation a:hover,.social-links a:hover{color:var(--capalight-blue)}
.footer-brand{display:block;width:359px;max-width:100%;margin:14px auto 16px}
.footer-brand img{width:100%;height:auto}
.footer-social{position:absolute;right:16px;top:32px;text-align:right}
.social-links{display:flex;justify-content:flex-end;gap:4px}
.social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:32px}
.copyright{position:absolute;right:16px;top:91px}
.preview-notice{max-width:720px;margin:10vh auto;padding:24px}
.preview-notice h1{font-size:32px;margin:20px 0}
.preview-notice .button{margin-top:24px}

/* Core company pages share the homepage palette and restrained architectural rhythm. */
.page-shell{max-width:1256px;margin:auto;padding-left:16px;padding-right:16px}
.page-hero{background:var(--capalight-dark);color:white}
.page-hero-inner{min-height:392px;padding-top:91px;padding-bottom:72px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.eyebrow{margin-bottom:14px;color:var(--capalight-blue);font:500 13px/1.3 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.page-hero h1{max-width:850px;font-size:48px}
.page-lead{max-width:760px;margin-top:24px;font-size:22px;line-height:1.45}
.page-section{padding-top:96px;padding-bottom:96px}
.page-section-soft{background:var(--background-soft);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}
.section-heading{max-width:760px}
.section-heading h2,.page-cta h2{font-size:36px}
.section-intro{max-width:760px;margin-top:24px;color:var(--text-secondary);font-size:19px}
.two-column-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;margin-top:42px;font-size:19px;line-height:1.6}
.audience-grid,.application-grid,.brand-grid{display:grid;gap:16px;margin-top:42px}
.audience-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.audience-grid article{padding:32px 28px;background:white;border:1px solid var(--border-light);border-radius:12px}
.audience-grid h3,.application-card h3,.brand-card h3{font-size:24px}
.audience-grid p,.application-card p,.brand-card p{margin-top:16px;color:var(--text-secondary)}
.application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.application-card,.brand-card{min-height:306px;padding:34px 32px;display:flex;flex-direction:column;border:1px solid var(--border-light);border-radius:16px;background:white}
.application-card .button,.brand-card .button{align-self:flex-start;margin-top:auto;color:var(--capalight-dark);font-size:14px}
.application-card .unavailable,.brand-card .unavailable{opacity:.75}
.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.brand-card{background:linear-gradient(145deg,#fff,#eef4f5)}
.brand-mark{color:var(--capalight-dark)!important;font:600 15px/1.2 Inter,Arial,sans-serif;letter-spacing:.09em}
.brand-logo-link{display:flex;align-items:center;justify-content:center;height:58px;margin:-8px -6px 18px;padding:8px 14px;border-radius:8px;background:var(--capalight-dark)}
.brand-logo-link img{width:auto;max-width:100%;max-height:38px;object-fit:contain}
.brand-logo-link:focus-visible{outline-offset:3px}
.solution-introduction{padding-bottom:46px}
.solution-section{padding-top:64px;padding-bottom:64px;scroll-margin-top:24px}
.solution-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:72px;align-items:start}
.solution-layout h2{font-size:36px;line-height:1.12}
.solution-visual{width:100%;height:210px;margin-top:24px;border-radius:8px;object-fit:cover}
.solution-copy{max-width:710px;color:var(--text-secondary);font-size:18px;line-height:1.6}
.solution-copy p+p{margin-top:18px}
.solution-actions,.brand-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.manufacturer-text-link{display:inline-block;margin-top:18px;color:var(--capalight-dark);font:500 14px/1.4 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px}
.button-outline-dark{color:var(--capalight-dark);border-color:var(--capalight-dark);background:transparent}
.button-outline-dark:hover{background:var(--capalight-dark);color:white}
.solution-actions .button,.brand-actions .button{min-width:190px}
.brand-card{min-height:420px}
.brand-card .brand-families{font-size:15px;line-height:1.5}
.brand-actions{margin-top:auto;padding-top:22px}
.brand-actions .button{width:100%}
.brand-actions .button-solid{color:white}
.brand-page-hero .page-hero-inner{min-height:300px;padding-top:68px;padding-bottom:58px}
.page-cta{text-align:center}
.page-cta p{max-width:680px;margin:20px auto 32px;color:var(--text-secondary);font-size:18px}
.page-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:42px}
.service-card{min-height:238px;padding:30px;background:linear-gradient(145deg,#fff,#eef4f5);border:1px solid var(--border-light);border-radius:12px}
.service-card h3,.process-grid h3,.representation-grid h3,.representation-list h3{font-size:23px}
.service-card p,.representation-grid p,.representation-list p{margin-top:15px;color:var(--text-secondary);font-size:17px;line-height:1.6}
.service-card:last-child{grid-column:1/-1;min-height:0}
.service-scope-note{max-width:760px;margin:28px auto 0;color:var(--text-secondary);font-size:16px;line-height:1.6;text-align:center}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:42px;padding-left:0;list-style:none}
.process-grid li{min-height:194px;padding:26px 22px;background:white;border:1px solid var(--border-light);border-radius:12px}
.process-grid span{display:flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:24px;border-radius:50%;background:var(--capalight-dark-alt);color:white;font:600 15px/1 Inter,Arial,sans-serif}
.service-cta{padding-top:84px;padding-bottom:84px}
.representation-intro{padding-bottom:56px}
.representation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:42px}
.representation-grid article,.representation-list article{padding:30px;background:white;border:1px solid var(--border-light);border-radius:12px}
.representation-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:42px}
.representation-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px}
.representation-brand-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:178px;padding:22px;border-radius:12px;background:var(--capalight-dark);color:white;text-align:center}
.representation-brand-grid img{width:auto;max-width:100%;max-height:46px;object-fit:contain}
.representation-brand-grid span{margin-top:18px;font:500 14px/1.4 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px}
.representation-brand-grid a:focus-visible{outline-offset:4px}
.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.contact-copy h2{font-size:36px}
.contact-copy>p:not(.eyebrow){margin-top:20px;color:var(--text-secondary);font-size:18px}
.linkedin-link{display:inline-flex;margin-top:28px;color:var(--capalight-dark);font-weight:600;text-decoration:underline;text-underline-offset:4px}
.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:32px;background:var(--background-soft);border:1px solid var(--border-light);border-radius:16px}
.form-field,.form-field-wide{min-width:0}
.form-field-wide{grid-column:1/-1}
.contact-form label{display:block;margin-bottom:7px;font-weight:600}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;padding:11px 12px;border:1px solid #aebbc0;border-radius:4px;background:white;color:var(--text-primary);font:400 16px/1.4 Roboto,Arial,sans-serif}
.contact-form textarea{resize:vertical}
.optional,.form-hint{color:var(--text-secondary);font-weight:400}
.form-hint{margin-top:7px;font-size:14px}
.contact-form input[aria-invalid=true],.contact-form select[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:#ad2630}
.field-error{min-height:20px;margin-top:5px;color:#ad2630;font-size:14px}
.form-consent{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:start}
.form-consent input{margin-top:4px}
.form-consent label{margin:0;font-weight:400}
.form-consent .field-error{grid-column:2}
.form-status{min-height:24px;margin-top:14px;color:var(--capalight-dark);font-weight:600}
.form-errors{min-height:24px;margin-top:12px;color:#8b1821;font-weight:600}
.form-privacy{margin-top:16px;color:var(--text-secondary);font-size:14px;line-height:1.5}
.form-privacy a{text-decoration:underline;text-underline-offset:3px}
.form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Insights use a narrower reading measure while retaining the shared page rhythm. */
.insights-hero .page-hero-inner{min-height:330px}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px}
.insight-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-light);border-radius:12px;background:white}
.insight-card img{width:100%;height:190px;object-fit:cover}
.insight-card-body{display:flex;flex:1;flex-direction:column;padding:25px}
.insight-card h2{font-size:24px}
.insight-card p{margin-top:14px;color:var(--text-secondary);font-size:16px;line-height:1.6}
.insight-card .text-link{margin-top:auto;padding-top:22px}
.text-link{display:inline-flex;color:var(--capalight-dark);font-weight:600;text-decoration:underline;text-decoration-color:var(--capalight-blue);text-decoration-thickness:2px;text-underline-offset:5px}
.article-shell{max-width:800px}
.article-hero{background:var(--background-soft);border-bottom:1px solid var(--border-light)}
.article-hero-inner{min-height:316px;padding-top:62px;padding-bottom:56px}
.breadcrumb{margin-bottom:28px;font-size:14px}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}
.breadcrumb li+li::before{content:'/';margin-right:8px;color:var(--text-secondary)}
.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.article-meta{margin-top:20px;color:var(--text-secondary);font-size:15px}
.article-lead{max-width:760px;margin-top:20px;font-size:20px;line-height:1.55}
.article-content{padding-top:64px;padding-bottom:72px;font-size:17px;line-height:1.7}
.article-content h2{margin-top:52px;font-size:30px}
.article-content h3{margin-top:30px;font-size:22px}
.article-content p,.article-content ul{margin-top:18px}
.article-content ul{padding-left:22px;list-style:disc}
.article-content li+li{margin-top:8px}
.article-content a:not(.button){color:var(--capalight-dark);font-weight:600;text-decoration:underline;text-decoration-color:var(--capalight-blue);text-decoration-thickness:2px;text-underline-offset:4px}
.article-toc{margin:34px 0 40px;padding:22px 24px;border-left:4px solid var(--capalight-blue);background:var(--background-soft)}
.article-toc h2{margin:0;font-size:19px}
.article-toc ol{margin:14px 0 0;padding-left:20px}
.article-toc li+li{margin-top:6px}
.article-figure{margin:36px 0 8px}
.article-figure img{width:100%;border-radius:12px}
.article-figure figcaption{margin-top:10px;color:var(--text-secondary);font-size:14px;line-height:1.5}
.article-note{margin-top:26px;padding:20px 22px;border-radius:8px;background:var(--background-soft);color:var(--text-secondary)}
.article-sources{margin-top:60px;padding-top:34px;border-top:1px solid var(--border-light)}
.article-sources h2{margin-top:0}
.article-cta{margin-top:56px;padding:32px;border-radius:12px;background:var(--capalight-dark);color:white}
.article-cta h2{margin:0;font-size:28px}
.article-cta p{margin-top:14px}
.article-cta .button{margin-top:22px}
.related-insights{margin-top:48px;padding-top:34px;border-top:1px solid var(--border-light)}
.related-insights ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none}
.related-insights a{display:block;padding:16px;border:1px solid var(--border-light);border-radius:8px;background:var(--background-soft)}

/* The published layout uses a centred 360px column below 920px (328px of content). */
@media(max-width:920px){
  .header-inner{min-height:56px;padding:6px 16px;flex-wrap:wrap;gap:0}
  .brand{flex-basis:118px}
  .brand img{width:118px}
  .header-inner:has(.nav-toggle[aria-expanded=true]){min-height:67px;padding:12px 16px}
  .header-inner:has(.nav-toggle[aria-expanded=true]) .brand{flex-basis:162px}
  .header-inner:has(.nav-toggle[aria-expanded=true]) .brand img{width:162px}
  .js .nav-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-left:auto;width:44px;height:43px;border:0;background:transparent;color:white}
  .nav-toggle span{width:24px;height:2px;background:currentColor;transition:transform .15s}
  .nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .primary-navigation{flex-basis:100%;padding-top:12px}
  .js .nav-toggle[aria-expanded=false]~.primary-navigation{display:none}
  .primary-navigation>ul{display:block;padding:8px 0 12px;border-top:1px solid #33505a}
  .primary-navigation a,.primary-navigation summary{font-size:16px;min-height:46px;padding:10px 8px;font-weight:400}
  .primary-navigation summary{justify-content:space-between}
  .submenu{position:static;width:auto;margin:0 0 8px;padding:4px 8px;border:0;box-shadow:none}
  .submenu a{font-size:14px}
  .home-content{max-width:360px}
  .intro{height:162px;padding-top:29px}
  .intro h1{font-size:24px}
  .intro-line{width:100%;height:1px}
  .hero{min-height:344px}
  .hero h2{font-size:20px}
  .hero p{font-size:16px;line-height:1.5}
  .hero-copy{padding:16px 18px 30px}
  .services .hero-copy h2{max-width:270px;margin:auto}
  .services p{max-width:210px;margin:12px auto 25px}
  .services::after,.fila::after{background:#0009}
  .trema{min-height:334px;margin-bottom:25px}
  .trema .hero-copy{padding-top:24px}
  .trema p{margin-top:12px;margin-bottom:23px;white-space:nowrap}
  .trema .button{min-height:56px;min-width:164px}
  .fila .hero-copy{padding:22px 20px 25px}
  .fila h2{font-size:20px}
  .fila p{margin:9px auto 16px}
  .feature-grid{grid-template-columns:1fr;gap:20px}
  .feature{min-height:375px}
  .feature-copy,.resistance .feature-copy{padding:16px 20px 22px;display:flex;flex-direction:column;align-items:center;min-height:375px}
  .feature h2,.hcl h2,.green h2{font-size:20px}
  .hcl h2{font-size:24px}
  .feature p{margin-top:22px;text-align:center}
  .feature .button{margin-top:auto}
  .feature::after{background:#0009}
  .resistance p{font-size:16px}
  .hcl .feature-copy{padding-top:16px;padding-bottom:69px}
  .hcl p{margin-top:38px;margin-bottom:35px}
  .profiled,.green{min-height:400px}
  .profiled .feature-copy{min-height:400px;padding:24px 20px 30px}
  .profiled p{margin-top:20px}
  .green .feature-copy{min-height:400px;padding:22px 18px 40px}
  .green h2{font-size:24px}
  .green p{margin-top:16px}
  .green .green-caption{margin:15px 0 12px}
  .green .button{margin-top:0}
  .partners{padding:24px 0 20px}
  .partners>h2{font-size:32px;margin-bottom:24px}
  .partner-grid{grid-template-columns:1fr;gap:24px}
  .partner{min-height:464px}
  .partner::after{background:linear-gradient(#000a 0 185px,#0004 260px,#000a 360px)}
  .partner-copy{min-height:464px;padding:24px 18px;align-items:center;text-align:center}
  .partner h3{font-size:20px}
  .partner p{margin-top:38px;min-height:0}
  .partner .button{align-self:center;margin-top:auto;min-width:194px;min-height:56px}
  .representation p{margin-top:12px}
  .contact-inner{max-width:360px;min-height:332px;padding:23px 16px 32px}
  .contact-inner h2{font-size:24px}
  .contact-inner p{margin:18px auto 30px}
  .footer-inner{max-width:360px;min-height:332px;padding:32px 16px 24px;font-size:14px;line-height:1.5}
  .footer-navigation{justify-content:flex-start;gap:0 21px}
  .footer-brand{width:194px;margin:12px 0 20px}
  .footer-social{position:static;text-align:left;display:flex;align-items:center;gap:8px}
  .social-links{justify-content:flex-start}
  .copyright{position:static;text-align:left;margin-top:28px;font-size:12px;line-height:1.5}
  .page-hero-inner{min-height:278px;padding-top:46px;padding-bottom:46px}
  .page-hero h1{font-size:32px}
  .page-lead{margin-top:16px;font-size:18px}
  .page-section{padding-top:56px;padding-bottom:56px}
  .section-heading h2,.page-cta h2,.contact-copy h2{font-size:28px}
  .section-intro{font-size:17px}
  .two-column-copy,.audience-grid,.application-grid,.brand-grid,.contact-layout,.solution-layout,.service-grid,.representation-grid,.representation-list,.representation-brand-grid{grid-template-columns:1fr;gap:18px}
  .two-column-copy{margin-top:28px;font-size:17px}
  .audience-grid,.application-grid,.brand-grid{margin-top:28px}
  .audience-grid article,.application-card,.brand-card{padding:25px 22px}
  .application-card,.brand-card{min-height:250px}
  .solution-introduction{padding-bottom:30px}
  .solution-section{padding-top:50px;padding-bottom:50px;scroll-margin-top:12px}
  .solution-layout h2{font-size:28px}
  .solution-visual{height:184px;margin-top:18px}
  .solution-copy{font-size:17px}
  .solution-actions .button{width:100%}
  .brand-card{min-height:0}
  .service-grid,.representation-grid,.representation-list,.representation-brand-grid{margin-top:28px}
  .service-card,.process-grid li,.representation-grid article,.representation-list article{min-height:0;padding:25px 22px}
  .service-card p,.representation-grid p,.representation-list p{font-size:16px;line-height:1.6}
  .service-scope-note{margin-top:24px;font-size:16px;line-height:1.6;text-align:left}
  .service-card:last-child{grid-column:auto}
  .process-grid{grid-template-columns:1fr;gap:12px;margin-top:28px}
  .process-grid li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:center}
  .process-grid span{margin:0}
  .service-cta{padding-top:56px;padding-bottom:56px}
  .representation-intro{padding-bottom:30px}
  .representation-brand-grid a{min-height:132px}
  .page-cta-actions .button{width:100%}
  .brand-logo-link{height:54px;margin:0 0 16px}
  .brand-page-hero .page-hero-inner{min-height:278px;padding-top:46px;padding-bottom:46px}
  .contact-form{grid-template-columns:1fr;padding:22px}
  .form-field-wide{grid-column:auto}
  .insights-hero .page-hero-inner{min-height:278px}
  .insight-grid{grid-template-columns:1fr;gap:18px;margin-top:28px}
  .insight-card img{height:184px}
  .insight-card-body{padding:22px}
  .insight-card h2{font-size:23px}
  .article-hero-inner{min-height:0;padding-top:36px;padding-bottom:42px}
  .breadcrumb{margin-bottom:22px;font-size:14px}
  .article-hero h1{font-size:32px}
  .article-lead{font-size:18px;line-height:1.55}
  .article-content{padding-top:42px;padding-bottom:56px;font-size:16px;line-height:1.65}
  .article-content h2{margin-top:40px;font-size:27px}
  .article-content h3{font-size:21px}
  .article-toc{margin:0 0 32px;padding:20px}
  .article-figure{margin:28px 0 4px}
  .article-cta{margin-top:42px;padding:26px 22px}
  .article-cta h2{font-size:25px}
  .related-insights ul{grid-template-columns:1fr}
}
@media(min-width:921px) and (max-width:1100px){
  .intro h1{font-size:36px}
  .feature-copy{padding-left:32px;padding-right:32px}
  .partner-copy{padding-left:24px;padding-right:24px}
  .partner h3{min-height:52px}
  .partner p{min-height:120px}
  .footer-social{right:24px}
}
@media(max-width:359px){
  .hero-copy{padding-left:12px;padding-right:12px}
  .trema p{white-space:normal}
  .feature-copy{min-height:415px}
  .footer-navigation{gap:16px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
