/* Mobile: all campaign imagery above one clear, full-width registration form. */
.mobile-showcase{display:none}
.guidelines-control[open]>summary .guidelines-toggle{transform:rotate(45deg)}
.form-logo{display:block;width:122px;height:auto;object-fit:contain}
.gallery-image-wrap{display:flex;flex-direction:column;align-items:center}
.gallery-image-wrap #galleryImage{margin:0}
#galleryCaption.gallery-caption{align-self:stretch;margin:0 0 9px;padding:11px 14px;border-radius:8px;background:#261832;color:#fff;font-size:clamp(12px,1.35vw,16px);font-weight:700;line-height:1.5;letter-spacing:.05px}
@media(max-width:900px){
  :root{scroll-behavior:auto}
  .poster-layout .shell{max-width:720px;padding-inline:16px}
  .poster-layout .site-header{position:sticky;top:0;z-index:20;height:68px;background:#f7f5faf7;backdrop-filter:blur(12px);gap:12px}
  .poster-layout .brand img{width:132px}
  .poster-layout .header-note{display:none}
  .poster-layout .header-link{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;padding:9px 15px;border-color:#d7cbe1;background:#fff;font-weight:700}
  .poster-layout .page-intro{padding:16px 0 12px}
  .poster-layout .page-intro .eyebrow{font-size:9px;letter-spacing:1.25px;margin-bottom:8px}
  .poster-layout .page-intro h1{font-size:29px;line-height:1.15;letter-spacing:-1.2px;text-wrap:balance}
  .poster-layout .page-intro>p:last-child{display:none}
  .mobile-showcase{display:block;margin:0 -16px 19px;overflow:hidden;border-radius:0;background:#302044;border:1px solid #554063;border-left:0;border-right:0;box-shadow:0 5px 20px #35204c0a}
  .mobile-campaign{display:flex;align-items:center;gap:11px;padding:10px 12px;background:radial-gradient(ellipse at 100% 0,#664384,transparent 75%)}
  .mobile-campaign>img{width:88px;height:56px;padding:5px;border-radius:8px;object-fit:contain;background:#fcf5e7;flex-shrink:0}
  .mobile-eyebrow{display:block;color:#e6c783;font-size:8px;font-weight:700;letter-spacing:1.3px;margin-bottom:5px}
  .mobile-campaign h2{font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.35;color:#fff;margin:0;letter-spacing:-.35px}
  .mobile-campaign p{font-size:10px;line-height:1.65;color:#e0d5e9;margin:4px 0 0}
  .mobile-photos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding:0 9px}
  .mobile-photos .gallery-item{grid-column:span 2!important;display:block;height:72px;min-width:0;width:100%;border:1px solid #dfc98c;border-radius:9px;background:#d4c7df;padding:0;position:relative;box-shadow:0 3px 8px #170d2440}
  .mobile-photos .gallery-item:nth-child(-n+2){grid-column:span 3!important;height:102px}
  .mobile-photos .gallery-item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
  .mobile-photos .gallery-item:before,.mobile-photos .gallery-item:nth-child(n):before{content:none;display:none}
  .mobile-photos .gallery-item:after{width:16px;height:16px;right:4px;bottom:4px;font-size:10px}
  .mobile-showcase-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px 10px;color:#e6d9ed;font-size:9px;line-height:1.5}
  .mobile-showcase-caption span:first-child{color:#e6c783}
  .registration-stage{display:block;margin-bottom:26px}
  .registration-stage>.story-rail{display:none}
  .guidelines-control{margin-bottom:11px;border-radius:11px}
  .guidelines-control summary{min-height:58px;padding:10px 14px}
  .guidelines-options{gap:7px;padding:0 9px 9px}
  .guidelines-level>summary{min-height:64px;padding:10px 11px}
  .guidelines-content{max-height:54vh;padding:14px 12px 16px;font-size:13px;line-height:1.7}
  .guidelines-content h3{font-size:15px}
  .guidelines-content h4{font-size:12px}
  .registration-centre{width:100%;scroll-margin-top:82px;border-radius:16px;box-shadow:0 6px 24px #281c4110}
  .registration-chooser{border:1px solid #d6c9e1;border-bottom:0;border-radius:16px 16px 0 0;padding:17px 18px 16px;background:#fff}
  .chooser-heading .step-label{font-size:10px;letter-spacing:1px;color:#583b6b}
  .free-badge{font-size:8px;letter-spacing:.3px}
  .chooser-description{display:none}
  .chooser-heading{margin-bottom:12px}
  .poster-layout .category-switch{margin-bottom:9px;padding:4px}
  .poster-layout .category-switch button{min-height:44px;font-size:14px;padding:9px 5px}
  .poster-layout .kind-switch{gap:8px}
  .poster-layout .kind-switch button{min-height:48px;grid-template-columns:26px 1fr;gap:8px;padding:10px 9px}
  .poster-layout .kind-switch .arrow{display:none}
  .poster-layout .kind-icon{width:26px;height:26px}
  .poster-layout .kind-title{font-size:13px;line-height:1.4}
  .poster-layout .kind-note{display:none}
  .poster-layout .form-card{border-color:#d6c9e1;border-radius:0 0 16px 16px;box-shadow:none}
  .poster-layout .form-header{padding:14px 19px 15px}
  .poster-layout .form-topline{margin-bottom:7px;min-height:40px}
  .poster-layout .form-logo{width:132px;max-height:66px}
  .poster-layout .form-header h2{font-size:27px;line-height:1.2;margin-bottom:7px}
  .poster-layout .form-header p{font-size:12px;line-height:1.6}
  .poster-layout .progress-row{font-size:11px;margin-top:15px;color:#6d6179}
  .poster-layout .form-body{padding:23px 19px}
  .poster-layout .field>label,.poster-layout .field>legend{font-size:14px;line-height:1.65}
  .poster-layout input:not([type=radio],[type=file]),.poster-layout textarea{font-size:16px;min-height:50px;padding:12px;color:#28213b}
  .poster-layout .radio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .poster-layout .radio-option{min-height:46px;font-size:13px;padding:12px 10px;gap:8px}
  .poster-layout .radio-option span{overflow-wrap:anywhere}
  .poster-layout .field-hint{font-size:12px;color:#72667d}
  .poster-layout .upload-box{min-height:96px;padding:17px}
  .poster-layout .upload-box strong{font-size:14px}.poster-layout .file-name{font-size:12px}
  .poster-layout .form-actions{flex-direction:column-reverse;align-items:stretch;gap:13px}
  .poster-layout .submit-button{min-height:54px;font-size:16px;border-radius:10px}
  .poster-layout .privacy-note{font-size:11px;max-width:none;text-align:center}
  .routing-note{font-size:10px;padding-bottom:12px;margin-top:12px}
  .poster-layout .footer{font-size:10px}
}
@media(max-width:600px){.poster-layout .fields{grid-template-columns:1fr;gap:23px}.poster-layout .field.full{grid-column:auto}}
@media(max-width:600px){.gallery-dialog{max-width:96vw;padding:10px}.gallery-dialog img{max-height:72vh}#galleryCaption.gallery-caption{padding:9px 10px;font-size:12px;line-height:1.45}}
@media(max-width:360px){.poster-layout .shell{padding-inline:12px}.mobile-showcase{margin-left:-12px;margin-right:-12px}.guidelines-options{grid-template-columns:1fr}.guidelines-options>a{min-height:56px}.poster-layout .brand img{width:116px}.poster-layout .page-intro h1{font-size:26px}.mobile-campaign{gap:10px;padding:10px}.mobile-campaign>img{width:83px;height:58px}.mobile-campaign h2{font-size:15px}.mobile-photos .gallery-item{height:68px}.mobile-photos .gallery-item:nth-child(-n+2){height:92px}.mobile-photos .gallery-item:before{font-size:5.5px;letter-spacing:.35px;padding-left:4px}.mobile-showcase-caption{font-size:8px;gap:5px}.registration-chooser{padding:15px}.poster-layout .kind-title{font-size:12px}.poster-layout .kind-note{font-size:9px}.poster-layout .form-header,.poster-layout .form-body{padding-left:16px;padding-right:16px}.poster-layout .form-logo{width:116px;max-height:58px}}
