:root{color-scheme:light}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:#fff;color:#202124}button,a{-webkit-tap-highlight-color:transparent}.ru-header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5.65vw,24px);background:rgba(255,255,255,.94);position:relative;z-index:20}.ru-logo{font-size:30px;font-weight:500;line-height:1;letter-spacing:-1.6px;color:#202124;display:flex;align-items:center;gap:6px;text-decoration:none}.ru-logo-mark{font-size:22px;letter-spacing:0}.ru-header .ru-try{font-size:15px;padding:8px 20px;min-height:38px}.ru-skip{position:fixed;left:16px;top:-100px;z-index:100;background:#fff;padding:12px;border-radius:10px}.ru-skip:focus{top:12px}.ru-footer{border-top:1px solid #e7e7e7;max-width:1440px;margin:0 auto;padding:48px 5.65vw}.ru-footer a{font-size:30px;color:#202124;letter-spacing:-1px;text-decoration:none}#cover .cover__text--title{font-size:clamp(42px,5.5vw,80px);line-height:1.08;letter-spacing:-.035em;text-wrap:balance;max-width:820px;margin-inline:auto}#cover .cover__text--description{max-width:690px;margin-inline:auto;text-wrap:balance}#cover .cover__buttons .button{min-width:166px}#cover .section-cover--full-page{isolation:isolate}#cover .cover__text{animation:hero-in 1s cubic-bezier(.22,1,.36,1) both}#cover .cover__text--description{animation:hero-in 1.1s .1s cubic-bezier(.22,1,.36,1) both}#cover .cover__buttons{animation:hero-in 1.1s .2s cubic-bezier(.22,1,.36,1) both}.ru-faq{padding:112px 24px 128px}.ru-faq-inner{max-width:1000px;margin:auto}.ru-faq h2{text-align:center;font-size:clamp(34px,4vw,56px);font-weight:400;line-height:1.15;letter-spacing:-.03em;margin:0 0 64px}.ru-faq-item{border-bottom:1px solid #dedede}.ru-faq-item:first-child{border-top:1px solid #dedede}.ru-faq h3{margin:0}.ru-faq-trigger{width:100%;padding:27px 0;display:flex;align-items:center;justify-content:space-between;gap:28px;background:transparent;border:0;text-align:left;font-family:inherit;font-size:clamp(18px,1.7vw,22px);font-weight:400;line-height:1.35;color:#202124;cursor:pointer}.ru-faq-trigger:hover{color:#1a73e8}.ru-plus{width:18px;height:18px;position:relative;flex-shrink:0}.ru-plus:before,.ru-plus:after{content:'';position:absolute;background:currentColor;left:0;top:8px;width:18px;height:1.5px;transition:transform .3s}.ru-plus:after{transform:rotate(90deg)}.ru-faq-trigger[aria-expanded=true] .ru-plus:after{transform:rotate(0)}.ru-faq-answer{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .35s cubic-bezier(.22,1,.36,1),visibility .35s}.ru-faq-answer>div{min-height:0;overflow:hidden}.ru-faq-answer p{font-size:18px;color:#5f6368;line-height:1.6;margin:0;padding:0 38px 28px 0;max-width:870px}.ru-faq-answer.is-open{grid-template-rows:1fr;visibility:visible}a:focus-visible,button:focus-visible{outline:2px solid #1a73e8;outline-offset:5px}.ru-play-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:white;z-index:2;cursor:pointer;font-size:18px}.media-video{background:#f1f3f4}.media-video-container--poster-pending,.media-video--poster-pending{background:#e9edf0}@keyframes hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:767px){.ru-header{height:64px;padding-inline:20px}.ru-logo{font-size:28px}#cover .cover__text--title{font-size:44px;max-width:95%;letter-spacing:-.04em}#cover .cover__text--description{font-size:18px;line-height:1.4}#cover .cover__buttons{margin-top:32px}.ru-faq{padding:72px 24px 88px}.ru-faq h2{margin-bottom:36px}.ru-faq-trigger{padding:23px 0}.ru-faq-answer p{font-size:16px}.ru-footer{padding:32px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Preserve the reference's centering transform and original entrance behavior. */
.ru-header{position:fixed;inset:0 0 auto;height:64px;z-index:100;border-bottom:1px solid transparent}
.ru-header .ru-try{border:1px solid #e5e7eb;border-radius:100px;background:white;transition:background .2s,box-shadow .2s}
.ru-header .ru-try:hover{background:#f8f9fa;box-shadow:0 1px 4px #00000012}
#cover .cover__text,#cover .cover__text--description,#cover .cover__buttons{animation:none}

html{scroll-behavior:auto}
.ru-context-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;transition:color .2s}
.ru-context-link:hover{color:#1a73e8}
.ru-footer--compact{max-width:1296px;padding:27px 48px;margin:0 auto}
.ru-footer--compact nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 24px}
.ru-footer--compact a{font-size:14px;line-height:1.5;letter-spacing:0;color:#5f6368;transition:color .2s;white-space:nowrap}
.ru-footer--compact a:hover,.ru-footer--compact a[aria-current=page]{color:#202124}
.ru-footer--compact a[aria-current=page]{font-weight:500}
@media(max-width:767px){.ru-footer--compact{padding:26px 24px}.ru-footer--compact nav{justify-content:flex-start;gap:15px 24px}.ru-footer--compact a{font-size:14px}}

/* Keep copy readable over bright frames and while background video loads. */
.ru-header{background:#fff;border-bottom-color:#f1f3f4}
#cover .media-video-container,#flow .media-video-container{background:#202124}
#cover .media-video-container.--scrim::before,
#flow .media-video-container.--scrim::before{display:none}
#cover .media-video-container.--scrim::after,#flow .media-video-container.--scrim::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.6);z-index:8;pointer-events:none;border-radius:inherit}
#cover .cover__text--description,#cover .cover__text--description p,
#flow .cover__text--eyebrow{color:#fff}
#cover .cover__text,#cover .cover__text--description,#flow .cover__text{text-shadow:0 2px 16px #0005}
#cover [data-try],#flow [data-try]{background:#fff;color:#202124;border-color:#fff;text-shadow:none}
#cover [data-try]:hover,#flow [data-try]:hover{background:#f1f3f4;border-color:#f1f3f4}

/* One spacing rhythm, without stacking the reference's large outer margins. */
#page-content{--section-space:40px;--heading-space:32px}
#page-content > #cover{margin-bottom:0}
#page-content:not(.intent-page) > section:where(:not(#cover):not(#flow):not(#faq)){margin-block:0;padding-block:var(--section-space)}
#page-content:not(.intent-page) > #flow{margin-block:var(--section-space)}
#page-content .section-header{margin-bottom:var(--heading-space)}
#page-content .section-header__subtitle{margin-top:12px}
#intro .heading-container{margin-bottom:24px}
#text .heading-container,#capabilities .heading-container{margin-bottom:0}
#page-content > #capabilities{padding-bottom:24px}
#page-content > #hero{padding-top:0}
#page-content .section--carousel .carousel-block{margin-block:0}
#page-content .carousel__pagination{padding-top:24px}
#page-content > #cover .carousel__pagination{padding-top:16px}
#showcase .card__inner,#whats-new .card__inner{gap:24px}
#try-veo .card-group__cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 48px}
#try-veo .model-card-group-container{grid-column:auto}
#try-veo .card__inner{gap:20px;justify-content:flex-start;height:100%}
#try-veo .card__content-wrapper{gap:20px}
#try-veo .card__button-group-wrapper{margin-top:auto}
#try-veo .media-icon--contained{width:72px;max-width:72px}
#try-veo .card__title{margin-bottom:8px}
.ru-faq{padding:48px var(--grid-margin,24px) 64px}
.ru-faq h2{margin-bottom:40px}
.ru-faq-trigger{padding-block:24px}
.ru-footer--compact{max-width:var(--max-width-container,1440px);padding:24px var(--grid-margin,48px)}
@media(max-width:1023px) and (min-width:768px){
  #try-veo .card-group__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 32px}
}
@media(max-width:767px){
  #page-content{--section-space:28px;--heading-space:24px}
  #page-content .carousel__pagination{padding-top:20px}
  #showcase .card__inner,#whats-new .card__inner{gap:20px}
  #try-veo .card-group__cards{grid-template-columns:1fr;gap:32px}
  #try-veo .card__inner,#try-veo .card__content-wrapper{gap:16px}
  #try-veo .card__content-wrapper{min-height:0!important}
  #try-veo .media-icon--contained{width:64px;max-width:64px}
  .ru-faq{padding:32px 24px 48px}
  .ru-faq h2{margin-bottom:28px}
  .ru-faq-trigger{padding-block:20px}
  .ru-footer--compact{padding:24px}
}
