.public-closure-banner[hidden],
.public-notice-layer[hidden]{display:none!important}

.public-closure-banner{position:relative;z-index:20;background:#f5ead9;border-bottom:1px solid rgba(65,39,23,.12);color:#2f2119}
.public-closure-banner.is-active{background:#7b241d;color:#fff;border-bottom-color:rgba(255,255,255,.1)}
.public-closure-banner-inner{width:min(1180px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.8rem;align-items:center;padding:.72rem 0}
.public-closure-icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;background:rgba(123,36,29,.12);font-weight:900}
.public-closure-banner.is-active .public-closure-icon{background:rgba(255,255,255,.14)}
.public-closure-banner strong,.public-closure-banner span{display:block}
.public-closure-banner strong{font-size:.88rem;line-height:1.2}
.public-closure-banner span{margin-top:.12rem;font-size:.78rem;line-height:1.45;color:rgba(47,33,25,.78)}
.public-closure-banner.is-active span{color:rgba(255,255,255,.86)}
.public-closure-details,.public-closure-dismiss{border:0;cursor:pointer}
.public-closure-details{padding:.52rem .8rem;border-radius:999px;background:rgba(255,255,255,.68);color:#5f281f;font-weight:800;font-size:.78rem}
.public-closure-banner.is-active .public-closure-details{background:#fff;color:#71251d}
.public-closure-dismiss{width:2rem;height:2rem;border-radius:999px;background:transparent;color:inherit;font-size:1.2rem}
.public-closure-dismiss:hover{background:rgba(255,255,255,.12)}

.public-notice-layer{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:1rem;background:rgba(18,12,9,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:auto}
.public-notice-dialog{position:relative;width:min(70rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr);overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:2rem;background:#fffaf2;box-shadow:0 2rem 6rem rgba(0,0,0,.34)}
.public-notice-close{position:absolute;top:.8rem;right:.8rem;z-index:5;display:grid;place-items:center;width:2.7rem;height:2.7rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(25,17,13,.56);color:#fff;font-size:1.45rem;cursor:pointer;backdrop-filter:blur(8px)}
.public-notice-close:hover{background:rgba(25,17,13,.78)}
.public-notice-operations{display:flex;flex-direction:column;justify-content:center;min-height:34rem;padding:clamp(2rem,5vw,4.7rem);background:linear-gradient(145deg,#271812,#4b2b1e);color:#fff}
.public-notice-operations.is-upcoming{background:linear-gradient(145deg,#4a2d1e,#7c4a2a)}
.public-notice-operations.is-active{background:linear-gradient(145deg,#5d1815,#8f2d23)}
.public-notice-operations .eyebrow{color:#e8c991}
.public-notice-operations h2{max-width:12ch;margin:.45rem 0 .8rem;font-size:clamp(2.1rem,4.5vw,4.25rem);line-height:.98;color:#fff}
.public-notice-operations>p{max-width:43rem;margin:.35rem 0;color:rgba(255,255,255,.86);line-height:1.58}
.public-notice-badge{align-self:flex-start;margin-bottom:1.15rem;padding:.42rem .75rem;border-radius:999px;background:#efd6a8;color:#4a261a;font-size:.76rem;font-weight:900;letter-spacing:.02em}
.public-notice-note{padding:.85rem 1rem;border:1px solid rgba(255,255,255,.13);border-radius:1rem;background:rgba(255,255,255,.07);font-weight:700}
.public-notice-next{margin-top:.8rem!important}
.public-notice-next strong{color:#f2d6a5}
.public-notice-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.4rem}
.public-notice-actions .btn{min-width:10rem;text-align:center}
.public-notice-mini-status{margin-top:.8rem}
.public-notice-mini-status .opening-status{width:fit-content}

.public-notice-privacy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,3.25rem);background:#f8f2e9;color:#2b201a}
.public-notice-privacy .eyebrow{color:#93552e}
.public-notice-privacy h3{margin:.35rem 0 .65rem;font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.05}
.public-notice-privacy>p{margin:0;color:#6f5d51;font-size:.92rem;line-height:1.55}
.public-privacy-options{display:grid;gap:.65rem;margin:1.2rem 0 0;padding:0;border:0}
.public-privacy-options label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:start;padding:.85rem;border:1px solid #dfd1c3;border-radius:1rem;background:#fff;cursor:pointer}
.public-privacy-options input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:#7b241d}
.public-privacy-options strong,.public-privacy-options small{display:block}
.public-privacy-options strong{font-size:.92rem}
.public-privacy-options small{margin-top:.2rem;color:#79685d;font-size:.78rem;line-height:1.38}
.public-privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem}
.public-privacy-actions .btn{width:100%;justify-content:center;text-align:center}
.public-privacy-legal{margin-top:1rem!important;padding-top:.8rem;border-top:1px solid #e3d8cd;font-size:.75rem!important}
.public-privacy-legal a{font-weight:800}
.footer-privacy-button{appearance:none;border:0;padding:0;background:transparent;color:#c6bbb3;font:inherit;font-size:.88rem;text-align:left;cursor:pointer;text-decoration:none;overflow-wrap:anywhere}.footer-privacy-button:hover{color:#fff;text-decoration:underline;text-underline-offset:.2em}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.public-notice-open{overflow:hidden}

@media(max-width:900px){
  .public-notice-dialog{grid-template-columns:1fr;width:min(42rem,calc(100vw - 1rem));max-height:calc(100dvh - 1rem);border-radius:1.5rem}
  .public-notice-operations{min-height:auto;padding:2.6rem 1.5rem 1.7rem}
  .public-notice-operations h2{font-size:clamp(2rem,8vw,3rem)}
  .public-notice-privacy{padding:1.5rem}
}

@media(max-width:760px){
  .public-closure-banner-inner{width:min(100% - 1rem,42rem);grid-template-columns:auto minmax(0,1fr) auto;gap:.6rem;padding:.6rem 0}
  .public-closure-details{grid-column:2;justify-self:start}
  .public-closure-dismiss{grid-column:3;grid-row:1;align-self:start}
  .public-closure-banner span{font-size:.74rem}
  .public-notice-layer{place-items:end center;padding:0}
  .public-notice-dialog{width:100%;max-height:92dvh;border-radius:1.35rem 1.35rem 0 0}
  .public-notice-close{top:.65rem;right:.65rem}
  .public-notice-operations{padding:2.7rem 1.1rem 1.35rem}
  .public-notice-operations h2{max-width:14ch;font-size:clamp(2rem,10vw,2.8rem)}
  .public-notice-actions{display:grid;grid-template-columns:1fr}
  .public-notice-actions .btn{width:100%;min-width:0}
  .public-notice-privacy{padding:1.35rem 1rem calc(1rem + env(safe-area-inset-bottom))}
  .public-privacy-actions{grid-template-columns:1fr}
  .public-privacy-actions .primary{order:-1}
}

@media(prefers-reduced-motion:reduce){
  .public-notice-layer,.public-notice-dialog,.public-closure-banner{scroll-behavior:auto}
}
