/* Variant 01 only. Original portrait positions and seam geometry are preserved. */
.desktop-nav,.hero-cta,.hero-draft{display:none}
.form-status{font-size:14px}.form-title{margin-top:12px}.step-top{font-size:14px;gap:12px}
.sheet-body{min-height:0;flex:1}.sheet-layout{min-height:0}.form-intro,.note{font-size:14px}
.field textarea{display:block;width:100%;min-height:120px;border:1px solid #5c5266;background:#25212b;color:var(--paper);border-radius:10px;padding:14px 15px;font:inherit;font-size:16px;resize:vertical}
.field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.form-progress{appearance:none;-webkit-appearance:none;border:0;display:block;height:3px;width:100%;background:#41394a;margin:12px 0 26px;border-radius:0;color:var(--accent)}
.form-progress::-webkit-progress-bar{background:#41394a}.form-progress::-webkit-progress-value{background:var(--accent)}.form-progress::-moz-progress-bar{background:var(--accent)}
.summary-edit{display:block;min-height:44px;border:0;background:none;color:var(--accent);text-decoration:underline;padding:10px 0;font-size:14px}
.summary-list dt{font-size:14px}.summary-list dd{font-size:15px;overflow-wrap:anywhere}
.form-actions .text-button{padding:12px 4px;min-width:70px;font-size:14px}.form-actions .secondary{min-width:60px}
.form-callout{overflow-wrap:anywhere}.button-row{flex-wrap:wrap}.button-row>*{flex-basis:180px}
.primary:disabled{opacity:.65}.participation-price{font-size:20px;line-height:1.5;margin:24px 0!important;color:var(--paper)}
.footer-note{max-width:220px;line-height:1.6;font-size:14px}.footer{gap:20px;align-items:center}
.theme-01 .hero-art{transition:translate .22s ease;translate:var(--art-x,0) var(--art-y,0)}
.theme-01 .portrait-sheet{animation:none}
@media(prefers-reduced-motion:no-preference){
  .hero-copy{animation:copy-arrive .55s ease both}
  .theme-01 .portrait-sheet{animation:portrait-arrive .65s cubic-bezier(.2,.7,.2,1) both}
  .theme-01 .portrait-2{animation-delay:.08s}.theme-01 .portrait-3{animation-delay:.14s}.theme-01 .portrait-4{animation-delay:.2s}
}
@keyframes portrait-arrive{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
@keyframes copy-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(max-width:767px){
  .app{box-shadow:none}.hero-caption{padding-top:26px;font-size:12px}
  .footer{flex-wrap:wrap}.footer-note{order:3;max-width:none;flex-basis:100%}
  .form-actions{padding-left:18px;padding-right:18px;gap:8px}.form-actions .primary{font-size:14px;padding:14px 8px}
  .form-actions .secondary{font-size:14px;padding:12px 10px}
  .sheet-header h2{font-size:19px}.sheet-header{padding:16px 20px}
  .summary-list div{gap:14px}.summary-list dd{max-width:56%}
}
@media(min-width:768px){
  .app{width:100%;max-width:none;box-shadow:none;padding-bottom:0;overflow:clip}
  .topbar{height:96px;padding:0 clamp(32px,4vw,56px);border-bottom:1px solid var(--line)}
  .desktop-nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:600}
  .desktop-nav a{display:flex;align-items:center;min-height:48px}.desktop-nav a:hover{color:var(--accent)}
  .desktop-nav .primary{width:auto;min-height:48px;font-size:14px;padding:14px 18px}
  .desktop-nav a[href='#contact']{display:none}.menu-button,.dock{display:none}
  .theme-01 .hero{padding:52px 40px 0}
  .theme-01 .hero-copy{padding:0}.theme-01 .hero-copy>.eyebrow{font-size:14px}
  .hero h1{font-size:clamp(110px,15vw,130px)}
  .theme-01 .hero-art{max-width:640px;margin:32px auto 0}
  .slogan{font-size:22px;max-width:none}.facts{font-size:16px}
  .hero-cta{display:flex;max-width:290px;margin-top:32px}.hero-draft{display:block;margin-top:12px}
  .hero-caption{padding:28px 0 40px;grid-column:1/-1;font-size:14px}
  .section{padding:72px 40px;scroll-margin-top:24px}
  .section h2{font-size:62px}.section p{max-width:620px}.big-statement{font-size:56px}
  .paper-note{max-width:580px;margin:40px auto 0;padding:36px}
  .paper-note .hand{font-size:34px}.paper-note p{max-width:none}
  .info-row{grid-template-columns:140px 1fr}.info-row>span{font-size:14px}.info-row strong{font-size:20px}
  #participation>.primary{max-width:340px;margin-top:26px}
  .contact-sheet{padding:32px}.footer{padding:32px 40px;min-height:128px;font-size:14px}
  .footer-note{max-width:300px}
  dialog{max-width:580px;margin:auto;border-radius:20px;max-height:calc(100dvh - 48px);box-shadow:0 24px 80px #0008}
  .sheet-layout{max-height:calc(100dvh - 48px)}.sheet-header,.sheet-body{padding:24px 28px}.sheet-body{padding-top:20px}
  .form-actions{padding:18px 28px}.form-title{font-size:38px}.toast{bottom:32px}
}
@media(min-width:900px){
  .theme-01 .hero{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);align-items:center;gap:0 28px;padding:48px 40px 0}
  .theme-01 .hero-copy{padding:0}.hero h1{font-size:clamp(80px,9.2vw,126px)}
  .theme-01 .hero-art{margin:0;width:100%;max-width:none}
  .hero-copy>.eyebrow{max-width:250px;line-height:1.6}
  .slogan{font-size:20px}.facts{font-size:14px;gap:12px}.facts span+span{padding-left:12px}
}
@media(min-width:1200px){
  .topbar{padding:0 56px;height:104px}.desktop-nav{gap:28px}.desktop-nav a[href='#contact']{display:flex}
  .theme-01 .hero{min-height:710px;padding:44px 56px 0;gap:0 32px;grid-template-columns:minmax(0,.45fr) minmax(0,.55fr)}
  .theme-01 .hero-copy{padding-bottom:12px}.hero h1{font-size:clamp(112px,9.2vw,132px)}
  .slogan{font-size:24px;margin:24px 0 28px}.facts{font-size:16px;gap:20px}.facts span+span{padding-left:20px}
  .hero-cta{margin-top:40px;max-width:310px;min-height:60px}.hero-draft{margin-top:14px}
  .hero-caption{padding-bottom:36px}.theme-01 .hero h1:after{right:20px;top:10px;width:58px}
  .section{padding:90px 56px}.section h2{font-size:72px}.section-heading{margin-bottom:32px}
  #about{display:grid;grid-template-columns:1fr 1fr;gap:0 80px;align-items:center}
  #about .section-heading,#about .big-statement{grid-column:1}#about .paper-note{grid-column:2;grid-row:1 / span 2;margin:20px 0;padding:40px}
  .big-statement{font-size:62px;max-width:560px}
  #details,#questions,#contact{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);gap:0 60px}
  #details .section-heading,#questions .section-heading,#contact .section-heading{grid-column:1;grid-row:1 / span 8}
  #details .info-list,#questions>details,#contact .contact-sheet{grid-column:2;margin-top:0}
  #questions summary{font-size:18px;padding-top:26px;padding-bottom:26px}#questions details>p{font-size:16px}
  #contact .contact-sheet{border:0;border-top:1px solid var(--line);padding:28px 0 0}
  #participation{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);gap:0 60px}
  #participation>.section-heading{grid-column:1;grid-row:1 / span 6}#participation>p,#participation>.primary{grid-column:2}
  #participation>p:first-of-type{margin-top:0;font-size:20px}
  .info-row{grid-template-columns:120px 1fr}.footer{padding:36px 56px}
}
@media(max-height:500px){
  dialog{max-height:calc(100dvh - 8px)}.sheet-layout{max-height:calc(100dvh - 8px)}
  .sheet-header{padding-top:10px;padding-bottom:10px}.form-actions{padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .sheet-body{padding-top:16px;padding-bottom:16px}
}
@media(prefers-reduced-motion:reduce){.theme-01 .hero-art{translate:0 0!important}.hero-copy,.theme-01 .portrait-sheet{translate:0 0!important;animation:none!important}}

.consent-text{white-space:pre-wrap;line-height:1.6;font-size:15px;overflow-wrap:anywhere}.registration-documents{margin-top:28px}.registration-documents h4{font-size:20px;margin-bottom:12px}.registration-documents button:disabled{opacity:.55;cursor:default}

/* Fluid desktop canvas: sections reach the viewport edges; text keeps a readable measure. */
@media(min-width:768px){body.theme-01{background:var(--bg)}}
@media(min-width:1440px){
  .theme-01 .app{--desktop-gutter:clamp(56px,4.8vw,120px)}
  .theme-01 .topbar,.theme-01 .section,.theme-01 .footer{padding-left:var(--desktop-gutter);padding-right:var(--desktop-gutter)}
  .theme-01 .hero{padding-left:var(--desktop-gutter);padding-right:var(--desktop-gutter);column-gap:clamp(32px,3vw,76px);grid-template-columns:minmax(0,.46fr) minmax(0,.54fr)}
  .theme-01 .hero h1{font-size:clamp(132px,9.2vw,192px)}
  .theme-01 .hero-art{max-width:1000px;justify-self:center}
  .theme-01 .hero-copy>.eyebrow{font-size:16px;max-width:320px}
  .theme-01 .slogan{font-size:clamp(24px,1.65vw,32px);max-width:640px}
  .theme-01 .facts{font-size:18px}
  .theme-01 .hero-cta{max-width:360px}
  .theme-01 .hero-draft{max-width:500px}
  .theme-01 .section{column-gap:clamp(60px,5vw,128px)}
  .theme-01 .section h2{font-size:clamp(72px,4.8vw,100px)}
}

/* Public documents and approved participation information. */
.documents-grid{display:grid;gap:32px;align-items:start}
.document-card{padding:28px;background:var(--surface,#1c1c20);border:1px solid var(--line,#3b3b40);border-radius:16px}
.document-card h3{font-size:clamp(24px,2.2vw,36px);line-height:1.15;margin:16px 0}
.document-download{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;text-align:center;white-space:normal;max-width:100%;box-sizing:border-box}
.policy-list details{border-top:1px solid var(--line,#3b3b40);padding:20px 0;scroll-margin-top:100px}
.policy-list details:last-child{border-bottom:1px solid var(--line,#3b3b40)}
.policy-list summary{cursor:pointer;font-size:clamp(20px,1.5vw,26px);font-weight:600;line-height:1.3}
.policy-body{font-size:16px;line-height:1.65;padding-top:12px}
.policy-body p{font-size:inherit;line-height:inherit;max-width:70ch;margin:14px 0}
.footer-note a{display:inline-block;line-height:1.8;text-underline-offset:4px}
.footer-note p{margin:12px 0 0}
@media(min-width:900px){.documents-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,100px)}}
