[hidden]{display:none!important}.icon-button{border:0;padding:0;margin:0;background:transparent;cursor:pointer}.icon-button img{display:block}#bottomarea{align-items:stretch}#centercolumn{min-width:0}.choice-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;width:100%}.v2-choice{display:contents}.v2-choice input{position:absolute;opacity:0;pointer-events:none}.v2-choice label{cursor:pointer}.v2-choice input:focus-visible+label{outline:3px solid #f5b335;outline-offset:4px}.v2-choice input:checked+label{box-shadow:0 0 0 5px #f5b335}.v2-choice .checkimg{display:block}.v2-dots{text-align:center;margin-top:25px}.v2-dots .dot{border:0;padding:0}.v2-nav{width:100%;margin:20px auto 10px;text-align:center}.v2-nav .prev,.v2-nav .next{border:0;background-color:transparent;display:inline-block}#phaseNotice{margin:20px auto 0;padding:12px 16px;max-width:760px;font-size:13px;line-height:1.5;color:#4b4b4b;background:#f4f4f4;border-radius:4px;text-align:center}#midarea[hidden]{display:none!important}.v2-message{display:block;width:100%;font-size:18px;text-align:center;padding:30px}.v2-error{color:#b00020;font-weight:700}@media(max-width:900px){#bottomarea{display:block}#leftcol,#centercolumn{width:100%!important}.choice-grid{gap:12px}}

/* V2 visibility overrides: legacy.css hides all wizard/learn slides by default. */
.mySlides:not([hidden]),
.myVids:not([hidden]) {
  display: block;
}

/* --------------------------------------------------------------------------
   Standalone V2 desktop parity layer
   Keeps the legacy visual design while isolating V2 from conflicting rules.
   -------------------------------------------------------------------------- */
html,
body {
  min-width: 1024px;
  min-height: 100%;
  background: #fff;
}

#page-container {
  min-height: 100vh;
}

#topnav {
  min-height: 92px;
  padding: 15px 54px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
}

#topcolleft,
#topcolright {
  float: none;
}

#topcolleft {
  width: auto;
  flex: 1 1 auto;
}

#topcolleft img {
  display: block;
  width: auto;
  height: 58px;
  max-width: 560px;
  padding: 0;
}

#topcolright {
  width: auto;
  flex: 0 0 auto;
  align-items: center;
}

#topcolright img {
  width: 31px;
  height: 31px;
  max-height: none;
  object-fit: contain;
  margin: 0 0 0 20px;
}

#bottomarea {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  min-height: calc(100vh - 92px);
  background: #f2f2f2;
}

#leftcol {
  display: block;
  float: none;
  width: auto;
  min-width: 0;
  min-height: calc(100vh - 92px);
  background-color: #617489;
  background-image: url('../img/learn-more-bg-pattern.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
}

#leftcol .myVids {
  width: 100%;
  height: 100%;
}

#showVid {
  width: 100%;
  height: 100%;
  padding: 48px 54px 40px;
}

#learn {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
}

#learndeckonly {
  width: 100%;
  padding: 0;
  margin: 0 0 52px;
  font-size: 21px;
  line-height: 1.35;
}

#learnimagesingle {
  float: none;
  width: 100%;
  padding: 0;
  margin: 0;
}

#learnimagesingle img {
  display: block;
  width: 100%;
  max-height: 400px;
  object-fit: cover;
  box-shadow: 4px 4px 5px #555;
}

#centercolumn {
  float: none;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 34px 42px 24px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}

.slideshow-container {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
}

.mySlides:not([hidden]) {
  width: 100%;
}

.text {
  width: min(88%, 760px);
  margin: 28px auto 34px;
  padding: 0;
  color: #617489;
  font-size: clamp(32px, 2.25vw, 43px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.035em;
  text-align: center;
}

#cm-show,
#st-show,
.choice-grid {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 250px));
  justify-content: center;
  align-items: stretch;
  gap: 14px 16px;
}

.v2-choice {
  display: block;
  width: 100%;
  min-width: 0;
}

.v2-choice label {
  float: none;
  display: flex;
  width: 100%;
  height: 160px;
  margin: 0;
  padding: 12px 12px 10px;
  border: 3px solid #f7a600;
  border-radius: 30px;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  color: #000;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.v2-choice label:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, .12);
}

.v2-choice .checkimg {
  display: block;
  width: 100%;
  height: 112px;
  max-width: 100%;
  margin: 0 0 6px;
  border-radius: 18px;
  object-fit: cover;
  object-position: center;
}

.v2-choice input:checked + label {
  border-color: #f7a600;
  box-shadow: 0 0 0 4px rgba(247, 166, 0, .25);
}

.v2-dots {
  margin-top: 28px;
}

.v2-nav {
  margin: 18px auto 4px;
}

.v2-nav .prev,
.v2-nav .next {
  vertical-align: middle;
  margin: 0 10px;
}

#phaseNotice {
  display: none;
}

#midarea {
  display: block;
  width: 100%;
  max-width: 760px;
  margin: 34px auto 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.wallchoices {
  padding: 0;
  font-size: 17px;
  line-height: 1.3;
}

#selresults {
  margin: 6px 0 0;
  padding: 0;
}

#selresults ul {
  margin: 0;
  padding: 0;
  gap: 6px;
}

#selresults ul li {
  min-width: 145px;
  margin: 0;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.25;
}

@media (max-width: 1300px) {
  #topnav {
    padding-left: 34px;
    padding-right: 34px;
  }

  #showVid {
    padding-left: 38px;
    padding-right: 38px;
  }

  #centercolumn {
    padding-left: 28px;
    padding-right: 28px;
  }

  #cm-show,
  #st-show,
  .choice-grid {
    grid-template-columns: repeat(2, minmax(195px, 230px));
  }

  .v2-choice label {
    height: 150px;
  }

  .v2-choice .checkimg {
    height: 102px;
  }
}

/*
 * V2 radio reset
 * The legacy stylesheet changes a checked radio label to width:30%, display:block,
 * and a dark background. Reassert the complete V2 card layout so selecting a
 * choice never changes its dimensions or appearance.
 */
.v2-choice input[type="radio"]:checked + label {
  display: flex;
  width: 100%;
  height: 160px;
  margin: 0;
  padding: 12px 12px 10px;
  float: none;
  border: 3px solid #f7a600;
  border-radius: 30px;
  background: #fff;
  color: #000;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
  box-shadow: 0 0 0 4px rgba(247, 166, 0, .25);
  transform: none;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

.v2-choice input[type="radio"]:checked + label .checkimg {
  display: block;
  width: 100%;
  height: 112px;
  max-width: 100%;
  margin: 0 0 6px;
  border-radius: 18px;
  object-fit: cover;
  object-position: center;
}

/* 0.2.0 Aesthetic step */
#instructionstext {
  margin: -22px auto 20px;
  text-align: center;
  font-size: 13px;
  color: #333;
}

#aes-show.choice-grid-aesthetic {
  max-width: 820px;
  grid-template-columns: repeat(3, minmax(170px, 220px));
  gap: 12px 14px;
}

.v2-choice-aesthetic label {
  height: 138px;
  border-radius: 24px;
  padding: 9px;
}

.v2-choice-aesthetic .checkimg {
  height: 94px;
  border-radius: 15px;
}

.v2-choice input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.v2-choice input[type="checkbox"] + label,
.v2-choice input[type="checkbox"]:checked + label {
  display: flex;
  width: 100%;
  margin: 0;
  background: #fff;
  color: #000;
}

.v2-choice input[type="checkbox"]:checked + label {
  box-shadow: 0 0 0 4px rgba(247, 166, 0, .28);
}

.v2-choice input[type="checkbox"]:focus-visible + label {
  outline: 3px solid #617489;
  outline-offset: 3px;
}

.choice-name {
  display: block;
  width: 100%;
  min-height: 16px;
}

#submitAesthetics {
  display: block;
  width: min(100%, 680px);
  margin: 22px auto 0;
  padding: 14px 24px;
  border: 3px solid #ffd000;
  border-radius: 28px;
  background: #fff;
  color: #000;
  font: 600 16px/1.2 'Open Sans', sans-serif;
  cursor: pointer;
}

#submitAesthetics:disabled {
  opacity: .45;
  cursor: not-allowed;
}

#submitAesthetics.is-saved {
  box-shadow: 0 0 0 4px rgba(247, 166, 0, .25);
}

.v2-clear-space {
  clear: both;
  margin-bottom: 38px;
}

@media (max-width: 1300px) {
  #aes-show.choice-grid-aesthetic {
    grid-template-columns: repeat(3, minmax(145px, 190px));
  }
  .v2-choice-aesthetic label { height: 128px; }
  .v2-choice-aesthetic .checkimg { height: 84px; }
}
/* Wall Selector V2 layout corrections — 0.3.6 */

/* Keep every choice group centered and limited to three consistent columns. */
#wizardApp .choice-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(170px, 215px)) !important;
    justify-content: center !important;
    align-items: start !important;
    align-content: start !important;
    gap: 12px !important;
    width: min(100%, 690px) !important;
    margin: 28px auto 0 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
}

#wizardApp .choice-grid .v2-choice {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 215px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

#wizardApp .choice-grid .v2-choice > label {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    height: 148px !important;
    min-height: 148px !important;
    margin: 0 !important;
    padding: 10px 10px 7px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#wizardApp .choice-grid .checkimg {
    display: block !important;
    width: 100% !important;
    height: 105px !important;
    max-width: 100% !important;
    max-height: 105px !important;
    margin: 0 auto 4px !important;
    object-fit: contain !important;
}

#wizardApp .choice-grid .choice-name {
    display: block !important;
    width: 100% !important;
    min-height: 18px !important;
    margin: 0 !important;
    overflow: hidden !important;
    font-size: 13px !important;
    line-height: 16px !important;
    text-align: center !important;
    white-space: normal !important;
}

/* The aesthetic grid uses the same card dimensions instead of stretching. */
#wizardApp .choice-grid-aesthetic {
    grid-template-columns: repeat(3, minmax(170px, 215px)) !important;
}

/* Prevent a single or two-item result from being left aligned. */
#wizardApp .choice-grid > .v2-message {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    text-align: center !important;
}

/* Clean left-side informational content. This avoids legacy floated ID rules. */
#leftcol .v2-learn-panel {
    width: 100% !important;
    max-width: 660px !important;
    margin: 0 auto !important;
    padding: 48px 42px 34px !important;
    box-sizing: border-box !important;
    color: #fff !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    text-align: left !important;
}

#leftcol .v2-learn-section {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
}

#leftcol .v2-learn-section h2 {
    display: block !important;
    float: none !important;
    width: auto !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 25px !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    text-align: left !important;
}

#leftcol .v2-learn-section p {
    display: block !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

#leftcol .v2-learn-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    min-width: 315px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 7px 24px !important;
    border: 1px solid #111 !important;
    border-radius: 24px !important;
    background: #fff !important;
    color: #111 !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
}

@media (max-width: 1180px) {
    #wizardApp .choice-grid,
    #wizardApp .choice-grid-aesthetic {
        grid-template-columns: repeat(2, minmax(160px, 205px)) !important;
        width: min(100%, 440px) !important;
    }
}

@media (max-width: 760px) {
    #wizardApp .choice-grid,
    #wizardApp .choice-grid-aesthetic {
        grid-template-columns: minmax(160px, 215px) !important;
        width: 100% !important;
    }

    #leftcol .v2-learn-panel {
        padding: 30px 24px !important;
    }

    #leftcol .v2-learn-button {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* v0.3.7 header tools */
#topcolright {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
}

#topcolright .tooltip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#topcolright .v2-header-tool,
#topcolright .icon-button.v2-header-tool {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 3px !important;
    border: 0 !important;
    background: transparent !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

#topcolright .v2-header-tool img,
#topcolright .icon-button.v2-header-tool img {
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    max-width: 34px !important;
    object-fit: contain !important;
}

@media (max-width: 760px) {
    #topcolright { gap: 6px !important; }
    #topcolright .v2-header-tool,
    #topcolright .icon-button.v2-header-tool { width: 34px !important; height: 34px !important; }
    #topcolright .v2-header-tool img,
    #topcolright .icon-button.v2-header-tool img { width: 28px !important; height: 28px !important; }
}


/* v0.4.2 live compatibility count */
#midarea {
    display: flex !important;
    flex-direction: column !important;
}

#midarea #selresults {
    flex: 1 1 auto !important;
}

#midarea .v2-live-wall-count {
    flex: 0 0 auto !important;
    margin: 18px 20px 20px !important;
    padding: 13px 12px !important;
    border-top: 2px solid #f2a900 !important;
    color: #4f6575 !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

#midarea .v2-live-wall-count.is-zero {
    color: #a12622 !important;
}
