/* JARVIX project case studies — light, editorial, responsive. */
.project-page{font-family:Nunito,system-ui,sans-serif;background:#fff;color:#152b39}
.project-page h1,.project-page h2,.project-page h3{font-family:Outfit,system-ui,sans-serif;line-height:1.18}
.project-page .service-header,.project-page .service-footer{position:relative;z-index:12}
.project-page .service-header{position:sticky;top:0}
.pc-hero{background:#fafbfc;padding:24px 0 76px;overflow:hidden}
.pc-hero .breadcrumbs{margin-bottom:54px}
.pc-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,76px)}
.pc-kicker,.pc-section-head>div>span,.pc-aside>span,.pc-section-index{display:inline-block;font-size:12px;font-weight:900;letter-spacing:1.1px;color:#28667b}
.pc-kicker span{color:#28bdde;padding:0 9px}
.pc-hero-copy h1{font-size:clamp(39px,4.9vw,76px);letter-spacing:-.055em;line-height:1.07;margin:20px 0 25px;max-width:780px;font-weight:800}
.pc-hero-copy h1 em,.pc-section h2 em,.pc-related h2 em{font-style:normal;color:#007fa5}
.pc-hero-copy>p{color:#42596a;font-size:clamp(16px,1.2vw,20px);line-height:1.8;max-width:620px;margin:0 0 28px}
.pc-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap}
.pc-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:#122f41;color:#fff;padding:15px 23px;border-radius:70px;font-size:15px;font-weight:900;transition:transform .2s ease,background .2s ease}
.pc-button:hover{transform:translateY(-2px);background:#0b6580}
.pc-link{color:#214d66;font-weight:900;border-bottom:2px solid #96d9e6;font-size:15px}
.pc-hero-tag{display:inline-flex;align-items:center;gap:10px;margin-top:45px;font-size:13px;color:#4d6876;font-weight:900}
.pc-hero-tag b{color:#0bafd1;font-size:18px}.pc-hero-tag span{font-weight:700;color:#788c98}
.pc-hero-visual{min-width:0}.pc-visual{height:clamp(330px,35vw,490px);position:relative;border:2px solid #182f3c;border-radius:24px;background:var(--project-light);overflow:hidden;box-shadow:14px 16px 0 #152d3b14;isolation:isolate}
.pc-visual-note{position:absolute;left:22px;bottom:17px;font-size:10px;letter-spacing:1.2px;font-weight:900;color:var(--project-ink);z-index:7}
.pc-illustration-note{display:block;color:#657886;font-size:11px;line-height:1.4;margin-top:16px}
.pc-window-bar{height:42px;background:#ffffffec;border-bottom:1px solid #d6dde0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:relative;z-index:3;font-size:12px;color:#718997}
.pc-window-bar span{color:#f0aaa1;letter-spacing:3px}.pc-window-bar strong{color:#153b4d;font-size:16px;font-weight:900}
.pc-stellar-hero{margin:19px 23px 12px;min-height:185px;border-radius:12px;background:linear-gradient(125deg,#edc4d2,#f7e0e5);padding:27px;position:relative;overflow:hidden}
.pc-stellar-hero>span{font-size:11px;letter-spacing:2px;font-weight:900;color:#663950}.pc-stellar-hero b{display:block;font-size:clamp(26px,3vw,45px);letter-spacing:-1.2px;color:#573248;margin-top:10px;line-height:1.12}.pc-stellar-hero i{position:absolute;right:15%;top:6%;font-size:135px;color:#fff8;transform:rotate(-20deg)}
.pc-product-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:0 22px}.pc-product-list>div{border-radius:12px;background:#fff;padding:14px 8px;text-align:center;box-shadow:0 4px 10px #42152510}.pc-product-emoji{display:block;font-size:30px;color:#ab6586}.pc-product-list b{display:block;font-size:13px;color:#55384a}.pc-product-list small{font-size:10px;color:#96778b}
.pc-celenes-head{margin:24px 25px 15px;padding:14px 20px;position:relative}.pc-celenes-head small{display:block;color:#6b9745;font-weight:900;letter-spacing:2px;font-size:10px}.pc-celenes-head b{font-size:clamp(25px,3vw,39px);letter-spacing:-1.2px;color:#284c2a;display:block;margin-top:8px}.pc-celenes-head>span{position:absolute;right:8px;top:-15px;font-size:67px;color:#b6de7a}
.pc-celenes-tiles{padding:0 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.pc-celenes-tiles>div{min-height:160px;border:1px solid #cde4bb;border-radius:15px;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:13px 6px}.pc-celenes-tiles b{font-size:36px;color:#63a83f}.pc-celenes-tiles strong{font-size:12px;margin-top:7px}.pc-celenes-tiles small{font-size:11px;color:#70876a;margin-top:5px}
.pc-masaport{background:#ebfafb}.pc-phone{background:white;border:7px solid #173f4a;border-radius:30px;position:absolute;left:8%;top:7%;height:83%;width:46%;padding:24px 13px 12px;overflow:hidden;box-shadow:10px 13px 22px #1145561c}.pc-notch{position:absolute;top:5px;left:37%;height:9px;width:26%;background:#173f4a;border-radius:99px}.pc-mini-brand{font-family:Outfit;font-size:19px;font-weight:900;color:#285b63}.pc-mini-brand b{color:#09a8bd}.pc-phone>small{display:block;font-size:9px;color:#6b9297;margin:1px 0 14px}.pc-phone h3{font-size:18px;margin:3px 0 12px}.pc-menu-item{display:flex;align-items:center;gap:9px;padding:7px;margin-bottom:8px;background:#f1f8f8;border-radius:9px}.pc-menu-item>span{font-size:19px}.pc-menu-item strong{font-size:11px;line-height:1.3}.pc-menu-item small{display:block;color:#759399;font-weight:600}.pc-menu-item>b{margin-left:auto;color:#138ba6}.pc-menu-cta{background:#11b4c4;color:white;border-radius:9px;text-align:center;padding:8px;font-size:11px;font-weight:900}
.pc-masaport-side{position:absolute;right:6%;top:20%;width:38%;background:#fff;border:1px solid #addde4;border-radius:16px;box-shadow:0 12px 25px #4babb827;padding:15px}.pc-status-chip{font-size:10px;color:#16887c;font-weight:900;letter-spacing:1px}.pc-masaport-side h3{font-size:clamp(16px,2vw,25px);margin:16px 0}.pc-status-line{display:flex;gap:5px;margin:12px 0}.pc-status-line span{width:30%;height:8px;border-radius:20px;background:#74d5d6}.pc-status-line span:last-child{background:#dbeaec}.pc-masaport-side>small{font-size:9px;color:#68878e}.pc-qr{font-size:55px;text-align:right;color:#19747e;line-height:1}
.pc-strip{border-block:1px solid #dde4e9;background:#fff}.pc-strip>.service-shell{display:flex;justify-content:space-between;gap:20px;padding:20px 0}.pc-strip span{font-size:10px;color:#6c8291;font-weight:800;letter-spacing:1px}.pc-strip strong{color:#18384a;font-size:12px;letter-spacing:.2px;margin-left:8px}
.pc-section{padding:clamp(65px,7vw,110px) 0}.pc-alt{background:#f3f7f9}.pc-split{display:grid;grid-template-columns:29% minmax(0,1fr);gap:9%}.pc-aside>b{display:block;font-family:Kalam,cursive;color:#178fac;font-size:25px;max-width:240px;line-height:1.25;margin-top:27px;font-weight:700}.pc-story-body h2,.pc-section-head h2,.pc-related h2,.pc-faq-layout h2{font-size:clamp(35px,4.4vw,58px);line-height:1.14;letter-spacing:-.045em;margin:12px 0 26px}.pc-story{display:grid;grid-template-columns:55px minmax(0,1fr);gap:16px;padding:22px 0;border-top:1px solid #d9e2e8}.pc-story .pc-count{font-size:13px;color:#0f95b0;font-weight:900}.pc-story h3{font-size:23px;margin:0 0 10px;letter-spacing:-.5px}.pc-story p,.pc-story-body>.pc-muted{font-size:17px;line-height:1.85;color:#455c6b;margin:0 0 13px}.pc-story-body>.pc-muted{margin-bottom:20px}.pc-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.pc-section-head>p{max-width:385px;font-size:16px;color:#526a77;line-height:1.75;margin:0 0 10px}.pc-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.pc-feature{background:#fff;border:1px solid #d7e1e5;border-radius:18px;padding:25px;transition:transform .2s ease}.pc-feature:hover{transform:translateY(-3px)}.pc-feature-num{font-size:12px;color:#259ab0;font-weight:900}.pc-feature h3{font-size:23px;margin:24px 0 12px;letter-spacing:-.5px}.pc-feature p,.pc-outcome p{color:#556b77;font-size:16px;line-height:1.75;margin:0}.pc-quote-section{background:#173b4c;color:#fff}.pc-quote-section .service-shell{max-width:1040px}.pc-quote-section span{font-size:11px;color:#86e2ec;letter-spacing:2px;font-weight:900}.pc-quote-section blockquote{font:800 clamp(30px,4vw,58px)/1.2 Outfit,sans-serif;letter-spacing:-.04em;margin:32px 0}.pc-quote-section p{max-width:860px;color:#d4e7ed;line-height:1.85;font-size:18px}.pc-steps,.pc-outcomes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pc-step{border:1px solid #d9e3e7;border-radius:17px;padding:25px 20px;background:#fff}.pc-step b{color:#139bb3;font-size:26px}.pc-step h3{font-size:22px;margin:19px 0 12px}.pc-step p{font-size:15px;color:#5b6e79;line-height:1.7;margin:0}.pc-outcomes{grid-template-columns:repeat(3,1fr)}.pc-outcome{background:#fff;border:1px solid #d9e4e8;border-radius:16px;padding:26px}.pc-outcome strong{font:800 24px Outfit,sans-serif;display:block;margin-bottom:12px}
.pc-faq-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:9%}.pc-faq-layout p{color:#536976;font-size:17px}.pc-faq{border-bottom:1px solid #cadae1}.pc-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 0;font-weight:900;font-size:18px}.pc-faq summary::-webkit-details-marker{display:none}.pc-faq summary span{color:#0b96b4;font-size:26px}.pc-faq[open] summary span{transform:rotate(45deg)}.pc-faq>p{font-size:16px;line-height:1.78;padding-bottom:16px;margin:0}
.pc-cta{background:#d9f5f9;padding:74px 0}.pc-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.pc-cta-inner>div{max-width:770px}.pc-cta span{font-size:11px;letter-spacing:1px;font-weight:900;color:#277b90}.pc-cta h2{font:800 clamp(32px,4.3vw,56px)/1.14 Outfit,sans-serif;letter-spacing:-.04em;margin:17px 0}.pc-cta p{font-size:17px;line-height:1.75;color:#365969}.pc-button-light{flex:none;background:#173949}.pc-related{padding:72px 0 110px;background:#fff}.pc-related-links{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.pc-related-links a{border:1px solid #cbdce2;border-radius:15px;padding:23px 27px;display:flex;flex-direction:column;gap:8px;position:relative}.pc-related-links a:hover{background:#eef9fb}.pc-related-links a span{font-size:11px;color:#75909e;font-weight:900;letter-spacing:1px}.pc-related-links a strong{font:800 30px Outfit,sans-serif}.pc-related-links a i{position:absolute;right:25px;top:24px;font-style:normal;font-size:22px;color:#00a3c8}
@media(max-width:1080px){.pc-hero-grid{grid-template-columns:1fr 1fr;gap:26px}.pc-hero-copy h1{font-size:50px}.pc-features{grid-template-columns:repeat(2,1fr)}.pc-visual{height:400px}.pc-celenes-tiles>div{min-height:130px}.pc-product-list{padding-inline:15px}}
@media(max-width:880px){.pc-hero-grid{grid-template-columns:1fr}.pc-hero-visual{max-width:620px;width:100%}.pc-hero-copy h1{font-size:clamp(40px,7vw,70px)}.pc-visual{height:410px}.pc-split{grid-template-columns:1fr;gap:24px}.pc-aside>b{display:none}.pc-strip>.service-shell{flex-wrap:wrap}.pc-steps{grid-template-columns:repeat(2,1fr)}.pc-section-head{align-items:start;flex-direction:column;gap:8px}.pc-faq-layout{grid-template-columns:1fr;gap:20px}}
@media(max-width:650px){.pc-hero{padding:17px 0 55px}.pc-hero .breadcrumbs{margin-bottom:35px}.pc-hero-copy h1{font-size:clamp(37px,10vw,53px);line-height:1.13}.pc-hero-copy>p{font-size:16px}.pc-actions{gap:16px}.pc-button{padding:14px 19px;font-size:14px}.pc-visual{height:365px;border-radius:17px}.pc-strip>.service-shell{display:grid;gap:8px;padding:18px 0}.pc-section{padding:64px 0}.pc-features,.pc-outcomes,.pc-steps,.pc-related-links{grid-template-columns:1fr}.pc-story{grid-template-columns:33px 1fr;gap:10px}.pc-story h3{font-size:21px}.pc-story p{font-size:16px}.pc-feature h3{margin-top:16px}.pc-section-head h2,.pc-story-body h2{font-size:clamp(34px,9vw,44px)}.pc-quote-section blockquote{font-size:clamp(29px,8vw,40px)}.pc-quote-section p{font-size:16px}.pc-cta-inner{display:block}.pc-cta .pc-button{margin-top:16px}.pc-celenes-tiles{gap:7px;padding-inline:12px}.pc-celenes-tiles>div{min-height:125px;padding-inline:5px}.pc-celenes-tiles strong{font-size:10px}.pc-celenes-tiles b{font-size:29px}.pc-celenes-head b{font-size:28px}.pc-masaport-side{padding:10px}.pc-phone{padding-inline:8px}.pc-masaport-side h3{font-size:17px}.pc-related{padding:57px 0 76px}}
@media(max-width:375px){.pc-visual{height:330px}.pc-stellar-hero{min-height:160px;margin-inline:12px;padding:20px}.pc-product-list{padding-inline:10px;gap:5px}.pc-product-list>div{padding:10px 3px}.pc-hero-copy h1{font-size:37px}.pc-hero-tag{flex-wrap:wrap}.pc-celenes-tiles strong{font-size:9px}.pc-celenes-tiles b{font-size:25px}}
@media(prefers-reduced-motion:reduce){.pc-button,.pc-feature{transition:none!important}.pc-feature:hover,.pc-button:hover{transform:none!important}}


/* JARVIX / v3 — mobile case-study layout repair.
   Previously the three simulated product panels were fixed-height and
   clipped their own content on narrow phones. Keep content in document flow. */
.project-page .pc-hero-grid > *,
.project-page .pc-split > *,
.project-page .pc-section-head > *,
.project-page .pc-hero-visual,
.project-page .pc-story-body,
.project-page .pc-hero-copy { min-width:0; }
.project-page .pc-hero-copy h1,
.project-page .pc-section h2,
.project-page .pc-story h3,
.project-page .pc-feature h3 { overflow-wrap:break-word; }
.project-page .pc-visual-note { pointer-events:none; }
.project-page .pc-visual.pc-stellar,
.project-page .pc-visual.pc-celenes{
  height:auto;min-height:465px;
  display:flex;flex-direction:column;padding-bottom:55px;
}
@media(max-width:650px){
 .project-page .pc-hero-visual { width:100%; max-width:100%; }
 .project-page .pc-visual { width:100%; box-shadow:6px 8px 0 #152d3b12; }
 .project-page .pc-visual.pc-stellar,
 .project-page .pc-visual.pc-celenes {
   display:flex;flex-direction:column;align-items:stretch;
   height:auto;min-height:0;padding-bottom:52px;overflow:visible;
 }
 .project-page .pc-visual.pc-stellar::before,
 .project-page .pc-visual.pc-celenes::before{
   content:"";position:absolute;inset:0;background:var(--project-light);
   border-radius:inherit;z-index:-1;
 }
 .project-page .pc-window-bar { flex:0 0 42px;min-width:0; }
 .project-page .pc-window-bar strong { font-size:15px;white-space:nowrap; }
 .project-page .pc-window-bar small { font-size:10px;white-space:nowrap; }
 .project-page .pc-stellar-hero{flex:0 0 auto;min-height:165px;margin:14px 14px 12px;padding:20px;}
 .project-page .pc-stellar-hero b{font-size:clamp(27px,8vw,36px);line-height:1.1;}
 .project-page .pc-stellar-hero i{font-size:98px;right:7%;}
 .project-page .pc-product-list{
   display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
   padding:0 14px;gap:7px;align-items:stretch;
 }
 .project-page .pc-product-list>div {
   display:flex;flex-direction:column;justify-content:center;align-items:center;
   min-width:0;min-height:108px;padding:11px 3px;gap:3px;
 }
 .project-page .pc-product-list .pc-product-emoji{font-size:28px;line-height:1;}
 .project-page .pc-product-list b{font-size:12px;line-height:1.25;overflow-wrap:anywhere;}
 .project-page .pc-product-list small{font-size:10px;line-height:1.25;white-space:normal;}
 .project-page .pc-celenes-head{
   flex:0 0 auto;margin:11px 12px 6px;padding:12px 10px 16px;
 }
 .project-page .pc-celenes-head b{max-width:240px;font-size:clamp(26px,7.7vw,33px);line-height:1.12;}
 .project-page .pc-celenes-head>span{right:4px;top:1px;font-size:39px;}
 .project-page .pc-celenes-tiles{
   display:grid;grid-template-columns:1fr;gap:7px;padding:0 14px;
 }
 .project-page .pc-celenes-tiles>div{
   display:grid;grid-template-columns:40px minmax(0,1fr);
   grid-template-rows:auto auto;align-content:center;column-gap:11px;
   min-height:69px;padding:10px 13px;text-align:left;
 }
 .project-page .pc-celenes-tiles b{
   grid-column:1;grid-row:1 / span 2;font-size:29px;line-height:1.1;
 }
 .project-page .pc-celenes-tiles strong{
   grid-column:2;grid-row:1;margin:0;font-size:13px;line-height:1.25;
   overflow-wrap:normal;
 }
 .project-page .pc-celenes-tiles small{
   grid-column:2;grid-row:2;margin:1px 0 0;font-size:11px;
   line-height:1.25;overflow-wrap:anywhere;
 }
 .project-page .pc-visual.pc-masaport{
   height:auto;min-height:0;display:flex;flex-direction:column;
   align-items:center;gap:12px;padding:17px 12px 51px;
 }
 .project-page .pc-phone{
   position:relative;top:auto;left:auto;right:auto;bottom:auto;
   width:min(100%,265px);height:auto;min-height:310px;
   margin:0;flex:none;padding:26px 13px 13px;
   box-shadow:5px 7px 15px #11455616;
 }
 .project-page .pc-menu-item{padding:8px;gap:7px;}
 .project-page .pc-menu-item strong{font-size:12px;}
 .project-page .pc-masaport-side{
   position:relative;top:auto;left:auto;right:auto;bottom:auto;
   width:min(100%,265px);min-height:0;flex:none;
   margin:0;padding:15px 17px;
 }
 .project-page .pc-masaport-side h3{font-size:19px;line-height:1.2;margin:9px 0;}
 .project-page .pc-status-line{margin:9px 0;}
 .project-page .pc-qr{display:none;}
 .project-page .pc-visual-note{
   left:12px;right:12px;bottom:13px;
   font-size:9px;line-height:1.45;letter-spacing:.8px;
   text-align:center;white-space:normal;
 }
 .project-page .pc-illustration-note{font-size:12px;line-height:1.5;margin-top:13px;}
 .project-page .pc-strip strong{display:inline-block;margin-left:4px;line-height:1.4;}
 .project-page .pc-story{grid-template-columns:28px minmax(0,1fr);}
 .project-page .pc-quote-section blockquote{overflow-wrap:break-word;}
 .project-page .pc-cta .pc-button{max-width:100%;}
}
@media(max-width:360px){
 .project-page .pc-hero-copy h1{font-size:clamp(32px,10vw,37px);}
 .project-page .pc-stellar-hero{padding:16px;min-height:151px;}
 .project-page .pc-stellar-hero b{font-size:27px;}
 .project-page .pc-celenes-head b{font-size:25px;}
 .project-page .pc-masaport-side h3{font-size:18px;}
 .project-page .pc-button{gap:11px;}
}
