/
sinarovali
/
stmachine-presentation-asdb
Обзор
Документация
Войти
/
sinarovali
/
stmachine-presentation-asdb
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
presentation.css
698 строк
25 KB
sinarovali
Create: presentation-data.js, presentation.css, presentation.js
13 июл 2026, 10:38
Верифицирован
13 июл 2026, 10:38
2cc068f
Код
Авторство
О чём код?
/* Stage 5: complete presentation sections */ .presentation-shell { display:grid; gap:14px; min-height:100svh; padding:14px; } .presentation-slide { scroll-snap-align:start; scroll-snap-stop:always; } .narrative-slide { display:flex; flex-direction:column; } .narrative-header { position:relative; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:86px; padding:14px clamp(22px,3.8vw,60px); color:#fff; background:linear-gradient(100deg,var(--stm-blue-950),var(--stm-blue-800) 72%,var(--stm-blue-700)); } .narrative-header::after { content:""; position:absolute; z-index:0; right:-7%; bottom:-27px; width:44%; height:40px; pointer-events:none; background:var(--stm-blue-700); clip-path:polygon(0 0,100% 0,92% 100%,7% 100%); opacity:.96; } .narrative-header>*{position:relative;z-index:1} .narrative-header__label { font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--stm-cyan-200); } .narrative-header__number { display:grid; place-items:center; width:58px; aspect-ratio:1; border-radius:50%; border:1px solid rgba(255,255,255,.34); background:rgba(255,255,255,.08); font-family:var(--font-display); font-size:22px; font-weight:900; } .brand--compact .brand-name{font-size:clamp(25px,2.5vw,40px)} .cover-slide { min-height:calc(100svh - 28px); color:#fff; background:linear-gradient(140deg,var(--stm-blue-950),var(--stm-blue-800)); } .cover-layout { display:grid; grid-template-columns:minmax(420px,.88fr) minmax(520px,1.12fr); min-height:calc(100svh - 28px); } .cover-copy { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; padding:clamp(42px,6vw,92px); overflow:hidden; } .cover-copy::before { content:""; position:absolute; inset:auto auto -22% -20%; width:70%; aspect-ratio:1; border:1px solid rgba(191,233,247,.22); border-radius:50%; box-shadow:0 0 0 80px rgba(32,168,216,.035),0 0 0 160px rgba(32,168,216,.025); } .cover-brand { position:relative; display:flex; align-items:center; gap:16px; margin-bottom:clamp(38px,6vh,72px); } .cover-brand img{width:74px;height:74px;object-fit:contain} .cover-brand strong{display:block;font-family:var(--font-display);font-size:clamp(34px,4vw,58px);line-height:.9;letter-spacing:.02em} .cover-brand span{display:block;margin-top:7px;font-family:var(--font-display);font-size:clamp(9px,.8vw,12px);font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--stm-cyan-200)} .cover-kicker { position:relative; margin:0 0 18px; color:var(--stm-cyan-200); font-size:12px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; } .cover-title { position:relative; max-width:760px; margin:0; font-family:var(--font-display); font-size:clamp(52px,6.2vw,94px); font-weight:900; letter-spacing:-.045em; line-height:.9; text-wrap:balance; } .cover-title span{display:block} .cover-subtitle { position:relative; max-width:680px; margin:25px 0 0; color:#d8ebf4; font-size:clamp(17px,1.45vw,22px); line-height:1.45; } .cover-actions{position:relative;display:flex;flex-wrap:wrap;gap:10px;margin-top:34px} .cover-start{display:inline-flex;align-items:center;gap:10px;padding:13px 18px;border-radius:999px;background:#fff;color:var(--stm-blue-950);font-weight:800;cursor:pointer;box-shadow:0 12px 38px rgba(0,0,0,.2)} .cover-start svg{width:18px;height:18px} .cover-image { position:relative; min-height:100%; overflow:hidden; background:#fff; clip-path:polygon(10% 0,100% 0,100% 100%,0 100%); } .cover-image img { width:100%; height:100%; object-fit:cover; object-position:center; } .cover-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,47,71,.3),transparent 28%); } .narrative-body { flex:1; min-height:0; padding:clamp(42px,5vw,74px) clamp(22px,4.2vw,68px) 26px; } .intro-layout { display:grid; grid-template-columns:minmax(560px,1.15fr) minmax(400px,.85fr); gap:clamp(30px,4vw,70px); align-items:stretch; } .intro-copy { padding:clamp(24px,3vw,42px); border:var(--border); border-radius:var(--radius-xl); background:rgba(255,255,255,.96); box-shadow:var(--shadow-soft); } .section-kicker{margin:0 0 12px;color:var(--stm-blue-700);font-size:12px;font-weight:850;letter-spacing:.17em;text-transform:uppercase} .narrative-title { margin:0 0 22px; color:var(--stm-blue-950); font-family:var(--font-display); font-size:clamp(42px,4.5vw,70px); line-height:.95; letter-spacing:-.035em; text-wrap:balance; } .intro-copy p { margin:0 0 14px; color:var(--stm-steel-800); font-size:clamp(14px,1.05vw,17px); line-height:1.58; } .intro-copy p:first-of-type { color:var(--stm-blue-950); font-weight:850; font-size:clamp(17px,1.25vw,20px); } .intro-copy p:last-child { margin-top:22px; color:var(--stm-blue-900); font-weight:800; } .intro-visual { position:relative; min-height:610px; overflow:hidden; border-radius:var(--radius-xl); background:var(--stm-blue-950); box-shadow:var(--shadow-soft); } .intro-visual__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; opacity:.72; mix-blend-mode:screen; } .intro-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,47,71,.08),rgba(5,47,71,.86)); } .channel-list { position:absolute; z-index:2; left:24px; right:24px; bottom:24px; display:grid; grid-template-columns:1fr 1fr; gap:12px; } .channel-card { display:grid; grid-template-columns:1fr 78px; gap:12px; align-items:center; padding:14px; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:rgba(5,47,71,.78); backdrop-filter:blur(12px); color:#fff; } .channel-card__logo{width:110px;height:auto} .channel-card__qr{width:78px;height:78px;border-radius:8px;background:#fff;padding:4px} .channel-card span{display:block;margin-top:8px;color:var(--stm-cyan-200);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase} .channel-card__content{min-width:0} .channel-card__button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin-top:9px;padding:6px 12px;border:1px solid rgba(255,255,255,.32);border-radius:999px;color:#fff;background:rgba(255,255,255,.1);font-size:11px;font-weight:800;line-height:1;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease} .channel-card__button:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.56);transform:translateY(-1px)} .channel-card__button:focus-visible{outline:3px solid var(--stm-cyan-200);outline-offset:2px} .benefits-layout { position:relative; display:grid; grid-template-columns:minmax(590px,1.1fr) minmax(360px,.72fr); gap:clamp(28px,4vw,66px); align-items:start; } .benefits-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; } .benefit-card { display:grid; grid-template-columns:46px 1fr; gap:14px; align-items:start; min-height:132px; padding:18px; border:var(--border); border-radius:20px; background:rgba(255,255,255,.96); box-shadow:0 12px 35px rgba(5,47,71,.08); } .benefit-card:nth-child(5){grid-column:1/-1;min-height:auto} .benefit-index{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--stm-blue-800),var(--stm-cyan-500));color:#fff;font-family:var(--font-display);font-size:18px;font-weight:900} .benefit-card p{margin:1px 0 0;color:var(--stm-steel-800);font-size:clamp(13px,1vw,16px);font-weight:650;line-height:1.45} .benefits-summary { position:relative; overflow:hidden; min-height:430px; padding:30px; border-radius:var(--radius-xl); color:#fff; background:linear-gradient(145deg,var(--stm-blue-950),var(--stm-blue-700)); box-shadow:var(--shadow-soft); } .benefits-summary::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,47,71,.50),rgba(5,47,71,.82)),var(--benefits-image) 44% 52%/cover no-repeat;opacity:1} .benefits-summary>*{position:relative} .benefits-summary h2{margin:0 0 20px;font-family:var(--font-display);font-size:clamp(30px,3vw,48px);line-height:1} .benefits-summary p{margin:0 0 16px;color:#d8ebf4;font-size:clamp(14px,1.05vw,17px);line-height:1.55} .benefits-summary__metric{display:flex;align-items:end;gap:12px;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18)} .benefits-summary__metric strong{font-family:var(--font-display);font-size:clamp(54px,5vw,78px);line-height:.8;color:var(--stm-cyan-200)} .benefits-summary__metric span{max-width:170px;font-size:12px;line-height:1.35;text-transform:uppercase;letter-spacing:.1em} .contacts-layout { display:grid; grid-template-columns:minmax(480px,.9fr) minmax(550px,1.1fr); min-height:calc(100svh - 28px); } .contacts-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(48px,6vw,92px); background:linear-gradient(145deg,var(--stm-blue-950),var(--stm-blue-800)); color:#fff; } .contacts-title{margin:20px 0 36px;font-family:var(--font-display);font-size:clamp(60px,7vw,104px);line-height:.85;letter-spacing:-.04em} .contact-list{display:grid;gap:13px;margin-top:6px} .contact-item{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:center;padding:14px 0;border-top:1px solid rgba(255,255,255,.15)} .contact-item:first-child{border-top:0} .contact-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.1);color:var(--stm-cyan-200)} .contact-icon svg{width:20px;height:20px} .contact-item span{display:block;color:var(--stm-cyan-200);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase} /* v1.8.2: keep contact pictograms centered inside their chips on all viewports */ .contact-item .contact-icon{display:grid;place-items:center;padding:0;line-height:1} .contact-item .contact-icon svg{display:block;width:20px;height:20px;margin:0} .contact-item a,.contact-item address{display:block;margin-top:4px;color:#fff;font-size:clamp(16px,1.35vw,21px);font-style:normal;text-decoration:none;line-height:1.35} .contacts-image{position:relative;overflow:hidden;background:#fff;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)} .contacts-image img{width:100%;height:100%;object-fit:cover;opacity:.84} .contacts-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,47,71,.3),transparent 30%)} .contacts-home{display:inline-flex;align-items:center;gap:8px;margin-top:30px;align-self:flex-start;padding:11px 15px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-weight:750;cursor:pointer} .developer-credit{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:22px;color:rgba(216,235,244,.72);font-size:11px;line-height:1.35} .developer-credit span{color:inherit;font-size:inherit;font-weight:650;letter-spacing:.04em;text-transform:none} .developer-credit a{color:#fff;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.34);transition:border-color .18s ease,color .18s ease} .developer-credit a:hover{color:var(--stm-cyan-200);border-color:var(--stm-cyan-200)} .developer-credit a:focus-visible{outline:3px solid var(--stm-cyan-200);outline-offset:3px;border-radius:3px} .contents-item__type { color:var(--stm-steel-400);font-size:10px;letter-spacing:.08em;text-transform:uppercase; } .contents-item { grid-template-columns:42px 1fr auto; } .page-rail__progress strong{min-width:1.4em;text-align:right} @media (max-width:1100px){ .presentation-shell{gap:0;padding:0} .cover-slide,.contacts-layout{min-height:100svh} .cover-layout{grid-template-columns:1fr;min-height:100svh} .cover-copy{min-height:58svh;padding:44px 24px 38px} .cover-image{min-height:42svh;clip-path:none} .cover-image img{object-position:center 42%} .intro-layout,.benefits-layout{grid-template-columns:1fr} .narrative-body{padding:42px 18px 24px} .intro-visual{min-height:470px} .benefits-summary{min-height:350px} .contacts-layout{grid-template-columns:1fr} .contacts-copy{min-height:54svh;padding:50px 28px 38px} .contacts-image{min-height:46svh;clip-path:none} } @media (max-width:620px){ .narrative-header{min-height:68px;padding:10px 14px} .narrative-header::after{bottom:-16px;height:24px;width:54%} .narrative-header__number{width:42px;font-size:17px} .narrative-header__label{font-size:9px} .cover-copy{min-height:auto;padding:30px 18px 34px} .cover-brand{margin-bottom:34px;gap:10px}.cover-brand img{width:52px;height:52px} .cover-brand strong{font-size:32px}.cover-brand span{font-size:8px} .cover-title{font-size:clamp(27px,8.4vw,34px);line-height:.95;letter-spacing:-.028em;overflow-wrap:anywhere;word-break:normal;text-wrap:pretty} .cover-subtitle{font-size:15px;line-height:1.42;margin-top:18px}.cover-actions{margin-top:24px} .cover-image{min-height:38svh} .narrative-body{padding:34px 14px 18px} .narrative-title{font-size:clamp(34px,9vw,44px);margin-bottom:17px;overflow-wrap:break-word} .intro-copy{padding:18px;border-radius:20px}.intro-copy p{font-size:14px;line-height:1.52} .intro-visual{min-height:370px;border-radius:20px} .channel-list{left:12px;right:12px;bottom:12px;grid-template-columns:1fr;gap:8px} .channel-card{grid-template-columns:1fr 62px;padding:10px}.channel-card__qr{width:62px;height:62px}.channel-card__logo{width:96px} .benefits-grid{grid-template-columns:1fr}.benefit-card:nth-child(5){grid-column:auto}.benefit-card{min-height:auto;padding:14px;grid-template-columns:40px 1fr}.benefit-index{width:40px;height:40px} .benefits-summary{min-height:auto;padding:22px;border-radius:20px} .contacts-copy{order:2;min-height:auto;padding:36px 18px}.contacts-title{font-size:58px;margin:16px 0 24px} .contacts-image{order:1;min-height:42svh}.contact-item{grid-template-columns:38px 1fr}.contact-icon{width:38px;height:38px} .developer-credit{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);font-size:12px} } /* v1.1: exact page positioning and compact desktop layout for short browser viewports */ @media (min-width: 1101px) { html { scroll-padding-block: 14px; } .presentation-slide { scroll-margin-top: 0; } } @media (min-width: 1101px) and (max-height: 860px) { .narrative-header { min-height: 64px; padding-top: 8px; padding-bottom: 8px; } .narrative-header__number { width: 46px; font-size: 18px; } .narrative-header__label { font-size: 9px; } .brand--compact .brand-symbol { width: 40px; height: 40px; } .brand--compact .brand-name { font-size: clamp(25px, 2vw, 32px); } .brand--compact .brand-descriptor { margin-top: 3px; font-size: 8px; } .cover-layout { grid-template-columns: minmax(500px, .95fr) minmax(520px, 1.05fr); } .cover-copy { padding: 30px clamp(36px, 4vw, 58px); } .cover-brand { gap: 12px; margin-bottom: 22px; } .cover-brand img { width: 54px; height: 54px; } .cover-brand strong { font-size: clamp(34px, 3.1vw, 46px); } .cover-brand span { margin-top: 5px; font-size: 8px; } .cover-kicker { margin-bottom: 10px; font-size: 10px; } .cover-title { max-width: 100%; font-size: clamp(48px, 3.8vw, 62px); line-height: .92; letter-spacing: -.038em; } .cover-subtitle { margin-top: 16px; font-size: clamp(15px, 1.15vw, 18px); line-height: 1.38; } .cover-actions { margin-top: 18px; } .cover-start { padding: 10px 15px; font-size: 13px; } .narrative-body { padding: 22px clamp(34px, 4vw, 58px) 10px; overflow: hidden; } .intro-layout { grid-template-columns: minmax(620px, 1.22fr) minmax(360px, .78fr); gap: clamp(24px, 3vw, 42px); align-items: stretch; } .intro-copy { padding: 18px 22px; border-radius: 22px; } .section-kicker { margin-bottom: 7px; font-size: 10px; } .narrative-title { margin-bottom: 12px; font-size: clamp(38px, 3.3vw, 50px); line-height: .96; } .intro-copy p { margin-bottom: 8px; font-size: clamp(11.5px, .86vw, 13.5px); line-height: 1.42; } .intro-copy p:first-of-type { font-size: clamp(13px, .95vw, 15px); } .intro-copy p:last-child { margin-top: 10px; margin-bottom: 0; } .intro-visual { min-height: 0; height: 100%; border-radius: 22px; } .channel-list { left: 14px; right: 14px; bottom: 14px; gap: 8px; } .channel-card { grid-template-columns: 1fr 58px; gap: 8px; padding: 9px; border-radius: 14px; } .channel-card__logo { width: 88px; } .channel-card__qr { width: 58px; height: 58px; } .channel-card span { margin-top: 5px; font-size: 8px; } .benefits-layout { grid-template-columns: minmax(620px, 1.18fr) minmax(350px, .72fr); gap: clamp(24px, 3vw, 42px); align-items: stretch; } .benefits-grid { gap: 9px; } .benefit-card { grid-template-columns: 38px 1fr; gap: 11px; min-height: 98px; padding: 13px 15px; border-radius: 16px; } .benefit-card:nth-child(5) { min-height: 66px; } .benefit-index { width: 38px; height: 38px; border-radius: 11px; font-size: 15px; } .benefit-card p { font-size: clamp(11.5px, .88vw, 13.5px); line-height: 1.38; } .benefits-summary { min-height: 0; height: 100%; padding: 22px 24px; border-radius: 22px; } .benefits-summary h2 { margin-bottom: 13px; font-size: clamp(28px, 2.45vw, 38px); } .benefits-summary p { margin-bottom: 11px; font-size: clamp(11.5px, .9vw, 14px); line-height: 1.45; } .benefits-summary__metric { margin-top: 18px; padding-top: 14px; } .benefits-summary__metric strong { font-size: clamp(46px, 4vw, 62px); } .benefits-summary__metric span { font-size: 9px; } .contacts-copy { padding: 30px clamp(42px, 5vw, 72px); } .contacts-copy .cover-brand { margin-bottom: 22px; } .contacts-title { margin: 12px 0 20px; font-size: clamp(58px, 5.4vw, 78px); } .contact-list { gap: 5px; margin-top: 0; } .contact-item { grid-template-columns: 38px 1fr; gap: 11px; padding: 10px 0; } .contact-icon { width: 38px; height: 38px; border-radius: 11px; } .contact-item a, .contact-item address { font-size: clamp(14px, 1.08vw, 17px); } .contacts-home { margin-top: 16px; padding: 9px 13px; font-size: 13px; } } @media (min-width: 1101px) and (max-height: 740px) { .cover-title { font-size: clamp(44px, 3.45vw, 56px); } .cover-brand { margin-bottom: 15px; } .cover-subtitle { font-size: 14px; } .narrative-body { padding-top: 16px; } .narrative-title { font-size: clamp(34px, 3vw, 44px); } .intro-copy p { font-size: 11px; line-height: 1.35; } .benefit-card { min-height: 88px; } } /* v1.2: desktop visual polish after live viewport review */ @media (min-width: 1101px) { /* Cover: three distinct vertical zones instead of one compressed block */ .cover-copy { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; align-items: start; justify-content: stretch; } .cover-brand { margin-bottom: 0; } .cover-main { align-self: center; width: 100%; padding: 18px 0; } .cover-actions { align-self: end; margin-top: 0; } /* Intro: use available card height and restore a readable text scale */ .intro-copy { display: flex; flex-direction: column; justify-content: center; } /* Benefits: cards stretch into the available area instead of clustering */ .benefits-grid { grid-template-rows: repeat(2, minmax(0, 1fr)) auto; align-self: stretch; } .benefit-card { min-height: 0; } .benefit-card:nth-child(5) { min-height: 0; } /* Contact icons: prevent the generic span rule from overriding grid centering */ .contact-item .contact-icon { display: grid; place-items: center; flex: 0 0 auto; padding: 0; line-height: 1; } .contact-item .contact-icon svg { display: block; width: 20px; height: 20px; margin: 0; } } @media (min-width: 1101px) and (max-height: 860px) { .cover-copy { padding-top: 34px; padding-bottom: 34px; } .cover-main { padding: 12px 0; } .cover-brand img { width: 58px; height: 58px; } .cover-brand strong { font-size: clamp(38px, 3.25vw, 48px); } .cover-title { font-size: clamp(50px, 4.15vw, 66px); } .cover-subtitle { max-width: 620px; font-size: clamp(16px, 1.18vw, 19px); } .intro-copy { padding: 28px 30px; } .intro-copy .narrative-title { margin-bottom: 18px; font-size: clamp(46px, 3.7vw, 58px); } .intro-copy p { margin-bottom: 12px; font-size: clamp(14px, 1vw, 16px); line-height: 1.5; } .intro-copy p:first-of-type { font-size: clamp(16px, 1.12vw, 18px); } .intro-copy p:last-child { margin-top: 16px; } .benefits-layout { align-items: stretch; } .benefits-grid { gap: 12px; } .benefit-card { grid-template-columns: 44px 1fr; gap: 14px; padding: 17px 18px; } .benefit-index { width: 44px; height: 44px; font-size: 17px; } .benefit-card p { font-size: clamp(14px, .98vw, 16px); line-height: 1.42; } .benefits-summary { padding: 28px 30px; } .benefits-summary h2 { margin-bottom: 18px; font-size: clamp(36px, 2.9vw, 46px); } .benefits-summary p { margin-bottom: 15px; font-size: clamp(14px, 1vw, 16px); line-height: 1.52; } .benefits-summary__metric { margin-top: 24px; padding-top: 18px; } .benefits-summary__metric strong { font-size: clamp(54px, 4.4vw, 68px); } .benefits-summary__metric span { font-size: 10px; } } @media (min-width: 1101px) and (max-height: 860px) { .benefit-card { align-items: center; } } /* v1.3 generated visual positioning */ .cover-image img{object-position:50% 52%} .contacts-image img{object-position:50% 53%;opacity:.94} @media (max-width:1100px){.channel-card__button{min-height:28px;padding:5px 10px;font-size:10px}} /* v1.6: fixed-canvas narrative balance at the 1536×864 desktop design size */ @media (min-width: 1101px) and (max-height: 900px) { .narrative-header { min-height: 72px; padding-top: 10px; padding-bottom: 10px; } .narrative-header__number { width: 50px; font-size: 19px; } .narrative-header__label { font-size: 10px; } /* Slide 2: preserve readable text without letting the copy enter the footer. */ .intro-layout { min-height: 0; padding: 24px clamp(40px, 3.8vw, 58px) 16px; grid-template-columns: minmax(650px, 1.22fr) minmax(390px, .78fr); gap: clamp(28px, 3vw, 42px); } .intro-copy { min-height: 0; padding: 23px 30px; justify-content: center; overflow: hidden; } .intro-copy .section-kicker { margin-bottom: 8px; font-size: 10px; } .intro-copy .narrative-title { margin-bottom: 14px; font-size: clamp(46px, 3.45vw, 53px); line-height: .95; } .intro-copy p { margin-bottom: 9px; font-size: clamp(14px, .96vw, 15px); line-height: 1.42; } .intro-copy p:first-of-type { font-size: clamp(15px, 1.02vw, 16px); } .intro-copy p:last-child { margin-top: 12px; margin-bottom: 0; } .intro-visual { min-height: 0; height: 100%; } .channel-list { left: 16px; right: 16px; bottom: 16px; } /* Slide 3: make the content area a true remaining-height layout. */ #benefits .narrative-body { display: flex; min-height: 0; flex-direction: column; padding: 24px clamp(40px, 3.8vw, 58px) 16px; overflow: hidden; } #benefits .section-kicker { flex: 0 0 auto; margin-bottom: 8px; font-size: 10px; } #benefits .narrative-title { flex: 0 0 auto; margin-bottom: 14px; font-size: clamp(48px, 3.8vw, 58px); line-height: .94; } #benefits .benefits-layout { flex: 1 1 auto; min-height: 0; align-items: stretch; } #benefits .benefits-grid { min-height: 0; height: 100%; grid-template-rows: repeat(2, minmax(0, 1fr)) minmax(70px, auto); gap: 10px; } #benefits .benefit-card { min-height: 0; padding: 15px 17px; } #benefits .benefit-card:nth-child(5) { min-height: 70px; } #benefits .benefit-card p { font-size: clamp(13px, .92vw, 14.5px); line-height: 1.4; } #benefits .benefits-summary { min-height: 0; height: 100%; padding: 24px 28px; overflow: hidden; } #benefits .benefits-summary h2 { margin-bottom: 14px; font-size: clamp(34px, 2.75vw, 42px); } #benefits .benefits-summary p { margin-bottom: 12px; font-size: clamp(13px, .92vw, 14.5px); line-height: 1.46; } #benefits .benefits-summary__metric { margin-top: 16px; padding-top: 14px; } } /* v1.7: deterministic cover title wrapping inside the fixed 1536×864 canvas */ @media (min-width: 1101px) { #cover .cover-title { max-width: 100%; font-size: 54px; line-height: .98; letter-spacing: -.035em; text-wrap: initial; } #cover .cover-title > span { display: block; white-space: nowrap; } #cover .cover-main { min-width: 0; max-width: 100%; } } @media (min-width: 1101px) and (max-height: 740px) { #cover .cover-title { font-size: 50px; } }