html.constructor-document{scrollbar-gutter:auto;scroll-padding:0;overflow:hidden;background:#062b22}
.constructor-page{margin:0;height:100vh;height:100dvh;overflow:hidden;background:#062b22}
.constructor-page #main,.constructor-fullscreen{position:fixed;inset:0;width:100%;height:100%;margin:0;overflow:hidden;background:#062b22}
.constructor-fullscreen iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:#062b22}
.constructor-connection{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:28px;background:var(--brand-green);color:#f5f4ec;text-align:center}
.constructor-connection>img{width:min(430px,80vw);margin-bottom:24px}
.constructor-connection h2{font-size:28px;text-transform:none;color:#f5f4ec}
.constructor-connection p{margin:0;max-width:42ch;color:#d0d7d1}
.constructor-back{padding:10px;text-decoration:underline;text-underline-offset:.25em}
.constructor-welcome{box-sizing:border-box;width:min(760px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:36px 40px;border:0;border-radius:16px;color:#073c2d;background:#f5f8f3;box-shadow:0 24px 80px #00140e47;overflow:auto;overscroll-behavior:contain;font:400 16px/1.6 Manrope,Arial,sans-serif;scrollbar-color:#8da79a #e6eee6}
.constructor-welcome::backdrop{background:#041f18b8;backdrop-filter:none}
.constructor-welcome h1{margin:0 0 16px;font-size:clamp(26px,4vw,34px);font-weight:650;line-height:1.18;letter-spacing:-.025em;text-wrap:balance;color:#073c2d}
.constructor-welcome p{margin:0;color:#34574b;max-width:70ch}
.constructor-welcome ol{display:grid;gap:12px;margin:24px 0;padding-left:23px}
.constructor-welcome li{padding-left:5px}
.constructor-welcome li::marker,.constructor-welcome strong{font-weight:650}
.constructor-welcome .constructor-enter{width:100%;min-height:52px;margin:0;padding:13px 20px;border:0;border-radius:7px;background:#d4bd83;color:#073c2d;font:650 17px/1.4 Manrope,Arial,sans-serif;white-space:normal}
.constructor-welcome .constructor-enter:hover{background:#e3cd98}
.constructor-welcome :is(button,a,summary):focus-visible{outline:3px solid #2b8762;outline-offset:4px}
.constructor-welcome details{margin-top:22px;padding-top:18px;border-top:1px solid #cbd9ce}
.constructor-welcome summary{width:fit-content;color:#34574b;font-size:14px;cursor:pointer}
.constructor-welcome details p{margin:14px 0;font-size:14px}
.constructor-welcome nav{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px}
.constructor-welcome a{color:#075039;text-decoration:underline;text-underline-offset:.22em}
.constructor-welcome::selection,.constructor-welcome ::selection{color:#073c2d;background:#e3cd98}
.constructor-welcome[open]{animation:constructor-welcome-in .2s cubic-bezier(.22,1,.36,1)}
.constructor-noscript{position:fixed;inset:0;z-index:5;margin:0;padding:32px;color:#f5f8f3;background:#073c2d}
@keyframes constructor-welcome-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.constructor-welcome{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:26px 22px;font-size:15px}.constructor-welcome h1{font-size:28px}.constructor-welcome ol{margin:20px 0;gap:10px}.constructor-welcome .constructor-enter{font-size:16px}}
@media(prefers-reduced-motion:reduce){.constructor-welcome[open]{animation:none}}
