/* Launch refinement: keep the approved art direction and make actions legible. */
.brand{display:inline-flex;align-items:center;min-height:44px;width:136px;line-height:0}
.brand img{display:block;width:136px;height:40px;object-fit:contain}
.nav-actions{display:flex;align-items:center;gap:28px}
.site-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:44px;min-height:44px;padding:8px 0 8px 10px;background:transparent;color:inherit;font-size:12px}
.site-menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.site-menu-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}
.site-menu-links{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;margin:22px 0 12px}
.site-menu-links a{display:flex;align-items:center;min-height:52px;padding:12px 0;border-bottom:1px solid #d7dacb;font-size:14px;line-height:1.5;word-break:keep-all}
.site-menu-links a[aria-current="page"]{color:var(--wine);font-weight:600}
.verification-later{display:block;width:100%;min-height:44px;margin-top:8px;background:transparent;color:var(--green);font-size:13px}
.ticket-star{display:block;width:29px;height:29px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ticket-limit{margin-top:12px;color:var(--wine);font-size:12px;font-weight:600;letter-spacing:.025em}
.coupon-status{color:#f4e6d4;text-align:center;font-size:12px;line-height:1.7;margin:20px 0 4px}
.terms-open{min-height:44px;min-width:110px}.ticket-action:disabled{cursor:wait;opacity:.75}
.terms-confirm{width:100%;margin-top:28px}.terms-group a,.holiday-faq a{text-decoration:underline;text-underline-offset:3px}
.login-existing{display:block;min-height:44px;margin-top:10px;padding:14px 4px;text-align:center;text-decoration:underline;text-underline-offset:4px;font-size:13px}
#login-dialog>.button{margin-top:18px;width:100%}
.holiday-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;padding-top:78px;padding-bottom:78px}
.holiday-faq h2{font:32px/1.6 var(--serif);margin-top:16px}
.holiday-faq details{border-bottom:1px solid #cdd2bd}
.holiday-faq summary{cursor:pointer;list-style:none;min-height:64px;display:flex;align-items:center;font-size:15px;line-height:1.7;font-weight:600;padding:17px 28px 17px 0;position:relative}
.holiday-faq summary:after{content:'+';position:absolute;right:2px;color:#6c7c64}
.holiday-faq details[open] summary:after{content:'−'}
.holiday-faq details>p{font-size:14px;line-height:1.9;color:#52624a;margin:0 0 22px}
.footer-links{display:flex;flex-wrap:wrap;gap:12px 22px;width:100%;font-size:12px;line-height:1.8;margin-top:9px}
.business-note{width:100%;font-size:11px;line-height:1.9;color:#626b57}
.no-script{text-align:center;padding:24px;font-size:14px}
.texture-card h3{font:21px/1.6 var(--serif);letter-spacing:-.035em;margin:13px 0 18px}
.texture-card ul{padding:0;list-style:none;font-size:13px;line-height:1.9;color:#53664c}
.texture-card li{padding:6px 0;border-top:1px solid #d8dbc9}
.texture-note{font-size:12px;line-height:1.7;color:#607154;margin-top:20px}
.hero-description strong{font-weight:500}
.hero-actions{display:flex;align-items:center;gap:25px;margin-top:27px}
.hero-actions .button{min-height:50px;padding:15px 24px;font-size:13px;box-shadow:0 5px 22px #041b2333}
.hero-coupon-link{display:inline-flex;align-items:center;min-height:48px;font-size:12px;text-decoration:underline;text-underline-offset:6px}
.little-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;height:auto;padding:0;margin:24px 0 27px}
.little-card{min-width:0;height:auto;min-height:55px;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;font-size:12px;padding:12px;box-shadow:none}
.little-cards .little-card,.discovery-copy:hover .little-card{transform:none;margin:0}
.card-d{background:#e5e7df}
.music-control{bottom:max(18px,env(safe-area-inset-bottom));right:20px}
.playback-buttons{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.playback-buttons .motion-toggle{pointer-events:auto;min-height:44px}
.music-compact .motion-toggle{display:none}
.summary-traits{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}
.summary-traits li{display:flex;align-items:flex-start;gap:12px;background:#fffdf4;border:1px solid #d6dcca;padding:17px 15px;font:14px/1.7 var(--serif);word-break:keep-all}
.summary-traits li>span{color:#a38763;font:italic 20px/1.3 Instrument,serif;flex:none}
.result-next-step{border-top:1px solid #cdd2bd;margin-top:25px;padding-top:24px}
.result-next-step .eyebrow{font-size:9px}
.result-next-step h3{font:22px/1.6 var(--serif);letter-spacing:-.04em;margin:10px 0}
.result-next-step p{font-size:13px;line-height:1.8;color:#53664c}
.result-letter-link,.result-coupon-link{background:transparent;text-align:left;min-height:44px;font-size:13px;color:var(--green);text-decoration:underline;text-underline-offset:5px;padding:10px 0}
.result-next-step .result-cost-note{margin-top:15px;font-size:12px}
.result-coupon-link{color:var(--wine)}
@media(max-width:680px){
  .ticket-star{width:25px;height:25px}
  .criteria-band{background:#fbf7ee;margin-top:36px;padding:36px 0;border-top:1px solid #d5d7c6;border-bottom:1px solid #d5d7c6}
  .criteria-band .criteria-layout{margin:0 auto;padding-top:0;border-top:0}
  .hero-content{padding-top:112px}.edition{margin-bottom:22px}
  .hero-actions{gap:22px;margin-top:24px}.hero-actions .button{font-size:12px;padding:14px 20px}
  .hero-coupon-link{font-size:12px}.music-control{bottom:max(14px,env(safe-area-inset-bottom));right:14px}
  .little-card{min-width:0;font-size:12px;min-height:53px;height:auto}
  .summary-traits{grid-template-columns:1fr;gap:8px;margin:18px 0}.summary-traits li{font-size:14px;padding:13px}
  .result-next-step h3{font-size:21px}.result-next-step p{font-size:12px}
  .criteria-intro p,.criteria-item summary small,.care-copy>.care-privacy{font-size:12px}
  .criteria-item summary{padding-block:16px}.criteria-body{padding-left:0;padding-bottom:22px;gap:8px}
  .criteria-body span{font-size:12px;padding:6px 10px}
  .coupon-status{font-size:12px;min-height:40px}.ticket-limit{font-size:12px}
  .holiday-faq{display:block;padding-top:50px;padding-bottom:50px}
  .holiday-faq h2{font-size:25px;line-height:1.5;margin:12px 0 25px}.holiday-faq h2 br{display:none}
  .holiday-faq summary{font-size:14px;min-height:60px}.holiday-faq details>p{font-size:13px}
  .texture-card h3{font-size:21px}.texture-card ul{font-size:13px}
  .footer-links{font-size:12px;gap:12px 20px}.business-note{font-size:11px}
}
@media(max-width:767px){
  .nav{height:60px;padding:0 16px}
  .brand img{filter:none;width:126px;height:38px;object-fit:contain}
  .brand{width:126px}.nav nav{display:none}
  .nav-actions{gap:0}
}
@media(max-width:359px){.brand,.brand img{width:116px}}
@media(max-width:680px) and (max-height:740px){.hero-content{padding-top:94px}.hero-script{font-size:36px;margin-bottom:15px}.hero h1{font-size:36px}.edition{margin-bottom:18px}.hero-description{margin-top:18px}.hero-actions{margin-top:20px}}

/* The quiz is a primary invitation, not another decorative card. */
.button.quiz-invitation{min-height:78px;min-width:0;max-width:100%;gap:24px;padding:17px 24px;border:1px solid transparent;border-radius:12px;background:var(--wine);color:var(--paper);text-align:left;box-shadow:0 8px 24px #68202c1a}
.quiz-invitation-copy{display:grid;gap:4px;min-width:0;line-height:1.45;word-break:keep-all}
.quiz-invitation-copy>span{font:400 12px/1.45 var(--body);letter-spacing:.035em}
.quiz-invitation-copy>strong{font:600 17px/1.45 var(--body);letter-spacing:-.025em}
.quiz-invitation-mark{width:30px;height:30px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.button.quiz-invitation:hover{background:#702030}
.button.quiz-invitation:focus-visible{outline:3px solid #bc873e;outline-offset:5px}
.discovery .quiz-invitation{width:100%;margin-top:25px}
.discovery .little-cards{margin:18px 0 0}
.hero-actions .quiz-invitation{background:var(--paper);color:var(--wine);box-shadow:0 6px 24px #041b2340}
.hero-actions .quiz-invitation:hover{background:#fff}
@media(max-width:680px){
  .button.quiz-invitation{gap:16px;padding:16px 20px;min-height:76px}
  .quiz-invitation-copy>strong{font-size:16px}
  .hero-actions .quiz-invitation{width:min(100%,310px)}
}
@media(prefers-reduced-motion:reduce){.button.quiz-invitation,.button.quiz-invitation:hover{transition:none;transform:none}}
