/* Journey map inspired by the app's own progress and activity screen. */
.journey-app-section{padding:42px 0;background:#f7fafc;border-block:1px solid #e3ebf3}
.journey-app-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.6fr);grid-template-areas:'copy preview' 'action preview';column-gap:42px;row-gap:24px;align-items:center}
.journey-app-copy{grid-area:copy;align-self:end;padding-top:12px}
.journey-app-copy .small-label{color:#6381a1;margin-bottom:18px}
.campaign-page .journey-app-copy h2{font-size:42px;line-height:1.07;letter-spacing:-.035em}
.journey-app-copy h2 span{color:#2e79ac}
.journey-app-copy p{font-size:18px;line-height:1.5;color:#657e99;max-width:32ch;margin:20px 0}
.journey-app-values{display:flex;flex-wrap:wrap;gap:7px 15px;color:#6b839b;font-size:12px}
.journey-app-values span:before{content:'✓';color:#79ad9b;margin-right:5px}
.journey-app-action{grid-area:action;align-self:start;display:flex;align-items:flex-start;flex-direction:column;gap:12px;padding-bottom:12px}
.journey-app-action .btn-cta{font-size:16px;padding:14px 19px;gap:20px;white-space:nowrap}
.journey-app-action>span{font-size:13px;color:#8294a7}
.journey-app-preview{grid-area:preview;position:relative;isolation:isolate;overflow:hidden;border:1px solid #fff;border-radius:26px;padding:23px 24px 0;box-shadow:0 12px 30px #48667d10,0 0 0 1px #dfE8f0;background:#fff0e3}
.journey-scenery{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.journey-app-progress{margin-bottom:20px}
.journey-app-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:11px}
.journey-app-progress strong{font-size:18px;line-height:1.2;color:#334359;font-weight:650}
.journey-app-progress>div>span{font-size:12px;font-weight:600;color:#8296b0;white-space:nowrap}
.journey-app-progress__track{height:6px;background:#dbe4ef;border-radius:99px;overflow:hidden}
.journey-app-progress__track>span{display:block;width:35.714%;height:100%;background:#748ebf;border-radius:99px}
.journey-today{position:relative;display:flex;align-items:center;gap:14px;max-width:490px;margin:0 auto;color:#fff;padding:17px 19px;border-radius:19px;background:linear-gradient(115deg,#ff8967 8%,#ffb49b 70%,#fac9b7);box-shadow:0 5px 0 #d9938038,0 12px 24px #ce826b2a;isolation:isolate;overflow:hidden}
.journey-today:after{content:'';position:absolute;width:60%;height:110px;right:-25px;bottom:-68px;border-radius:55% 0 0 0;transform:rotate(-12deg);background:#c87e7115;z-index:-1;box-shadow:-55px -12px 0 #d88e7712}
.journey-today__icon{width:49px;height:49px;flex-shrink:0;display:grid;place-items:center;border:3px solid #ffeae1;border-radius:50%;background:linear-gradient(#ffd8c8,#dc9d8b);box-shadow:0 4px 0 #b7776940,0 6px 8px #ad62522b}
.journey-today>div{display:flex;flex:1;flex-direction:column;gap:6px}
.journey-today>div>span{font-size:10px;letter-spacing:.11em;font-weight:650}
.journey-today strong{font-size:23px;line-height:1.1;font-weight:650}
.journey-today>b{font-size:17px;font-weight:600}
.journey-app-map{position:relative;height:265px;margin:7px -10px 0}
.journey-route{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.journey-route path{fill:none;stroke:#d9e3ee;stroke-width:12;stroke-linecap:round;stroke-linejoin:round}
.journey-route--narrow{display:none}
.journey-app-steps{list-style:none;margin:0;padding:0;position:absolute;inset:0}
.journey-app-preview .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.journey-app-step{position:absolute;top:34px;width:20%;left:0;text-align:center;display:flex;flex-direction:column;align-items:center}
.journey-app-step a{display:flex;flex-direction:column;align-items:center;color:inherit;text-decoration:none;width:100%}
.journey-app-step a:focus-visible{outline:2px solid #3b779f;outline-offset:8px;border-radius:15px}
.journey-app-step--listen{left:20%;top:114px}
.journey-app-step--current{left:40%}
.journey-app-step--day6{left:60%;top:114px}
.journey-app-step--day7{left:80%}
.journey-orb{position:relative;width:67px;height:67px;display:grid;place-items:center;border-radius:50%;border:5px solid #c9efde;flex-shrink:0;background:radial-gradient(circle at 28% 20%,#b7e9d4,#81cab0);box-shadow:0 5px 0 #64b59d,0 8px 13px #4a98712b,inset 0 2px 4px #ffffff75;color:#fff;transition:transform .2s}
.journey-app-step a:hover .journey-orb{transform:translateY(-3px)}
.journey-orb>iconify-icon{filter:drop-shadow(0 2px 1px #46897030)}
.journey-check{position:absolute;display:grid;place-items:center;width:25px;height:25px;right:-10px;top:-9px;background:#009f80;border:3px solid white;border-radius:50%;font-size:16px;font-weight:700;box-shadow:0 0 0 1px #ade2d4}
.journey-app-step--current .journey-orb{background:radial-gradient(circle at 26% 20%,#ffd3c2,#ff9f86);border-color:#ffe7db;box-shadow:0 5px 0 #ee8c72,0 0 0 7px #fff8efb5,0 0 0 13px #ffd3bc87,0 8px 14px #dd9d7640}
.journey-app-step--current .journey-orb>iconify-icon{filter:drop-shadow(0 2px 1px #bf7c6840)}
.journey-app-step--locked .journey-orb{width:59px;height:59px;margin-top:4px;background:radial-gradient(circle at 25% 15%,#dcd1f4,#b4a2da);border-color:#eae3f8;box-shadow:0 5px 0 #a492ca,0 8px 13px #917fac25;color:#f8f5ff}
.journey-step-copy{display:flex;flex-direction:column;gap:4px;margin-top:15px;padding-inline:5px}
.journey-step-copy strong{color:#687d8f;font-size:18px;line-height:1.1;font-weight:650}
.journey-step-copy>span{font-size:12px;line-height:1.35;color:#6e88a2;max-width:125px}
.journey-app-step--current .journey-step-copy strong{color:#ec7e5f}
.journey-app-step--locked .journey-step-copy strong{color:#6a7f9e;font-size:12px;letter-spacing:.05em;text-transform:uppercase;background:#f6f8fcd9;border:1px solid #cedce9;border-radius:30px;padding:4px 12px;align-self:center;margin-top:-1px}
.guarantee-layout{grid-template-columns:minmax(0,1fr) 170px minmax(0,1fr);gap:22px}
.guarantee-layout>.guarantee-stamp{position:relative;left:auto;top:auto;width:170px;height:170px;justify-self:center;align-self:end;margin:0 0 78px;transform:rotate(-7deg)}
.guarantee-layout>.guarantee-stamp strong{font-size:74px;margin-top:7px}
.guarantee-layout>.guarantee-stamp .guarantee-stamp__top{font-size:9px}
.guarantee-layout>.guarantee-stamp .guarantee-stamp__days{font-size:22px}
.guarantee-layout>.guarantee-stamp .guarantee-stamp__bottom{font-size:10px;margin-top:6px}
.guarantee-copy h2{font-size:42px}.guarantee-copy>p{font-size:17px}
.guarantee-copy .guarantee-actions{display:block}
.guarantee-layout .guarantee-phone--lessons{left:0;top:130px;width:165px}
.guarantee-layout .guarantee-phone--home{right:0;width:214px;top:32px}
.guarantee-layout .guarantee-visual .hand-note{left:0;bottom:2px;font-size:17px}
.community-strip{border-top:1px solid #e3edf6}
@media(max-width:1100px){
 .journey-app-layout{column-gap:27px;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr)}
 .campaign-page .journey-app-copy h2{font-size:37px}.journey-app-copy p{font-size:17px}.journey-app-action .btn-cta{font-size:14px;padding:13px 16px;gap:13px}
 .journey-app-preview{padding:20px 18px 0}.journey-today strong{font-size:21px}.journey-today>div>span{font-size:9px}.journey-orb{width:60px;height:60px}.journey-app-step--locked .journey-orb{width:54px;height:54px}.journey-step-copy strong{font-size:16px}.journey-step-copy>span{font-size:11px}.journey-app-map{height:255px}
 .guarantee-layout{grid-template-columns:minmax(0,1fr) 150px minmax(0,.9fr);gap:18px}
 .guarantee-layout>.guarantee-stamp{width:150px;height:150px;margin-bottom:98px}.guarantee-layout>.guarantee-stamp strong{font-size:62px}.guarantee-layout>.guarantee-stamp .guarantee-stamp__top{font-size:8px}
 .guarantee-copy h2{font-size:36px}.guarantee-copy>p{font-size:16px}.guarantee-layout .guarantee-phone--home{width:174px;top:64px}.guarantee-layout .guarantee-phone--lessons{width:136px;top:161px}.guarantee-layout .guarantee-visual .hand-note{font-size:15px;bottom:30px}
}
@media(max-width:850px){
 .journey-app-layout{grid-template-columns:1fr;grid-template-areas:'copy' 'preview' 'action';gap:25px;max-width:690px}
 .journey-app-copy{padding-top:0;text-align:center}.campaign-page .journey-app-copy h2{font-size:37px}.journey-app-copy p{max-width:44ch;margin:16px auto}.journey-app-values{justify-content:center}.journey-app-action{align-items:center;padding-bottom:0;gap:10px}.journey-app-action .btn-cta{font-size:16px;padding:14px 22px}
 .journey-app-preview{width:100%}.journey-app-map{height:250px}.journey-app-progress strong{font-size:18px}
 .guarantee-layout{grid-template-columns:1fr 1fr;gap:28px;grid-template-areas:'copy phones' 'stamp phones'}
 .guarantee-copy{grid-area:copy}.guarantee-layout>.guarantee-stamp{grid-area:stamp;align-self:start;width:166px;height:166px;margin:0}.guarantee-layout>.guarantee-stamp strong{font-size:71px}.guarantee-layout>.guarantee-stamp .guarantee-stamp__top{font-size:9px}.guarantee-layout .guarantee-visual{grid-area:phones}.guarantee-layout .guarantee-phone--home{width:185px;top:50px}.guarantee-layout .guarantee-phone--lessons{width:149px;top:158px}
}
@media(max-width:650px){
 .journey-app-section{padding:30px 0}.journey-app-layout{gap:22px}.journey-app-copy{text-align:left}.campaign-page .journey-app-copy h2{font-size:34px}.journey-app-copy .small-label{margin-bottom:14px}.journey-app-copy p{font-size:16px;margin:15px 0;max-width:37ch}.journey-app-values{justify-content:flex-start;font-size:11px;gap:7px 12px}
 .journey-app-preview{padding:18px 12px 0;border-radius:22px}.journey-app-progress{margin:0 5px 16px}.journey-app-progress strong{font-size:16px}.journey-app-progress>div>span{font-size:11px}
 .journey-today{padding:13px 12px;gap:10px;border-radius:16px}.journey-today__icon{width:41px;height:41px}.journey-today strong{font-size:20px}.journey-today>div>span{font-size:8px;letter-spacing:.06em}.journey-today>b{font-size:14px}
 .journey-app-map{height:365px;max-width:340px;margin:5px auto 0}.journey-route--wide{display:none}.journey-route--narrow{display:block}.journey-route path{stroke-width:10}
 .journey-app-step{width:100%;left:0;top:20px;align-items:stretch;text-align:left}.journey-app-step a{flex-direction:row;gap:17px;align-items:center;justify-content:flex-end;padding-right:26.5%}
 .journey-orb{width:62px;height:62px;border-width:5px}.journey-app-step--register .journey-orb,.journey-app-step--current .journey-orb{order:2}.journey-step-copy{margin:0;padding:0;width:132px;flex-shrink:0;gap:5px}.journey-step-copy strong{font-size:20px}.journey-step-copy>span{font-size:13px;line-height:1.35;max-width:132px}
 .journey-app-step--listen{top:101px}.journey-app-step--listen a{justify-content:flex-start;padding:0 0 0 16.2%}.journey-app-step--current{top:183px}
 .journey-app-step--locked{width:30%;top:284px;align-items:center;text-align:center}.journey-app-step--day6{left:24%}.journey-app-step--day7{left:66%}.journey-app-step--locked .journey-orb{width:49px;height:49px;margin:0}.journey-app-step--locked .journey-orb iconify-icon{font-size:24px}.journey-app-step--locked .journey-step-copy{margin-top:9px;width:auto}.journey-app-step--locked .journey-step-copy>span{display:none}.journey-app-step--locked .journey-step-copy strong{font-size:10px;padding:3px 10px}
 .journey-app-action{align-items:stretch}.journey-app-action .btn-cta{font-size:16px;justify-content:center;padding:14px;white-space:normal}.journey-app-action>span{text-align:center;font-size:12px}
 .guarantee-layout{grid-template-columns:1fr;grid-template-areas:'copy' 'stamp' 'phones';gap:25px}
 .guarantee-layout>.guarantee-stamp{width:182px;height:182px;margin:6px 0 0}.guarantee-layout>.guarantee-stamp strong{font-size:79px}.guarantee-layout>.guarantee-stamp .guarantee-stamp__top{font-size:10px}.guarantee-layout>.guarantee-stamp .guarantee-stamp__days{font-size:23px}.guarantee-layout>.guarantee-stamp .guarantee-stamp__bottom{font-size:11px;margin-top:6px}
 .guarantee-layout .guarantee-visual{margin-top:0;height:450px}.guarantee-layout .guarantee-phone--home{width:196px;right:8px;top:15px}.guarantee-layout .guarantee-phone--lessons{width:160px;left:22px;top:97px}.guarantee-layout .guarantee-visual .hand-note{font-size:16px;bottom:-13px}.guarantee-copy .guarantee-actions .btn-cta{font-size:16px;padding:15px;width:100%}
}
@media(prefers-reduced-motion:reduce){.journey-orb{transition:none}}

/* Satin rim and restrained typography for the seven-day guarantee seal. */
.guarantee-layout>.guarantee-stamp--premium{--seal-size:170px;width:var(--seal-size);height:var(--seal-size);padding:16px;border:5px solid transparent;outline:0;isolation:isolate;background:radial-gradient(ellipse at 30% 15%,#395a7b 0%,#1c3a5b 48%,#102641 100%) padding-box,conic-gradient(from 25deg,#b99872,#fae8cd 18%,#a98760 38%,#e8d0af 55%,#fff0d8 74%,#b99872) border-box;box-shadow:0 18px 28px -16px #10264180,0 3px 8px #1026411a,inset 0 1px 1px #ffffff30;transform:rotate(-4deg)}
.guarantee-stamp--premium::before{content:'';position:absolute;inset:5px;border:1px solid #dbc3a171;border-radius:50%;pointer-events:none}
.guarantee-stamp--premium::after{content:'';position:absolute;inset:9px;border:1px solid #ffffff10;border-radius:50%;pointer-events:none}
.guarantee-stamp__icon{width:calc(var(--seal-size)*.12);height:calc(var(--seal-size)*.12);flex-shrink:0;stroke:#e9cfac;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;margin-bottom:4px}
.guarantee-layout>.guarantee-stamp--premium strong{font-family:'Lora',serif;font-size:calc(var(--seal-size)*.38);line-height:.94;font-weight:500;letter-spacing:-.06em;margin:0 4px 1px 0;color:#f4dfc4;text-shadow:0 2px 2px #071a3040}
.guarantee-layout>.guarantee-stamp--premium .guarantee-stamp__days{font-size:calc(var(--seal-size)*.085);font-weight:600;letter-spacing:.19em;line-height:1.2;color:#f9f5ef;margin-left:3px}
.guarantee-layout>.guarantee-stamp--premium .guarantee-stamp__bottom{font-size:calc(var(--seal-size)*.059);line-height:1.2;letter-spacing:.015em;color:#d1dde8;margin-top:6px}
@media(max-width:1100px){.guarantee-layout>.guarantee-stamp--premium{--seal-size:150px;padding:12px}}
@media(max-width:850px){.guarantee-layout>.guarantee-stamp--premium{--seal-size:166px}}
@media(max-width:650px){.guarantee-layout>.guarantee-stamp--premium{--seal-size:182px;padding:18px}}
