/* MAEGAMI MIRROR — diagnosis consultation, material pass v2.
   This layer deliberately keeps the existing intake markup and behaviour.
   It removes application-card chrome and composes the flow as an editorial
   consultation: portrait, conditions, progress, one question at a time. */

.qe-diagnosis-page{
  --qed-paper:var(--qe-paper,#fffefc);
  --qed-canvas:var(--qe-canvas,#faf9f7);
  --qed-wash:var(--qe-paper-muted,#f3f0ec);
  --qed-ink:var(--qe-ink,#0a0909);
  --qed-muted:var(--qe-ink-muted,#4d4946);
  --qed-wine:var(--qe-wine,#8d112a);
  --qed-rule:var(--qe-rule,#ddd8d4);
  --qed-rule-strong:var(--qe-rule-strong,#bfb8b3);
  --qed-display:"Shippori Mincho",var(--qe-display);
  --qed-ui:var(--qe-ui);
  background:var(--qed-canvas)!important;
  color:var(--qed-ink)!important;
  font-family:var(--qed-ui)!important;
  font-size:15px;
}

.qe-diagnosis-page :where(.mm-flow-title,.qe-step-heading>strong,.qe-step-heading>span,.qe-section-index>span,.qe-section-index h2,.mm-free-preview h2,.mm-free-preview h3){
  font-family:var(--qed-display)!important;
  font-weight:400!important;
}

.qe-diagnosis-page :where(.mm-flow,.mm-flow-card,.qe-diagnosis-hero,.mm-intake-photo,.mm-photo-picker,.qe-diagnosis-questions,.qe-diagnosis-finish,.phase1-question-list,.phase1-question,.mm-free-preview,.mm-consent){
  border-radius:0!important;
  box-shadow:none!important;
}

.qe-diagnosis-page .mm-diagnosis-context{
  min-height:46px;
  padding-inline:max(32px,calc((100% - 1360px)/2));
  border-color:var(--qed-rule);
  background:var(--qed-paper);
}

.qe-diagnosis-page .mm-diagnosis-context :where(.mm-back,.mm-flow-label){
  min-height:44px;
  color:var(--qed-muted);
  font:500 12px/1.4 var(--qed-ui);
}

.qe-diagnosis-page .mm-flow{
  width:100%;
  margin:0;
  padding:0 0 clamp(88px,9vw,144px);
}

.qe-diagnosis-page .mm-flow-card{
  width:100%;
  margin:0;
  padding:0;
  border:0!important;
  background:transparent;
}

/* 01 — the portrait is a study, not an upload widget. */
.qe-diagnosis-page .qe-diagnosis-hero{
  width:min(1440px,100%);
  min-height:676px;
  margin:0 auto;
  padding:56px clamp(38px,5vw,72px) 64px;
  display:grid;
  grid-template-columns:minmax(330px,4fr) minmax(600px,8fr);
  gap:clamp(52px,6vw,96px);
  align-items:center;
  background:var(--qed-paper);
}

.qe-diagnosis-page .qe-diagnosis-intro{
  max-width:470px;
  padding:0;
  align-self:center;
}

.qe-diagnosis-page .qe-diagnosis-intro>.mm-kicker{display:none}

.qe-diagnosis-page .mm-flow-title{
  margin:0;
  color:var(--qed-ink);
  font-size:clamp(45px,4.2vw,64px);
  line-height:1.48!important;
  letter-spacing:.015em;
  text-wrap:balance;
}

.qe-diagnosis-page .mm-flow-title em{color:var(--qed-wine);font-style:normal}

.qe-diagnosis-page .mm-flow-lead{
  max-width:440px;
  margin:22px 0 42px;
  color:var(--qed-muted);
  font:400 15px/1.95 var(--qed-ui)!important;
}

.qe-diagnosis-page .qe-step-heading{
  margin:0;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:0 16px;
  align-items:start;
}

.qe-diagnosis-page .qe-step-heading>span{
  color:var(--qed-wine);
  font-size:30px;
  line-height:1.35;
  letter-spacing:.04em;
}

.qe-diagnosis-page .qe-step-heading>strong{
  color:var(--qed-ink);
  font-size:20px;
  line-height:1.65;
}

.qe-diagnosis-page .qe-step-heading>small{
  grid-column:2;
  margin-top:6px;
  color:var(--qed-muted);
  font:400 13px/1.8 var(--qed-ui);
}

.qe-diagnosis-page .mm-intake-photo{
  width:100%;
  margin:0;
  padding:0;
  border:0;
  display:grid;
  grid-template-columns:minmax(420px,1fr) 148px;
  grid-template-rows:auto auto;
  gap:0 26px;
  align-items:center;
  background:transparent;
}

.qe-diagnosis-page .mm-photo-picker{
  grid-column:1;
  grid-row:1;
  min-height:548px;
  border:0;
  background:var(--qed-wash);
  overflow:hidden;
}

.qe-diagnosis-page .mm-photo-picker .placeholder{
  width:100%;
  min-height:548px;
  height:548px;
  padding:0;
  display:grid;
  grid-template-rows:minmax(0,1fr) 68px;
  background:var(--qed-wash);
  color:var(--qed-ink);
}

.qe-diagnosis-page .mm-photo-example{
  min-height:0;
  position:relative;
  overflow:hidden;
  background:var(--qed-wash);
}

.qe-diagnosis-page .mm-photo-example::before,
.qe-diagnosis-page .mm-photo-example::after{
  content:"";
  width:32px;
  height:32px;
  position:absolute;
  top:28px;
  z-index:2;
  pointer-events:none;
  border-top:1px solid color-mix(in srgb,var(--qed-wine) 32%,transparent);
}

.qe-diagnosis-page .mm-photo-example::before{left:28px;border-left:1px solid color-mix(in srgb,var(--qed-wine) 32%,transparent)}
.qe-diagnosis-page .mm-photo-example::after{right:28px;border-right:1px solid color-mix(in srgb,var(--qed-wine) 32%,transparent)}

.qe-diagnosis-page .mm-photo-example img{
  width:min(100%,388px);
  height:100%;
  margin:0 auto;
  object-fit:contain;
  object-position:center bottom;
  display:block;
}

.qe-diagnosis-page .mm-photo-picker>img{
  width:100%;
  height:548px;
  object-fit:contain;
  object-position:center;
  background:var(--qed-wash);
}

.qe-diagnosis-page .mm-photo-example em{
  top:18px;
  left:18px;
  padding:7px 10px;
  border:0;
  background:color-mix(in srgb,var(--qed-paper) 94%,transparent);
  color:var(--qed-muted);
  font:500 12px/1.5 var(--qed-ui);
  font-style:normal;
}

.qe-diagnosis-page .mm-photo-cta{
  min-height:68px;
  padding:0 28px;
  border:0;
  background:var(--qed-wine);
  color:var(--qed-paper);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}

.qe-diagnosis-page .mm-photo-cta>b{color:inherit;font:400 21px/1 var(--qed-ui)}
.qe-diagnosis-page .mm-photo-cta strong{color:inherit;font:400 16px/1.5 var(--qed-display)}
.qe-diagnosis-page .mm-photo-cta small{display:none}

.qe-diagnosis-page .mm-change-photo{
  right:18px;
  bottom:18px;
  min-width:104px;
  min-height:44px;
  padding:10px 15px;
  border:0;
  border-bottom:1px solid currentColor;
  background:var(--qed-paper);
  color:var(--qed-wine);
  font:600 12px/1.5 var(--qed-ui);
}

.qe-diagnosis-page .qe-photo-guidance{
  grid-column:2;
  grid-row:1;
  margin:0;
  color:var(--qed-muted);
  font:400 13px/1.85 var(--qed-ui);
}

.qe-diagnosis-page .qe-photo-guidance::before{
  content:"";
  width:38px;
  height:24px;
  margin:0 0 16px;
  border-top:1px solid var(--qed-rule-strong);
  border-right:1px solid var(--qed-rule-strong);
  display:block;
  transform:skewY(23deg);
}

.qe-diagnosis-page .qe-photo-guidance span{display:block;margin-bottom:5px;color:var(--qed-wine);font-weight:600}
.qe-diagnosis-page .qe-photo-guidance strong{display:block;color:inherit;font-weight:400}

.qe-diagnosis-page .mm-photo-checks{
  grid-column:1;
  grid-row:2;
  min-height:44px;
  padding:14px 0 0;
  justify-content:flex-start;
  gap:24px;
  color:var(--qed-muted);
  font:500 12px/1.6 var(--qed-ui);
}

.qe-diagnosis-page .mm-photo-checks span::before{color:var(--qed-wine)}

/* The progress rail is a pause between portrait and conditions. */
.qe-diagnosis-page .phase1-progress{
  width:min(780px,calc(100% - 2 * clamp(24px,5vw,72px)));
  min-height:104px;
  margin:0 auto;
  padding:28px 0 20px;
  border:0;
  background:var(--qed-canvas);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.qe-diagnosis-page .phase1-progress span{
  gap:8px;
  color:var(--qed-muted);
  font:500 12px/1.45 var(--qed-ui);
}

.qe-diagnosis-page .phase1-progress span::before{top:14px;background:var(--qed-rule)}

.qe-diagnosis-page .phase1-progress b{
  width:28px;
  height:28px;
  border:1px solid var(--qed-rule-strong);
  background:var(--qed-canvas);
  color:var(--qed-ink);
  font:500 12px/1 var(--qed-ui);
}

.qe-diagnosis-page .phase1-progress .active{color:var(--qed-wine)}
.qe-diagnosis-page .phase1-progress .active b{border-color:var(--qed-wine);background:var(--qed-wine);color:var(--qed-paper)}

/* 02 — conditions read as a consultation ledger. The active disclosure is
   the one question stage; the remaining questions stay as quiet chapters. */
.qe-diagnosis-page .qe-diagnosis-questions,
.qe-diagnosis-page .qe-diagnosis-finish{
  width:100%;
  padding:72px max(clamp(32px,5vw,72px),calc((100% - 1440px)/2 + clamp(32px,5vw,72px)));
  border-top:1px solid var(--qed-rule);
  border-right:0;
  border-bottom:0;
  border-left:0;
  display:grid;
  grid-template-columns:minmax(250px,3fr) minmax(0,9fr);
  gap:clamp(64px,8vw,124px);
  background:var(--qed-paper);
}

.qe-diagnosis-page .qe-diagnosis-finish{
  padding-top:78px;
  padding-bottom:84px;
  border-bottom:1px solid var(--qed-rule);
  background:var(--qed-canvas);
}

.qe-diagnosis-page .qe-section-index{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.qe-diagnosis-page .qe-section-index>span{
  color:var(--qed-wine);
  font-size:30px;
  line-height:1.35;
  letter-spacing:.04em;
}

.qe-diagnosis-page .qe-section-index h2{
  margin:0;
  color:var(--qed-ink);
  font-size:clamp(31px,3vw,44px);
  line-height:1.55!important;
  letter-spacing:.015em;
}

.qe-diagnosis-page .qe-section-index .phase1-question-help{
  max-width:280px;
  margin:16px 0 0;
  color:var(--qed-muted);
  font:400 13px/1.85 var(--qed-ui)!important;
}

.qe-diagnosis-page .phase1-question-list{
  min-width:0;
  margin:0;
  border:0;
  counter-reset:qe-question;
}

.qe-diagnosis-page .phase1-question{
  min-inline-size:0;
  margin:0;
  border:0;
  border-bottom:1px solid var(--qed-rule);
  background:transparent;
}

.qe-diagnosis-page .phase1-question:first-child{border-top:1px solid var(--qed-rule)}

.qe-diagnosis-page .qe-question-list--enhanced .phase1-question{
  padding:0;
  display:block;
  position:relative;
  transition:background-color 180ms ease;
}

.qe-diagnosis-page .qe-question-list--enhanced .phase1-question.is-open{background:var(--qed-wash)}

.qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle{
  width:100%;
  min-width:0;
  min-height:72px;
  padding:11px 18px 11px 0;
  border:0;
  background:transparent;
  color:var(--qed-ink);
  display:grid;
  grid-template-columns:52px minmax(0,1fr) minmax(104px,auto) 22px;
  gap:14px;
  align-items:center;
  text-align:left;
  cursor:pointer;
}

.qe-diagnosis-page .qe-question-list--enhanced .phase1-question.is-open .qe-question-toggle{padding-left:18px}

.qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle::before{
  color:var(--qed-wine);
  font:400 18px/1 var(--qed-display);
}

.qe-diagnosis-page .qe-question-prompt{font:500 14px/1.65 var(--qed-ui)}

.qe-diagnosis-page .qe-question-summary{
  color:var(--qed-muted);
  font:500 12px/1.5 var(--qed-ui);
  text-align:right;
  white-space:nowrap;
}

.qe-diagnosis-page .qe-question-chevron{
  width:9px;
  height:9px;
  margin-right:3px;
  border-color:currentColor;
  color:var(--qed-muted);
}

.qe-diagnosis-page .qe-question-toggle[aria-expanded="true"] :where(.qe-question-summary,.qe-question-chevron){color:var(--qed-wine)}

.qe-diagnosis-page .qe-question-toggle:focus-visible{
  outline:2px solid var(--qed-wine);
  outline-offset:-2px;
}

.qe-diagnosis-page .qe-question-list--enhanced .phase1-options{
  width:100%;
  margin:0;
  padding:4px 34px 24px 70px;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:2px 24px;
}

.qe-diagnosis-page .qe-question-list--enhanced .phase1-options[hidden]{display:none!important}

.qe-diagnosis-page .phase1-options button{
  width:auto;
  min-width:44px;
  min-height:44px;
  padding:10px 1px 8px;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:var(--qed-ink);
  font:500 13px/1.5 var(--qed-ui)!important;
  text-align:center;
  white-space:nowrap;
}

.qe-diagnosis-page .phase1-options button.selected{
  border-bottom:2px solid var(--qed-wine);
  background:transparent;
  color:var(--qed-wine);
  font-weight:650!important;
}

.qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-question{
  min-height:0;
  padding:18px 0;
}

.qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-question legend{
  width:auto;
  margin:0 0 10px 48px;
  padding:0;
  position:static;
  color:var(--qed-ink);
  font:500 14px/1.65 var(--qed-ui);
}

.qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-options{
  width:auto;
  margin-left:48px;
  padding:0;
  justify-content:flex-start;
}

/* 03 — disclosure and consent remain legible without becoming dashboard UI. */
.qe-diagnosis-page .qe-finish-content{min-width:0}

.qe-diagnosis-page .mm-free-preview{
  margin:0 0 28px;
  padding:0 0 28px;
  border:0;
  border-bottom:1px solid var(--qed-rule);
  background:transparent;
  display:grid;
  grid-template-columns:minmax(170px,.72fr) 1fr 1.1fr;
  gap:28px;
}

.qe-diagnosis-page .mm-free-preview :where(h2,h3){
  margin:0;
  color:var(--qed-ink);
  font-size:21px!important;
  line-height:1.55!important;
}

.qe-diagnosis-page .mm-free-preview p{
  margin:0;
  color:var(--qed-muted);
  font:400 13px/1.8 var(--qed-ui)!important;
}

.qe-diagnosis-page .mm-free-preview p strong{
  display:block;
  margin:0 0 6px;
  color:var(--qed-wine);
  font:400 15px/1.55 var(--qed-display);
}

.qe-diagnosis-page .phase1-safety-note{
  margin:0;
  padding:12px 0 16px;
  border:0;
  border-bottom:1px solid var(--qed-rule);
  background:transparent;
  color:var(--qed-muted);
  font:400 13px/1.8 var(--qed-ui)!important;
}

.qe-diagnosis-page .phase1-safety-note strong{color:var(--qed-ink);font-weight:600}

.qe-diagnosis-page .mm-consent{
  min-height:44px;
  margin:0;
  padding:16px 0;
  border:0;
  border-bottom:1px solid var(--qed-rule);
  background:transparent;
  color:var(--qed-muted);
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:14px;
  font:400 13px/1.8 var(--qed-ui)!important;
}

.qe-diagnosis-page .mm-consent input{
  width:20px;
  height:20px;
  margin:3px 0 0;
  accent-color:var(--qed-wine);
}

.qe-diagnosis-page .mm-consent a{color:var(--qed-wine)}

.qe-diagnosis-page .mm-submit{
  width:min(560px,100%);
  min-height:58px;
  margin:28px 0 0;
  border:0;
  background:var(--qed-wine);
  color:var(--qed-paper);
  font:600 14px/1.5 var(--qed-ui)!important;
}

.qe-diagnosis-page .mm-submit:disabled{
  background:color-mix(in srgb,var(--qed-ink) 18%,var(--qed-paper));
  color:var(--qed-paper);
}

.qe-diagnosis-page :where(.mm-status,.mm-purchase-note){
  max-width:700px;
  min-height:20px;
  margin:10px 0 0;
  color:var(--qed-muted);
  font:400 12px/1.75 var(--qed-ui)!important;
  text-align:left;
}

.qe-diagnosis-page .qe-diagnosis-questions .qe-question-list--enhanced .phase1-options button,
.qe-diagnosis-page .qe-diagnosis-questions .phase1-question-list:not(.qe-question-list--enhanced) .phase1-options button{
  font-size:13px!important;
}

.qe-diagnosis-page .qe-diagnosis-finish .mm-purchase-note,
.qe-diagnosis-page .mm-site-footer p{font-size:12px!important}

@media (hover:hover){
  .qe-diagnosis-page .mm-photo-picker:hover .mm-photo-cta{background:var(--qe-wine-hover,#741021)}
  .qe-diagnosis-page .qe-question-toggle:hover :where(.qe-question-prompt,.qe-question-summary){color:var(--qed-wine)}
  .qe-diagnosis-page .phase1-options button:not(:disabled):hover{color:var(--qed-wine)}
}

@media (prefers-reduced-motion:reduce){
  .qe-diagnosis-page .phase1-question{transition:none}
  .qe-diagnosis-page .qe-question-chevron{transition:none}
}

/* 768 — a composed two-part consultation, not a squeezed desktop. */
@media (min-width:601px) and (max-width:1100px){
  .qe-diagnosis-page .mm-diagnosis-context{padding-inline:28px}

  .qe-diagnosis-page .qe-diagnosis-hero{
    min-height:0;
    padding:42px 32px 50px;
    grid-template-columns:minmax(250px,5fr) minmax(390px,7fr);
    gap:34px;
    align-items:start;
  }

  .qe-diagnosis-page .qe-diagnosis-intro{padding-top:8px}
  .qe-diagnosis-page .mm-flow-title{font-size:38px;line-height:1.48!important}
  .qe-diagnosis-page .mm-flow-lead{margin:16px 0 28px;font-size:13px;line-height:1.85!important}
  .qe-diagnosis-page .qe-step-heading{grid-template-columns:38px 1fr;gap:0 10px}
  .qe-diagnosis-page .qe-step-heading>span{font-size:25px}
  .qe-diagnosis-page .qe-step-heading>strong{font-size:17px}
  .qe-diagnosis-page .qe-step-heading>small{font-size:13px;line-height:1.75}

  .qe-diagnosis-page .mm-intake-photo{display:block}
  .qe-diagnosis-page .qe-photo-guidance{display:none}
  .qe-diagnosis-page .mm-photo-picker,
  .qe-diagnosis-page .mm-photo-picker .placeholder{min-height:420px;height:420px}
  .qe-diagnosis-page .mm-photo-picker .placeholder{grid-template-rows:minmax(0,1fr) 60px}
  .qe-diagnosis-page .mm-photo-example img{width:min(100%,302px)}
  .qe-diagnosis-page .mm-photo-picker>img{height:420px}
  .qe-diagnosis-page .mm-photo-cta{min-height:60px;padding-inline:18px}
  .qe-diagnosis-page .mm-photo-checks{justify-content:center;gap:16px;font-size:12px}

  .qe-diagnosis-page .phase1-progress{min-height:92px;padding:23px 0 17px}

  .qe-diagnosis-page .qe-diagnosis-questions,
  .qe-diagnosis-page .qe-diagnosis-finish{
    padding:56px 32px;
    grid-template-columns:190px minmax(0,1fr);
    gap:40px;
  }

  .qe-diagnosis-page .qe-section-index{grid-template-columns:36px minmax(0,1fr);gap:12px}
  .qe-diagnosis-page .qe-section-index>span{font-size:25px}
  .qe-diagnosis-page .qe-section-index h2{font-size:29px}
  .qe-diagnosis-page .qe-section-index .phase1-question-help{font-size:13px}

  .qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle{
    min-height:68px;
    padding-right:10px;
    grid-template-columns:40px minmax(0,1fr) minmax(84px,auto) 20px;
    gap:9px;
  }

  .qe-diagnosis-page .qe-question-list--enhanced .phase1-question.is-open .qe-question-toggle{padding-left:12px}
  .qe-diagnosis-page .qe-question-prompt{font-size:13px}
  .qe-diagnosis-page .qe-question-summary{font-size:12px}
  .qe-diagnosis-page .qe-question-list--enhanced .phase1-options{padding:3px 20px 20px 52px;gap:2px 18px}
  .qe-diagnosis-page .phase1-options button{font-size:12px!important}

  .qe-diagnosis-page .mm-free-preview{grid-template-columns:1fr 1fr;gap:18px 26px}
  .qe-diagnosis-page .mm-free-preview :where(h2,h3){grid-column:1/-1;font-size:20px!important}
}

/* Large phones and narrow portrait tablets cannot hold the two-column hero
   plus its editorial gutters. Stack only the hero in this breakpoint gap;
   the wider tablet question composition remains unchanged. */
@media (min-width:601px) and (max-width:767px){
  .qe-diagnosis-page .qe-diagnosis-hero{
    grid-template-columns:minmax(0,1fr);
    gap:26px;
  }
  .qe-diagnosis-page .qe-diagnosis-intro{max-width:540px}
  .qe-diagnosis-page .mm-intake-photo{
    width:min(520px,100%);
    margin-inline:auto;
  }
}

/* 390 — portrait first, then compact readable chapters. */
@media (max-width:600px){
  .qe-diagnosis-page{font-size:13px}

  .qe-diagnosis-page .mm-diagnosis-context{
    min-height:44px;
    padding-inline:18px;
  }

  .qe-diagnosis-page .mm-diagnosis-context :where(.mm-back,.mm-flow-label){font-size:12px}

  .qe-diagnosis-page .qe-diagnosis-hero{
    min-height:0;
    padding:28px 20px 34px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:24px;
  }

  .qe-diagnosis-page .qe-diagnosis-intro{max-width:none;padding:0}
  .qe-diagnosis-page .mm-flow-title{font-size:32px;line-height:1.52!important;letter-spacing:.01em}
  .qe-diagnosis-page .mm-flow-lead{margin:12px 0 24px;font-size:13px;line-height:1.8!important}
  .qe-diagnosis-page .qe-step-heading{grid-template-columns:36px 1fr;gap:0 10px}
  .qe-diagnosis-page .qe-step-heading>span{font-size:23px}
  .qe-diagnosis-page .qe-step-heading>strong{font-size:17px;line-height:1.55}
  .qe-diagnosis-page .qe-step-heading>small{font-size:13px;line-height:1.72}

  .qe-diagnosis-page .mm-intake-photo{display:block}
  .qe-diagnosis-page .qe-photo-guidance{display:none}
  .qe-diagnosis-page .mm-photo-picker,
  .qe-diagnosis-page .mm-photo-picker .placeholder{min-height:394px;height:394px}
  .qe-diagnosis-page .mm-photo-picker .placeholder{grid-template-rows:minmax(0,1fr) 58px}
  .qe-diagnosis-page .mm-photo-example img{width:min(100%,250px)}
  .qe-diagnosis-page .mm-photo-picker>img{height:394px}
  .qe-diagnosis-page .mm-photo-example em{top:12px;left:12px;font-size:12px}
  .qe-diagnosis-page .mm-photo-example::before,
  .qe-diagnosis-page .mm-photo-example::after{top:18px;width:24px;height:24px}
  .qe-diagnosis-page .mm-photo-example::before{left:18px}
  .qe-diagnosis-page .mm-photo-example::after{right:18px}
  .qe-diagnosis-page .mm-photo-cta{min-height:58px;padding-inline:16px}
  .qe-diagnosis-page .mm-photo-cta strong{font-size:15px}
  .qe-diagnosis-page .mm-photo-checks{min-height:44px;padding-top:11px;justify-content:center;gap:12px;font-size:12px}

  .qe-diagnosis-page .phase1-progress{
    width:100%;
    min-height:82px;
    padding:17px 20px 13px;
    border-top:1px solid var(--qed-rule);
    border-bottom:1px solid var(--qed-rule);
  }

  .qe-diagnosis-page .phase1-progress span{gap:6px;font-size:12px}
  .qe-diagnosis-page .phase1-progress span::before{top:12px}
  .qe-diagnosis-page .phase1-progress b{width:24px;height:24px;font-size:12px}

  .qe-diagnosis-page .qe-diagnosis-questions,
  .qe-diagnosis-page .qe-diagnosis-finish{
    padding:36px 20px 42px;
    display:block;
  }

  .qe-diagnosis-page .qe-diagnosis-questions>.qe-section-index{
    width:auto;
    height:auto;
    margin:0 0 26px;
    padding:0;
    overflow:visible;
    clip:auto;
    clip-path:none;
    white-space:normal;
    position:static;
  }

  .qe-diagnosis-page .qe-section-index{grid-template-columns:36px minmax(0,1fr);gap:11px}
  .qe-diagnosis-page .qe-section-index>span{font-size:23px}
  .qe-diagnosis-page .qe-section-index h2{font-size:28px;line-height:1.5!important}
  .qe-diagnosis-page .qe-section-index .phase1-question-help{max-width:none;margin-top:10px;font-size:13px;line-height:1.75!important}

  .qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle{
    min-height:68px;
    padding:9px 4px 9px 0;
    grid-template-columns:34px minmax(0,1fr) minmax(72px,auto) 18px;
    gap:7px;
  }

  .qe-diagnosis-page .qe-question-list--enhanced .phase1-question.is-open .qe-question-toggle{padding-left:10px}
  .qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle::before{font-size:16px}
  .qe-diagnosis-page .qe-question-prompt{font-size:13px;line-height:1.6}
  .qe-diagnosis-page .qe-question-summary{max-width:74px;font-size:12px;white-space:normal}
  .qe-diagnosis-page .qe-question-chevron{width:8px;height:8px}
  .qe-diagnosis-page .qe-question-list--enhanced .phase1-options{
    padding:2px 14px 20px 44px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 14px;
  }

  .qe-diagnosis-page .phase1-options button{
    width:100%;
    min-height:44px;
    padding:9px 0 7px;
    font-size:13px!important;
    text-align:left;
    white-space:normal;
  }

  .qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-question{padding:16px 0}
  .qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-question legend{margin-left:36px;font-size:13px}
  .qe-diagnosis-page .phase1-question-list:not(.qe-question-list--enhanced) .phase1-options{margin-left:36px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}

  .qe-diagnosis-page .qe-diagnosis-finish>.qe-section-index{margin-bottom:25px}
  .qe-diagnosis-page .mm-free-preview{margin-bottom:20px;padding-bottom:20px;display:block}
  .qe-diagnosis-page .mm-free-preview :where(h2,h3){margin-bottom:14px;font-size:19px!important}
  .qe-diagnosis-page .mm-free-preview p{font-size:13px!important;line-height:1.75!important}
  .qe-diagnosis-page .mm-free-preview p+p{margin-top:12px}
  .qe-diagnosis-page .mm-free-preview p strong{font-size:14px}
  .qe-diagnosis-page .phase1-safety-note{padding:10px 0 14px;font-size:13px!important;line-height:1.75!important}
  .qe-diagnosis-page .mm-consent{padding:14px 0;font-size:13px!important;line-height:1.75!important}
  .qe-diagnosis-page .mm-consent input{width:20px;height:20px}
  .qe-diagnosis-page .mm-submit{width:100%;min-height:56px;margin-top:24px;font-size:14px!important}
  .qe-diagnosis-page :where(.mm-status,.mm-purchase-note){font-size:12px!important;line-height:1.7!important}
  .qe-diagnosis-page .qe-diagnosis-finish .mm-purchase-note{font-size:12px!important}
}

@media (max-width:340px){
  .qe-diagnosis-page .qe-diagnosis-hero,
  .qe-diagnosis-page .qe-diagnosis-questions,
  .qe-diagnosis-page .qe-diagnosis-finish{padding-inline:16px}
  .qe-diagnosis-page .mm-flow-title{font-size:29px}
  .qe-diagnosis-page .qe-question-list--enhanced .qe-question-toggle{grid-template-columns:31px minmax(0,1fr) 18px}
  .qe-diagnosis-page .qe-question-summary{grid-column:2;text-align:left;max-width:none}
  .qe-diagnosis-page .qe-question-chevron{grid-column:3;grid-row:1/3}
}
