/* Shared AI Studio landing layer. Use the site's container, grid, bdc-section,
   bdc-card and bdc-btn primitives; keep only landing layout and input UI here.
   Theme tokens are scoped to the content, so header/footer and other pages inherit
   their existing styles. Add future landing pages using this same stylesheet. */
.ail-page {
  --color-heading:#f1f5fc;
  --color-text-muted:#b2bfd2;
  --color-bg:#111a29;
  --color-line:#2c394f;
  --color-surface-muted:#0d1421;
  --color-link:#a9c6ff;
  --color-link-hover:#d9e6ff;
  --ail-background:#090e19;
  --ail-divider:#29364b;
  color:var(--color-heading);
  background:var(--ail-background);
  font-size:1rem;
  line-height:1.7;
}
.ail-page a:not(.bdc-btn) { color:var(--color-link); }
.ail-page a:not(.bdc-btn):hover { color:var(--color-link-hover); }
.ail-page .ail-hero { padding:72px 0 76px; border-bottom:1px solid #253045; }
.ail-page .ail-hero-layout,.ail-page .ail-prompt-layout { grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); align-items:center; }
.ail-page .ail-hero-layout { --space-grid:48px; }
.ail-page .ail-prompt-layout,.ail-page .ail-faq-layout { --space-grid:64px; }
.ail-page .ail-faq-layout { grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); align-items:start; }
.ail-page .ail-kicker { margin:0 0 16px; color:var(--color-link); font-size:.875rem; font-weight:700; letter-spacing:.075em; line-height:1.5; }
.ail-page h1 { margin:0 0 14px; color:var(--color-heading); font-size:clamp(2rem,3.4vw,3rem); font-weight:700; line-height:1.15; }
.ail-page .ail-lead { max-width:34em; margin:0 0 28px; color:var(--color-text-muted); font-size:1.125rem; line-height:1.7; }
.ail-page .ail-note { margin:20px 0 0; color:var(--color-text-muted); font-size:.875rem; line-height:1.65; }
.ail-page .ail-secondary-link { display:inline-flex; align-items:center; min-height:44px; gap:10px; font-weight:500; }
.ail-page .ail-section-heading { max-width:740px; margin-bottom:36px; }
.ail-page .ail-section-heading h2 { margin:0 0 18px; color:var(--color-heading); font-size:clamp(1.75rem,2.9vw,2.5rem); font-weight:700; line-height:1.22; }
.ail-page .ail-section-heading>p:not(.ail-kicker):not(.ail-note) { margin:0; color:var(--color-text-muted); font-size:1.0625rem; }
.ail-page .ail-prompt-layout .ail-section-heading { margin:0; }
.ail-page h3 { margin:0 0 14px; color:var(--color-heading); font-size:1.375rem; line-height:1.3; font-weight:500; }
.ail-page .ail-options .bdc-card>p:not(.ail-kicker) { margin:0 0 22px; color:var(--color-text-muted); }
.ail-page .ail-options .bdc-card>a { align-self:flex-start; margin-top:auto; padding:5px 0; }
.ail-page .ail-steps { margin:0; padding:0; list-style:none; }
.ail-page .ail-step-number { display:block; margin-bottom:22px; color:#91b5ff; font-size:1.25rem; font-weight:700; }
.ail-page .ail-steps li { padding-top:20px; border-top:1px solid var(--ail-divider); }
.ail-page .ail-steps p,.ail-page .ail-usecases article p { margin:0; color:var(--color-text-muted); }
.ail-page .ail-usecases { border-block:1px solid var(--ail-divider); }
.ail-page .ail-usecases article { padding-left:22px; border-left:3px solid #769eff; }
.ail-page .ail-related { padding-top:0; }
.ail-page .ail-related .bdc-card-link { text-decoration:none; }
.ail-page .ail-related .bdc-card-link:hover { border-color:#769eff; }
.ail-page .ail-bottom-cta { padding:70px 0; background:#101a2b; }
.ail-page .ail-bottom-cta h2 { margin:0 0 18px; color:#fff; font-size:clamp(1.75rem,3vw,2.5rem); font-weight:700; line-height:1.25; }
.ail-page .ail-bottom-cta p:not(.ail-kicker) { margin:0 0 26px; color:#c8d1df; }

/* Media preview and native, keyboard-accessible FAQ. */
.ail-page .ail-video { min-width:0; margin:0; overflow:hidden; border:1px solid #354158; border-radius:18px; background:#101621; box-shadow:0 24px 60px rgba(0,0,0,.3); }
.ail-page .ail-video video { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.ail-page .ail-video figcaption { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0; padding:16px 20px; color:#e2e8f0; font-size:.875rem; line-height:1.5; text-align:left; }
.ail-page .ail-video figcaption>span:last-child { margin-left:auto; color:#bdc7d7; }
.ail-page .ail-example-dot { width:7px; height:7px; border-radius:50%; background:#e9505c; }
.ail-page .ail-faq { min-width:0; border-top:1px solid var(--ail-divider); }
.ail-page .ail-faq details { border-bottom:1px solid var(--ail-divider); }
.ail-page .ail-faq summary { position:relative; display:block; padding:22px 38px 22px 0; list-style:none; font-weight:500; line-height:1.5; cursor:pointer; }
.ail-page .ail-faq summary::-webkit-details-marker { display:none; }
.ail-page .ail-faq summary:after { content:'+'; position:absolute; top:18px; right:8px; color:#9fc0ff; font-size:1.375rem; font-weight:400; }
.ail-page .ail-faq details[open] summary:after { content:'−'; }
.ail-page .ail-faq details p { margin:0; padding:0 20px 24px 0; color:var(--color-text-muted); }

/* Form and prompt ideas share the site's button and card foundations. */
.ail-page .ail-landing-form textarea { width:100%; min-height:142px; padding:14px; border:1px solid #364761; border-radius:10px; background:#0a111e; color:var(--color-heading); font:inherit; line-height:1.65; resize:vertical; box-sizing:border-box; }
.ail-page .ail-landing-form textarea::placeholder { color:#8e9db6; }
.ail-page .ail-landing-form label { display:block; margin:0 0 10px; color:#d8e3f5; font-size:.9375rem; font-weight:500; }
.ail-page .ail-form-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-top:12px; }
.ail-page .ail-form-bottom [data-prompt-count] { font-size:.875rem; color:var(--color-text-muted); }
.ail-page .ail-form-bottom .bdc-btn { --button-md-min-height:46px; --button-md-font-size:.9375rem; }
.ail-page .ail-form-status { margin:12px 0 0; color:#d2e2ff; font-size:.875rem; line-height:1.55; }
.ail-page .ail-form-status:empty { display:none; }
.ail-page .ail-mode-switch { display:flex; gap:8px; margin-bottom:16px; }
.ail-page .ail-control { --button-sm-min-height:44px; --button-sm-padding:10px 14px; --button-sm-font-size:.875rem; border-color:#465773; background:var(--color-bg); color:#bfcee5; }
.ail-page .ail-mode-switch button[aria-pressed=true] { background:#dce8ff; border-color:#dce8ff; color:#132540; }
.ail-page .ail-prompt-editor { --radius-md:16px; padding:28px; }
.ail-page .ail-prompt-choice { justify-content:space-between; text-align:left; width:100%; }
.ail-page .ail-control:hover { background:#243650; color:#fff; }
.ail-page .ail-prompt-editor blockquote { margin:22px 0 0; padding:0; border:0; color:#c4d3e8; font-size:1rem; line-height:1.75; }
.ail-page .ail-prompt-choices { --space-grid:10px; --space-grid-mobile:10px; }
.ail-page [hidden] { display:none!important; }
.ail-page button:disabled { opacity:.65; cursor:wait; }
.ail-page a:focus-visible,.ail-page button:focus-visible,.ail-page input:focus-visible,.ail-page textarea:focus-visible,.ail-page summary:focus-visible { outline:3px solid #9fc3ff; outline-offset:4px; }

@media (max-width:991px) {
  .ail-page .ail-hero { padding:46px 0 52px; }
  .ail-page .ail-hero-layout,.ail-page .ail-prompt-layout,.ail-page .ail-faq-layout { grid-template-columns:1fr; }
  .ail-page .ail-hero-layout { --space-grid:32px; --space-grid-mobile:32px; }
  .ail-page .ail-prompt-layout,.ail-page .ail-faq-layout { --space-grid:30px; --space-grid-mobile:30px; }
  .ail-page .ail-hero-copy { max-width:680px; }
}
@media (max-width:767px) {
  .ail-page .ail-section-heading { margin-bottom:28px; }
  .ail-page .ail-lead { font-size:1rem; }
  .ail-page .ail-prompt-editor { padding:20px; }
  .ail-page .ail-video figcaption { padding:14px 16px; }
  .ail-page .ail-video figcaption>span:last-child { display:none; }
  .ail-page .ail-form-bottom .bdc-btn,.ail-page .ail-control,.ail-page [data-remove-image] { margin-bottom:0; }
  .ail-page .ail-form-bottom .bdc-btn { font-size:.9375rem; }
  .ail-page .ail-control { font-size:.875rem; }
  .ail-page .ail-hero h1 { font-size:2rem; }
}
@media (prefers-reduced-motion:reduce) {
  .ail-page * { transition:none!important; scroll-behavior:auto!important; }
}

/* Additional media types for the shared landing preview forms. */
.ail-page .ail-hero { background:var(--ail-background); }
.ail-page .ail-tool-visual { width:100%; display:block; aspect-ratio:4/3; object-fit:cover; }
.ail-page .ail-preview-actions { margin-top:16px; }
.ail-page .ail-gallery-card img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:8px 8px 0 0; }
.ail-page .ail-gallery-card .bdc-card-pad { flex:1; }
.ail-page .ail-gallery-card h3 { font-size:1.125rem; }
.ail-page .ail-gallery-card p { color:var(--color-text-muted); }
.ail-page .ail-catalog-intro { max-width:760px; }
.ail-page .ail-category-links { margin:28px 0 0; }

.ail-page .ail-bottom-cta .ail-section-heading { margin-left:auto; margin-right:auto; }

/* Temporary review index: scoped so tool layouts stay unchanged. */
.ail-page .ail-review-table-wrap { margin-top:32px; overflow-x:auto; }
.ail-page .ail-review-table { width:100%; border-collapse:collapse; text-align:left; }
.ail-page .ail-review-table th,.ail-page .ail-review-table td { padding:16px 14px; border-bottom:1px solid var(--ail-divider); vertical-align:top; }
.ail-page .ail-review-table th { background:var(--color-bg); }
.ail-page .ail-review-table small { font-size:.8125rem; overflow-wrap:anywhere; }
@media(max-width:767px) {
  .ail-page .ail-review-table th,.ail-page .ail-review-table td { padding:12px 7px; font-size:.8125rem; }
}

/* Shared upload surface: native file selection remains keyboard accessible. */
.ail-page .ail-image-upload { margin-bottom:20px; }
.ail-page .ail-upload-surface { position:relative; overflow:hidden; min-width:0; border:1px dashed #39445b; border-radius:12px; background:#192131; transition:border-color .18s,background .18s; }
.ail-page .ail-upload-surface:hover,.ail-page .ail-image-upload.is-dragging .ail-upload-surface { border-color:#869bff; background:#202b42; }
.ail-page .ail-upload-surface:focus-within { outline:2px solid #96afff; outline-offset:3px; }
.ail-page .ail-landing-form .ail-upload-target { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-height:220px; margin:0; padding:28px 20px; text-align:center; cursor:pointer; }
.ail-page .ail-upload-target input[type=file] { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.ail-page .ail-upload-icon { display:grid; place-items:center; width:48px; height:48px; border:1px solid #3b465c; border-radius:14px; color:#bac9ff; background:#252e43; }
.ail-page .ail-upload-icon svg { width:24px; height:24px; }
.ail-page .ail-upload-target strong { color:#edf2ff; font-size:.9375rem; font-weight:500; }
.ail-page .ail-upload-target small { color:#9baac4; font-size:.8125rem; line-height:1.6; }
.ail-page .ail-upload-target strong span { color:#a5b9ff; }
.ail-page .ail-image-upload.has-file .ail-upload-target { display:none; }
.ail-page .ail-image-upload.has-file .ail-upload-surface { border-style:solid; background:#0b111d; }
.ail-page .ail-upload-surface>img,.ail-page .ail-upload-surface>video { display:block; width:100%; height:280px; object-fit:contain; padding:14px; }
.ail-page .ail-upload-surface>video { padding:0; }
.ail-page .ail-upload-surface>audio { display:block; width:calc(100% - 40px); margin:64px 20px 30px; }
.ail-page .ail-upload-remove { position:absolute; top:10px; right:10px; display:grid; place-items:center; width:28px; height:28px; min-height:28px; padding:0; border:1px solid #46506a; border-radius:50%; background:rgba(16,23,39,.9); color:#f5f7ff; cursor:pointer; }
.ail-page .ail-upload-remove svg { width:14px; height:14px; }
.ail-page .ail-upload-remove:hover { background:#9d354f; border-color:#e3849b; }
.ail-page .ail-landing-form[aria-busy=true] .ail-upload-target { opacity:.6; cursor:wait; }
@media(max-width:767px) {
  .ail-page .ail-landing-form .ail-upload-target { min-height:190px; padding:24px 14px; }
  .ail-page .ail-upload-surface>img,.ail-page .ail-upload-surface>video { height:240px; }
}

/* Compact square attachments apply only inside a prompt composer.
   Upload-only forms retain their full-width drop zones and media previews. */
.ail-page .ail-composer { --ail-attachment-size:140px; grid-template-columns:minmax(0,1fr); --space-grid:14px; --space-grid-mobile:12px; align-items:start; padding:14px; border:1px solid #364761; border-radius:12px; background:#0a111e; }
.ail-page .ail-composer:focus-within { border-color:#96afff; box-shadow:0 0 0 2px rgba(150,175,255,.18); }
.ail-page .ail-composer:has(>.ail-image-upload:not([hidden])) { grid-template-columns:var(--ail-attachment-size) minmax(0,1fr); }
.ail-page .ail-composer .ail-image-upload { position:relative; min-width:0; margin:0; }
.ail-page .ail-composer .ail-upload-surface { aspect-ratio:1; background:#151e2d; border-color:#344158; border-radius:9px; }
.ail-page .ail-composer .ail-upload-target { position:absolute; inset:0; height:100%; min-height:0; padding:8px; gap:6px; box-sizing:border-box; }
.ail-page .ail-composer .ail-upload-surface>img { position:absolute; inset:0; width:100%; height:100%; padding:6px; }
.ail-page .ail-composer .ail-upload-icon { width:34px; height:34px; border-radius:10px; }
.ail-page .ail-composer .ail-upload-target strong { font-size:.875rem; line-height:1.4; }
.ail-page .ail-composer .ail-upload-target small { font-size:.75rem; line-height:1.4; }
.ail-page .ail-composer .ail-upload-remove { top:6px; right:6px; width:28px; height:28px; min-height:28px; }
.ail-page .ail-composer .ail-upload-remove svg { width:14px; height:14px; }
.ail-page .ail-composer-prompt { display:flex; min-width:0; align-self:stretch; }
.ail-page .ail-composer-prompt textarea { display:block; min-height:var(--ail-attachment-size); height:var(--ail-attachment-size); padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.ail-page .ail-composer-prompt textarea:focus-visible { outline:none; }
.ail-page .ail-composer-prompt label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:575px) {
  .ail-page .ail-composer { --ail-attachment-size:100px; padding:12px; }
  .ail-page .ail-composer:has(>.ail-image-upload:not([hidden])) { grid-template-columns:var(--ail-attachment-size) minmax(0,1fr); }
  .ail-page .ail-composer .ail-upload-target { min-height:0; padding:6px 4px; gap:4px; }
  .ail-page .ail-composer .ail-upload-icon { width:24px; height:24px; border-radius:7px; }
  .ail-page .ail-composer .ail-upload-icon svg { width:18px; height:18px; }
  .ail-page .ail-composer .ail-upload-target strong { font-size:.75rem; line-height:1.3; }
  .ail-page .ail-composer .ail-upload-target small { font-size:.625rem; line-height:1.3; }
}


/* Two required files share one row, independently of prompt composers. */
.ail-page .ail-upload-pair { grid-template-columns:repeat(2,minmax(0,1fr)); --space-grid:16px; --space-grid-mobile:12px; }
.ail-page .ail-upload-pair .ail-image-upload { min-width:0; margin:0; }
.ail-page .ail-upload-pair .ail-upload-surface { height:220px; }
.ail-page .ail-upload-pair .ail-upload-target { height:100%; min-height:0; padding:20px 12px; box-sizing:border-box; }
.ail-page .ail-upload-pair .ail-upload-surface>img,.ail-page .ail-upload-pair .ail-upload-surface>video { height:100%; }
.ail-page .ail-upload-pair .ail-upload-surface>audio { position:absolute; top:50%; left:8px; width:calc(100% - 16px); min-width:0; margin:0; transform:translateY(-50%); }
@media(max-width:575px) {
  .ail-page .ail-upload-pair .ail-upload-surface { height:190px; }
  .ail-page .ail-upload-pair .ail-upload-target { padding:12px 8px; gap:10px; }
  .ail-page .ail-upload-pair .ail-upload-icon { width:36px; height:36px; border-radius:10px; }
  .ail-page .ail-upload-pair .ail-upload-icon svg { width:20px; height:20px; }
  .ail-page .ail-upload-pair .ail-upload-target strong { font-size:.875rem; line-height:1.4; }
  .ail-page .ail-upload-pair .ail-upload-target small { font-size:.6875rem; line-height:1.45; }
}


/* Shared generation panel: one quiet surface contains inputs and actions.
   Compact attachment dimensions remain limited to .ail-composer;
   upload-only and paired-file forms keep their existing spacious layout. */
.ail-page .ail-landing-form { margin-top:26px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.ail-page .ail-landing-form .ail-mode-switch { gap:28px; margin-bottom:16px; }
.ail-page .ail-landing-form .ail-mode-switch .ail-control { flex:0 0 auto; width:auto; min-width:0; padding:10px 0; border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; color:#aeb9ce; box-shadow:none; font-weight:500; }
.ail-page .ail-landing-form .ail-mode-switch .ail-control:hover { color:#eee9ff; }
.ail-page .ail-landing-form .ail-mode-switch button[aria-pressed=true] { background:transparent; border-bottom-color:#c7b8f7; color:#e2d6ff; }
.ail-page .ail-generator-field { padding:18px; border:1px solid #293144; border-radius:14px; background:rgba(13,17,28,.72); transition:border-color .18s; }
.ail-page .ail-generator-field:focus-within { border-color:#858bb9; }
.ail-page .ail-landing-form .ail-composer { padding:0; border:0; border-radius:0; background:transparent; }
.ail-page .ail-landing-form .ail-composer:focus-within { box-shadow:none; }
.ail-page .ail-landing-form .ail-form-bottom { margin-top:18px; }
.ail-page .ail-landing-form .ail-form-bottom .bdc-btn { flex:none; width:auto; }
.ail-page .ail-landing-form .ail-upload-surface { background:transparent; border-color:#354055; }
.ail-page .ail-landing-form .ail-upload-surface:hover,.ail-page .ail-landing-form .is-dragging .ail-upload-surface { border-color:#949ac8; background:#171d2b; }
.ail-page .ail-landing-form .ail-upload-icon { border:0; background:transparent; border-radius:0; color:#a6b5ce; }
.ail-page .ail-landing-form .ail-upload-target strong span { color:#d2dae9; }
.ail-page .ail-generator-field .ail-preview-actions { display:flex; justify-content:flex-end; margin-top:18px; }
.ail-page .ail-generator-field .ail-preview-actions .bdc-btn { flex:none; width:auto; margin-bottom:0; --button-md-min-height:46px; --button-md-font-size:.9375rem; }

/* AI video generator editorial layout. Shared form dimensions stay unchanged. */
.ail-page.ail-video-generator { --ail-background:#090c15; --color-bg:#121725; --color-link:#b8baff; --color-link-hover:#e2ddff; }
.ail-video-generator .avg-hero { padding:66px 0 56px; background:radial-gradient(ellipse at 80% 40%,rgba(88,55,148,.16),transparent 55%),var(--ail-background); border-bottom:0; }
.ail-video-generator .ail-hero-layout { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; --space-grid:48px; }
.ail-video-generator .avg-eyebrow { font-size:.72rem; letter-spacing:.12em; margin-bottom:20px; color:#c5b8f3; }
.ail-video-generator .avg-eyebrow>span { display:inline-block; margin-right:6px; font-size:1.15rem; }
.ail-video-generator .ail-hero-copy { container-type:inline-size; min-width:0; }
.ail-video-generator .avg-hero h1 { font-size:clamp(1.625rem,3.6vw,3.5rem); font-size:clamp(1.625rem,8.8cqi,3.5rem); line-height:1.12; letter-spacing:-.045em; font-weight:750; margin-bottom:20px; white-space:nowrap; }
.ail-video-generator .avg-hero h1>span { color:#baadf9; }
.ail-video-generator .avg-hero-tagline { margin:0 0 12px; font-size:1.4rem; font-weight:500; color:#f0edf7; letter-spacing:-.02em; }
.ail-video-generator .ail-lead { font-size:1rem; line-height:1.65; max-width:34em; margin-bottom:22px; }
.ail-video-generator .avg-hero-links { display:flex; flex-wrap:wrap; gap:6px 10px; margin-top:17px; font-size:.8125rem; color:#a9afc0; }
.ail-video-generator .avg-hero-links a { font-weight:500; }
.ail-video-generator .avg-showcase { position:relative; min-width:0; }
.ail-video-generator .avg-hero-video { position:absolute; inset:-28px -40px -28px -24px; border:0; border-radius:0; box-shadow:none; background:transparent; overflow:visible; }
.ail-video-generator .avg-hero { overflow:hidden; }
.ail-video-generator .avg-hero-video video { height:100%; aspect-ratio:auto; object-fit:cover; opacity:.88; -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent),linear-gradient(180deg,transparent,#000 14%,#000 80%,transparent); mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent),linear-gradient(180deg,transparent,#000 14%,#000 80%,transparent); -webkit-mask-composite:source-in; mask-composite:intersect; }
.ail-video-generator .avg-background-toggle { position:absolute; right:40px; bottom:30px; display:grid; place-items:center; width:36px; height:36px; padding:0; border:1px solid #ffffff30; border-radius:50%; background:#10152199; color:#d9deed; cursor:pointer; }
.ail-video-generator .avg-background-toggle:hover { background:#252c40; color:#fff; }
.ail-video-generator .avg-background-toggle svg { width:16px; height:16px; }
.ail-video-generator .avg-showcase-label { position:absolute; z-index:1; top:22px; left:22px; display:flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid #ffffff36; border-radius:30px; background:#10101b99; color:#fff; font-size:.65rem; letter-spacing:.1em; pointer-events:none; }
.ail-video-generator .avg-showcase-label i { width:6px; height:6px; border-radius:50%; background:#bdacff; }
.ail-video-generator .avg-caption-kicker { display:block; font-size:.6rem; letter-spacing:.12em; color:#b1a9ce; margin-bottom:10px; }
.ail-video-generator .avg-hero-video strong { font-size:1.65rem; line-height:1.22; font-weight:500; letter-spacing:-.025em; }
.ail-video-generator .avg-hero-video .avg-play-hint { font-size:.75rem; color:#b9b3cb; align-self:flex-end; }
.ail-video-generator .avg-showcase-bottom { display:flex; align-items:center; justify-content:space-between; padding:18px 4px 0; font-size:.75rem; color:#9fa5b9; }
.ail-video-generator .avg-format-marks { display:flex; align-items:center; gap:10px; }
.ail-video-generator .avg-format-marks i { display:block; border:1px solid #7e829a; border-radius:3px; }
.ail-video-generator .avg-format-wide { width:25px; height:15px; }
.ail-video-generator .avg-format-square { width:18px; height:18px; }
.ail-video-generator .avg-format-tall { width:13px; height:21px; }
.ail-video-generator .avg-section-nav { border-block:1px solid #252a39; }
.ail-video-generator .avg-section-nav>.container { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px 38px; padding-block:10px; }
.ail-video-generator .avg-section-nav span { color:#767f95; font-size:.65rem; letter-spacing:.13em; margin-right:auto; }
.ail-video-generator .avg-section-nav a { display:inline-flex; align-items:center; min-height:44px; font-size:.875rem; color:#bdc6d8; }
.ail-video-generator .avg-section-top { display:flex; align-items:flex-end; justify-content:space-between; gap:44px; margin-bottom:36px; }
.ail-video-generator .avg-section-top .ail-section-heading { margin:0; }
.ail-video-generator .ail-section-heading h2,.ail-video-generator .avg-story-copy h2 { font-size:clamp(2rem,3vw,3rem); letter-spacing:-.035em; }
.ail-video-generator h2>span { color:#949eb3; }
.ail-video-generator .avg-section-intro { max-width:350px; margin:0 0 6px; font-size:.9375rem; line-height:1.75; color:#acb6ca; }
.ail-video-generator .avg-inspiration-grid { grid-template-columns:repeat(3,minmax(0,1fr)); --space-grid:24px; --space-grid-mobile:28px; }
.ail-video-generator .avg-inspiration-card { display:flex; flex-direction:column; min-width:0; }
.ail-video-generator .avg-card-image { position:relative; overflow:hidden; border-radius:16px; background:#171d2b; }
.ail-video-generator .avg-card-image img { width:100%; aspect-ratio:16/9; height:auto; display:block; object-fit:cover; transition:transform .4s; }
.ail-video-generator .avg-inspiration-card:hover .avg-card-image img { transform:scale(1.025); }
.ail-video-generator .avg-image-label { position:absolute; left:18px; bottom:18px; padding:6px 9px; background:#111621bb; border:1px solid #ffffff24; border-radius:5px; font-size:.625rem; letter-spacing:.07em; color:white; }
.ail-video-generator .avg-card-copy { display:flex; flex-direction:column; flex:1; align-items:flex-start; padding:22px 2px 0; }
.ail-video-generator .avg-card-copy h3 { font-size:1.2rem; font-weight:500; margin-bottom:10px; letter-spacing:-.02em; }
.ail-video-generator .avg-card-copy p { margin:0 0 18px; color:#b2bdd0; font-size:.9375rem; line-height:1.7; }
.ail-video-generator .avg-card-copy .ail-control { margin-top:auto; background:#161b2a; border-color:#343d50; color:#d3d5e8; --button-sm-min-height:44px; }
.ail-video-generator .avg-gallery-note { margin:22px 0 0; color:#a6b0c3; font-size:.8125rem; }
.ail-video-generator .avg-image-story { background:#101420; border-block:1px solid #242a3a; }
.ail-video-generator .avg-story-layout { grid-template-columns:1.08fr 1fr; align-items:center; --space-grid:80px; }
.ail-video-generator .avg-story-visual { position:relative; margin:0; overflow:hidden; border-radius:20px; background:#15201d; }
.ail-video-generator .avg-story-visual>img { width:100%; aspect-ratio:16/10; height:auto; object-fit:cover; object-position:66% center; display:block; }
.ail-video-generator .avg-story-visual figcaption { position:absolute; inset:auto 0 0; padding:70px 32px 28px; background:linear-gradient(transparent,#080f13e8); color:#fff; }
.ail-video-generator .avg-story-tag { font-size:.65rem; letter-spacing:.12em; color:#cedfcf; }
.ail-video-generator .avg-story-visual p { margin:12px 0 0; font-size:1.4rem; line-height:1.45; letter-spacing:-.025em; }
.ail-video-generator .avg-story-copy h2 { margin:0 0 22px; line-height:1.15; }
.ail-video-generator .avg-story-copy>p:not(.ail-kicker) { color:#b0bbcf; font-size:1rem; }
.ail-video-generator .avg-detail-list { margin:26px 0; padding:0; list-style:none; }
.ail-video-generator .avg-detail-list li { display:flex; gap:18px; margin-bottom:20px; }
.ail-video-generator .avg-detail-list li>span { color:#9d93d6; font-size:.8125rem; padding-top:3px; }
.ail-video-generator .avg-detail-list h3 { font-size:1rem; margin-bottom:4px; }
.ail-video-generator .avg-detail-list p { color:#9faac0; font-size:.875rem; margin:0; }
.ail-video-generator .avg-workflow .ail-steps { --space-grid:48px; }
.ail-video-generator .avg-workflow .ail-step-number { font-size:2.5rem; letter-spacing:-.06em; font-weight:400; color:#a69ce1; }
.ail-video-generator .avg-workflow .ail-steps p { font-size:.9375rem; }
.ail-video-generator .avg-prompt-guide { padding-top:0; }
.ail-video-generator .avg-prompt-recipe { padding:36px; border:1px solid #39344d; border-radius:18px; background:linear-gradient(145deg,#201d31,#131927); }
.ail-video-generator .avg-recipe-tags { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.ail-video-generator .avg-recipe-tags span { padding:5px 10px; font-size:.75rem; border:1px solid #575068; border-radius:6px; color:#c5b8eb; }
.ail-video-generator .avg-recipe-tags b { font-weight:400; color:#7f7995; }
.ail-video-generator .avg-prompt-recipe blockquote { padding:0; border:0; margin:24px 0; font-size:1.4rem; line-height:1.65; letter-spacing:-.02em; color:#ddd9ed; }
.ail-video-generator .avg-prompt-recipe blockquote span:nth-child(2) { color:#cab5fb; }
.ail-video-generator .avg-related-row { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:24px; padding-top:28px; border-top:1px solid #293244; }
.ail-video-generator .avg-related-row h2 { margin:0; font-size:1.7rem; letter-spacing:-.03em; }
.ail-video-generator .avg-related-row .ail-kicker { font-size:.6875rem; margin-bottom:10px; }
.ail-video-generator .avg-final { padding:0 0 80px; background:var(--ail-background); }
.ail-video-generator .avg-final-inner { position:relative; min-height:300px; border:1px solid #414054; border-radius:22px; overflow:hidden; background:#17152a; }
.ail-video-generator .avg-final-inner>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 57%; }
.ail-video-generator .avg-final-inner>div { position:relative; z-index:1; min-height:inherit; box-sizing:border-box; padding:48px; background:linear-gradient(90deg,#0c1020f7 5%,#151326de 43%,#15132628 90%); }
.ail-video-generator .avg-final h2 { max-width:19ch; font-size:clamp(2rem,3.3vw,3.4rem); letter-spacing:-.04em; }
.ail-video-generator .avg-final h2>span { color:#c5b7f4; }
.ail-video-generator section[id],.ail-video-generator #create-video { scroll-margin-top:115px; }
@media(max-width:1199px) {
  .ail-video-generator .ail-hero-layout { --space-grid:36px; }
  .ail-video-generator .avg-story-layout { --space-grid:40px; }
  .ail-video-generator .avg-hero-video strong { font-size:1.4rem; }
}
@media(max-width:991px) {
  .ail-video-generator .ail-hero-layout,.ail-video-generator .avg-story-layout { grid-template-columns:1fr; }
  .ail-video-generator .ail-hero-copy { max-width:none; }
  .ail-video-generator .avg-hero { padding:40px 0; }
  .ail-video-generator .avg-hero-video { position:relative; inset:auto; }
  .ail-video-generator .avg-background-toggle { right:20px; bottom:16px; }
  .ail-video-generator .avg-hero-video video { height:auto; aspect-ratio:16/9; }
  .ail-video-generator .avg-story-visual>img { aspect-ratio:16/10; }
  .ail-video-generator .avg-section-top { align-items:flex-start; gap:28px; }
  .ail-video-generator .avg-section-intro { max-width:280px; }
  .ail-video-generator .avg-card-copy p { min-height:0; }
}
@media(max-width:767px) {
  .ail-video-generator .avg-hero { padding-top:84px; }
  .ail-video-generator .avg-hero-tagline { font-size:1.25rem; }
  .ail-video-generator .avg-eyebrow { font-size:.6rem; }
  .ail-video-generator .avg-hero-video strong { font-size:1.3rem; }
  .ail-video-generator .avg-showcase-label { top:14px; left:14px; font-size:.55rem; }
  .ail-video-generator .avg-section-nav>.container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
  .ail-video-generator .avg-section-nav span { flex-basis:100%; }
  .ail-video-generator .avg-section-top { display:block; }
  .ail-video-generator .avg-section-intro { max-width:none; margin-top:18px; }
  .ail-video-generator .avg-inspiration-grid { grid-template-columns:1fr; }
  .ail-video-generator .avg-card-image img { aspect-ratio:16/9; }
  .ail-video-generator .avg-card-copy { padding-top:18px; }
  .ail-video-generator .avg-story-visual figcaption { padding:50px 20px 22px; }
  .ail-video-generator .avg-story-visual p { font-size:1.125rem; }
  .ail-video-generator .avg-prompt-recipe { padding:24px; }
  .ail-video-generator .avg-prompt-recipe blockquote { font-size:1.2rem; }
  .ail-video-generator .avg-recipe-tags { gap:6px; }
  .ail-video-generator .avg-recipe-tags span { padding:4px 7px; font-size:.6875rem; }
  .ail-video-generator .avg-final { padding-bottom:40px; }
  .ail-video-generator .avg-final-inner>div { padding:36px 24px; background:linear-gradient(90deg,#0c1020ef,#151326bb); }
}
