/* S-Solution brand overrides for the Iori theme (Appearance > Custom CSS) */
:root {
    --s-blue: #488EFE;
    --s-blue-light: #EEF4FF;
    --s-blue-soft: #DCE8FF;
}

/* Logo sizes */
.header .header-logo img { max-height: 58px; width: auto; }
.footer .footer-1 img[alt] { max-height: 96px; width: auto; }
.footer .footer-1 .icon-socials img { max-height: 24px; }

/* Replace the theme's peach / teal tints with the brand blue */
.bg-2, .bg-grey-80, .bg-grey-60, .bg-4, .bg-8 { background-color: var(--s-blue-light) !important; }
.banner-about { background: none; }
.btn.btn-tag { background-color: var(--s-blue-soft); color: var(--primary-color); }
.title-line { color: var(--primary-color); }
.title-line::before { background-color: var(--s-blue); }

/* Hero image */
.banner-1 img { border-radius: 16px; box-shadow: 0 20px 50px rgba(37, 99, 235, .15); }

/* Services: 2 x 2 grid with brand colours */
.s-services .col-lg-4 { flex: 0 0 auto; width: 50%; }
@media (max-width: 991.98px) { .s-services .col-lg-4 { width: 100%; } }
.card-offer-2 { background-color: var(--s-blue-light); border: 1px solid var(--s-blue-soft); }
.card-offer-2:hover { background-color: #fff; border-color: var(--s-blue); box-shadow: 0 10px 30px rgba(37, 99, 235, .12); }
.card-offer-2 .card-image-bottom img { aspect-ratio: 3 / 2; object-fit: cover; }

/* Story blocks: keep portraits at a sensible height */
.box-story .img-reveal img { max-height: 620px; width: 100%; object-fit: cover; object-position: top; }

/* Team cards */
.card-team .card-image img { aspect-ratio: 4 / 5; object-fit: cover; object-position: top; border-radius: 12px; }

/* Consultation block image */
.box-get-in-touch img, .get-in-touch img { border-radius: 12px; }

/* Tags and centred team cards */
.btn.btn-tag, .btn-tag { background-color: var(--s-blue-soft) !important; color: var(--primary-color) !important; }
.team-section-blocks .card-team { text-align: center; }
.team-section-blocks .card-team .card-image img { width: 100%; max-width: 300px; margin: 0 auto; display: block; }
.team-section-blocks .card-team .card-image { max-width: 300px; margin: 0 auto 12px; }

/* Core value list: blue ticks instead of the theme's green ones */
.list-core-value li .ticked {
    background: var(--s-blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") no-repeat 50% / 14px;
}
.box-core-value .shape-left { display: none; }

/* Story blocks: no overlap between consecutive items */
.box-story-1 { margin-bottom: 40px !important; }
