/* Scoped to tutorial and checkout pages. */
.yt-page{max-width:1120px!important;padding:clamp(28px,5vw,64px) clamp(20px,4vw,48px) 64px!important}
.yt-heading{max-width:680px;margin-bottom:36px}.yt-page h1{font-size:clamp(2.3rem,5vw,3.8rem)!important;line-height:1.08!important;letter-spacing:-.045em!important}
.yt-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
.yt-card{border:1px solid #cfc5b4!important;border-radius:16px!important;box-shadow:0 8px 32px #12211e05}
.yt-copy{padding:clamp(24px,3vw,36px)!important}.yt-page .yt-level{color:#59615a!important;letter-spacing:.08em!important;font-size:.72rem!important;text-transform:uppercase}
.yt-page .yt-description{line-height:1.75!important}.yt-detail{border-top:1px solid #ded7cb;padding-top:20px!important}
.yt-page .yt-button{background:#12211e!important;color:#f3efe6!important;min-height:50px!important;border-radius:9px!important;transition:background .18s,transform .18s}
.yt-page .yt-button:hover{background:#283b33!important;transform:translateY(-1px)}
.yt-page .yt-how{margin-top:36px;padding-top:24px;border-top:1px solid #ded7cb;line-height:1.7;color:#59615a}
.yc-checkout{width:min(760px,100%);margin:auto;padding:48px 24px 72px;color:#12211e;box-sizing:border-box}
.yc-checkout h1{font-size:clamp(2rem,5vw,3rem);line-height:1.1;letter-spacing:-.035em;margin:12px 0 20px}
.yc-checkout p{line-height:1.7}.yc-checkout .eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
.yc-checkout form{display:grid;gap:20px}.yc-checkout .yc-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.yc-checkout label{display:grid;gap:8px;font:500 .95rem/1.5 system-ui}
.yc-checkout input,.yc-checkout select,.yc-checkout textarea{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #a9ad9f;border-radius:8px;padding:12px;background:#fffdf8;color:#12211e;font:inherit}
.yc-checkout .yc-consent{display:flex;align-items:flex-start;gap:10px}.yc-checkout input[type=checkbox]{width:20px;height:20px;min-height:20px;flex-shrink:0;margin-top:2px}
.yc-checkout button,.yc-checkout .yc-action{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;background:#12211e;color:#f3efe6;border:0;border-radius:8px;font:600 1rem/1.4 system-ui;text-decoration:none;cursor:pointer;box-sizing:border-box}
.yc-checkout button:disabled{opacity:.5;cursor:wait}.yc-checkout .yc-summary{border:1px solid #d2c6b0;padding:20px;border-radius:12px;line-height:1.7;margin:20px 0}.yc-checkout #yc-message{white-space:pre-line}.yc-checkout a:not(.yc-action){text-decoration:underline}.yc-checkout [hidden]{display:none!important}
.yc-checkout :focus-visible{outline:3px solid #bba477;outline-offset:3px}
@media(max-width:640px){.yt-grid{grid-template-columns:1fr!important;gap:20px!important}.yc-checkout .yc-fields{grid-template-columns:1fr}.yc-checkout{padding-top:28px}.yt-heading{margin-bottom:26px}}
@media(prefers-reduced-motion:reduce){.yt-page .yt-button{transition:none;transform:none!important}}
.product-page{max-width:1120px!important;margin:auto!important;padding:clamp(28px,5vw,64px) clamp(20px,4vw,48px)!important}
.product-page h1{font-size:clamp(2.2rem,5vw,3.8rem)!important;letter-spacing:-.04em!important;line-height:1.12!important}
.product-page .product-summary{border-top:1px solid #d2c6b0;border-bottom:1px solid #d2c6b0;padding-block:24px;margin-block:32px}
.product-page .calendar-section,.product-page .product-outline,.product-page .product-purchase{margin-top:40px!important}
.product-page .editions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.product-page .editions-grid li{margin-block:8px}.product-page .editions-grid .yt-button{margin-top:20px}
@media(max-width:640px){.product-page .product-summary{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important}.product-page .product-purchase{display:block!important}.product-page .product-purchase>div+div{margin-top:20px}}

.yc-checkout fieldset{min-width:0;border:1px solid #d2c6b0;border-radius:12px;padding:24px;display:grid;gap:20px}.yc-checkout legend{padding:0 8px;font-weight:600}.yc-checkout h2{font-size:1.2rem}.yc-checkout input[type=file]{max-width:100%;font-size:.85rem}
