.button{display:inline-flex;justify-content:center;align-items:center;gap:.65rem;border:1px solid transparent;border-radius:.55rem;background:linear-gradient(110deg,#30aaf2,#0560f9);padding:.75rem 1.7rem;font-size:.875rem;font-weight:650;line-height:1.5;min-height:2.5rem}.button:hover{filter:brightness(1.12)}.button--outline{border-color:#84adea;background:rgba(0,29,66,.35);font-weight:500}.header-contact{border-radius:2rem;min-height:2.4rem;padding:.5rem 1.35rem;font-size:.8rem;background:linear-gradient(100deg,#1682ff,#0059f2)}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.service-card{min-width:0;height:6.94rem;display:flex;align-items:center;gap:.85rem;padding:.9rem 1.15rem;position:relative;border:1px solid #174e80;border-radius:var(--card-radius);background:linear-gradient(130deg,rgba(13,67,118,.67),rgba(4,33,67,.7));box-shadow:inset 0 0 1.2rem #1260a216}.service-card>img{width:3.6rem;height:3.9rem;object-fit:contain;flex:none}.service-card h3{font-size:1rem;font-weight:700;white-space:nowrap;margin-bottom:.35rem}.service-card p{font-size:.8rem;line-height:1.55;color:var(--text-secondary);white-space:nowrap}.card-arrow{width:1.75rem;height:1.75rem;border-radius:50%;position:absolute;right:.65rem;bottom:1rem;background:rgba(29,91,155,.4);display:grid;place-items:center;font-family:Arial}.service-card.is-featured{border-color:#67dbff;background:linear-gradient(120deg,#0c87f9,#0045b9 70%,#096afb);box-shadow:0 0 1.25rem #047aff,inset 0 0 .65rem #66dfff88}.service-card.is-featured .card-arrow{background:#0878fe}.service-card:hover{border-color:#8cecff}.service-card[data-service="gene-editing"] .card-arrow,.service-card[data-service="molecular-biology"] .card-arrow,.service-card[data-service="custom-service"] .card-arrow{display:none}
.search-dialog{width:min(32rem,calc(100% - 2rem));border:1px solid #508aca;border-radius:1rem;padding:2rem;background:#062748;color:white;box-shadow:0 1rem 5rem #0008}.search-dialog::backdrop{background:#001429cc}.dialog-close{position:absolute;right:.6rem;top:.3rem;font-size:2rem;background:none;border:0}.search-dialog h2{font-size:1.5rem;margin-bottom:1rem}.search-dialog label{display:block;font-size:.9rem;margin-bottom:.5rem}.search-dialog input{width:100%;padding:.7rem;border-radius:.4rem;border:1px solid #739fc4;margin-bottom:.7rem}#search-results{display:grid;gap:.7rem;margin-top:1rem}#search-results a{padding:.5rem;border-bottom:1px solid var(--line)}
@media(max-width:959px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{height:7rem}.service-card h3{font-size:1rem}}@media(max-width:599px){.service-grid{gap:.65rem}.service-card{height:10rem;display:block;padding:1rem .7rem}.service-card>img{width:2.7rem;height:2.7rem;margin-bottom:.6rem}.service-card h3{font-size:.9rem}.service-card p{font-size:.71rem}.card-arrow{right:.45rem;bottom:.65rem;width:1.4rem;height:1.4rem}.service-card[data-service="stable-cell-line"] .card-arrow,.service-card[data-service="gene-editing"] .card-arrow,.service-card[data-service="molecular-biology"] .card-arrow,.service-card[data-service="custom-service"] .card-arrow{display:none}}

.qr-dialog>img{width:16rem;height:auto;margin:1rem auto;background:white}.qr-dialog>a{display:flex;justify-content:center;margin-top:.7rem}

@media(min-width:960px){
 .home .service-grid{grid-template-columns:1.045fr .95fr 1fr 1.005fr}
 .home .service-card{background:linear-gradient(125deg,#0a3564d9,#031e3ed9);gap:.85rem}
 .home .service-card>img{transform:translateY(-.4rem) scale(1.24);transform-origin:center}
 .home .service-card>div{transform:translateY(.125rem)}
 .home .service-card h3{font-size:1.0625rem;margin-bottom:.3rem}
 .home .service-card p{font-size:.8125rem;line-height:1.5}
 .home .service-card.is-featured{background:linear-gradient(120deg,#0076ee,#00368d 70%,#005ae1);box-shadow:0 0 1.1rem #047affb0,inset 0 0 .65rem #66dfff77}
 .home .card-arrow{right:.75rem;bottom:1rem}
}

@media(min-width:960px){
.home .service-card{border-color:#174b7880;background:linear-gradient(125deg,#0b315bd9,#041e3cd9);height:6.875rem}
.home .service-card>img{transform:translateY(-.4rem);width:3.6rem;height:3.9rem}
.home .service-card h3{font-weight:650}
.home .service-card.is-featured{border-color:#77d9ff;background:radial-gradient(ellipse at 45% 30%,#0863dacc,transparent 85%),linear-gradient(120deg,#0576ddc9,#002968 75%,#0658bec9);box-shadow:0 0 1.45rem #047aff88,inset 0 0 .8rem #66dfff44}
}
@media(min-width:960px){
.home .service-card>img{transform:translateY(-.4rem) scale(1.07)}
.home .service-card>div{transform:none}
.home .service-card[data-service="lentivirus"],.home .service-card[data-service="gene-editing"]{padding-left:.75rem}
.home .service-card[data-service="adenovirus"],.home .service-card[data-service="molecular-biology"]{padding-left:1.25rem}
.home .service-card.is-featured{background:radial-gradient(ellipse at 42% 25%,#0863dad9,transparent 85%),linear-gradient(120deg,#087dedc9,#003482 75%,#086ae4c9)}
}

@media(min-width:960px){
.home .service-card.is-featured{background:radial-gradient(ellipse at 65% 5%,#0877f0dd,transparent 72%),linear-gradient(130deg,#0875ddd9,#00266ce0 63%,#075bd8db);border-color:#80dfff;box-shadow:0 0 1.4rem #087cff80,inset 0 0 .6rem #59c7ff60}
}
@media(min-width:960px){.home .service-card.is-featured{background:radial-gradient(ellipse at 78% 0%,#0866f6e6,transparent 73%),linear-gradient(130deg,#0875ddd9,#00266ce0 63%,#065beddf);box-shadow:0 0 1.5rem #087cff85,inset 0 0 .6rem #59c7ff60}}

@media(min-width:960px){
.home .service-card.is-featured{background:radial-gradient(ellipse at 48% 25%,#0a75f7b8,transparent 78%),linear-gradient(125deg,#087de0a8,#032872bd 63%,#0068edb8);border-color:#8cdbffe0;box-shadow:0 0 1.8rem #006dff70,inset 0 0 .6rem #61cfff45}
}

/* v9: reference-calibrated service-card surfaces and icon detail. */
@media(min-width:960px){
.home .service-card{border-color:#175486;background:radial-gradient(ellipse at 0 0,#14599d33,transparent 70%),linear-gradient(165deg,#023565,#011d41)}
.home .service-card h3{font-weight:700}
.home .service-card p{color:#c0d5e9}
.home .card-arrow{font-size:1.125rem;font-weight:600;line-height:1;background:#174780a0;color:#f1faff}
.home .service-card.is-featured{background:radial-gradient(ellipse at 0 0,#239fffcc,#076ad680 22%,transparent 55%),radial-gradient(ellipse at 100% 0,#006bffb3,transparent 60%),linear-gradient(0deg,#075df466,transparent 35%),linear-gradient(100deg,#0755b9,#02275f 47%,#003c9b);border-color:#82dbff;box-shadow:0 0 1.4rem #0074ff88,inset 0 0 .75rem #1084ffa8}
.home .service-card.is-featured .card-arrow{background:#0664eb;box-shadow:inset 0 0 0 1px #258fff5e}
.home .service-card[data-service="aav"]>img{transform:translate(-.1875rem,-.5rem) scale(1.02)}
.home .service-card[data-service="lentivirus"]>img{transform:translate(-.0625rem,-.5rem) scale(.99)}
.home .service-card[data-service="adenovirus"]>img{transform:translate(-.21875rem,-.4rem) scale(.98)}
.home .service-card[data-service="oncolytic"]>img{transform:translate(-.1875rem,-.4rem) scale(1.03)}
.home .service-card[data-service="stable-cell-line"]>img{transform:translate(-.0625rem,-.4625rem) scale(1.07)}
.home .service-card[data-service="molecular-biology"]>img{transform:translate(-.5rem,-.3375rem) scale(1.07)}
.home .service-card[data-service="custom-service"]>img{transform:translate(-.4375rem,-.4rem) scale(1.13)}
}
/* Second comparison: keep card centres dark and restore the blue perimeter. */
@media(min-width:960px){
.home .service-card{background:radial-gradient(ellipse at 0 100%,#07457344,transparent 70%),linear-gradient(180deg,#023266,#011e42)}
.home .service-card.is-featured{background:radial-gradient(ellipse at 0 0,#2cabffd9,#076ad680 22%,transparent 55%),radial-gradient(ellipse at 100% 0,#006bffb3,transparent 60%),radial-gradient(ellipse 55% 85% at 100% 100%,#0065ff8c,transparent 70%),radial-gradient(ellipse 30% 50% at 0 100%,#0880ffb3,transparent 70%),linear-gradient(180deg,#003cfb8f,transparent 35%),linear-gradient(0deg,#005fff66,transparent 35%),linear-gradient(100deg,#0963d5,#01184e 47%,#002f8e)}
}
@media(min-width:960px){
.home .service-card h3{font-size:1rem}
.home .service-card.is-featured h3{font-size:1.0625rem}
.home .service-card[data-service="lentivirus"] h3,.home .service-card[data-service="adenovirus"] h3,.home .service-card[data-service="oncolytic"] h3,.home .service-card[data-service="custom-service"] h3{font-size:.96875rem}
.home .service-card[data-service="adenovirus"]>div,.home .service-card[data-service="oncolytic"]>div{transform:translateX(.0625rem)}
.home .service-card[data-service="stable-cell-line"]>div{transform:translateX(.1875rem)}
.home .card-arrow{bottom:1.0625rem;font-size:0}
.home .card-arrow:after{content:"";width:.8rem;height:.8rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%23ecf8ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 7h10M7 2l5 5-5 5'/%3E%3C/svg%3E") center/contain no-repeat}
}
/* AAV copy spacing and button blue sampled from the reference. */
@media(min-width:960px){
.home .service-card.is-featured p{word-spacing:-.25rem;line-height:1.1875rem;transform:translateX(-.0625rem)}
.home .service-card.is-featured .card-arrow{background:#0058ef}
}

/* Responsive brand sources retain the existing image layout on all pages. */
.brand-image{display:contents}
