/* Owner refinement · 2026-10-31. Preserve the approved page compositions. */

.home-language-suggestion {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    margin-top: 8px;
    color: #3e6651;
    font-size: 12px;
    line-height: 1.8;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.home-language-suggestion[lang='en'] { font-family: 'Inter', Arial, sans-serif; }
.home-language-suggestion[lang='ar'] { font-family: 'Dana', Tahoma, sans-serif; }

/* The attribution remains accessible without adding a header utility icon. */
.footer-bottom > div {
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 20px;
}
.footer-language-disclosure {
    position: relative;
    color: #526958;
}
.footer-language-disclosure summary {
    cursor: pointer;
    list-style: none;
    white-space: nowrap;
}
.footer-language-disclosure summary::-webkit-details-marker { display: none; }
.footer-language-disclosure summary:hover,
.footer-language-disclosure[open] summary { color: var(--green); text-decoration: underline; text-underline-offset: 4px; }
.footer-language-disclosure > div {
    position: absolute;
    z-index: 45;
    inset-inline-start: 0;
    bottom: calc(100% + 12px);
    width: 280px;
    max-width: calc(100vw - 48px);
    padding: 18px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 10px 40px #173d2926;
    font-size: 12px;
    line-height: 1.9;
}
.footer-language-disclosure p { margin-bottom: 10px; }
.footer-language-disclosure > div a { display: inline-block; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.project-carousel-toolbar { justify-content: flex-end; }

/* The company story occupies the upper field; the original facts anchor it below. */
.about-copy { display: flex; flex-direction: column; min-height: 460px; }
.about-copy-story > p:not(.eyebrow) { max-width: none; text-align: justify; line-height: 2.05; }
.about-copy .trust-facts {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-block-start: auto;
    padding-block-start: 30px;
    gap: 22px;
}
.about-copy .trust-facts > div { min-width: 0; grid-column: auto; }

/* Capability 01 retains its editorial introduction. 02–04 gain a visual hierarchy. */
.project-narrative { gap: 24px; }
.project-capability-card {
    display: block;
    padding: 28px 32px 30px;
    border: 0;
    border-radius: 20px;
    background: #edf3ee;
}
.project-capability-card.capability-tone-2 { background: #eef3f4; }
.project-capability-card.capability-tone-0 { background: #f4f2e8; }
.project-capability-card > .capability-heading,
.project-capability-card:last-child:nth-child(even) > .capability-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 18px;
}
.capability-heading .tiva-icon { width: 68px; height: 68px; }
.capability-heading .capability-index { padding: 0; flex: none; font-size: 23px; color: #496a55; }
.project-capability-card h2 { margin-bottom: 12px; }
.project-capability-card p { margin-bottom: 0; }
.project-capability-card ul {
    display: grid;
    gap: 10px;
    list-style: none;
    padding: 18px 0 0;
    margin: 18px 0 0;
    border-top: 1px solid #ceddd3;
}
.project-capability-card li { position: relative; padding-inline-start: 19px; margin: 0; }
.project-capability-card li::before {
    content: '';
    position: absolute;
    inset-inline-start: 1px;
    top: .85em;
    width: 6px;
    height: 6px;
    background: #4d7a60;
    border-radius: 2px;
}
.project-capability-card:last-child:nth-child(even) > .capability-copy {
    display: grid;
    grid-template-columns: 1fr 1.7fr;
    gap: 12px 40px;
    align-items: start;
}
.project-capability-card:last-child:nth-child(even) h2 { max-width: 390px; }
.project-capability-card:last-child:nth-child(even) ul { margin: 0; }

/* Eight capabilities share a family, with alternating icon-led and side-led rows. */
.team-feature-grid { gap: 24px; }
.team-feature-grid .team-feature {
    display: block;
    padding: 30px;
    border: 0;
    border-radius: 20px;
    background: #edf4ed;
    min-width: 0;
}
.team-feature-grid .feature-tone-1 { background: #eef3f4; }
.team-feature-grid .feature-tone-2 { background: #f6f2e6; }
.team-feature-grid .feature-tone-3 { background: #f1f3ed; }
.feature-identity {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}
.feature-identity::after { content: ''; height: 1px; flex: 1; background: #cbdccf; order: 1; }
.feature-identity .tiva-icon { width: 68px; height: 68px; }
.feature-identity .feature-marker {
    order: 2;
    background: #ffffffb3;
    margin: 0;
    width: 38px;
    height: 38px;
    flex-basis: 38px;
    border-radius: 50%;
    font-size: 12px;
    color: #3c614a;
}
.team-feature-grid .team-feature:nth-child(4n + 3),
.team-feature-grid .team-feature:nth-child(4n + 4) { display: grid; grid-template-columns: 68px minmax(0, 1fr); gap: 24px; }
.team-feature:nth-child(4n + 3) .feature-identity,
.team-feature:nth-child(4n + 4) .feature-identity { flex-direction: column; gap: 16px; margin: 0; }
.team-feature:nth-child(4n + 3) .feature-identity::after,
.team-feature:nth-child(4n + 4) .feature-identity::after { display: none; }
.team-feature-grid h3 { margin-bottom: 12px; }
.team-feature-grid p { margin-bottom: 18px; }
.team-feature-grid ul { display: grid; list-style: none; gap: 9px; padding: 0; margin: 0; font-size: 12px; }
.team-feature-grid li { display: flex; align-items: baseline; gap: 10px; margin: 0; color: #3f5d4b; }
.team-feature-grid li::before { content: ''; width: 5px; height: 5px; flex: 0 0 5px; border-radius: 50%; background: #567c60; }
.team-connection-visual > .accounting-source:first-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    width: 138px;
    height: 128px;
    padding: 12px;
}
.accounting-source .tiva-icon { width: 58px; height: 58px; }
.accounting-source small { font-size: 11px; line-height: 1.7; font-weight: 550; text-align: center; }
.team-closing {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(120deg, #e4eee5, #f2f6ed 65%, #edf2df);
    border-radius: 24px;
    padding: 32px 40px;
    margin-bottom: 56px;
}
.team-closing::before {
    content: '';
    position: absolute;
    z-index: -1;
    inset-inline-end: -90px;
    bottom: -220px;
    width: 350px;
    height: 350px;
    border: 1px solid #afc7b47a;
    border-radius: 50%;
    box-shadow: 0 0 0 35px #ffffff45, 0 0 0 70px #ffffff25;
}
.team-closing > div:first-child { max-width: 780px; }
.team-closing .eyebrow { margin-bottom: 10px; }
.team-closing h2 { margin-bottom: 12px; }
.team-closing p:last-child { margin: 0; }
.team-closing > div:last-child { gap: 10px; min-width: 200px; }
.team-closing-brand { width: 110px; height: 55px; object-fit: contain; }
.team-closing .button { min-width: 176px; }
.team-official-link { color: #405f4b; }

/* Four complete editorial cells remove the isolated half-row. */
.about-editorial { gap: 24px; }
.about-editorial .about-editorial-card,
.about-editorial .about-editorial-card:first-child,
.about-editorial .about-editorial-card:last-child {
    display: block;
    grid-column: auto;
    max-width: none;
    padding: 28px 30px;
    border-radius: 20px;
    background: #f0f5ef;
}
.about-editorial .about-editorial-tone-1 { background: #edf3f4; }
.about-editorial .about-editorial-tone-2 { background: #f6f3e9; }
.about-editorial .about-editorial-tone-3:last-child { background: #e6eee7; }
.about-editorial .about-editorial-tone-1,
.about-editorial .about-editorial-tone-2 { display: grid; grid-template-columns: 62px minmax(0, 1fr); gap: 22px; }
.about-editorial-identity { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 17px; }
.about-editorial-tone-1 .about-editorial-identity,
.about-editorial-tone-2 .about-editorial-identity { flex-direction: column; justify-content: flex-start; gap: 20px; margin: 0; }
.about-editorial-identity .tiva-icon { width: 62px; height: 62px; }
.about-editorial-identity .capability-index { flex: none; font-size: 22px; color: #496a55; padding: 0; }
.about-editorial .about-editorial-card h2,
.about-editorial .about-editorial-card:first-child h2 { font-size: 25px; }
.about-editorial .about-editorial-card p,
.about-editorial .about-editorial-card:first-child p { font-size: 15px; margin-bottom: 0; }
.about-next {
    align-items: center;
    gap: 26px;
    border-radius: 18px;
    background: #f0f5ef;
    padding: 26px 30px;
    margin-bottom: 44px;
}
.about-next > div { max-width: 820px; }
.about-next h2 { font-size: 25px; margin-bottom: 9px; }
.about-next p { margin: 0; font-size: 14px; }
.about-next .button { max-width: none; white-space: nowrap; padding: 11px 18px; min-width: 0; gap: 12px; }

.author-avatar { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; object-position: center 30%; flex-shrink: 0; background: #e9eee8; }
.contact-oman-phone { display: block; margin-top: 10px; }

.article-context-note { max-width: 850px; margin-block: 26px 0; padding: 20px 24px; border-inline-start: 3px solid #93b49f; border-radius: 0 10px 10px 0; background: #f0f5ef; }
.article-context-note p { margin: 0; font-size: 14px; line-height: 2; color: #46634f; }
.article-related-context { margin-top: 36px; padding: 24px 28px; background: #edf3ee; border-radius: 16px; }
.article-related-context h2 { font-size: 22px; margin: 0 0 14px; }
.article-related-context a { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-block: 12px; color: #285c41; font-size: 14px; line-height: 1.9; }
.article-related-context a + a { border-top: 1px solid #d4e1d8; }
.article-related-context a:hover > span:first-child { text-decoration: underline; text-underline-offset: 4px; }
.article-related-context .direction-arrow { flex-shrink: 0; }
.retired-service { max-width: 900px; padding-block: 64px 76px; }
.retired-service::before { content: ''; display: block; width: 48px; height: 3px; margin-bottom: 28px; background: #7ca58c; border-radius: 2px; }
.retired-service h1 { font-size: clamp(30px, 3.2vw, 42px); line-height: 1.55; }
.retired-service .lead { font-size: 17px; line-height: 2; max-width: 800px; }
.retired-service .actions { margin-top: 26px; flex-wrap: wrap; }

@media (max-width: 1100px) {
    .about-copy .trust-facts { gap: 14px; }
    .about-copy .trust-facts strong { font-size: 23px; }
    .about-copy .trust-facts span { font-size: 10px; }
    .team-feature-grid .team-feature { padding: 25px; }
    .team-feature-grid .team-feature:nth-child(4n + 3),
    .team-feature-grid .team-feature:nth-child(4n + 4) { grid-template-columns: 52px minmax(0, 1fr); gap: 18px; }
    .feature-identity .tiva-icon { width: 52px; height: 52px; }
    .team-closing { padding: 30px; }
    .project-capability-card { padding: 26px; }
}
@media (max-width: 800px) {
    .project-capability-card:last-child:nth-child(even) > .capability-copy { display: block; }
    .project-capability-card:last-child:nth-child(even) h2 { max-width: none; }
    .project-capability-card:last-child:nth-child(even) ul { margin-top: 18px; }
    .team-feature-grid { gap: 20px; }
    .team-feature-grid .team-feature:nth-child(4n + 3),
    .team-feature-grid .team-feature:nth-child(4n + 4) { display: block; }
    .team-feature:nth-child(4n + 3) .feature-identity,
    .team-feature:nth-child(4n + 4) .feature-identity { flex-direction: row; margin-bottom: 20px; }
    .team-feature:nth-child(4n + 3) .feature-identity::after,
    .team-feature:nth-child(4n + 4) .feature-identity::after { display: block; }
    .team-closing { align-items: flex-start; }
    .team-closing > div:last-child { min-width: 0; align-items: flex-start; }
    .team-closing-brand { display: none; }
    .about-next { align-items: flex-start; }
    .about-editorial .about-editorial-tone-1,
    .about-editorial .about-editorial-tone-2 { display: block; }
    .about-editorial-tone-1 .about-editorial-identity,
    .about-editorial-tone-2 .about-editorial-identity { flex-direction: row; justify-content: space-between; margin-bottom: 17px; }
}
@media (max-width: 700px) {
    .about-copy { min-height: 0; }
    .about-copy .trust-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; padding-top: 24px; margin-top: 12px; }
    .about-copy .trust-facts strong { font-size: 24px; }
    .about-copy .trust-facts span { font-size: 12px; }
    .footer-bottom { position: relative; }
    .footer-bottom > div { justify-content: center; gap: 10px 18px; }
    .footer-language-disclosure { position: static; }
    .footer-language-disclosure > div { inset-inline: auto; left: 50%; transform: translateX(-50%); }
}
@media (max-width: 600px) {
    .project-narrative { gap: 18px; }
    .project-capability-card { padding: 23px 21px; border-radius: 17px; }
    .capability-heading .tiva-icon { width: 58px; height: 58px; }
    .capability-heading .capability-index { font-size: 19px; }
    .project-capability-card ul { font-size: 12px; gap: 10px; }
    .team-feature-grid .team-feature { padding: 23px; border-radius: 17px; }
    .team-feature-grid h3 { font-size: 21px; }
    .feature-identity { margin-bottom: 16px; }
    .team-connection-visual > .accounting-source:first-child { width: 118px; height: 108px; padding: 10px; }
    .accounting-source .tiva-icon { width: 48px; height: 48px; }
    .accounting-source small { font-size: 10px; }
    .team-connection-visual { gap: 12px; }
    .team-connection-visual > img { width: 92px; }
    .team-closing { padding: 26px 23px; border-radius: 20px; margin-bottom: 38px; }
    .team-closing h2 { font-size: 26px; }
    .about-editorial { gap: 18px; }
    .about-editorial .about-editorial-card,
    .about-editorial .about-editorial-card:first-child,
    .about-editorial .about-editorial-card:last-child { padding: 23px; border-radius: 17px; }
    .about-editorial .about-editorial-card h2,
    .about-editorial .about-editorial-card:first-child h2 { font-size: 23px; }
    .about-editorial .about-editorial-card p,
    .about-editorial .about-editorial-card:first-child p { font-size: 14px; }
    .about-next { padding: 24px; margin-bottom: 35px; gap: 20px; }
    .about-next h2 { font-size: 23px; }
    .about-next .button { font-size: 12px; }
    .author-avatar { width: 40px; height: 40px; }
    .article-context-note { padding: 18px 20px; }
    .article-context-note p { font-size: 13px; }
    .article-related-context { padding: 21px; }
    .article-related-context h2 { font-size: 21px; }
    .article-related-context a { font-size: 13px; gap: 18px; }
    .retired-service { padding-block: 38px 46px; }
    .retired-service h1 { font-size: 29px; }
    .retired-service .lead { font-size: 15px; }
    .retired-service .actions .button { min-width: 124px; padding-inline: 18px; }
}
