/* Focused October 30 presentation update. Shared model and renderer unchanged. */
.s4-topbar .s4-preorder{background:#0879ed}.s4-topbar .s4-preorder:hover{background:#0064d4}
.sales-hero .rotation-stage{height:calc(100svh - var(--s4-nav));min-height:560px;gap:20px;padding-block:28px}
.sales-hero .rotation-visual>img,.sales-hero .rotation-visual>canvas{transform:scale(1.6)}
.sales-hero .rotation-visual{overflow:visible}
.sales-hero .closing-order{z-index:3}
.feature-trilogy{grid-template-columns:minmax(0,44%) minmax(0,56%)}
.feature-trilogy .trilogy-panels{grid-column:1/-1;grid-row:1;min-width:0}
.feature-trilogy .trilogy-desktop-media{z-index:2;pointer-events:none;overflow:visible}
.trilogy-desktop-media .trilogy-canvas-host{transform-origin:center;pointer-events:none}
.feature-trilogy .trilogy-progress{opacity:calc(1 - var(--data-focus,0));visibility:visible}
.feature-trilogy[data-chapter="1"] .trilogy-progress{visibility:hidden;pointer-events:none}
.feature-trilogy .trilogy-panel:not(.trilogy-data){width:44%;padding-right:2%}
.feature-trilogy .trilogy-data{display:block;width:calc(100% + 11.1112%);margin-left:-5.5556%;padding:0;min-height:0;scroll-margin-top:var(--s4-nav)}
#features .productivity-subtitle{margin:0 0 32px;max-width:380px}
#features .trilogy-copy .feature-options{margin-top:0}
#features .feature-tiles{gap:28px 14px}
#features .feature-tiles svg{width:30px;height:30px}
#features .feature-tiles li{font-size:13px}
.feature-trilogy #locked-in-reports .ir5-header{min-height:240px;display:flex;align-items:center;padding-right:35%;padding-bottom:20px}
.feature-trilogy #locked-in-reports h2{font-size:clamp(36px,4.1vw,60px);max-width:680px}
.feature-trilogy #locked-in-reports .ir5-device{filter:drop-shadow(4px 14px 13px #25402a24)}
.feature-trilogy #locked-in-reports{--ir5-device-width:clamp(155px,16vw,220px)}
#reading-section .reading-unfold-steps{height:250px;align-items:end;gap:8px;margin:0 0 16px}
#reading-section .reading-unfold-steps li:nth-child(1){padding-bottom:0}
#reading-section .reading-unfold-steps li:nth-child(2){padding-bottom:35px}
#reading-section .reading-unfold-steps li:nth-child(3){padding-bottom:70px}
#reading-section .reading-unfold-steps li:nth-child(4){padding-bottom:105px}
#reading-section .reading-unfold-card{height:128px;border-radius:14px 14px 4px 4px;box-shadow:0 5px 0 #e5eadf;padding:10px 4px;gap:8px}
#reading-section .reading-unfold-card strong{font-size:12px}
#reading-section .reading-unfold-reset{text-align:center;margin:18px 0 0}
#reading-section .reading-unfold-reset button{font-size:13px;padding:12px 16px;line-height:1.4;min-height:44px}
#reading-section .reading-discovery{margin-top:30px}
#reading-section .reading-discovery .feature-row-label{font-size:16px;line-height:1.6;color:#4b624b}
.classics-open{display:inline-grid;place-items:center;vertical-align:middle;width:30px;height:30px;margin-left:6px;border:1px solid #799479;border-radius:50%;background:#fff;color:#38593e;font-family:inherit;font-size:15px;font-weight:500;line-height:1;cursor:pointer}
.classics-dialog{border:1px solid #dfe5d9;border-radius:24px;padding:36px;width:min(820px,calc(100vw - 32px));max-height:85svh;box-sizing:border-box;overflow:auto;background:#fcfdf8;color:#2a432f;box-shadow:0 24px 90px #10291f40}
.classics-dialog::backdrop{background:#12271dcc;backdrop-filter:blur(5px)}
.classics-dialog h2{font-size:36px;line-height:1.1;letter-spacing:-.04em;font-weight:500;margin:0 40px 30px 0}
.classics-dialog h3{font-size:15px;font-weight:500;margin:28px 0 18px;color:#688064}
.classics-close{position:absolute;right:18px;top:16px;width:44px;height:44px;border:0;background:#edf2e7;border-radius:50%;font-size:26px;cursor:pointer;color:#3d5943}
.classics-dialog .reading-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;padding:0}
.classics-dialog .reading-categories li{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:13px;text-align:center}
.classics-dialog .reading-categories svg{width:28px;height:28px}
.classics-authors{display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px;list-style:none;padding:0;margin:0;font-size:14px;line-height:1.4}
.classics-authors li{padding:12px 0;border-top:1px solid #dfe7d9}
.classics-open:focus-visible,.classics-close:focus-visible{outline:3px solid #779b68;outline-offset:3px}
#goals .record-caption strong{font-size:17px;font-weight:600}
#goals .record-caption span{font-size:13px}
@media(max-width:900px){
 .feature-trilogy .trilogy-panel:not(.trilogy-data){width:100%;padding-right:0}
 .feature-trilogy .trilogy-data{width:113.6364%;margin-left:-6.8182%;border:0}
 .feature-trilogy #locked-in-reports .ir5-header{min-height:175px;padding:15px 5.3% 10px;display:grid;grid-template-columns:minmax(0,1fr) 38%;gap:0}
 .feature-trilogy #locked-in-reports h2{font-size:clamp(27px,5vw,40px)}
 .feature-trilogy #locked-in-reports .ir5-eyebrow{flex-wrap:wrap;gap:7px;letter-spacing:.08em}
 .feature-trilogy #locked-in-reports .ir5-sample{font-size:9px;padding-left:0;margin:0;border:0}
 .feature-trilogy .data-phone{width:100%;margin:0;aspect-ratio:1}
 .feature-trilogy #locked-in-reports{--ir5-device-width:clamp(150px,42vw,220px)}
 #features .productivity-subtitle{max-width:560px;width:100%;margin:0 auto 20px;font-size:19px}
 #features .feature-tiles li{font-size:12px}
 #reading-section .reading-unfold-steps{max-width:540px;margin-inline:auto}
}
@media(max-width:700px){
 .sales-hero .rotation-stage{height:calc(100svh - var(--s4-nav));min-height:510px;padding:24px 5%;gap:20px}
 .sales-hero .rotation-stage .rotation-visual{width:min(92vw,calc(100svh - var(--s4-nav) - 220px))}
 .sales-hero .turn-headline{z-index:3}.sales-hero .rotation-stage #hero-title{font-size:clamp(23px,6.1vw,32px)}
 .classics-dialog{padding:26px 20px}.classics-dialog h2{font-size:28px;margin-right:32px}.classics-authors{grid-template-columns:repeat(2,1fr);gap:0 16px;font-size:13px}
 .classics-dialog .reading-categories{grid-template-columns:repeat(3,1fr);gap:20px 12px}
}
@media(max-width:380px){#reading-section .reading-unfold-card strong{font-size:10px}#reading-section .reading-unfold-steps{gap:5px}.feature-trilogy #locked-in-reports .ir5-header{grid-template-columns:minmax(0,1fr) 33%}.feature-trilogy #locked-in-reports h2{font-size:27px}}
@media(min-width:901px) and (max-height:700px){.feature-trilogy #locked-in-reports .ir5-header{min-height:190px}.feature-trilogy #locked-in-reports h2{font-size:42px}#reading-section .reading-unfold-steps{height:215px}#reading-section .reading-unfold-card{height:110px}.trilogy-panel{padding-block:32px}}
@media(max-height:500px) and (min-width:701px){.sales-hero .rotation-stage{min-height:0}.sales-hero .rotation-stage .rotation-visual{width:min(34vw,calc(100svh - 100px))}.sales-hero .rotation-visual>img,.sales-hero .rotation-visual>canvas{transform:scale(1.4)}}

/* Reserve the larger product's actual footprint so it cannot collide with copy. */
.sales-hero .rotation-stage{height:auto;min-height:calc(100svh - var(--s4-nav));padding-block:34px}
.sales-hero .rotation-stage .rotation-visual{aspect-ratio:1 / 1.3}
@media(max-height:500px) and (min-width:701px){.sales-hero .rotation-stage{height:calc(100svh - var(--s4-nav));padding-block:12px}.sales-hero .rotation-stage .rotation-visual{aspect-ratio:1}}

.sales-hero{overflow:clip}

/* Viewport-fit hero: reserve title + larger CTA, then give the phone the remainder. */
.sales-hero.rotation-page{height:calc(100svh - var(--s4-nav));min-height:0}
.sales-hero .rotation-stage{position:relative;top:auto;display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;gap:10px;padding:20px 5%;justify-items:center;align-items:center;overflow:hidden}
.sales-hero .rotation-stage .turn-headline{grid-column:1;grid-row:1;margin:0;align-self:center}
.sales-hero .rotation-stage #hero-title{display:flex;justify-content:center;align-items:baseline;gap:.24em;font-size:clamp(25px,2.8vw,40px);line-height:1.12;margin:0 auto;white-space:nowrap}
.sales-hero .rotation-stage #hero-title .hero-title-lead,.sales-hero .rotation-stage #hero-role-line{display:inline;min-height:0;font-size:inherit;line-height:inherit;margin:0}
.sales-hero .rotation-stage .rotation-visual{grid-column:1;grid-row:2;align-self:center;width:min(90vw,calc(100svh - var(--s4-nav) - 156px));height:auto;max-height:100%;aspect-ratio:1;min-width:0}
.sales-hero .rotation-visual>img,.sales-hero .rotation-visual>canvas{transform:scale(1.16)}
.sales-hero .closing-order{grid-column:1;grid-row:3;align-self:center;margin:0}
.sales-hero .closing-order #final-preorder{display:inline-flex;align-items:center;justify-content:center;min-height:56px;min-width:210px;padding:15px 32px;font-size:17px;line-height:1.2;border-radius:32px;box-sizing:border-box}
.feature-trilogy .trilogy-canvas-host{mix-blend-mode:multiply}
@media(max-width:700px){
 .sales-hero .rotation-stage{padding:16px 5%;gap:8px}
 .sales-hero .rotation-stage #hero-title{display:block;font-size:clamp(22px,5.8vw,30px);white-space:normal}
 .sales-hero .rotation-stage #hero-role-line{display:block;white-space:nowrap}
 .sales-hero .rotation-stage .rotation-visual{width:min(95vw,calc(100svh - var(--s4-nav) - 176px))}
 .sales-hero .closing-order #final-preorder{min-width:200px;min-height:54px;font-size:16px}
}
@media(max-height:500px) and (min-width:701px){
 .sales-hero .rotation-stage{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:10px 4%;padding:16px 7%}
 .sales-hero .rotation-stage .turn-headline{grid-column:1/-1;grid-row:1}
 .sales-hero .rotation-stage #hero-title{font-size:25px}
 .sales-hero .rotation-stage .rotation-visual{grid-column:1;grid-row:2;width:min(45vw,calc(100svh - var(--s4-nav) - 80px))}
 .sales-hero .closing-order{grid-column:2;grid-row:2}
}

/* Direct purchase action on the final photographic scene. */
#intro .closing-purchase{margin-top:30px}
#intro .closing-purchase-button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;min-width:214px;padding:17px 32px;border-radius:32px;background:#0078ed;color:#fff;text-decoration:none;font-family:inherit;font-size:18px;font-weight:600;line-height:1.2;box-shadow:0 8px 24px #0002;transition:background .15s}
#intro .closing-purchase-button:hover{background:#0069d2}
#intro .closing-purchase-button:focus-visible{outline:3px solid #fff;outline-offset:5px}
@media(max-width:700px){#intro .closing-purchase{margin-top:24px}#intro .closing-purchase-button{min-height:54px;font-size:17px}}

/* Keep the hero purchase action clear of browser controls and safe areas. */
.sales-hero.rotation-page{height:calc(min(100svh,100dvh) - var(--s4-nav))}
.sales-hero .rotation-stage{padding-bottom:max(36px,calc(env(safe-area-inset-bottom,0px) + 20px))}
.sales-hero .rotation-stage .rotation-visual{width:min(90vw,calc(min(100svh,100dvh) - var(--s4-nav) - 192px))}
.sales-hero .closing-order{position:relative;z-index:5;visibility:visible;opacity:1}
@media(max-width:700px){.sales-hero .rotation-stage .rotation-visual{width:min(95vw,calc(min(100svh,100dvh) - var(--s4-nav) - 210px))}}
@media(max-height:500px) and (min-width:701px){.sales-hero .rotation-stage .rotation-visual{width:min(45vw,calc(min(100svh,100dvh) - var(--s4-nav) - 110px))}}
/* No copy or preview waits for a video frame, including stalled Safari autoplay. */
#control.sales-intro .sales-benefits,#control.sales-intro .sales-benefits li{visibility:visible;opacity:1;transform:none;transition:none;transition-delay:0s}
/* Use the available area for activities instead of the inherited horizontal strip. */
#modes #features .feature-tiles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px;overflow:visible;padding:0;max-width:100%;width:100%}
#modes #features .feature-tiles li{min-height:82px;padding:14px 12px;flex:none;width:auto;display:flex;flex-direction:row;justify-content:flex-start;gap:14px;font-size:14px;line-height:1.35;white-space:normal;border-radius:14px}
#modes #features .feature-tiles svg{display:block;flex:none;width:30px;height:30px}
#modes #features .feature-options:after{content:none;display:none}
@media(min-width:601px) and (max-width:900px){#modes #features .feature-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}#modes #features .feature-tiles li{flex-direction:column;justify-content:center;gap:8px}}
@media(min-width:901px) and (max-height:650px){#modes #features .feature-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}#modes #features .feature-tiles li{min-height:80px;padding:10px 4px;flex-direction:column;justify-content:center;gap:8px;font-size:12px}}
@media(max-width:380px){#modes #features .feature-tiles li{font-size:12px;padding:12px 9px;gap:10px}#modes #features .feature-tiles svg{width:26px;height:26px}}
