/* Catalogue pages: the same light editorial language as the home. */
.capability-page { --ink:#102b43; --paper:#fff; --copy:#41566b; --muted:#556b7f; background:#fff; color:var(--ink); }
.capability-page .page-main { position:relative; overflow:clip; background:radial-gradient(ellipse at 100% 5%,#e9f0f94d,transparent 50%),#fff; padding-bottom:70px; }
.capability-page .inner-cursor { width:25px; height:25px; border:0; border-radius:0; background:transparent; }
.capability-page .inner-cursor::before { content:''; position:absolute; inset:0; border:1px solid #003a8f80; transform:rotate(45deg); }
.capability-page .inner-cursor.is-over { width:40px; height:40px; }
.business-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); align-items:center; gap:5vw; max-width:1600px; margin:auto; padding:164px 6vw 64px; }
.business-hero h1 { margin:0; font-size:clamp(48px,5.8vw,88px); line-height:1.04; letter-spacing:-.055em; font-weight:400; text-wrap:balance; }
.business-hero h1 em { color:#003a8f; font-style:normal; }
.business-hero p { max-width:570px; margin:25px 0 0; color:var(--copy); font-size:17px; line-height:1.7; }
.business-jumps { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.business-jumps a { display:inline-flex; align-items:center; min-height:38px; padding:8px 14px; color:#003a8f; border:1px solid #d5e0eb; border-radius:999px; background:#fff9; font-size:12px; line-height:1.4; transition:border-color .2s,background .2s; }
.business-jumps a:hover { border-color:#9cb4d4; background:#edf4fc; }
.business-wrap { width:min(1408px,88%); margin:auto; }
.business-section { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr); gap:5vw; padding:64px 0; scroll-margin-top:100px; border-top:1px solid #dce4eb; }
.business-section-title h2 { max-width:320px; margin:0; font-size:clamp(29px,3vw,44px); font-weight:400; line-height:1.15; letter-spacing:-.04em; text-wrap:balance; }
.business-section-body { min-width:0; }
.business-section-body > p { max-width:850px; }
.business-section p { margin:0 0 24px; color:var(--copy); font-size:16px; line-height:1.8; }
.business-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 36px; margin-block:8px 24px; }
.business-item { min-width:0; padding:0; }
.business-item h3 { margin:0 0 12px; font-size:23px; line-height:1.2; font-weight:400; letter-spacing:-.025em; color:#003a8f; }
.business-item p { margin-bottom:0; font-size:14px; line-height:1.75; }
.business-number { display:block; margin-block:12px; color:#003a8f; font-size:clamp(28px,3vw,44px); font-weight:400; line-height:1.2; letter-spacing:-.04em; }
.business-number--large { margin:0 0 22px; font-size:clamp(44px,5vw,72px); }
.business-feature { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr); align-items:start; gap:30px; }
.business-feature .business-grid { grid-template-columns:1fr; gap:24px; margin:0; }
.business-feature .business-item h3 { font-size:21px; }
.business-photo { display:block; overflow:hidden; border-radius:24px; background:#edf1f5; }
.business-photo img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.business-list { list-style:none; margin:0 0 24px; padding:0; }
.business-list li { position:relative; padding-inline-start:18px; margin-block:12px; color:var(--copy); font-size:15px; line-height:1.7; }
.business-list li::before { content:''; position:absolute; inset-inline-start:0; top:.7em; width:5px; height:5px; border-radius:50%; background:#b8420d; }
.business-link { display:inline-flex; align-items:center; gap:22px; min-height:44px; padding-block:8px; color:#003a8f; font-size:14px; line-height:1.5; }
.business-link i { font-style:normal; color:#b8420d; font-size:22px; transition:transform .25s; }
.business-link:hover i { transform:translate(3px,-3px); }
.business-next { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; margin:24px 0 0; padding:34px 38px; border:1px solid #d5e0eb; background:#f3f7fc; border-radius:24px; }
.business-next h2 { margin:0; max-width:470px; font-size:clamp(28px,3vw,42px); line-height:1.15; font-weight:400; letter-spacing:-.035em; }
.business-next > div { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px 30px; }
.strategy-direction { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,72px); padding:clamp(30px,4vw,56px); margin-bottom:64px; border-radius:28px; background:#071b2e; color:#fff; scroll-margin-top:110px; }
.strategy-direction article { min-width:0; }
.strategy-direction h2 { margin:0 0 22px; font-size:clamp(28px,3vw,40px); font-weight:400; letter-spacing:-.035em; line-height:1.2; }
.strategy-direction article:first-child h2 { color:#ffad72; }
.strategy-direction p { margin:0; color:#dde7f1; font-size:16px; line-height:1.85; }
#values .business-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 36px; }
#values .business-list li { margin:0; }
.strategy-production { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:8px 0 14px; }
.strategy-production .business-link { justify-content:space-between; gap:16px; padding:18px 20px; border:1px solid #d5e0eb; border-radius:16px; background:#f7f9fc; }
.strategy-markets { display:flex; flex-wrap:wrap; gap:10px; padding:0; margin:0 0 26px; list-style:none; }
.strategy-markets li { padding:10px 16px; border-radius:999px; background:#edf3fb; color:#003a8f; font-size:14px; line-height:1.5; }
html[lang="fa"] .strategy-direction h2 { line-height:1.6; letter-spacing:0; }
html[lang="fa"] .strategy-direction p { line-height:2; }
.capability-page :is(a,button):focus-visible { outline:2px solid #003a8f; outline-offset:5px; }
html[lang="fa"] .business-hero h1 { font-size:clamp(38px,4.8vw,68px); line-height:1.55; }
html[lang="fa"] :is(.business-section-title h2,.business-next h2) { line-height:1.6; }
html[lang="fa"] .business-item h3 { line-height:1.6; }
html[lang="fa"] .business-number { line-height:1.8; font-size:clamp(26px,2.5vw,37px); }
html[lang="fa"] .business-number--large { font-size:clamp(36px,4.2vw,58px); }
html[lang="fa"] .business-link i { transform:scaleX(-1); }
@media(max-width:1100px) { .business-feature { grid-template-columns:1fr; }.business-photo { max-width:400px; }.business-hero { gap:3vw; }.business-section { grid-template-columns:minmax(0,.65fr) minmax(0,1.5fr); gap:4vw; } }
@media(max-width:720px) {
 .strategy-direction { grid-template-columns:1fr; gap:34px; padding:30px 24px; margin-bottom:40px; border-radius:22px; scroll-margin-top:82px; }
 .strategy-direction p { font-size:15px; }.strategy-direction h2 { margin-bottom:16px; }
 #values .business-list { grid-template-columns:1fr; gap:18px; }
 .business-hero { grid-template-columns:1fr; gap:24px; padding:112px 20px 40px; }
 .business-hero h1 { font-size:clamp(40px,9vw,62px); }.business-hero p { font-size:16px; margin-top:20px; }
 .business-diagram { max-width:420px; justify-self:center; }
 .business-wrap { width:calc(100% - 40px); }.business-section { grid-template-columns:1fr; gap:26px; padding:40px 0; scroll-margin-top:82px; }
 .business-section-title h2 { max-width:none; font-size:32px; }.business-grid { gap:26px 22px; }.business-item h3 { font-size:21px; }
 .business-feature { grid-template-columns:minmax(0,1fr); gap:28px; }.business-photo { max-width:none; }.business-feature .business-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .business-next { grid-template-columns:1fr; gap:20px; padding:28px 24px; }.business-next > div { justify-content:flex-start; }
 html[lang="fa"] .business-hero h1 { font-size:clamp(32px,8vw,45px); }
}
@media(max-width:450px) { .business-grid,.business-feature .business-grid,.strategy-production { grid-template-columns:minmax(0,1fr); }.business-section p { font-size:15px; }.business-item p { font-size:14px; }.business-jumps a { padding:7px 11px; font-size:11px; }.strategy-markets li { padding:9px 13px; font-size:13px; } }
@media(prefers-reduced-motion:reduce) { .business-link i,.business-jumps a { transition:none; } }
