/* Institutional playbooks sourced from RMOZ.sa patterns, re-scoped to verified RMOZ.org boundaries. */
.institutional-teaser,.institutional-method,.institutional-segment,.institutional-next { max-width:1220px; margin-inline:auto; }
.institutional-teaser { padding:64px 30px; border-top:1px solid #d9e1d5; }
.institutional-teaser-heading { display:flex; align-items:end; justify-content:space-between; gap:32px; margin-bottom:25px; }
.website .institutional-teaser-heading h2 { font-size:clamp(1.8rem,3vw,2.8rem); line-height:1.34; max-width:590px; }
.website .institutional-teaser-heading>p { max-width:390px; font-size:.91rem; color:#50665b; }
.institutional-teaser-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.institutional-teaser-card { display:flex; flex-direction:column; align-items:start; gap:10px; min-width:0; padding:27px 24px; background:#eef1e9; border:1px solid #d4e0d5; border-radius:10px; text-decoration:none; color:#163c2e; transition:transform .2s,border-color .2s; }
.institutional-teaser-card:hover { border-color:#9e854c; transform:translateY(-3px); }
.institutional-teaser-card:focus-visible { outline:3px solid #947438; outline-offset:3px; }
.institutional-teaser-icon,.institutional-card-icon { width:46px; height:46px; border-radius:9px; display:grid; place-items:center; color:#15503e; background:#dce9de; }
.institutional-teaser-card strong { font-weight:700; font-size:1.18rem; line-height:1.5; }
.institutional-teaser-card>span:not(.institutional-teaser-icon):not(.institutional-teaser-link) { font-size:.86rem; color:#53665a; line-height:1.7; }
.institutional-teaser-link { display:inline-flex; align-items:center; gap:9px; margin-top:auto; padding-top:17px; font-weight:650; font-size:.85rem; color:#1c6549; }
.institutional-teaser-link .rmoz-icon,.institutional-related .rmoz-icon { width:17px; height:17px; }
.website .institutional-teaser-note { margin:18px 0 0; font-size:.78rem; color:#627469; }
.website .institutional-hero { margin-inline:auto; padding-inline:26px; }
.institutional-scope { max-width:1194px; margin:0 auto 23px; padding:18px 23px; display:flex; align-items:flex-start; gap:13px; border-inline-start:4px solid #a1844b; border-radius:7px; background:#edf2e9; color:#284a3b; }
.institutional-scope>.rmoz-icon { flex:none; color:#8c6e34; margin-top:3px; }
.website .institutional-scope p { margin:0; font-size:.84rem; line-height:1.8; }
.institutional-anchor-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:1194px; margin:0 auto 47px; gap:10px; }
.institutional-anchor-nav a { display:flex; align-items:center; gap:10px; padding:14px 16px; min-height:50px; border:1px solid #cbd8c8; border-radius:7px; color:#174935; font-size:.88rem; font-weight:700; text-decoration:none; background:#fffdf8; }
.institutional-anchor-nav a:hover { background:#eaf0e8; border-color:#a38752; }
.institutional-anchor-nav a .rmoz-icon { width:22px; height:22px; flex:none; }
.institutional-method { padding:37px 32px 42px; background:#123e32; color:#fbf9f4; border-radius:14px; margin-bottom:62px; }
.institutional-method>div { max-width:860px; }
.website .institutional-method .eyebrow { color:#e3cba0; }
.website .institutional-method h2 { color:#fbf9f4; font-size:clamp(1.75rem,2.7vw,2.5rem); line-height:1.4; margin:0 0 14px; }
.website .institutional-method p { color:#e1e9e0; font-size:.86rem; line-height:1.7; }
.institutional-method ol { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:32px 0 0; padding:0; }
.institutional-method li { min-width:0; padding:20px; border:1px solid #ffffff35; border-radius:7px; background:#ffffff0d; }
.institutional-method li>span { display:block; font-size:1.25rem; font-weight:700; color:#e3cba0; margin-bottom:13px; }
.institutional-method li strong { display:block; font-size:.98rem; font-weight:700; margin-bottom:7px; }
.website .institutional-method li p { margin:0; font-size:.8rem; line-height:1.65; }
.institutional-segment { padding:0 24px 60px; scroll-margin-top:130px; }
.institutional-segment-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:24px; }
.website .institutional-segment-heading h2 { font-size:clamp(1.8rem,2.7vw,2.6rem); line-height:1.35; }
.website .institutional-segment-heading p { max-width:420px; color:#4d6355; font-size:.9rem; }
.institutional-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.institutional-card { display:flex; flex-direction:column; min-width:0; border:1px solid #d9e1d6; border-radius:10px; padding:24px; background:#fffefa; }
.institutional-card-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.institutional-phase { padding:7px 11px; color:#655524; background:#f3eee0; border:1px solid #e4d7ac; border-radius:99px; font-size:.76rem; font-weight:650; }
.website .institutional-card h3 { font-size:1.24rem; line-height:1.45; font-weight:700; margin:0 0 12px; }
.website .institutional-card>p { font-size:.87rem; line-height:1.75; color:#536356; margin:0 0 18px; }
.institutional-details { margin-top:auto; border:1px solid #d9e5d9; border-radius:7px; background:#f5f7f1; }
.institutional-details summary { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:15px; list-style:none; cursor:pointer; font-size:.86rem; color:#20513c; font-weight:700; }
.institutional-details summary::-webkit-details-marker { display:none; }
.institutional-details summary .rmoz-icon { width:17px; height:17px; }
.institutional-details[open] summary .rmoz-icon { transform:rotate(180deg); }
.institutional-details dl { margin:0; padding:0 16px 16px; }
.institutional-details dl>div { padding:10px 0; border-top:1px solid #dbe3d8; }
.institutional-details dt { font-size:.78rem; font-weight:700; margin-bottom:5px; color:#1a5138; }
.institutional-details dd { margin:0; font-size:.83rem; line-height:1.7; color:#415b4b; overflow-wrap:anywhere; }
.institutional-related { display:inline-flex; align-items:center; gap:9px; margin-top:17px; font-size:.84rem; font-weight:700; color:#185943; text-decoration:none; align-self:start; }
.institutional-related:hover { text-decoration:underline; }
.institutional-next { display:grid; grid-template-columns:1.1fr .9fr; gap:26px; border-radius:12px; background:#edf1e7; border:1px solid #d9e1d5; padding:34px; margin-bottom:20px; }
.website .institutional-next h2 { font-size:clamp(1.75rem,2.55vw,2.45rem); line-height:1.4; margin:0 0 15px; }
.website .institutional-next p { color:#53695a; font-size:.89rem; }
.website .institutional-next h3 { font-weight:700; font-size:1.12rem; }
.institutional-next ul { list-style:none; padding:0; margin:0; }
.institutional-next li { display:flex; align-items:start; gap:9px; margin:8px 0; font-size:.84rem; line-height:1.6; }
.institutional-next li .rmoz-icon { color:#2a7956; flex:none; width:18px; height:18px; }
.institutional-next-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:12px 25px; align-items:center; }
.institutional-next-actions .button { display:inline-flex; align-items:center; gap:12px; }
.institutional-next-actions .rmoz-icon { width:17px; height:17px; }
.website .institutional-final-note { max-width:1175px; margin:0 auto 70px; padding-inline:20px; font-size:.8rem; color:#627466; }
@media (max-width:960px) {
 .institutional-teaser-heading,.institutional-segment-heading { display:block; }
 .institutional-teaser-heading>p,.institutional-segment-heading>p { max-width:700px; margin-top:17px; }
 .institutional-teaser-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .institutional-method ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
 .institutional-teaser { padding:48px 18px; }
 .institutional-teaser-grid,.institutional-card-grid,.institutional-anchor-nav,.institutional-next { grid-template-columns:1fr; }
 .institutional-teaser-card { min-height:150px; }
 .institutional-anchor-nav { margin:0 16px 30px; }
 .institutional-hero { padding-inline:18px; }
 .institutional-scope { margin-inline:16px; }
 .institutional-method { margin:0 12px 40px; padding:26px 18px; }
 .institutional-method ol { gap:8px; }
 .institutional-method li { padding:12px; }
 .institutional-segment { padding:0 16px 40px; scroll-margin-top:90px; }
 .institutional-card { padding:19px; }
 .institutional-next { margin-inline:12px; padding:24px 19px; }
 .institutional-next-actions { grid-column:1; }
 .institutional-next-actions .button,.institutional-next-actions .text-link { width:100%; }
}
@media (max-width:360px) { .institutional-method ol { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .institutional-teaser-card { transition:none; } }
