@font-face{font-family:KareInter;src:url('../fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:KareInter;src:url('../fonts/inter-latin-ext-400-normal.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF,U+20A0-20AB,U+20AD-20C0,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:KareInter;src:url('../fonts/inter-latin-800-normal.woff2') format('woff2');font-weight:700 800;font-display:swap}
@font-face{font-family:KareInter;src:url('../fonts/inter-latin-ext-800-normal.woff2') format('woff2');font-weight:700 800;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF,U+20A0-20AB,U+20AD-20C0,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:KareInter;src:url('../fonts/inter-latin-900-normal.woff2') format('woff2');font-weight:900;font-display:swap}
@font-face{font-family:KareInter;src:url('../fonts/inter-latin-ext-900-normal.woff2') format('woff2');font-weight:900;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF,U+20A0-20AB,U+20AD-20C0,U+2C60-2C7F,U+A720-A7FF}
.reference-layout{--ivory:#fdfbf7;--navy:#061c50;--coral:#ff293b;--yellow:#ffda43;--line:#ccd5e0;font-family:KareInter,Arial,sans-serif;font-size:17px;line-height:1.35;background:var(--ivory)}
.reference-layout .container{width:min(calc(100% - 144px),1300px)}
.reference-layout h1,.reference-layout h2{font-weight:900;letter-spacing:-.05em}
.reference-layout h2{font-size:40px;line-height:1.05;margin-bottom:12px}
.reference-layout h3{font-weight:800;font-size:20px;margin-bottom:8px}
.reference-layout .section{padding-block:28px}
.reference-layout .site-header{background:transparent}
.reference-layout .site-header::after{display:none}
.reference-layout .header-inner{min-height:92px;gap:24px}
.reference-layout .brand-logo{position:relative;overflow:hidden;width:120px;height:78px;flex:0 0 120px}
.reference-layout .brand-logo img{position:absolute;max-width:none;width:188px;height:188px;left:-33px;top:-55px;object-fit:contain}
.reference-layout .nav-list{gap:36px}
.reference-layout .nav-list a{font-size:14px;line-height:1.2}
.reference-layout .nav-list .current-menu-item a{text-decoration-thickness:2px;text-underline-offset:8px}
.reference-layout .languages{font-size:14px;font-weight:400;gap:5px}
.reference-layout .languages [aria-current]{font-weight:400}
.reference-layout .eyebrow{font-size:11px;letter-spacing:.3em;margin-bottom:12px}
.reference-layout .hero{margin-top:-92px;padding-top:92px;min-height:515px}
.reference-layout .hero-inner{min-height:423px;align-items:flex-start;padding-block:26px 50px}
.reference-layout .hero-copy{width:36%;max-width:480px}
.reference-layout .hero-copy h1{font-size:92px;line-height:.91;letter-spacing:-.065em;margin-bottom:20px;font-weight:900}
.reference-layout .hero-copy p:not(.eyebrow){font-size:18px;line-height:1.27;max-width:335px;margin-bottom:16px}
.reference-layout .hero-image{width:74%;object-position:50% 75%}
.reference-layout .hero-mask{inset:0;width:100%;height:100%;border-radius:0;background:var(--ivory);clip-path:url(#kare-hero-copy-curve)}
.curve-definitions{position:absolute;pointer-events:none;overflow:hidden}
.reference-layout .hero::after{content:"";position:absolute;left:-5%;bottom:-90px;width:112%;height:115px;background:var(--ivory);border-radius:50%;transform:rotate(-1deg);z-index:-1;pointer-events:none}
.reference-layout .actions{gap:30px}
.reference-layout .button{min-height:44px;padding:12px 24px;font-size:16px;font-weight:400;border-radius:28px;background:linear-gradient(110deg,#ff343c,#ff2337);border-color:#ff293b}
.reference-layout .text-link{font-size:15px;font-weight:400;text-decoration-thickness:1px}
.reference-layout .home-intro{overflow:visible;padding-block:8px 18px;min-height:175px}
.reference-layout .home-intro::after{display:none}
.reference-layout .home-intro .container{position:relative;z-index:2}
.reference-layout .home-intro .eyebrow{font-size:10px;margin-bottom:8px}
.reference-layout .home-intro h2{max-width:930px;font-size:43px;margin-bottom:8px;line-height:1.01}
.reference-layout .home-intro p:not(.eyebrow){max-width:860px;font-size:17px;line-height:1.2;margin-bottom:6px}
.reference-layout .process{overflow:visible;isolation:isolate;background:url('../images/warm-grain.svg'),linear-gradient(115deg,#ffe25e 0%,#ffdc46 48%,#ffda50 100%);padding-block:10px 16px;margin-bottom:26px;border-radius:0}
.reference-layout .process::before{content:"";position:absolute;top:-175px;left:0;width:100%;height:176px;background:url('../images/flow-top.svg') center/100% 100% no-repeat;pointer-events:none;z-index:-1}
.reference-layout .process::after{content:"";position:absolute;bottom:-26px;left:0;width:100%;height:27px;background:url('../images/flow-bottom.svg') center/100% 100% no-repeat;pointer-events:none;z-index:-1}
.reference-layout .process h2{font-size:43px;margin-bottom:14px}
.reference-layout.home .process-intro{display:none}
.reference-layout .process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding-right:110px}
.reference-layout .process-step{display:flex;gap:18px;position:relative}
.reference-layout .process-step+.process-step{border-left:1px solid #ccaa4266;padding-left:22px}
.reference-layout .step-number{font-size:39px;line-height:1;font-weight:800;letter-spacing:-.06em;flex:0 0 52px}
.reference-layout .step-number::after{content:"";display:block;width:40px;height:1px;background:#438477;margin-top:12px}
.reference-layout .process-step h3{font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.2;margin-bottom:8px}
.reference-layout .process-step p{font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.35;margin:0}
.reference-layout .process-drop{right:8px;bottom:0;width:135px;height:220px;z-index:2}
.reference-layout .insights-band{padding-block:7px 10px;min-height:0}
.reference-layout .insights-band h2{margin-bottom:8px}
.reference-layout .insight-links{gap:20px}
.reference-layout .insight-links a{border-color:#6781a6;border-radius:7px;background:#fffdfb;font-size:22px;line-height:1.02;font-weight:800;min-height:92px;padding:18px 30px;letter-spacing:-.04em}
.reference-layout .brand-section{padding-block:6px 14px;border-top:1px solid #e8e5df}
.reference-layout .brand-section h2{font-size:32px}
.reference-layout .section-toolbar{margin-bottom:8px}
.reference-layout .section-toolbar>p{font-size:13px;color:var(--navy)}
.reference-layout .brand-track{grid-template-rows:repeat(2,44px);gap:8px 0;grid-auto-columns:calc(100% / 6);scrollbar-width:none;padding:0 0 8px}
.reference-layout .brand-cell{padding:2px 16px;background:transparent;border-right:1px solid #d8dee8}
.reference-layout .brand-cell img{max-height:34px;max-width:140px}
.reference-layout .brand-dark{background:#16466c}
.reference-layout .brand-carousel{grid-template-columns:20px minmax(0,1fr) 20px;gap:15px}
.reference-layout .brand-carousel button{font-size:42px;min-width:20px}
.reference-layout .site-footer{background:var(--ivory)}
.reference-layout .footer-inner{padding-block:8px;gap:35px}
.reference-layout .site-footer .brand-logo{width:100px;height:64px;flex-basis:100px;transform:none;margin:0}
.reference-layout .site-footer .brand-logo img{width:148px;height:148px;left:-26px;top:-43px}
.reference-layout .footer-contacts{font-size:14px;gap:20px}
.contact-icon{display:none}
.reference-layout .contact-icon{display:block;width:25px;height:25px;flex:0 0 25px;fill:none;stroke:var(--navy);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.reference-layout .phone-icon{stroke:#159251}
.reference-layout .footer-contacts>a,.reference-layout .footer-contacts address{display:flex;align-items:center;gap:15px;border-left:1px solid #b9c7dd;padding-left:25px;font-size:14px;line-height:1.25}
.reference-layout.home .site-footer small{display:none}
.reference-layout .site-footer small{font-size:10px;white-space:normal;max-width:150px}
.reference-about .hero{min-height:535px}
.reference-about .hero-inner{min-height:443px;padding-block:20px 50px}
.reference-about .hero-copy{width:35%;max-width:450px}
.reference-about .hero-copy h1{font-size:53px;line-height:1;letter-spacing:-.05em;margin-bottom:18px}
.reference-about .hero-copy p:not(.eyebrow){font-size:17px;max-width:365px}
.reference-about .hero-mask{clip-path:url(#kare-about-copy-curve)}
.reference-about .hero-image{width:83%;object-position:57% 50%}
.reference-about .hero::after{height:85px;bottom:-70px}
.reference-about .about-company{padding-block:0 16px}
.reference-about .about-copy p{font-size:17px;line-height:1.4;margin-bottom:12px}
.reference-about>.section.container{position:relative;z-index:2}
.reference-about .portfolio-grid{gap:30px}
.reference-about .portfolio-grid h3{font-size:22px;margin-bottom:10px}
.reference-about .portfolio-grid p{font-size:17px;line-height:1.35;max-width:340px;margin-bottom:10px}
.reference-about .process{padding-block:22px 26px;margin-top:32px;margin-bottom:24px}
.reference-about .process::before{top:-34px;height:35px;background:url('../images/about-flow-top.svg') center/100% 100% no-repeat}
.reference-about .process::after{bottom:-26px;height:27px;background:url('../images/about-flow-bottom.svg') center/100% 100% no-repeat}
.reference-about .process-intro{font-size:16px;line-height:1.4;margin-bottom:16px;max-width:1150px}
.reference-about .process-grid{padding-right:0}
.reference-about .process-drop{display:none}
.reference-about .wide-copy{max-width:1050px;font-size:17px;margin:0}
.reference-about .membership-section{border:0;padding-block:20px 24px}
.reference-about .memberships{max-width:none;gap:45px}
.reference-about .memberships a{min-height:110px}
.reference-about .memberships img{max-height:90px}
.reference-about .memberships a:nth-child(4) img{max-height:100px}
.reference-about .about-contact{background:linear-gradient(100deg,#f0f5fa,#eaf1f7);position:relative;padding-block:25px 28px}
.reference-about .about-contact::before{content:"";position:absolute;top:-12px;left:0;width:100%;height:15px;background:#fdfbf7;border-radius:0 0 50% 50%}
.reference-about .about-contact h2{font-size:32px;margin-bottom:20px}
.reference-about .contact-inline{font-size:17px;grid-template-columns:1fr 1fr 1.3fr}
@media(min-width:801px) and (max-width:1190px){.reference-layout .container{width:calc(100% - 96px)}.reference-layout .hero-copy h1{font-size:76px}.reference-about .hero-copy h1{font-size:44px}.reference-layout .process-grid{padding-right:100px;gap:12px}.reference-layout .process-step{gap:12px}.reference-layout .process-step+.process-step{padding-left:12px}.reference-layout .step-number{font-size:34px;flex-basis:40px}.reference-layout .footer-contacts>a,.reference-layout .footer-contacts address{font-size:12px;padding-left:15px;gap:8px}.reference-layout .footer-inner{gap:18px}}
@media(max-width:800px){
 .reference-layout{font-size:15px}
 .reference-layout .container{width:calc(100% - 40px)}
 .reference-layout .header-inner{min-height:67px;gap:15px}
 .reference-layout .brand-logo{width:102px;height:63px;flex-basis:102px}
 .reference-layout .brand-logo img{width:155px;height:155px;left:-27px;top:-45px}
 .reference-layout .site-header{background:#fdfbf7}
 .reference-layout .languages{font-size:13px}
 .reference-layout .menu-toggle{font-size:0;padding:8px 0;min-width:28px}
 .reference-layout .menu-toggle span{font-size:24px}
 .reference-layout .eyebrow{font-size:8px;letter-spacing:.2em;margin-bottom:8px}
 .reference-layout .hero{display:block;margin-top:0;padding-top:0;min-height:340px;overflow:hidden}
 .reference-layout .hero-inner{min-height:340px;padding-block:16px 128px;position:relative;z-index:2}
 .reference-layout .hero-copy{width:100%;max-width:none}
 .reference-layout .hero-copy h1{font-size:49px;line-height:.94;max-width:330px;margin-bottom:12px;letter-spacing:-.055em}
 .reference-layout .hero-copy p:not(.eyebrow){font-size:14px;line-height:1.25;max-width:295px;margin-bottom:12px}
 .reference-layout .hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:63% 60%;z-index:-2}
 .reference-layout .hero-mask{display:block;clip-path:none;width:100%;height:100%;background:linear-gradient(to bottom,#fdfbf7 0%,#fdfbf7f5 26%,#fdfbf7e8 43%,#fdfbf7a6 57%,#fdfbf700 77%);z-index:-1}
 .reference-layout .hero::after{bottom:-60px;height:70px;transform:rotate(-1deg)}
 .reference-layout .hero-copy .actions{display:block}
 .reference-layout .hero-copy .actions .text-link{display:block;margin-top:8px;width:max-content}
 .reference-layout .button{font-size:13px;padding:10px 17px;min-height:34px}
 .reference-layout .text-link{font-size:13px}
 .reference-layout .home-intro{padding-block:14px 28px;min-height:0}
 .reference-layout .home-intro .eyebrow{font-size:7px}
 .reference-layout .home-intro h2{font-size:25px;line-height:1.04}
 .reference-layout .home-intro p:not(.eyebrow){font-size:13px;line-height:1.25;margin-bottom:8px}
 .reference-layout h2{font-size:25px}
 .reference-layout .process{padding-block:14px 15px;margin-bottom:20px}
 .reference-layout .process::before{top:-40px;height:41px}
 .reference-layout .process::after{bottom:-20px;height:21px}
 .reference-layout .process h2{font-size:25px;margin-bottom:16px}
 .reference-layout .process-grid{grid-template-columns:1fr;gap:17px;padding-right:5px}
 .reference-layout .process-step{display:flex;gap:14px;max-width:100%}
 .reference-layout .process-step+.process-step{border-left:0;padding-left:0}
 .reference-layout .step-number{font-size:32px;flex-basis:44px}
 .reference-layout .step-number::after{width:30px;margin-top:10px}
 .reference-layout .process-step h3{font-size:14px;line-height:1.1;margin-bottom:5px}
 .reference-layout .process-step p{font-size:13px;line-height:1.25;max-width:265px}
 .reference-layout .process-drop{width:64px;height:100px;right:1px;bottom:-10px}
 .reference-layout .process-step:last-child p{padding-right:42px}
 .reference-layout .home-mobile-memberships{padding-block:5px 12px}
 .reference-layout .home-mobile-memberships .memberships{gap:12px}
 .reference-layout .home-mobile-memberships .memberships a{min-height:48px}
 .reference-layout .home-mobile-memberships .memberships img{max-height:40px}
 .reference-layout .home-mobile-memberships .memberships a:nth-child(4) img{max-height:44px}
 .reference-layout .insights-band{padding-block:10px 14px}
 .reference-layout .insight-links{gap:8px}
 .reference-layout .insight-links a{font-size:14px;min-height:43px;padding:10px 13px;letter-spacing:-.025em;font-weight:400;line-height:1.2}
 .reference-layout .brand-section{padding-block:10px 15px}
 .reference-layout .brand-section h2{font-size:23px}
 .reference-layout .brand-section .section-toolbar>p{font-size:10px}
 .reference-layout .brand-track{grid-template-rows:48px;grid-auto-columns:calc(100% / 3);gap:0}
 .reference-layout .brand-cell{padding:5px 8px}
 .reference-layout .brand-cell img{max-width:100%;max-height:30px}
 .reference-layout .brand-carousel{gap:6px;grid-template-columns:14px minmax(0,1fr) 14px}
 .reference-layout .brand-carousel button{font-size:34px;min-width:14px}
 .reference-layout .footer-inner{flex-wrap:nowrap;gap:18px;padding-block:14px;align-items:flex-start}
 .reference-layout .site-footer .brand-logo{width:85px;flex-basis:85px;height:60px}
 .reference-layout .site-footer .brand-logo img{width:133px;height:133px;left:-23px;top:-39px}
 .reference-layout .footer-contacts{gap:8px;font-size:12px}
 .reference-layout .footer-contacts>a,.reference-layout .footer-contacts address{border:0;padding:0;font-size:12px;gap:8px}
 .reference-layout .contact-icon{width:20px;height:20px;flex-basis:20px}
 .reference-layout .site-footer small{display:none}
 .reference-about .hero{min-height:350px}
 .reference-about .hero-inner{min-height:350px;padding-block:20px 120px}
 .reference-about .hero-copy h1{font-size:35px;max-width:310px}
 .reference-about .hero-copy p:not(.eyebrow){font-size:13px;max-width:275px}
 .reference-about .hero-image{object-position:57% 50%}
 .reference-about .about-company{padding-block:18px 5px}
 .reference-about .about-copy p{font-size:15px;line-height:1.45;margin-bottom:12px}
 .reference-about .section{padding-block:22px}
 .reference-about .portfolio-grid{gap:18px}
 .reference-about .portfolio-grid>div+div{padding-top:18px}
 .reference-about .portfolio-grid h3{font-size:20px}
 .reference-about .portfolio-grid p{font-size:15px}
 .reference-about .process{margin-top:18px;padding-block:18px 22px}
 .reference-about .process-intro{font-size:14px;margin-bottom:20px}
 .reference-about .process-grid{padding-right:0}
 .reference-about .process-step:last-child p{padding-right:0}
 .reference-about .wide-copy{font-size:15px}
 .reference-about .memberships{gap:14px}
 .reference-about .memberships a{min-height:65px}
 .reference-about .memberships img{max-height:48px}
 .reference-about .memberships a:nth-child(4) img{max-height:58px}
 .reference-about .about-contact h2{font-size:25px}
 .reference-about .contact-inline{grid-template-columns:1fr;gap:14px;font-size:15px}
}
