/* Template-derived compositions. Source mapping: reference/style-audit.json. */
.content-slide{background:#fff}
.content-heading{position:absolute;display:block;padding:0;left:56px;top:60px;width:1808px;color:inherit}
.content-heading h2{margin:0;font-size:88px;font-weight:700;line-height:.9;white-space:pre-line;letter-spacing:0}
.eyebrow{margin:0 0 30px;font-size:30px;line-height:1.2;font-weight:400}.eyebrow:empty{display:none}
.content-body{position:absolute;left:56px;top:306px;width:1808px;height:700px}
.lead{margin:0 0 46px;max-width:1700px;font-size:38px;line-height:1.3;white-space:pre-line}
.content-item{position:relative;padding:48px;background:#f2f2f2;border-radius:36px;min-width:0}
.content-item h3{margin:0;font-size:44px;line-height:1.1;font-weight:700;white-space:pre-line}
.item-text{margin:28px 0 0;font-size:34px;line-height:1.4;white-space:pre-line}
.item-text:empty,.item-tag:empty{display:none}.item-tag{margin:0 0 32px;font-size:26px;line-height:1.2}
.step-index{display:none}.item-icon{position:absolute;width:86px;height:86px;object-fit:contain;right:34px;bottom:24px}
.three-up{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.three-up .content-item{min-height:280px}
.two-up{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.takeaway{margin:42px 0 0;font-size:34px;line-height:1.3;max-width:1740px}
.slide-references{position:absolute;left:56px;bottom:24px;width:1808px;display:flex;gap:28px;align-items:center;font-size:20px;color:#585858}
.slide-references a{color:inherit;text-decoration:underline;text-underline-offset:5px}
/* Source 13: a compact numbered plan beside the original sculptural discs. */
.content-slide.agenda{background:#f2f2f2 url('assets/agenda-background.png') center/cover}
.agenda .content-heading{left:98px;top:120px;width:1700px}
.agenda .content-heading h2{font-size:128px;line-height:1.05}
.agenda .content-body{left:102px;top:370px;width:850px;height:532px}
.agenda-list{display:grid;grid-template-rows:repeat(7,64px);row-gap:14px;height:100%}
.agenda-list .content-item{display:grid;grid-template-columns:56px minmax(0,1fr);gap:28px;align-items:center;padding:0;background:none;border-radius:0}
.agenda-list .step-index{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#fff;font-size:26px;line-height:1;color:#333}
.agenda-list h3{font-size:32px;line-height:1.2;font-weight:400}
/* Sources 15 and 20: white headings and light-grey secondary text. */
.possibilities::before{content:'';position:absolute;left:38.3px;top:38.3px;width:760px;height:1005.6px;border-radius:44px;background:linear-gradient(135deg,#ffdd2d,#ffcb2c);box-shadow:inset 0 0 55px #ffffff30}
.possibilities .content-heading{left:94.2px;top:110px;width:650px}
.possibilities .content-heading h2{font-size:88px;line-height:1}
.possibilities .content-body{inset:0;width:1920px;height:1082.2322px}
.possibilities-lead{position:absolute;left:94.2px;top:340px;width:650px;margin:0;font-size:34px;line-height:1.35;white-space:pre-line}
.possibilities-infinity{position:absolute;left:144px;top:535px;width:550px;height:250px;text-align:center;font-size:272px;line-height:.9;color:#333}
.possibilities-context{position:absolute;left:94.2px;top:870px;width:650px;margin:0;font-size:32px;line-height:1.35;white-space:pre-line}
.possibilities-points{position:absolute;left:880px;top:130px;width:930px;display:flex;flex-direction:column;gap:80px}
.possibilities-points .content-item{padding:0 0 0 72px;background:none;border-radius:0}
.possibilities-points .content-item::before{content:'→';position:absolute;left:0;top:-8px;font-size:52px;line-height:1.2}
.possibilities-points h3{font-size:42px;line-height:1.1}
.possibilities-points .item-text{margin-top:18px;font-size:32px;line-height:1.35}
.possibilities-aside{position:absolute;left:880px;top:900px;width:930px;margin:0;padding:26px 30px;border-radius:28px;background:#f2f2f2;font-size:28px;line-height:1.3;white-space:pre-line}
.content-slide.question,.content-slide.closing{background:#191919 url('assets/black-pattern.svg') center/cover;color:#fff}
.question .content-heading,.closing .content-heading{top:190px;left:110px;width:1700px}
.question .eyebrow,.closing .eyebrow{color:#e1e1e1}
.content-slide.question{background:#191919 url('assets/question-background.png') center/cover}
.question .content-heading{left:170.2px;top:335.9px;width:1615.6px}
.question .content-heading h2{font-size:128px;line-height:1.02;color:#fff;background:linear-gradient(110deg,#a5a5a5,#fff 68%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.question .content-body{top:760px;left:110px;width:1700px;height:190px}
.question-cursor{position:absolute;left:1390px;top:-120px;width:148.6px;height:142.3px}
.question-context{margin:0;font-size:38px;line-height:1.4;color:#e1e1e1;white-space:pre-line}
.closing .content-heading h2{font-size:164px;line-height:.98}
.closing .content-body{top:740px;left:110px;width:1700px;height:250px}
.closing-context{margin:0;font-size:38px;line-height:1.3;white-space:pre-line;max-width:1670px}
.stat-strip{display:grid;grid-template-columns:320px minmax(0,1fr);column-gap:36px;align-items:center;margin-top:28px}
.stat-strip strong{font-size:144px;line-height:1;grid-row:1/3;font-weight:700}
.stat-strip p{margin:0;font-size:34px;line-height:1.3;max-width:1250px}.stat-strip span{font-size:22px;line-height:1.3}
/* Source 64's yellow panel, recomposed around expertise and four adjacent fields. */
.profile::before{content:'';position:absolute;inset:38.3px;border-radius:43px;background:linear-gradient(135deg,#ffdd2d 0%,#ffcb2c 85%);box-shadow:inset 0 0 55px #ffffff30}
.profile .content-heading{left:111.6px;top:105.7px;width:1096px;z-index:2}.profile .content-heading h2{font-size:88px;line-height:.98}
.profile .content-body{inset:0;width:1920px;height:1082.2322px}
.profile-aside{position:absolute;left:1293px;top:126px;width:514px;margin:0;font-size:34px;line-height:1.4;white-space:pre-line}
.profile-core{position:absolute;left:745px;top:448px;width:430px;height:430px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:40px;overflow:hidden;text-align:center}
.profile-core h3{margin:0;font-size:66px;line-height:1;white-space:pre-line;font-weight:700}
.profile-core p{margin:0;font-size:30px;line-height:1.3;white-space:pre-line}
.profile-leaders{position:absolute;inset:0;width:1920px;height:1082.2322px}
.profile-points .content-item{position:absolute;background:none;border-radius:0;padding:0}
.profile-points h3{font-size:40px;line-height:1.1}
.profile-points .item-text{font-size:32px;line-height:1.35;margin:52px 0 0;width:100%}
.profile-points .content-item:nth-child(1){left:120px;top:430px;width:410px}
.profile-points .content-item:nth-child(2){left:120px;top:756px;width:410px}
.profile-points .content-item:nth-child(3){left:1400px;top:430px;width:400px;text-align:right}
.profile-points .content-item:nth-child(4){left:1400px;top:756px;width:400px;text-align:right}
/* Source 25: two contrasting panels. */
.examples .content-item{min-height:450px}
.examples .content-item:first-child{background:linear-gradient(135deg,#ffdd2d 0%,#ffcb2c 85%)}
.examples .item-text{font-size:36px}
/* Sources 38–40: supporting text at left, a large framed example at right. */
.scene .content-body{left:38.3px;top:340px;width:1843.3px;height:704px}
.scene-copy{position:absolute;left:0;top:0;width:570px;height:704px;background:#f2f2f2;border-radius:36px}
.scene .lead{position:absolute;left:44px;top:44px;width:482px;font-size:32px;font-weight:500;line-height:1.35;margin:0}
.scene-points .content-item{position:absolute;left:44px;width:482px;padding:0 0 0 72px;background:none;border-radius:0}
.scene-points .content-item:nth-child(1){top:200px}.scene-points .content-item:nth-child(2){top:400px}
.scene-points .step-index{display:flex;position:absolute;left:0;top:-4px;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;background:#ffdd2d;font-size:24px;line-height:1}
.scene-points h3{font-size:36px;line-height:1.1}.scene-points .item-text{font-size:30px;line-height:1.35;margin:18px 0 0}
.scene .takeaway{position:absolute;left:44px;top:578px;width:482px;padding-top:24px;border-top:2px solid #e1e1e1;margin:0;font-size:26px;line-height:1.3;color:#585858;white-space:pre-line}
.scene-example{position:absolute;left:600px;top:0;width:1243.3px;height:704px;margin:0}
.scene-example figcaption{margin:0;font-size:30px;line-height:1.3}
/* Source crop: x≈78–2678, y≈251–1594, above the prompt strip at y≈1610. */
.scene-image-crop{position:absolute;top:62px;left:0;width:1243.3px;height:642px;overflow:hidden;border-radius:36px;background:#333}
.scene-image-crop img{position:absolute;display:block;width:106%;max-width:none;height:auto;left:-3%;top:-120px}
/* Sources 28/33: pale cards beneath a yellow heading plate. */
.tools::before,.checklist::before{content:'';position:absolute;left:38.3px;top:38.3px;width:1843.3px;height:325.4px;border-radius:44px;background:linear-gradient(135deg,#ffdd2d 0%,#ffdd2d 42%,#ffcb2c 100%);box-shadow:inset 0 0 55px #ffffff38}
.tools .content-heading,.checklist .content-heading{left:94.2px;top:109.5px;width:1700px}
.tools .content-body,.checklist .content-body{left:38.3px;top:379px;width:1843.3px;height:664px}
.tools .lead,.checklist .lead{position:absolute;left:56px;top:-94px;margin:0;font-size:30px;line-height:1.25;max-width:1700px}
/* Give the checklist's two-line subtitle its own space inside the heading plate. */
.checklist::before{height:360px}
.checklist .content-heading{top:90px}
.checklist .content-body{top:414px;height:629px}
.checklist .lead{top:-134px;width:1700px}
.tool-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;height:100%}
.tool-columns .content-item{padding:52px 56px;border-radius:0;background:url('assets/card-three.svg') 0 0/100% 100% no-repeat}
.tool-columns h3{font-size:48px;color:#333}.tool-columns .item-text{font-size:34px;margin-top:32px}
.tool-columns .item-icon{width:112px;height:112px;right:28px;bottom:20px}
.tool-columns .item-tag{position:absolute;left:56px;bottom:166px;color:#333;font-size:30px;margin:0}.tools .takeaway{display:none}
/* Source 28: a yellow heading plate above three thematic question cards. */
.discussion::before{content:'';position:absolute;left:38.3px;top:38.3px;width:1843.3px;height:325.4px;border-radius:44px;background:linear-gradient(135deg,#ffdd2d 0%,#ffdd2d 42%,#ffcb2c 100%);box-shadow:inset 0 0 55px #ffffff38}
.discussion .content-heading{left:94.2px;top:90px;width:1700px}
.discussion .content-body{left:38.3px;top:411px;width:1843.3px;height:632px}
.discussion .lead{position:absolute;left:56px;top:-131px;margin:0;font-size:30px;line-height:1.25;width:1700px}
.discussion-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;height:100%}
.discussion-topic{display:flex;flex-direction:column;min-width:0;min-height:0}
.discussion-topic h3{font-size:36px;line-height:1.1;margin:0 30px 36px}
.discussion-questions{display:flex;flex-direction:column;gap:20px;flex:1;min-height:0;list-style:none;margin:0;padding:0}
.discussion-question{position:relative;flex:1;min-height:0}
.question-toggle{position:relative;display:flex;align-items:flex-start;width:100%;height:100%;padding:26px 30px 26px 58px;border:0;border-radius:32px;background:#f2f2f2;color:#333;text-align:left;font:inherit;cursor:pointer}
.question-toggle:active{transform:none}
.question-toggle::before{content:'';position:absolute;left:30px;top:41px;width:8px;height:8px;border-radius:50%;background:#333}
.question-toggle span{display:block;margin:0;font-size:30px;line-height:1.3}
.question-toggle[aria-pressed="true"]{background:linear-gradient(135deg,#ffdd2d,#ffcb2c)}
.question-toggle:focus-visible{outline:3px solid #333;outline-offset:4px}
@media(hover:hover){.question-toggle:hover{box-shadow:inset 0 0 0 2px #33333325}}
/* Source 37: yellow number badges, not yellow paragraph text. */
.economy .content-heading{left:94.2px;top:64px;width:1700px}
.economy .content-body{left:38.3px;top:280px;width:1843.3px;height:744px}
.economy-lead{position:absolute;left:56px;top:-95px;margin:0;font-size:34px;line-height:1.3;width:1700px}
.economy-choice{position:absolute;left:0;top:0;width:560px;height:744px;padding:44px;background:#f2f2f2;border-radius:36px}
.economy-choice>h3{margin:0;font-size:40px;line-height:1.1}
.economy-risks{margin:30px 0 0;font-size:32px;line-height:1.35;white-space:pre-line}
.economy-starter{position:absolute;left:44px;right:44px;top:370px;padding-top:32px;border-top:2px solid #d7d7d7}
.economy-label{margin:0;font-size:26px;line-height:1.3}
.economy-starter h3{margin:22px 0;font-size:46px;line-height:1.1}
.economy-starter>p:last-child{margin:0;font-size:30px;line-height:1.35;white-space:pre-line}
.economy-recommend{position:absolute;left:590px;top:0;width:1253.3px;height:190px;display:flex;align-items:center;gap:28px;padding:40px 44px;border-radius:36px;background:linear-gradient(135deg,#ffdd2d,#ffcb2c)}
.economy-brands{display:grid;place-items:center;flex:none;width:104px;height:104px}
.economy-brands img{display:block;width:96px;height:96px;object-fit:contain}
.economy-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:baseline;gap:6px 32px;flex:1;min-width:0}
.economy-recommend .economy-label{grid-column:1;grid-row:1;line-height:1.2}
.economy-recommend h3{margin:0;font-size:60px;line-height:1.05}
.economy-price{grid-column:2;grid-row:1/3;align-self:center;display:flex;align-items:baseline;gap:10px;margin:0;font-size:60px;line-height:1.05;font-weight:700;white-space:nowrap}
.economy-period{font-size:28px;line-height:1.2;font-weight:400}
.economy-pricing{position:absolute;left:590px;top:230px;width:530px;margin:0}
.economy-pricing>img{display:block;width:100%;height:auto;border-radius:24px}
.economy-benefits{position:absolute;left:1164px;top:230px;width:635px;display:flex;flex-direction:column;gap:32px}
.economy-benefits .content-item{padding:0;background:none;border-radius:0}
.economy-benefits h3{font-size:32px;line-height:1.1}
.economy-benefits .item-text{margin-top:12px;font-size:28px;line-height:1.3}
.economy-alternatives{position:absolute;left:590px;top:594px;width:1253.3px;height:150px;padding:20px 32px;background:#f2f2f2;border-radius:28px}
.economy-alternatives>p{margin:0;font-size:32px;line-height:1.2;font-weight:700}
.alternative-brands{display:flex;align-items:center;gap:28px;margin-top:14px}
.alternative-brands a{display:flex;align-items:center;gap:12px;color:#333;text-decoration:none;font-size:22px;line-height:1.2}
.alternative-logo{display:grid;place-items:center;flex:none;width:54px;height:54px;background:#fff;border:1px solid #e1e1e1;border-radius:14px}
.alternative-brands img{display:block;width:36px;height:36px;object-fit:contain}
.alternative-brands a:first-child img{width:38px;height:38px}
.alternative-brands a:nth-child(2) img{width:32px;height:32px}
.alternative-brands a:hover .alternative-name{text-decoration:underline;text-underline-offset:4px}
.economy .slide-references{left:94.2px;width:1700px;font-size:18px;bottom:18px}
.check-rows,.habit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.check-rows{grid-template-rows:repeat(2,minmax(0,1fr));height:100%}
.check-rows .content-item,.habit-grid .content-item{padding:42px 50px;background:none;border-radius:0;isolation:isolate}
/* Preserve native corner geometry while stretching only the straight edges. */
.check-rows .content-item::before,.habit-grid .content-item::before{content:'';position:absolute;inset:0;z-index:-1;border:solid transparent;border-width:64px 180px 180px 64px;border-image:url('assets/card-numbered.svg') 64 180 180 64 fill / 64px 180px 180px 64px / 0 stretch}
.check-rows .step-index,.habit-grid .step-index{display:flex;align-items:center;justify-content:center;position:absolute;right:-1.5px;bottom:-1px;width:100.3px;height:100.3px;border-radius:50%;background:linear-gradient(135deg,#ffdd2d,#ffcb2c);font-size:34px;line-height:1;z-index:1}
.check-rows h3{font-size:40px;max-width:760px}.check-rows .item-text{font-size:32px;margin-top:24px;max-width:730px}
.habits .content-body{left:38.3px;width:1843.3px;top:278px;height:740px}
.habit-grid{grid-template-rows:repeat(2,300px)}.habit-grid h3{font-size:40px}
.habit-grid .item-text{font-size:32px;margin-top:22px;max-width:740px}.habits .takeaway{font-size:30px;line-height:1.3;margin:28px 18px 0}
.process-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative}.process-remark{font-size:28px;line-height:1.3;margin:0}
/* Source 61: white circles and neutral type on the original yellow background. */
.content-slide.timeline{background:#ffdd2d url('assets/timeline-background.png') center/cover}
.timeline .content-heading{left:85.5px;top:101.5px;width:1641px}.timeline .content-heading h2{font-size:96px;line-height:.95}
.timeline .content-body{left:90.5px;top:356px;width:1738px;height:680px}.timeline .lead{font-size:36px;margin:0}
.timeline .process-track{position:absolute;inset:0;gap:100px;height:620px}
.timeline .content-item{background:none;border-radius:0;padding:0}
.timeline .step-index{display:flex;position:absolute;left:0;top:270px;width:115px;height:115px;align-items:center;justify-content:center;background:white;border-radius:50%;font-size:42px}
.timeline .content-item:not(:last-child)::after{content:'';position:absolute;top:326px;left:115px;width:calc(100% - 40px);height:4px;background:linear-gradient(90deg,transparent,#fff)}
.timeline .content-item h3{position:absolute;top:420px;left:0;font-size:34px;width:100%}
.timeline .item-text{position:absolute;top:480px;left:0;margin:0;width:100%;font-size:30px;line-height:1.3}
.timeline .process-remark{position:absolute;top:635px;font-size:26px}.timeline .slide-references{bottom:14px;font-size:18px}
/* Source 62: alternating captions around one fixed icon row. */
.content-slide.zigzag{background:#f2f2f2}
.zigzag .content-body{top:306px;left:38.3px;width:1843.3px;height:737px;border-radius:36px;background:#fff}
.zigzag .lead{position:absolute;left:80px;top:38px;font-size:30px;margin:0}
.zigzag .process-track{position:absolute;left:80px;top:0;width:1680px;height:630px;gap:0}
.zigzag .content-item{background:none;border-radius:0;padding:0}
.zigzag .content-item::before{content:'';position:absolute;top:320px;left:0;width:112px;height:112px;border-radius:50%;background:#efefef}
.zigzag .content-item:not(:last-child)::after{content:'';position:absolute;top:374px;left:112px;width:282px;height:4px;background:linear-gradient(90deg,transparent,#efefef 40%,#efefef)}
.zigzag .item-icon{width:58px;height:58px;top:347px;left:27px;right:auto;bottom:auto}
.zigzag .content-item h3{position:absolute;left:0;top:124px;width:340px;font-size:36px}
.zigzag .item-text{position:absolute;left:0;top:185px;width:340px;font-size:30px;line-height:1.3;margin:0}
.zigzag .content-item:nth-child(even) h3{top:464px}.zigzag .content-item:nth-child(even) .item-text{top:525px}
.zigzag .process-remark{position:absolute;left:80px;top:655px;max-width:1690px;font-size:26px}.zigzag .slide-references{bottom:12px;font-size:18px}
/* Source 24: pale image header above a quiet dark information panel. */
.content-slide.motion{color:#fff;background:#fff}
.motion::before{content:'';position:absolute;inset:38.3px;background:#191919;border-radius:36px}
.motion .content-heading{left:38.3px;top:38.3px;width:1843.3px;height:610px;border-radius:36px;background:#f2f2f2;color:#333}
.motion .content-heading h2{position:absolute;left:56px;top:71px;width:1010px;font-size:88px;line-height:.9}
.motion .content-body{inset:0;width:1920px;height:1082.2322px}
.motion-lead{position:absolute;left:94px;top:425px;width:850px;margin:0;color:#333;font-size:34px;line-height:1.4}
.motion-illustration{position:absolute;left:1049px;top:38.3px;width:832px;height:610px;overflow:hidden;border-radius:0 36px 36px 0}
.motion-illustration img{width:832px;height:634px;display:block}
.motion-track{position:absolute;left:94px;top:740px;width:1728px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px}
.motion-track .content-item{padding:0;border:0;border-radius:0;background:none}
.motion-track h3{font-size:38px}.motion-track .item-text{font-size:30px;line-height:1.4;margin-top:24px;color:#e1e1e1}
.motion-alternatives{position:absolute;left:94px;top:932px;width:1728px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px;align-items:center;color:#e1e1e1}
.motion-alternatives p{margin:0;font-size:26px;line-height:1.3;white-space:pre-line}
.motion-brand{display:flex;align-items:center;gap:20px;color:#fff;text-decoration:none;font-size:34px;line-height:1.2}
.motion-brand img{display:block;width:80px;height:80px;object-fit:contain;border-radius:14px}
.motion .slide-references{display:none}
.demo::before{content:'';position:absolute;inset:38.3px;border-radius:43px;background:linear-gradient(135deg,#ffdd2d 0%,#ffcb2c 85%);box-shadow:inset 0 0 55px #ffffff30}
.demo .content-heading{left:111px;top:105px;width:1700px}.demo .content-heading h2{font-size:126px;line-height:.95}
.demo .content-body{top:390px;left:111px;width:1700px;height:580px}
.demo-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:56px}
.demo-stages .content-item{min-height:230px;background:#ffffffc7;padding:40px}.demo-stages h3{font-size:42px}.demo-stages .item-text{font-size:30px}
.demo-reserve{margin-top:44px;font-size:27px;line-height:1.3;max-width:1470px}
.sources .content-heading h2{font-size:76px}.sources .content-body{top:215px;height:790px}
.practice .content-heading{left:56px;top:460px;width:1808px;text-align:center}
.practice .content-heading h2{font-size:144px;line-height:1}
.practice .content-body{top:800px;height:150px}
.sources .lead{font-size:30px;margin-bottom:28px}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 42px}
.source-item{padding-top:20px;border-top:2px solid #e1e1e1}.source-item a{color:#333;font-size:30px;line-height:1.2;text-underline-offset:5px}
.source-item p{margin:12px 0 0;font-size:24px;line-height:1.3}.source-boundary{margin-top:28px;font-size:26px;line-height:1.3}.sources .slide-references{display:none}
