.cform{background:var(--bg-900)}.cform__layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(1.75rem,4vw,3.5rem);display:grid}.cform__intro{gap:var(--sp-5);top:calc(var(--nav-h) + 2rem);display:grid;position:sticky}.cform__intro .section-heading{margin-bottom:0}.cform__points{background:var(--bg-800);border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--r-xs);gap:.6rem;padding:1rem 1.15rem;display:grid}.cform__form{gap:var(--sp-5);background:var(--bg-800);border:1px solid var(--border);border-radius:var(--r-md);padding:clamp(1.25rem,3vw,2.25rem);display:grid;position:relative;overflow:hidden}.cform__form:before{content:"";background:linear-gradient(90deg, var(--accent), transparent 65%);height:2px;position:absolute;inset:0 0 auto}.cform__error{font-size:var(--fs-sm);color:#ffd7d7;border-radius:var(--r-xs);background:#ff4d4d1a;border:1px solid #ff4d4d59;align-items:flex-start;gap:.6rem;padding:.9rem 1.1rem;line-height:1.6;display:flex}.cform__error svg{color:var(--danger);flex:none;margin-top:2px}.cform__actions{padding-top:var(--sp-4);border-top:1px solid var(--border);flex-wrap:wrap;gap:.6rem;display:flex}.cform__hint{color:var(--text-faint);align-items:flex-start;gap:.45rem;font-size:.72rem;line-height:1.6;display:flex}.cform__hint svg{color:var(--warn);flex:none;margin-top:2px}.cform__success{border-radius:var(--r-sm);animation:af-fade-up .45s var(--ease) both;background:#3ddc8414;border:1px solid #3ddc8459;gap:.85rem;padding:1.1rem 1.25rem;display:flex}.cform__success-icon{width:42px;height:42px;color:var(--ok);border-radius:var(--r-round);background:#3ddc841f;border:1px solid #3ddc8459;flex:none;justify-content:center;align-items:center;display:inline-flex}.cform__success div{gap:.25rem;display:grid}.cform__success strong{font-family:var(--font-display);text-transform:uppercase;color:var(--text);font-size:1.05rem;font-weight:600}.cform__success p{font-size:var(--fs-sm);color:var(--text-dim);line-height:1.55}.cform__again{font-family:var(--font-tech);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--accent-line);justify-self:start;margin-top:.35rem;font-size:.66rem;font-weight:600}@media (max-width:900px){.cform__layout{grid-template-columns:1fr}.cform__intro{position:static}}@media (max-width:560px){.cform__actions .btn{flex:100%}}
.cmap{background:var(--bg-800)}.cmap__frame{border:1px solid var(--border);border-radius:var(--r-md);filter:grayscale(.55)contrast(1.05)brightness(.85);transition:filter var(--t-med) var(--ease);position:relative;overflow:hidden}.cmap__frame:hover{filter:grayscale(.25)contrast(1.05)brightness(.92)}.cmap__frame iframe{border:0;width:100%;height:clamp(320px,46vw,500px);display:block}.cmap__placeholder{background:var(--bg-850);border:1px solid var(--border);border-radius:var(--r-md);place-items:center;min-height:clamp(320px,42vw,460px);display:grid;position:relative;overflow:hidden}.cmap__placeholder-grid{background-image:var(--grid-lines);opacity:.85;background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 20%,#0000 78%);mask-image:radial-gradient(#000 20%,#0000 78%)}.cmap__placeholder-body{z-index:2;text-align:center;padding:var(--sp-5);justify-items:center;gap:.7rem;max-width:32rem;display:grid;position:relative}.cmap__pin{width:54px;height:54px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-round);justify-content:center;align-items:center;display:inline-flex;box-shadow:0 0 0 10px #ff5a1f12}.cmap__placeholder-title{font-family:var(--font-display);text-transform:uppercase;color:var(--text);font-size:clamp(1.4rem,3vw,2rem);font-weight:600;line-height:1.05}.cmap__placeholder-address{font-size:var(--fs-md);color:var(--text-dim)}.cmap__hint{color:var(--text-faint);max-width:46ch;font-size:.72rem;line-height:1.6}.cmap__hint code{font-family:var(--font-tech);color:var(--accent);background:var(--accent-soft);border-radius:3px;padding:.1rem .3rem;font-size:.7rem}
.hours{background:var(--bg-900)}.hours__layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:clamp(1.25rem,3vw,2.5rem);display:grid}.hours__panel{gap:var(--sp-4);background:var(--bg-800);border:1px solid var(--border);border-radius:var(--r-md);align-content:start;padding:clamp(1.15rem,2.5vw,1.75rem);display:grid}.hours__visit{background:var(--bg-800);border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--r-md);align-content:center;gap:.85rem;padding:clamp(1.15rem,2.5vw,1.75rem);display:grid}.hours__visit-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.02em;color:var(--text);font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:600;line-height:1.05}.hours__visit-copy{font-size:var(--fs-sm);color:var(--text-dim);max-width:46ch;line-height:1.65}.hours__visit-list{border-top:1px solid var(--border);gap:.55rem;padding-top:.85rem;list-style:none;display:grid}.hours__visit-list li{font-size:var(--fs-sm);color:var(--text-muted);align-items:flex-start;gap:.6rem;line-height:1.55;display:flex}.hours__visit-list svg{color:var(--accent);flex:none;margin-top:3px}.hours__visit-list a{color:var(--text);border-bottom:1px solid var(--border-2);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease)}.hours__visit-list a:hover{color:var(--accent);border-color:var(--accent-line)}.hours__visit-actions{flex-wrap:wrap;gap:.55rem;display:flex}.hours__head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.75rem;display:flex}.hours__head .tech-label{color:var(--text-dim);align-items:center;gap:.4rem;display:inline-flex}.hours__head svg{color:var(--accent)}.hours__badge{font-family:var(--font-tech);letter-spacing:.12em;text-transform:uppercase;border-radius:var(--r-pill);align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.66rem;font-weight:700;display:inline-flex}.hours__badge.is-open{color:var(--ok);background:#3ddc841a;border:1px solid #3ddc8452}.hours__badge.is-closed{color:var(--text-dim);background:var(--bg-700);border:1px solid var(--border-2)}.hours__list{list-style:none;display:grid}.hours__row{border-bottom:1px solid var(--border);grid-template-columns:minmax(110px,auto) 1fr auto;align-items:baseline;gap:.75rem;padding:.55rem 0;display:grid}.hours__row:last-child{border-bottom:none}.hours__row.is-today{color:var(--text)}.hours__row.is-today .hours__day,.hours__row.is-today .hours__time{color:var(--accent);font-weight:600}.hours__day{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:.5rem;display:inline-flex}.hours__day em{font-style:normal;font-family:var(--font-tech);letter-spacing:.12em;text-transform:uppercase;color:#0a0a0a;background:var(--accent);border-radius:3px;padding:.1rem .35rem;font-size:.58rem;font-weight:700}.hours__dots{border-bottom:1px dotted var(--border-2);transform:translateY(-3px)}.hours__time{font-family:var(--font-tech);font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap;font-size:.82rem}.hours__note{color:var(--text-faint);font-size:.72rem;line-height:1.6}@media (max-width:820px){.hours__layout{grid-template-columns:1fr}}@media (max-width:460px){.hours__visit-actions .btn{flex:100%}}.hours__empty{background:var(--bg-800);border:1px dashed var(--border-2);border-radius:var(--r-md);color:var(--accent);align-items:flex-start;gap:.9rem;padding:1.25rem 1.5rem;display:flex}.hours__empty div{gap:.3rem;display:grid}.hours__empty h2{font-family:var(--font-display);text-transform:uppercase;color:var(--text);font-size:1.2rem;font-weight:600}.hours__empty p{font-size:var(--fs-sm);color:var(--text-dim);line-height:1.6}.hours__empty code{font-family:var(--font-tech);color:var(--accent);background:var(--accent-soft);border-radius:3px;padding:.05rem .3rem;font-size:.78rem}
.ccta{background:var(--bg-800);border-top:1px solid var(--border);position:relative;overflow:hidden}.ccta__glow{background:radial-gradient(ellipse at center, var(--accent-glow) 0%, transparent 66%);opacity:.28;pointer-events:none;width:min(820px,92vw);height:460px;position:absolute;bottom:-260px;left:50%;transform:translate(-50%)}.ccta__inner{z-index:2;text-align:center;justify-items:center;gap:clamp(.9rem,1.8vw,1.35rem);max-width:50rem;display:grid;position:relative}.ccta__title{text-transform:uppercase;letter-spacing:-.03em;font-size:clamp(2.2rem,6vw,4rem);font-weight:700;line-height:.92}.ccta__lede{max-width:50ch;font-size:var(--fs-md);color:var(--text-dim);line-height:1.65}.ccta__actions{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}@media (max-width:700px){.ccta__actions .btn{flex:100%}}
[id]{scroll-margin-top:calc(var(--nav-h) + 1rem)}
