/* =====================================================================
   gate.css — "The Sanctuary Awaits" coming-soon / gated landing page
   Vespers design system · Vanessa Musenja Ministries
   Tokens live in main.css :root — this file extends them.
   ===================================================================== */

/* ── Page reset for gate layout ─────────────────────────────────────────── */
.gate-page {
  overflow: hidden;
  height: 100dvh;
}
.gate-page, .gate-page * { box-sizing: border-box; }

/* ── sr-only utility (also in main.css; safe to repeat) ─────────────────── */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ═══════════════════════════════════════════════════════════════════════════
   GATE WRAP — full-viewport container
   ═══════════════════════════════════════════════════════════════════════════ */
.gate-wrap {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(20px, 4vw, 48px);
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

/* ── Atmospheric backdrop ────────────────────────────────────────────────── */
.gate-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.gate-bg-img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center;
  filter: blur(3px) saturate(.75);
  transition: opacity 1.6s var(--ease-veil);
  opacity: 0;
  transform-origin: center center;
}
.gate-bg-img.on {
  opacity: 1;
  animation: bg-drift 36s ease-in-out infinite alternate;
}
@keyframes bg-drift {
  0%   { transform: scale(1.10) translate( 0%,    0%); }
  25%  { transform: scale(1.15) translate(-1.5%, -1%); }
  50%  { transform: scale(1.12) translate( 1.5%, -2%); }
  75%  { transform: scale(1.16) translate(-1%,    1%); }
  100% { transform: scale(1.10) translate( 2%,   -1%); }
}

.gate-bg-scrim {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(170deg,
      rgba(20,22,46,.88) 0%,
      rgba(27,30,61,.82) 40%,
      rgba(14,16,32,.92) 100%);
}

/* Gold candle-glow radial — central warmth */
.gate-glow {
  position: absolute;
  top: 42%; left: 50%;
  transform: translate(-50%, -50%);
  width: 600px; height: 600px;
  border-radius: 50%;
  background: radial-gradient(
    ellipse at center,
    rgba(198,164,92,.18) 0%,
    rgba(198,164,92,.06) 40%,
    transparent 70%
  );
  pointer-events: none;
  animation: candleBreath 5s ease-in-out infinite;
}
@keyframes candleBreath {
  0%, 100% { opacity: .8; transform: translate(-50%, -50%) scale(1); }
  50%       { opacity: 1;  transform: translate(-50%, -50%) scale(1.06); }
}

/* ── Gilt thread (decorative) ────────────────────────────────────────────── */
.gate-thread {
  position: fixed;
  left: 28px; top: 80px; bottom: 80px;
  width: 1px;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(var(--hairline-gold), rgba(198,164,92,.08));
  display: none;
}
@media (min-width: 1200px) { .gate-thread { display: block; } }

.gate-bead {
  position: absolute;
  left: 50%; top: 30%;
  width: 8px; height: 8px;
  background: var(--gilt-500);
  transform: translate(-50%, 0) rotate(45deg);
  box-shadow: 0 0 0 3px rgba(198,164,92,.18), 0 0 14px 2px rgba(226,203,148,.5);
  animation: beadFloat 6s ease-in-out infinite;
}
@keyframes beadFloat {
  0%, 100% { top: 30%; }
  50%       { top: 60%; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   GATE CARD — the central content panel
   ═══════════════════════════════════════════════════════════════════════════ */
.gate-card {
  position: relative;
  z-index: 10;
  width: 100%;
  max-width: 560px;
  margin: auto;
  padding: clamp(36px, 5vw, 60px) clamp(28px, 5vw, 56px) clamp(28px, 4vw, 44px);
  border-radius: 24px;
  background:
    radial-gradient(70% 50% at 60% 20%, rgba(226,203,148,.10), transparent 60%),
    rgba(27,30,61,.54);
  border: 1px solid rgba(198,164,92,.22);
  backdrop-filter: blur(28px) saturate(1.2);
  -webkit-backdrop-filter: blur(28px) saturate(1.2);
  box-shadow:
    0 2px 0 rgba(198,164,92,.28) inset,
    0 60px 120px -30px rgba(0,0,0,.60),
    0 0 0 1px rgba(198,164,92,.10);
  text-align: center;
  /* Entrance animation */
  animation: cardRise .8s var(--ease) both;
}
@keyframes cardRise {
  from { opacity: 0; transform: translateY(28px); }
  to   { opacity: 1; transform: none; }
}

/* ── Logo ────────────────────────────────────────────────────────────────── */
.gate-logo {
  margin: 0 auto 16px;
  display: flex;
  justify-content: center;
}

.gate-arch {
  width: clamp(56px, 8vw, 72px);
  height: auto;
  filter: drop-shadow(0 0 18px rgba(198,164,92,.38));
  animation: archPulse 4s ease-in-out infinite;
}
@keyframes archPulse {
  0%, 100% { filter: drop-shadow(0 0 18px rgba(198,164,92,.38)); }
  50%       { filter: drop-shadow(0 0 26px rgba(198,164,92,.55)); }
}

/* ── Wordmark ────────────────────────────────────────────────────────────── */
.gate-wordmark {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 20px;
}

.gate-eyebrow {
  font: 700 .65rem/1 var(--font-body);
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--gilt-300);
}

.gate-subtitle {
  font: 600 1.1rem/1 var(--font-display);
  letter-spacing: .01em;
  color: rgba(251,248,240,.55);
  font-style: italic;
}

/* ── Gilt hairline rule ──────────────────────────────────────────────────── */
.gate-rule {
  width: 80px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gilt-500), transparent);
  margin: 0 auto 24px;
}

/* ── Copy ────────────────────────────────────────────────────────────────── */
.gate-copy { margin-bottom: 20px; }

.gate-heading {
  font: 600 clamp(1.5rem, 5.8vw, 3.2rem)/1.06 var(--font-display);
  letter-spacing: -.02em;
  color: var(--on-dark-1);
  margin: 0 0 14px;
  white-space: nowrap;
}
.gate-heading em {
  font-style: italic;
  color: var(--gilt-300);
}

.gate-lead {
  font: 400 clamp(1rem, 1.2vw, 1.075rem)/1.7 var(--font-body);
  color: var(--on-dark-2);
  max-width: 440px;
  margin: 0 auto;
  text-wrap: pretty;
}

/* ── Scripture quote ─────────────────────────────────────────────────────── */
.gate-verse {
  margin: 0 0 24px;
  padding: 18px 24px;
  border-left: 2px solid rgba(198,164,92,.45);
  border-radius: 0 8px 8px 0;
  background: rgba(198,164,92,.06);
  text-align: left;
}
.gate-verse p {
  font: italic 500 clamp(1rem, 1.4vw, 1.15rem)/1.6 var(--font-display);
  color: var(--on-dark-2);
  margin: 0 0 6px;
}
.gate-verse cite {
  font: 700 .65rem/1 var(--font-body);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gilt-500);
  font-style: normal;
  display: block;
}

/* ═══════════════════════════════════════════════════════════════════════════
   GATE ACTION BUTTONS
   Three prominent, distinct, beautifully designed entry points.
   ═══════════════════════════════════════════════════════════════════════════ */
.gate-actions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 24px;
}

@media (max-width: 520px) {
  .gate-actions {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.gate-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 18px 12px 16px;
  border-radius: 16px;
  border: none;
  cursor: pointer;
  transition:
    transform .22s var(--ease),
    box-shadow .25s var(--ease),
    background-color .25s var(--ease),
    border-color .25s var(--ease);
  font: inherit;
  text-align: center;
  position: relative;
  overflow: hidden;
  /* Touch target */
  min-height: 88px;
  -webkit-tap-highlight-color: transparent;
}
.gate-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  opacity: 0;
  transition: opacity .22s var(--ease);
  background: rgba(255,255,255,.06);
}
@media (hover: hover) {
  .gate-btn:hover::before { opacity: 1; }
  .gate-btn:hover { transform: translateY(-3px); }
}
.gate-btn:active { transform: scale(.964); }

.gate-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px; height: 36px;
  border-radius: 50%;
  flex-shrink: 0;
  transition: background-color .25s;
}
.gate-btn-label {
  font: 700 .92rem/1 var(--font-body);
  display: block;
}
.gate-btn-sub {
  font: 400 .72rem/1.3 var(--font-body);
  display: block;
  opacity: .74;
}

/* Primary — gold fill: "Enter" */
.gate-btn-primary {
  background: var(--gilt-500);
  color: var(--ink-900);
  box-shadow:
    0 0 0 1px rgba(198,164,92,.50),
    0 14px 40px -14px rgba(198,164,92,.60),
    0 4px 16px -4px rgba(0,0,0,.30);
}
.gate-btn-primary .gate-btn-icon {
  background: rgba(27,30,61,.14);
}
@media (hover: hover) {
  .gate-btn-primary:hover {
    background: var(--gilt-300);
    box-shadow:
      0 0 0 1px rgba(226,203,148,.60),
      0 20px 50px -14px rgba(198,164,92,.70),
      0 4px 16px -4px rgba(0,0,0,.30);
  }
}

/* Secondary — dark glass: "Notify me" */
.gate-btn-secondary {
  background: rgba(251,248,240,.10);
  border: 1.5px solid rgba(251,248,240,.22);
  color: var(--on-dark-1);
  box-shadow: 0 4px 20px -8px rgba(0,0,0,.40);
}
.gate-btn-secondary .gate-btn-icon {
  background: rgba(198,164,92,.14);
  color: var(--gilt-300);
}
.gate-btn-secondary .gate-btn-label { color: var(--on-dark-1); }
.gate-btn-secondary .gate-btn-sub   { color: var(--on-dark-3); }
@media (hover: hover) {
  .gate-btn-secondary:hover {
    background: rgba(251,248,240,.16);
    border-color: rgba(198,164,92,.45);
    box-shadow: 0 8px 30px -10px rgba(198,164,92,.30);
  }
}

/* Tertiary — subtle outline: "Request access" */
.gate-btn-tertiary {
  background: transparent;
  border: 1.5px solid rgba(198,164,92,.26);
  color: var(--on-dark-2);
  box-shadow: none;
}
.gate-btn-tertiary .gate-btn-icon {
  background: rgba(198,164,92,.10);
  color: var(--gilt-500);
}
.gate-btn-tertiary .gate-btn-sub { color: var(--on-dark-3); }
@media (hover: hover) {
  .gate-btn-tertiary:hover {
    border-color: rgba(198,164,92,.55);
    color: var(--on-dark-1);
    background: rgba(198,164,92,.07);
    box-shadow: 0 4px 20px -8px rgba(198,164,92,.25);
  }
}

/* Mobile: buttons in landscape row */
@media (max-width: 520px) {
  .gate-btn { flex-direction: row; gap: 14px; padding: 16px 20px; min-height: 64px; text-align: left; }
  .gate-btn-icon { flex-shrink: 0; }
  .gate-btn > div, .gate-btn-label, .gate-btn-sub { text-align: left; }
}

/* ── Pillar text ─────────────────────────────────────────────────────────── */
.gate-pillar-text {
  font: 700 .6rem/1 var(--font-body);
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(198,164,92,.35);
  margin: 0;
}

.gate-share {
  margin: 18px 0 0;
  font: 500 .82rem/1.5 var(--font-body);
  color: rgba(251,248,240,.62);
  text-align: center;
}
.gate-share vm-icon { color: #C6A45C; vertical-align: -2px; margin-right: 3px; }
.gate-share a { color: #E2CB94; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.gate-share a:hover { color: #FBF8F0; }


/* ═══════════════════════════════════════════════════════════════════════════
   MODALS
   Full-page overlay · centered panel on desktop · bottom sheet on mobile
   ═══════════════════════════════════════════════════════════════════════════ */
.gmodal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
  align-items: flex-end;   /* bottom sheet default (mobile) */
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s var(--ease);
}
.gmodal.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* ── Backdrop ────────────────────────────────────────────────────────────── */
.gmodal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(14,16,32,.78);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  cursor: pointer;
}

/* ── Panel ───────────────────────────────────────────────────────────────── */
.gmodal-panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 480px;
  max-height: 92dvh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  background: var(--parchment-50);
  border-radius: 28px 28px 0 0;
  padding: 8px 32px 40px;
  box-shadow:
    0 -4px 0 rgba(198,164,92,.28),
    0 -30px 80px rgba(0,0,0,.40);

  /* Enter animation (slide up from bottom on mobile) */
  transform: translateY(40px);
  transition: transform .38s var(--ease);
}
.gmodal.is-open .gmodal-panel {
  transform: none;
}

/* Desktop: centered, rounded on all sides */
@media (min-width: 600px) {
  .gmodal { align-items: center; }
  .gmodal-panel {
    border-radius: 24px;
    max-height: 88dvh;
    padding: 12px 40px 44px;
    box-shadow:
      0 0 0 1px rgba(198,164,92,.18),
      0 40px 100px -20px rgba(14,16,32,.65);
    transform: scale(.96) translateY(12px);
  }
  .gmodal.is-open .gmodal-panel {
    transform: none;
  }
}

/* ── Drag handle (mobile only) ───────────────────────────────────────────── */
.gmodal-handle {
  display: flex;
  justify-content: center;
  padding: 10px 0 14px;
  cursor: grab;
  touch-action: none;
}
.gmodal-handle span {
  width: 36px; height: 4px;
  border-radius: 999px;
  background: rgba(27,30,61,.18);
}
@media (min-width: 600px) { .gmodal-handle { display: none; } }

/* ── Logo in modal ───────────────────────────────────────────────────────── */
.gmodal-logo {
  display: flex;
  justify-content: center;
  margin: 0 0 10px;
}
.gmodal-arch {
  width: 52px; height: auto;
  filter: drop-shadow(0 2px 8px rgba(198,164,92,.25));
}

/* ── Brand below logo ────────────────────────────────────────────────────── */
.gmodal-brand {
  text-align: center;
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.gmodal-name {
  font: 600 .95rem/1 var(--font-display);
  color: var(--fg1);
  letter-spacing: .01em;
}
.gmodal-tag {
  font: italic 500 .82rem/1 var(--font-display);
  color: var(--fg3);
}

/* ── Hairline rule in modal ──────────────────────────────────────────────── */
.gmodal-rule {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--hairline-gold), transparent);
  margin: 0 auto 20px;
  max-width: 200px;
}

/* ── Modal heading / lead ────────────────────────────────────────────────── */
.gmodal-heading {
  font: 600 clamp(1.6rem, 3vw, 2rem)/1.1 var(--font-display);
  color: var(--fg1);
  letter-spacing: -.02em;
  margin: 0 0 8px;
  text-align: center;
}
.gmodal-lead {
  font: 400 .92rem/1.6 var(--font-body);
  color: var(--fg2);
  text-align: center;
  margin: 0 0 22px;
  text-wrap: pretty;
}

/* ── Form fields ─────────────────────────────────────────────────────────── */
.gmodal-form { display: flex; flex-direction: column; gap: 16px; }

.gfield { display: flex; flex-direction: column; gap: 6px; }

.gfield-label {
  font: 700 .78rem/1 var(--font-body);
  letter-spacing: .04em;
  color: var(--fg1);
  display: flex;
  align-items: center;
  gap: 8px;
}
.gfield-hint {
  font-weight: 400;
  color: var(--fg3);
  font-size: .72rem;
  letter-spacing: 0;
}

.gfield-wrap {
  position: relative;
}

.gfield-input {
  width: 100%;
  height: 48px;
  padding: 0 48px 0 14px;
  border: 1.5px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  font: 400 1rem/1 var(--font-body);
  color: var(--fg1);
  outline: none;
  transition: border-color .22s var(--ease), box-shadow .22s var(--ease);
  -webkit-appearance: none;
}
.gfield-input::placeholder { color: var(--fg3); }
.gfield-input:focus {
  border-color: var(--gilt-500);
  box-shadow: 0 0 0 3px rgba(198,164,92,.18);
}
.gfield-input.is-error {
  border-color: #B5523C;
  box-shadow: 0 0 0 3px rgba(181,82,60,.12);
}
.gfield-input:disabled {
  opacity: .55;
  cursor: not-allowed;
  background: var(--surface-warm);
}
/* Input without eye button */
.gfield > .gfield-input { padding-right: 14px; }

/* ── Required mark ───────────────────────────────────────────────────────── */
.req-mark {
  color: var(--gilt-500);
  font-style: normal;
  text-decoration: none;
  font-size: .85em;
}

/* ── Inline field-level error ────────────────────────────────────────────── */
.gfield-error {
  display: block;
  font: 400 .78rem/1.4 var(--font-body);
  color: #8a3222;
  margin-top: -2px;
}
.gfield-error[hidden] { display: none !important; }

.gfield-eye {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  color: var(--fg3);
  padding: 4px;
  border-radius: 4px;
  transition: color .2s;
}
@media (hover: hover) { .gfield-eye:hover { color: var(--fg1); } }

/* ── Password strength ───────────────────────────────────────────────────── */
.pw-strength {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 6px;
  opacity: 0;
  transition: opacity .3s;
}
.pw-strength.visible { opacity: 1; }
.pw-bar {
  flex: 1;
  height: 3px;
  border-radius: 999px;
  background: var(--border);
  overflow: hidden;
}
.pw-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  width: 0;
  transition: width .4s var(--ease), background-color .4s;
}
.pw-fill[data-strength="weak"]   { width: 25%; background: #B5523C; }
.pw-fill[data-strength="fair"]   { width: 50%; background: #C6892C; }
.pw-fill[data-strength="good"]   { width: 75%; background: var(--sage-600); }
.pw-fill[data-strength="strong"] { width: 100%; background: #3d7a5b; }
.pw-label {
  font: 700 .68rem/1 var(--font-body);
  letter-spacing: .08em;
  text-transform: uppercase;
  width: 44px;
  text-align: right;
}

/* ── Notice (error / info) ───────────────────────────────────────────────── */
.gnotice {
  font: 400 .84rem/1.5 var(--font-body);
  border-radius: 8px;
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s var(--ease), padding .3s var(--ease), opacity .3s;
  opacity: 0;
}
.gnotice.error {
  background: rgba(181,82,60,.08);
  border: 1px solid rgba(181,82,60,.25);
  color: #8a3222;
  padding: 10px 14px;
  max-height: 120px;
  opacity: 1;
}
.gnotice.info {
  background: rgba(95,114,87,.08);
  border: 1px solid rgba(95,114,87,.25);
  color: var(--sage-600);
  padding: 10px 14px;
  max-height: 120px;
  opacity: 1;
}

/* ── Submit button ───────────────────────────────────────────────────────── */
.gsubmit {
  position: relative;
  width: 100%;
  height: 50px;
  padding: 0 20px;
  border-radius: 999px;
  background: var(--gilt-500);
  color: var(--ink-900);
  font: 700 .95rem/1 var(--font-body);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 6px;
  transition: background-color .22s, transform .18s var(--ease), box-shadow .22s;
  box-shadow: 0 0 0 1px rgba(198,164,92,.40), 0 8px 24px -8px rgba(198,164,92,.45);
  -webkit-tap-highlight-color: transparent;
}
@media (hover: hover) {
  .gsubmit:hover {
    background: var(--gilt-700);
    transform: translateY(-2px);
    box-shadow: 0 0 0 1px rgba(168,132,47,.50), 0 14px 32px -8px rgba(168,132,47,.50);
  }
}
.gsubmit:active { transform: scale(.972); }
.gsubmit[disabled] { opacity: .6; cursor: not-allowed; transform: none; }

/* Spinner (shown while submitting) */
.gsubmit-spinner {
  display: none;
  width: 16px; height: 16px;
  border: 2px solid rgba(27,30,61,.25);
  border-top-color: var(--ink-900);
  border-radius: 50%;
  animation: spin .65s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }
.gsubmit.loading .gsubmit-label { opacity: 0; }
.gsubmit.loading .gsubmit-spinner { display: block; position: absolute; }

/* ── Modal close (×) button ──────────────────────────────────────────────── */
.gmodal-close {
  position: absolute;
  top: 18px; right: 18px;
  width: 36px; height: 36px;
  border-radius: 50%;
  background: var(--surface-warm);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--fg2);
  cursor: pointer;
  transition: background-color .2s, color .2s;
  -webkit-tap-highlight-color: transparent;
}
@media (hover: hover) {
  .gmodal-close:hover { background: var(--border); color: var(--fg1); }
}

/* ── Success state ───────────────────────────────────────────────────────── */
.gmodal-success[hidden] { display: none !important; }
.gmodal-success {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 8px 0 4px;
  animation: successIn .5s var(--ease) both;
}
@keyframes successIn {
  from { opacity: 0; transform: scale(.92); }
  to   { opacity: 1; transform: none; }
}
.success-icon {
  margin-bottom: 16px;
  filter: drop-shadow(0 4px 12px rgba(95,114,87,.30));
}
.success-title {
  font: 600 1.4rem/1 var(--font-display);
  color: var(--fg1);
  margin: 0 0 8px;
}
.success-body {
  font: 400 .9rem/1.6 var(--font-body);
  color: var(--fg2);
  max-width: 360px;
  margin: 0;
}

/* ── Swipe-to-dismiss progress tint ─────────────────────────────────────── */
.gmodal-panel.is-swiping {
  transition: none;
}


/* ═══════════════════════════════════════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  .gate-card,
  .gate-arch,
  .gate-glow,
  .gate-bead,
  .gsubmit-spinner { animation: none !important; }
  .gmodal, .gmodal-panel,
  .gfield-input, .gnotice,
  .pw-fill, .gsubmit, .gate-btn { transition: none !important; }
}
