/* Institutional pages and donor portal share only the accessible base controls. */
:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#20344b;background:#fff;--blue:#123b66;--gold:#b88416;--muted:#52657a;--line:#dce3ea}
*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-underline-offset:4px}button,input,textarea,select{font:inherit}button,a,input{touch-action:manipulation}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:48px;max-width:100%;padding:.8rem 1.25rem;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;text-decoration:none;font-weight:650;cursor:pointer;line-height:1.4;transition:background-color .16s ease,box-shadow .16s ease}button:hover,.button:hover{background:#0c2b4b;box-shadow:0 4px 12px #123b6614}button.secondary,.button.secondary{background:white;color:var(--blue);border-color:#b9c9d8}button.secondary:hover,.button.secondary:hover{background:#edf3f8}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,dialog:focus-visible{outline:3px solid #986808;outline-offset:4px}p{line-height:1.75}h1,h2,h3{line-height:1.15;overflow-wrap:anywhere}h1{font-size:clamp(2.35rem,4.6vw,4.55rem);letter-spacing:-.045em;margin:.9rem 0 1.4rem;font-weight:720}h2{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.03em;font-weight:700;margin:.65rem 0 1.2rem}h3{font-size:1.3rem;letter-spacing:-.02em}.skip{position:absolute;left:-10000px}.skip:focus{left:1rem;top:1rem;padding:1rem;background:white;z-index:20}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-weight:750}
.site-header{background:#fff;border-bottom:1px solid var(--line)}.site-header-inner{max-width:1280px;margin:auto;padding:1.2rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.site-brand{text-decoration:none;font-weight:750;display:flex;gap:.9rem;align-items:center;font-size:1.35rem;line-height:1.2;flex-shrink:0}.site-brand small{display:block;font-size:.87rem;font-weight:550;letter-spacing:.03em;margin-top:.25rem}.brand-rule{width:4px;height:44px;background:var(--gold);border-radius:2px}.site-nav{display:flex;align-items:center;gap:1.8rem}.site-nav>a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.9rem;font-weight:650}.site-nav>a:not(.button):hover{color:#856018;text-decoration:underline}.site-menu-toggle{display:none}.site-main{max-width:1280px;margin:auto;padding:0 2.5rem}.site-main>*{min-width:0}.site-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:4rem;align-items:center;padding:4.5rem 0 5rem}.hero-copy{min-width:0}.hero-copy>p{font-size:1.12rem;color:var(--muted);max-width:520px;white-space:pre-line;overflow-wrap:anywhere}.hero-actions{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:2rem}.hero-photo{min-width:0;aspect-ratio:1.08;overflow:hidden;border-radius:16px 16px 56px 16px;background:#eef3f7;box-shadow:0 15px 40px #123b6612}.site-image{display:block;width:100%;height:100%;object-fit:cover}.focus-centro{object-position:center}.focus-topo{object-position:top}.focus-baixo{object-position:bottom}.focus-esquerda{object-position:left}.focus-direita{object-position:right}.hero-signature{min-width:0;aspect-ratio:1.15;border-radius:16px;background:#f0f5f8;padding:2.5rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:var(--blue)}.hero-signature>span{font-size:clamp(1.5rem,3vw,2.5rem);font-weight:600}.hero-signature>strong{font-size:clamp(2.3rem,4.4vw,4rem);letter-spacing:-.04em}.signature-line{width:60px;height:4px;background:var(--gold);margin-top:1.5rem}.site-section{padding:4rem 0;border-top:1px solid var(--line);scroll-margin-top:1.5rem}.section-heading{display:flex;gap:1.5rem;align-items:end;justify-content:space-between;margin-bottom:2rem}.section-heading>div{min-width:0}.section-heading p{color:var(--muted);margin:.6rem 0 0;max-width:650px}.text-link{display:inline-flex;gap:.8rem;align-items:center;min-height:44px;flex-shrink:0;font-weight:650;text-decoration:none}.text-link:hover{text-decoration:underline}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.gallery-card{margin:0;min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 3px 12px #123b6607}.gallery-open{position:relative;display:block;width:100%;padding:0;border:0;border-radius:0;aspect-ratio:4/3;background:#eef3f7;overflow:hidden}.gallery-open .site-image{transition:transform .2s ease}.gallery-open:hover .site-image{transform:scale(1.025)}.gallery-open:focus-visible{outline-offset:-5px}.photo-expand{position:absolute;bottom:.7rem;right:.7rem;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:white;color:var(--blue);box-shadow:0 2px 8px #123b6620}.gallery figcaption{padding:1.1rem 1.25rem;overflow-wrap:anywhere}.gallery figcaption h3{font-size:1.05rem;line-height:1.4;margin:0}.gallery figcaption p{font-size:.95rem;color:var(--muted);margin:.6rem 0 0;white-space:pre-line}.site-empty{padding:2rem;background:#f3f6f9;border:1px solid var(--line);border-radius:10px;color:var(--muted)}.site-about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5rem;align-items:start}.about-copy{min-width:0;padding-top:2rem}.about-copy>p{white-space:pre-line;overflow-wrap:anywhere;color:var(--muted);font-size:1.05rem}.about-copy .text-link{margin-top:1rem}.about-photo{aspect-ratio:3/2;border-radius:12px;overflow:hidden;margin-top:1.8rem;background:#eef3f7}.site-access{margin-bottom:2rem}.site-access .choice-grid{max-width:none;margin:0}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:880px;margin:2rem auto 5rem}.choice-card{position:relative;min-width:0;padding:2rem;background:#f3f6fa;border:1px solid var(--line);border-radius:12px}.choice-card h3{margin:.8rem 0}.choice-card p{color:var(--muted);max-width:420px}.choice-number{font-size:.8rem;color:var(--muted);font-weight:700;letter-spacing:.08em}.choice-card .button{margin-top:.7rem}.choice-heading{max-width:670px;margin:3.5rem auto 2rem;text-align:center}.choice-heading p{color:var(--muted)}.site-footer{background:#f3f6f9;border-top:1px solid var(--line);margin-top:2rem}.site-footer-inner{max-width:1280px;margin:auto;padding:3.5rem 2.5rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:5rem}.site-footer h2{font-size:1.1rem;letter-spacing:0;margin:.8rem 0}.site-footer p{font-size:.94rem;margin:.4rem 0;white-space:pre-line;overflow-wrap:anywhere;color:var(--muted)}.site-footer nav{display:flex;flex-wrap:wrap;gap:0 1.3rem;margin-top:1rem}.site-footer nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}.site-footer-bottom{max-width:1200px;margin:auto;padding:1.1rem 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted)}.site-footer-bottom>a{min-height:44px;display:inline-flex;align-items:center;font-size:.85rem}.gallery-page{padding-top:3.5rem;padding-bottom:4rem}.gallery-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:2.5rem}.gallery-more p{color:var(--muted)}.site-lightbox{width:min(1040px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:1.2rem;border:1px solid var(--line);border-radius:12px;color:#20344b;background:#fff;overflow:auto}.site-lightbox::backdrop{background:#11273fbd}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.lightbox-toolbar h2{font-size:1.2rem;letter-spacing:0;margin:0}.lightbox-toolbar button{flex-shrink:0}.site-lightbox img{display:block;max-width:100%;max-height:70dvh;width:auto;height:auto;object-fit:contain;margin:auto}.site-lightbox p{white-space:pre-line;overflow-wrap:anywhere;color:var(--muted);margin:.8rem 0 0}.portal-card{padding:2rem;background:white;border:1px solid var(--line);border-radius:16px}
.portal-main{max-width:1040px;margin:auto;padding:2rem}.portal-login{max-width:460px;margin:3rem auto}.portal-login h1{font-size:2rem}.portal-form{display:grid;gap:1rem}.portal-form label{display:grid;gap:.5rem;font-size:.95rem;font-weight:600}.portal-form input{width:100%;min-height:48px;padding:.75rem;border:1px solid #8b9fb5;border-radius:8px}.portal-form small{line-height:1.6;color:var(--muted)}.portal-error{color:#92272e;background:#fff0f1;padding:.85rem;border-radius:7px}.portal-error[hidden]{display:none}.portal-notice{background:#fff5d9;padding:1rem;border-radius:8px;line-height:1.65}.portal-toolbar{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:1.4rem 0}.portal-toolbar h1{font-size:2.1rem}.portal-actions{display:flex;flex-wrap:wrap;gap:.7rem}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.portal-card h2{font-size:1.4rem;margin-top:.7rem}.portal-card h3{margin-top:1.6rem}.portal-status{display:inline-block;font-weight:650;font-size:.86rem;padding:.35rem .6rem;border-radius:6px;background:#eaf1f8;color:var(--blue)}.portal-facts{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.portal-facts div{min-width:0}.portal-facts dt{font-size:.85rem;color:var(--muted)}.portal-facts dd{margin:.35rem 0 0;font-weight:650;overflow-wrap:anywhere}.portal-booklet button{width:100%;margin-top:1rem}.portal-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;margin:1rem 0}table{border-collapse:collapse;width:100%;font-size:.9rem;text-align:left;background:white}th,td{padding:.9rem;border-bottom:1px solid var(--line)}th{background:#eef4f9;color:#334c64}td{white-space:nowrap}.portal-draws{display:flex;flex-wrap:wrap;gap:.6rem;padding:0;list-style:none}.portal-draws li{font-family:ui-monospace,monospace;font-size:1.5rem;padding:.6rem 1rem;background:#fff4d6;border-radius:8px}.portal-timeline{padding-left:1.2rem}.portal-timeline li{padding:.8rem 0;border-bottom:1px solid var(--line);line-height:1.7}.portal-timeline p{margin:.3rem 0}.portal-detail-title{font-size:2rem}.portal-muted{color:var(--muted)}
@media(max-width:1100px){.site-header-inner,.site-main{padding-left:2rem;padding-right:2rem}.site-hero{gap:2.2rem;padding-top:3.5rem}.site-nav{gap:1.2rem}.site-about{gap:3rem}.site-footer-bottom{margin:0 2rem}}
@media(max-width:800px){.site-header-inner{padding:1rem 1.25rem;gap:1rem;flex-wrap:wrap}.site-brand{font-size:1.15rem}.site-menu-toggle{display:inline-flex}.site-nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:.2rem}.site-nav[data-open=true]{display:flex}.site-nav>a{padding:.8rem}.site-nav>.button{margin-top:.5rem}.site-main,.portal-main{padding-left:1.25rem;padding-right:1.25rem}.site-hero{grid-template-columns:minmax(0,1fr);gap:2rem;padding:2.5rem 0 3rem}.hero-copy{max-width:630px}.hero-photo{aspect-ratio:16/10;border-radius:12px 12px 36px 12px}.hero-signature{aspect-ratio:2;max-height:240px;padding:2rem}.hero-copy>p{max-width:none}.site-section{padding:2.8rem 0}.section-heading{align-items:start}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.site-about{grid-template-columns:minmax(0,1fr);gap:1rem}.about-copy{padding-top:0}.about-photo{max-height:380px}.site-footer-inner{padding:2.5rem 1.25rem;grid-template-columns:minmax(0,1fr);gap:1.5rem}.site-footer-bottom{margin:0 1.25rem}.portal-grid{grid-template-columns:1fr}.portal-card{padding:1.3rem}.portal-login{margin:1.5rem auto}.portal-toolbar h1{font-size:1.9rem}.gallery-page{padding-top:2.5rem}.choice-card{padding:1.5rem}}
@media(max-width:600px){.section-heading{flex-direction:column;gap:.7rem}.hero-actions{display:grid;grid-template-columns:minmax(0,1fr)}.hero-actions .button{width:100%}.choice-grid{grid-template-columns:minmax(0,1fr)}.choice-card .button{width:100%}.site-footer-bottom{align-items:start;flex-direction:column;gap:.4rem}.choice-heading{margin-top:2.5rem}.site-lightbox{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem);padding:.8rem}.lightbox-toolbar{gap:.5rem}.lightbox-toolbar h2{font-size:1.05rem}}
@media(max-width:430px){.gallery{grid-template-columns:minmax(0,1fr)}.site-brand{font-size:1.05rem}.site-brand small{font-size:.8rem}.site-menu-toggle{padding:.65rem .8rem}.site-header-inner{gap:.7rem}.site-hero h1{font-size:2.45rem}.hero-photo{aspect-ratio:4/3}.gallery-card{border-radius:10px}.portal-facts{gap:.8rem}.portal-facts dd{font-size:.94rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.gallery-open:hover .site-image{transform:none}}

/* Institutional visual identity. Keep the original shared/portal rules above intact. */
.institutional-header,.institutional-main,.institutional-footer,.institutional-lightbox{
 --rotary-blue:#123b66;--rotary-blue-dark:#082a4a;--rotary-blue-light:#eef5fb;
 --rotary-gold:#d6a928;--rotary-gold-light:#f3e5ae;--rotary-cream:#f8f7f2;
 --rotary-text:#17202a;--rotary-white:#fff;--institutional-muted:#46596b;
 --institutional-gutter:clamp(1.25rem,4vw,3rem);
 color:var(--rotary-text);
}
.institutional-header .button,.institutional-main .button,.institutional-footer .button,
.institutional-header .site-menu-toggle,.institutional-main .gallery-more button,
.institutional-lightbox .lightbox-toolbar button{
 min-height:52px;padding:.85rem 1.35rem;border:1px solid var(--rotary-gold);border-radius:12px;
 background:var(--rotary-gold);color:var(--rotary-blue-dark);font-weight:750;
 text-align:center;overflow-wrap:anywhere;
 transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.institutional-header .button:hover,.institutional-main .button:hover,.institutional-footer .button:hover,
.institutional-main .gallery-more button:hover,.institutional-lightbox .lightbox-toolbar button:hover{
 background:var(--rotary-gold-light);border-color:var(--rotary-gold-light);color:var(--rotary-blue-dark);
 box-shadow:0 6px 18px #082a4a1a;transform:translateY(-1px);
}
.institutional-main .button.secondary{
 border-color:var(--rotary-blue);background:transparent;color:var(--rotary-blue);
}
.institutional-main .button.secondary:hover{
 background:var(--rotary-blue-light);color:var(--rotary-blue-dark);border-color:var(--rotary-blue-dark);
}
.institutional-header a:focus-visible,.institutional-header button:focus-visible,
.institutional-main a:focus-visible,.institutional-main button:focus-visible,
.institutional-footer a:focus-visible,.institutional-footer button:focus-visible,
.institutional-lightbox:focus-visible,.institutional-lightbox button:focus-visible{
 outline:3px solid var(--rotary-blue-dark);outline-offset:4px;box-shadow:0 0 0 7px var(--rotary-white);
}
.institutional-main .eyebrow,.institutional-footer .eyebrow{
 display:inline-flex;align-items:center;gap:.7rem;font-size:.75rem;line-height:1.5;
 letter-spacing:.14em;font-weight:750;
}
.institutional-main .eyebrow{color:var(--rotary-blue)}
.institutional-main .eyebrow::before,.institutional-footer .eyebrow::before{
 content:"";width:25px;height:2px;background:var(--rotary-gold);flex-shrink:0;
}
.institutional-main h2{font-size:clamp(2rem,3.35vw,3.2rem);line-height:1.15;letter-spacing:-.035em}
.institutional-main p{line-height:1.8}
.institutional-main .text-link{color:var(--rotary-blue);font-weight:750;max-width:100%;white-space:normal}
.institutional-main .text-link:hover{color:var(--rotary-blue-dark)}

.institutional-header{
 position:sticky;top:0;z-index:10;background:var(--rotary-blue-dark);
 border-bottom:1px solid #f3e5ae30;box-shadow:0 4px 20px #082a4a1f;color:var(--rotary-white);
}
.institutional-header .site-header-inner{max-width:1280px;padding:1.1rem var(--institutional-gutter);gap:2rem}
.institutional-header .site-brand{color:var(--rotary-white);font-size:1.35rem;letter-spacing:-.025em;gap:.9rem}
.institutional-header .site-brand small{color:var(--rotary-gold-light);font-size:.88rem;letter-spacing:.06em}
.institutional-header .brand-rule{height:46px;background:var(--rotary-gold)}
.institutional-header .site-nav{display:flex;gap:1.5rem}
.institutional-header .site-nav>a{color:var(--rotary-white);font-size:.89rem;min-height:44px}
.institutional-header .site-nav>a:not(.button){text-decoration:none;border-bottom:2px solid transparent;transition:color .18s ease,border-color .18s ease}
.institutional-header .site-nav>a:not(.button):hover{color:var(--rotary-gold-light);border-bottom-color:var(--rotary-gold)}
.institutional-header .site-nav>.button{color:var(--rotary-blue-dark);font-size:.83rem;letter-spacing:.025em}
.institutional-header .site-menu-toggle{display:none}

.institutional-main{max-width:none;width:100%;margin:0;padding:0;scroll-margin-top:110px;background:var(--rotary-white)}
.institutional-main .section-inner{width:100%;max-width:1280px;margin-inline:auto;padding-inline:var(--institutional-gutter);min-width:0}
.institutional-main .site-section{padding:clamp(4rem,7vw,6.5rem) 0;border:0;scroll-margin-top:110px}
.institutional-main .section-heading{gap:2rem;margin-bottom:2.5rem;align-items:end}
.institutional-main .section-heading p{color:var(--institutional-muted);font-size:1.03rem}
.institutional-main .site-hero{
 position:relative;isolation:isolate;display:flex;align-items:center;min-height:min(78vh,880px);
 min-height:min(78svh,880px);padding:0;gap:0;background:var(--rotary-blue-dark);color:var(--rotary-white);
 overflow:hidden;
}
/* The lightest overlay stays 76% opaque, including over a completely white photo. */
.institutional-main .site-hero::after{
 content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
 background:linear-gradient(100deg,rgba(8,42,74,.94) 0%,rgba(8,42,74,.88) 52%,rgba(8,42,74,.76) 100%);
}
.institutional-main .site-hero .hero-photo{
 position:absolute;inset:0;z-index:0;width:100%;height:100%;min-width:0;aspect-ratio:auto;
 border-radius:0;background:var(--rotary-blue);box-shadow:none;
}
.institutional-main .site-hero .hero-photo .site-image{width:100%;height:100%;object-fit:cover}
.institutional-main .site-hero .hero-inner{
 position:relative;z-index:3;display:flex;align-items:center;min-height:inherit;
 padding-block:clamp(4.5rem,8vw,8rem);
}
.institutional-main .site-hero .hero-copy{width:100%;max-width:790px;min-width:0}
.institutional-main .site-hero .eyebrow{color:var(--rotary-gold-light)}
.institutional-main .site-hero .eyebrow::before{width:40px;height:3px}
.institutional-main .site-hero h1{
 max-width:18ch;margin:1.2rem 0 1.5rem;font-size:clamp(2.65rem,5.15vw,4.9rem);
 color:var(--rotary-white);font-weight:760;line-height:1.06;letter-spacing:-.04em;text-wrap:balance;
}
.institutional-main .site-hero .hero-copy>p{
 max-width:670px;color:var(--rotary-blue-light);font-size:clamp(1.05rem,1.5vw,1.23rem);
 line-height:1.85;margin:0;white-space:pre-line;
}
.institutional-main .site-hero .hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.25rem}
.institutional-main .site-hero .button{min-height:54px;padding:1rem 1.5rem}
.institutional-main .site-hero .button.secondary{
 color:var(--rotary-white);border-color:#f3e5ae9e;background:#082a4a66;
}
.institutional-main .site-hero .button.secondary:hover{
 background:var(--rotary-blue-light);border-color:var(--rotary-blue-light);color:var(--rotary-blue-dark);
}
.institutional-main .site-hero-text{background:linear-gradient(115deg,#082a4a 0%,#123b66 64%,#082a4a 100%)}
.institutional-main .site-hero .hero-signature{
 position:absolute;z-index:2;right:0;top:50%;width:min(70vw,860px);height:auto;max-height:none;
 aspect-ratio:1;transform:translate(30%,-50%) rotate(-18deg);margin:0;padding:0;
 border:1px solid #f3e5ae33;border-radius:50%;background:transparent;pointer-events:none;
}
.institutional-main .site-hero .hero-signature::before{
 content:"";position:absolute;inset:13%;border:1px solid #f3e5ae26;border-radius:50%;
}
.institutional-main .site-hero .hero-signature::after{
 content:"";position:absolute;left:-18%;right:18%;top:50%;height:1px;
 background:linear-gradient(90deg,transparent,#f3e5ae52,transparent);
}

.institutional-main .site-values{padding:3.5rem 0;background:var(--rotary-cream)}
.institutional-main .values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.institutional-main .value-card{
 min-width:0;padding:2rem;border:1px solid #123b6617;border-radius:20px;background:var(--rotary-white);
 box-shadow:0 5px 20px #082a4a06;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.institutional-main .value-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #082a4a0c;border-color:#d6a92866}
.institutional-main .value-icon{
 position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;
 border:1px solid #d6a92847;border-radius:15px;background:var(--rotary-gold-light);color:var(--rotary-blue-dark);
}
.institutional-main .value-icon::before,.institutional-main .value-icon::after{content:"";position:absolute;display:block}
.institutional-main .value-community::before{
 left:19px;top:10px;width:12px;height:12px;border:2px solid currentColor;border-radius:50%;
 background:var(--rotary-gold-light);box-shadow:-10px 5px 0 -2px var(--rotary-gold-light),-10px 5px 0 0 currentColor,10px 5px 0 -2px var(--rotary-gold-light),10px 5px 0 0 currentColor;
}
.institutional-main .value-community::after{left:10px;bottom:10px;width:30px;height:14px;border:2px solid currentColor;border-radius:14px 14px 5px 5px}
.institutional-main .value-solidarity::before,.institutional-main .value-solidarity::after{top:13px;width:12px;height:20px;border-radius:12px 12px 0 0;background:currentColor}
.institutional-main .value-solidarity::before{left:25px;transform:rotate(-45deg);transform-origin:0 100%}
.institutional-main .value-solidarity::after{left:13px;transform:rotate(45deg);transform-origin:100% 100%}
.institutional-main .value-action::before{left:13px;top:25px;width:24px;height:2px;background:currentColor;transform:rotate(-45deg)}
.institutional-main .value-action::after{left:22px;top:14px;width:13px;height:13px;border-top:2px solid currentColor;border-right:2px solid currentColor}
.institutional-main .value-card h2{margin:1.25rem 0 .65rem;font-size:1.35rem;line-height:1.25;letter-spacing:-.02em;color:var(--rotary-blue-dark)}
.institutional-main .value-card p{margin:0;color:var(--institutional-muted);font-size:.98rem;line-height:1.8}

.institutional-main .site-about{display:block;background:var(--rotary-white)}
.institutional-main .about-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:4rem;align-items:center}
.institutional-main .site-about.has-photo .about-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
.institutional-main .about-photo{
 width:100%;aspect-ratio:5/4;max-height:none;margin:0;border-radius:22px;overflow:hidden;
 background:var(--rotary-blue-light);box-shadow:0 15px 38px #082a4a12;
}
.institutional-main .about-photo .site-image{width:100%;height:100%;object-fit:cover}
.institutional-main .about-copy{min-width:0;padding:0}
.institutional-main .site-about:not(.has-photo) .about-copy{width:100%;max-width:850px;margin-inline:auto}
.institutional-main .about-heading h2{color:var(--rotary-blue-dark);margin:1rem 0 1.5rem}
.institutional-main .about-heading h2::after{content:"";display:block;width:52px;height:4px;margin-top:1.4rem;border-radius:2px;background:var(--rotary-gold)}
.institutional-main .about-copy>p{color:var(--institutional-muted);font-size:1.06rem;line-height:1.95;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.institutional-main .about-copy .text-link{margin-top:1.5rem}

.institutional-main .site-gallery{background:var(--rotary-blue-light)}
.institutional-main .gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.75rem}
.institutional-main .gallery-card{
 min-width:0;border:1px solid #123b6614;border-radius:20px;background:var(--rotary-white);
 box-shadow:0 5px 20px #082a4a07;transition:box-shadow .18s ease,transform .18s ease;
}
.institutional-main .gallery-card:hover{box-shadow:0 12px 30px #082a4a14;transform:translateY(-2px)}
.institutional-main .gallery-open{aspect-ratio:4/3;min-height:44px;background:#dce9f3}
.institutional-main .gallery-open .site-image{transition:transform .2s ease}
.institutional-main .gallery-open:hover .site-image{transform:scale(1.02)}
.institutional-main .gallery-open:focus-visible{outline:3px solid var(--rotary-white);outline-offset:-5px;box-shadow:inset 0 0 0 8px var(--rotary-blue-dark)}
.institutional-main .gallery-open:focus-visible::after{
 content:"";position:absolute;inset:7px;z-index:2;pointer-events:none;
 border:3px solid var(--rotary-white);outline:3px solid var(--rotary-blue-dark);outline-offset:0;border-radius:3px;
}
.institutional-main .photo-expand{width:38px;height:38px;bottom:1rem;right:1rem;border:1px solid #123b661a;background:var(--rotary-white);color:var(--rotary-blue-dark)}
.institutional-main .gallery figcaption{padding:1.35rem 1.45rem 1.5rem}
.institutional-main .gallery figcaption h3{color:var(--rotary-blue-dark);font-size:1.08rem;line-height:1.4}
.institutional-main .gallery figcaption p{color:var(--institutional-muted);font-size:.95rem;line-height:1.75}
.institutional-main .site-empty{background:var(--rotary-white);color:var(--institutional-muted);border:1px solid #123b661c;border-radius:16px;padding:2rem}
.institutional-main .gallery-more{margin-top:3rem}
.institutional-main .gallery-more p{color:var(--institutional-muted)}
.institutional-main.gallery-page{min-height:65vh;padding:clamp(3.5rem,6vw,5.5rem) 0;background:var(--rotary-blue-light)}
.institutional-main.gallery-page .section-heading h1{color:var(--rotary-blue-dark);font-size:clamp(2.5rem,4.6vw,4rem)}

.institutional-main .site-access{margin:0;background:var(--rotary-blue-dark);color:var(--rotary-white)}
.institutional-main .site-access .section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2.5rem}
.institutional-main .site-access .section-heading h2{color:var(--rotary-white)}
.institutional-main .site-access .section-heading p{color:var(--rotary-blue-light);margin-inline:auto}
.institutional-main .site-access .eyebrow{color:var(--rotary-gold-light)}
.institutional-main .site-access .choice-grid{max-width:1000px;margin:0 auto;gap:1.5rem}
.institutional-main .choice-card{border-radius:20px;padding:2.5rem;min-width:0}
.institutional-main .site-access .choice-card{background:var(--rotary-blue);border:1px solid #f3e5ae3d;box-shadow:0 8px 28px #00000012}
.institutional-main .site-access .choice-card h3{font-size:1.7rem;color:var(--rotary-white);margin:1rem 0 .75rem}
.institutional-main .site-access .choice-card p{color:var(--rotary-blue-light);margin:0 0 1.1rem}
.institutional-main .site-access .choice-number{color:var(--rotary-gold-light)}
.institutional-main .site-access .choice-card .button{min-height:54px;margin-top:.5rem}
.institutional-main .site-access .button.secondary{background:transparent;border-color:var(--rotary-gold-light);color:var(--rotary-white)}
.institutional-main .site-access .button.secondary:hover{background:var(--rotary-gold-light);color:var(--rotary-blue-dark)}
.institutional-main.access-page{min-height:65vh;padding:clamp(3rem,6vw,5rem) 0;background:var(--rotary-cream)}
.institutional-main.access-page .choice-heading{max-width:720px;margin:0 auto 3rem}
.institutional-main.access-page .choice-heading h1{color:var(--rotary-blue-dark);font-size:clamp(2.5rem,4.6vw,4rem)}
.institutional-main.access-page .choice-heading p{color:var(--institutional-muted)}
.institutional-main.access-page .choice-grid{max-width:1000px;margin:0 auto;gap:1.5rem}
.institutional-main.access-page .choice-card{background:var(--rotary-white);border-color:#123b661c;box-shadow:0 8px 28px #082a4a07}
.institutional-main.access-page .choice-card h3{color:var(--rotary-blue-dark);font-size:1.65rem}
.institutional-main.access-page .choice-card p,.institutional-main.access-page .choice-number{color:var(--institutional-muted)}

.institutional-footer{margin-top:0;scroll-margin-top:110px;border-top:3px solid var(--rotary-gold);background:#06243e;color:var(--rotary-white)}
.institutional-footer .site-footer-inner{
 max-width:1280px;padding:4rem var(--institutional-gutter);display:grid;
 grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr) minmax(0,1fr) minmax(0,.95fr);gap:2rem;
}
.institutional-footer .site-footer-inner>section{min-width:0}
.institutional-footer .eyebrow{color:var(--rotary-gold-light);font-size:.68rem;letter-spacing:.1em}
.institutional-footer h2{color:var(--rotary-white);font-size:1.08rem;line-height:1.4;margin:.8rem 0 1rem}
.institutional-footer p{color:#dfeaf4;font-size:.92rem;line-height:1.8;overflow-wrap:anywhere}
.institutional-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:.4rem 0 0}
.institutional-footer nav a{min-height:44px;color:#dfeaf4;text-decoration:none;line-height:1.5}
.institutional-footer nav a:hover{color:var(--rotary-gold-light);text-decoration:underline}
.institutional-footer .button{margin-top:1rem;font-size:.85rem;padding:.8rem 1rem}
.institutional-footer .site-footer-bottom{
 max-width:1280px;margin:0 auto;padding:1.25rem var(--institutional-gutter);border-top:1px solid #dfeaf426;
 display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#dfeaf4;
}
.institutional-footer .site-footer-bottom>a{color:var(--rotary-gold-light);min-height:44px;text-underline-offset:4px}
.institutional-footer .site-footer-bottom small{line-height:1.7;overflow-wrap:anywhere}

.institutional-lightbox{border:1px solid #123b6626;border-radius:20px;padding:1.3rem;color:var(--rotary-text);background:var(--rotary-white);box-shadow:0 24px 80px #082a4a33}
.institutional-lightbox::backdrop{background:#04182fe6}
.institutional-lightbox .lightbox-toolbar{padding:.2rem .1rem .8rem;border-bottom:1px solid #123b661c;align-items:center}
.institutional-lightbox .lightbox-toolbar h2{font-size:1.18rem;color:var(--rotary-blue-dark);line-height:1.4}
.institutional-lightbox .lightbox-toolbar button{min-height:48px;padding:.75rem 1.1rem}
.institutional-lightbox img{max-height:70vh;max-height:70svh}
.institutional-lightbox p{color:var(--institutional-muted);line-height:1.8}

@media(max-width:1100px){
 .institutional-header .site-nav{gap:1.1rem}
 .institutional-main .about-layout{gap:2.5rem}
 .institutional-main .value-card{padding:1.6rem}
 .institutional-main .gallery{gap:1.25rem}
 .institutional-footer .site-footer-inner{gap:1.5rem}
}
@media(max-width:1024px){
 .institutional-header .site-header-inner{gap:1rem;flex-wrap:wrap}
 .institutional-header .site-brand{font-size:1.25rem}
 .institutional-header .site-menu-toggle{display:inline-flex;min-height:48px;background:transparent;border-color:#f3e5ae80;color:var(--rotary-white)}
 .institutional-header .site-menu-toggle:hover{background:var(--rotary-blue);border-color:var(--rotary-gold-light)}
 .institutional-header .site-nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:.2rem;max-height:calc(100svh - 105px);overflow-y:auto;padding:.5rem 0 .3rem}
 .institutional-header .site-nav[data-open=true]{display:flex}
 .institutional-header .site-nav>a{padding:.85rem 1rem;min-height:48px;border-radius:8px}
 .institutional-header .site-nav>.button{margin-top:.5rem;border-radius:12px}
 .institutional-main .site-hero{min-height:72vh;min-height:72svh}
 .institutional-main .site-hero .hero-inner{padding-block:4.5rem}
 .institutional-main .site-hero .hero-copy{max-width:720px}
 .institutional-main .site-hero h1{font-size:clamp(2.65rem,6vw,4rem)}
 .institutional-main .values-grid{gap:1rem}
 .institutional-main .value-card{padding:1.5rem}
 .institutional-main .value-card h2{font-size:1.25rem}
 .institutional-footer .site-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
}
@media(max-width:800px){
 .institutional-main .site-section{padding:3.75rem 0}
 .institutional-main .section-heading{align-items:start}
 .institutional-main .site-hero{min-height:max(440px,60vh);min-height:max(440px,60svh)}
 .institutional-main .site-hero .hero-inner{padding-block:3.5rem}
 .institutional-main .site-hero .hero-copy{max-width:660px}
 .institutional-main .site-hero h1{font-size:clamp(2.6rem,7vw,3.7rem);max-width:17ch}
 .institutional-main .site-hero .hero-copy>p{font-size:1.08rem}
 .institutional-main .site-values{padding:2.5rem 0}
 .institutional-main .value-card{padding:1.25rem}
 .institutional-main .value-card p{font-size:.93rem}
 .institutional-main .site-about.has-photo .about-layout{grid-template-columns:minmax(0,1fr);gap:2.25rem}
 .institutional-main .about-photo{aspect-ratio:3/2;max-height:none}
 .institutional-main .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
 .institutional-main .gallery figcaption{padding:1.1rem 1.2rem 1.25rem}
 .institutional-main .choice-card{padding:2rem}
 .institutional-main .site-access .section-heading{align-items:center}
 .institutional-footer .site-footer-inner{padding-block:3rem;gap:2rem}
}
@media(max-width:600px){
 .institutional-main .section-heading{flex-direction:column;gap:.75rem;align-items:start;margin-bottom:2rem}
 .institutional-main .site-hero .hero-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem;max-width:390px}
 .institutional-main .site-hero .hero-actions .button{width:100%}
 .institutional-main .values-grid{grid-template-columns:minmax(0,1fr);gap:1rem}
 .institutional-main .value-card{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:1rem;row-gap:.4rem;padding:1.5rem}
 .institutional-main .value-icon{grid-column:1;grid-row:1/3}
 .institutional-main .value-card h2{grid-column:2;margin:0;font-size:1.2rem}
 .institutional-main .value-card p{grid-column:2;margin:0;font-size:.96rem}
 .institutional-main .site-access .choice-grid,.institutional-main.access-page .choice-grid{grid-template-columns:minmax(0,1fr);gap:1rem}
 .institutional-main .choice-card{padding:1.75rem}
 .institutional-main .choice-card .button{width:100%}
 .institutional-main .site-access .section-heading{text-align:left;align-items:start}
 .institutional-main .site-access .section-heading p{margin-inline:0}
 .institutional-main.access-page .choice-heading{margin-bottom:2rem;text-align:left}
 .institutional-footer .site-footer-inner{grid-template-columns:minmax(0,1fr);gap:2rem}
 .institutional-footer .site-footer-bottom{align-items:start;flex-direction:column;gap:.35rem}
 .institutional-lightbox{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem);padding:.8rem;border-radius:16px}
 .institutional-lightbox .lightbox-toolbar{gap:.7rem}
 .institutional-lightbox .lightbox-toolbar h2{font-size:1.02rem}
}
@media(max-width:430px){
 .institutional-header .site-header-inner{padding-block:1rem;gap:.75rem}
 .institutional-header .site-brand{font-size:1.14rem;gap:.75rem}
 .institutional-header .site-brand small{font-size:.8rem}
 .institutional-header .site-menu-toggle{padding:.7rem .9rem}
 .institutional-main .site-hero .hero-inner{padding-block:3.2rem}
 .institutional-main .site-hero h1{font-size:clamp(2.5rem,11vw,2.95rem);letter-spacing:-.035em;margin-top:1rem}
 .institutional-main .site-hero .hero-copy>p{font-size:1.02rem}
 .institutional-main .site-hero .hero-actions{margin-top:1.8rem}
 .institutional-main .site-section{padding:3.25rem 0}
 .institutional-main .value-card{padding:1.25rem;column-gap:.85rem}
 .institutional-main .gallery{grid-template-columns:minmax(0,1fr)}
 .institutional-main .gallery-card{border-radius:18px}
 .institutional-main .about-photo{border-radius:18px;aspect-ratio:5/4}
 .institutional-main .choice-card{padding:1.5rem}
 .institutional-footer .site-footer-inner{padding-block:2.75rem}
}
@media(prefers-reduced-motion:reduce){
 .institutional-header *,.institutional-main *,.institutional-footer *,.institutional-lightbox *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
 .institutional-header .button:hover,.institutional-main .button:hover,.institutional-footer .button:hover,
 .institutional-main .gallery-more button:hover,.institutional-lightbox .lightbox-toolbar button:hover,
 .institutional-main .value-card:hover,.institutional-main .gallery-card:hover,
 .institutional-main .gallery-open:hover .site-image{transform:none}
}

/* Community content: public pages only. Private Portal styles stay unchanged. */
.institutional-header .site-header-inner{max-width:1440px;gap:1.25rem}
.institutional-header .site-nav{gap:1rem}
.institutional-header .site-nav>a{font-size:.84rem}
.institutional-main .site-hero .hero-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);gap:2rem;max-width:1440px}
.institutional-main .site-hero .hero-copy{max-width:720px}
.institutional-main .site-hero h1{font-size:clamp(2.6rem,4.5vw,4.6rem);max-width:17ch}
.institutional-main .site-gear{position:relative;width:100%;max-width:490px;justify-self:center;pointer-events:none;filter:drop-shadow(0 24px 20px #00000040)}
.institutional-main .site-gear::before{content:"";position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle,#f3e5ae19,transparent 70%);z-index:-1}
.institutional-main .site-gear svg{display:block;width:100%;height:auto;overflow:visible}
.institutional-main .site-loans{background:var(--rotary-blue-light)}
.institutional-main .site-loans .section-heading>div{max-width:790px}
.institutional-main .equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.institutional-main .equipment-card{min-width:0;padding:1.8rem;border:1px solid #123b661a;border-radius:20px;background:var(--rotary-white);box-shadow:0 5px 20px #082a4a08}
.institutional-main .equipment-icon{display:block;width:54px;height:54px;margin-bottom:1.25rem;padding:5px;border-radius:14px;background:var(--rotary-gold-light);color:var(--rotary-blue-dark)}
.institutional-main .equipment-card h3{margin:0 0 .65rem;font-size:1.16rem;color:var(--rotary-blue-dark);line-height:1.4;overflow-wrap:anywhere}
.institutional-main .equipment-card p{margin:0;color:var(--institutional-muted);font-size:.97rem;white-space:pre-line;overflow-wrap:anywhere}
.institutional-main .section-contact{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2.2rem;padding-top:1.7rem;border-top:1px solid #123b6620}
.institutional-main .section-contact>p{max-width:740px;color:var(--institutional-muted);margin:0}
.institutional-main .section-contact .button{flex-shrink:0}
.institutional-main .contact-pending{font-size:.94rem;color:var(--institutional-muted);line-height:1.65}
.institutional-main .site-gallery{background:var(--rotary-cream)}
.institutional-main .site-support{background:var(--rotary-gold-light);color:var(--rotary-blue-dark);border-block:1px solid #d6a92855}
.institutional-main .support-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:4rem}
.institutional-main .support-layout h2{margin:1rem 0 1.3rem;color:var(--rotary-blue-dark)}
.institutional-main .support-layout p{white-space:pre-line;overflow-wrap:anywhere;color:var(--rotary-blue-dark)}
.institutional-main .support-action{justify-self:end;max-width:420px}
.institutional-main .support-action .button{width:100%;background:var(--rotary-blue-dark);color:var(--rotary-white);border-color:var(--rotary-blue-dark);min-height:56px}
.institutional-main .support-action .button:hover{background:var(--rotary-blue);border-color:var(--rotary-blue)}
.institutional-main .support-action>p{font-size:.94rem;margin:1rem 0 0}
.institutional-main .support-action a:not(.button){color:var(--rotary-blue-dark);min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
.institutional-main .site-space{background:var(--rotary-blue-light)}
.institutional-main .space-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:3.5rem;align-items:center}
.institutional-main .site-space.has-photo .space-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
.institutional-main .space-copy{min-width:0;max-width:850px}
.institutional-main .space-copy h1,.institutional-main .space-copy h2{margin:1rem 0 1.5rem;color:var(--rotary-blue-dark)}
.institutional-main .space-copy>p{white-space:pre-line;overflow-wrap:anywhere;color:var(--institutional-muted)}
.institutional-main .space-copy>.button{margin-top:1.2rem}
.institutional-main .space-photo{margin:0;min-width:0;border-radius:22px;overflow:hidden;background:var(--rotary-white);box-shadow:0 15px 38px #082a4a16}
.institutional-main .space-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.institutional-main .space-photo figcaption{padding:1rem 1.5rem;font-size:.94rem;color:var(--institutional-muted);overflow-wrap:anywhere}
.institutional-main .space-features{list-style:none;padding:0;margin:1.5rem 0 2rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem}
.institutional-main .space-features li{position:relative;padding:.55rem .5rem .55rem 1.3rem;color:var(--rotary-blue-dark);overflow-wrap:anywhere}
.institutional-main .space-features li::before{content:"";position:absolute;left:0;top:1rem;width:7px;height:7px;border-radius:50%;background:var(--rotary-blue)}
.institutional-main .space-gallery{margin-top:4rem}
.institutional-main .space-gallery h2{font-size:1.75rem;margin-bottom:1.5rem;color:var(--rotary-blue-dark)}
.institutional-main.information-page{min-height:65vh}
.institutional-main.information-page h1{font-size:clamp(2.35rem,4vw,3.8rem);line-height:1.12;letter-spacing:-.03em;overflow-wrap:anywhere;color:var(--rotary-blue-dark)}
.institutional-footer .footer-whatsapp{min-height:44px;display:inline-flex;align-items:center;color:var(--rotary-gold-light);text-underline-offset:4px}
@media(max-width:1200px){
 .institutional-header .site-header-inner{flex-wrap:wrap;gap:1rem}
 .institutional-header .site-menu-toggle{display:inline-flex;min-height:48px;background:transparent;border-color:#f3e5ae80;color:var(--rotary-white)}
 .institutional-header .site-nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:.2rem;max-height:calc(100svh - 105px);overflow-y:auto;padding:.5rem 0 .3rem}
 .institutional-header .site-nav[data-open=true]{display:flex}
 .institutional-header .site-nav>a{padding:.85rem 1rem;min-height:48px;border-radius:8px}
 .institutional-header .site-nav>.button{margin-top:.5rem;border-radius:12px}
 .institutional-main .site-hero .hero-inner{gap:1rem}
 .institutional-main .site-hero h1{font-size:clamp(2.6rem,5vw,4rem)}
}
@media(max-width:800px){
 .institutional-main .site-hero .hero-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.75fr)}
 .institutional-main .site-hero h1{font-size:clamp(2.45rem,5vw,3.3rem)}
 .institutional-main .equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .institutional-main .equipment-card{padding:1.5rem}
 .institutional-main .section-contact{align-items:start;flex-direction:column;gap:1rem}
 .institutional-main .support-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}
 .institutional-main .support-action{justify-self:start;max-width:100%;width:100%}
 .institutional-main .site-space.has-photo .space-layout{grid-template-columns:minmax(0,1fr);gap:2rem}
}
@media(max-width:600px){
 .institutional-main .site-hero .hero-inner{grid-template-columns:minmax(0,1fr)}
 .institutional-main .site-gear{display:none}
 .institutional-main .site-hero h1{font-size:clamp(2.5rem,11vw,3.4rem)}
 .institutional-main .section-contact .button{width:100%}
 .institutional-main .space-features{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:430px){
 .institutional-main .equipment-grid{grid-template-columns:minmax(0,1fr)}
 .institutional-main .equipment-card{padding:1.5rem}
 .institutional-main .space-photo{border-radius:18px}
}

/* Optional loan photos reuse the public gallery; Portal styling is unchanged. */
.institutional-main .loans-gallery{min-width:0;margin-top:3rem}
.institutional-main .loans-gallery>h2,.institutional-main .loans-gallery>h3{font-size:1.55rem;line-height:1.4;margin:0 0 1.5rem;color:var(--rotary-blue-dark);overflow-wrap:anywhere}
@media(max-width:600px){
 .institutional-main .loans-gallery{margin-top:2rem}
 .institutional-main .loans-gallery>h2,.institutional-main .loans-gallery>h3{font-size:1.3rem}
}

/* Institutional identity and local social links; the Portal frame stays unchanged. */
.institutional-header .brand-district{display:block;font-size:.7rem;font-weight:650;letter-spacing:.03em;margin-top:.25rem;color:var(--rotary-gold-light)}
.institutional-footer .institution-cnpj{font-variant-numeric:tabular-nums}
.institutional-footer .site-social-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}
.institutional-footer .site-social-links a{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.6rem .75rem;border:1px solid #dfeaf466;border-radius:10px;color:var(--rotary-white);font-size:.82rem}
.institutional-footer .site-social-links a:hover{background:var(--rotary-blue);border-color:var(--rotary-gold-light);color:var(--rotary-gold-light)}
.institutional-footer .social-icon{display:block;width:24px;height:24px;flex-shrink:0}

/* Public campaign information uses the same institutional frame and safe images. */
.institutional-main .site-campaigns{background:var(--rotary-cream)}
.institutional-main .public-campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.institutional-main .public-campaign-card{display:flex;flex-direction:column;min-width:0;border:1px solid #123b6626;border-radius:20px;overflow:hidden;background:var(--rotary-white);box-shadow:0 6px 24px #082a4a0a}
.institutional-main .campaign-card-image{aspect-ratio:4/3;min-width:0;background:var(--rotary-blue-light)}
.institutional-main .campaign-card-image .site-image{object-fit:contain}
.institutional-main .campaign-card-body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:1.6rem;min-width:0}
.institutional-main .campaign-card-body h3{margin:1rem 0 .75rem;color:var(--rotary-blue-dark);font-size:1.45rem;line-height:1.25}
.institutional-main .campaign-description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 1rem;color:var(--institutional-muted);white-space:pre-line;overflow-wrap:anywhere}
.institutional-main .campaign-price{display:flex;flex-direction:column;gap:.4rem;margin:.7rem 0 1rem;color:var(--rotary-blue-dark);max-width:100%;overflow-wrap:anywhere}
.institutional-main .campaign-price>span{color:var(--institutional-muted);font-size:.86rem}
.institutional-main .campaign-price>strong{font-size:1.85rem;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.2}
.institutional-main .campaign-draw-date{margin:0 0 1.5rem;color:var(--institutional-muted);font-size:.9rem;overflow-wrap:anywhere}
.institutional-main .campaign-card-body>.button{width:100%;margin-top:auto}
.institutional-main .campaign-detail-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:3rem;margin-top:2rem}
.institutional-main .campaign-detail-layout.has-photo{grid-template-columns:repeat(2,minmax(0,1fr))}
.institutional-main .campaign-detail-copy{min-width:0}
.institutional-main .campaign-detail-copy h1{color:var(--rotary-blue-dark);font-size:clamp(2.15rem,4vw,3.75rem)}
.institutional-main .campaign-intro{white-space:pre-line;overflow-wrap:anywhere;color:var(--institutional-muted);font-size:1.1rem}
.institutional-main .campaign-detail-image{margin:0;min-width:0;align-self:start;border-radius:20px;overflow:hidden;border:1px solid #123b6626;background:var(--rotary-blue-light)}
.institutional-main .campaign-detail-image .site-image{height:auto;max-height:600px;object-fit:contain}
.institutional-main .campaign-detail-image figcaption{padding:1rem 1.5rem;font-size:.9rem;white-space:pre-line;overflow-wrap:anywhere;color:var(--institutional-muted);background:var(--rotary-white)}
.institutional-main .campaign-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-top:1.5rem;margin:1.5rem 0 0;border-top:1px solid #123b6626}
.institutional-main .campaign-facts>div{min-width:0}
.institutional-main .campaign-facts dt{font-size:.87rem;color:var(--institutional-muted)}
.institutional-main .campaign-facts dd{margin:.35rem 0 0;overflow-wrap:anywhere;color:var(--rotary-blue-dark);font-weight:650}
.institutional-main .campaign-information{margin-top:2rem;padding-top:2rem;border-top:1px solid #123b6626}
.institutional-main .campaign-information h2,.institutional-main .campaign-participation h2{font-size:1.55rem;color:var(--rotary-blue-dark)}
.institutional-main .campaign-information p,.institutional-main .campaign-participation p{white-space:pre-line;overflow-wrap:anywhere;color:var(--institutional-muted)}
.institutional-main .campaign-participation{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:3rem;padding:2rem;border:1px solid #d6a92855;border-radius:20px;background:var(--rotary-gold-light)}
.institutional-main .campaign-participation>div{min-width:0;max-width:720px}
.institutional-main .campaign-participation .button{flex-shrink:0;max-width:100%}
@media(max-width:1024px){
 .institutional-main .campaign-participation{flex-direction:column;align-items:flex-start}
}
@media(max-width:800px){
 .institutional-main .public-campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
 .institutional-main .campaign-detail-layout.has-photo{grid-template-columns:minmax(0,1fr);gap:2rem}
 .institutional-main .campaign-detail-image{max-width:600px;width:100%}
}
@media(max-width:600px){
 .institutional-main .public-campaign-grid{grid-template-columns:minmax(0,1fr)}
 .institutional-main .campaign-card-body{padding:1.5rem}
 .institutional-main .campaign-participation{padding:1.5rem;gap:1rem}
 .institutional-main .campaign-participation .button{width:100%}
}
@media(max-width:430px){
 .institutional-main .campaign-facts{grid-template-columns:minmax(0,1fr)}
}
