/* ---------- home: the free chart, advertised ---------- */
.l-hero{align-items:center;padding-bottom:84px}
@media (min-width:901px){.l-hero{grid-template-columns:minmax(0,1fr) minmax(0,620px)}}
.l-hero .lead{max-width:34em}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px;margin-top:6px}
.specs{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:14px 38px;margin:44px 0 0;padding:22px 0 0;border-top:1px solid rgba(31,42,68,.12);list-style:none}
.specs b{display:block;font:300 42px/1 var(--serif);color:var(--navy);font-variant-numeric:tabular-nums}
.specs span{display:block;margin-top:8px;font-size:14px;color:var(--navy-soft)}
.l-hero .mine{margin-top:26px}
.ex{margin:0;position:relative}
.ex .wheel-wrap{background:#FBFAF6;border:1px solid rgba(184,149,90,.35);border-radius:6px;padding:10px;box-shadow:0 30px 60px -30px rgba(31,42,68,.35)}
.ex figcaption{margin-top:12px;font-size:13px;letter-spacing:.06em;color:var(--navy-soft);text-align:center}
.wheel{display:block;width:100%;height:auto;aspect-ratio:1}
.wheel text{font-family:var(--sans)}
.wheel .gl{font-family:var(--sym)}
.wheel .asp.minor{stroke-dasharray:4 3}
.wheel.no-minor .asp.minor{opacity:0}
.wheel.no-sb .sb{opacity:0}
.eyebrow{font:500 13px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);margin:0 0 14px}
.l-sec{padding-block:96px;padding-inline:max(28px,calc((100% - 1264px)/2))}
.l-head{max-width:760px;margin-bottom:44px}
.l-head h2,.acc h2,.l-post h2,.l-end h2{font-size:clamp(32px,3.6vw,50px);line-height:.98;color:var(--navy);text-transform:uppercase;letter-spacing:.01em}
.l-two h3{font-size:clamp(24px,2.4vw,32px);line-height:1.1;color:var(--navy)}
.l-head p.lead2{font-size:18px;line-height:1.55;color:var(--navy-soft);margin:16px 0 0;max-width:36em}
.sheets{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}
.sheet{margin:0;background:#FBFAF6;border:1px solid rgba(184,149,90,.35);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:translate .35s var(--ease),box-shadow .35s var(--ease)}
.sheet:hover{translate:0 -4px;box-shadow:0 24px 40px -26px rgba(31,42,68,.45)}
.sheet .shot{position:relative;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid rgba(184,149,90,.3);background:var(--paper)}
.sheet .shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left top;transition:scale .6s var(--ease)}
.sheet:hover .shot img{scale:1.03}
.sheet figcaption{padding:22px 24px 26px}
.sheet h3{font-size:21px;line-height:1.2;color:var(--navy);margin-bottom:8px}
.sheet p{margin:0;font-size:16px;line-height:1.55;color:var(--navy-soft)}
.sheet.wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.sheet.wide .shot{aspect-ratio:auto;min-height:340px;border-bottom:0;border-right:1px solid rgba(184,149,90,.3)}
.sheet.wide figcaption{align-self:center;padding:34px}
.sheet.wide h3{font-size:26px}
.sheet.half{grid-column:span 6}
.pdfline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 30px;margin-top:34px;padding-top:26px;border-top:1px solid rgba(31,42,68,.12)}
.pdfline p{margin:0;font-size:17px;color:var(--navy);max-width:40em}
.acc{background:var(--navy);color:#DCE1EA;padding-block:88px;padding-inline:max(28px,calc((100% - 1264px)/2))}
.acc-in{display:grid;grid-template-columns:auto minmax(0,1fr);gap:40px 80px;align-items:center}
.acc .big b{display:block;font:300 clamp(96px,13vw,190px)/.9 var(--serif);color:#F3EFE6;font-variant-numeric:tabular-nums}
.acc .big span{display:block;margin-top:14px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#E0BD78}
.acc h2{color:#F3EFE6;margin-bottom:16px}
.acc p{font-size:18px;line-height:1.6;margin:0 0 22px;max-width:36em}
.acc table{border-collapse:collapse;margin:0 0 26px;font-variant-numeric:tabular-nums}
.acc td{padding:9px 28px 9px 0;border-bottom:1px solid rgba(220,225,234,.14);font-size:16px}
.acc td+td{color:#F3EFE6;text-align:right;font-family:var(--serif);font-weight:300}
.l-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.l-two article{padding:34px;border:1px solid rgba(31,42,68,.14);border-radius:6px;background:rgba(255,255,255,.45);display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.l-two h3{font-size:clamp(24px,2.4vw,32px)}
.l-two p{margin:0;font-size:17px;line-height:1.55;color:var(--navy-soft);max-width:30em}
.l-two svg.mini{width:120px;height:120px;margin-bottom:6px}
.l-post{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:56px;align-items:center}
.l-post .lead2{font-size:18px;line-height:1.55;color:var(--navy-soft);margin:16px 0 26px}
.prices{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:0}
.prices li{display:grid;grid-template-columns:90px 1fr;gap:18px;align-items:baseline;padding:14px 0;border-bottom:1px solid rgba(31,42,68,.12)}
.prices b{font:300 30px var(--serif);color:var(--navy);font-variant-numeric:tabular-nums}
.prices span{font-size:16px;color:var(--navy-soft);line-height:1.45}
.prices span strong{display:block;color:var(--navy);font-weight:500}
.trio3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end}
.trio3 .pz{aspect-ratio:600/849;border-radius:3px;overflow:hidden;box-shadow:0 22px 40px -22px rgba(31,42,68,.55);transition:translate .35s var(--ease)}
.trio3 .pz:nth-child(2){translate:0 -28px}
.trio3 .pz:hover{translate:0 -6px}.trio3 .pz:nth-child(2):hover{translate:0 -34px}
.trio3 .pz svg{display:block;width:100%;height:100%}
.l-end{text-align:center;padding-block:100px 110px}
.l-end h2{margin:0 auto 14px;max-width:18em}
.l-end p{margin:0 auto 30px;font-size:18px;color:var(--navy-soft);max-width:34em}
@media (max-width:900px){
  .l-hero{padding-bottom:64px}
  .ex{max-width:520px;width:100%;justify-self:center}
  .specs{grid-template-columns:repeat(2,auto);gap:22px 40px}
  .sheet.wide{grid-template-columns:1fr}.sheet.wide .shot{min-height:0;aspect-ratio:16/10;border-right:0;border-bottom:1px solid rgba(184,149,90,.3)}
  .sheet.half{grid-column:1/-1}
  .acc-in{grid-template-columns:1fr}
  .l-two{grid-template-columns:1fr}
  .l-post{grid-template-columns:1fr;gap:40px}
  .l-sec{padding-block:72px}
}
@media (max-width:520px){
  .l-sec,.acc{padding-inline:16px}
  .l-two article{padding:26px 22px}
  .sheet figcaption,.sheet.wide figcaption{padding:20px}
  .trio3{gap:10px}.trio3 .pz:nth-child(2){translate:0 -16px}
  .prices li{grid-template-columns:70px 1fr}
  .acc td{padding-right:16px}
}
/* ---------- posters: the sales page ---------- */
.p-stage{margin:0;justify-self:center;width:100%;max-width:470px}
.p-stage .pz{aspect-ratio:600/849;border-radius:3px;overflow:hidden;box-shadow:0 34px 60px -30px rgba(31,42,68,.6)}
.p-stage .pz svg{display:block;width:100%;height:100%}
.p-stage figcaption{margin-top:14px;font-size:13px;letter-spacing:.06em;color:var(--navy-soft);text-align:center}
.swatches{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.swatch{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 16px 0 10px;border-radius:999px;border:1px solid rgba(31,42,68,.16);background:rgba(255,255,255,.5);font:400 15px var(--sans);color:var(--navy);cursor:pointer;transition:border-color .15s,background .15s,scale .12s}
.swatch i{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.swatch:hover{border-color:rgba(31,42,68,.4)}.swatch:active{scale:.96}
.swatch[aria-pressed=true]{border-color:var(--navy);background:#fff}
.offers{display:grid;gap:28px}
.offer{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);background:#FBFAF6;border:1px solid rgba(184,149,90,.35);border-radius:6px;overflow:hidden}
.offer .pic{position:relative;min-height:360px;background:#E8E4DC;overflow:hidden;border-right:1px solid rgba(184,149,90,.3)}
.offer .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:scale .7s var(--ease)}
.offer:hover .pic img{scale:1.03}
.offer .pic.solo{display:grid;place-items:center;padding:34px;background:#E8E4DC}
.offer .pic.solo .pz{width:min(250px,60%);aspect-ratio:600/849;box-shadow:0 24px 40px -22px rgba(31,42,68,.55);border-radius:2px;overflow:hidden;transition:translate .35s var(--ease)}
.offer:hover .pic.solo .pz{translate:0 -6px}
.offer .pic.solo .pz svg{display:block;width:100%;height:100%}
.offer .txt{padding:36px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;justify-content:center}
.offer h3{font-size:clamp(24px,2.4vw,32px);line-height:1.1;color:var(--navy)}
.offer .price{font:300 44px/1 var(--serif);color:var(--navy);font-variant-numeric:tabular-nums}
.offer .price small{font:400 14px var(--sans);color:var(--navy-soft);margin-left:8px;letter-spacing:0}
.offer p{margin:0;font-size:17px;line-height:1.55;color:var(--navy-soft)}
.offer ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.offer li{font-size:15px;color:var(--navy);padding-left:18px;position:relative}
.offer li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.offer .alt{font-size:15px;color:var(--navy-soft)}
.gets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid rgba(31,42,68,.14)}
.gets div{padding:26px 26px 0 0}
.gets b{display:block;font:500 13px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:10px}
.gets span{font-size:17px;line-height:1.5;color:var(--navy)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;counter-reset:s}
.steps li{counter-increment:s;padding-top:22px;border-top:1.5px solid var(--navy)}
.steps li::before{content:counter(s);display:block;font:300 44px/1 var(--serif);color:var(--red);margin-bottom:16px}
.steps h3{font-size:21px;color:var(--navy);margin-bottom:8px}
.steps p{margin:0;font-size:16px;line-height:1.55;color:var(--navy-soft)}
@media (max-width:900px){
  .offer{grid-template-columns:1fr}.offer .pic{min-height:0;aspect-ratio:16/10;border-right:0;border-bottom:1px solid rgba(184,149,90,.3)}
  .offer .pic.solo{aspect-ratio:auto}
  .gets{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr}
}
@media (max-width:520px){.offer .txt{padding:24px 20px}.gets{grid-template-columns:1fr}}
