.trial-page{padding:48px 0 64px}.trial-intro{max-width:760px;margin-bottom:32px}.trial-intro h1{font-size:clamp(38px,5vw,62px);margin:12px 0 20px}.trial-intro>p:not(.eyebrow){color:var(--muted)}.trial-intro .trial-note{font-size:14px}.trial-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:54px;align-items:start}.trial-section{border-top:1px solid var(--line);padding:25px 0;margin:0}.trial-section h2{font-size:26px}.trial-section h2 .number{font:15px var(--sans);color:var(--accent);margin-right:12px}.trial-upload{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:20px;border:1px dashed var(--line);border-radius:12px;background:var(--white);cursor:pointer}.trial-upload img{width:76px;height:76px;object-fit:cover;border-radius:8px}.trial-upload input{max-width:100%;font-size:14px}.age-note{margin-top:16px}.age-note summary{font-size:14px;cursor:pointer;padding:8px 0}.age-note input{max-width:160px}.style-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.style-option{display:block;cursor:pointer;position:relative}.style-option input{position:absolute;top:10px;left:10px;z-index:1;accent-color:var(--ink);width:17px;height:17px}.style-option img{display:block;aspect-ratio:1;width:100%;border:2px solid transparent;border-radius:9px;background:var(--soft)}.style-option:has(input:checked) img{border-color:var(--accent)}.style-option:focus-within img{outline:3px solid var(--accent);outline-offset:3px}.style-option span{display:block;font-size:14px;margin-top:7px;line-height:1.3}.style-note{font-size:14px;color:var(--muted);margin:16px 0 0}.activity-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.activity-option{border:1px solid var(--line);border-radius:9px;padding:13px;display:flex;align-items:center;gap:9px;background:var(--white);cursor:pointer;font-size:15px}.activity-option:has(input:checked){border-color:var(--accent);background:var(--soft)}.activity-option input{accent-color:var(--ink);flex-shrink:0}.trial-submit{width:100%;margin-top:10px}.trial-consent{font-size:14px;color:var(--muted);margin:16px 0}.trial-section fieldset,fieldset{border:0;padding:0;margin:0;min-width:0}.preview-column{position:sticky;top:calc(var(--site-header-height,81px) + 24px);padding-top:0;min-width:0}.display-stage{position:relative;width:100%}.device-stage{aspect-ratio:1;overflow:hidden;background:var(--cream)}.device-crop{position:absolute;inset:0;overflow:hidden}.device-crop>img{position:absolute;max-width:none;width:100%;height:auto;left:0;top:0}.display-screen{position:absolute;left:0;top:0;width:100%;aspect-ratio:1;transform-origin:0 0;overflow:hidden;container-type:inline-size}.display-screen>img{display:block;width:100%;height:100%;object-fit:cover}.display-overlay{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:1.2cqw;padding:16% 5.5% 5.5%;color:rgba(255,252,246,.88);background:linear-gradient(transparent,rgba(10,13,18,.08) 35%,rgba(10,13,18,.4));text-shadow:0 .15cqw .5cqw rgba(0,0,0,.3);pointer-events:none}.display-overlay time{font-size:7.2cqw;font-weight:550;line-height:1.1}.display-overlay>span{font-size:4.8cqw;line-height:1.3}.device-stage:not(.screen-ready) .display-screen{left:27.03%;top:24.24%;width:54.55%;transform:matrix(1,-.031,.089,1,0,0)}.preview-caption{text-align:center;font-size:14px;color:var(--muted);margin:6px 0 0}.trial-result{border-top:1px solid var(--line);padding-top:26px}.trial-result .primary{display:inline-block;text-decoration:none}.feedback-row{display:flex;gap:10px;flex-wrap:wrap}.feedback-row button{flex:1}.correction-form{margin:20px 0}.correction-form button{margin-top:16px}.trial-footer{padding:28px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:14px;color:var(--muted)}.generation-progress{padding:24px;border-radius:12px;background:var(--soft)}.generation-progress ol{padding-left:24px;line-height:2}.generation-progress p{font-size:15px}.trial-secondary{margin-top:24px;display:flex;flex-wrap:wrap;gap:20px}#result-actions{text-align:center}#result-actions .text-button{margin:0 12px}.trial-controls-locked{opacity:.65}.trial-name{font-size:14px;color:var(--muted)}@media(max-width:800px){.trial-layout{grid-template-columns:1fr;gap:32px}.preview-column{position:static;max-width:480px;width:100%;margin:auto}.trial-page{padding:32px 0}.trial-intro{margin-bottom:24px}.trial-footer{flex-direction:column;padding:24px 0}.style-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.style-option img{max-height:none;object-fit:contain}.activity-options{grid-template-columns:1fr}.trial-upload{padding:16px}}

.trial-page .trial-intro h1{font-size:clamp(44px,4.4vw,66px)}
.age-note select,.age-note #trial-eyewear-details{display:block;width:100%;max-width:380px;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--ink);font:inherit}
.age-note label{display:block;margin-top:14px}
.trial-section .trial-age,.correction-form .trial-age{margin:22px 0 0;max-width:520px}
.trial-age legend{font-size:18px;font-weight:600;margin-bottom:6px}
.trial-age>.field-help{margin:0 0 12px}
.trial-age-choice{display:flex;align-items:center;gap:12px;min-height:48px;padding:13px 15px;margin:9px 0;border:1px solid var(--line);border-radius:9px;background:var(--white);cursor:pointer;font-size:15px}
.trial-age-choice input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--ink)}
.trial-age-choice:has(input:checked){border-color:var(--accent);background:var(--soft)}
.trial-age-choice:focus-within{outline:3px solid var(--accent);outline-offset:3px}
#trial-age-custom{margin:14px 0 0 30px}
#trial-age-custom[hidden]{display:none!important}
#trial-age-custom label{display:block;font-size:15px}
#trial-age-custom input{display:block;width:140px;max-width:100%;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--ink);font:inherit}

.trial-copy{min-width:0}.preview-column .device-stage{margin-bottom:-6%}.custom-option{margin-top:12px}.custom-scene-label{margin-top:14px}.display-overlay>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.preview-caption{position:relative;z-index:1;line-height:1.4}#result-actions .text-button{padding-top:5px}

.trial-complete .trial-intro{display:none}
.trial-offer{border:0;padding-top:0}
.trial-offer h2{font-size:clamp(32px,3.7vw,48px);line-height:1.15;margin:16px 0 22px}
.trial-ready{font-size:14px;color:#34533a}
.trial-offer-price{display:flex;flex-direction:column;gap:4px;margin:26px 0 20px}
.trial-offer-price strong{font-size:22px;font-weight:550}
.trial-offer-price span{font-size:15px;color:var(--muted)}
.trial-offer>.primary{margin-bottom:14px}
.trial-adjust{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}
.trial-adjust summary{cursor:pointer;font-size:15px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:800px){.trial-complete .trial-copy{display:contents}.trial-complete .preview-column{grid-row:1}.trial-complete #controls{grid-row:2}.trial-complete #notice{grid-row:3}.trial-offer>.primary{display:flex;width:100%;justify-content:center}}

.trial-benefits{list-style:none;padding:0;margin:24px 0;display:grid;gap:15px}
.trial-benefits li{padding-left:17px;border-left:2px solid #c49a60;display:flex;flex-direction:column;gap:2px}
.trial-benefits strong{font-size:16px;font-weight:600;line-height:1.4}
.trial-benefits span{font-size:15px;color:var(--muted);line-height:1.5}
.trial-purchase-panel{padding:22px 24px;border:1px solid #d9cbb6;border-radius:12px;background:#efe9de}
.trial-purchase-panel .trial-offer-price{margin:0 0 18px}
.trial-purchase-panel .primary{display:inline-flex;justify-content:center;align-items:center;min-height:50px}
.trial-reassurance{font-size:14px;line-height:1.5;color:var(--muted);margin:14px 0 0}
.trial-checkout-note{margin:12px 0 0;font-size:13px}
.preview-caption small{display:block;font-size:12px;margin-top:4px;color:var(--muted)}
.trial-complete .header-buy{display:none}
@media(max-width:600px){.trial-purchase-panel{padding:20px}.trial-purchase-panel .primary{width:100%}.trial-complete .header-actions .button{font-size:12px;padding:10px;max-width:145px;text-align:center}}

/* Full-width scene choices below the photo and device introduction. */
@media(min-width:801px){
 .trial-layout:has(#trial-form){grid-template-areas:"intro preview" "notice preview" "upload preview" "styles styles" "activity activity" "consent consent" "submit submit";row-gap:0}
 .trial-layout:has(#trial-form) .trial-copy,
 .trial-layout:has(#trial-form) #controls,
 #trial-form{display:contents}
 .trial-layout:has(#trial-form) .trial-intro{grid-area:intro}
 .trial-layout:has(#trial-form) #notice{grid-area:notice}
 .trial-layout:has(#trial-form) .preview-column{grid-area:preview;position:static;padding-bottom:32px}
 #trial-form>.trial-section:nth-of-type(1){grid-area:upload}
 #trial-form>.trial-section:nth-of-type(2){grid-area:styles}
 #trial-form>.trial-section:nth-of-type(3){grid-area:activity}
 #trial-form>.trial-consent{grid-area:consent}
 #trial-form>.trial-submit{grid-area:submit;max-width:640px}
 #trial-form .style-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 #trial-form .activity-options{grid-template-columns:repeat(3,minmax(0,1fr))}
 #trial-form .custom-scene-label{max-width:760px}
}

/* Styled photograph picker: the native input stays for keyboard and screen readers. */
.trial-upload{position:relative}
.trial-upload input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.trial-upload:focus-within{outline:3px solid var(--accent);outline-offset:4px}
.upload-copy{flex:1;min-width:160px}
.upload-button{white-space:nowrap}
.trial-upload:hover .upload-button{background:#303746}
/* Five style samples in one row on wide screens. */
@media(min-width:1100px){#trial-form .style-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}}
/* While a moment is being created: hide the intro; the wait panel continues the progress card. */
.trial-progress .trial-intro{display:none}
#controls:has(+#wait-panel:not([hidden])) .generation-progress{border-radius:12px 12px 0 0;padding-bottom:4px;margin-bottom:0}
.wait-panel{padding:0 24px 22px;border-radius:0 0 12px 12px;background:var(--soft);text-align:left}
.ready-title{display:block;font-size:15px;font-weight:550;margin:0 0 10px;padding-top:18px;border-top:1px solid #d9cbb6}
.ready-row{display:flex;gap:10px;align-items:stretch}
.ready-row input{flex:1;min-width:0;min-height:44px;padding:10px 14px;border:1px solid #d9cbb6;border-radius:7px;background:#f4efe6;color:var(--muted);font-size:15px;cursor:not-allowed}
.ready-row .button:disabled{background:#e2d9ca;color:#494847;border-color:#e2d9ca;opacity:1;cursor:not-allowed;white-space:nowrap}
.ready-note{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 0}
.wait-news{margin-top:14px;border-top:1px solid #d9cbb6;padding-top:12px}
.wait-news summary{font-size:14px;cursor:pointer}
.wait-news form{margin-top:12px}
.wait-news label[for=signup-email]{display:block;font-size:14px;font-weight:550;margin-bottom:8px}
.wait-news .signup-privacy{font-size:12px}
/* Order the progress card, wait panel and secondary link as one column; phones show the device first. */
.trial-progress .trial-copy{display:grid;gap:0;align-content:start}
.trial-progress #controls{display:contents}
.trial-progress #notice{order:0}
.trial-progress .generation-progress{order:1}
.trial-progress #controls>.notice.error{order:2}
.trial-progress #wait-panel{order:2}
.trial-progress .trial-secondary{order:3}
@media(max-width:800px){.trial-progress .preview-column{order:-1}}
