/* ===== Company homepage — palette: sky blue #8FC7E8 · yellow #F2C14E · white · navy text ===== */
:root{--sky:#1B2A41;--sky-l:#F3F5F9;--sky-d:#1B2A41;--yel:#F2C14E;--yel-d:#E0AC2D;--navy:#1B2A41;--ink:#243247;--mute:#5B6B80}
body.home-co{background:#fff;color:var(--ink)}
/* buttons */
.co-btn-y{background:var(--yel);color:var(--navy);border:0;font-weight:700;box-shadow:none}
.co-btn-y:hover{background:var(--yel-d);color:var(--navy);transform:translateY(-1px)}
.co-btn-o{background:#fff;color:var(--navy);border:1.5px solid var(--navy);font-weight:600;box-shadow:none}
.co-btn-o:hover{background:var(--navy);color:#fff}
/* hero */
.co-hero{background:#fff;padding:54px 0 44px;border-bottom:1px solid #e6eef5}
.co-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.co-kicker{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--navy);background:var(--sky-l);border:1px solid #bfe0f3;border-radius:6px;padding:4px 10px;margin-bottom:16px}
.co-hero h1{font-size:46px;line-height:1.12;margin:0 0 16px;color:var(--navy);letter-spacing:-.6px;font-weight:800}
.co-hero h1 mark{background:linear-gradient(transparent 62%,var(--yel) 62%);color:inherit;padding:0 2px}
.co-hero p{font-size:17px;line-height:1.65;color:var(--mute);margin:0 0 22px;max-width:560px}
.co-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.co-trust{display:flex;gap:18px;flex-wrap:wrap;font-size:13.5px;font-weight:600;color:var(--ink)}
.co-trust span{display:inline-flex;align-items:center;gap:7px}.co-trust img{height:22px;width:auto}
.co-hero-art{position:relative}
.co-art-main{width:100%;height:auto;border-radius:14px;border:1px solid #e3edf4;box-shadow:0 20px 50px -24px rgba(27,42,65,.35);display:block}
.co-art-float{position:absolute;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e3edf4;border-radius:12px;padding:10px 14px;box-shadow:0 10px 30px -14px rgba(27,42,65,.35);left:-18px;bottom:28px}
.co-art-float.f2{left:auto;right:-14px;top:22px;bottom:auto}
.co-art-float svg{width:26px;height:26px}.co-art-float b{display:block;font-size:13.5px;color:var(--navy)}.co-art-float small{font-size:12px;color:var(--mute)}
/* strip */
.co-strip{background:#fff;border-bottom:1px solid #e6eaf0}
.co-strip-in{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center;padding:16px 0;color:var(--mute)}
.co-strip-l{font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--navy)}
.co-strip img{height:40px;width:auto;mix-blend-mode:multiply}
.co-logo{font-weight:800;font-size:17px;color:#7b8aa0;letter-spacing:-.3px}
/* sections */
.co-sec{padding:64px 0}
.co-head{text-align:center;max-width:640px;margin:0 auto 34px}
.co-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--sky-d);margin-bottom:8px}
.co-head h2{font-size:34px;margin:0 0 10px;color:var(--navy);letter-spacing:-.4px;font-weight:800}
.co-head p{color:var(--mute);font-size:16px;margin:0}
.co-services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.co-svc{display:block;background:#fff;border:1px solid #e3edf4;border-radius:14px;padding:26px 24px;color:inherit;transition:.2s}
.co-svc:hover{border-color:var(--sky);box-shadow:0 14px 34px -20px rgba(27,42,65,.35);transform:translateY(-3px)}
.co-svc i{display:flex;width:76px;height:76px;border-radius:18px;background:#FFF4D6;color:var(--navy);align-items:center;justify-content:center;margin-bottom:16px}
.co-svc i img{width:56px;height:56px;display:block;transition:transform .3s ease}.co-svc:hover i img{transform:scale(1.1)}
.co-svc i svg{width:26px;height:26px;stroke:var(--navy)}
.co-svc b{display:block;font-size:18px;color:var(--navy);margin-bottom:8px}
.co-svc p{color:var(--mute);font-size:14.5px;line-height:1.6;margin:0 0 12px}
.co-svc span{font-weight:700;font-size:14px;color:var(--yel-d)}
/* stats */
.co-stats{background:var(--sky)}
.co-stats-in{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:34px 0;text-align:center}
.co-stats b{display:block;font-size:36px;font-weight:800;color:var(--yel);letter-spacing:-1px}
.co-stats span{font-size:13.5px;font-weight:600;color:#dfe5ee}
.co-stats-in>div{position:relative}.co-stats-in>div:after{content:'';display:block;width:34px;height:4px;background:var(--yel);border-radius:4px;margin:10px auto 0}
/* portfolio */
.co-port{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.co-proj{display:block;background:#fff;border:1px solid #e3edf4;border-radius:14px;overflow:hidden;color:inherit;transition:.2s}
.co-proj:hover{box-shadow:0 18px 40px -22px rgba(27,42,65,.4);transform:translateY(-3px);border-color:var(--sky)}
.co-proj-img{aspect-ratio:3/2;background:var(--sky-l);display:flex;align-items:center;justify-content:center;overflow:hidden}
.co-proj-img img{width:100%;height:100%;object-fit:cover;display:block}
.co-proj-b{padding:16px 18px 18px}
.co-tag{display:inline-block;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:var(--yel);color:var(--navy);border-radius:6px;padding:3px 8px;margin-bottom:8px}
.co-proj-b b{display:block;font-size:16.5px;color:var(--navy);margin-bottom:4px}
.co-proj-b p{margin:0;color:var(--mute);font-size:13.5px;line-height:1.55}
/* free */
.co-free{background:var(--sky-l);padding:64px 0}
.co-free-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.co-free-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d7eaf5;border-radius:14px;padding:24px 22px;color:inherit;transition:.2s}
.co-free-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px -20px rgba(27,42,65,.35)}
.co-free-card i{display:flex;width:48px;height:48px;border-radius:12px;background:#FFF4D6;align-items:center;justify-content:center;margin-bottom:14px}
.co-free-card i svg{width:26px;height:26px}
.co-free-card b{font-size:17px;color:var(--navy);margin-bottom:6px}
.co-free-card p{color:var(--mute);font-size:14px;line-height:1.6;margin:0 0 16px;flex:1}
/* why + testimonial */
.co-why-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.co-points{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.co-points li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e3edf4;border-radius:12px;padding:14px 16px}
.co-points i{display:flex;width:42px;height:42px;border-radius:10px;background:var(--yel);align-items:center;justify-content:center;flex:none}
.co-points i svg{width:22px;height:22px;stroke:var(--navy)}
.co-points b{display:block;color:var(--navy);font-size:15.5px}.co-points span{font-size:13.5px;color:var(--mute)}
.co-testi{background:var(--navy);color:#fff;border-radius:16px;padding:30px 30px 26px;position:relative}
.co-testi:before{content:'“';position:absolute;right:26px;top:4px;font-size:110px;line-height:1;color:var(--yel);opacity:.35;font-family:Georgia,serif}
.co-stars{color:var(--yel);font-size:20px;letter-spacing:2px;margin-bottom:12px}.co-stars.sm{font-size:14px;margin-bottom:6px}
.co-testi>p{font-size:17px;line-height:1.7;margin:0 0 18px;color:#e9eef5}
.co-testi-who{display:flex;align-items:center;gap:12px}
.co-testi-who img,.co-testi-who>span{width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--yel);color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800}
.co-testi-who b{display:block;font-size:15px}.co-testi-who small{color:#b8c4d6;font-size:12.5px}
.co-testi-more{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}
.co-testi-more p{font-size:13px;color:#d5dde8;margin:0 0 4px;line-height:1.5}.co-testi-more small{color:#b8c4d6;font-size:12px}
/* contact */
.co-contact{background:var(--sky);padding:64px 0}
.co-contact-in{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}
.co-contact-txt h2{font-size:36px;color:#fff;margin:0 0 12px;font-weight:800;letter-spacing:-.4px}
.co-contact-txt p{color:#dfe5ee;font-size:16px;line-height:1.65;max-width:480px}
.co-offices{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:12px}
.co-offices li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:10px 14px}
.co-offices b{display:block;color:var(--yel);font-size:14px}.co-offices span{font-size:13.5px;color:#dfe5ee}
.co-form{background:#fff;border-radius:16px;padding:26px;box-shadow:0 20px 50px -28px rgba(27,42,65,.45);display:grid;gap:14px}
.co-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.co-form label{display:grid;gap:6px;font-size:13px;font-weight:700;color:var(--navy)}
.co-form input,.co-form select,.co-form textarea{width:100%;border:1.5px solid #dbe6ef;border-radius:10px;padding:11px 13px;font-size:14.5px;font-family:inherit;background:#fff;color:var(--ink)}
.co-form input:focus,.co-form select:focus,.co-form textarea:focus{outline:none;border-color:var(--sky-d);box-shadow:0 0 0 3px rgba(242,193,78,.35)}
.co-form small{color:var(--mute);font-size:12px;text-align:center}
/* responsive */
@media(max-width:1024px){.co-hero h1{font-size:38px}.co-services,.co-port{grid-template-columns:repeat(2,1fr)}.co-free-grid{grid-template-columns:repeat(2,1fr)}.co-stats-in{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.co-hero{padding:34px 0 30px}.co-hero-in,.co-why-wrap,.co-contact-in{grid-template-columns:1fr;gap:26px}.co-hero h1{font-size:31px}.co-art-float{display:none}.co-sec,.co-free,.co-contact{padding:44px 0}.co-head h2{font-size:27px}.co-stats-in{grid-template-columns:repeat(2,1fr)}.co-stats b{font-size:28px}}
@media(max-width:560px){.co-services,.co-port,.co-free-grid,.co-form-row,.co-testi-more{grid-template-columns:1fr}.co-strip img{height:30px}.co-logo{font-size:14px}.co-contact-txt h2{font-size:28px}}

/* ===== Scroll reveal (staggered slide & fade) ===== */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
.rv-l{transform:translateX(-40px)}.rv-r{transform:translateX(40px)}.rv-u{transform:translateY(26px)}
.rv.in{opacity:1;transform:none}
.rv-stag>*{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}
.rv-stag.in>*{opacity:1;transform:none}
.rv-stag.in>*:nth-child(1){transition-delay:.05s}.rv-stag.in>*:nth-child(2){transition-delay:.15s}.rv-stag.in>*:nth-child(3){transition-delay:.25s}.rv-stag.in>*:nth-child(4){transition-delay:.35s}.rv-stag.in>*:nth-child(5){transition-delay:.45s}.rv-stag.in>*:nth-child(6){transition-delay:.55s}
.co-services .co-svc:nth-child(2),.co-port .co-proj:nth-child(2),.co-free-grid .co-free-card:nth-child(2){transition-delay:.1s}
.co-services .co-svc:nth-child(3),.co-port .co-proj:nth-child(3),.co-free-grid .co-free-card:nth-child(3){transition-delay:.2s}
.co-services .co-svc:nth-child(4),.co-port .co-proj:nth-child(4),.co-free-grid .co-free-card:nth-child(4){transition-delay:.3s}
.co-services .co-svc:nth-child(5),.co-port .co-proj:nth-child(5){transition-delay:.4s}
.co-services .co-svc:nth-child(6),.co-port .co-proj:nth-child(6){transition-delay:.5s}
.co-hero-art.in .co-art-float{animation:coFloat 4s ease-in-out infinite}
@keyframes coFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
body.home-co .plat-bar,body.about-co .plat-bar{display:none!important}
html.no-js .rv,html.no-js .rv-stag>*{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv,.rv-stag>*{opacity:1!important;transform:none!important;transition:none!important}.co-art-float{animation:none!important}}

/* ===== About page (uses co-* components) ===== */
body.about-co .page-hero{display:none}
.ab-hero .co-hero-txt h1{font-size:46px}
.ab-art{background:#F3F5F9;border-radius:20px;overflow:hidden;border:1px solid #e6eaf0}.ab-art img{width:100%;height:auto;display:block}
.ab-founder{display:grid;grid-template-columns:200px 1fr;gap:34px;align-items:center;background:#fff;border:1px solid #e3edf4;border-radius:18px;padding:30px 34px;margin-top:10px}
.ab-founder-avatar img{width:200px;height:200px;border-radius:50%;object-fit:cover;display:block;border:6px solid #FFF4D6}
.ab-founder-txt h3{font-size:28px;color:var(--navy);margin:4px 0 12px;font-weight:800;letter-spacing:-.4px}
.ab-founder-txt p{font-size:17px;line-height:1.7;color:var(--ink);margin:0 0 14px;font-style:italic}
.ab-founder-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;color:var(--mute)}.ab-founder-meta a{font-weight:700;color:var(--navy)}
.ab-mv{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ab-mv-card{background:#fff;border:1px solid #e3edf4;border-radius:18px;padding:34px}
.ab-mv-card img{width:56px;height:56px;margin-bottom:16px}
.ab-mv-card h3{font-size:24px;color:var(--navy);margin:0 0 10px;font-weight:800}.ab-mv-card p{color:var(--mute);font-size:16px;line-height:1.7;margin:0}
.ab-mv-card.dark{background:var(--navy);border-color:var(--navy)}.ab-mv-card.dark h3{color:#fff}.ab-mv-card.dark p{color:#dfe5ee}
.ab-values .co-svc i img{width:44px;height:44px}
.ab-timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ab-timeline li{background:#fff;border:1px solid #e3edf4;border-radius:14px;padding:22px 22px 20px;position:relative}
.ab-year{display:inline-block;background:var(--yel);color:var(--navy);font-weight:800;font-size:13px;padding:4px 12px;border-radius:999px;margin-bottom:12px}
.ab-timeline b{display:block;color:var(--navy);font-size:17px;margin-bottom:6px}.ab-timeline p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.6}
.ab-team{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ab-member{background:#fff;border:1px solid #e3edf4;border-radius:16px;padding:26px;text-align:center}
.ab-avatar{width:84px;height:84px;border-radius:50%;background:#FFF4D6;color:var(--navy);font-weight:800;font-size:32px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;overflow:hidden}.ab-avatar img{width:100%;height:100%;object-fit:cover}
.ab-member b{display:block;font-size:18px;color:var(--navy)}.ab-member span{display:block;font-size:13px;font-weight:700;color:var(--yel-d);margin:4px 0 10px}.ab-member p{color:var(--mute);font-size:14.5px;line-height:1.6;margin:0}
.ab-more{text-align:center;margin-top:24px}
.ab-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ab-cta h2{color:#fff;font-size:34px;margin:0 0 6px;font-weight:800}.ab-cta p{color:#dfe5ee;margin:0;font-size:16px}
@media(max-width:1024px){.ab-timeline{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.ab-hero .co-hero-txt h1{font-size:34px}.ab-founder{grid-template-columns:1fr;text-align:center;padding:24px}.ab-founder-avatar img{margin:0 auto;width:150px;height:150px}.ab-founder-meta{justify-content:center}.ab-mv,.ab-team{grid-template-columns:1fr}.ab-cta{justify-content:center;text-align:center}}
@media(max-width:560px){.ab-timeline{grid-template-columns:1fr}}
