/* Editorial technology interiors. Source content remains the page's substance. */
.ip-page{--ip-ink:#0b1421;--ip-blue:#245ef0;--ip-paper:#f4f2ed;--ip-line:#d9dddF;--ip-subtle:#69717b;--ip-gold:#a58742;background:#fff;color:var(--ip-ink);font-family:Inter,Arial,sans-serif}
.ip-page *{box-sizing:border-box}.ip-page a{color:inherit;text-decoration:none}.ip-page button,.ip-page input,.ip-page select,.ip-page textarea{font:inherit}.ip-page button,.ip-page a{-webkit-tap-highlight-color:transparent}.ip-page a:focus-visible,.ip-page button:focus-visible{outline:2px solid var(--ip-blue);outline-offset:6px}.ip-page svg{display:inline-block;width:22px;height:22px;flex-shrink:0}.ip-page img{display:block;max-width:100%}.ip-page h1,.ip-page h2,.ip-page h3,.ip-page p{margin:0}.ip-page h1,.ip-page h2,.ip-page h3{font-family:"Inter Tight",Inter,Arial,sans-serif;font-weight:500;letter-spacing:-.04em}.ip-page em{font-family:var(--editorial,Georgia,serif);font-weight:400;letter-spacing:-.04em}.ip-wrap{width:min(1320px,calc(100% - 112px));margin:0 auto}.ip-kicker{display:block;font-family:"IBM Plex Mono",monospace;font-size:10px;line-height:1.6;letter-spacing:.08em;text-transform:uppercase;font-weight:400}.ip-hero{position:relative;background:var(--ip-paper);padding:40px 0 82px;border-bottom:1px solid #dddcd7}.ip-breadcrumb{display:flex;align-items:center;gap:10px;color:#81858a;font-size:10px;margin-bottom:64px;flex-wrap:wrap}.ip-breadcrumb a:hover{color:var(--ip-blue)}.ip-breadcrumb>span:last-child{color:#5a6069}.ip-hero-body{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:end}.ip-hero-heading>.ip-kicker{color:#81745d;margin-bottom:24px}.ip-hero h1{font-size:clamp(48px,5.9vw,84px);line-height:1.01;max-width:850px;font-weight:500;text-wrap:balance}.ip-muted{font-family:var(--editorial,Georgia,serif);font-style:italic;font-weight:400;color:#66727f;letter-spacing:-.045em}.ip-hero-summary{font-size:14px;line-height:1.9;max-width:400px;padding-bottom:4px;color:#626b77}.ip-section{padding:75px 0 95px}.ip-section-line{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--ip-line);padding-top:17px;margin-bottom:42px;color:#7b838d;font:9px/1.6 "IBM Plex Mono",monospace;letter-spacing:.06em;text-transform:uppercase}.ip-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:50px;padding:14px 22px;background:var(--ip-ink);color:white!important;border:1px solid var(--ip-ink);font-size:12px;font-weight:500;line-height:1.4;cursor:pointer;transition:background .25s,color .25s,transform .25s}.ip-button:hover{background:var(--ip-blue);border-color:var(--ip-blue)}.ip-button svg{width:18px;height:18px}.ip-button-secondary{background:transparent;color:var(--ip-ink)!important;border-color:#bbc1c9}.ip-button-secondary:hover{background:var(--ip-ink);color:white!important;border-color:var(--ip-ink)}.ip-text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;font-weight:500;line-height:1.6}.ip-text-link svg{width:18px;height:18px;transition:transform .25s}.ip-text-link:hover svg{transform:translateX(4px)}.ip-inline-banner{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--ip-line);padding-top:32px;margin-top:65px}.ip-inline-banner>p{font-size:20px;letter-spacing:-.025em}.ip-callout{background:var(--ip-paper);border-top:1px solid #dddcd7;padding:70px 0}.ip-callout-inner{display:flex;justify-content:space-between;align-items:end;gap:45px}.ip-callout .ip-kicker{color:#88714b}.ip-callout h2{font-size:clamp(45px,5vw,74px);line-height:1.02;margin-top:22px}.ip-callout-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.ip-callout-actions>.ip-text-link{font-size:11px;color:#6d747e}.ip-callout .ip-button{min-width:210px}
/* The catalog has space for the product; its text never overlays the artwork. */
.ip-solution-catalog{display:grid;gap:0}.ip-catalog-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center;padding:52px 0;border-bottom:1px solid var(--ip-line)}.ip-catalog-row:first-child{padding-top:0}.ip-catalog-row:nth-child(even){grid-template-columns:1.15fr .85fr}.ip-catalog-row:nth-child(even) .ip-catalog-copy{order:2}.ip-catalog-row:nth-child(even) .ip-catalog-visual{order:1}.ip-catalog-copy{max-width:440px}.ip-catalog-number{display:block;font:9px/1.7 "IBM Plex Mono",monospace;letter-spacing:.04em;text-transform:uppercase;color:#7f8793;margin-bottom:27px}.ip-catalog-copy h2{font-size:clamp(34px,3.4vw,48px);line-height:1.08;margin-bottom:21px}.ip-catalog-copy>p:not(.ip-catalog-oems){font-size:14px;line-height:1.85;color:var(--ip-subtle);max-width:400px}.ip-catalog-copy .ip-catalog-oems{font:9px/1.9 "IBM Plex Mono",monospace;color:#8a919b;margin:25px 0 28px;letter-spacing:.01em}.ip-catalog-copy .ip-text-link{font-size:11px;border-bottom:1px solid #9ba9c0;padding-bottom:5px;gap:35px}.ip-catalog-visual{height:340px;min-width:0;position:relative;display:flex;align-items:center;justify-content:center;background:#edf0f3;overflow:hidden}.ip-catalog-visual>svg{width:100%;height:100%;display:block}.ip-catalog-visual>img{width:78%;height:84%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.ip-catalog-row:hover .ip-catalog-visual>img{transform:scale(1.035)}.ip-catalog-visual-0{background:#0e1b2c}.ip-catalog-visual-0>img{width:92%;height:96%}.ip-catalog-visual-1{background:#f0f0ed}.ip-catalog-visual-2{background:#e8e8e4}.ip-catalog-visual-2>img{width:85%;height:85%}.ip-catalog-visual-3{background:#e8edf3}.ip-catalog-visual-4{background:#e9edf1}.ip-catalog-visual-5{background:#e9eef7}.ip-technical-mark{color:var(--ip-blue)}
/* Services are a readable scope of work rather than four anonymous tiles. */
.ip-service-row{display:grid;grid-template-columns:50px 1.1fr 1fr 28px;gap:40px;border-top:1px solid var(--ip-line);padding:42px 0;align-items:start}.ip-service-row:last-child{border-bottom:1px solid var(--ip-line)}.ip-service-index{font:10px/1.8 "IBM Plex Mono",monospace;color:#8d949f;padding-top:4px}.ip-service-row h2{font-size:clamp(30px,3.1vw,44px);line-height:1.1;max-width:400px}.ip-service-title>.ip-text-link{margin-top:26px;font-size:10px;color:#7a8390}.ip-service-row p{font-size:14px;line-height:1.85;color:var(--ip-subtle);max-width:430px}.ip-service-scope{list-style:none;padding:0;margin:25px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px 20px}.ip-service-scope li{font-size:11px;line-height:1.7;color:#4c5b70}.ip-service-scope li:before{content:"—";color:#a4b2c7;margin-right:8px}.ip-row-arrow{padding-top:4px}.ip-row-arrow svg{width:25px;height:25px}.ip-service-row:hover h2{color:var(--ip-blue)}.ip-service-process{padding:70px 0 80px;background:#0e1a2b;color:#fff}.ip-service-process>.ip-wrap{display:grid;grid-template-columns:.8fr 1.8fr;gap:85px;align-items:start}.ip-process-intro>.ip-kicker{color:#8ba0bc}.ip-service-process h2{font-size:46px;line-height:1.08;margin-top:25px}.ip-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.ip-process-grid>div{border-top:1px solid #415066;padding-top:18px}.ip-process-grid>div>span{font:9px/1.6 "IBM Plex Mono",monospace;color:#7c91ae}.ip-process-grid h3{font-size:24px;margin:34px 0 14px}.ip-process-grid p{font-size:11px;line-height:1.8;color:#a1b0c5}
/* Two selected narratives introduce an image-free project index. */
.ip-featured-work{display:grid;grid-template-columns:1.15fr .85fr;gap:35px;align-items:start}.ip-featured-project:nth-child(2){padding-top:85px}.ip-featured-visual{height:330px;background:#e5eaf1;position:relative;overflow:hidden}.ip-featured-project:nth-child(2) .ip-featured-visual{height:285px}.ip-featured-visual>svg{width:100%;height:100%;display:block;transition:transform .6s}.ip-featured-project:hover .ip-featured-visual>svg{transform:scale(1.025)}.ip-featured-visual>span{position:absolute;bottom:18px;right:18px;width:35px;height:35px;display:flex;justify-content:center;align-items:center;background:white;color:var(--ip-ink)}.ip-featured-visual>span svg{width:17px;height:17px}.ip-featured-caption{padding-top:25px}.ip-featured-caption>.ip-kicker{font-size:9px;color:#78828f;margin-bottom:18px}.ip-featured-caption h2{font-size:clamp(29px,3vw,42px);line-height:1.12}.ip-featured-caption>p{font-size:11px;color:#818995;margin-top:17px}.ip-index-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:90px;margin-bottom:35px}.ip-index-heading h2{font-size:42px}.ip-index-heading p{font-size:12px;color:#7d8591}.ip-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:25px}.ip-filters{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid #d9dfe6}.ip-filters button{border:0;border-bottom:2px solid transparent;background:transparent;color:#78818c;padding:13px 18px 13px 0;margin-right:24px;cursor:pointer;font-size:11px;line-height:1.5;transition:color .2s,border-color .2s}.ip-filters button:hover{color:var(--ip-ink)}.ip-filters button.is-active{border-bottom-color:var(--ip-ink);color:var(--ip-ink)}.ip-filters button span{font:9px/1.6 "IBM Plex Mono",monospace;color:#9ca6b2;margin-left:7px}.ip-project-count{font:9px/1.6 "IBM Plex Mono",monospace;white-space:nowrap;color:#7b8592}.ip-project-row{display:grid;grid-template-columns:34px minmax(0,2fr) minmax(0,.9fr) minmax(0,.8fr) 22px;gap:25px;padding:31px 0;border-top:1px solid var(--ip-line);align-items:center}.ip-project-row:last-child{border-bottom:1px solid var(--ip-line)}.ip-project-card[hidden],.ip-office-card[hidden]{display:none}.ip-index-number{font:9px/1.6 "IBM Plex Mono",monospace;color:#97a0ac;align-self:start;padding-top:3px}.ip-project-row .ip-kicker{font-size:8px;color:#8692a2;margin-bottom:10px}.ip-project-row h2{font-size:23px;line-height:1.18;letter-spacing:-.035em}.ip-project-row-client>span,.ip-project-row-oem>span{display:block;font:8px/1.6 "IBM Plex Mono",monospace;color:#9ca3af;margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}.ip-project-row-client>p,.ip-project-row-oem>p{font-size:11px;line-height:1.7;color:#616e80}.ip-project-row-arrow{color:#7186a2}.ip-project-row-arrow svg{width:17px;height:17px}.ip-project-row:hover h2{color:var(--ip-blue)}
/* Company history is separated from its present-day facts. */
.ip-company-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.ip-company-intro h2{font-size:clamp(40px,4.5vw,64px);line-height:1.05;margin-top:25px}.ip-company-intro>div>p{font-size:14px;line-height:1.9;color:var(--ip-subtle);margin-bottom:22px}.ip-company-intro>div>.ip-large-copy{font-size:22px;line-height:1.55;color:var(--ip-ink)}.ip-company-intro .ip-button{margin-top:13px}.ip-history{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:85px;padding:40px 0 50px;border-top:1px solid var(--ip-line);border-bottom:1px solid var(--ip-line)}.ip-history-item>span{display:block;font:9px/1.6 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.06em;color:#858e9b}.ip-history-item>strong{font-family:var(--editorial,Georgia,serif);font-size:100px;font-weight:400;line-height:1;letter-spacing:-.065em;display:block;margin:22px 0 23px;color:#293a51}.ip-history-item>p{font-size:13px;color:#737e8d;line-height:1.8;max-width:430px}.ip-history-item .ip-text-link{margin-top:25px;font-size:11px}.ip-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid var(--ip-line)}.ip-stats>div{padding:32px 0;border-bottom:1px solid var(--ip-line)}.ip-stats strong{display:block;font-family:"Inter Tight",Inter,sans-serif;font-size:49px;letter-spacing:-.045em;font-weight:400;line-height:1.1}.ip-stats span{display:block;font-size:10px;color:#89919d;margin-top:13px}.ip-company-links{margin-top:65px;display:grid;grid-template-columns:1fr 1fr;column-gap:65px}.ip-company-links>a{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--ip-line);padding:30px 0}.ip-company-links>a>svg{margin-top:8px;color:#8a96a6;width:18px;height:18px}.ip-company-links .ip-kicker{font-size:8px;color:#9098a4}.ip-company-links h3{font-size:29px;margin:15px 0 12px}.ip-company-links p{font-size:12px;line-height:1.8;max-width:380px;color:var(--ip-subtle)}.ip-company-links a:hover h3{color:var(--ip-blue)}.ip-certifications{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:50px;border-bottom:1px solid var(--ip-line);padding:45px 0}.ip-certifications>.ip-kicker{color:#8e7a59}.ip-certifications h3{font-size:30px;line-height:1.2;margin-top:17px}.ip-certification-items{display:flex;align-items:center;justify-content:space-between;gap:35px}.ip-certification-items figure{margin:0;flex:1;text-align:center}.ip-certification-items img{height:85px;width:110px;max-width:100%;object-fit:contain;margin:0 auto}.ip-certification-items figcaption{color:#7e8998;font:8px/1.6 "IBM Plex Mono",monospace;margin-top:16px;letter-spacing:.03em}
/* Partner imagery remains original, with consistent optical space around it. */
.ip-partner-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ip-line);border-top:1px solid var(--ip-line)}.ip-partner-tile{min-height:190px;border-right:1px solid var(--ip-line);border-bottom:1px solid var(--ip-line);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:42px 25px 22px}.ip-partner-tile img{width:145px;height:66px;object-fit:contain}.ip-partner-tile span{font-size:9px;color:#929ba7;margin-top:25px}
/* Original portraits lead; complete biographies expand only when requested. */
.ip-leader-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 34px;align-items:start}.ip-leader{min-width:0;border:0}.ip-leader summary{cursor:pointer;list-style:none}.ip-leader summary::-webkit-details-marker{display:none}.ip-leader-photo{position:relative;background:#e9e9e5;aspect-ratio:3/3.5;overflow:hidden}.ip-leader-photo img{width:100%;height:100%;object-fit:cover;object-position:top;filter:saturate(.8);transition:filter .3s,transform .6s}.ip-leader:hover .ip-leader-photo img{filter:saturate(1);transform:scale(1.015)}.ip-leader-photo>span{position:absolute;left:0;bottom:0;background:#fff;padding:9px 13px;color:#9099a7;font:9px/1.6 "IBM Plex Mono",monospace}.ip-leader-heading{padding-top:22px}.ip-leader-heading .ip-kicker{font-size:8px;line-height:1.8;color:#84909f;max-width:280px;min-height:29px}.ip-leader h2{font-size:29px;line-height:1.15;margin:11px 0 22px}.ip-leader-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;padding:13px 0;border-top:1px solid var(--ip-line);color:#5f718c}.ip-leader-toggle b{font-size:20px;font-weight:300;line-height:1}.ip-close-bio{display:none}.ip-leader-expanded{padding-top:25px}.ip-leader-bio p{font-size:14px;line-height:1.9;color:#697687;margin-bottom:20px}.ip-leader-linkedin{color:var(--ip-blue)!important;font-size:11px;margin-top:7px}.ip-leader-linkedin svg{width:15px;height:15px}.ip-leader[open]{grid-column:1/-1;display:grid;grid-template-columns:300px 1fr;gap:70px;padding-bottom:45px;border-bottom:1px solid var(--ip-line)}.ip-leader[open] .ip-leader-expanded{padding-top:0}.ip-leader[open] .ip-read-bio{display:none}.ip-leader[open] .ip-close-bio{display:inline}.ip-leader[open] .ip-leader-toggle b{transform:rotate(45deg)}
/* Direct contact and a quiet, well-labelled form share the same alignment. */
.ip-contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px}.ip-contact-info{padding-top:8px}.ip-contact-info>.ip-kicker{color:#917c57}.ip-contact-phone{display:block;font-family:"Inter Tight",Inter,sans-serif;font-size:34px;letter-spacing:-.04em;line-height:1.3;margin:23px 0 17px}.ip-contact-email{display:inline-flex;align-items:center;gap:22px;font-size:15px}.ip-contact-email svg{width:15px;height:15px;color:#7f8ba0}.ip-contact-rule{height:1px;background:var(--ip-line);margin:38px 0}.ip-contact-info address{font-style:normal;font-size:14px;line-height:1.9;max-width:335px;color:#707b8a;margin-top:20px}.ip-contact-fax{font-size:11px;color:#8c96a4;margin:18px 0 23px!important}.ip-support-note{margin-top:38px;max-width:335px}.ip-support-note p{font-size:12px;line-height:1.85;color:#7f8a9b;margin-top:12px}.ip-enquiry-form{background:#f4f3ef;padding:38px}.ip-enquiry-form h2{font-size:30px;margin-bottom:30px}.ip-form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ip-enquiry-form label{display:block;font-size:11px;color:#596474;line-height:1.5;margin-bottom:24px}.ip-enquiry-form input,.ip-enquiry-form select,.ip-enquiry-form textarea{width:100%;display:block;margin-top:10px;background:transparent;border:0;border-bottom:1px solid #bac1c9;border-radius:0;padding:13px 0;font-size:13px;color:var(--ip-ink);min-width:0;outline:none;transition:border-color .2s}.ip-enquiry-form input:focus,.ip-enquiry-form select:focus,.ip-enquiry-form textarea:focus{border-color:var(--ip-blue);box-shadow:0 1px 0 var(--ip-blue)}.ip-enquiry-form input::placeholder,.ip-enquiry-form textarea::placeholder{color:#a2a8af}.ip-enquiry-form textarea{resize:vertical;min-height:130px}.ip-form-note{font-size:10px!important;color:#818b99;line-height:1.8;max-width:400px;margin-bottom:24px!important}.ip-enquiry-form .ip-button{width:100%;border:0}.ip-form-status{font-size:11px;line-height:1.7;color:var(--ip-blue);margin-top:20px!important}.ip-form-status:empty{margin:0!important}.ip-form-status a{text-decoration:underline}.ip-office-strip{background:#e8edf2;padding:55px 0}.ip-office-strip .ip-wrap{display:grid;grid-template-columns:.65fr 1.6fr 1fr;align-items:center;gap:35px}.ip-office-strip span{font:9px/1.6 "IBM Plex Mono",monospace;text-transform:uppercase;color:#8190a5}.ip-office-strip h2{font-size:35px;line-height:1.12}.ip-office-strip a{justify-self:end;font-size:11px}
/* Locations read as an address book, not seventeen copies of one card. */
.ip-office-filters{gap:0}.ip-office-filters button{font-size:10px;margin-right:18px}.ip-offices-grid{display:grid;border-top:1px solid var(--ip-line)}.ip-office-card{display:grid;grid-template-columns:.75fr 1.25fr 1fr;gap:50px;align-items:start;padding:32px 0;border-bottom:1px solid var(--ip-line);min-width:0}.ip-office-card .ip-kicker{font-size:8px;color:#8b94a2}.ip-office-card h2{font-size:29px;line-height:1.1;margin-top:12px}.ip-office-card address{font-size:12px;line-height:1.9;color:#748091;font-style:normal;max-width:380px}.ip-office-address>.ip-text-link{font-size:9px;margin-top:17px;color:#6b7f9e}.ip-office-person{display:flex;flex-direction:column;gap:8px;font-size:11px;line-height:1.65;min-width:0}.ip-office-person p{color:#697789}.ip-office-person a{overflow-wrap:anywhere}.ip-office-person a:hover{color:var(--ip-blue)}.ip-office-card[data-office-type="Head office"]{background:var(--ip-paper);padding:35px 28px;gap:45px}.ip-office-card[data-office-type="Service point"]{padding:24px 0}.ip-office-card[data-office-type="Service point"] h2{font-size:24px}
.ip-career-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.ip-career-layout h2{font-size:46px;line-height:1.1;margin-top:22px}.ip-career-layout .ip-large-copy{font-size:18px;line-height:1.75;color:#75808e;margin:26px 0 32px}.ip-career-panel{padding:40px;background:var(--ip-paper);border-top:2px solid #b59c66}.ip-career-panel h3{font-size:34px;margin:21px 0}.ip-career-panel p{font-size:14px;color:#6c7888;line-height:1.85;margin-bottom:25px}.ip-career-panel .ip-small-copy{font-size:10px;margin:17px 0 0}.ip-career-divider{height:1px;background:#d6d8da;margin:35px 0 25px}.ip-associate-intro{max-width:880px;font-size:22px;line-height:1.75;letter-spacing:-.02em}.ip-associate-intro p+p{font-size:15px;line-height:1.9;color:#6b7787;margin-top:24px}.ip-associate-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:60px}.ip-associate-grid article{padding:45px;background:var(--ip-paper);border-top:1px solid #c6c9cd}.ip-associate-grid article>div{height:130px;display:flex;align-items:center;justify-content:center}.ip-associate-grid img{max-width:250px;max-height:100px;object-fit:contain}.ip-associate-grid h2{font-size:25px;text-align:center;margin-top:35px}
/* Detail pages behave like a considered technical publication. */
.ip-detail-page .ip-hero{background:#0c1828;color:white;padding:32px 0 65px;border-color:#29374a}.ip-detail-page .ip-breadcrumb{margin-bottom:48px;color:#72859f}.ip-detail-page .ip-breadcrumb>span:last-child{color:#a0aec2}.ip-detail-page .ip-hero-body{display:block}.ip-detail-page .ip-hero-heading>.ip-kicker{color:#a8b9d0;margin-bottom:23px}.ip-detail-page .ip-hero h1{font-size:clamp(40px,4.6vw,66px);line-height:1.06;max-width:1050px}.ip-detail-page .ip-hero-summary{font-size:14px;line-height:1.9;max-width:850px;color:#a4b4ca;margin-top:26px}.ip-case-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;border-top:1px solid #304055;padding-top:25px;margin-top:37px;max-width:1000px}.ip-case-meta span{display:block;font:8px/1.6 "IBM Plex Mono",monospace;text-transform:uppercase;color:#7890b1;letter-spacing:.06em}.ip-case-meta strong{font-size:12px;color:#d1daE7;display:block;margin-top:10px;font-weight:400;line-height:1.7}.ip-detail-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:85px;align-items:start}.ip-detail-sidebar{position:sticky;top:120px}.ip-detail-sidebar>.ip-kicker{color:#999fa9;font-size:9px}.ip-detail-sidebar nav{display:flex;flex-direction:column;gap:0;margin-top:21px;border-left:1px solid #dce1e7;max-height:calc(100vh - 360px);overflow:auto;scrollbar-width:thin}.ip-detail-sidebar nav button{color:#8892a0;border:0;background:transparent;text-align:left;font-size:10px;line-height:1.7;padding:9px 0 9px 17px;cursor:pointer;border-left:2px solid transparent;margin-left:-1px;transition:color .2s,border-color .2s}.ip-detail-sidebar nav button:hover,.ip-detail-sidebar nav button.is-current,.ip-detail-sidebar nav button:focus-visible{color:var(--ip-blue);border-left-color:var(--ip-blue)}.ip-sidebar-contact{border-top:1px solid var(--ip-line);padding-top:24px;margin-top:30px}.ip-sidebar-contact p{font-size:11px;line-height:1.85;color:#8a94a2;margin-bottom:20px}.ip-sidebar-contact .ip-button{font-size:10px;min-height:40px;padding:10px 12px;gap:10px}.ip-sidebar-contact .ip-button svg{width:15px;height:15px}.ip-prose{min-width:0;max-width:880px;font-size:14px;line-height:1.9;color:#6d798a;overflow-wrap:break-word}.ip-prose>p{margin:0 0 25px}.ip-prose h1,.ip-prose h2{font-size:32px;line-height:1.2;color:#172a43;letter-spacing:-.03em;margin:58px 0 25px;padding-top:25px;border-top:1px solid #e2e6eb;scroll-margin-top:120px;text-wrap:balance}.ip-prose h3{font-size:25px;line-height:1.3;color:#172a43;margin:37px 0 20px;scroll-margin-top:120px}.ip-prose h4,.ip-prose h5,.ip-prose h6{font-size:15px;color:#172a43;margin:30px 0 15px;letter-spacing:-.01em;scroll-margin-top:120px}.ip-prose>h2:first-child,.ip-prose>h3:first-child{margin-top:0;padding-top:0;border-top:0}.ip-prose h2[data-step]:before{content:attr(data-step);display:block;font:10px/1.6 "IBM Plex Mono",monospace;color:#7791b6;margin-bottom:18px;letter-spacing:.06em}.ip-prose ul,.ip-prose ol{margin:20px 0 30px;padding-left:21px}.ip-prose li{margin-bottom:10px;padding-left:7px}.ip-prose li::marker{color:#95a6bf}.ip-prose strong,.ip-prose b{color:#344a65;font-weight:600}.ip-prose img{max-height:420px;max-width:100%;width:auto;object-fit:contain;background:#f4f4f1;margin:35px auto;padding:25px}.ip-prose p img{padding:15px}.ip-prose img+img{margin-top:-20px}.ip-prose a[href]{color:var(--ip-blue);text-decoration:underline;text-underline-offset:3px}.ip-prose a[href] h2{color:var(--ip-blue);font-size:24px}.ip-prose .ip-static-link{display:block}.ip-prose .ip-inline-logo-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e0e5eb;margin:30px 0 45px;background:#e0e5eb;gap:1px}.ip-prose .ip-inline-logo-grid>img{width:100%;height:115px;max-width:100%;object-fit:contain;margin:0;padding:25px;background:white}.ip-prose .ip-split-lists{display:grid;grid-template-columns:1fr 1fr;gap:25px}.ip-prose .ip-split-lists ul{margin-top:0}.ip-prose h2.ip-minor-heading{font:9px/1.6 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:#8795a8;margin:30px 0 15px;padding:0;border:0}.ip-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dfe3e8;margin:30px 0 45px}.ip-detail-stats>div{padding:26px 10px 26px 0;border-bottom:1px solid #dfe3e8}.ip-detail-stats strong{display:block;font:400 40px/1.1 "Inter Tight",Inter,sans-serif;letter-spacing:-.05em}.ip-detail-stats span{display:block;color:#84909f;font-size:10px;margin-top:10px}.ip-related{padding:60px 0 70px;background:#f0f2f4}.ip-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.ip-section-heading h2{font-size:38px;margin-top:15px}.ip-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.ip-related-grid>a{position:relative;display:block;padding:25px 35px 25px 0;min-height:150px;border-top:1px solid #bfc8d5}.ip-related-grid>a>span{font:8px/1.6 "IBM Plex Mono",monospace;text-transform:uppercase;color:#8a97a9}.ip-related-grid h3{font-size:24px;line-height:1.2;margin-top:20px}.ip-related-grid svg{position:absolute;top:26px;right:0;width:17px;height:17px;color:#6981a3}.ip-related-grid>a:hover h3{color:var(--ip-blue)}.ip-missing-links{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.ip-missing-links a{border-top:1px solid #dfe3e8;padding-top:25px;display:flex;justify-content:space-between;font-size:18px}.ip-hero>.ip-wrap>.ip-button{margin-top:30px}
@media(min-width:1600px){.ip-hero h1{font-size:88px}.ip-detail-page .ip-hero h1{font-size:70px}.ip-catalog-visual{height:380px}}
@media(max-width:1120px){.ip-wrap{width:calc(100% - 72px)}.ip-hero-body{gap:45px;grid-template-columns:1.3fr .8fr}.ip-hero h1{font-size:66px}.ip-hero-summary{font-size:13px}.ip-catalog-row{gap:55px}.ip-catalog-visual{height:300px}.ip-service-row{grid-template-columns:30px 1fr 1fr 24px;gap:25px}.ip-service-scope{grid-template-columns:1fr}.ip-service-process>.ip-wrap{gap:50px;grid-template-columns:.8fr 1.7fr}.ip-service-process h2{font-size:39px}.ip-process-grid{gap:18px}.ip-process-grid h3{font-size:22px}.ip-featured-visual{height:295px}.ip-featured-project:nth-child(2) .ip-featured-visual{height:250px}.ip-project-row{grid-template-columns:25px minmax(0,1.7fr) minmax(0,.8fr) minmax(0,.8fr) 18px;gap:20px}.ip-project-row h2{font-size:22px}.ip-company-intro{gap:60px}.ip-contact-layout{gap:65px}.ip-detail-layout{grid-template-columns:190px minmax(0,1fr);gap:55px}.ip-leader-list{gap:40px 25px}.ip-leader h2{font-size:26px}.ip-leader[open]{grid-template-columns:260px 1fr;gap:45px}.ip-career-layout{gap:55px}.ip-office-card{gap:30px;grid-template-columns:.75fr 1.2fr 1fr}}
@media(max-width:800px){.ip-wrap{width:calc(100% - 48px)}.ip-hero{padding:32px 0 58px}.ip-breadcrumb{margin-bottom:45px;font-size:9px}.ip-hero-body{display:block}.ip-hero h1{font-size:clamp(44px,8vw,67px)}.ip-hero-heading>.ip-kicker{font-size:9px;margin-bottom:22px}.ip-hero-summary{margin-top:25px!important;font-size:14px;max-width:560px}.ip-section{padding:55px 0 65px}.ip-section-line{font-size:8px;gap:25px}.ip-catalog-row,.ip-catalog-row:nth-child(even){grid-template-columns:1fr 1fr;gap:35px;padding:38px 0}.ip-catalog-copy h2{font-size:32px}.ip-catalog-copy>p:not(.ip-catalog-oems){font-size:12px}.ip-catalog-oems{font-size:8px!important;margin:20px 0!important}.ip-catalog-number{font-size:8px;margin-bottom:20px}.ip-catalog-copy .ip-text-link{font-size:10px;gap:15px}.ip-catalog-visual{height:260px}.ip-service-row{grid-template-columns:25px 1fr 1fr 20px;gap:20px;padding:33px 0}.ip-service-row h2{font-size:29px}.ip-service-row p{font-size:12px}.ip-service-title>.ip-text-link{font-size:9px}.ip-service-scope li{font-size:10px}.ip-service-process>.ip-wrap{grid-template-columns:1fr;gap:40px}.ip-service-process h2{font-size:43px}.ip-process-grid{gap:25px}.ip-featured-work{gap:25px}.ip-featured-project:nth-child(2){padding-top:60px}.ip-featured-visual{height:245px}.ip-featured-project:nth-child(2) .ip-featured-visual{height:210px}.ip-featured-caption h2{font-size:28px}.ip-featured-caption>.ip-kicker{font-size:8px}.ip-featured-caption>p{font-size:10px;line-height:1.7}.ip-index-heading{padding-top:60px}.ip-index-heading h2{font-size:36px}.ip-index-heading p{font-size:11px}.ip-project-count{font-size:8px}.ip-project-row{grid-template-columns:24px minmax(0,1.6fr) minmax(0,.9fr) 18px;gap:18px}.ip-project-row-oem{grid-column:3;grid-row:auto}.ip-project-row-main{grid-row:span 2}.ip-project-row-client{grid-column:3}.ip-project-row-arrow{grid-column:4;grid-row:1}.ip-project-row-client>span,.ip-project-row-oem>span{font-size:7px;margin-bottom:4px}.ip-project-row-client>p,.ip-project-row-oem>p{font-size:10px}.ip-project-row h2{font-size:22px}.ip-filters button{font-size:10px;margin-right:18px}.ip-company-intro{grid-template-columns:1fr;gap:35px}.ip-company-intro h2{font-size:45px}.ip-company-intro>div>.ip-large-copy{font-size:20px}.ip-history{gap:45px;margin-top:55px;padding-bottom:40px}.ip-history-item>strong{font-size:82px}.ip-history-item>p{font-size:12px}.ip-history-item>.ip-text-link{font-size:10px}.ip-stats{margin-top:35px}.ip-stats strong{font-size:43px}.ip-stats>div{padding:29px 0}.ip-stats span{font-size:9px}.ip-company-links{margin-top:45px;column-gap:35px}.ip-company-links h3{font-size:27px}.ip-company-links .ip-kicker{font-size:7px}.ip-certifications{grid-template-columns:1fr;gap:30px}.ip-certifications h3{font-size:29px}.ip-certification-items{justify-content:flex-start;gap:25px}.ip-certification-items figure{flex:0 1 140px}.ip-certification-items img{height:85px}.ip-partner-grid{grid-template-columns:repeat(3,1fr)}.ip-partner-tile{min-height:170px;padding:35px 20px 20px}.ip-partner-tile img{width:120px;height:55px}.ip-leader-list{grid-template-columns:1fr 1fr;gap:40px 25px}.ip-leader[open]{grid-template-columns:220px 1fr;gap:30px}.ip-leader h2{font-size:28px}.ip-leader-bio p{font-size:12px;line-height:1.9}.ip-career-layout{grid-template-columns:1fr;gap:40px}.ip-contact-layout{grid-template-columns:1fr;gap:45px}.ip-contact-info{max-width:500px}.ip-enquiry-form{padding:32px}.ip-office-strip .ip-wrap{grid-template-columns:1fr 2fr}.ip-office-strip h2{font-size:33px}.ip-office-strip .ip-text-link{grid-column:2;justify-self:start}.ip-office-card{grid-template-columns:.8fr 1.2fr;gap:25px}.ip-office-person{grid-column:2}.ip-office-title{grid-row:span 2}.ip-office-card h2{font-size:28px}.ip-office-card[data-office-type="Head office"]{gap:25px;padding:28px}.ip-associate-intro{font-size:19px}.ip-associate-grid{gap:25px;margin-top:45px}.ip-associate-grid article{padding:25px}.ip-associate-grid img{max-width:200px}.ip-associate-grid h2{font-size:22px}.ip-detail-page .ip-hero{padding:29px 0 48px}.ip-detail-page .ip-breadcrumb{margin-bottom:36px}.ip-detail-page .ip-hero h1{font-size:clamp(38px,6.5vw,56px)}.ip-detail-page .ip-hero-summary{font-size:13px;line-height:1.85}.ip-case-meta{gap:20px}.ip-case-meta strong{font-size:11px}.ip-detail-layout{grid-template-columns:1fr;gap:35px}.ip-detail-sidebar{position:static;border-bottom:1px solid var(--ip-line);padding-bottom:25px}.ip-detail-sidebar nav{flex-direction:row;flex-wrap:wrap;gap:6px;border:0;margin-top:15px;max-height:115px;overflow:auto}.ip-detail-sidebar nav button{border:1px solid #e0e5eb;padding:8px 10px;margin:0;font-size:9px;max-width:240px}.ip-sidebar-contact{display:none}.ip-prose{max-width:100%;font-size:14px}.ip-prose h2{font-size:29px;margin-top:45px}.ip-prose h3{font-size:23px}.ip-related-grid{gap:25px}.ip-related-grid h3{font-size:21px}.ip-callout{padding:55px 0}.ip-callout h2{font-size:48px}.ip-callout .ip-button{min-width:180px}.ip-missing-links{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ip-wrap{width:calc(100% - 40px)}.ip-hero{padding:26px 0 46px}.ip-breadcrumb{font-size:8px;gap:8px;margin-bottom:37px}.ip-hero h1{font-size:44px;line-height:1.04;letter-spacing:-.045em}.ip-hero-summary{font-size:13px;line-height:1.85;margin-top:24px!important}.ip-hero-heading>.ip-kicker{font-size:8px;margin-bottom:20px}.ip-section{padding:45px 0 60px}.ip-section-line{font-size:7px;margin-bottom:30px;align-items:start}.ip-section-line>span:last-child{text-align:right;max-width:150px}.ip-catalog-row,.ip-catalog-row:nth-child(even){grid-template-columns:1fr;gap:28px;padding:34px 0}.ip-catalog-row .ip-catalog-copy,.ip-catalog-row:nth-child(even) .ip-catalog-copy{order:1}.ip-catalog-row .ip-catalog-visual,.ip-catalog-row:nth-child(even) .ip-catalog-visual{order:2}.ip-catalog-copy{max-width:100%}.ip-catalog-copy h2{font-size:35px;margin-bottom:18px}.ip-catalog-copy>p:not(.ip-catalog-oems){font-size:13px;max-width:100%}.ip-catalog-number{font-size:8px;margin-bottom:18px}.ip-catalog-copy .ip-catalog-oems{margin:20px 0!important;font-size:8px!important}.ip-catalog-copy .ip-text-link{font-size:11px;gap:24px}.ip-catalog-visual{height:280px}.ip-service-row{grid-template-columns:22px 1fr 20px;gap:14px;padding:30px 0}.ip-service-title{grid-column:2}.ip-service-row>div:not(.ip-service-title){grid-column:2;grid-row:2}.ip-row-arrow{grid-column:3;grid-row:1}.ip-service-row h2{font-size:31px}.ip-service-title>.ip-text-link{font-size:9px;margin-top:17px}.ip-service-row p{font-size:12px}.ip-service-index{font-size:8px}.ip-service-scope{grid-template-columns:1fr 1fr;gap:6px 12px;margin-top:20px}.ip-service-scope li{font-size:9px}.ip-service-scope li:before{margin-right:5px}.ip-service-process{padding:52px 0 60px}.ip-service-process h2{font-size:42px}.ip-process-grid{grid-template-columns:1fr 1fr;gap:30px 25px}.ip-process-grid h3{margin-top:25px;font-size:24px}.ip-process-grid p{font-size:11px}.ip-featured-work{grid-template-columns:1fr;gap:35px}.ip-featured-project:nth-child(2){padding-top:0}.ip-featured-visual,.ip-featured-project:nth-child(2) .ip-featured-visual{height:260px}.ip-featured-caption{padding-top:20px}.ip-featured-caption h2{font-size:32px}.ip-featured-caption>p{font-size:10px}.ip-featured-caption>.ip-kicker{margin-bottom:14px}.ip-index-heading{padding-top:55px;display:block;margin-bottom:25px}.ip-index-heading h2{font-size:35px}.ip-index-heading p{font-size:11px;margin-top:13px}.ip-filter-bar{display:block;margin-bottom:20px}.ip-project-count{display:block;margin-top:14px;font-size:8px}.ip-filters{gap:0}.ip-filters button{font-size:9px;line-height:1.7;padding:11px 8px 11px 0;margin-right:12px}.ip-filters button span{font-size:7px;margin-left:5px}.ip-project-row{grid-template-columns:18px minmax(0,1fr) 18px;gap:14px;padding:26px 0}.ip-index-number{font-size:8px}.ip-project-row-main{grid-column:2;grid-row:1}.ip-project-row h2{font-size:24px;line-height:1.17}.ip-project-row .ip-kicker{font-size:7px;line-height:1.8;margin-bottom:10px}.ip-project-row-client{grid-column:2;grid-row:2}.ip-project-row-oem{grid-column:2;grid-row:3}.ip-project-row-client>span,.ip-project-row-oem>span{display:inline;font-size:7px;margin-right:9px}.ip-project-row-client>p,.ip-project-row-oem>p{display:inline;font-size:10px}.ip-project-row-arrow{grid-column:3;grid-row:1}.ip-company-intro h2{font-size:43px}.ip-company-intro>div>.ip-large-copy{font-size:19px}.ip-company-intro>div>p{font-size:13px}.ip-company-intro .ip-button{font-size:11px}.ip-history{grid-template-columns:1fr;gap:35px;margin-top:45px;padding:35px 0}.ip-history-item+div{padding-top:30px;border-top:1px solid var(--ip-line)}.ip-history-item>strong{font-size:85px;margin:18px 0}.ip-history-item>p{font-size:12px}.ip-history-item>.ip-text-link{margin-top:20px}.ip-stats{grid-template-columns:1fr 1fr;margin-top:30px}.ip-stats strong{font-size:43px}.ip-stats span{font-size:9px}.ip-company-links{grid-template-columns:1fr;margin-top:40px}.ip-company-links .ip-kicker{font-size:8px}.ip-company-links h3{font-size:29px}.ip-company-links p{font-size:12px}.ip-certifications{padding:35px 0;gap:27px}.ip-certification-items{gap:15px}.ip-certification-items figure{flex:1}.ip-certification-items img{height:72px}.ip-certification-items figcaption{font-size:7px}.ip-partner-grid{grid-template-columns:1fr 1fr}.ip-partner-tile{min-height:160px;padding:35px 17px 20px}.ip-partner-tile img{width:110px;height:55px}.ip-partner-tile span{font-size:8px}.ip-leader-list{grid-template-columns:1fr 1fr;gap:32px 18px}.ip-leader-heading{padding-top:18px}.ip-leader-heading .ip-kicker{font-size:6px;line-height:1.9;min-height:35px}.ip-leader h2{font-size:23px;margin:10px 0 18px;line-height:1.13}.ip-leader-photo{aspect-ratio:3/3.6}.ip-leader-photo>span{font-size:7px;padding:7px 10px}.ip-leader-toggle{font-size:8px;padding:10px 0;gap:7px}.ip-leader-toggle b{font-size:18px}.ip-leader[open]{display:block;padding-bottom:30px}.ip-leader[open] summary{display:grid;grid-template-columns:140px 1fr;gap:23px;align-items:end}.ip-leader[open] .ip-leader-heading{padding-top:0}.ip-leader[open] h2{font-size:27px}.ip-leader[open] .ip-leader-heading .ip-kicker{font-size:7px;min-height:0}.ip-leader[open] .ip-leader-photo{aspect-ratio:3/3.7}.ip-leader[open] .ip-leader-expanded{padding-top:26px}.ip-leader-bio p{font-size:13px}.ip-career-layout{gap:35px}.ip-career-layout h2{font-size:39px}.ip-career-layout .ip-large-copy{font-size:16px}.ip-career-panel{padding:27px}.ip-career-panel h3{font-size:30px}.ip-career-panel p{font-size:13px}.ip-contact-layout{gap:38px}.ip-contact-phone{font-size:31px}.ip-contact-email{font-size:14px;gap:18px}.ip-contact-info address{font-size:13px}.ip-contact-info>.ip-button{font-size:10px}.ip-contact-rule{margin:30px 0}.ip-support-note{margin-top:32px}.ip-enquiry-form{padding:27px 22px}.ip-enquiry-form h2{font-size:27px;margin-bottom:27px}.ip-form-row{grid-template-columns:1fr;gap:0}.ip-enquiry-form input,.ip-enquiry-form select,.ip-enquiry-form textarea{font-size:16px}.ip-enquiry-form label{font-size:10px}.ip-office-strip{padding:43px 0}.ip-office-strip .ip-wrap{grid-template-columns:1fr;gap:24px}.ip-office-strip .ip-text-link{grid-column:1;font-size:10px}.ip-office-strip h2{font-size:37px}.ip-office-filters button{font-size:8px;margin-right:13px;padding-right:0}.ip-office-card,.ip-office-card[data-office-type="Head office"]{grid-template-columns:1fr;gap:20px;padding:27px 0}.ip-office-card[data-office-type="Head office"]{padding:28px 22px}.ip-office-title{grid-row:1}.ip-office-person{grid-column:1;font-size:11px}.ip-office-card h2{font-size:31px}.ip-office-card address{font-size:12px}.ip-office-card .ip-kicker{font-size:7px}.ip-office-card[data-office-type="Service point"]{grid-template-columns:1fr 1fr;gap:15px}.ip-office-card[data-office-type="Service point"] .ip-office-person{grid-column:2}.ip-office-card[data-office-type="Service point"] .ip-office-address{display:none}.ip-associate-grid{grid-template-columns:1fr;gap:25px}.ip-associate-intro{font-size:18px}.ip-associate-intro p+p{font-size:13px}.ip-case-meta{grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.ip-case-meta>div:last-child{grid-column:1/-1}.ip-case-meta span{font-size:7px}.ip-case-meta strong{font-size:10px}.ip-detail-page .ip-hero{padding:26px 0 42px}.ip-detail-page .ip-hero h1{font-size:39px}.ip-detail-page .ip-hero-summary{font-size:13px}.ip-detail-page .ip-breadcrumb{font-size:7px;line-height:1.9}.ip-prose{font-size:13px;line-height:1.9}.ip-prose h2{font-size:28px;line-height:1.17;padding-top:22px;margin-top:42px}.ip-prose h3{font-size:23px}.ip-prose img{padding:12px;max-height:300px}.ip-prose .ip-inline-logo-grid{grid-template-columns:1fr 1fr}.ip-prose .ip-inline-logo-grid>img{height:100px;padding:20px}.ip-prose .ip-split-lists{grid-template-columns:1fr;gap:0}.ip-detail-stats{grid-template-columns:1fr 1fr}.ip-detail-stats strong{font-size:35px}.ip-related{padding:45px 0 55px}.ip-section-heading{align-items:start}.ip-section-heading h2{font-size:33px}.ip-section-heading>.ip-text-link{font-size:10px;margin-top:30px;white-space:nowrap;gap:10px}.ip-related-grid{grid-template-columns:1fr;gap:0}.ip-related-grid>a{min-height:125px;padding-top:22px}.ip-related-grid h3{font-size:27px;max-width:300px;margin-top:16px}.ip-callout-inner{display:block}.ip-callout h2{font-size:47px}.ip-callout .ip-kicker{font-size:8px}.ip-callout-actions{margin-top:30px;gap:17px}.ip-callout-actions>.ip-text-link{font-size:10px}.ip-missing-links{gap:35px 20px}.ip-missing-links a{font-size:17px}}
@media(prefers-reduced-motion:reduce){.ip-page *{scroll-behavior:auto!important;transition:none!important}}

/* Shared content-specific artwork is a flow figure, including its own clear caption band. */
.ip-catalog-visual .art-frame,.ip-featured-visual .art-frame{width:100%;height:100%;margin:0}.ip-featured-visual>span{top:18px;bottom:auto}.ip-catalog-visual{height:385px}.ip-featured-visual{height:355px}.ip-featured-project:nth-child(2) .ip-featured-visual{height:310px}.ip-contact-page .ip-hero{padding-bottom:50px}.ip-contact-page .ip-hero h1{font-size:clamp(45px,5.2vw,74px)}.ip-contact-page .ip-hero-summary{max-width:370px}@media(max-width:1120px){.ip-catalog-visual{height:340px}.ip-featured-visual{height:330px}.ip-featured-project:nth-child(2) .ip-featured-visual{height:290px}}@media(max-width:800px){.ip-catalog-visual{height:320px}.ip-featured-visual{height:280px}.ip-featured-project:nth-child(2) .ip-featured-visual{height:250px}}@media(max-width:560px){.ip-catalog-visual{height:310px}.ip-featured-visual,.ip-featured-project:nth-child(2) .ip-featured-visual{height:290px}.ip-contact-page .ip-hero h1{font-size:43px}.ip-contact-page .ip-hero{padding-bottom:40px}}
