







.faq-plan__ink,
.faq-room__ink,
.faq-plan__notes,
.faq-room__no {
  display: none;
}

.faq-room__q {
  flex: 1 1 auto;
  min-width: 0;
}


.faq-room__label {
  display: none;
}



@media screen and (min-width: 1001px) {
  .faq-plan {
    

    --sheet-w: min(100%, 1160px, 76vh * 1.5263);
    

    --ink-hot: #bfdbfe;
    

    --furn-rest: 0.62;
  }

  .faq-plan__sheet {
    display: block;
    position: relative;
    width: var(--sheet-w);
    

    max-width: none;
    margin: 0 auto;
    aspect-ratio: 1160 / 760;
    overflow: hidden;
    

    container-type: size;
    border: 1px solid rgba(147, 197, 253, 0.28);
    border-radius: 4px;
    

    background: linear-gradient(158deg, #2f57b8 0%, #274aa2 52%, #1f3d92 100%);
    

    box-shadow: 0 18px 44px rgba(12, 27, 66, 0.2),
      0 3px 10px rgba(12, 27, 66, 0.14),
      inset 0 1px 0 rgba(255, 255, 255, 0.14);
  }
  .faq-plan__ink {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    color: rgba(255, 255, 255, 0.9);
  }

  

  .faq-room,
  .faq-room[open] {
    position: absolute;
    

    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    

    z-index: 1;
    pointer-events: none;
    background: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
  }
  

  .faq-room > summary {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    padding: 0;
    background: none;
    pointer-events: none;
    list-style: none;
  }
  .faq-room > summary::-webkit-details-marker,
  .faq-room > summary::marker {
    display: none;
  }
  

  .faq-room .faq-q__icon,
  .faq-room .faq-q__caret {
    display: none;
  }

  

  .faq-room__label,
  .faq-room__ink {
    position: absolute;
    left: calc(var(--x) * 1%);
    top: calc(var(--y) * 1%);
    width: calc(var(--w) * 1%);
    height: calc(var(--h) * 1%);
  }
  .faq-room__label {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    

    padding: var(--lt, 4cqh) 8px 0;
    color: rgba(255, 255, 255, 0.93);
    font-size: clamp(9px, 1.15cqw, 14px);
    font-weight: 700;
    letter-spacing: 0.13em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    white-space: normal;
    pointer-events: auto;
    cursor: pointer;
  }
  .faq-room__ink {
    display: block;
    overflow: visible;
    pointer-events: none;
  }

  

  .faq-room__label:hover {
    color: var(--ink-hot);
  }
  .faq-room[open] .faq-room__label {
    

    color: rgba(255, 255, 255, 1);
  }
  

  .faq-room > summary:focus-visible {
    outline: none;
  }
  .faq-room > summary:focus-visible .faq-room__label {
    outline: 2px dashed var(--ink-hot);
    outline-offset: -4px;
  }

  

  .faq-plan__notes,
  .faq-room__no,
  .faq-room__q,
  .faq-room__a {
    position: absolute;
    left: 66.5%;
    right: 2.5%;
  }
  .faq-plan__notes {
    display: block;
    

    left: 64.6%;
    right: 1.4%;
    top: 4%;
    

    bottom: 2.5%;
    width: auto;
    padding: 3.4cqh 1.7cqw 0;
    

    background: linear-gradient(180deg, #345cbd 0%, #2a4a9c 100%);
    border: 1px solid rgba(147, 197, 253, 0.3);
    border-radius: 3px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    

    z-index: 0;
    

    pointer-events: none;
  }
  .faq-plan__hint {
    margin: 0;
    

    color: rgba(255, 255, 255, 0.86);
    font-size: clamp(11.5px, 1.4cqw, 16px);
    line-height: 1.55;
  }
  .faq-plan:has(.faq-room__label:hover) .faq-plan__hint,
  .faq-plan:has(.faq-room[open]) .faq-plan__hint {
    opacity: 0;
  }


  

  .faq-room__no {
    display: block;
    top: 6%;
    color: var(--ink-hot);
    font-size: clamp(13px, 1.9cqw, 23px);
    font-weight: 800;
    letter-spacing: 0.16em;
    font-variant-numeric: tabular-nums;
    opacity: 0;
    

    user-select: none;
    -webkit-user-select: none;
  }
  .faq-room__q {
    

    top: 11%;
    

    transform: translateY(-4.4cqh);
    

    opacity: 0;
    color: rgba(255, 255, 255, 0.96);
    font-size: clamp(14px, 1.85cqw, 23px);
    font-weight: 800;
    letter-spacing: -0.2px;
    line-height: 1.3;
    text-align: left;
    

    pointer-events: none;
  }
  

  .faq-room[open] .faq-room__q {
    transform: none;
    pointer-events: auto;
  }
  

  .faq-room > .faq-room__a {
    

    top: var(--a-top, 27%);
    margin: 0;
    padding: 0;
    border-top: 0;
    

    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(11px, 1.3cqw, 16.5px);
    line-height: 1.62;
    pointer-events: auto;
  }
  

  .faq-room__label:hover ~ .faq-room__q,
  .faq-room:has(:focus-visible) .faq-room__q,
  .faq-room[open] .faq-room__q,
  .faq-room[open] .faq-room__no {
    opacity: 1;
  }
  

  .faq-plan__sheet:has(.faq-room[open]) .faq-room:not([open]) .faq-room__q {
    opacity: 0;
  }

  

  .faq-plan__sheet:has(.faq-room__label:hover) .faq-room:not(:hover) > summary .faq-room__label,
  .faq-plan__sheet:has(.faq-room__label:hover) .faq-room:not(:hover) .faq-room__ink,
  .faq-plan__sheet:has(.faq-room[open]):not(:has(.faq-room__label:hover)) .faq-room:not([open]) > summary .faq-room__label,
  .faq-plan__sheet:has(.faq-room[open]):not(:has(.faq-room__label:hover)) .faq-room:not([open]) .faq-room__ink {
    

    opacity: 0.86;
  }

  

  .fp-grid {
    fill: url(#fp-grid);
    opacity: 0.5;
    color: rgba(255, 255, 255, 0.15);
  }
  .fp-sheet {
    fill: none;
    stroke: rgba(255, 255, 255, 0.34);
    stroke-width: 1.5;
  }
  .fp-rule {
    stroke: rgba(255, 255, 255, 0.25);
    stroke-width: 1.5;
  }
  .fp-hall rect {
    fill: url(#fp-hatch);
    color: rgba(255, 255, 255, 0.9);
    opacity: 0.12;
  }
  

  .fp-envelope {
    fill: none;
    stroke: rgba(255, 255, 255, 0.94);
    stroke-width: 9;
    stroke-linejoin: miter;
  }
  .fp-partition {
    fill: none;
    

    stroke: rgba(255, 255, 255, 0.56);
    stroke-width: 4;
    stroke-linejoin: miter;
  }
  

  .fp-win__gap {
    

    stroke: url(#fp-ground);
    stroke-width: 9.5;
  }
  .fp-win__sill {
    stroke: rgba(255, 255, 255, 0.78);
    stroke-width: 1.6;
  }
  .fp-dim path {
    fill: none;
    stroke: rgba(255, 255, 255, 0.48);
    stroke-width: 1.2;
  }
  .fp-t {
    

    fill: rgba(255, 255, 255, 0.8);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.06em;
  }
  .fp-scale--on {
    fill: rgba(255, 255, 255, 0.64);
  }
  .fp-scale--off {
    fill: none;
    stroke: rgba(255, 255, 255, 0.56);
    stroke-width: 1.2;
  }

  

  .fp-floor {
    fill: transparent;
  }
  .faq-room:hover .fp-floor,
  .faq-room:has(:focus-visible) .fp-floor {
    fill: rgba(147, 197, 253, 0.09);
  }
  .faq-room[open] .fp-floor {
    

    fill: rgba(147, 197, 253, 0.17);
  }
  

  .fp-wall {
    fill: none;
    stroke: var(--ink-hot);
    stroke-width: 4.5;
    stroke-linejoin: miter;
    opacity: 0;
  }
  .faq-room:hover .fp-wall,
  .faq-room:has(:focus-visible) .fp-wall,
  .faq-room[open] .fp-wall {
    opacity: 1;
  }
  .faq-room[open] .fp-wall {
    stroke-width: 6;
  }
  .fp-door {
    fill: none;
    stroke: rgba(255, 255, 255, 0.4);
    stroke-width: 1.2;
  }
  .faq-room[open] .fp-door {
    stroke: var(--ink-hot);
  }
  

  

  .fp-furn {
    color: rgba(255, 255, 255, 0.9);
    opacity: var(--furn-rest);
  }
  .faq-room:hover .fp-furn,
  .faq-room:has(:focus-visible) .fp-furn {
    opacity: 0.78;
  }
  .faq-room[open] .fp-furn {
    color: var(--ink-hot);
    opacity: 1;
  }
  

  .fp-key circle {
    fill: none;
    stroke: rgba(255, 255, 255, 0.56);
    stroke-width: 1.3;
  }
  .fp-key text {
    fill: rgba(255, 255, 255, 0.88);
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.02em;
  }
  .faq-room[open] .fp-key circle {
    fill: var(--ink-hot);
    stroke: var(--ink-hot);
  }
  .faq-room[open] .fp-key text {
    

    fill: var(--brand-deep);
  }
}



@media screen and (min-width: 1001px) and (prefers-reduced-motion: no-preference) {
  .faq-room__label,
  .faq-room__ink,
  .faq-room__q,
  .faq-room__no,
  .faq-plan__hint {
    transition: opacity 0.22s ease, color 0.18s ease;
  }
  

  .faq-room__q {
    transition: opacity 0.22s ease, color 0.18s ease, transform 0s linear 0.24s;
  }
  .faq-room__label:hover ~ .faq-room__q,
  .faq-room:has(:focus-visible) .faq-room__q {
    transition: opacity 0.22s ease, color 0.18s ease, transform 0.22s ease;
  }
  .fp-floor,
  .fp-furn,
  .fp-door,
  .fp-key circle,
  .fp-key text {
    transition: fill 0.24s ease, opacity 0.24s ease, stroke 0.2s ease, color 0.24s ease;
  }

  

  .fp-wall {
    transition: opacity 0.18s ease, stroke-width 0.2s ease;
  }

  .faq-room[open] .faq-room__no {
    animation: fpKeyIn 0.42s cubic-bezier(0.2, 0.9, 0.3, 1.4);
  }
  .faq-room[open] .faq-room__q,
  .faq-room[open] .faq-room__a {
    animation: fpNoteIn 0.34s cubic-bezier(0.16, 0.84, 0.44, 1);
  }

  

  .faq-plan {
    

    --faq-draft-ease: cubic-bezier(0.16, 0.84, 0.44, 1);
  }
  .faq-plan.is-armed .fp-envelope,
  .faq-plan.is-armed .fp-partition {
    stroke-dasharray: var(--net-len);
    stroke-dashoffset: var(--net-len);
  }
  .faq-plan.is-armed.is-drafted .fp-envelope,
  .faq-plan.is-armed.is-drafted .fp-partition {
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 0.55s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .faq-plan.is-armed.is-drafted .fp-partition {
    transition-duration: 0.52s;
    transition-delay: 0.1s;
  }
  .faq-plan.is-armed .faq-room__label,
  .faq-plan.is-armed .fp-furn,
  .faq-plan.is-armed .fp-key {
    opacity: 0;
  }
  .faq-plan.is-armed.is-drafted .faq-room__label {
    opacity: 1;
    transition: opacity 0.34s var(--faq-draft-ease) calc(0.26s + var(--n, 0) * 22ms);
  }
  .faq-plan.is-armed.is-drafted .fp-furn {
    opacity: var(--furn-rest);
    transition: opacity 0.36s var(--faq-draft-ease) calc(0.34s + var(--n, 0) * 22ms);
  }
  .faq-plan.is-armed.is-drafted .fp-key {
    opacity: 1;
    transition: opacity 0.28s var(--faq-draft-ease) calc(0.42s + var(--n, 0) * 22ms);
  }
  .faq-plan.is-armed .fp-dim,
  .faq-plan.is-armed .fp-scale,
  .faq-plan.is-armed .fp-win {
    opacity: 0;
  }
  .faq-plan.is-armed.is-drafted .fp-dim,
  .faq-plan.is-armed.is-drafted .fp-scale,
  .faq-plan.is-armed.is-drafted .fp-win {
    opacity: 1;
    transition: opacity 0.3s var(--faq-draft-ease) 0.55s;
  }
}

@keyframes fpKeyIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
}
@keyframes fpNoteIn {
  from {
    opacity: 0;
    transform: translateY(7px);
  }
}
