.page-home .hero {
    min-height: 560px;
    padding: 58px 0 54px;
    color: var(--ink);
    background:
        radial-gradient(circle at 77% 38%, rgba(139,189,240,.25), transparent 30%),
        radial-gradient(circle at 23% 18%, rgba(104,66,216,.12), transparent 27%),
        linear-gradient(135deg, #ffffff 0%, #f9f7ff 52%, #edf7ff 100%);
    overflow: hidden;
}

.page-home .hero-grid {
    grid-template-columns: minmax(0,1.08fr) minmax(390px,.92fr);
    gap: clamp(48px,6vw,84px);
}
.page-home .hero-copy { position: relative; z-index: 2; }
.page-home .hero h1 {
    max-width: 720px;
    color: #0c1c3c;
    font-size: clamp(3rem,4.3vw,4.35rem);
    line-height: 1.01;
    letter-spacing: -.052em;
    text-wrap: balance;
}
.page-home .hero .lead { max-width: 650px; color: #5d6980; }
.page-home .hero .eyebrow { background: rgba(104,66,216,.09); border: 1px solid rgba(104,66,216,.14); padding: 7px 11px; border-radius: 999px; width: max-content; }
.page-home .hero .btn-secondary { background: rgba(255,255,255,.75); border-color: rgba(104,66,216,.18); backdrop-filter: blur(12px); }
.page-home .trust-row span { background: rgba(255,255,255,.72); color: #31415d; border: 1px solid rgba(104,66,216,.12); box-shadow: 0 10px 24px rgba(55,37,116,.06); }

.page-home .hero-panel {
    position: relative;
    border: 1px solid rgba(104,66,216,.2);
    border-radius: 30px;
    background: linear-gradient(145deg, rgba(255,255,255,.7), rgba(236,243,255,.62));
    box-shadow: 0 42px 90px rgba(45,31,105,.2), inset 0 1px 0 #fff;
    overflow: hidden;
    transform: perspective(1200px) rotateY(-5deg) rotateX(2deg);
    transition: transform .2s ease;
    backdrop-filter: blur(18px);
    padding: 18px;
}

.page-home .hero-panel::before {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    left: -60px;
    bottom: -70px;
    border-radius: 50%;
    background: linear-gradient(145deg,#8bbdf0,#6842d8);
    filter: blur(2px);
    opacity: .34;
    z-index: 0;
}

.page-home .hero-panel img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: clamp(340px,30vw,430px);
    min-height: 0;
    border-radius: 20px;
    object-fit: cover;
    object-position: center;
}
.page-home .metric-card { z-index: 2; backdrop-filter: blur(18px); background: rgba(255,255,255,.82); color: var(--ink); border: 1px solid rgba(104,66,216,.15); box-shadow: 0 20px 45px rgba(36,24,88,.13); }
.page-home .metric-card span { color: var(--muted); }
.page-home .industry-grid { perspective: 1200px; }
.page-home .industry-card { background: linear-gradient(145deg,#fff,#f7f4ff); border-color: rgba(104,66,216,.15); }
.page-home .project-thumb { height: 210px; overflow: hidden; background: #101936; border-radius: 10px; }
.page-home .project-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.page-home .portfolio-card:hover .project-thumb img { transform: scale(1.04); }
.page-home .cta-box h2 { color: #0c1c3c; }
.page-home .feedback-invite { margin-top: 28px; padding: 24px 28px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid rgba(104,66,216,.16); border-radius: 14px; background: linear-gradient(135deg,#fff,#f4f0ff); }
.page-home .feedback-invite div { display: grid; }
.page-home .feedback-invite strong { color: #0c1c3c; font-size: 1.12rem; }
.page-home .feedback-invite span { color: #667789; }
.page-home .cta-box { background: radial-gradient(circle at 85% 20%,rgba(139,189,240,.25),transparent 28%),linear-gradient(135deg,#f7f3ff,#eef7ff); color: var(--ink); border: 1px solid rgba(104,66,216,.17); box-shadow: 0 32px 80px rgba(48,30,111,.13); }
.page-home .home-demos { background: linear-gradient(180deg,#f8f7ff 0%,#f1f5ff 100%); }
.page-home .home-demos-head { max-width: 780px; margin-bottom: 38px; }
.page-home .home-demos-head h2 { font-size: clamp(2rem,4vw,3.25rem); letter-spacing: -.035em; }
.page-home .home-demos-head p:last-child { max-width: 720px; color: #66748a; }
.page-home .home-demo-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.page-home .home-demo-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid rgba(104,66,216,.14); border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 22px 55px rgba(43,30,98,.08); transition: transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.page-home .home-demo-card:hover { transform: translateY(-7px); border-color: rgba(104,66,216,.3); box-shadow: 0 30px 68px rgba(43,30,98,.15); }
.page-home .home-demo-image { display: block; height: 190px; overflow: hidden; background: #e9edfa; }
.page-home .home-demo-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.page-home .home-demo-card:hover .home-demo-image img { transform: scale(1.055); }
.page-home .home-demo-body { display: flex; flex: 1; align-items: flex-start; flex-direction: column; padding: 20px 22px 22px; }
.page-home .home-demo-badge { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: #f0ebff; color: #6842d8; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.page-home .home-demo-card h3 { margin: 13px 0 7px; font-size: clamp(1.2rem,1.7vw,1.45rem); letter-spacing: -.025em; }
.page-home .home-demo-card p { flex: 1; margin: 0 0 17px; color: #66748a; font-size:.92rem; line-height: 1.55; }
.page-home .home-demo-button { display: inline-flex; align-items: center; gap: 12px; transition: transform .22s ease,background-color .22s ease,box-shadow .22s ease; }
.page-home .home-demo-button span { transition: transform .22s ease; }
.page-home .home-demo-button:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(11,29,66,.18); }
.page-home .home-demo-button:hover span { transform: translateX(4px); }
.page-home .home-demos-more { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 30px; padding: 23px 25px; border: 1px solid rgba(104,66,216,.14); border-radius: 14px; background: rgba(255,255,255,.7); }
.page-home .home-demos-more p { max-width: 650px; margin: 0; color: #66748a; }
.page-home .home-demos-more .btn { flex: 0 0 auto; gap: 12px; }
.page-home .home-demos-more .btn span { transition: transform .22s ease; }
.page-home .home-demos-more .btn:hover span { transform: translateX(4px); }

.page-home .service-card-link{position:relative;min-height:255px;padding:28px;overflow:hidden;border:1px solid rgba(104,66,216,.13);border-radius:20px;background:linear-gradient(145deg,#fff 0%,#faf8ff 58%,#f0f6ff 100%);box-shadow:0 18px 45px rgba(31,24,73,.07);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.page-home .service-card-link::after{content:"";position:absolute;right:-55px;bottom:-70px;width:155px;height:155px;border-radius:50%;background:rgba(104,66,216,.07);transition:transform .3s ease}
.page-home .service-card-link:hover{transform:translateY(-6px);border-color:rgba(104,66,216,.32);box-shadow:0 28px 60px rgba(47,31,110,.13)}
.page-home .service-card-link:hover::after{transform:scale(1.18)}
.page-home .home-service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.page-home .home-service-arrow{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:#6842df;box-shadow:0 8px 22px rgba(54,35,128,.1);font-weight:900;transition:transform .25s ease,background .25s ease,color .25s ease}
.page-home .service-card-link:hover .home-service-arrow{transform:rotate(12deg);background:#6842df;color:#fff}.page-home .service-card-link h3{position:relative;z-index:1;font-size:1.35rem;letter-spacing:-.025em}.page-home .service-card-link p{position:relative;z-index:1;color:#657289;line-height:1.65}
.page-home .home-section-link{display:flex;justify-content:center;margin-top:30px}.page-home .home-section-link a{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:2px solid #6842df;color:#16284a;font-weight:850}.page-home .home-section-link a span{color:#6842df;transition:transform .2s ease}.page-home .home-section-link a:hover span{transform:translateX(5px)}
.page-home .about-home-grid{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(34px,5vw,68px);padding:clamp(28px,3.5vw,46px);border:1px solid rgba(104,66,216,.14);border-radius:28px;background:radial-gradient(circle at 8% 15%,rgba(104,66,216,.1),transparent 28%),linear-gradient(135deg,#fff,#f4f7ff);box-shadow:0 32px 78px rgba(39,27,91,.11)}
.page-home .about-photo-panel{width:100%;min-width:0;min-height:0;height:430px;aspect-ratio:auto;border:0;border-radius:22px;background:linear-gradient(145deg,#101f42,#6842df);box-shadow:0 26px 60px rgba(27,25,69,.2)}.page-home .about-photo-panel.is-logo{padding:32px}.page-home .about-photo-panel.is-logo img{width:100%;height:100%;object-fit:contain;border-radius:16px;background:#fff}
.page-home .about-home-copy{position:relative;z-index:2;min-width:0;max-width:680px;align-self:center}.page-home .about-home-role{display:inline-flex;margin:0 0 14px;color:#6842df;font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.page-home .about-home-copy h2{max-width:650px;font-size:clamp(2.25rem,3.5vw,3.85rem);line-height:.98;letter-spacing:-.055em}.page-home .about-home-copy h2 em{color:#6842df;font-family:Georgia,"Times New Roman",serif;font-weight:500}.page-home .about-home-lead{color:#263754;font-size:1rem;line-height:1.68}
.page-home .about-home-proof{display:grid;gap:3px;margin:22px 0;padding:16px 18px;border-left:3px solid #6842df;background:rgba(255,255,255,.7)}.page-home .about-home-proof strong{color:#10234a}.page-home .about-home-proof span{color:#68758a;font-size:.88rem}

.page-home .home-feedback{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 22%,rgba(104,66,223,.1),transparent 25%),linear-gradient(180deg,#fff,#f6f7ff)}
.page-home .home-feedback-head{display:grid;grid-template-columns:1fr .72fr;align-items:end;gap:70px;margin-bottom:42px}.page-home .home-feedback-head h2{margin:12px 0 0;color:#0b1d42;font-size:clamp(2.8rem,5vw,5.2rem);line-height:.93;letter-spacing:-.055em}.page-home .home-feedback-head h2 em{color:#6842df;font-family:Georgia,serif;font-weight:500}.page-home .home-feedback-intro p{color:#647188;line-height:1.72}.page-home .home-feedback-intro a{display:inline-flex;align-items:center;gap:10px;margin-top:11px;padding-bottom:6px;border-bottom:1px solid #6842df;color:#17294d;font-weight:850}.page-home .home-feedback-intro a span{color:#6842df;transition:transform .2s}.page-home .home-feedback-intro a:hover span{transform:translateX(4px)}
.page-home .home-testimonials{gap:20px}.page-home .home-testimonials .testimonial-card{display:flex;min-height:310px;flex-direction:column;padding:28px;border:1px solid rgba(104,66,223,.14);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 20px 50px rgba(41,29,91,.08);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.page-home .home-testimonials .testimonial-card:hover{transform:translateY(-5px);border-color:rgba(104,66,223,.32);box-shadow:0 29px 62px rgba(41,29,91,.14)}.page-home .testimonial-top{display:flex;align-items:start;justify-content:space-between}.page-home .quote-mark{color:#dfd7fb;font:4.5rem/.65 Georgia,serif}.page-home .home-testimonials blockquote{flex:1;margin:28px 0;color:#1c2d4d;font-size:1.04rem;line-height:1.65}.page-home .home-testimonials footer{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid #e8e9f1}.page-home .review-avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:#eee9ff;color:#6842df;font-weight:900}.page-home .home-testimonials footer div{display:grid}.page-home .home-testimonials small{color:#758096;font-size:.72rem}.page-home .feedback-invite small{margin-bottom:5px;color:#6842df;font-size:.63rem;font-weight:900;letter-spacing:.12em}

@media (max-width: 900px) {
    .page-home .hero-grid { grid-template-columns: 1fr; }
    .page-home .hero-panel { transform: none; }
    .page-home .hero-panel img { height: clamp(300px,66vw,500px); }
    .page-home .hero { min-height: auto; padding-top: 76px; }
    .page-home .home-demo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .page-home .about-home-grid { grid-template-columns: minmax(230px,.7fr) minmax(0,1.3fr); gap:28px; }
    .page-home .about-photo-panel { height: 360px; }
    .page-home .about-home-copy h2 { font-size:clamp(2rem,4.8vw,3rem); }
    .page-home .home-feedback-head { grid-template-columns:1fr; gap:20px; }
}

@media (max-width: 560px) {
    .page-home .hero { padding: 60px 0 54px; }
    .page-home .hero h1 { font-size: clamp(2.55rem,12vw,3.25rem); }
    .page-home .hero .eyebrow { width: auto; line-height: 1.35; }
    .page-home .hero-panel { padding: 10px; border-radius: 20px; }
    .page-home .hero-panel img { height: 300px; border-radius: 14px; }
    .page-home .feedback-invite { align-items: stretch; flex-direction: column; padding: 22px 18px; }
    .page-home .home-demo-grid { grid-template-columns:1fr; }
    .page-home .home-demo-image { height: 180px; }
    .page-home .home-demo-body { padding: 22px 20px; }
    .page-home .home-demos-more { align-items: stretch; flex-direction: column; padding: 21px 20px; }
    .page-home .home-demos-more .btn { width: 100%; }
    .page-home .about-home-grid { grid-template-columns:1fr; padding:22px; }
    .page-home .about-photo-panel { height:300px; }
    .page-home .home-feedback-head h2 { font-size:2.75rem; }
    .page-home .home-testimonials .testimonial-card { min-height:270px; padding:22px; }
}

@media(prefers-reduced-motion:reduce){.page-home .home-testimonials .testimonial-card,.page-home .home-feedback-intro a span{transition:none}}
