/* The Home keeps its approved desktop/tablet composition. */
.channel-access-help { display:none; }
@media(max-width:600px) {
  .channel-access-help { display:block; margin-top:12px; font-size:12px; line-height:1.6; color:var(--ink); }
  .channel-access-help a { display:inline-flex; align-items:center; gap:10px; min-height:44px; border-bottom:1px solid var(--line); }
}
.channel-access-page { background:var(--paper); color:var(--ink); }
.channel-access-wrap { width:min(1120px,100%); margin-inline:auto; padding-inline:32px; }
.channel-access-header { display:flex; justify-content:space-between; align-items:center; padding-block:30px; border-bottom:1px solid var(--line); }
.channel-access-header .text-link { font-size:13px; }
.channel-access-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:90px; align-items:start; padding-block:75px; }
.channel-access-copy h1 { margin:20px 0 28px; font-size:clamp(44px,5.3vw,69px); line-height:1.05; letter-spacing:-2.2px; }
.channel-access-copy h1 em { color:var(--petrol); }
.channel-access-intro { font-size:18px; line-height:1.8; max-width:550px; color:var(--muted); }
.channel-access-open { margin-top:25px; gap:25px; font-size:14px; }
.channel-access-instructions { border-top:1px solid var(--line); margin-top:38px; padding-top:25px; }
.channel-access-instructions h2 { font:500 22px/1.3 var(--sans); letter-spacing:-.4px; margin-bottom:15px; }
.channel-access-instructions p { font-size:15px; line-height:1.8; color:var(--muted); margin-bottom:15px; }
.channel-access-instructions label { display:block; font-size:12px; line-height:1.5; margin:22px 0 8px; }
.channel-access-instructions input { display:block; width:100%; min-width:0; padding:14px 12px; border:1px solid #a4c3cd; background:#fff; color:var(--ink); font:400 13px/1.6 var(--sans); border-radius:0; }
.channel-copy-button { min-height:44px; padding:10px 0; color:var(--ink); background:transparent; border-bottom:1px solid var(--line); font:500 13px/1.5 var(--sans); }
.channel-copy-button[hidden] { display:none; }
.channel-access-instructions .channel-copy-status { font-size:12px; margin:12px 0 0; }
.channel-access-qr { padding:28px; margin:10px 0 0; border-top:2px solid var(--mint); background:var(--ice); }
.channel-access-qr-label { display:block; font-size:9px; letter-spacing:1px; line-height:1.7; margin-bottom:20px; }
.channel-access-qr img { display:block; width:100%; max-width:328px; height:auto; background:white; }
.channel-access-qr figcaption { margin-top:20px; font-size:13px; line-height:1.8; color:var(--muted); }
.channel-access-note { border-block:1px solid var(--line); padding-block:24px; }
.channel-access-note p { font-size:14px; line-height:1.8; max-width:780px; color:var(--muted); }
.channel-access-note a { text-decoration:underline; text-underline-offset:4px; }
.channel-access-footer { display:flex; justify-content:space-between; align-items:center; gap:25px; padding-block:38px; font-size:13px; line-height:1.7; }
.channel-access-footer p span { color:var(--muted); }
.channel-access-footer nav { display:flex; gap:24px; }
@media(max-width:700px) {
  .channel-access-wrap { padding-inline:24px; }
  .channel-access-header { padding-block:22px; }
  .channel-access-grid { grid-template-columns:1fr; gap:35px; padding-block:45px; }
  .channel-access-copy h1 { font-size:clamp(39px,10.5vw,59px); letter-spacing:-1.5px; }
  .channel-access-intro { font-size:16px; }
  .channel-access-open { font-size:13px; gap:16px; max-width:100%; }
  .channel-access-qr { max-width:390px; margin:0; padding:24px; }
  .channel-access-footer { align-items:flex-start; flex-direction:column; }
}
