/* Shared reading rhythm for news, resources and native WordPress articles. */
body .irota-editorial-entry .irota-page-head--editorial {
    padding: clamp(1.25rem, 3vw, 2.5rem) !important;
    min-block-size: 0;
}
body .irota-editorial-entry .irota-page-head--editorial h1 {
    font-size: clamp(1.45rem, 2.55vw, 2.35rem) !important;
    line-height: 1.65 !important;
    font-weight: 800;
    text-align: right;
    text-wrap: pretty;
    margin-block: .6rem 1rem;
}
body .irota-editorial-entry .irota-editorial-entry__content {
    direction: rtl;
    font-size: 1rem;
    line-height: 2.15;
    padding: clamp(1rem, 3vw, 2.5rem);
}
body .irota-editorial-entry__content :is(p, li),
body :is(.irota-editorial-archive-card__body,.irota-editorial-featured-card__body,.irota-editorial-index__card,.irota-card) > p:not([class]) {
    text-align: justify;
    text-align-last: start;
    text-justify: inter-word;
    overflow-wrap: break-word;
}
body .irota-editorial-entry__content p { margin-block: 0 1.25em; }
body .irota-editorial-entry__content :is(h2,h3) {
    text-align: right;
    line-height: 1.8;
    color: #09564b;
    margin-block: 1.7em .65em;
    font-size: clamp(1.2rem, 1.8vw, 1.55rem);
}
body .irota-editorial-entry__content strong { font-weight: 800; }
body .irota-editorial-entry__content a:not([download]):not(.irota-btn) {
    color: #006c8b !important;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .25em;
    font-weight: 700;
}
body .irota-editorial-entry__content a:focus-visible { outline: 3px solid #b98e33; outline-offset: 4px; }
body .irota-editorial-entry__content a:not([download]):hover { color: #034d61 !important; }
body .irota-editorial-entry__content a[download]:hover { color: #fff !important; filter: brightness(.9); }
body .irota-prose :is(p,li) { text-align: justify; text-align-last: start; line-height: 2.1; }
body .irota-prose a:not(.irota-btn):not([download]) { color:#006c8b; text-decoration:underline; text-underline-offset:.25em; }
body .irota-prose strong { font-weight:800; }
body .irota-editorial-entry__content :is(img,figure) { max-inline-size: 100%; }
body .irota-editorial-entry__content img { height: auto; }
body .irota-editorial-entry__content blockquote { border-inline-start: 3px solid #bda35a; padding: 1rem 1.5rem; background: #f1f6f4; }
body .irota-editorial-entry .irota-editorial-entry__cover {
    inline-size: 100% !important;
    max-inline-size: 100% !important;
    margin: 1rem 0 0 !important;
    aspect-ratio: auto !important;
    padding: 0;
    background: #edf3f1;
    border-radius: 16px;
    overflow: hidden;
}
body .irota-editorial-entry .irota-editorial-entry__cover .irota-editorial-entry__cover-image {
    display: block;
    inline-size: 100% !important;
    block-size: auto !important;
    height: auto !important;
    max-block-size: 42rem !important;
    max-height: 42rem !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    border: 0;
    margin: 0;
}
body .irota-editorial-entry .irota-image-fit-cover .irota-editorial-entry__cover .irota-editorial-entry__cover-image {
    block-size: clamp(15rem,30vw,27rem) !important;
    height: clamp(15rem,30vw,27rem) !important;
    object-fit: cover !important;
}
body .irota-image-position-top .irota-editorial-entry__cover-image { object-position: center top !important; }
body .irota-image-position-bottom .irota-editorial-entry__cover-image { object-position: center bottom !important; }
body .irota-image-position-left .irota-editorial-entry__cover-image { object-position: left center !important; }
body .irota-image-position-right .irota-editorial-entry__cover-image { object-position: right center !important; }
body .irota-image-position-center .irota-editorial-entry__cover-image { object-position: center !important; }
body :is(.irota-editorial-archive-card__body,.irota-editorial-featured-card__body) > h3 { font-size: 1.15rem; line-height: 1.85; text-align: right; }
body :is(.irota-editorial-archive-card__body,.irota-editorial-featured-card__body) > p:not([class]) { font-size: .95rem; line-height: 2; }
body .irota-editorial-archive-card__media { position:relative; min-block-size:0; }
body .irota-editorial-archive-card__media img { position:absolute; inset:0; inline-size:100%; block-size:100%; height:100%; object-fit:cover; }
.irota-image-composition { padding: 1rem; border: 1px solid #d3e1dc; border-radius: 12px; background: #f5f9f7; }
@media (max-width:52rem) {
    body .irota-editorial-entry { inline-size: calc(100% - 1.25rem) !important; margin-inline: auto !important; }
    body .irota-editorial-entry__article { display: flex !important; flex-direction: column; gap: 0; padding: 0 !important; }
    body .irota-editorial-entry__layout { display: contents !important; }
    body .irota-editorial-entry__article > header { order: 0; }
    body .irota-editorial-entry .irota-editorial-entry__cover { order: 1; }
    body .irota-editorial-entry__main { order: 2; inline-size:100% !important; min-inline-size:0; }
    body .irota-editorial-entry__sidebar { order: 3; margin-block: 1.25rem; }
    body .irota-editorial-entry .irota-editorial-entry__cover .irota-editorial-entry__cover-image { max-height: none !important; max-block-size: none !important; }
    body .irota-editorial-entry .irota-editorial-entry__content { margin: 1rem 0 0 !important; padding: 1.1rem; font-size: 1rem; line-height: 2.05; }
    body .irota-editorial-entry .irota-page-head--editorial h1 { font-size: 1.4rem !important; }
    body :is(.irota-editorial-archive-card__media,.irota-editorial-featured-card__media) { inline-size:100%; padding:0; }
    body :is(.irota-editorial-archive-card__media,.irota-editorial-featured-card__media) img { inline-size:100%; margin:0; }
    body .irota-editorial-featured-card { grid-template-columns:1fr; }
    body .irota-editorial-featured-card__media { min-block-size:0; aspect-ratio:16/10; position:relative; }
    body .irota-editorial-featured-card__media img { position:absolute; inset:0; block-size:100%; height:100%; object-fit:cover; }
    body .irota-editorial-archive-card { grid-template-columns:1fr; grid-template-rows:auto auto; height:auto; min-block-size:0; }
    body .irota-editorial-archive-card__media { aspect-ratio:16/10; }
    body .irota-editorial-archive-card__body { padding:1rem; }
    body .irota-editorial-archive-card__body h3 { font-size:1.05rem; }
}
/* Membership access state and homepage editorial cards. */
body .irota-access-page { min-height:60vh; padding:clamp(2rem,6vw,5rem) 1rem; display:grid; place-items:center; background:radial-gradient(ellipse at top,#e8f1ec,transparent 65%); }
body .irota-access-card { width:min(100%,42rem); padding:clamp(1.5rem,4vw,3.25rem); border:1px solid #d7e4dc; border-top:4px solid #b99b50; border-radius:24px; background:#fff; box-shadow:0 18px 55px #174d3420; text-align:center; }
body .irota-access-card__icon { width:76px; height:76px; display:grid; place-items:center; margin:0 auto 1.25rem; background:#ecf3ef; color:#17583e; border-radius:22px; }
body .irota-access-card__icon svg { width:42px; height:42px; }
body .irota-access-card__eyebrow { color:#6a765f; font-size:.85rem; }
body .irota-access-card h1 { font-size:clamp(1.4rem,3vw,2rem); line-height:1.7; margin:.6rem 0 1rem; color:#123e2c; }
body .irota-access-card__description { font-size:1rem; line-height:2.1; color:#52655c; }
body .irota-access-card__actions { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; margin:1.75rem 0; }
body .irota-access-card__help { border-top:1px solid #e2ebe6; padding-top:1.25rem; font-size:.9rem; }
body .irota-access-card__help a,body .irota-access-card__back { color:#006c8b; text-underline-offset:4px; text-decoration:underline; }
body .irota-access-card__back { display:inline-block; margin-top:.75rem; font-size:.85rem; }
body .irota-home .irota-card-list > .irota-card { overflow:hidden; padding:0; border-radius:18px; background:#fff; display:flex; flex-direction:column; gap:0; box-shadow:0 8px 28px #174d340d; }
body .irota-home .irota-card__media { padding:0; margin:0; width:100%; aspect-ratio:16/10; overflow:hidden; position:relative; }
body .irota-home .irota-card__media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:0; margin:0; }
body .irota-home .irota-card__body { display:flex; flex-direction:column; gap:.85rem; padding:1.35rem; flex:1; }
body .irota-home .irota-card__body h3 { font-size:1.1rem; line-height:1.85; margin:0; text-align:right; }
body .irota-home .irota-card__body > .irota-card__excerpt { display:block; text-align:justify; text-align-last:start; text-justify:inter-word; font-size:.95rem; line-height:2; margin:0; overflow:visible; -webkit-line-clamp:unset; }
body .irota-home .irota-card__editorial-meta { display:flex; flex-wrap:wrap; gap:.5rem; margin:0; padding:0; border:0; }
body .irota-home .irota-card__date { display:flex; align-items:center; gap:.5rem; background:#f0f5f2; border-radius:6px; padding:.35rem .65rem; color:#496355; font-size:.78rem; }
body .irota-home .irota-card__date dt,body .irota-home .irota-card__date dd { margin:0; font-size:inherit; }
body .irota-home .irota-card__body > .irota-btn { align-self:flex-start; margin-top:auto; padding:.5rem 0; color:#006c8b; min-height:44px; }
@media(max-width:47.99rem) {
 body .irota-home .irota-card-list { grid-template-columns:minmax(0,1fr); gap:1.25rem; }
 body .irota-home .irota-action-grid--service-strip { grid-template-columns:minmax(0,1fr); gap:.75rem; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action { display:grid; grid-template-columns:48px minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; column-gap:.85rem; row-gap:.25rem; min-height:0; min-block-size:0; padding:1rem; border-radius:14px; background:#fff; }
 body .irota-home .irota-action-grid--service-strip .irota-card__icon-shell { grid-column:1; grid-row:1/3; width:48px; height:48px; inline-size:48px; block-size:48px; border-radius:14px; margin:0; }
 body .irota-home .irota-action-grid--service-strip .irota-card__icon { width:26px; height:26px; inline-size:26px; block-size:26px; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action h3 { grid-column:2; grid-row:1; font-size:.95rem; line-height:1.75; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action h3 a { min-block-size:0; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action > p:not(.irota-card__kicker) { grid-column:2; grid-row:2; font-size:.78rem; line-height:1.9; text-align:right; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action > .irota-btn { grid-column:3; grid-row:1/3; width:auto; inline-size:auto; min-width:44px; margin:0; font-size:0; }
 body .irota-home .irota-action-grid--service-strip .irota-card--action > .irota-btn::after { content:'←'; font-size:1.3rem; }
 body .irota-access-card__actions { flex-direction:column; }
 body .irota-home .irota-card__body { padding:1.1rem; }
}
/* Compact editorial frames: identical geometry for news and resources. */
body .irota-editorial-entry .irota-page-head--editorial { padding:1.35rem 1.6rem !important; }
body .irota-editorial-entry .irota-page-head--editorial h1 {
    max-inline-size:none !important; inline-size:100%; font-size:clamp(1.2rem,1.9vw,1.75rem) !important;
    line-height:1.85 !important; text-align:justify; text-align-last:start; text-wrap:wrap;
    overflow-wrap:normal; word-break:normal; margin-block:.5rem .8rem;
}
body .irota-editorial-entry .irota-editorial-entry__cover { aspect-ratio:16/9 !important; max-block-size:24rem; }
body .irota-editorial-entry .irota-editorial-entry__cover .irota-editorial-entry__cover-image,
body .irota-editorial-entry .irota-image-fit-cover .irota-editorial-entry__cover .irota-editorial-entry__cover-image {
    inline-size:100% !important; block-size:100% !important; height:100% !important;
    max-block-size:24rem !important; max-height:24rem !important; object-fit:cover !important; object-position:center top;
}
body .irota-editorial-featured-card { grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr); align-items:stretch; }
body .irota-editorial-featured-card__media { position:relative; min-block-size:0; block-size:18rem; aspect-ratio:auto; }
body .irota-editorial-featured-card__media img { position:absolute; inset:0; inline-size:100%; block-size:100%; height:100%; object-fit:cover; object-position:center top; }
body .irota-editorial-featured-card__body { padding:1.25rem; gap:.65rem; }
body :is(.irota-editorial-featured-card__body,.irota-editorial-archive-card__body) > p:not([class]) { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
body .irota-editorial-archive-card__media { block-size:12rem; aspect-ratio:auto; }
body .irota-editorial-archive-card__media img { object-position:center top; }
body .irota-editorial-entry__related .irota-related-item { padding-block:.65rem; border-block-end:1px solid #e3ebe6; }
body .irota-editorial-entry__related .irota-related-item__link { display:grid; grid-template-columns:64px minmax(0,1fr); gap:.65rem; align-items:center; }
body .irota-editorial-entry__related .irota-related-item__image { inline-size:64px; block-size:64px; object-fit:cover; border-radius:10px; margin:0; }
body .irota-editorial-entry__related .irota-related-item__title { font-size:.84rem; line-height:1.85; color:#075749; margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
body .irota-editorial-entry__related .irota-related-item__date { margin-inline-start:calc(64px + .65rem); font-size:.72rem; }
@media(max-width:52rem) {
    body .irota-editorial-entry .irota-page-head--editorial { padding:1rem 1.1rem !important; }
    body .irota-editorial-entry .irota-page-head--editorial h1 { font-size:1.2rem !important; }
    body .irota-editorial-featured-card { grid-template-columns:1fr; }
    body .irota-editorial-featured-card__media, body .irota-editorial-archive-card__media { block-size:auto; aspect-ratio:16/9; }
    body .irota-editorial-entry__sidebar { grid-template-columns:1fr; }
}
body .irota-editorial-archive__hero { min-block-size:0; align-items:center; }
body .irota-editorial-archive__hero-media { position:relative; block-size:14rem; min-block-size:0; margin:0; overflow:hidden; }
body .irota-editorial-archive__hero-media img { position:absolute; inset:0; inline-size:100%; block-size:100%; height:100%; object-fit:cover; object-position:center top; }
body .irota-editorial-archive__hero-copy { padding:1.5rem; }
body .irota-editorial-archive__hero-copy h1 { font-size:clamp(1.4rem,2.3vw,2rem); line-height:1.8; max-inline-size:none; }
@media(max-width:52rem) { body .irota-editorial-archive__hero-media { block-size:11rem; } }
/* Search: one aligned toolbar, with a compact two-row layout on phones. */
body .irota-search-page .irota-page-section--search,
body .irota-search-page .irota-page-section--results {
    margin-block:1.5rem 0; padding:clamp(1rem,2.5vw,1.75rem);
    border-radius:18px; text-align:start;
}
body .irota-search-page .irota-page-section--search h2,
body .irota-search-page .irota-page-section--results h2 { text-align:start; margin:0 0 1.15rem; font-size:1.2rem; }
body .irota-search-page form.irota-search {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(12rem,15rem) auto;
    grid-template-rows:auto 48px; gap:.55rem 1rem; align-items:end;
    inline-size:100%; max-inline-size:none; margin:0; text-align:start;
}
body .irota-search-page .irota-search__row { display:contents; }
body .irota-search-page label[for="irota-page-search-q"] { grid-column:1; grid-row:1; }
body .irota-search-page label[for="irota-page-search-type"] { grid-column:2; grid-row:1; }
body .irota-search-page .irota-search__label { margin:0; font-size:.88rem; text-align:start; }
body .irota-search-page #irota-page-search-q { grid-column:1; grid-row:2; }
body .irota-search-page #irota-page-search-type { grid-column:2; grid-row:2; cursor:pointer; padding-inline:1rem 2.25rem; }
body .irota-search-page form.irota-search button { grid-column:3; grid-row:2; padding-inline:1.65rem; white-space:nowrap; }
body .irota-search-page form.irota-search :is(input,select,button) {
    box-sizing:border-box; block-size:48px !important; min-block-size:48px !important;
    inline-size:100%; min-inline-size:0; max-inline-size:none; margin:0;
    border-radius:10px; font:inherit; font-size:.94rem; line-height:1.5;
}
body .irota-search-page form.irota-search :is(input,select):focus-visible { outline:3px solid #b9d9ce; outline-offset:2px; border-color:#26735a; }
@media(max-width:42rem) {
    body .irota-search-page form.irota-search { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto 48px auto 48px; gap:.5rem .75rem; }
    body .irota-search-page label[for="irota-page-search-q"],
    body .irota-search-page #irota-page-search-q { grid-column:1/-1; }
    body .irota-search-page label[for="irota-page-search-type"] { grid-column:1; grid-row:3; margin-block-start:.35rem; }
    body .irota-search-page #irota-page-search-type { grid-column:1; grid-row:4; }
    body .irota-search-page form.irota-search button { grid-column:2; grid-row:4; padding-inline:1.3rem; }
}
/* Contact page: consistent spacing, readable copy and balanced fields. */
body main.irota-contact { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; }
body main.irota-contact > :is(header,section,.irota-notice) { margin:0; min-inline-size:0; }
body main.irota-contact > .irota-page-section { padding:clamp(1.1rem,2.5vw,2rem); border-radius:18px; text-align:start; }
body main.irota-contact .irota-page-section > h2 { font-size:1.2rem; line-height:1.9; text-align:start; margin:0 0 1.1rem; }
body main.irota-contact .irota-contact-details { display:grid; gap:1rem; font-style:normal; text-align:start; line-height:2; }
body main.irota-contact .irota-contact-details p { margin:0; padding:0; max-inline-size:none; }
body main.irota-contact .irota-contact-details p:last-child { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; font-size:0; }
body main.irota-contact .irota-contact-details a { font-size:.95rem; padding:.5rem 1rem; border:1px solid #d5e4dc; border-radius:9px; background:#f4f8f5; color:#075b48; text-decoration:none; direction:ltr; }
body main.irota-contact .irota-prose { max-inline-size:none; text-align:start; }
body main.irota-contact .irota-prose h2 { font-size:1rem; line-height:1.9; color:#135f49; margin:1.25rem 0 .35rem; text-align:start; }
body main.irota-contact .irota-prose p { font-size:.97rem; line-height:2.1; text-align:justify; text-align-last:start; margin:0 0 1rem; overflow-wrap:anywhere; }
body main.irota-contact .irota-prose a { color:#006c8b; text-decoration:underline; text-underline-offset:.2em; }
body main.irota-contact form.irota-contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; inline-size:100%; max-inline-size:none; margin:0; }
body main.irota-contact .irota-contact-form > .irota-field { display:flex; flex-direction:column; gap:.5rem; margin:0; min-inline-size:0; }
body main.irota-contact .irota-contact-form .irota-field__label { margin:0; font-size:.9rem; text-align:start; }
body main.irota-contact .irota-contact-form .irota-field:has(textarea) { grid-column:1/-1; }
body main.irota-contact .irota-contact-form .irota-field__control { box-sizing:border-box; inline-size:100%; max-inline-size:none; margin:0; border-radius:10px; padding:.75rem 1rem; font:inherit; font-size:.95rem; }
body main.irota-contact .irota-contact-form input.irota-field__control { block-size:48px; }
body main.irota-contact #irota-contact-email { direction:ltr; text-align:left; }
body main.irota-contact .irota-contact-form textarea { min-block-size:160px !important; resize:vertical; line-height:2; }
body main.irota-contact .irota-contact-form > button { grid-column:1/-1; justify-self:start; inline-size:auto; min-block-size:48px; padding-inline:2rem; border-radius:10px; margin:0; }
body main.irota-contact .irota-contact-form .irota-field__control:focus-visible { outline:3px solid #b9d9ce; outline-offset:2px; border-color:#26735a; }
@media(max-width:42rem) {
    body main.irota-contact { gap:1rem; }
    body main.irota-contact form.irota-contact-form { grid-template-columns:minmax(0,1fr); gap:1rem; }
    body main.irota-contact .irota-contact-form > button { inline-size:100%; }
    body main.irota-contact .irota-contact-details a { max-inline-size:100%; overflow-wrap:anywhere; }
}
body main.irota-contact .irota-page-section--authored .irota-prose { display:grid; grid-template-columns:minmax(10rem, .3fr) minmax(0,1fr); gap:.6rem 1.25rem; align-items:baseline; }
body main.irota-contact .irota-page-section--authored .irota-prose > p { grid-column:1/-1; }
body main.irota-contact .irota-page-section--authored .irota-prose > h2 { grid-column:1; margin:0; padding-block:.65rem; }
body main.irota-contact .irota-page-section--authored .irota-prose > h2 + p { grid-column:2; direction:ltr; text-align:right; margin:0; padding:.65rem 1rem; border-radius:9px; background:#f3f7f5; }
@media(max-width:42rem) {
    body main.irota-contact .irota-contact-details { grid-template-columns:1fr; }
    body main.irota-contact .irota-page-section--authored .irota-prose { grid-template-columns:minmax(0,1fr); gap:.35rem; }
    body main.irota-contact .irota-page-section--authored .irota-prose > h2 + p { grid-column:1; margin-block-end:.75rem; }
}
/* Event reading sections, syllabus and related editorial cards. */
body .irota-event-detail > :is(section,aside) { margin-block:1.5rem; padding:clamp(1.1rem,2.5vw,2rem); border-radius:18px; text-align:start; }
body .irota-event-detail > section h2 { margin:0 0 1rem; font-size:1.3rem; text-align:start; }
body .irota-event-detail__description .irota-rich-text { text-align:justify; text-align-last:start; line-height:2.1; }
body .irota-event-detail__description .irota-rich-text :is(p,h3,h4) { margin-block:0 1rem; }
body .irota-event-detail__eyebrow { color:#788044; font-size:.82rem; font-weight:700; margin:0 0 .35rem; }
body .irota-event-detail__syllabus ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; padding:0; margin:0; list-style:none; counter-reset:topics; }
body .irota-event-detail__syllabus li { counter-increment:topics; display:flex; align-items:center; gap:.85rem; padding:1rem; background:#f0f6f3; border:1px solid #dbe8e0; border-radius:12px; font-size:.97rem; line-height:1.9; }
body .irota-event-detail__syllabus li::before { content:counter(topics,decimal-leading-zero); flex:0 0 38px; block-size:38px; display:grid; place-items:center; background:#165d47; color:#fff; border-radius:10px; font-size:.85rem; }
body .irota-event-detail > .irota-event-detail__venue { display:grid; grid-template-columns:88px minmax(0,1fr); column-gap:1.25rem; align-items:center; background:linear-gradient(120deg,#e7f1ec,#fff 65%); border:1px solid #d5e3db; }
body .irota-event-detail__venue-icon { grid-row:1/3; display:grid; place-items:center; inline-size:88px; block-size:88px; border-radius:24px; background:#daeae0; color:#145e49; box-shadow:inset 0 0 0 1px #c3d9cb; }
body .irota-event-detail__venue-icon svg { inline-size:46px; block-size:46px; }
body .irota-event-detail__venue .irota-event-detail__location { display:grid; gap:.4rem; font-style:normal; text-align:start; line-height:1.9; }
body .irota-event-detail .irota-related-rail { background:#f1f6f3; }
body .irota-event-detail .irota-related-rail > h2 { font-size:1.25rem; margin:0 0 1rem; text-align:start; }
body .irota-event-detail .irota-related-rail ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; padding:0; margin:0; list-style:none; }
body .irota-event-detail .irota-related-rail li { padding:0; margin:0; background:#fff; border-radius:14px; overflow:hidden; border:1px solid #dce7e0; }
body .irota-event-detail a.irota-event-related-card { display:flex; flex-direction:column; block-size:100%; padding:0; text-decoration:none; color:#14594a; }
body .irota-event-related-card img { display:block; inline-size:100%; aspect-ratio:16/9; object-fit:cover; margin:0; }
body .irota-event-related-card__body { display:flex; flex-direction:column; gap:.75rem; padding:1rem; flex:1; }
body .irota-event-related-card h3 { font-size:.98rem; line-height:1.9; margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
body .irota-event-related-card span { font-size:.78rem; color:#738478; }
body .irota-event-related-card strong { font-size:.85rem; margin-block-start:auto; }
body .irota-event-related-card:hover { background:#f8fbf9; }
body .irota-event-related-card:focus-visible { outline:3px solid #b9a059; outline-offset:-3px; }
@media(max-width:42rem) {
 body .irota-event-detail__syllabus ol,body .irota-event-detail .irota-related-rail ul { grid-template-columns:1fr; }
 body .irota-event-detail > .irota-event-detail__venue { grid-template-columns:56px minmax(0,1fr); gap:.75rem; }
 body .irota-event-detail__venue-icon { inline-size:56px; block-size:56px; border-radius:16px; }
 body .irota-event-detail__venue-icon svg { inline-size:32px; block-size:32px; }
}
body .irota-event-related-card__placeholder { display:grid; place-items:center; aspect-ratio:16/9; inline-size:100%; background:linear-gradient(135deg,#dcebe3,#f3ede0); color:#27654d; }
body .irota-event-related-card__placeholder svg { inline-size:60px; block-size:60px; }
body .irota-event-related-card > img { overflow:hidden; flex-shrink:0; }
body .irota-event-related-card__body { position:relative; background:#fff; }

/* Editorial download action: keep button contrast independent of prose links. */
body .irota-editorial-entry__content a.irota-poster-download,
body .irota-editorial-entry__content a.irota-poster-download:visited {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .65rem;
    min-height: 52px;
    padding: .75rem 1.35rem !important;
    max-inline-size: 100%;
    box-sizing: border-box;
    border: 1px solid #006452;
    border-radius: 10px !important;
    background: #006452 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.7 !important;
    text-decoration: none !important;
    text-align: center;
    box-shadow: 0 3px 9px rgb(0 77 61 / 12%);
    transition: background-color .18s ease, box-shadow .18s ease;
}
body .irota-editorial-entry__content a.irota-poster-download:hover {
    background: #034d40 !important;
    border-color: #034d40;
    color: #fff !important;
    filter: none;
    box-shadow: 0 5px 14px rgb(0 77 61 / 18%);
}
body .irota-editorial-entry__content a.irota-poster-download:focus-visible {
    outline: 3px solid #b98e33;
    outline-offset: 4px;
}
body .irota-editorial-entry__content a.irota-poster-download:active {
    background: #073c33 !important;
    box-shadow: none;
}
@media (max-width: 42rem) {
    body .irota-editorial-entry__content a.irota-poster-download { inline-size: 100%; }
}
/* Final information pages: readable editorial sections and clear organizational roles. */
body .irota-public-info { display:grid; gap:1.5rem; }
body .irota-public-info > .irota-page-section { margin:0; padding:clamp(1rem,3vw,2rem); border-radius:18px; text-align:start; }
body .irota-public-info .irota-page-section--authored { margin:0; padding:0; border:0; box-shadow:none; background:transparent; }
body .irota-public-info .irota-page-section--authored > h2 { margin:0 0 1.5rem; text-align:start; font-size:1.35rem; }
body .irota-public-info > .irota-page-section > h2 { text-align:start; margin:0 0 1.5rem; font-size:1.4rem; }
body .irota-committee-grid, body .irota-org-people { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
body .irota-committee-grid > li { display:flex; align-items:flex-start; gap:1rem; padding:1.4rem; border:1px solid #d7e5df; border-radius:14px; background:#f7faf8; }
body .irota-unit-number { display:grid; place-items:center; flex:0 0 44px; height:44px; border-radius:12px; background:#e4eee8; color:#09564b; font-weight:800; font-variant-numeric:tabular-nums; }
body .irota-committee-grid h3, body .irota-org-people h3 { font-size:1.1rem; line-height:1.8; margin:0 0 .5rem; color:#09564b; }
body .irota-committee-grid p, body .irota-org-people p { margin:0; text-align:start!important; line-height:1.9; color:#526860; font-size:.94rem; }
body .irota-org-intro { max-width:75ch; margin:0 auto 1.5rem!important; }
body .irota-org-root { position:relative; width:fit-content; min-width:240px; max-width:100%; box-sizing:border-box; margin:0 auto 2rem; padding:1rem 2rem; background:#09564b; color:white; text-align:center; border-radius:14px; }
body .irota-org-root span { font-size:.85rem; color:#d6e7df; }
body .irota-org-root h3 { color:white; margin:.35rem 0 0; font-size:1.2rem; }
body .irota-org-root::after { content:''; position:absolute; width:2px; height:2rem; background:#b9cfc4; top:100%; left:50%; }
body .irota-org-people { border-top:2px solid #b9cfc4; padding-top:1.5rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
body .irota-org-people > li { position:relative; padding:1.25rem; border:1px solid #d7e5df; border-radius:12px; background:#f7faf8; }
body .irota-unit-kicker { display:block; color:#526860; font-size:.85rem; margin-bottom:.7rem; }
body .irota-public-info--faq .irota-faq-list { max-width:900px; margin-inline:auto; text-align:start; gap:1rem; }
body .irota-faq-list__search { width:100%; inline-size:100%; box-sizing:border-box; border-radius:10px; height:50px; }
body .irota-faq-list__status { font-size:.85rem; color:#526860; margin:0; }
body [data-irota-faq-items] { display:grid; gap:.85rem; }
body .irota-faq-list details { padding:0; border-radius:12px; box-shadow:none; overflow:hidden; }
body .irota-faq-list summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.15rem 1.25rem; text-align:start; font-size:1rem; line-height:1.9; }
body .irota-faq-list summary::-webkit-details-marker { display:none; }
body .irota-faq-list summary::after { content:'+'; display:grid; place-items:center; flex:0 0 28px; height:28px; background:#e7f0eb; border-radius:8px; color:#09564b; font-size:1.3rem; }
body .irota-faq-list details[open] summary::after { content:'−'; }
body .irota-faq-list summary:focus-visible { outline:3px solid #b98e33; outline-offset:-4px; }
body .irota-faq-list details p { margin:0; padding:1rem 1.25rem 1.25rem; border-radius:0; text-align:justify; line-height:2.1; }
body .irota-faq-list details[hidden] { display:none; }
body .irota-history-nav { padding:1.4rem; margin-bottom:2rem; border-radius:14px; background:#f0f6f3; border:1px solid #d7e5df; }
body .irota-history-nav h3 { margin:0 0 1rem; color:#09564b; }
body .irota-history-nav ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem 2rem; padding-inline-start:1.4rem; margin:0; font-size:.9rem; }
body .irota-history-reading { max-width:78ch; margin-inline:auto; }
body .irota-history-reading h2 { margin:2.5rem 0 1rem; padding-inline-start:1rem; border-inline-start:3px solid #b9a05a; font-size:1.3rem; color:#09564b; line-height:1.9; scroll-margin-top:7rem; }
body .irota-history-reading h3 { font-size:1.1rem; margin:1.5rem 0 .8rem; }
body .irota-history-reading p { margin:0 0 1.4rem; line-height:2.25; }
body .irota-history-reading strong { color:#09564b; font-weight:800; }
body .irota-history-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem 1.75rem; padding-inline-start:1.25rem; margin:1rem 0 1.75rem; }
body .irota-history-fields li { text-align:start!important; padding-inline-start:.25rem; font-size:.95rem; }
@media(max-width:42rem){
 body .irota-committee-grid, body .irota-org-people, body .irota-history-nav ol, body .irota-history-fields { grid-template-columns:minmax(0,1fr); }
 body .irota-org-people { border-top:0; border-inline-start:2px solid #b9cfc4; padding:0 1rem 0 0; }
 body .irota-org-root { margin-bottom:1.5rem; min-width:0; width:100%; }
 body .irota-org-root::after { display:none; }
 body .irota-committee-grid > li { padding:1rem; gap:.8rem; }
 body .irota-faq-list summary { padding:1rem; font-size:.95rem; }
 body .irota-history-reading h2 { font-size:1.15rem; }
}
