/* Composition aligned with the supplied 900 × 1600 reference.
   Keep responsive behavior and motion in home.css; this file owns block proportions. */
.container{width:89%;max-width:1280px}.section-space{margin-top:32px}
.site-header{top:0}.nav-shell{width:85%;max-width:1220px;min-height:clamp(52px,5.1vw,74px);padding:0 14px 0 28px;border-radius:0 0 15px 15px}.brand{height:66px;width:110px}.nav-shell nav{gap:clamp(10px,1.5vw,24px);font-size:clamp(9px,.85vw,12px)}.nav-shell .nav-contact{min-height:44px;padding:10px 20px;gap:16px;margin-left:35px}.nav-contact span{font-size:18px}
.hero,.hero-inner{min-height:clamp(355px,39.55vw,570px)}.hero-inner{padding-top:90px;padding-bottom:46px;align-items:center}.hero-copy{max-width:650px}.jmp-lift .hero h1{font-size:clamp(40px,4.45vw,64px);line-height:.98}.hero-description{font-size:clamp(13px,1.4vw,19px);line-height:1.38;max-width:540px;margin-top:17px!important}.hero-actions{margin-top:22px;gap:16px}.hero-actions .button{min-height:46px;padding:12px 25px;font-size:13px}.hero-note{font-size:29px;margin-right:0!important;margin-bottom:18px!important;line-height:1.05}.hero-note span{font-size:27px}.hero-shade{background:linear-gradient(90deg,#07100ed9,#0a15138c 43%,#0a151300 78%),linear-gradient(0deg,#07131030,transparent 50%)}
.benefits{margin-top:-48px;gap:15px}.benefit{padding:32px 28px;min-height:184px;gap:20px;border-radius:12px}.icon-circle{width:66px;height:66px}.icon-circle svg{width:47px;height:47px}.jmp-lift .benefit h2{font-size:25px;margin:4px 0 10px}.benefit p{font-size:14px;line-height:1.45}
.about{grid-template-columns:1.03fr 1fr;gap:60px;align-items:center;margin-top:32px}.about .eyebrow{text-transform:none;font-size:15px;letter-spacing:.01em}.about h2{font-size:49px;margin-top:12px!important}.about-copy>p:not(.eyebrow){font-size:18px;line-height:1.36;max-width:100%;margin-top:16px}.about .button{margin-top:22px;min-height:49px;font-size:13px;padding:12px 26px}.about-visual>img{aspect-ratio:1.78;border-radius:15px;object-position:center 38%}
.services{width:94%;max-width:1360px;margin-top:30px}.services-banner{min-height:280px;padding:38px 55px 78px;border-radius:18px}.services-banner:before{background:linear-gradient(90deg,#111916ef,#111916a6),url('images/advice.webp') center 40%/cover}.services-banner h2{font-size:clamp(30px,3.3vw,47px);margin-top:12px!important;letter-spacing:-.04em;line-height:1.05}.services-banner .eyebrow{font-size:13px;letter-spacing:.04em;color:var(--red)}.services-banner>p:last-child{font-size:17px;line-height:1.35;max-width:830px;margin-top:15px}.service-grid{width:94%;margin:-58px auto 0;gap:15px}.service-image img{aspect-ratio:2.47}.service-body{padding:16px 30px 18px}.service-body h3{font-size:27px;margin-top:0!important;line-height:1.06}.service-body p{font-size:14px;line-height:1.35;min-height:76px;margin-top:11px}.service-body .service-more{font-size:12px;min-height:35px;padding:7px 20px;gap:20px;margin-top:9px;border-radius:7px}
.consultation{grid-template-columns:.98fr 1.08fr;margin-top:30px;border:0;background:linear-gradient(120deg,#f9f9f8,#f3f4f3)}.consultation-copy{padding:32px 55px}.consultation h2{font-size:43px;margin-top:14px!important;line-height:1.04}.consultation-copy .eyebrow{font-size:11px}.consultation-copy>p:not(.eyebrow){font-size:15px;line-height:1.35;max-width:450px;margin-top:18px}.consultation-form{border-radius:14px;padding:27px 38px}.form-grid{gap:12px 18px}.consultation-form .field-label{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.consultation-form input{margin:0;min-height:43px;padding:10px 16px;font-size:13px;box-shadow:0 1px 5px #00000005}.consultation-form .button{margin-top:12px;min-height:42px;padding:8px 20px;font-size:13px}.form-note{margin-top:10px!important;font-size:10px;text-align:center}.preview-form-note{background:none;border:0;padding:0;margin:9px 0 0!important;text-align:center;font-size:10px;color:#767e79;order:3}.preview-contact-form{display:flex;flex-direction:column}.preview-contact-form .form-grid{order:0}.preview-contact-form .button{order:1}.preview-contact-form .form-note{order:2}.preview-contact-form .form-status{order:4}
.stats{margin-top:28px;min-height:70px}.stat-icon{width:43px;height:43px;display:block}.stat-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.stats>div{gap:20px}.stats strong{font-size:35px}.stats p>span{font-size:12px}
.pricing{width:94%;max-width:1360px;margin:30px auto 0;padding:28px 0 24px;border-radius:18px}.pricing-layout{width:93%;grid-template-columns:1.04fr 1fr 1fr;gap:20px}.pricing-intro{padding:0 35px 0 0}.pricing-intro .eyebrow{font-size:12px;letter-spacing:.02em}.pricing-intro h2{font-size:39px;margin-top:10px!important;line-height:1.03}.pricing-intro>p:not(.eyebrow){font-size:14px;line-height:1.35;margin-top:14px;max-width:330px}.pricing-intro .text-link{margin-top:15px;color:white;background:var(--ink);border-radius:6px;padding:8px 18px;font-size:12px;gap:18px}.pricing-intro .text-link span{color:white;font-size:18px}.price-card{padding:23px 28px 20px;box-shadow:0 6px 22px #17201b05;border:1px solid #eeeded}.price-featured{border-top:1px solid #eeeded}.price-card h3{font-size:27px;margin-top:0!important}.price-description{font-size:12px;min-height:0;margin-top:8px!important}.price-card ul{font-size:12px;margin:14px 0 16px}.price-card li{margin-top:7px}.price{font-size:29px}.price>span{font-size:12px}.price-card .button{min-height:33px;font-size:10px;margin-top:13px;padding:6px 10px}
.site-footer{margin-top:22px;border-radius:30px 30px 0 0;padding:15px 0 12px}.footer-main{grid-template-columns:110px 1.3fr 1fr 1fr;gap:28px}.brand-light img{filter:none}.footer-main>p{font-size:10px}.footer-main>div>a{font-size:11px;line-height:1.6}.footer-main address{font-size:10px}.footer-main .brand{height:55px}.footer-bottom{margin-top:12px;padding-top:10px;font-size:8px}.footer-bottom nav{gap:16px}
@media(min-width:851px) and (max-width:1100px){.nav-shell{padding-left:15px}.nav-shell .nav-contact{margin-left:0;padding:9px 12px;min-height:38px;font-size:10px}.brand{width:90px;height:54px}.brand img{width:90px;height:48px}.hero-inner{padding-top:70px;padding-bottom:35px}.hero-copy{max-width:500px}.hero-actions .button{min-height:36px;padding:9px 18px;font-size:10px}.hero-description{max-width:400px}.hero-note{font-size:23px}.hero-note span{font-size:21px}.benefits{margin-top:-35px;gap:12px}.benefit{padding:23px 20px;min-height:142px;gap:14px}.icon-circle{width:48px;height:48px}.icon-circle svg{width:35px;height:35px}.jmp-lift .benefit h2{font-size:21px}.benefit p{font-size:11px}.about{gap:40px;margin-top:25px}.about h2{font-size:39px}.about .eyebrow{font-size:12px}.about-copy>p:not(.eyebrow){font-size:14px}.about .button{font-size:11px;min-height:38px;padding:9px 20px;margin-top:16px}.services{margin-top:23px}.services-banner{min-height:215px;padding:28px 40px 65px}.services-banner>p:last-child{font-size:13px;max-width:650px}.services-banner .eyebrow{font-size:10px}.service-grid{margin-top:-44px}.service-body{padding:14px 24px}.service-body h3{font-size:21px}.service-body p{font-size:11px;min-height:63px}.service-body .service-more{min-height:29px;font-size:10px;padding:5px 15px}.consultation-copy{padding:25px 35px}.consultation h2{font-size:33px}.consultation-copy>p:not(.eyebrow){font-size:12px}.consultation-form{padding:23px 28px}.consultation-form input{min-height:36px;font-size:11px}.consultation-form .button{min-height:35px;font-size:11px}.form-note,.preview-form-note{font-size:8px}.stats strong{font-size:28px}.stats p>span{font-size:10px}.stat-icon{width:33px;height:33px}.pricing{padding:24px 0}.pricing-intro h2{font-size:31px}.pricing-intro>p:not(.eyebrow){font-size:11px}.pricing-intro .text-link{font-size:10px;padding:7px 12px}.price-card{padding:20px}.price-card h3{font-size:23px}.price-card ul,.price-description{font-size:10px}.price{font-size:25px}.price>span{font-size:10px}}
@media(max-width:850px){.container{width:calc(100% - 40px)}.section-space{margin-top:35px}.site-header{top:10px}.nav-shell{width:calc(100% - 40px);border-radius:12px;min-height:68px;padding:4px 17px}.nav-shell nav{font-size:13px}.nav-shell .nav-contact{margin-left:0}.hero,.hero-inner{min-height:510px}.hero-inner{padding-top:105px;padding-bottom:65px}.jmp-lift .hero h1{font-size:53px}.hero-description{font-size:15px;max-width:450px}.hero-actions .button{font-size:12px;min-height:44px;padding:10px 18px}.benefits{margin-top:-35px;gap:12px}.benefit{flex-direction:row;align-items:flex-start;gap:12px;padding:20px 16px;min-height:0}.icon-circle{width:42px;height:42px}.icon-circle svg{width:32px;height:32px}.jmp-lift .benefit h2{font-size:21px}.benefit p{font-size:11px}.about{gap:30px;margin-top:30px}.about h2{font-size:35px}.about .eyebrow{font-size:11px}.about-copy>p:not(.eyebrow){font-size:13px}.about .button{font-size:11px;min-height:38px;padding:9px 20px;margin-top:16px}.about-visual>img{aspect-ratio:1.35}.services{width:calc(100% - 24px)}.services-banner{padding:28px 28px 70px;min-height:230px}.services-banner h2{font-size:34px}.services-banner>p:last-child{font-size:13px}.services-banner .eyebrow{font-size:10px}.service-grid{width:94%;gap:12px;margin-top:-45px}.service-body{padding:16px}.service-body h3{font-size:23px}.service-body p{font-size:11px;min-height:100px}.service-body .service-more{font-size:10px;min-height:29px;padding:6px 14px}.consultation{grid-template-columns:1fr 1.05fr}.consultation-copy{padding:28px}.consultation h2{font-size:32px}.consultation-copy>p:not(.eyebrow){font-size:13px}.consultation-form{padding:25px 20px}.form-grid{gap:10px}.consultation-form input{font-size:12px}.consultation-form .button{font-size:11px}.stats>div{gap:12px}.stats strong{font-size:27px}.stats p>span{font-size:10px}.stat-icon{width:30px;height:30px}.pricing{width:calc(100% - 24px)}.pricing-layout{grid-template-columns:1fr 1fr}.pricing-intro{grid-column:1/-1;padding:0 0 8px}.pricing-intro h2{font-size:34px}.pricing-intro h2 br{display:none}.pricing-intro>p:not(.eyebrow){font-size:13px;max-width:550px}.footer-main{grid-template-columns:100px 1fr;gap:18px 30px}.footer-bottom{gap:10px}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.nav-shell{width:calc(100% - 28px);min-height:64px}.brand{height:54px}.brand img{height:47px;width:90px}.hero,.hero-inner{min-height:510px}.hero-inner{padding-top:117px;padding-bottom:73px}.jmp-lift .hero h1{font-size:clamp(35px,9.6vw,50px);line-height:1.02}.hero-description{font-size:14px;line-height:1.45;margin-top:18px!important;max-width:335px}.hero-actions{gap:10px;margin-top:22px}.hero-actions .button{font-size:11px;min-height:43px;padding:10px 13px;gap:10px}.hero-note{display:none}.benefits{grid-template-columns:1fr;margin-top:-29px;gap:10px}.benefit{padding:19px 20px;gap:17px;align-items:center;min-height:0}.icon-circle{width:50px;height:50px}.icon-circle svg{width:36px;height:36px}.jmp-lift .benefit h2{font-size:23px;margin:0 0 7px}.benefit p{font-size:12px;line-height:1.45}.about{grid-template-columns:1fr;gap:22px;margin-top:28px}.about h2{font-size:36px}.about .eyebrow{font-size:11px}.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.45;margin-top:14px}.about-visual>img{aspect-ratio:1.78}.about .button{margin-top:18px;font-size:12px;min-height:42px}.services{width:calc(100% - 20px);margin-top:28px}.services-banner{padding:28px 22px 65px;min-height:0}.services-banner h2{font-size:32px;line-height:1.06}.services-banner>p:last-child{font-size:13px;line-height:1.4}.service-grid{grid-template-columns:1fr;width:calc(100% - 24px);margin-top:-37px;gap:16px}.service-image img{aspect-ratio:2.47}.service-body{padding:18px 22px}.service-body h3{font-size:27px}.service-body p{font-size:13px;min-height:0;line-height:1.45;margin-top:10px}.service-body .service-more{font-size:12px;min-height:34px;padding:7px 19px;margin-top:14px}.consultation{grid-template-columns:1fr;margin-top:28px}.consultation-copy{padding:27px 24px 23px}.consultation h2{font-size:34px}.consultation h2 br:last-child{display:initial}.consultation-copy>p:not(.eyebrow){font-size:14px;margin-top:15px}.consultation-copy .eyebrow{font-size:10px}.consultation-form{padding:23px}.form-grid{grid-template-columns:1fr;gap:12px}.consultation-form input{font-size:16px;min-height:46px}.consultation-form .button{min-height:45px;font-size:12px;margin-top:14px}.form-note{font-size:10px}.preview-form-note{font-size:10px}.stats{margin-top:25px;gap:22px 0;grid-template-columns:1fr 1fr}.stats>div{padding:0 10px 0 15px;gap:14px}.stats strong{font-size:30px}.stats p>span{font-size:10px}.stat-icon{width:34px;height:34px}.pricing{width:calc(100% - 20px);margin-top:28px;padding:26px 0}.pricing-layout{width:calc(100% - 28px);grid-template-columns:1fr;gap:15px}.pricing-intro{padding:0 8px 10px}.pricing-intro h2{font-size:35px}.pricing-intro>p:not(.eyebrow){font-size:14px}.price-card{padding:25px}.price-card h3{font-size:29px}.price-description,.price-card ul{font-size:13px}.price{font-size:32px}.price>span{font-size:12px}.price-card .button{min-height:40px;font-size:11px}.site-footer{margin-top:22px;padding:25px 0 16px;border-radius:24px 24px 0 0}.footer-main{grid-template-columns:1fr;gap:17px}.footer-main>p,.footer-main address{font-size:12px}.footer-main>div>a{font-size:13px}.footer-bottom{margin-top:18px;padding-top:16px;font-size:10px;gap:14px}}

/* Reference places hero copy inside the navigation edges, and keeps the footer horizontal. */
/* Shared rows align images, variable-length titles, copy and buttons across cards. */
.service-card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}
.service-body{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0;align-items:start}
.service-body p{min-height:0}
.service-body .service-more{align-self:end;justify-self:start;margin-top:14px}
@media(min-width:851px){.hero-inner{width:79%;max-width:1140px}.about{width:86%;max-width:1240px}}
/* Reserve room for the overlapping benefit cards below the hero buttons. */
@media(min-width:851px){.hero-inner{padding-bottom:80px}}
.footer-main{grid-template-columns:110px 240px 1fr auto;gap:24px}.footer-navigation{display:flex;justify-content:center;gap:24px;font-size:10px}.footer-social{display:flex;gap:18px;font-size:18px;font-weight:700}.footer-main .footer-social a{font-size:17px}.footer-contact{display:flex;justify-content:center;gap:25px;font-size:9px;margin-top:5px;color:#b0b9b3}.footer-contact address{font-style:normal}.footer-bottom{margin-top:8px;padding-top:8px}
@media(max-width:1100px){.footer-main{grid-template-columns:95px 190px 1fr auto;gap:16px}.footer-navigation{gap:14px;font-size:9px}}
@media(max-width:850px){.footer-main{grid-template-columns:100px 1fr auto;gap:18px}.footer-main>p{font-size:10px}.footer-navigation{grid-column:1/-1;grid-row:2;justify-content:flex-start;font-size:11px;gap:24px}.footer-contact{justify-content:flex-start;flex-wrap:wrap;gap:6px 20px;font-size:10px;margin-top:15px}}
@media(max-width:600px){.footer-main{grid-template-columns:100px 1fr;gap:15px}.footer-social{grid-column:1/-1;grid-row:3}.footer-navigation{flex-wrap:wrap;gap:10px 20px;font-size:12px}.footer-main>p{font-size:11px}.footer-contact{flex-direction:column;gap:6px;font-size:12px;margin-top:20px}.footer-bottom{margin-top:18px;padding-top:14px}}

/* Legal partner and a lightweight, horizontally scrollable partner gallery. */
.site-footer{padding-top:0;overflow:hidden}.footer-partnerships{background:#f5f7f4;color:var(--ink);padding:34px 0;margin-bottom:25px}.footer-partnerships-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:45px;align-items:center}.footer-partnerships h2{font-size:27px;line-height:1.2;letter-spacing:-.025em}.footer-lawyer .eyebrow{font-size:10px;margin-bottom:10px}.footer-lawyer>p:not(.eyebrow){font-size:14px;line-height:1.65;color:var(--body);margin-top:13px}.footer-lawyer strong{font-weight:600;color:var(--ink)}.footer-lawyer>a{display:inline-flex;gap:12px;margin-top:16px;font-size:14px;text-decoration:underline;text-underline-offset:4px}.footer-lawyer>a:hover{color:var(--red)}.footer-partners{min-width:0}.footer-partners-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.partner-controls{display:flex;gap:8px}.partner-controls[hidden]{display:none}.partner-controls button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d9dfd9;border-radius:50%;background:white;color:var(--ink);font:20px Arial;cursor:pointer}.partner-controls button:hover:not(:disabled){background:var(--ink);color:white}.partner-controls button:disabled{opacity:.35;cursor:default}.partner-logo-track{display:flex;gap:14px;list-style:none;margin:0;padding:0 0 12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b8c3b9 transparent}.partner-logo{display:flex;align-items:center;justify-content:center;flex:0 0 156px;height:112px;background:white;border:1px solid #e5e9e4;border-radius:10px;overflow:hidden;scroll-snap-align:start}.partner-logo img{display:block;width:148px;height:148px;max-width:none;object-fit:contain}.partner-logo-track:focus-visible,.partner-controls button:focus-visible,.footer-lawyer>a:focus-visible{outline:2px solid var(--red);outline-offset:4px}
@media(max-width:850px){.footer-partnerships-grid{grid-template-columns:250px minmax(0,1fr);gap:25px}.footer-partnerships h2{font-size:24px}.footer-partners-heading{gap:12px}.partner-controls button{width:34px;height:34px}}
@media(max-width:600px){.footer-partnerships{padding:28px 0;margin-bottom:25px}.footer-partnerships-grid{grid-template-columns:minmax(0,1fr);gap:28px}.footer-partnerships h2{font-size:26px}.footer-lawyer>p:not(.eyebrow){font-size:14px}.footer-lawyer>a{margin-top:12px}.footer-partners-heading{margin-bottom:14px}.partner-logo{flex-basis:146px;height:105px}.partner-logo img{width:138px;height:138px}}

/* Keep the same logo and menu available while scrolling on mobile. */
@media(max-width:850px){
  :root{--mobile-header-height:84px;scroll-padding-top:100px}
  body.jmp-lift .site-header{position:sticky;top:0;z-index:100;height:var(--mobile-header-height);padding:8px 0;background:#fff;box-shadow:0 3px 18px #19231f0a}
  body.jmp-lift:not(.payroll-page) .site-header{margin-bottom:calc(-1 * var(--mobile-header-height))}
  body.jmp-lift .nav-shell{box-shadow:none}
  .nav-shell nav{max-height:calc(100dvh - var(--mobile-header-height) - 16px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:600px){:root{--mobile-header-height:80px;scroll-padding-top:96px}}

@media(min-width:851px){
  :root{--desktop-header-height:clamp(56px,5.1vw,74px);scroll-padding-top:96px}
  body.jmp-lift .site-header{position:sticky;top:0;z-index:100;height:var(--desktop-header-height)}
  body.jmp-lift:not(.payroll-page) .site-header{margin-bottom:calc(-1 * var(--desktop-header-height))}
  body.jmp-lift .nav-shell{min-height:var(--desktop-header-height);background:#fff;box-shadow:0 6px 25px #19231f0a}
}

/* WordPress global heading colors must not override headings on dark photos. */
.jmp-lift .hero h1,.jmp-lift .services-banner h2,.jmp-lift .partner-trust h2{color:#fff}

/* Give primary navigation a little more visual weight. */
.nav-shell nav>a:not(.button),.menu-toggle .menu-label{font-weight:700}

@media(min-width:1101px){.nav-shell nav{font-size:clamp(11px,.95vw,14px)}}

/* Accessible text on both dark cards and the pale partner strip. */
.jmp-lift .services-banner .eyebrow{color:#ff718c}
.jmp-lift .footer-lawyer .eyebrow{color:#c00028}
/* Small red labels also need sufficient contrast on light grey backgrounds. */
.eyebrow{color:#c00028}

/* A subtle spotlight trails the pointer without moving links or hit areas. */
@media(min-width:851px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .nav-shell nav.has-pointer-glow{position:relative;isolation:isolate}
  .nav-shell nav.has-pointer-glow:before{content:'';position:absolute;left:0;top:0;z-index:0;width:176px;height:44px;border-radius:18px;background:radial-gradient(ellipse at 50% 35%,#ffe5ecb3 0%,#fff4f7a6 65%,#fff9fb80 100%);box-shadow:0 5px 16px #e4002b0c,inset 0 1px 0 #fff;opacity:0;transform:translate3d(var(--nav-glow-x,0px),var(--nav-glow-y,0px),0);pointer-events:none;transition:transform .32s cubic-bezier(.22,.68,.24,1),opacity .2s ease-out}
  .nav-shell nav.has-pointer-glow.is-pointer-active:before{opacity:1}
  .nav-shell nav.has-pointer-glow>a{position:relative;z-index:1}
  .nav-shell nav>a:not(.button):hover{color:#c00028}
}
