/* Canva 23, within the shared service typography and spacing system. */
.gl-spa{--spa-accent:#bc936d;--spa-ink:#17263c}
.gl-spa .spa-hero__photo{overflow:hidden;border-radius:28px;background:#e7d3bd;height:clamp(240px,24vw,360px)}
.gl-spa .spa-hero__photo>img{display:block;width:100%;height:100%!important;object-fit:cover;object-position:50% 35%}
.gl-spa .spa-hero__row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;margin-top:32px;align-items:start}
.gl-spa .spa-hero h1{font-size:52px;line-height:1.1;letter-spacing:-.035em;font-weight:400;margin:0;color:var(--spa-ink)}
.gl-spa .spa-hand{font-family:Gogol,Caveat,cursive;font-size:53px;line-height:1.1;color:var(--spa-accent);margin:8px 0 0}
.gl-spa .spa-hand>span{position:relative;display:inline-block;white-space:nowrap}
.gl-spa .spa-hand img{position:absolute;width:20px;height:20px!important;left:50%;top:-.22em;transform:translateX(-50%);object-fit:contain}
.gl-spa .spa-hero__lead{font-size:18px;line-height:1.6;color:#706d68;margin:4px 0 0;max-width:520px}
.gl-spa .spa-hero__actions{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-top:24px}
.gl-spa .spa-hero__actions>strong{font-size:32px;font-weight:500;color:var(--spa-accent);white-space:nowrap}
.gl-spa .v2-btn{display:inline-flex;gap:16px;align-items:center;justify-content:center}
.gl-spa .v2-btn svg{width:20px;height:20px;flex:none}
.gl-spa .spa-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px}
.gl-spa .spa-stats>div{border-top:1px solid #dfcdbb;padding:20px 0 0}
.gl-spa .spa-stats b{display:block;font-size:28px;font-weight:500;line-height:1.2}
.gl-spa .spa-stats span{display:block;font-size:15px;color:#706d68;line-height:1.5;margin-top:6px}
.gl-spa .v2-h2{font-size:36px;line-height:1.2;font-weight:400}
.gl-spa .v2-step{padding:28px;min-width:0}
.gl-spa .v2-step b,.gl-spa .v2-ico b{font-size:20px;line-height:1.3}
.gl-spa .v2-step p,.gl-spa .v2-ico p,.gl-spa .v2-sub,.gl-spa .v2-p1 p{font-size:16px;line-height:1.6}
.gl-spa .v2-sub{margin:0 0 24px!important}
.gl-spa .v2-icos{gap:32px}
.gl-spa .v2-progs{gap:24px}
.gl-spa .v2-prog{display:grid;grid-template-columns:minmax(0,1fr) 140px;column-gap:20px;padding:30px;min-height:350px;border-radius:24px;align-content:start}
.gl-spa .v2-prog>span,.gl-spa .v2-prog>h3,.gl-spa .v2-prog>p{grid-column:1 / -1}
.gl-spa .v2-prog h3{font-size:26px;line-height:1.2;margin-top:8px}
.gl-spa .v2-prog__sub{font-family:inherit;font-size:15px;line-height:1.5;margin-top:10px!important}
.gl-spa .v2-prog__txt{font-size:16px;line-height:1.6;max-width:none;color:#d2d8e1}
.gl-spa .v2-prog ul{grid-column:1;max-width:none;margin-top:20px;gap:7px;align-self:start}
.gl-spa .v2-prog li{font-size:15px;line-height:1.5}
.gl-spa .v2-prog .v2-prog__img{grid-column:2;position:static;width:100%;height:160px!important;max-height:none;object-fit:contain;align-self:end;margin-top:18px}
.gl-spa .v2-work img{aspect-ratio:1/1;object-fit:cover;border-radius:20px}
.gl-spa .v2-p1{border-radius:24px}
.gl-spa .v2-p1 b{font-size:20px;line-height:1.3}
.gl-spa .v2-book h2{font-size:36px;line-height:1.2}
.gl-spa .v2-book__txt{font-size:17px;line-height:1.6;max-width:560px}
.gl-spa .v2-book__media .bk__f{position:absolute!important;inset:24px!important;width:auto!important;height:auto!important;transform:none!important}
.gl-spa .v2-book__media .bk__f img{position:static!important;width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important}
@media(max-width:1000px){.gl-spa .spa-hero h1{font-size:44px}.gl-spa .spa-hand{font-size:46px}.gl-spa .spa-hero__row{gap:28px}.gl-spa .v2-prog{grid-template-columns:minmax(0,1fr) 110px;padding:24px}.gl-spa .v2-prog h3{font-size:23px}}
@media(max-width:700px){.gl-spa .spa-hero__photo{height:auto;aspect-ratio:737/668;border-radius:22px}.gl-spa .spa-hero__photo>img{object-fit:contain}.gl-spa .spa-hero__row{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:24px}.gl-spa .spa-hero h1{font-size:32px}.gl-spa .spa-hand{font-size:38px}.gl-spa .spa-hero__lead{font-size:16px}.gl-spa .spa-hero__actions{gap:20px;margin-top:20px}.gl-spa .spa-hero__actions>strong{font-size:26px}.gl-spa .spa-stats{gap:14px;margin-top:24px}.gl-spa .spa-stats>div{padding-top:14px}.gl-spa .spa-stats b{font-size:20px}.gl-spa .spa-stats span{font-size:13px}.gl-spa .v2-h2{font-size:28px}.gl-spa .v2-step{padding:24px}.gl-spa .v2-icos{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.gl-spa .v2-ico b{font-size:18px}.gl-spa .v2-ico p{font-size:15px}.gl-spa .v2-progs{grid-template-columns:minmax(0,1fr);gap:16px}.gl-spa .v2-prog{min-height:0;grid-template-columns:minmax(0,1fr) 100px;padding:24px}.gl-spa .v2-prog__txt{font-size:15px}.gl-spa .v2-prog li{font-size:14px}.gl-spa .v2-prog .v2-prog__img{height:140px!important}.gl-spa .v2-p1{padding:24px;align-items:start;flex-direction:column;gap:20px}.gl-spa .v2-book h2{font-size:28px}.gl-spa .v2-book__txt{font-size:16px}}
.gl-spa .spa-hero__actions .v2-btn{white-space:nowrap}@media(max-width:700px){.gl-spa .spa-hero__actions .v2-btn{padding:14px 20px;font-size:15px;gap:12px}}

/* SPA detail adjustments: bubbles and program illustrations. */
.gl-spa .spa-hero__lead::after{content:"";display:block;width:min(340px,100%);aspect-ratio:640/220;margin:20px 0 0 auto;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 220' fill='none' stroke='%23c9a584' stroke-width='3.2'%3E%3Ccircle cx='74' cy='84' r='52'/%3E%3Ccircle cx='226' cy='170' r='32'/%3E%3Ccircle cx='406' cy='42' r='24'/%3E%3Ccircle cx='358' cy='174' r='12'/%3E%3Ccircle cx='502' cy='162' r='20'/%3E%3Ccircle cx='608' cy='68' r='16'/%3E%3C/svg%3E") no-repeat center/contain}
.gl-spa .v2-prog:nth-child(-n+3){grid-template-columns:minmax(0,1fr) 200px}
.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{height:220px!important}
.gl-spa .v2-prog:nth-child(4) .v2-prog__img{transform:translateY(30px);object-position:center bottom}
@media(max-width:1000px){.gl-spa .v2-prog:nth-child(-n+3){grid-template-columns:minmax(0,1fr) 150px}.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{height:200px!important}.gl-spa .v2-prog:nth-child(4) .v2-prog__img{transform:translateY(24px)}}
@media(max-width:700px){.gl-spa .spa-hero__lead::after{width:min(260px,100%);margin-top:16px}.gl-spa .v2-prog:nth-child(-n+3){grid-template-columns:minmax(0,1fr) 130px}.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{height:185px!important}}

.gl-spa .v2-prog:nth-child(4) .v2-prog__img{position:absolute;right:30px;bottom:0;width:140px;height:160px!important;margin:0;transform:none;object-position:center bottom}
@media(max-width:1000px){.gl-spa .v2-prog:nth-child(4) .v2-prog__img{right:24px;width:110px}}
@media(max-width:700px){.gl-spa .v2-prog:nth-child(4){padding-bottom:24px;min-height:380px}.gl-spa .v2-prog:nth-child(4) ul{grid-column:1;min-height:160px}.gl-spa .v2-prog:nth-child(4) .v2-prog__img{width:100px;height:140px!important}}
/* Match Canva illustration proportions and bottom alignment. */
.gl-spa .v2-prog:nth-child(n){grid-template-columns:minmax(0,1fr) 34%;align-content:start;min-height:350px;padding-bottom:24px}
.gl-spa .v2-prog:nth-child(n) ul{grid-column:1;min-height:150px}
.gl-spa .v2-prog:nth-child(n) .v2-prog__img{position:absolute;right:12px;bottom:8px;width:32%;height:175px!important;margin:0;transform:none;object-fit:contain;object-position:right bottom}
.gl-spa .v2-prog:nth-child(4) .v2-prog__img{right:12px;bottom:0;width:35%;height:190px!important}
@media(max-width:1000px){.gl-spa .v2-prog:nth-child(n){min-height:370px}.gl-spa .v2-prog:nth-child(n) .v2-prog__img{height:160px!important}.gl-spa .v2-prog:nth-child(4) .v2-prog__img{height:180px!important}}
@media(max-width:700px){.gl-spa .v2-prog:nth-child(n){min-height:350px}.gl-spa .v2-prog:nth-child(n) ul{min-height:160px}.gl-spa .v2-prog:nth-child(n) .v2-prog__img{width:34%;height:165px!important}.gl-spa .v2-prog:nth-child(4) .v2-prog__img{width:36%;height:180px!important}}
.gl-spa .v2-prog:nth-child(n) .v2-prog__img{grid-column:auto;grid-row:auto}.gl-spa .v2-prog:nth-child(n) ul{align-content:start;gap:7px}
/* Larger cosmetics illustrations, keeping the approved program 04 unchanged. */
.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{width:38%;height:260px!important;right:12px;bottom:8px}
.gl-spa .v2-prog:nth-child(-n+3) ul{max-width:88%;min-height:220px}
@media(max-width:1000px){.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{height:230px!important}.gl-spa .v2-prog:nth-child(-n+3) ul{min-height:200px}}
@media(max-width:700px){.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{width:38%;height:215px!important}.gl-spa .v2-prog:nth-child(-n+3) ul{min-height:205px}}
.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{right:32px}@media(max-width:700px){.gl-spa .v2-prog:nth-child(-n+3) .v2-prog__img{right:24px}}

/* Canva 24: three cat programs, with the final program spanning the row. */
.gl-spa--cat .v2-prog:nth-child(3){grid-column:1/-1;min-height:320px;grid-template-columns:minmax(0,1fr) 30%}
.gl-spa--cat .v2-prog:nth-child(3)>p{max-width:68%}
.gl-spa--cat .v2-prog:nth-child(3) ul{min-height:120px;max-width:100%}
.gl-spa--cat .v2-prog:nth-child(3) .v2-prog__img{right:32px;bottom:0;width:28%;height:285px!important;object-position:center bottom}
.gl-spa--cat .spa-hero__photo>img{object-position:center 48%}
@media(max-width:700px){.gl-spa--cat .spa-hero__photo{aspect-ratio:3/2}.gl-spa--cat .v2-prog:nth-child(3){min-height:410px;grid-template-columns:minmax(0,1fr) 34%}.gl-spa--cat .v2-prog:nth-child(3)>p{max-width:none}.gl-spa--cat .v2-prog:nth-child(3) ul{min-height:180px}.gl-spa--cat .v2-prog:nth-child(3) .v2-prog__img{right:16px;width:38%;height:215px!important}}
