/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--griot-bg:#0e0a07;--griot-fg:#ffffff;--griot-fg-soft:rgba(255,255,255,0.82);--griot-fg-muted:rgba(255,255,255,0.66);--griot-accent:#f3b656;--griot-accent-strong:#ffd089;--griot-accent-ink:#1a120a;--glass-bg:rgba(255,255,255,0.22);--glass-bg-strong:rgba(255,255,255,0.32);--glass-border:rgba(255,255,255,0.42);--glass-inner-tint:linear-gradient(180deg,rgba(255,255,255,0.22) 0%,rgba(255,255,255,0.10) 100%);--glass-shadow:0 24px 60px rgba(0,0,0,0.45);--header-h:64px;--btn-h:52px;--btn-px:28px;--btn-radius:12px;}*{box-sizing:border-box;}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--drupal-displace-offset-top,0px) + var(--header-h) + 16px);}html{overflow-x:hidden;}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",system-ui,sans-serif;color:var(--griot-fg);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip;background-color:#0a0805;}a{color:var(--griot-accent-strong);}a:hover{color:var(--griot-fg);}.site-header{position:fixed;top:var(--drupal-displace-offset-top,0);left:0;right:0;height:var(--header-h);z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,48px);background:transparent;border-bottom:1px solid transparent;transition:background 280ms ease,border-color 280ms ease,backdrop-filter 280ms ease,-webkit-backdrop-filter 280ms ease,top 200ms ease;}.site-header.is-scrolled{background:rgba(14,10,7,0.72);border-bottom:1px solid var(--glass-border);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);}.site-header__link{color:var(--griot-fg);text-decoration:none;font-size:0.95rem;font-weight:500;letter-spacing:0.01em;padding:8px 12px;border-radius:8px;transition:background 160ms ease,color 160ms ease;}.site-header__link:hover{background:rgba(255,255,255,0.10);color:var(--griot-fg);}.site-header__brand{font-weight:700;font-size:1.05rem;letter-spacing:0.02em;color:var(--griot-fg);text-decoration:none;}.site-header__brand-mark{color:var(--griot-accent);margin-right:6px;}.site-header__nav{display:flex;gap:8px;align-items:center;}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:96px 20px 120px;background-color:#1a120a;background-image:linear-gradient(180deg,rgba(0,0,0,0.20) 0%,rgba(0,0,0,0.40) 35%,rgba(0,0,0,0.60) 75%,rgba(10,8,5,0.85) 100%),image-set(url(/themes/custom/griot/images/grotto-1200.webp) type("image/webp"),url(/themes/custom/griot/images/grotto-1200.jpg)  type("image/jpeg"));background-size:cover;background-position:center 30%;background-repeat:no-repeat;}@media (min-width:901px){.hero{background-image:linear-gradient(180deg,rgba(0,0,0,0.20) 0%,rgba(0,0,0,0.40) 35%,rgba(0,0,0,0.60) 75%,rgba(10,8,5,0.85) 100%),image-set(url(/themes/custom/griot/images/grotto-2400.webp) type("image/webp"),url(/themes/custom/griot/images/grotto-2400.jpg)  type("image/jpeg"));}}@media (min-width:901px){.hero{min-height:calc(100vw / 0.75);}}.hero__inner{max-width:920px;z-index:2;animation:hero-fade-up 800ms cubic-bezier(0.2,0.8,0.2,1) both;}.hero__title{margin:0 0 16px;font-size:clamp(2.6rem,9vw,5.5rem);font-weight:800;letter-spacing:-0.02em;line-height:1.02;color:var(--griot-fg);text-shadow:0 4px 32px rgba(0,0,0,0.7);}.hero__title-mark{display:inline-block;background:linear-gradient(120deg,var(--griot-accent-strong) 0%,#ffe1a8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}.hero__subtitle{margin:0 auto;max-width:620px;font-size:clamp(1.05rem,2.8vw,1.4rem);color:var(--griot-fg);opacity:0.95;text-shadow:0 2px 18px rgba(0,0,0,0.7);}.hero__scroll-hint{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:0.78rem;color:var(--griot-fg-muted);letter-spacing:0.22em;text-transform:uppercase;animation:hero-bob 2.6s ease-in-out infinite;}.hero__scroll-hint::after{content:"";display:block;margin:6px auto 0;width:1px;height:18px;background:var(--griot-fg-muted);}@keyframes hero-fade-up{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}@keyframes hero-bob{0%,100%{transform:translate(-50%,0);opacity:0.6;}50%{transform:translate(-50%,6px);opacity:1;}}.cta-band{position:relative;margin-top:-72px;padding:0 20px;display:flex;justify-content:center;z-index:4;}.cta-card{width:min(720px,100%);background:var(--glass-inner-tint),var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;padding:24px 22px;box-shadow:var(--glass-shadow),inset 0 1px 0 rgba(255,255,255,0.35);backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);display:grid;gap:18px;}.cta-card__lead h2{margin:0 0 6px;font-size:1.2rem;color:var(--griot-fg);}.cta-card__lead p{margin:0;color:var(--griot-fg-soft);font-size:0.95rem;}.cta-card__actions{display:grid;grid-template-columns:1fr;gap:10px;}.cta-card__action--full{grid-column:1 / -1;}@media (min-width:640px){.cta-card{padding:28px 32px;grid-template-columns:1fr auto;align-items:center;gap:24px;}.cta-card__actions{grid-template-columns:auto auto;gap:12px;}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--btn-h);padding:0 var(--btn-px);border-radius:var(--btn-radius);font-weight:600;font-size:1rem;letter-spacing:0.01em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform 120ms ease,background 160ms ease,border-color 160ms ease,color 160ms ease,box-shadow 160ms ease;white-space:nowrap;-webkit-tap-highlight-color:transparent;width:100%;}@media (min-width:640px){.btn{width:auto;}}.btn:active{transform:translateY(1px);}.btn:focus-visible{outline:2px solid var(--griot-accent-strong);outline-offset:2px;}.btn--primary{background:var(--griot-accent);color:var(--griot-accent-ink);border-color:var(--griot-accent);box-shadow:0 6px 18px rgba(243,182,86,0.25);}.btn--primary:hover{background:var(--griot-accent-strong);border-color:var(--griot-accent-strong);color:var(--griot-accent-ink);box-shadow:0 10px 28px rgba(243,182,86,0.35);}.btn--ghost{background:rgba(255,255,255,0.08);color:var(--griot-fg);border-color:var(--glass-border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}.btn--ghost:hover{background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.4);color:var(--griot-fg);}.btn--small{--btn-h:40px;--btn-px:18px;font-size:0.9rem;width:auto;}.inside{padding:80px 20px 60px;}.inside__inner{max-width:1100px;margin:0 auto;}.inside__title{margin:0 0 8px;font-size:clamp(1.7rem,4vw,2.4rem);font-weight:700;letter-spacing:-0.01em;color:var(--griot-fg);text-shadow:0 2px 18px rgba(0,0,0,0.5);}.inside__lede{margin:0 0 28px;color:var(--griot-fg-soft);font-size:1rem;max-width:680px;}.tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:14px;}@media (min-width:540px){.tiles{grid-template-columns:repeat(2,1fr);gap:16px;}}@media (min-width:1000px){.tiles{grid-template-columns:repeat(4,1fr);}}.tile{padding:22px 22px 24px;border:1px solid var(--glass-border);border-radius:16px;background:var(--glass-inner-tint),var(--glass-bg);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.30);transition:border-color 200ms ease,transform 200ms ease,background 200ms ease,box-shadow 200ms ease;}.tile:hover{border-color:rgba(255,255,255,0.4);background:var(--glass-bg-strong);transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,0,0,0.35);}.tile h3{margin:0 0 6px;font-size:1.1rem;color:var(--griot-fg);letter-spacing:0.01em;}.tile p{margin:0;font-size:0.92rem;color:var(--griot-fg-soft);line-height:1.5;}.page-main{max-width:1100px;margin:0 auto;padding:calc(var(--drupal-displace-offset-top,0px) + var(--header-h) + 32px)
           20px 60px;color:var(--griot-fg-soft);}.page-main h1,.page-main h2,.page-main h3{color:var(--griot-fg);}.page-main p{color:var(--griot-fg-soft);}.is-front-page .page-main{display:none;}.page-main input,.page-main select,.page-main textarea,.page-main button,.cta-band input,.cta-band select,.cta-band textarea{max-width:100%;width:100%;box-sizing:border-box;}.page-main input[type="submit"],.page-main input[type="button"],.page-main input[type="reset"],.page-main button[type="submit"]{width:auto;}.page-main .form-item,.page-main .js-form-item,.page-main .form-actions,.page-main fieldset{max-width:100%;box-sizing:border-box;}.page-main input[type="checkbox"],.page-main input[type="radio"]{width:auto;max-width:none;}.site-footer{padding:28px 20px 40px;text-align:center;font-size:0.85rem;color:var(--griot-fg-muted);background:rgba(10,8,5,0.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--glass-border);}.site-footer a{color:var(--griot-fg-soft);}.site-footer a:hover{color:var(--griot-fg);}.is-auth-page{--auth-bg:#ffffff;--auth-surface:#faf6f0;--auth-text:#1a120a;--auth-text-muted:#6b4e3a;--auth-text-subtle:#a89684;--auth-border:#e8d5b7;--auth-border-up:#c8a782;--auth-accent:#d4a574;--auth-accent-up:#b8864e;--auth-link:#8b5a2b;background:var(--auth-bg);color:var(--auth-text);}.is-auth-page{background-image:none !important;background-color:var(--auth-bg) !important;}.is-auth-page::before{display:none !important;}.is-auth-page .site-header{background:rgb(255 255 255 / 0.94);border-bottom:1px solid var(--auth-border);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);}.is-auth-page .site-header.is-scrolled{background:rgb(255 255 255 / 0.94);border-bottom:1px solid var(--auth-border);}.is-auth-page .site-header__brand{color:var(--auth-text);}.is-auth-page .site-header__brand-mark{color:var(--auth-accent);}.is-auth-page .site-header__link{color:var(--auth-text-muted);}.is-auth-page .site-header__link:hover{color:var(--auth-text);background:var(--auth-surface);}.is-auth-page .btn--ghost{background:transparent;color:var(--auth-text);border-color:var(--auth-border-up);}.is-auth-page .btn--ghost:hover{background:var(--auth-surface);border-color:var(--auth-accent);color:var(--auth-text);}.is-auth-page .btn--primary{background:var(--auth-accent);color:var(--auth-text);border-color:var(--auth-accent);}.is-auth-page .btn--primary:hover{background:var(--auth-accent-up);border-color:var(--auth-accent-up);color:#fff;}.auth-brand{text-align:center;margin-bottom:28px;}.auth-brand a{display:inline-block;font-size:1.4rem;font-weight:700;letter-spacing:-0.01em;color:var(--auth-text);text-decoration:none;}.auth-brand__mark{color:var(--auth-accent);margin-right:4px;}.is-auth-page .page-main--auth,.is-auth-page .page-main{max-width:440px;margin:0 auto;padding:calc(var(--drupal-displace-offset-top,0px) + var(--header-h) + 48px) 24px 60px;color:var(--auth-text);display:block;}.is-auth-page .page-main h1,.is-auth-page .page-main h2,.is-auth-page .page-main h3{color:var(--auth-text);}.is-auth-page .page-main p{color:var(--auth-text-muted);}.is-auth-page .page-main .form-item,.is-auth-page .page-main .js-form-item{margin-block:18px;}.is-auth-page .page-main label{color:var(--auth-text);font-weight:600;font-size:0.95rem;margin-bottom:6px;display:inline-block;}.is-auth-page .page-main input[type="text"],.is-auth-page .page-main input[type="email"],.is-auth-page .page-main input[type="password"],.is-auth-page .page-main input[type="url"],.is-auth-page .page-main input[type="search"],.is-auth-page .page-main input[type="tel"],.is-auth-page .page-main input[type="number"],.is-auth-page .page-main input[type="date"],.is-auth-page .page-main select,.is-auth-page .page-main textarea{background:var(--auth-surface);color:var(--auth-text);border:1px solid var(--auth-border);border-radius:10px;padding:10px 14px;min-height:44px;width:100%;max-width:100%;box-sizing:border-box;font:inherit;transition:border-color 140ms ease,background 140ms ease,box-shadow 140ms ease;}.is-auth-page .page-main input:focus,.is-auth-page .page-main select:focus,.is-auth-page .page-main textarea:focus{outline:0;border-color:var(--auth-accent);background:#fff;box-shadow:0 0 0 3px rgb(212 165 116 / 0.20);}.is-auth-page .page-main input::placeholder{color:var(--auth-text-subtle);}.is-auth-page .page-main .description,.is-auth-page .page-main .form-item__description{color:var(--auth-text-muted);font-size:0.85rem;margin-top:6px;line-height:1.5;}.is-auth-page .page-main .form-required::after{background:var(--auth-accent);}.is-auth-page .page-main input[type="submit"],.is-auth-page .page-main button[type="submit"]{background:var(--auth-accent);color:var(--auth-text);border:1px solid var(--auth-accent);border-radius:10px;padding:0 22px;height:48px;font:inherit;font-weight:600;cursor:pointer;transition:background 140ms ease,border-color 140ms ease,color 140ms ease;}.is-auth-page .page-main input[type="submit"]:hover,.is-auth-page .page-main button[type="submit"]:hover{background:var(--auth-accent-up);border-color:var(--auth-accent-up);color:#fff;}.is-auth-page .page-main a{color:var(--auth-link);text-decoration-color:rgb(139 90 43 / 0.4);}.is-auth-page .page-main a:hover{color:var(--auth-text);text-decoration-color:currentColor;}.is-auth-page .page-main [id*="local-tasks"] ul,.is-auth-page .page-main ul.tabs,.is-auth-page .page-main nav.tabs ul{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--auth-border);}.is-auth-page .page-main [id*="local-tasks"] li,.is-auth-page .page-main ul.tabs li,.is-auth-page .page-main nav.tabs li{margin:0;list-style:none;}.is-auth-page .page-main [id*="local-tasks"] a,.is-auth-page .page-main ul.tabs a,.is-auth-page .page-main nav.tabs a{display:inline-block;padding:10px 14px;color:var(--auth-text-muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500;font-size:0.95rem;}.is-auth-page .page-main [id*="local-tasks"] a:hover{color:var(--auth-text);}.is-auth-page .page-main [id*="local-tasks"] a.is-active,.is-auth-page .page-main ul.tabs a.is-active,.is-auth-page .page-main nav.tabs a.is-active{color:var(--auth-text);border-bottom-color:var(--auth-accent);}.is-auth-page .site-footer{background:var(--auth-surface);color:var(--auth-text-muted);border-top:1px solid var(--auth-border);backdrop-filter:none;-webkit-backdrop-filter:none;}.is-auth-page .site-footer a{color:var(--auth-link);}#toolbar-administration{font-family:system-ui,sans-serif;}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.001ms !important;transition-duration:0.001ms !important;}html{scroll-behavior:auto;}}
