html.cgaaf-gate-pending,html.cgaaf-gate-pending body{overflow:hidden!important}
html.cgaaf-gate-pending body>*:not(#cgaaf-entry-gate){visibility:hidden!important;pointer-events:none!important}
#cgaaf-entry-gate{display:none}
html.cgaaf-gate-pending #cgaaf-entry-gate{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;overflow:hidden;padding:28px;background:radial-gradient(ellipse at 12% 0%,#315443 0,transparent 42%),linear-gradient(145deg,#0d3529,#071c15 78%);color:#f4f2ec;visibility:visible!important;pointer-events:auto!important}
.gate-panel{width:min(760px,100%);max-height:calc(100dvh - 56px);overflow:auto;overscroll-behavior:contain;padding:clamp(24px,5vw,52px);border:1px solid #a9bc9a48;background:#f4f2ec;color:#202522;box-shadow:0 28px 90px #04130e70;animation:gateEnter .55s cubic-bezier(.2,.65,.25,1) both}
.gate-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:20px;border-bottom:1px solid #d4d8cf}
.gate-brand img{display:block;width:min(240px,55%);height:auto;max-height:56px;object-fit:contain;object-position:left center}
.gate-brand span,.gate-kicker{font:700 9px/1.3 var(--display);letter-spacing:.14em;color:#58705d}
.gate-kicker{margin:26px 0 0}
.gate-panel h1{font:500 clamp(42px,7vw,66px)/.98 var(--serif);letter-spacing:-.045em;color:var(--green);margin:14px 0}
.gate-panel h1 em{color:#7b926b;font-weight:400}
.gate-intro{max-width:620px;margin:0 0 20px;color:#596158;font-size:14px;line-height:1.7}
.gate-terms{border-top:1px solid #d4d8cf}
.gate-terms article{display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;padding:15px 0;border-bottom:1px solid #d4d8cf}
.gate-terms article>span{font:600 10px/1.6 var(--display);letter-spacing:.08em;color:#718768}
.gate-terms b{font:700 12px/1.45 var(--display);color:#193c2e}
.gate-terms p{font:400 11px/1.6 var(--sans);color:#5f675e;margin:4px 0 0}
.gate-links{font:600 11px/1.7 var(--display);color:#596158;margin:18px 0 8px}
.gate-links a{color:#24583d;text-decoration:underline;text-underline-offset:3px;transition:color .2s}
.gate-links a:hover,.gate-links a:focus-visible{color:#78933e}
.gate-consent{font:400 10px/1.65 var(--sans);color:#737a72;margin:13px 0 20px}
.gate-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.gate-agree{min-height:48px;padding:0 20px;border:1px solid var(--green);background:var(--green);color:#fffefa;font:700 11px/1 var(--display);letter-spacing:.02em;cursor:pointer;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.gate-agree span{color:var(--lime);margin-left:18px}
.gate-agree:hover,.gate-agree:focus-visible{background:#1b4a3a;border-color:#769365;transform:translateY(-2px);box-shadow:0 8px 20px #123e2d30;outline:2px solid #78933e;outline-offset:3px}
.gate-decline{min-height:44px;padding:0;border:0;background:transparent;color:#626a62;font:600 10px/1.4 var(--display);text-decoration:underline;text-underline-offset:4px;cursor:pointer;transition:color .2s}
.gate-decline:hover,.gate-decline:focus-visible{color:#9b463a;outline:2px solid #9b463a;outline-offset:4px}
@keyframes gateEnter{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:600px){html.cgaaf-gate-pending #cgaaf-entry-gate{place-items:start center;padding:12px}.gate-panel{max-height:calc(100dvh - 24px);padding:24px 19px}.gate-brand img{width:min(205px,55%);max-height:48px}.gate-brand span{font-size:8px}.gate-kicker{margin-top:20px}.gate-intro{font-size:13px}.gate-terms article{grid-template-columns:25px minmax(0,1fr);gap:10px;padding:12px 0}.gate-terms b{font-size:11px}.gate-terms p{font-size:10.5px}.gate-actions{align-items:stretch;flex-direction:column;gap:8px}.gate-agree,.gate-decline{width:100%}}
@media(prefers-reduced-motion:reduce){.gate-panel{animation:none}.gate-agree,.gate-links a{transition:none}}

/* Entry identity: original crest and fund name stay together on one line. */
.gate-brand{justify-content:flex-start;gap:18px;min-height:88px}
.gate-brand .gate-brand-mark{display:block;width:112px;height:84px;max-height:none;flex:0 0 112px;object-fit:contain;object-position:center}
.gate-brand-copy{display:flex;flex-direction:column;gap:7px;min-width:0}
.gate-brand-copy strong{font:500 clamp(18px,2.35vw,27px)/1.12 var(--sans);letter-spacing:-.025em;color:#153d34}
.gate-brand-copy span{font:700 9px/1.3 var(--display);letter-spacing:.14em;color:#718768}

.storage-notice{position:fixed;z-index:9500;left:clamp(16px,5vw,72px);right:clamp(16px,5vw,72px);bottom:clamp(16px,4vw,34px);display:flex;align-items:center;justify-content:space-between;gap:26px;max-width:1440px;margin:0 auto;padding:22px 28px;background:#123b30;color:#f4f2ec;border:1px solid #78906c;box-shadow:0 18px 50px #061c1570;animation:storageNoticeIn .45s cubic-bezier(.2,.65,.25,1) both}
.storage-notice[hidden]{display:none}
.storage-notice p{max-width:1020px;margin:0;font:400 14px/1.65 var(--sans);color:#f4f2ec}
.storage-notice a{color:#c6d7ad;text-underline-offset:3px;transition:color .2s}
.storage-notice a:hover,.storage-notice a:focus-visible{color:#fff;outline:2px solid #c6d7ad;outline-offset:3px}
.storage-notice button{flex:none;min-width:132px;min-height:48px;padding:0 18px;border:1px solid #a9bb89;background:#647b3e;color:#fffefa;font:700 11px/1 var(--display);letter-spacing:.025em;cursor:pointer;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.storage-notice button:hover,.storage-notice button:focus-visible{background:#78934b;border-color:#d5e2c6;transform:translateY(-2px);box-shadow:0 8px 18px #061c1540;outline:2px solid #c6d7ad;outline-offset:3px}
@keyframes storageNoticeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.linkedin-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;width:max-content;min-height:48px;margin-top:10px;padding:0 17px;border:1px solid #aebca5;color:#153d34;background:transparent;font:700 10px/1.2 var(--display);letter-spacing:.03em;text-decoration:none;transition:color .2s,background .2s,border-color .2s,transform .2s,box-shadow .2s}
.linkedin-contact:hover,.linkedin-contact:focus-visible{color:#fffefa;background:#153d34;border-color:#153d34;transform:translateY(-2px);box-shadow:0 8px 20px #153d3426;outline:2px solid #8ba077;outline-offset:3px}
.footer-contact .linkedin-footer-link{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 13px;border:1px solid #587461;background:#ffffff08;color:#e3e9e0;font:700 10px/1.2 var(--display);letter-spacing:.02em;text-align:left;text-decoration:none;transition:color .2s,border-color .2s,background .2s,transform .2s,box-shadow .2s}
.footer-contact .linkedin-footer-link:hover,.footer-contact .linkedin-footer-link:focus-visible{color:var(--lime);border-color:#9cad70;background:#ffffff10;transform:translateY(-2px);box-shadow:0 8px 20px #04171140;outline:2px solid #9cad70;outline-offset:3px}
@media(max-width:700px){.gate-brand{gap:12px;min-height:72px}.gate-brand .gate-brand-mark{width:76px;height:62px;flex-basis:76px}.gate-brand-copy strong{font-size:clamp(16px,4.3vw,20px)}.gate-brand-copy span{font-size:8px}.storage-notice{left:12px;right:12px;bottom:12px;align-items:stretch;flex-direction:column;gap:14px;padding:17px 16px}.storage-notice p{font-size:12px;line-height:1.55}.storage-notice button{width:100%;min-height:44px}.linkedin-contact{width:100%}}
@media(prefers-reduced-motion:reduce){.storage-notice{animation:none}.storage-notice button,.linkedin-contact{transition:none}}
