@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-latin.woff2') format('woff2');}
@font-face{font-family:'Lexend Deca';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/lexend-deca-latin.woff2') format('woff2');}

.cookie-dialog{
  --cookie-cream:#faf7f0;
  --cookie-copper:#976348;
  color:#242a56;
  background:var(--cookie-cream);
  border:1px solid #6f9183;
  border-top:5px solid #6f9183;
  border-radius:3px;
  padding:38px;
  width:calc(100% - 32px);
  max-width:680px;
  max-height:calc(100dvh - 32px);
  overflow:hidden;
  box-shadow:0 24px 80px rgba(36,42,86,.25);
}
.cookie-dialog[open]{display:flex;flex-direction:column;}
.cookie-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:5px;margin:-5px;}
.cookie-dialog::backdrop{background:rgba(36,42,86,.6);}
body:has(.cookie-dialog[open]){overflow:hidden;}
.cookie-dialog .cookie-kicker{font-family:'Lexend Deca',sans-serif;font-size:.73rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cookie-copper);font-weight:600;margin-bottom:14px;padding-right:44px;}
.cookie-dialog h2{font-size:clamp(1.6rem,5vw,2rem);line-height:1.2;padding-right:28px;margin-bottom:18px;}
.cookie-dialog p{font-size:.93rem;line-height:1.65;margin-bottom:14px;}
.cookie-dialog .cookie-close{position:absolute;top:14px;right:14px;z-index:1;width:44px;height:44px;font:28px/1 'Inter',sans-serif;color:#242a56;background:var(--cookie-cream);border:1px solid transparent;cursor:pointer;border-radius:2px;}
.cookie-dialog .cookie-close:hover{background:#e8efea;}
.cookie-dialog a,.cookie-notice a{text-decoration:underline;text-underline-offset:3px;}
.cookie-dialog .cookie-policy-link{font-size:.86rem;color:#242a56;}
.cookie-actions{display:grid;flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:26px;}
.cookie-actions button{min-height:52px;padding:12px 10px;font-family:'Lexend Deca',sans-serif;font-size:.83rem;line-height:1.4;font-weight:500;border:1.5px solid #242a56;border-radius:2px;background:transparent;color:#242a56;cursor:pointer;}
.cookie-actions button:hover{background:#e8efea;}
.cookie-actions button:disabled{opacity:.65;cursor:wait;}
.cookie-dialog :focus-visible,.cookie-footer :focus-visible{outline:3px solid #976348;outline-offset:4px;}
.cookie-footer :focus-visible{outline-color:#cfa887;}
.cookie-dialog .cookie-category{margin:22px 0 16px;padding:18px;background:#e8efea;border-left:3px solid #6f9183;}
.cookie-category-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px;}
.cookie-category-head h3{font-size:1rem;}
.cookie-category-head span{font-size:.72rem;white-space:nowrap;font-family:'Lexend Deca',sans-serif;letter-spacing:.04em;}
.cookie-dialog .cookie-category p{margin:0;font-size:.85rem;}
.cookie-dialog .cookie-small{font-size:.8rem;}
.cookie-error{color:#793c29;}
.cookie-footer{margin-top:26px;}
.cookie-footer-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;}
.cookie-settings,.cookie-notice summary{font:500 .82rem/1.6 'Lexend Deca',sans-serif;color:#fff;cursor:pointer;}
.cookie-settings{background:transparent;border:1px solid #6f9183;border-radius:2px;min-height:44px;padding:9px 16px;}
.cookie-settings:hover{background:rgba(111,145,131,.2);}
.cookie-notice{margin-top:16px;max-width:820px;}
.cookie-notice summary{padding:10px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;}
.cookie-notice[open] summary{margin-bottom:12px;}
.cookie-notice h3{color:#fff;font-size:.92rem;margin:20px 0 8px;}
.cookie-notice p{font-size:.85rem;line-height:1.75;color:#e2e8e4;margin-bottom:12px;}
.cookie-notice code{overflow-wrap:anywhere;}
.cookie-status{font-size:.8rem;color:#e2e8e4;margin-top:12px;}
.cookie-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
@media(max-width:560px){
  .cookie-dialog{padding:28px 22px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);}
  .cookie-actions{grid-template-columns:1fr;gap:10px;margin-top:22px;}
}
