:root{--access-bg:#0b1418;--access-fg:#e8eeed;--access-muted:#a9bac0;--access-line:#314149;--access-accent:#d58c6b}body.access-page{background:var(--access-bg);color:var(--access-fg);font-family:Inter,"Segoe UI",Arial,sans-serif}.access-shell{width:min(1320px,calc(100% - 96px));margin:auto;padding:52px 0 110px}.access-back{color:var(--access-muted);text-decoration:none;font-size:13px}.access-back:hover,.access-preview:hover{color:#fff}.access-grid{display:grid;grid-template-columns:1fr minmax(360px,.78fr);align-items:start;}.access-kicker,.access-form-heading span{font-size:11px;letter-spacing:.18em;color:var(--access-accent);text-transform:uppercase}.access-intro h1,.preview-heading h1,.privacy-page-title h1{font-size:clamp(54px,6.7vw,104px);font-weight:300;line-height:1.03;letter-spacing:-.058em;margin:22px 0 30px}.access-intro h1 em{font-style:normal;color:var(--access-accent)}.access-intro>p,.preview-heading p,.privacy-page-title p{max-width:59ch;color:var(--access-muted);font-size:17px;line-height:1.7}.access-selection{border-top:1px solid var(--access-line);border-bottom:1px solid var(--access-line);margin:54px 0 20px;padding:21px 0;display:grid;gap:7px}.access-selection span,.access-selection small{font-size:12px;color:var(--access-muted)}.access-selection strong{font-size:20px;font-weight:400;line-height:1.35}.access-preview{font-size:13px;text-decoration:none;color:var(--access-accent)}.access-form{border:1px solid var(--access-line);background:rgba(19,33,39,.9);padding:clamp(26px,3.4vw,48px);display:grid;gap:25px}.access-form-heading h2{font-size:38px;font-weight:300;letter-spacing:-.04em;margin:13px 0 6px}.access-form label{display:grid;gap:9px;color:var(--access-fg)}.access-form input{box-sizing:border-box;width:100%;padding:13px 15px;min-height:48px;background:#0b1418;border:1px solid #405159;border-radius:0;color:#fff;font:inherit}.access-form input:focus{outline:2px solid var(--access-accent);outline-offset:2px}.access-form .optional{color:var(--access-muted);font-size:11px}.access-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.access-privacy{font-size:12px;line-height:1.65;color:var(--access-muted);margin:0}.access-privacy a{color:var(--access-fg)}.access-form button,.preview-cta{border:1px solid var(--access-accent);background:var(--access-accent);color:#0b1418;padding:16px 20px;font:500 13px Inter,"Segoe UI",Arial,sans-serif;text-decoration:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.access-form button:hover,.preview-cta:hover{background:#e9a486}.access-status{min-height:1.2em;margin:0;color:#f1b19b;font-size:13px}.access-footer{padding:24px max(48px,calc((100% - 1320px)/2));border-top:1px solid var(--access-line);display:flex;justify-content:space-between;color:var(--access-muted);font-size:12px}.access-footer a{color:inherit;text-decoration:none}.preview-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin:75px 0 48px}.preview-heading h1{font-size:clamp(40px,5vw,76px);max-width:900px}.preview-cta{flex:none;min-width:225px}.preview-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.preview-pages figure{margin:0;border:1px solid var(--access-line);background:#172329;padding:22px}.preview-pages img{display:block;width:100%;height:auto}.preview-pages figcaption{padding-top:14px;color:var(--access-muted);font-size:12px}.preview-empty{border:1px solid var(--access-line);padding:40px;color:var(--access-muted)}.privacy-page-title{margin:75px 0 52px}.privacy-copy{max-width:840px;color:var(--access-muted);font-size:15px;line-height:1.75}.privacy-copy h2{font-size:24px;font-weight:400;color:var(--access-fg);margin:42px 0 8px}.privacy-copy p{margin:0 0 18px}.privacy-copy a{color:var(--access-fg)}.privacy-date{font-size:12px;padding-top:28px}@media(max-width:800px){.access-shell{width:calc(100% - 40px);padding:30px 0 72px}.access-grid{grid-template-columns:1fr;}.access-intro h1{font-size:56px}.access-selection{margin-top:32px}.access-form{padding:24px}.preview-heading{display:grid;margin:50px 0 30px}.preview-cta{width:100%;box-sizing:border-box}.preview-pages{grid-template-columns:1fr}.privacy-page-title{margin:50px 0 35px}.access-footer{padding:24px 20px}}@media(prefers-reduced-motion:no-preference){.access-form,.preview-pages figure{animation:access-in .45s ease both}@keyframes access-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}

/* Same completion cues as the approved configurator; no change to the download gate. */
.access-page [hidden]{display:none!important}
.access-grid{margin-top:54px;gap:clamp(36px,6vw,90px)}
.access-form label{font-size:15px;scroll-margin-top:110px}
.access-form input{font-size:16px;scroll-margin-top:130px}
.access-form button,.preview-cta{font-size:16px;min-height:54px}
.access-back,.access-preview{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.access-form input[aria-invalid=true]{border-color:#ffaaa5;outline-color:#ffaaa5;background:#ffaaa50a}
.access-field-error{color:#ffaaa5;font-size:14px;line-height:1.5}
.access-errors{border:1px solid #ffaaa5;background:#ffaaa509;padding:16px;color:#ffaaa5;font-size:15px;line-height:1.5}
.access-errors>div{display:flex;gap:8px 20px;flex-wrap:wrap;margin-top:8px}
.access-form .access-errors button{border:0;background:none;color:#ffaaa5;font-size:14px;padding:4px 0;min-height:40px;display:inline-block;text-decoration:underline;text-underline-offset:4px}
.access-form .access-errors button:hover{background:none;color:#fff}
.preview-heading{margin-top:50px;margin-bottom:36px}
@media(max-width:800px){.access-grid{margin-top:32px;gap:30px}.access-shell{padding-bottom:60px}}

.access-field{display:grid;gap:9px}

/* Phase 3: aligned preview actions and public sample enlargement. */
.preview-actions{display:flex;flex-wrap:wrap;gap:16px;flex:0 1 560px}.preview-actions .preview-cta{box-sizing:border-box;flex:1 1 225px;min-width:0}.preview-heading>div:first-child{min-width:0}
.preview-enlarge{display:block;margin-top:14px;min-height:44px;padding:10px 14px;background:transparent;border:1px solid var(--access-accent);color:var(--access-fg);font:inherit;cursor:pointer}.preview-enlarge:focus-visible,.preview-lightbox button:focus-visible{outline:2px solid var(--access-accent);outline-offset:3px}
.preview-lightbox{box-sizing:border-box;width:min(1000px,calc(100vw - 24px));max-width:none;max-height:90dvh;padding:0;border:1px solid var(--access-line);background:var(--access-bg);color:var(--access-fg)}.preview-lightbox::backdrop{background:rgba(0,0,0,.8)}.preview-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px}.preview-lightbox-head h2{font-size:16px;margin:0}.preview-lightbox button{min-height:44px;padding:10px 16px;background:var(--access-accent);color:var(--access-bg);border:0;cursor:pointer}.preview-lightbox-scroll{overflow:auto;padding:16px}.preview-lightbox img{display:block;width:auto;max-width:none;height:auto;margin:auto}.preview-lightbox-help{margin:0;padding:0 16px 8px;font-size:13px;color:var(--access-muted)}
@media(max-width:800px){.preview-actions{display:grid;width:100%;gap:16px}.preview-actions .preview-cta{width:100%}}

.preview-lightbox[open]{display:flex;flex-direction:column;height:90dvh;overflow:hidden}.preview-lightbox-head,.preview-lightbox-help{flex-shrink:0}.preview-lightbox-scroll{flex:1;min-height:0;max-height:none}
