@media screen and (min-width:768px){
    
    
    *{box-sizing:border-box}
    html{min-width:320px;background:#f5f5f5;scroll-behavior:smooth}
    body{min-width:320px;margin:0;background:#f5f5f5;color:#2e312d;font-family:'iransans',Tahoma,sans-serif;-webkit-font-smoothing:antialiased}
    body.modal-is-open{overflow:hidden}
    .course-mobile-page{width:100%;overflow:hidden}
    .course-section{display:block;width:100%;overflow:hidden}
    .course-section + .course-section{border-top:1px solid rgba(46,49,45,.065)}
    #course-intro{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.74);
        --line: rgba(46, 49, 45, 0.11);
        --soft-shadow: 0 18px 45px rgba(67, 72, 62, 0.055),
          0 3px 10px rgba(67, 72, 62, 0.035);
      }#course-intro *{
        box-sizing: border-box;
      }#course-intro{
        background: var(--canvas);
      }#course-intro{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          radial-gradient(
            30rem at 85% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-intro .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-intro,#course-intro{
        background: #ffffff;
        background-image: none;
        background-attachment: initial;
      }#course-intro .course-hero{
        display: contents;
      }#course-intro .breadcrumb{
        display: flex;
        align-items: center;
        gap: 8px;
        min-height: 28px;
        margin: 0 2px 18px;
        color: rgba(46, 49, 45, 0.58);
        font-size: 11px;
        font-weight: 500;
        line-height: 1.8;
        white-space: nowrap;
      }#course-intro .breadcrumb a{
        color: inherit;
        text-decoration: none;
      }#course-intro .breadcrumb a:last-of-type{
        color: var(--secondary);
      }#course-intro .breadcrumb-separator{
        color: rgba(46, 49, 45, 0.28);
        font-size: 14px;
      }#course-intro .page-title{
        display: block;
        width: 100%;
        max-width: none;
        align-self: stretch;
        margin: 2px 0 0;
        padding: 0 10px;
        color: var(--primary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.32rem, 6.2vw, 3.4rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.36;
        text-align: right;
      }#course-intro .title-description{
        width: 100%;
        margin: -4px 0 0;
        color: rgba(46, 49, 45, 0.68);
        font-size: clamp(0.78rem, 3.3vw, 1rem);
        line-height: 2;
        text-align: right;
      }#course-intro .course-purchase{
        display: grid;
        gap: 12px;
        width: 100%;
        margin-top: 2px;
        padding: 14px 10px 0;
        border-top: 1px solid rgba(46, 49, 45, 0.1);
      }#course-intro .course-prices{
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
      }#course-intro .course-price-old{
        color: rgba(46, 49, 45, 0.48);
        font-size: 0.78rem;
        text-decoration: line-through;
        white-space: nowrap;
      }#course-intro .course-price-current{
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.18rem, 5vw, 1.52rem);
        font-weight: 800;
        white-space: nowrap;
      }#course-intro .course-price-current small{
        margin-right: 4px;
        font-family: 'iransans', Tahoma, sans-serif;
        font-size: 0.62em;
        font-weight: 600;
      }#course-intro .course-price-head{
        display: none;
      }#course-intro .add-to-cart{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        width: 100%;
        border: 0;
        border-radius: 14px;
        color: #fff;
        background: var(--secondary);
        box-shadow: 0 9px 20px rgba(87, 107, 80, 0.16);
        cursor: pointer;
        font: 700 0.92rem/1.5 'iransans', Tahoma, sans-serif;
        transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
      }@media (max-width: 639px){#course-intro .course-hero{
          display: block;
          margin: -40px -16px 0;
          padding: 26px 16px 30px;
          background: transparent;
        }#course-intro .breadcrumb{
          margin-bottom: 24px;
          overflow: visible;
        }#course-intro .page-title{
          padding: 0 10px;
          font-size: clamp(1.18rem, 5.7vw, 2.15rem);
        }#course-intro .title-description{
          margin-top: 2px;
          color: rgba(46, 49, 45, 0.72);
          font-size: clamp(0.9rem, 3.8vw, 1rem);
          line-height: 2.05;
          text-align: justify;
          text-align-last: right;
        }#course-intro .course-purchase{
          gap: 12px;
          margin-top: 10px;
          padding: 14px;
          border: 1px solid rgba(87, 107, 80, 0.14);
          border-radius: 16px;
          background: rgba(87, 107, 80, 0.035);
          box-shadow: 0 12px 28px rgba(67, 72, 62, 0.08);
        }#course-intro .course-price-head{
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 8px;
          color: rgba(46, 49, 45, 0.58);
          font-size: 0.72rem;
          font-weight: 600;
        }#course-intro .course-discount{
          padding: 4px 8px;
          border: 1px solid rgba(170, 96, 69, 0.2);
          border-radius: 999px;
          color: var(--primary);
          background: rgba(170, 96, 69, 0.1);
          font-size: 0.72rem;
          font-weight: 800;
          white-space: nowrap;
        }#course-intro .course-prices{
          align-items: center;
          padding: 0 2px;
          direction: ltr;
        }#course-intro .course-price-current{
          font-size: clamp(1.35rem, 5.8vw, 1.52rem);
          direction: rtl;
        }#course-intro .course-price-old{
          font-size: 0.9rem;
          direction: rtl;
        }#course-intro .add-to-cart{
          min-height: 52px;
          font-size: 1rem;
          font-weight: 800;
        }
      }#course-intro .add-to-cart:hover{
        background: #4c6046;
        box-shadow: 0 11px 24px rgba(87, 107, 80, 0.2);
        transform: translateY(-1px);
      }#course-intro .add-to-cart:active{
        box-shadow: 0 6px 14px rgba(87, 107, 80, 0.14);
        transform: translateY(1px);
      }#course-intro .title-row{
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        direction: rtl;
      }#course-intro .course-banner{
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 14px;
        object-fit: cover;
        box-shadow: 0 8px 20px rgba(67, 72, 62, 0.08);
      }#course-intro .soft-divider{
        position: relative;
        height: 1px;
        margin: 26px 0 24px;
        background: linear-gradient(
          90deg,
          transparent,
          rgba(87, 107, 80, 0.16) 18%,
          rgba(170, 96, 69, 0.3) 50%,
          rgba(87, 107, 80, 0.16) 82%,
          transparent
        );
      }#course-intro .soft-divider::after{
        position: absolute;
        top: 50%;
        left: 50%;
        width: 28%;
        height: 10px;
        border-radius: 999px;
        background: rgba(170, 96, 69, 0.08);
        content: "";
        filter: blur(8px);
        transform: translate(-50%, -50%);
      }@media (max-width: 639px){#course-intro .title-row{
          gap: 20px;
        }#course-intro .course-purchase{
          margin-top: 4px;
        }
      }@media (max-width: 359px){#course-intro .title-row{
          gap: 10px;
        }#course-intro .course-banner{
          border-radius: 12px;
        }#course-intro .page-title{
          font-size: 1.18rem;
          line-height: 1.45;
        }

      }@media (prefers-reduced-motion: reduce){#course-intro *,#course-intro *::before,#course-intro *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }
    
#course-overview{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --line: rgba(46, 49, 45, 0.16);
        --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-overview *{
        box-sizing: border-box;
      }#course-overview{
        background: var(--canvas);
      }#course-overview{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          radial-gradient(
            30rem at 85% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-overview .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-overview,#course-overview{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-overview .course-highlights{
        position: relative;
      }#course-overview .section-heading{
        max-width: 28rem;
        margin: 0 0 24px;
      }#course-overview .section-heading h2{
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.62rem, 7vw, 2.55rem);
        font-weight: 750;
        letter-spacing: -0.04em;
        line-height: 1.4;
      }#course-overview .section-heading p{
        max-width: 31ch;
        margin: 10px 0 0;
        color: rgba(46, 49, 45, 0.64);
        font-size: 12px;
        line-height: 2;
      }#course-overview .course-intro{
        position: relative;
        min-height: 216px;
        margin-bottom: 32px;
        overflow: hidden;
        isolation: isolate;
        padding-block: 48px;
      }#course-overview .course-art{
        position: absolute;
        top: 0;
        bottom: 0;
        left: -8px;
        z-index: -1;
        display: grid;
        place-items: center;
        width: 63%;
        pointer-events: none;
      }#course-overview .course-art img{
        display: block;
        width: min(100%, 190px);
        height: 220px;
        object-fit: contain;
        opacity: 0.96;
        filter: saturate(1.02) contrast(1.04) sepia(0.02);
        transform: translateY(2px) rotate(-2deg);
      }#course-overview .course-copy{
        display: flex;
        position: relative;
        z-index: 1;
        width: 62%;
        min-height: 216px;
        flex-direction: column;
        justify-content: center;
        margin-left: auto;
        padding: 28px 0 28px 4px;
      }#course-overview .course-copy::before{
        position: absolute;
        top: 50%;
        right: -16px;
        width: 2px;
        height: 74px;
        border-radius: 999px;
        background: linear-gradient(
          to bottom,
          transparent,
          rgba(170, 96, 69, 0.6) 22%,
          rgba(170, 96, 69, 0.6) 78%,
          transparent
        );
        content: "";
        transform: translateY(-50%);
      }#course-overview .course-copy h2{
        max-width: 18ch;
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.16rem, 5.2vw, 1.72rem);
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-overview .course-copy p{
        max-width: 28ch;
        margin: 13px 0 0;
        color: rgba(46, 49, 45, 0.7);
        font-size: 11.5px;
        line-height: 2;
      }#course-overview .course-scope{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 7px 10px;
        margin: 15px 0 0;
        color: rgba(87, 107, 80, 0.86);
        font-size: 10px;
        font-weight: 700;
        line-height: 1.8;
      }#course-overview .course-scope span{
        display: inline-flex;
        align-items: center;
        gap: 6px;
      }#course-overview .course-scope span + span::before{
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: var(--primary);
        content: "";
      }@media (max-width: 639px){#course-overview .course-intro{
          min-height: 240px;
          padding-block: 24px;
        }
      }#course-overview .highlight-grid{
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }#course-overview .highlight-grid::before,#course-overview .highlight-grid::after{
        position: absolute;
        z-index: 2;
        background: var(--line);
        content: "";
        pointer-events: none;
      }#course-overview .highlight-grid::before{
        top: 18px;
        bottom: 18px;
        left: 50%;
        width: 1px;
        transform: translateX(-50%);
      }#course-overview .highlight-grid::after{
        top: 50%;
        right: 18px;
        left: 18px;
        height: 1px;
        transform: translateY(-50%);
      }#course-overview .highlight-card{
        position: relative;
        display: flex;
        min-height: 202px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px 14px 24px;
        text-align: center;
        isolation: isolate;
        --card-halo: rgba(170, 96, 69, 0.13);
        transition: background-color 320ms var(--ease-out);
      }#course-overview .highlight-card::before{
        position: absolute;
        top: 20px;
        left: 50%;
        z-index: -1;
        width: 158px;
        height: 122px;
        border-radius: 50%;
        background: radial-gradient(
          circle,
          var(--card-halo) 0%,
          transparent 72%
        );
        content: "";
        opacity: 0.62;
        transform: translateX(-50%) scale(0.92);
        animation: ambient-halo 9s ease-in-out infinite;
        filter: blur(9px);
        pointer-events: none;
      }#course-overview .highlight-card::after{
        position: absolute;
        top: 43%;
        left: 50%;
        z-index: -1;
        width: 76%;
        height: 54%;
        border-radius: 50%;
        background: radial-gradient(
          circle,
          var(--card-halo) 0%,
          transparent 74%
        );
        content: "";
        opacity: 0.2;
        transform: translate(-50%, -50%) scale(0.96);
        animation: ambient-card-glow 11s ease-in-out infinite;
        filter: blur(20px);
        pointer-events: none;
      }#course-overview .highlight-card:nth-child(even){
        --card-halo: rgba(87, 107, 80, 0.14);
      }#course-overview .highlight-card:nth-child(2)::before,#course-overview .highlight-card:nth-child(2)::after{
        animation-delay: 1.6s;
      }#course-overview .highlight-card:nth-child(3)::before,#course-overview .highlight-card:nth-child(3)::after{
        animation-delay: 3.2s;
      }#course-overview .highlight-card:nth-child(4)::before,#course-overview .highlight-card:nth-child(4)::after{
        animation-delay: 4.8s;
      }@keyframes ambient-halo{
        0%,
        100% {
          opacity: 0.42;
          transform: translateX(-50%) scale(0.92);
        }
        50% {
          opacity: 0.7;
          transform: translateX(-50%) scale(1.04);
        }
      }@keyframes ambient-card-glow{
        0%,
        100% {
          opacity: 0.14;
          transform: translate(-50%, -50%) scale(0.96);
        }
        50% {
          opacity: 0.28;
          transform: translate(-50%, -50%) scale(1.04);
        }
      }#course-overview .highlight-card:hover{
        background: rgba(255, 255, 255, 0.22);
      }#course-overview .highlight-art{
        display: block;
        width: 72px;
        height: 72px;
        margin-bottom: 10px;
        object-fit: contain;
        transition: transform 320ms var(--ease-out), filter 320ms ease;
      }#course-overview .highlight-card:hover .highlight-art{
        transform: translateY(-3px) rotate(-1deg);
        filter: saturate(1.05);
      }#course-overview .highlight-card h2{
        max-width: 15ch;
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.1rem, 5.3vw, 1.5rem);
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.45;
      }#course-overview .highlight-card:nth-child(even) h2{
        color: var(--secondary);
      }#course-overview .highlight-card p{
        max-width: 19ch;
        margin: 8px 0 0;
        color: rgba(46, 49, 45, 0.67);
        font-size: 10.5px;
        line-height: 1.9;
      }#course-overview .payment-details{
        display: flex;
        flex-direction: column;
        align-items: center;
        width: min(100%, 236px);
        min-height: 0;
        margin-top: 12px;
        gap: 5px;
      }#course-overview .payment-details p{
        order: 1;
        display: block;
        min-height: 0;
        max-width: none;
        margin: 0;
        font-size: 10px;
        line-height: 1.85;
        text-align: center;
      }#course-overview .payment-brands{
        order: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 3px;
        margin: 0;
        opacity: 0.78;
        pointer-events: none;
      }#course-overview .payment-brand-logo{
        display: block;
        width: 28px;
        height: 21px;
        background: transparent;
        object-fit: contain;
      }@media (prefers-reduced-motion: reduce){#course-overview *,#course-overview *::before,#course-overview *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-description{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --line: rgba(46, 49, 45, 0.12);
        --soft-shadow: 0 20px 48px rgba(67, 72, 62, 0.08),
          0 5px 14px rgba(67, 72, 62, 0.04);
        --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-description *{
        box-sizing: border-box;
      }#course-description{
        background: var(--canvas);
      }#course-description{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 16%,
            rgba(87, 107, 80, 0.1),
            rgba(87, 107, 80, 0.035) 34%,
            transparent 76%
          ),
          radial-gradient(
            28rem at 88% 74%,
            rgba(170, 96, 69, 0.08),
            rgba(170, 96, 69, 0.025) 36%,
            transparent 76%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-description .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-description,#course-description{
        background: #ffffff;
        background-image: none;
        background-attachment: initial;
      }#course-description .section-heading{
        max-width: 34rem;
        margin: 0 0 20px;
      }#course-description .section-heading h2{
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.55rem, 7vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.42;
      }#course-description .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: rgba(46, 49, 45, 0.64);
        font-size: 12px;
        line-height: 2;
      }#course-description .intro-video{
        position: relative;
        overflow: hidden;
        aspect-ratio: 16 / 9;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.32);
        box-shadow: var(--soft-shadow);
        isolation: isolate;
      }#course-description .intro-video video{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: rgba(87, 107, 80, 0.12);
        object-fit: cover;
      }#course-description .intro-video iframe{
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        border: 0;
      }#course-description .intro-poster{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
      }#course-description .description-panel{
        overflow: hidden;
        margin-top: 28px;
        padding: 24px 18px 30px;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow: 0 20px 48px rgba(67, 72, 62, 0.075),
          0 4px 14px rgba(67, 72, 62, 0.035);
        backdrop-filter: blur(5px);
      }#course-description .description-copy{
        margin-top: 30px;
      }#course-description .description-block{
        width: 100%;
        max-width: none;
      }#course-description .description-block + .description-block{
        margin-top: 25px;
        padding-top: 23px;
        border-top: 1px solid var(--line);
      }#course-description .description-block h2{
        margin: 0;
        color: var(--primary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.15rem, 5.4vw, 1.75rem);
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-description .description-block p{
        max-width: 64ch;
        margin: 9px 0 0;
        color: var(--ink);
        font-size: 12px;
        line-height: 2.1;
      }#course-description .description-reveal{
        margin-top: 25px;
        padding-top: 23px;
        border-top: 1px solid var(--line);
      }#course-description .description-extra{
        max-height: 154px;
        overflow: hidden;
        -webkit-mask-image: linear-gradient(
          to bottom,
          #000 0%,
          #000 30%,
          rgba(0, 0, 0, 0.78) 60%,
          transparent 100%
        );
        mask-image: linear-gradient(
          to bottom,
          #000 0%,
          #000 30%,
          rgba(0, 0, 0, 0.78) 60%,
          transparent 100%
        );
        transition: max-height 720ms var(--ease-out);
      }#course-description .description-copy.is-expanded .description-extra{
        max-height: 1400px;
        -webkit-mask-image: none;
        mask-image: none;
      }#course-description .expand-button{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-width: 132px;
        margin: 0 auto 24px;
        padding: 7px 5px 6px;
        border: 0;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.26);
        color: var(--primary);
        cursor: pointer;
        font-family: inherit;
        font-size: 11px;
        font-weight: 700;
        line-height: 1.6;
        transition: background-color 260ms ease, border-color 260ms ease,
          transform 260ms var(--ease-out);
      }#course-description .expand-button::after{
        width: 7px;
        height: 7px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        content: "";
        transform: rotate(45deg) translateY(-2px);
        transition: transform 360ms var(--ease-out);
      }#course-description .expand-button:hover{
        background: rgba(255, 255, 255, 0.48);
        transform: translateY(-1px);
      }#course-description .expand-button:active{
        transform: translateY(1px) scale(0.98);
      }#course-description .expand-button:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.22);
        outline-offset: 3px;
      }#course-description .expand-button[aria-expanded="true"]::after{
        transform: rotate(225deg) translateY(-2px);
      }@media (max-width: 639px){#course-description .page-shell{
          display: flex;
          flex-direction: column;
          background: transparent;
        }#course-description .description-panel{
          display: contents;
        }#course-description .section-heading{
          order: 1;
          max-width: none;
          margin: 0;
        }#course-description .section-heading h2{
          font-size: clamp(1.35rem, 6.2vw, 2rem);
        }#course-description .section-heading p{
          max-width: none;
          margin-top: 12px;
          font-size: 13px;
          line-height: 2.05;
        }#course-description .intro-video{
          order: 2;
          margin-top: 24px;
          border-radius: 16px;
          background: rgba(87, 107, 80, 0.035);
          box-shadow: 0 14px 32px rgba(67, 72, 62, 0.07);
        }#course-description .description-copy{
          order: 3;
          margin-top: 28px;
          padding: 0 2px 12px;
        }#course-description .description-block + .description-block{
          margin-top: 28px;
          padding-top: 24px;
        }#course-description .description-block h2{
          font-size: clamp(1.08rem, 5.2vw, 1.5rem);
          font-weight: 800;
        }#course-description .description-block p{
          margin-top: 11px;
          font-size: 13px;
          line-height: 2.1;
        }#course-description .description-reveal{
          margin-top: 28px;
          padding-top: 24px;
        }#course-description .description-copy.is-expanded .description-extra{
          max-height: 1400px;
        }#course-description .expand-button{
          margin-top: 20px;
        }
      }@media (prefers-reduced-motion: reduce){#course-description *,#course-description *::before,#course-description *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-content{
        --primary: #aa6045;
        --primary-dark: #814632;
        --secondary: #576b50;
        --secondary-dark: #40523c;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.78);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --shadow: 0 18px 44px rgba(67, 72, 62, 0.06),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-content *{
        box-sizing: border-box;
      }#course-content{
        min-width: 320px;
        background: var(--canvas);
      }#course-content{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 12%,
            rgba(87, 107, 80, 0.09),
            rgba(87, 107, 80, 0.025) 42%,
            transparent 76%
          ),
          radial-gradient(
            28rem at 88% 84%,
            rgba(170, 96, 69, 0.07),
            rgba(170, 96, 69, 0.02) 42%,
            transparent 76%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-content button{
        font: inherit;
      }#course-content .sr-only{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }#course-content .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-content,#course-content{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-content .section-heading{
        margin: 0 0 21px;
      }#course-content .section-heading h2{
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.62rem, 7vw, 2.55rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.42;
      }#course-content .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 12px;
        line-height: 2;
      }#course-content .chapter-banner{
        position: relative;
        overflow: hidden;
        min-height: 188px;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 21px;
        background: #c9b28a;
        box-shadow: var(--shadow);
        isolation: isolate;
      }#course-content .chapter-banner::before{
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(
          270deg,
          rgba(46, 49, 45, 0.68),
          rgba(46, 49, 45, 0.25) 42%,
          rgba(46, 49, 45, 0.03) 78%
        );
        content: "";
        pointer-events: none;
      }#course-content .chapter-banner-image{
        display: block;
        width: 100%;
        min-height: 188px;
        object-fit: cover;
        object-position: center;
        transition: opacity 220ms ease, transform 680ms var(--ease);
      }#course-content .chapter-banner.is-changing .chapter-banner-image{
        opacity: 0.45;
        transform: scale(1.025);
      }#course-content .chapter-banner-copy{
        position: absolute;
        top: 50%;
        right: 20px;
        left: 20px;
        z-index: 2;
        color: #fff;
        transform: translateY(-50%);
      }#course-content .banner-title{
        max-width: 14ch;
        margin: 0;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.38rem, 6.4vw, 2.1rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.4;
        text-shadow: 0 3px 16px rgba(46, 49, 45, 0.22);
      }#course-content .banner-meta{
        margin: 5px 0 0;
        color: rgba(255, 255, 255, 0.83);
        font-size: 10px;
        line-height: 1.8;
      }#course-content .chapter-tabs{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        margin-top: 17px;
      }#course-content .chapter-tab{
        position: relative;
        min-width: 0;
        padding: 12px 7px 11px;
        border: 1px solid var(--line);
        border-radius: 15px;
        background: rgba(255, 255, 255, 0.46);
        color: rgba(46, 49, 45, 0.7);
        cursor: pointer;
        text-align: center;
        transition: border-color 240ms var(--ease), background-color 240ms var(--ease),
          color 240ms var(--ease), transform 240ms var(--ease), box-shadow 240ms var(--ease);
      }#course-content .chapter-tab:hover{
        border-color: rgba(170, 96, 69, 0.25);
        background: rgba(255, 255, 255, 0.72);
        transform: translateY(-1px);
      }#course-content .chapter-tab:active{
        transform: translateY(1px) scale(0.985);
      }#course-content .chapter-tab:focus-visible,#course-content .lesson-button:focus-visible,#course-content .modal-close:focus-visible,#course-content .preview-filter:focus-visible,#course-content .preview-card:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.25);
        outline-offset: 3px;
      }#course-content .chapter-tab[aria-selected="true"]{
        border-color: rgba(170, 96, 69, 0.32);
        background: rgba(255, 255, 255, 0.88);
        color: var(--primary);
        box-shadow: 0 8px 22px rgba(67, 72, 62, 0.055);
      }#course-content .chapter-tab[aria-selected="true"]::after{
        position: absolute;
        right: 22%;
        bottom: -1px;
        left: 22%;
        height: 2px;
        border-radius: 999px;
        background: var(--primary);
        content: "";
      }#course-content .chapter-tab-number{
        display: block;
        color: rgba(87, 107, 80, 0.62);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 10px;
        line-height: 1.5;
      }#course-content .chapter-tab[aria-selected="true"] .chapter-tab-number{
        color: rgba(170, 96, 69, 0.78);
      }#course-content .chapter-tab-name{
        display: block;
        overflow: hidden;
        margin-top: 2px;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(0.82rem, 3.65vw, 1.05rem);
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.55;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .lesson-panel{
        margin-top: 14px;
        padding: 8px 14px 9px;
        border: 1px solid var(--line);
        border-radius: 18px;
        background: var(--paper);
        box-shadow: var(--shadow);
      }#course-content .lesson-panel-head{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 7px 2px 12px;
        border-bottom: 1px solid var(--soft-line);
      }#course-content .lesson-panel-head h2{
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.06rem;
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.6;
      }#course-content .lesson-panel-head p{
        flex: 0 0 auto;
        margin: 0;
        color: rgba(87, 107, 80, 0.82);
        font-size: 10px;
        font-weight: 700;
        line-height: 1.7;
      }#course-content .lesson-list{
        margin: 0;
        padding: 0;
        list-style: none;
      }#course-content .lesson-item{
        border-bottom: 1px solid var(--soft-line);
      }#course-content .lesson-item:last-child{
        border-bottom: 0;
      }#course-content .lesson-button{
        display: grid;
        grid-template-columns: 30px minmax(0, 1fr) auto;
        align-items: center;
        gap: 9px;
        width: 100%;
        min-height: 68px;
        padding: 9px 2px;
        border: 0;
        background: transparent;
        color: var(--ink);
        cursor: pointer;
        text-align: right;
        transition: color 220ms ease, transform 220ms var(--ease);
      }#course-content .lesson-button:hover{
        color: var(--primary);
        transform: translateX(-2px);
      }#course-content .lesson-number{
        display: grid;
        place-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid rgba(87, 107, 80, 0.15);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.045);
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 11px;
        font-weight: 750;
        line-height: 1;
      }#course-content .lesson-title{
        display: block;
        overflow: hidden;
        color: inherit;
        font-size: 10.7px;
        font-weight: 650;
        line-height: 1.9;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .lesson-copy{
        min-width: 0;
      }#course-content .lesson-duration{
        display: block;
        margin-top: 1px;
        color: rgba(46, 49, 45, 0.49);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .lesson-action{
        display: grid;
        place-items: center;
        width: 30px;
        height: 30px;
        border: 1px solid rgba(46, 49, 45, 0.12);
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.45);
      }#course-content .lesson-action-wrap{
        position: relative;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 6px;
        width: max-content;
        min-width: 30px;
        height: 30px;
        white-space: nowrap;
      }#course-content .access-tooltip{
        position: absolute;
        right: auto;
        left: 0;
        bottom: calc(100% + 8px);
        z-index: 6;
        width: max-content;
        max-width: min(180px, calc(100vw - 32px));
        padding: 8px 10px 9px;
        border: 1px solid rgba(170, 96, 69, 0.22);
        border-radius: 10px;
        background: #fbfbfa;
        color: var(--ink);
        box-shadow: 0 9px 24px rgba(67, 72, 62, 0.12);
        font-size: 9px;
        font-weight: 650;
        line-height: 1.7;
        opacity: 0;
        pointer-events: none;
        transform: translateY(5px);
        transition: opacity 180ms ease, transform 220ms var(--ease);
      }#course-content .access-tooltip::after{
        position: absolute;
        right: auto;
        left: 12px;
        bottom: -5px;
        width: 8px;
        height: 8px;
        border-right: 1px solid rgba(170, 96, 69, 0.22);
        border-bottom: 1px solid rgba(170, 96, 69, 0.22);
        background: #fbfbfa;
        content: "";
        transform: rotate(45deg);
      }#course-content .lesson-item.is-tooltip-open .access-tooltip{
        opacity: 1;
        transform: translateY(0);
      }#course-content .lesson-icon{
        display: block;
        width: 18px;
        height: 18px;
        object-fit: contain;
      }#course-content .lesson-item.is-preview .lesson-number{
        border-color: rgba(170, 96, 69, 0.21);
        background: rgba(170, 96, 69, 0.08);
        color: var(--primary);
      }#course-content .lesson-item.is-preview .lesson-action{
        border-color: rgba(87, 107, 80, 0.24);
        background: rgba(87, 107, 80, 0.12);
        color: var(--secondary-dark);
      }#course-content .lesson-item.is-preview .lesson-title{
        color: var(--primary-dark);
      }#course-content .preview-label{
        display: inline-flex;
        align-items: center;
        width: fit-content;
        margin: 0;
        padding: 3px 7px 4px;
        border: 1px solid rgba(87, 107, 80, 0.2);
        border-radius: 999px;
        background: rgba(87, 107, 80, 0.1);
        color: var(--secondary-dark);
        font-size: 8px;
        font-weight: 750;
        line-height: 1.45;
      }#course-content .preview-action{
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 5px;
        width: max-content;
        min-width: 30px;
        height: 30px;
        white-space: nowrap;
      }#course-content .preview-action .lesson-action{
        flex: 0 0 30px;
      }#course-content .preview-duration-inline{
        display: inline-flex;
        align-items: center;
        color: rgba(46, 49, 45, 0.56);
        font-size: 9px;
        line-height: 1.7;
        white-space: nowrap;
      }#course-content .lesson-action-wrap .lesson-duration{
        display: inline-flex;
        align-items: center;
        margin: 0;
        white-space: nowrap;
      }#course-content .play-mark{
        display: block;
        width: 0;
        height: 0;
        margin-right: 1px;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 7px solid currentColor;
      }#course-content .exam-item{
        margin-top: 7px;
        border: 1px solid rgba(87, 107, 80, 0.2);
        border-bottom: 0;
        border-radius: 13px;
        background: rgba(87, 107, 80, 0.075);
      }#course-content .exam-item .lesson-button{
        min-height: 64px;
        padding-right: 8px;
        padding-left: 8px;
      }#course-content .exam-item .lesson-number{
        border-color: rgba(87, 107, 80, 0.22);
        background: rgba(87, 107, 80, 0.12);
        color: var(--secondary-dark);
      }#course-content .exam-item .lesson-title{
        color: var(--secondary-dark);
      }#course-content .exam-item .lesson-action{
        border-color: rgba(87, 107, 80, 0.24);
        background: rgba(87, 107, 80, 0.12);
      }#course-content .course-preview{
        margin-top: 18px;
        padding: 18px 14px 15px;
        border: 1px solid rgba(87, 107, 80, 0.16);
        border-radius: 20px;
        background:
          linear-gradient(145deg, rgba(87, 107, 80, 0.1), transparent 45%),
          rgba(255, 255, 255, 0.68);
        box-shadow: var(--shadow);
      }#course-content .course-preview-head{
        display: flex;
        align-items: end;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 13px;
      }#course-content .course-preview-title{
        margin: 0;
        color: var(--secondary-dark);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.18rem;
        font-weight: 800;
        letter-spacing: -0.04em;
        line-height: 1.5;
      }#course-content .course-preview-copy{
        max-width: 18ch;
        margin: 0;
        color: var(--muted);
        font-size: 9px;
        line-height: 1.85;
        text-align: left;
      }#course-content .preview-filters{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        margin-bottom: 12px;
      }#course-content .preview-filter{
        min-width: 0;
        padding: 8px 6px 7px;
        border: 1px solid var(--line);
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.54);
        color: rgba(46, 49, 45, 0.64);
        cursor: pointer;
        font-size: 9px;
        font-weight: 700;
        line-height: 1.6;
        transition: border-color 220ms var(--ease), background-color 220ms var(--ease),
          color 220ms var(--ease), transform 220ms var(--ease);
      }#course-content .preview-filter:hover{
        border-color: rgba(87, 107, 80, 0.32);
        background: rgba(255, 255, 255, 0.84);
        transform: translateY(-1px);
      }#course-content .preview-filter:active{
        transform: translateY(1px) scale(0.985);
      }#course-content .preview-filter:focus-visible,#course-content .preview-card:focus-visible{
        outline: 3px solid rgba(87, 107, 80, 0.25);
        outline-offset: 3px;
      }#course-content .preview-filter[aria-selected="true"]{
        border-color: rgba(170, 96, 69, 0.3);
        background: rgba(170, 96, 69, 0.13);
        color: var(--primary-dark);
        box-shadow: 0 7px 16px rgba(170, 96, 69, 0.1);
      }#course-content .preview-player{
        position: relative;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 15px;
        background: #28332f;
        box-shadow: 0 14px 30px rgba(67, 72, 62, 0.11);
        isolation: isolate;
      }#course-content .preview-player iframe{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        border: 0;
        background: #28332f;
      }#course-content .preview-player-fallback{
        display: none;
        place-items: center;
        min-height: 184px;
        padding: 24px;
        color: rgba(255, 255, 255, 0.82);
        font-size: 10px;
        line-height: 1.9;
        text-align: center;
      }#course-content .preview-player.is-empty iframe{
        display: none;
      }#course-content .preview-player.is-empty .preview-player-fallback{
        display: grid;
      }#course-content .preview-player-caption{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 9px 11px 10px;
        background: rgba(46, 49, 45, 0.92);
        color: rgba(255, 255, 255, 0.86);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .preview-player-caption strong{
        color: #dbe6d4;
        font-weight: 750;
      }#course-content .preview-grid{
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
        margin-top: 10px;
      }#course-content .preview-card{
        display: grid;
        grid-template-columns: 29px minmax(0, 1fr);
        align-items: center;
        gap: 8px;
        min-width: 0;
        padding: 9px 8px;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 13px;
        background: rgba(255, 255, 255, 0.68);
        color: var(--ink);
        cursor: pointer;
        text-align: right;
        transition: border-color 220ms var(--ease), background-color 220ms var(--ease),
          transform 220ms var(--ease), box-shadow 220ms var(--ease);
      }#course-content .preview-card:hover{
        border-color: rgba(87, 107, 80, 0.28);
        background: rgba(255, 255, 255, 0.92);
        transform: translateY(-1px);
      }#course-content .preview-card[aria-current="true"]{
        border-color: rgba(87, 107, 80, 0.42);
        background: rgba(87, 107, 80, 0.1);
        box-shadow: inset 0 0 0 1px rgba(87, 107, 80, 0.08);
      }#course-content .preview-card-icon{
        display: grid;
        place-items: center;
        width: 29px;
        height: 29px;
        border: 1px solid rgba(87, 107, 80, 0.22);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.11);
        color: var(--secondary-dark);
      }#course-content .preview-card-copy{
        min-width: 0;
      }#course-content .preview-card-title{
        display: block;
        overflow: hidden;
        font-size: 9px;
        font-weight: 700;
        line-height: 1.8;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .preview-card-meta{
        display: block;
        margin-top: 1px;
        color: rgba(46, 49, 45, 0.52);
        font-size: 8px;
        line-height: 1.6;
      }#course-content .preview-card.is-hidden{
        display: none;
      }#course-content .course-preview{
        margin-top: 45px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
      }#course-content .course-preview-head{
        display: block;
        margin: 0 2px 21px;
      }#course-content .course-preview-title{
        color: var(--secondary-dark);
        font-size: 1.08rem;
      }#course-content .preview-title-brown{
        color: var(--primary);
      }#course-content .preview-filters{
        gap: 8px;
        margin: 0 0 20px;
      }#course-content .preview-grid{
        gap: 15px;
        margin-top: 0;
      }#course-content .preview-card{
        display: block;
        overflow: hidden;
        padding: 0;
        text-align: right;
      }#course-content .preview-card-media{
        position: relative;
        display: block;
        overflow: hidden;
        aspect-ratio: 16 / 8;
        background: rgba(87, 107, 80, 0.14);
      }#course-content .preview-card-media img{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: saturate(0.82);
        transition: transform 420ms var(--ease), filter 220ms ease;
      }#course-content .preview-card:hover .preview-card-media img{
        filter: saturate(1);
        transform: scale(1.035);
      }#course-content .preview-card-play{
        position: absolute;
        right: 50%;
        bottom: 50%;
        display: grid;
        place-items: center;
        width: 31px;
        height: 31px;
        border: 1px solid rgba(255, 255, 255, 0.55);
        border-radius: 50%;
        background: rgba(170, 96, 69, 0.92);
        color: #fff;
        box-shadow: 0 5px 16px rgba(46, 49, 45, 0.2);
        transform: translate(50%, 50%);
      }#course-content .preview-card-play .play-mark{
        margin-right: 2px;
        border-top-width: 4px;
        border-bottom-width: 4px;
        border-left-width: 6px;
      }#course-content .preview-card-copy{
        display: block;
        padding: 8px 9px 9px;
      }#course-content .preview-card-title{
        font-size: 8.8px;
      }#course-content .preview-card-meta{
        font-size: 7.8px;
      }#course-content .modal-backdrop{
        position: fixed;
        inset: 0;
        z-index: 30;
        display: grid;
        place-items: center;
        padding: 17px;
        background: rgba(46, 49, 45, 0.52);
        opacity: 0;
        pointer-events: none;
        transition: opacity 240ms ease;
        backdrop-filter: blur(7px);
      }#course-content .modal-backdrop.is-open{
        opacity: 1;
        pointer-events: auto;
      }#course-content .preview-modal{
        width: min(100%, 510px);
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.42);
        border-radius: 21px;
        background: #fbfbfa;
        box-shadow: 0 27px 80px rgba(46, 49, 45, 0.25);
        opacity: 0;
        transform: translateY(15px) scale(0.985);
        transition: opacity 280ms var(--ease), transform 280ms var(--ease);
      }#course-content .modal-backdrop.is-open .preview-modal{
        opacity: 1;
        transform: translateY(0) scale(1);
      }#course-content .modal-head{
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        padding: 18px 17px 14px;
      }#course-content .modal-kicker{
        margin: 0;
        color: rgba(170, 96, 69, 0.8);
        font-size: 9px;
        font-weight: 750;
        line-height: 1.7;
      }#course-content .modal-title{
        max-width: 26ch;
        margin: 4px 0 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.14rem;
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-content .modal-close{
        display: grid;
        flex: 0 0 auto;
        place-items: center;
        width: 33px;
        height: 33px;
        border: 1px solid var(--line);
        border-radius: 11px;
        background: rgba(255, 255, 255, 0.75);
        color: var(--muted);
        cursor: pointer;
        font-size: 18px;
        line-height: 1;
      }#course-content .preview-stage{
        position: relative;
        margin: 0 12px;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.13);
        border-radius: 15px;
        background: #28332f;
        isolation: isolate;
      }#course-content .preview-stage::after{
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(180deg, transparent 50%, rgba(46, 49, 45, 0.55));
        content: "";
        pointer-events: none;
      }#course-content .preview-video{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: #28332f;
        object-fit: cover;
      }#course-content .modal-play{
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 2;
        display: grid;
        place-items: center;
        width: 45px;
        height: 45px;
        border: 1px solid rgba(255, 255, 255, 0.62);
        border-radius: 50%;
        background: rgba(87, 107, 80, 0.92);
        color: #fff;
        cursor: pointer;
        box-shadow: 0 8px 26px rgba(46, 49, 45, 0.24);
        transform: translate(-50%, -50%);
        transition: background-color 220ms ease, transform 220ms var(--ease);
        backdrop-filter: blur(6px);
      }#course-content .modal-play:hover{
        background: var(--secondary-dark);
        transform: translate(-50%, -50%) scale(1.04);
      }#course-content .modal-play .play-mark{
        border-top-width: 5px;
        border-bottom-width: 5px;
        border-left-width: 8px;
      }#course-content .preview-caption{
        position: absolute;
        right: 13px;
        bottom: 11px;
        left: 13px;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        color: rgba(255, 255, 255, 0.88);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .modal-foot{
        margin: 0;
        padding: 13px 17px 18px;
        color: var(--muted);
        font-size: 10px;
        line-height: 1.9;
      }#course-content .modal-foot strong{
        color: var(--primary);
        font-weight: 750;
      }#course-content .preview-note{
        min-height: 0;
        margin: 0;
        padding: 0 17px;
        color: var(--primary-dark);
        font-size: 9px;
        line-height: 1.8;
      }#course-content .preview-note:not(:empty){
        padding-top: 8px;
      }body.modal-is-open{
        overflow: hidden;
      }@media (prefers-reduced-motion: reduce){#course-content *,#course-content *::before,#course-content *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-instructors{
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.8);
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 20px 48px rgba(67, 72, 62, 0.09),
          0 5px 16px rgba(67, 72, 62, 0.045);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-instructors *{
        box-sizing: border-box;
      }#course-instructors{
        min-width: 320px;
        background: var(--canvas);
      }#course-instructors{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.1), transparent 32%),
          radial-gradient(circle at 88% 90%, rgba(170, 96, 69, 0.07), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-instructors button{
        font: inherit;
      }#course-instructors .sr-only{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }#course-instructors .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-instructors,#course-instructors{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-instructors .section-heading{
        margin: 0 0 21px;
      }#course-instructors .section-heading h2{
        max-width: none;
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.8rem, 8vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.45;
        white-space: nowrap;
      }#course-instructors .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-instructors .instructors-panel{
        position: relative;
        overflow: visible;
        padding: 0;
      }#course-instructors .instructors-panel::before{
        display: none;
      }#course-instructors .teacher-stage{
        position: relative;
        min-height: 380px;
        overflow: hidden;
        touch-action: pan-y;
        user-select: none;
      }#course-instructors .teacher-card{
        position: absolute;
        top: 0;
        right: 50%;
        display: block;
        width: min(54vw, 205px);
        height: 335px;
        padding: 0;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.16);
        border-radius: 21px;
        background: #dce2d7;
        box-shadow: 0 13px 28px rgba(67, 72, 62, 0.07);
        cursor: grab;
        opacity: 0;
        pointer-events: none;
        transform: translate3d(50%, 34px, 0) scale(0.88);
        transition: transform 560ms var(--ease), opacity 420ms ease, filter 420ms ease,
          box-shadow 420ms ease;
        will-change: transform, opacity;
      }#course-instructors .teacher-card:active{
        cursor: grabbing;
      }#course-instructors .teacher-card[data-state="active"]{
        z-index: 3;
        opacity: 1;
        pointer-events: auto;
        filter: none;
        box-shadow: 0 22px 42px rgba(67, 72, 62, 0.14),
          0 5px 15px rgba(67, 72, 62, 0.06);
        transform: translate3d(calc(50% + var(--drag-x, 0px)), 0, 0) scale(1);
      }#course-instructors .teacher-card[data-state="next"]{
        z-index: 2;
        opacity: 0.52;
        pointer-events: auto;
        filter: grayscale(1) saturate(0.35);
        transform: translate3d(calc(50% + 105%), 24px, 0) scale(0.76);
      }#course-instructors .teacher-card[data-state="back"]{
        z-index: 1;
        opacity: 0.34;
        pointer-events: auto;
        filter: grayscale(1) saturate(0.15);
        transform: translate3d(calc(50% - 105%), 24px, 0) scale(0.76);
      }#course-instructors .teacher-card[data-state="next"] .teacher-card-copy,#course-instructors .teacher-card[data-state="back"] .teacher-card-copy{
        opacity: 0.12;
      }#course-instructors .teacher-card[data-state="active"] .teacher-photo{
        filter: saturate(1.08) contrast(1.02);
      }#course-instructors .teacher-card[data-state="active"] .teacher-card-copy{
        opacity: 1;
        transform: translateY(0);
      }#course-instructors .teacher-photo{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        filter: grayscale(1) saturate(0.32);
        transition: filter 560ms ease;
      }#course-instructors .teacher-card-copy{
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 48px 15px 15px;
        background: linear-gradient(180deg, transparent, rgba(46, 49, 45, 0.78));
        color: #fff;
        opacity: 0.82;
        text-align: right;
        transform: translateY(5px);
        transition: opacity 360ms ease, transform 560ms var(--ease);
      }#course-instructors .teacher-role{
        display: block;
        margin-bottom: 4px;
        color: rgba(255, 255, 255, 0.76);
        font-size: 8px;
        line-height: 1.7;
      }#course-instructors .teacher-name{
        margin: 0;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.16rem;
        font-weight: 800;
        letter-spacing: -0.04em;
        line-height: 1.55;
      }#course-instructors .teacher-focus{
        margin: 4px 0 0;
        color: rgba(255, 255, 255, 0.82);
        font-size: 8px;
        line-height: 1.7;
      }#course-instructors .teacher-stage.is-switching .teacher-card[data-state="active"]{
        animation: card-arrival 560ms var(--ease) both;
      }#course-instructors .teacher-stage.is-dragging .teacher-card{
        transition: none;
      }#course-instructors .teacher-stage.is-dragging .teacher-card[data-state="next"],#course-instructors .teacher-stage.is-dragging .teacher-card[data-state="back"]{
        pointer-events: none;
      }@keyframes card-arrival{
        0% {
          opacity: 0.58;
          transform: translate3d(calc(50% + 3px), 8px, 0) scale(0.96);
        }
        100% {
          opacity: 1;
          transform: translate3d(50%, 0, 0) scale(1);
        }
      }#course-instructors .teacher-card:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.25);
        outline-offset: 3px;
      }#course-instructors .stage-dots{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        margin-top: 13px;
      }#course-instructors .stage-dot{
        width: 7px;
        height: 7px;
        padding: 0;
        border: 1px solid rgba(87, 107, 80, 0.36);
        border-radius: 50%;
        background: transparent;
        cursor: pointer;
        transition: width 220ms var(--ease), background-color 220ms ease,
          border-color 220ms ease, transform 220ms var(--ease);
      }#course-instructors .stage-dot[aria-selected="true"]{
        width: 19px;
        border-color: var(--green);
        border-radius: 999px;
        background: var(--green);
      }#course-instructors .stage-dot:active{
        transform: scale(0.86);
      }#course-instructors .stage-dot:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.24);
        outline-offset: 3px;
      }@media (prefers-reduced-motion: reduce){#course-instructors *,#course-instructors *::before,#course-instructors *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-student-experience{
        --ink:#2e312d;
        --muted:rgba(46,49,45,.62);
        --line:rgba(46,49,45,.12);
        --green:#576b50;
        font-family:'iransans',Tahoma,sans-serif;
      }#course-student-experience *{box-sizing:border-box}
      #course-student-experience .page-shell{width:min(100%,720px);margin:0 auto;padding:40px 16px}
      #course-student-experience .section-heading{margin:0 0 21px}
      #course-student-experience .section-heading h2{margin:0;color:var(--green);font-family:'gramophone','iransans',sans-serif;font-size:clamp(1.8rem,8vw,2.6rem);font-weight:800;letter-spacing:-.05em;line-height:1.45}
      #course-student-experience .section-heading p{max-width:38ch;margin:9px 0 0;color:var(--muted);font-size:11px;line-height:2}
      #course-student-experience .student-experience-carousel{overflow:hidden;padding:6px 0 0;background:transparent}
      #course-student-experience .student-experience-track{display:flex;gap:14px;direction:rtl;transition:transform 560ms cubic-bezier(.16,1,.3,1);will-change:transform}
      #course-student-experience .student-experience-card{display:flex;flex:0 0 calc((100% - 28px) / 3);min-height:156px;flex-direction:column;padding:19px 20px;border:1px solid rgba(87,107,80,.16);border-radius:16px;background:#fff;color:var(--ink)}
      #course-student-experience .student-rating{display:flex;align-items:center;gap:7px;color:#aa6045;font-size:.96rem;line-height:1}
      #course-student-experience .student-rating span{letter-spacing:1.5px}
      #course-student-experience .student-rating small{color:var(--muted);font-size:9px;font-weight:650;letter-spacing:0}
      #course-student-experience .experience-quote{width:100%;max-width:none;margin:14px 0 0;color:var(--ink);font-size:11px;line-height:2.02}
      #course-student-experience .student-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:9px;line-height:1.7}
      #course-student-experience .student-meta strong{color:var(--ink);font-size:12px;font-weight:750}
      #course-student-experience .student-experience-controls{display:flex;align-items:center;justify-content:center;padding-top:17px}
      #course-student-experience .student-experience-dots{display:flex;align-items:center;gap:7px}
      #course-student-experience .experience-dot{width:7px;height:7px;padding:0;border:1px solid rgba(87,107,80,.46);border-radius:50%;background:transparent;cursor:pointer;transition:width 220ms ease,background-color 220ms ease}
      #course-student-experience .experience-dot[aria-selected="true"]{width:21px;border-radius:99px;background:var(--green)}
      #course-student-experience .experience-dot:focus-visible{outline:3px solid rgba(87,107,80,.25);outline-offset:3px}
      @media (min-width:768px) and (max-width:1100px){#course-student-experience .student-experience-card{flex-basis:calc((100% - 14px) / 2)}}
      @media (max-width:767px){#course-student-experience .student-experience-track{display:block;transform:none!important}.course-section#course-student-experience .student-experience-card{display:none;min-height:180px;padding:22px}.course-section#course-student-experience .student-experience-card[data-mobile-active="true"]{display:flex}#course-student-experience .experience-quote{font-size:11px;line-height:2.05}}
      @media (prefers-reduced-motion:reduce){#course-student-experience .student-experience-track{transition:none}}

#other-courses{--paper:#fff;--ink:#1f2820;--muted:#687069;--primary:#aa6045;--primary-dark:#814632;--green:#587353;--green-dark:#40563d;--line:#dfe5de;font-family:'iransans',Tahoma,sans-serif}
      #other-courses *{box-sizing:border-box}
      #other-courses .page-shell{width:min(100% - 32px,1200px);margin:72px auto 0;padding:0 0 24px}
      #other-courses .other-courses-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:22px}
      #other-courses .other-courses-kicker{display:block;margin:0 0 5px;color:var(--primary);font-size:.78rem;font-weight:800}
      #other-courses .other-courses-heading h2{margin:0;color:var(--ink);font-family:'gramophone','iransans',sans-serif;font-size:clamp(1.75rem,3vw,2.3rem);font-weight:900;line-height:1.4}
      #other-courses .other-courses-heading p{max-width:48ch;margin:7px 0 0;color:var(--muted);font-size:.85rem;line-height:1.9}
      #other-courses .other-courses-all{display:inline-flex;align-items:center;gap:8px;padding:8px 0;color:var(--green);font-size:.84rem;font-weight:800;text-decoration:none;white-space:nowrap}
      #other-courses .other-courses-viewport{overflow:hidden;margin:-8px;padding:12px 8px 16px}
      #other-courses .course-card-track{display:flex;gap:18px;direction:rtl;transition:transform 520ms cubic-bezier(.16,1,.3,1);will-change:transform}
      #other-courses .course-card{display:flex;flex:0 0 calc((100% - 36px)/3);min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--paper);transition:transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease}
      #other-courses .course-card:hover{transform:translateY(-4px);border-color:#b9c9b6;box-shadow:0 16px 34px rgba(47,72,49,.11)}
      #other-courses .course-card:focus-within{border-color:var(--green);box-shadow:0 0 0 4px rgba(88,115,83,.16)}
      #other-courses .course-card-cover{display:block;position:relative;margin:14px 14px 0;overflow:hidden;border-radius:14px;background:#c6ad83;aspect-ratio:16/9}
      #other-courses .course-card-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 500ms cubic-bezier(.16,1,.3,1)}
      #other-courses .course-card-discount{position:absolute;z-index:1;top:10px;right:10px;display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid rgba(255,255,255,.42);border-radius:8px;background:#c84d48;box-shadow:0 3px 8px rgba(112,39,36,.2);color:#fff;font-size:.58rem;font-weight:800;line-height:1;white-space:nowrap}
      #other-courses .course-card:hover .course-card-cover img{transform:scale(1.035)}
      #other-courses .course-card-body{display:flex;flex:1;flex-direction:column;padding:10px 14px 14px}
      #other-courses .course-card-title{margin:0;color:var(--ink);font-size:1rem;font-weight:700;letter-spacing:-.015em;line-height:1.65}
      #other-courses .course-card-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:5px 0 0;padding:0}
      #other-courses .course-card-stats{display:flex;align-items:center;gap:0}
      #other-courses .course-card-meta-item{display:grid;align-content:center;justify-items:center;gap:0;padding:0;color:var(--muted);font-size:.52rem;line-height:1.12;text-align:center}
      #other-courses .course-card-stats .course-card-meta-item{width:44px}
      #other-courses .course-card-stats .course-card-meta-item+.course-card-meta-item{border-right:1px solid var(--line)}
      #other-courses .course-card-meta-item strong{color:var(--ink);font-size:.8rem;font-weight:800;line-height:1.1}
      #other-courses .course-card-meta-item.is-duration strong{color:var(--green-dark)}
      #other-courses .course-card-payment{position:relative;overflow:hidden;min-height:48px}
      #other-courses .course-card-payment::before{position:absolute;top:50%;width:94px;height:60px;background:radial-gradient(ellipse at center,rgba(186,221,241,.54) 0,rgba(186,221,241,.2) 38%,transparent 72%);content:"";opacity:0;pointer-events:none;transform:translate(135%,-50%);filter:blur(7px)}
      #other-courses .course-card-payment .payment-logos{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:4px;width:100%;height:48px}
      #other-courses .course-card-payment .payment-logo{display:block;width:34px;height:34px;object-fit:contain;opacity:.96;filter:saturate(.96) drop-shadow(0 1px 1px rgba(46,92,131,.1))}
      #other-courses .course-card-payment--mobile{display:none}
      @media (prefers-reduced-motion:no-preference){#other-courses .course-card-payment::before{animation:other-payment-blue-sweep 6.4s cubic-bezier(.22,1,.36,1) infinite}}@keyframes other-payment-blue-sweep{0%,48%{opacity:0;transform:translate(135%,-50%)}57%{opacity:.78}72%{opacity:.36;transform:translate(-120%,-50%)}82%,100%{opacity:0;transform:translate(-120%,-50%)}}
      #other-courses .course-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:auto;padding-top:12px}
      #other-courses .course-price{display:grid;gap:2px;color:var(--ink)}
      #other-courses .course-price-old{color:#969b96;font-size:.68rem;text-decoration:line-through;text-decoration-thickness:1px}
      #other-courses .course-price-current{font-size:1rem;font-weight:800;line-height:1.3;white-space:nowrap}
      #other-courses .course-price-current small{font-size:.66rem;font-weight:750}
      #other-courses .course-card-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border:0;border-radius:10px;background:var(--primary);color:#fff;font:inherit;font-size:.78rem;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;transition:background-color 180ms ease,transform 180ms ease}
      #other-courses .course-card-action:hover{background:var(--primary-dark)}#other-courses .course-card-action:active{transform:scale(.98)}
      #other-courses .course-card-action:focus-visible,#other-courses .other-courses-all:focus-visible,#other-courses .course-carousel-dot:focus-visible{outline:3px solid rgba(88,115,83,.35);outline-offset:3px}
      #other-courses .course-card--coming .course-card-cover{background:#ebe5dc}
      #other-courses .course-card-coming-status{display:flex;align-items:center;gap:5px;margin:auto 0;color:var(--muted);font-size:.58rem;line-height:1;text-align:right}
      #other-courses .course-card-coming-status i{color:var(--primary);font-size:.66rem}
      #other-courses .course-card-coming-status span{display:flex;align-items:center;gap:6px}#other-courses .course-card-coming-status strong{color:var(--primary-dark);font-size:.6rem;font-weight:800}#other-courses .course-card-coming-status small{color:var(--muted);font-size:.55rem;font-weight:650}#other-courses .course-card-coming-status small::before{margin-left:6px;color:#b9bdb7;content:"•"}
      #other-courses .course-card-coming-action{width:100%;border:2px solid var(--green);background:transparent;color:var(--green-dark)}#other-courses .course-card-coming-action:hover{background:var(--green);color:#fff}
      #other-courses .course-carousel-controls{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px}
      #other-courses .course-carousel-dot{width:7px;height:7px;padding:0;border:1px solid rgba(87,107,80,.46);border-radius:99px;background:transparent;cursor:pointer;transition:width 220ms ease,background-color 220ms ease}
      #other-courses .course-carousel-dot[aria-selected="true"]{width:22px;background:var(--green)}
      @media (min-width:640px) and (max-width:1023px){#other-courses .course-card{flex-basis:calc((100% - 18px)/2)}#other-courses .course-carousel-dot[data-course-page="3"],#other-courses .course-carousel-dot[data-course-page="4"],#other-courses .course-carousel-dot[data-course-page="5"]{display:none}}
      @media (min-width:1024px){#other-courses .course-carousel-dot[data-course-page="2"],#other-courses .course-carousel-dot[data-course-page="3"],#other-courses .course-carousel-dot[data-course-page="4"],#other-courses .course-carousel-dot[data-course-page="5"]{display:none}}
      @media (max-width:639px){#other-courses .page-shell{width:min(100% - 32px,1200px);margin-top:44px;padding-bottom:10px}#other-courses .other-courses-heading{display:block;margin-bottom:18px}#other-courses .other-courses-heading h2{font-size:1.65rem}#other-courses .other-courses-heading p{font-size:.78rem}#other-courses .other-courses-all{margin-top:8px}#other-courses .other-courses-viewport{margin:-6px;overflow:hidden;padding:8px 6px 14px}#other-courses .course-card-track{gap:0}#other-courses .course-card{flex-basis:100%;border-radius:16px}#other-courses .course-card-cover{margin:10px 10px 0;border-radius:12px}#other-courses .course-card-body{padding:10px 12px 12px}#other-courses .course-card-title{font-size:.94rem;line-height:1.55}#other-courses .course-card-meta{gap:8px;margin-top:10px}#other-courses .course-card-stats .course-card-meta-item{width:40px}#other-courses .course-card-payment--desktop{display:grid;flex:0 0 74px;min-height:34px}#other-courses .course-card-payment--desktop .payment-logos{height:34px;gap:2px}#other-courses .course-card-payment--desktop .payment-logo{width:32px;height:32px}#other-courses .course-card-footer{gap:10px;align-items:stretch;flex-direction:column;margin-top:10px;padding-top:0}#other-courses .course-price{gap:1px;direction:rtl;text-align:right}#other-courses .course-price-current{font-size:.96rem}#other-courses .course-card-action{width:100%;min-height:40px;padding:9px 12px}}

#course-support{font-family:'iransans',Tahoma,sans-serif}
      #course-support .page-shell{width:min(100% - 32px,920px);margin:52px auto 0;padding:34px 0 48px}
      #course-support .support-panel{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:196px;padding:34px 42px;overflow:hidden;border:1px solid rgba(37,77,96,.28);border-radius:22px;background-color:#365f72;background-image:linear-gradient(90deg,rgba(30,68,86,.95),rgba(39,82,99,.84)),url("../images/course-support-pattern.png");background-position:center;background-size:cover}
      #course-support .support-copy{position:relative;z-index:1}
      #course-support .support-copy h2{margin:0;color:#fff;font-family:'gramophone','iransans',sans-serif;font-size:2.05rem;font-weight:900;line-height:1.45}
      #course-support .support-copy p{max-width:40ch;margin:7px 0 0;color:rgba(255,255,255,.82);font-size:.9rem;line-height:2}
      #course-support .support-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}
      #course-support .support-link{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:10px 14px;border:1px solid rgba(255,255,255,.7);border-radius:10px;background:#fff;color:#31586c;font-size:.74rem;font-weight:750;line-height:1.4;text-decoration:none;transition:background-color 180ms ease,color 180ms ease,transform 180ms ease}
      #course-support .support-link-icon{display:inline-grid;width:20px;height:20px;place-items:center;color:#24475b;font-size:.95rem;line-height:1}
      #course-support .support-link-icon i{font-size:inherit;line-height:1}
      #course-support .support-link:hover{background:#e9f0ec;color:#24475b;transform:translateY(-1px)}
      #course-support .support-link:focus-visible{outline:3px solid rgba(255,255,255,.42);outline-offset:3px}
      @media (max-width:639px){#course-support .page-shell{width:min(100% - 32px,920px);margin-top:36px;padding:26px 0 34px}#course-support .support-copy h2{font-size:1.65rem}#course-support .support-panel{display:block;min-height:0;padding:28px 24px}#course-support .support-links{justify-content:flex-start;margin-top:18px}#course-support .support-link{flex:1 1 auto}}

#course-faq{
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.72);
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 17px 40px rgba(67, 72, 62, 0.06),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-faq *{
        box-sizing: border-box;
      }#course-faq{
        min-width: 320px;
        background: var(--canvas);
      }#course-faq{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.09), transparent 32%),
          radial-gradient(circle at 88% 88%, rgba(170, 96, 69, 0.06), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-faq button{
        font: inherit;
      }#course-faq .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-faq,#course-faq{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-faq .section-heading{
        margin: 0 0 21px;
      }#course-faq .section-heading h2{
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.8rem, 8vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.45;
        white-space: nowrap;
      }#course-faq .section-heading p{
        max-width: 34ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-faq .faq-list{
        display: flex;
        flex-direction: column;
        gap: 9px;
      }#course-faq .faq-extra-preview{
        display: grid;
        gap: 9px;
        max-height: 147px;
        overflow: hidden;
        -webkit-mask-image: linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.48) 0%,
          rgba(0, 0, 0, 0.35) 30%,
          rgba(0, 0, 0, 0.14) 65%,
          transparent 100%
        );
        mask-image: linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.48) 0%,
          rgba(0, 0, 0, 0.35) 30%,
          rgba(0, 0, 0, 0.14) 65%,
          transparent 100%
        );
        opacity: 0.65;
        filter: grayscale(0.8);
        transition: max-height 620ms var(--ease), opacity 420ms ease,
          filter 420ms ease;
      }#course-faq .faq-list.is-expanded .faq-extra-preview{
        max-height: 520px;
        -webkit-mask-image: none;
        mask-image: none;
        opacity: 1;
        filter: none;
        order: 1;
      }#course-faq .faq-extra-preview{
        order: 2;
      }#course-faq .faq-item{
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 17px;
        background: var(--paper);
        box-shadow: 0 7px 20px rgba(67, 72, 62, 0.025);
        transition: border-color 280ms ease, background-color 280ms ease,
          box-shadow 280ms ease, opacity 420ms var(--ease), filter 420ms var(--ease),
          max-height 520ms var(--ease), transform 520ms var(--ease);
      }#course-faq .faq-item.is-open{
        border-color: rgba(87, 107, 80, 0.32);
        background: rgba(255, 255, 255, 0.84);
        box-shadow: var(--shadow);
        transform: translateY(-1px);
      }#course-faq .faq-question{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        min-height: 68px;
        padding: 10px 13px;
        border: 0;
        background: transparent;
        color: var(--ink);
        cursor: pointer;
        text-align: right;
      }#course-faq .faq-question:hover{
        color: var(--green-dark);
      }#course-faq .faq-question:active{
        transform: scale(0.995);
      }#course-faq .faq-question:focus-visible,#course-faq .all-questions:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.24);
        outline-offset: 3px;
      }#course-faq .faq-question-copy{
        display: flex;
        align-items: center;
        min-width: 0;
        gap: 10px;
      }#course-faq .faq-index{
        display: grid;
        flex: 0 0 28px;
        place-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid rgba(87, 107, 80, 0.17);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.045);
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 10px;
        font-weight: 750;
        line-height: 1;
      }#course-faq .faq-question-text{
        overflow: hidden;
        font-size: 10.7px;
        font-weight: 700;
        line-height: 1.9;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-faq .faq-toggle-icon{
        position: relative;
        display: grid;
        flex: 0 0 27px;
        place-items: center;
        width: 27px;
        height: 27px;
        border: 1px solid rgba(170, 96, 69, 0.2);
        border-radius: 50%;
        background: rgba(170, 96, 69, 0.07);
        color: var(--terracotta);
        transition: background-color 280ms ease, border-color 280ms ease,
          transform 360ms var(--ease);
      }#course-faq .faq-toggle-icon::before,#course-faq .faq-toggle-icon::after{
        position: absolute;
        width: 9px;
        height: 1.5px;
        border-radius: 999px;
        background: currentColor;
        content: "";
        transition: transform 360ms var(--ease), opacity 220ms ease;
      }#course-faq .faq-toggle-icon::after{
        transform: rotate(90deg);
      }#course-faq .faq-item.is-open .faq-toggle-icon{
        border-color: rgba(87, 107, 80, 0.25);
        background: rgba(87, 107, 80, 0.1);
        color: var(--green-dark);
        transform: rotate(180deg);
      }#course-faq .faq-item.is-open .faq-toggle-icon::after{
        opacity: 0;
        transform: rotate(90deg) scaleX(0.2);
      }#course-faq .faq-answer-wrap{
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 430ms var(--ease);
      }#course-faq .faq-item.is-open .faq-answer-wrap{
        grid-template-rows: 1fr;
      }#course-faq .faq-answer{
        min-height: 0;
        overflow: hidden;
      }#course-faq .faq-answer p{
        margin: 0;
        padding: 0 52px 16px 18px;
        color: var(--muted);
        font-size: 10px;
        line-height: 2;
      }#course-faq .faq-item.is-extra{
        max-height: 69px;
        opacity: 1;
        filter: grayscale(0.35);
        transform: translateY(3px);
      }#course-faq .faq-list.is-expanded .faq-item.is-extra{
        max-height: 230px;
        opacity: 1;
        filter: none;
        transform: translateY(0);
      }#course-faq .all-questions.is-hidden{
        display: none;
      }#course-faq .faq-list.is-expanded .all-questions{
        order: 2;
      }#course-faq .faq-item.is-extra .faq-question{
        cursor: default;
      }#course-faq .faq-list.is-expanded .faq-item.is-extra .faq-question{
        cursor: pointer;
      }#course-faq .all-questions{
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        width: 100%;
        margin-top: 5px;
        padding: 11px 16px 12px;
        border: 1px solid rgba(87, 107, 80, 0.23);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.52);
        color: var(--green-dark);
        cursor: pointer;
        font-size: 10px;
        font-weight: 750;
        transition: background-color 240ms ease, border-color 240ms ease,
          transform 240ms var(--ease), box-shadow 240ms ease;
      }#course-faq .all-questions:hover{
        border-color: rgba(87, 107, 80, 0.38);
        background: rgba(255, 255, 255, 0.84);
        box-shadow: 0 8px 20px rgba(67, 72, 62, 0.045);
        transform: translateY(-1px);
      }#course-faq .all-questions:active{
        transform: translateY(1px) scale(0.99);
      }#course-faq .all-questions-icon{
        position: relative;
        display: inline-block;
        width: 11px;
        height: 11px;
      }#course-faq .all-questions-icon::before,#course-faq .all-questions-icon::after{
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px;
        height: 1.5px;
        border-radius: 999px;
        background: currentColor;
        content: "";
        transform: translate(-50%, -50%);
        transition: transform 300ms var(--ease);
      }#course-faq .all-questions-icon::after{
        transform: translate(-50%, -50%) rotate(90deg);
      }#course-faq .faq-list.is-expanded + .all-questions .all-questions-icon::after{
        transform: translate(-50%, -50%) rotate(90deg) scaleX(0.2);
      }@media (prefers-reduced-motion: reduce){#course-faq *,#course-faq *::before,#course-faq *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-quality{
        --canvas: #f5f5f5;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 18px 44px rgba(67, 72, 62, 0.07),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-quality *{
        box-sizing: border-box;
      }#course-quality{
        min-width: 320px;
        background: var(--canvas);
      }#course-quality{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.09), transparent 32%),
          radial-gradient(circle at 88% 88%, rgba(170, 96, 69, 0.06), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-quality .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-quality,#course-quality{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-quality .section-heading{
        margin: 0 0 22px;
      }#course-quality .section-heading h2{
        max-width: 18ch;
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.65rem, 7.4vw, 2.55rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.5;
      }#course-quality .section-heading p{
        width: 100%;
        max-width: none;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-quality .quality-layout{
        display: grid;
        gap: 22px;
        align-items: center;
      }#course-quality .quality-visual{
        position: relative;
        display: grid;
        min-height: 245px;
        place-items: center;
        isolation: isolate;
      }#course-quality .quality-visual::before,#course-quality .quality-visual::after{
        position: absolute;
        right: 50%;
        bottom: 16px;
        width: min(68vw, 245px);
        height: 33px;
        border: 1px solid rgba(87, 107, 80, 0.15);
        border-radius: 50%;
        content: "";
        transform: translateX(50%);
        pointer-events: none;
      }#course-quality .quality-visual::after{
        bottom: 9px;
        width: min(50vw, 180px);
        border-color: rgba(170, 96, 69, 0.14);
      }#course-quality .quality-art{
        position: relative;
        z-index: 1;
        display: block;
        width: min(54vw, 190px);
        height: auto;
        filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12));
        transform: none;
      }#course-quality .quality-copy{
        padding-top: 2px;
      }#course-quality .quality-lead{
        max-width: none;
        margin: 0;
        color: var(--ink);
        font-size: 12px;
        font-weight: 650;
        line-height: 2.15;
        text-align: center;
      }#course-quality .quality-stats{
        position: relative;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        margin: 16px 0 0;
        padding: 0;
      }#course-quality .quality-stats::before,#course-quality .quality-stats::after{
        position: absolute;
        top: 12px;
        bottom: 12px;
        width: 1px;
        background: var(--soft-line);
        content: "";
        pointer-events: none;
      }#course-quality .quality-stats::before{
        right: 33.333%;
        transform: translateX(50%);
      }#course-quality .quality-stats::after{
        right: 66.666%;
        transform: translateX(50%);
      }#course-quality .quality-stat{
        position: relative;
        display: grid;
        min-height: 86px;
        place-items: center;
        padding: 12px 4px;
        isolation: isolate;
        text-align: center;
      }#course-quality .quality-stat::before{
        position: absolute;
        top: 12px;
        left: 50%;
        z-index: -1;
        width: 82px;
        height: 58px;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(87, 107, 80, 0.12), transparent 72%);
        content: "";
        opacity: 0.55;
        transform: translateX(-50%);
        filter: blur(8px);
      }#course-quality .quality-stat-value{
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.2rem, 5.5vw, 1.8rem);
        font-weight: 800;
        letter-spacing: -0.06em;
        line-height: 1.2;
        white-space: nowrap;
      }#course-quality .quality-stat:nth-child(even) .quality-stat-value{
        color: var(--green);
      }#course-quality .quality-stat-label{
        margin-top: 5px;
        color: var(--muted);
        font-size: 9px;
        font-weight: 650;
        line-height: 1.7;
        white-space: nowrap;
      }@media (prefers-reduced-motion: no-preference){#course-quality .quality-art{
          animation: quality-arrival 760ms var(--ease) both,
            quality-glow 4.2s ease-in-out 760ms infinite;
        }#course-quality .quality-stat::before{
          animation: stat-halo 7s ease-in-out infinite;
        }
      }@keyframes quality-arrival{
        from {
          opacity: 0;
          transform: translateY(12px) rotate(-6deg) scale(0.96);
        }
        to {
          opacity: 1;
          transform: translateY(0) rotate(-3deg) scale(1);
        }
      }@keyframes quality-glow{
        0%,
        100% {
          transform: translateY(0);
          filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12))
            drop-shadow(0 0 0 rgba(87, 135, 77, 0));
        }
        50% {
          transform: translateY(-8px);
          filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12))
            drop-shadow(0 0 24px rgba(87, 135, 77, 0.34));
        }
      }@keyframes stat-halo{
        0%,
        100% {
          opacity: 0.35;
          transform: translateX(-50%) scale(0.92);
        }
        50% {
          opacity: 0.7;
          transform: translateX(-50%) scale(1.08);
        }
      }@media (prefers-reduced-motion: reduce){#course-quality *,#course-quality *::before,#course-quality *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-register{
        --canvas: #f5f5f5;
        --paper: #fff;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.64);
        --line: rgba(46, 49, 45, 0.11);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --terracotta-dark: #8f4e38;
        --soft-green: rgba(87, 107, 80, 0.055);
        --shadow: 0 22px 52px rgba(67, 72, 62, 0.09),
          0 4px 14px rgba(67, 72, 62, 0.04);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-register *{
        box-sizing: border-box;
      }#course-register{
        min-width: 0;
        background: var(--canvas);
      }#course-register{
        min-width: 0;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 10% 12%, rgba(87, 107, 80, 0.07), transparent 30%),
          radial-gradient(circle at 90% 88%, rgba(170, 96, 69, 0.05), transparent 28%);
        background-repeat: no-repeat;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-register button{
        font: inherit;
      }#course-register .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-register,#course-register{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-register .final-cta{
        overflow: hidden;
        border: 1px solid rgba(87, 107, 80, 0.14);
        border-radius: 22px;
        background: var(--paper);
        box-shadow: var(--shadow);
      }#course-register .cta-visual{
        position: relative;
        aspect-ratio: 16 / 9;
        height: auto;
        margin: 0;
        overflow: hidden;
        background: #eadfc9;
      }#course-register .cta-visual::after{
        position: absolute;
        inset: auto 0 0;
        height: 46%;
        background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.16));
        content: "";
        pointer-events: none;
      }#course-register .cta-visual img{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
        filter: saturate(0.78) contrast(0.94);
        transform: none;
      }#course-register .cta-content{
        padding: 21px 18px 18px;
      }#course-register .cta-meta{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
      }#course-register .course-name{
        color: var(--green);
        font-size: 11px;
        font-weight: 760;
        line-height: 1.7;
      }#course-register .discount-badge{
        flex: 0 0 auto;
        padding: 5px 9px;
        border: 1px solid rgba(170, 96, 69, 0.18);
        border-radius: 999px;
        color: var(--terracotta-dark);
        background: rgba(170, 96, 69, 0.09);
        font-size: 10px;
        font-weight: 780;
        line-height: 1.5;
      }#course-register .cta-title{
        max-width: none;
        margin: 10px 0 0;
        color: var(--green-dark);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.45rem, 6.4vw, 1.9rem);
        font-weight: 820;
        letter-spacing: -0.045em;
        line-height: 1.45;
      }#course-register .cta-lead{
        max-width: 38ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 12px;
        line-height: 2;
      }#course-register .course-facts{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 18px;
        padding: 13px 0;
        border-top: 1px solid var(--line);
        border-bottom: 1px solid var(--line);
      }#course-register .course-fact{
        min-width: 0;
        padding: 0 8px;
        text-align: center;
      }#course-register .course-fact + .course-fact{
        border-right: 1px solid var(--line);
      }#course-register .course-fact strong,#course-register .course-fact span{
        display: block;
      }#course-register .course-fact strong{
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 0.98rem;
        font-weight: 800;
        line-height: 1.5;
        white-space: nowrap;
      }#course-register .course-fact span{
        margin-top: 2px;
        overflow: hidden;
        color: rgba(46, 49, 45, 0.56);
        font-size: 9px;
        line-height: 1.65;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-register .cta-offer{
        margin-top: 16px;
        padding: 15px;
        border: 1px solid rgba(87, 107, 80, 0.12);
        border-radius: 16px;
        background: var(--soft-green);
      }#course-register .price-head,#course-register .price-values,#course-register .payment-row{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
      }#course-register .price-head{
        justify-content: flex-start;
        color: rgba(46, 49, 45, 0.62);
        font-size: 11px;
        font-weight: 650;
      }#course-register .price-saving{
        color: var(--green);
        font-size: 10px;
        font-weight: 760;
        white-space: nowrap;
      }#course-register .price-values{
        align-items: baseline;
        margin-top: 5px;
        direction: ltr;
      }#course-register .current-price{
        color: var(--terracotta);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.55rem, 7.6vw, 2rem);
        font-weight: 850;
        letter-spacing: -0.045em;
        line-height: 1.3;
        white-space: nowrap;
      }#course-register .current-price small{
        margin-right: 3px;
        font-family: 'iransans', Tahoma, sans-serif;
        font-size: 0.43em;
        font-weight: 700;
        letter-spacing: 0;
      }#course-register .old-price{
        color: rgba(46, 49, 45, 0.45);
        font-size: 12px;
        text-decoration: line-through;
        white-space: nowrap;
      }#course-register .purchase-button{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 54px;
        margin-top: 13px;
        border: 0;
        border-radius: 13px;
        color: #fff;
        background: var(--terracotta);
        box-shadow: 0 10px 22px rgba(170, 96, 69, 0.2);
        cursor: pointer;
        font: 800 0.95rem/1.5 'iransans', Tahoma, sans-serif;
        white-space: nowrap;
        transition: transform 180ms var(--ease), box-shadow 180ms ease,
          background-color 180ms ease;
      }#course-register .purchase-button:hover{
        background: var(--terracotta-dark);
        box-shadow: 0 13px 26px rgba(170, 96, 69, 0.23);
        transform: translateY(-1px);
      }#course-register .purchase-button:active{
        box-shadow: 0 7px 15px rgba(170, 96, 69, 0.16);
        transform: translateY(1px) scale(0.99);
      }#course-register .purchase-button:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.3);
        outline-offset: 3px;
      }#course-register .payment-row{
        justify-content: center;
        margin-top: 13px;
        color: rgba(46, 49, 45, 0.58);
        font-size: 9px;
        line-height: 1.6;
      }#course-register .payment-logos{
        display: flex;
        align-items: center;
        gap: 5px;
      }#course-register .payment-logo{
        display: block;
        width: 25px;
        height: 25px;
        border-radius: 7px;
        object-fit: contain;
      }#course-register .cta-note{
        margin: 12px auto 0;
        color: rgba(46, 49, 45, 0.54);
        font-size: 9px;
        line-height: 1.85;
        text-align: center;
      }@media (max-width: 359px){#course-register .page-shell{
          padding-inline: 12px;
        }#course-register .cta-content{
          padding-inline: 15px;
        }#course-register .cta-offer{
          padding-inline: 12px;
        }#course-register .course-fact{
          padding-inline: 5px;
        }#course-register .course-fact strong{
          font-size: 0.88rem;
        }#course-register .course-fact span{
          font-size: 8px;
        }
      }@media (prefers-reduced-motion: reduce){#course-register *,#course-register *::before,#course-register *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
    
    

    .sticky-course-purchase {
      position: fixed;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 20;
      display: flex;
      box-sizing: border-box;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      width: 100%;
      margin: 0;
      padding: 10px 16px calc(10px + env(safe-area-inset-bottom)) 16px;
      border: 0;
      border-radius: 0;
      background: rgba(251, 251, 250, 0.94);
      box-shadow: 0 -8px 24px rgba(67, 72, 62, 0.12),
        0 -2px 7px rgba(67, 72, 62, 0.05);
      color: #2e312d;
      direction: rtl;
      font-family: 'iransans', Tahoma, sans-serif;
      opacity: 1;
      transform: translateY(0);
      transition: opacity 220ms ease, transform 280ms cubic-bezier(0.23, 1, 0.32, 1);
      backdrop-filter: blur(10px);
    }

    .sticky-course-purchase[hidden] {
      display: flex;
      opacity: 0;
      pointer-events: none;
      transform: translateY(calc(100% + 24px));
    }

    .sticky-course-purchase-copy {
      min-width: 0;
    }

    .sticky-course-purchase-label {
      display: block;
      color: rgba(46, 49, 45, 0.58);
      font-size: 9px;
      line-height: 1.7;
    }

    .sticky-course-purchase-price {
      display: block;
      margin-top: 1px;
      color: #40523c;
      font-family: 'iransans', Tahoma, sans-serif;
      font-size: 16px;
      font-weight: 800;
      letter-spacing: -0.03em;
      line-height: 1.45;
      white-space: nowrap;
    }

    .sticky-course-purchase-price small {
      font-size: 9px;
      font-weight: 700;
    }

    .sticky-course-purchase-button {
      flex: 0 0 auto;
      min-width: 126px;
      padding: 10px 16px 11px;
      border: 0;
      border-radius: 11px;
      background: #576b50;
      color: #fff;
      cursor: pointer;
      font: inherit;
      font-size: 10px;
      font-weight: 750;
      line-height: 1.6;
      white-space: nowrap;
      transition: background-color 180ms ease, transform 180ms ease;
    }

    .sticky-course-purchase-button:hover {
      background: #40523c;
    }

    .sticky-course-purchase-button:active {
      transform: translateY(1px) scale(0.985);
    }

    .sticky-course-purchase-button:focus-visible {
      outline: 3px solid rgba(87, 107, 80, 0.3);
      outline-offset: 3px;
    }

    body.has-sticky-course-purchase {
      padding-bottom: 84px;
    }

    @media (max-width: 460px) {
      .sticky-course-purchase {
        gap: 10px;
        padding-right: 12px;
        padding-left: 12px;
      }

      .sticky-course-purchase-price {
        font-size: 14px;
      }

      .sticky-course-purchase-button {
        min-width: 112px;
        padding-right: 12px;
        padding-left: 12px;
      }
    }

    @media (min-width: 1024px) {
      .sticky-course-purchase {
        min-height: 76px;
        gap: 28px;
        padding-top: 12px;
        padding-right: max(40px, calc((100vw - 1200px) / 2));
        padding-bottom: 12px;
        padding-left: max(40px, calc((100vw - 1200px) / 2));
      }

      .sticky-course-purchase-copy {
        display: flex;
        align-items: baseline;
        gap: 14px;
      }

      .sticky-course-purchase-label {
        font-size: 0.72rem;
      }

      .sticky-course-purchase-price {
        font-size: 1.22rem;
      }

      .sticky-course-purchase-price small {
        font-size: 0.68rem;
      }

      .sticky-course-purchase-button {
        min-width: 190px;
        min-height: 46px;
        border-radius: 14px;
        font-size: 0.82rem;
      }

      body.has-sticky-course-purchase {
        padding-bottom: 76px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .sticky-course-purchase {
        transition-duration: 0.01ms;
      }
    }
  
  
    /* Desktop typography reference for all subsequent desktop sections. */
    @media (min-width:768px){
      :root{
        --desktop-display:clamp(3.25rem,5vw,4.9rem);
        --desktop-section-title:clamp(2.7rem,4vw,4rem);
        --desktop-hero-compact:clamp(1.9rem,2.8vw,3rem);
        --desktop-card-title:1.55rem;
        --desktop-body:1rem;
        --desktop-body-leading:2.05;
        --desktop-meta:.78rem;
        --desktop-caption:.72rem;
      }
    }
    /* Tablet and desktop hero: 60% content column, 40% course visual. */
    @media (min-width:768px){
      .course-mobile-page{overflow:visible}
      .course-section .page-shell{width:calc(100% - 64px)!important;margin-right:auto!important;margin-left:auto!important}
      #course-intro .page-shell{width:calc(100% - 64px);padding:48px 0 64px}
      @media (min-width:1280px){
        .course-section .page-shell,#course-intro .page-shell{width:min(calc(100% - 64px),1280px)!important}
      }
      #course-intro .course-hero{display:block}
      #course-intro .breadcrumb{margin:0 0 26px;font-size:var(--desktop-meta)}
      #course-intro .title-row{display:grid;grid-template-columns:minmax(0,60fr) minmax(260px,40fr);grid-template-areas:"title banner" "description banner" "facts banner";align-items:start;gap:16px 42px;direction:ltr}
      #course-intro .title-row > *{direction:rtl}
      #course-intro .course-banner{grid-area:banner;display:block;width:100%;height:auto;aspect-ratio:16/9;min-height:0;object-fit:cover;border-radius:26px;box-shadow:0 22px 54px rgba(67,72,62,.11)}
      #course-intro .page-title{grid-area:title;max-width:none;margin:4px 0 0;padding:0;color:#aa6045;font-size:var(--desktop-hero-compact);line-height:1.28;text-align:right}
      #course-intro .title-description{grid-area:description;max-width:none;margin:0;color:rgba(46,49,45,.7);font-size:var(--desktop-body);line-height:var(--desktop-body-leading);text-align:right}
      #course-intro .course-quick-facts{position:relative;grid-area:facts;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:8px 0 0;padding:0;border:0;background:transparent;box-shadow:none}
      #course-intro .course-quick-facts::before,#course-intro .course-quick-facts::after{position:absolute;z-index:1;background:rgba(46,49,45,.11);content:"";pointer-events:none}
      #course-intro .course-quick-facts::before{top:12px;bottom:12px;left:50%;width:1px}
      #course-intro .course-quick-facts::after{right:0;left:0;top:50%;height:1px}
      #course-intro .course-quick-fact{display:flex;align-items:center;gap:8px;min-width:0;padding:12px 10px;background:transparent}
      #course-intro .course-quick-fact img{display:block;flex:0 0 auto;width:28px;height:28px;object-fit:contain}
      #course-intro .course-quick-fact strong{display:block;color:#40523c;font-family:'gramophone','iransans',sans-serif;font-size:.82rem;font-weight:800;line-height:1.45}
      #course-intro .course-quick-fact span{display:none}

      /* Keep the first transition compact: the next section supplies the visual reset. */
      #course-intro .page-shell{padding:40px 0}
      #course-intro .soft-divider{display:none}
      #course-intro + .course-section{border-top:0}

      /* Overview becomes a short narrative interlude on tablet and desktop. */
      #course-overview{
        position:relative;
        background-color:#f5f5f5!important;
        background-image:
          linear-gradient(rgba(87,107,80,.035) 1px,transparent 1px),
          linear-gradient(90deg,rgba(87,107,80,.035) 1px,transparent 1px)!important;
        background-size:56px 56px!important;
        background-attachment:initial!important;
      }
      #course-overview .page-shell{padding:0!important}
      #course-overview .course-highlights{position:static;min-height:0}
      #course-overview .section-heading,
      #course-overview .highlight-grid{display:none!important}
      #course-overview .course-intro{
        position:static;
        min-height:216px;
        margin:0;
        padding:20px 0;
        overflow:visible;
      }
      #course-overview .course-art{
        top:0;
        right:auto;
        bottom:0;
        left:0;
        z-index:0;
        width:32%;
        opacity:.18;
      }
      #course-overview .course-art img{
        width:min(100%,240px);
        height:196px;
        opacity:1;
        filter:grayscale(.18) saturate(.72) contrast(.9);
        transform:translateX(10%) rotate(-2deg);
      }
      #course-overview .course-copy{
        z-index:1;
        width:min(56%,650px);
        min-height:188px;
        margin-right:auto;
        margin-left:auto;
        padding:18px 0;
        text-align:center;
        align-items:center;
      }
      #course-overview .course-copy::before{display:none}
      #course-overview .course-copy h2{
        max-width:none;
        font-size:var(--desktop-card-title);
        line-height:1.45;
      }
      #course-overview .course-copy p{
        max-width:38ch;
        margin-top:8px;
        font-size:var(--desktop-body);
        line-height:var(--desktop-body-leading);
        text-align:center;
      }
      #course-overview .course-scope{
        margin-top:10px;
        font-size:var(--desktop-meta);
        justify-content:center;
      }

      /* Main content stays in the 65% reading column; the purchase card occupies the left rail. */
      #course-description{
        background-color:#f5f5f5!important;
        background-image:
          linear-gradient(rgba(87,107,80,.035) 1px,transparent 1px),
          linear-gradient(90deg,rgba(87,107,80,.035) 1px,transparent 1px)!important;
        background-size:56px 56px!important;
      }
      #course-description .page-shell,
      #course-content .page-shell,
      #course-instructors .page-shell,
      #course-faq .page-shell,
      #course-quality .page-shell{
        width:min(calc(65% - 24px),832px)!important;
        margin-right:max(32px,calc((100vw - 1280px)/2))!important;
        margin-left:auto!important;
      }
      body.has-sticky-course-purchase{padding-bottom:0}
      .sticky-course-purchase{
        top:32px;
        right:auto;
        bottom:auto;
        left:max(32px,calc((100vw - 1280px)/2));
        display:flex;
        flex-direction:column;
        align-items:stretch;
        justify-content:flex-start;
        gap:16px;
        width:min(calc(35vw - 64px),392px);
        margin:0;
        padding:24px;
        border:1px solid rgba(64,82,60,.13);
        border-radius:22px;
        background:rgba(255,255,255,.96);
        box-shadow:0 20px 48px rgba(49,57,47,.12);
        backdrop-filter:blur(12px);
      }
      .sticky-course-purchase[hidden]{
        display:flex;
        opacity:0;
        pointer-events:none;
        transform:translateY(-12px);
      }
      .sticky-course-purchase-copy{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
      .sticky-course-purchase-kicker{margin:0;color:#576b50;font-size:var(--desktop-caption);font-weight:800}
      .sticky-course-purchase-title{margin:0;color:#2e312d;font-size:1.2rem;line-height:1.55;text-align:center}
      .sticky-course-purchase-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:12px 0;border-top:1px solid rgba(46,49,45,.09);border-bottom:1px solid rgba(46,49,45,.09)}
      .sticky-course-purchase-facts span{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;color:rgba(46,49,45,.62);font-size:.68rem;line-height:1.55;text-align:center}
      .sticky-course-purchase-facts span + span::before{position:absolute;top:3px;right:0;bottom:3px;width:1px;background:rgba(46,49,45,.09);content:""}
      .sticky-course-purchase-facts strong{color:#40523c;font-size:.82rem;font-weight:800}
      .sticky-course-purchase-label{align-self:flex-start;padding:4px 8px;border-radius:999px;background:rgba(170,96,69,.1);color:#9e593f;font-size:var(--desktop-caption)}
      .sticky-course-purchase-old-price{color:rgba(46,49,45,.52);font-size:var(--desktop-meta);text-decoration-thickness:1px}
      .sticky-course-purchase-price{font-size:1.55rem}
      .sticky-course-purchase-benefits{display:grid;gap:8px;margin:0;padding:0;list-style:none}
      .sticky-course-purchase-benefits li{position:relative;padding-right:20px;color:rgba(46,49,45,.76);font-size:.75rem;line-height:1.7}
      .sticky-course-purchase-benefits li::before{position:absolute;top:.5em;right:1px;width:8px;height:4px;border-bottom:2px solid #576b50;border-left:2px solid #576b50;content:"";transform:rotate(-45deg)}
      .sticky-course-purchase-note{margin:0;color:rgba(46,49,45,.62);font-size:var(--desktop-caption);line-height:1.8}
      #course-details .sticky-course-payment{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:9px 0 0;border-top:1px solid rgba(46,49,45,.09);color:rgba(46,49,45,.62);font-size:.68rem;line-height:1.6}
      #course-details .sticky-course-payment .payment-logos{display:inline-flex;align-items:center;gap:5px}
      #course-details .sticky-course-payment .payment-logo{display:block;width:30px;height:30px;object-fit:contain}
      .sticky-course-purchase-button{width:100%;min-height:48px;border-radius:12px;font-size:.92rem}

      /* The third section owns both the content column and its persistent purchase rail. */
      #course-details{
        background-color:#f5f5f5;
        background-image:
          linear-gradient(rgba(87,107,80,.035) 1px,transparent 1px),
          linear-gradient(90deg,rgba(87,107,80,.035) 1px,transparent 1px);
        background-size:56px 56px;
      }
      #course-details .course-details-layout{
        display:grid;
        grid-template-columns:minmax(220px,30fr) minmax(0,70fr);
        column-gap:24px;
        align-items:start;
        width:min(calc(100% - 64px),1280px);
        margin:0 auto;
        padding:0;
        direction:ltr;
      }
      #course-details .course-details-main{min-width:0;grid-column:2;direction:rtl}
      #course-details .course-section{min-width:0;background:transparent!important;background-image:none!important}
      #course-details .course-details-main > .course-section,
      #course-details .course-details-main > .course-section + .course-section{
        border-top:0!important;
      }
      #course-details .course-section .page-shell{
        width:100%!important;
        margin:0!important;
        padding:48px 0!important;
      }
      #course-details #course-description .page-shell{padding-top:0!important}
      #course-details .sticky-course-purchase{
        position:sticky;
        top:48px;
        right:auto;
        bottom:auto;
        left:auto;
        grid-column:1;
        width:100%;
        height:max-content;
        margin:0;
        opacity:1;
        pointer-events:auto;
        transform:none;
        transition:none;
        direction:rtl;
      }
      #course-details .sticky-course-purchase[hidden]{display:flex;opacity:1;pointer-events:auto;transform:none}
      #course-description .section-heading h2,
      #course-content .section-heading h2,
      #course-instructors .section-heading h2,
      #course-student-experience .section-heading h2,
      #course-faq .section-heading h2,
      #course-quality .section-heading h2{
        font-size:clamp(1.75rem,2.4vw,2.25rem);
        line-height:1.45;
        letter-spacing:-.035em;
        white-space:normal;
      }
      #course-description .section-heading p,
      #course-content .section-heading p,
      #course-instructors .section-heading p,
      #course-student-experience .section-heading p,
      #course-faq .section-heading p,
      #course-quality .section-heading p{
        width:100%;
        max-width:none;
        font-size:.98rem;
        line-height:2;
      }

      /* Course description: full-width, readable copy with one consistent hierarchy. */
      #course-description .description-panel{margin-top:24px;padding:24px;border-radius:22px}
      #course-description .description-copy{margin-top:22px}
      #course-description .description-block + .description-block,
      #course-description .description-reveal{margin-top:28px;padding-top:28px}
      #course-description .description-block h2{font-size:1.3rem;line-height:1.55}
      #course-description .description-block p{width:100%;max-width:none;margin-top:10px;font-size:.98rem;line-height:2.1}
      #course-description .expand-button{min-width:156px;margin-bottom:0;padding:10px 14px;font-size:.9rem}

      /* Course content: normalize dense controls, lesson text and preview cards. */
      #course-content .section-heading{margin-bottom:24px}
      #course-content .chapter-banner{min-height:190px;border-radius:18px}
      #course-content .chapter-banner-image{min-height:190px;height:190px;object-position:center center}
      #course-content .chapter-banner-copy{right:18px;left:18px}
      #course-content .banner-title{font-size:1.55rem;line-height:1.4}
      #course-content .banner-meta{font-size:.82rem}
      #course-content .chapter-tabs{gap:10px;margin-top:16px}
      #course-content .chapter-tab{padding:10px 8px;border-radius:13px}
      #course-content .chapter-tab-number{font-size:.78rem}
      #course-content .chapter-tab-name{font-size:.92rem;line-height:1.55}
      #course-content .lesson-panel{margin-top:16px;padding:10px 16px;border-radius:18px}
      #course-content .lesson-panel-head{padding:8px 2px 14px}
      #course-content .lesson-panel-head h2{font-size:1.22rem;line-height:1.55}
      #course-content .lesson-panel-head p{font-size:.82rem}
      #course-content .lesson-button{grid-template-columns:32px minmax(0,1fr) auto;gap:11px;min-height:60px;padding:8px 2px}
      #course-content .lesson-number,#course-content .lesson-action{width:30px;height:30px;border-radius:10px;font-size:.82rem}
      #course-content .lesson-title{font-size:.88rem;font-weight:580;line-height:1.75}
      #course-content .lesson-duration,#course-content .preview-duration-inline{font-size:.78rem}
      #course-content .course-preview{margin-top:38px}
      #course-content .course-preview-title{font-size:1.22rem;line-height:1.55}
      #course-content .course-preview-copy{max-width:none;margin-top:7px;font-size:.9rem;line-height:1.9;text-align:right}
      #course-content .preview-filters{gap:8px;margin-bottom:16px}
      #course-content .preview-filter{padding:10px 8px;border-radius:12px;font-size:.84rem;line-height:1.55}
      #course-content .preview-player-caption{padding:11px 13px;font-size:.82rem;line-height:1.7}
      #course-content .preview-player-fallback{font-size:.9rem}
      #course-content .preview-grid{gap:12px}
      #course-content .preview-card-copy{padding:11px 12px 12px}
      #course-content .preview-card-title{font-size:.82rem;font-weight:580;line-height:1.65}
      #course-content .preview-card-meta{margin-top:3px;font-size:.78rem;line-height:1.6}
      #course-content .access-tooltip{font-size:.8rem;line-height:1.7}

      /* Instructor cards need breathing room inside the content column. */
      #course-instructors .section-heading{margin-bottom:24px}
      #course-instructors .teacher-stage{min-height:370px;margin:0 18px}
      #course-instructors .teacher-card{width:min(42vw,215px);height:335px;border-radius:18px}
      #course-instructors .teacher-card-copy{padding:44px 14px 14px}
      #course-instructors .teacher-role,#course-instructors .teacher-focus{font-size:.78rem}
      #course-instructors .teacher-name{font-size:1.15rem}

      /* Student voices sit after the instructors as social proof, without competing with the purchase CTA. */
      #course-student-experience .page-shell{width:100%!important;margin:0!important;padding:48px 0!important}
      #course-student-experience .section-heading{margin-bottom:24px}
      #course-student-experience .student-experience-carousel{border-radius:20px;box-shadow:none}
      #course-student-experience .student-experience-track{height:auto}
      #course-student-experience .student-experience-card{min-height:156px;padding:20px}
      #course-student-experience .experience-quote{font-size:.78rem;line-height:2}
      #course-student-experience .student-rating{font-size:1.05rem}
      #course-student-experience .student-meta{font-size:.74rem}

      /* FAQ and quality use the same title, lead, question and answer scale. */
      #course-faq .section-heading{margin-bottom:22px}
      #course-faq .faq-list{gap:10px}
      #course-faq .faq-question{min-height:62px;padding:11px 15px}
      #course-faq .faq-index{width:30px;height:30px;flex-basis:30px;font-size:.78rem}
      #course-faq .faq-question-text{font-size:.88rem;font-weight:600;line-height:1.8}
      #course-faq .faq-answer p{padding:0 56px 18px 20px;font-size:.92rem;line-height:2.05}
      #course-faq .all-questions{padding:12px 16px;font-size:.9rem}
      #course-details #course-quality .page-shell{padding:28px!important;border:1px solid rgba(46,49,45,.1);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 16px 38px rgba(67,72,62,.07)}
      #course-quality .quality-layout{display:flex;flex-direction:row;gap:28px;align-items:center;direction:rtl}
      #course-quality .quality-visual{display:grid;flex:0 0 210px;min-height:0;place-items:center;align-self:center;direction:rtl}
      #course-quality .quality-copy{flex:1 1 auto;min-width:0;align-self:center;padding:0;direction:rtl}
      #course-quality .quality-copy .section-heading{margin:0 0 12px}
      #course-quality .quality-copy .section-heading h2{font-size:1.65rem;line-height:1.45}
      #course-quality .quality-art{width:min(100%,145px);margin:auto}
      #course-quality .quality-lead{font-size:1rem;line-height:2.05}
      #course-quality .quality-stat{min-height:78px}
      #course-quality .quality-stat-value{font-size:1.6rem}
      #course-quality .quality-stat-label{font-size:.8rem}

      /* Final CTA follows the same scale without competing with the main content. */
      #course-register .cta-content{padding:30px 32px}
      #course-register .course-name,#course-register .discount-badge{font-size:.88rem}
      #course-register .cta-title{font-size:clamp(1.75rem,2.4vw,2.25rem);line-height:1.45}
      #course-register .cta-lead{max-width:none;font-size:.98rem;line-height:2}
      #course-register .course-fact strong{font-size:1.15rem}
      #course-register .course-fact span,#course-register .price-saving{font-size:.8rem}
      #course-register .price-head{font-size:.92rem}
      #course-register .current-price{font-size:2.1rem}
      #course-register .old-price{font-size:.96rem}
      #course-register .purchase-button{font-size:.95rem}
      #course-register .payment-row,#course-register .cta-note{font-size:.8rem}
      #course-register .cta-offer{padding:12px 0;border:0;background:transparent;box-shadow:none}

      /* Keep the third section crisp: solid paper surfaces and only borders for separation. */
      #course-details #course-description .page-shell,
      #course-details #course-content .page-shell,
      #course-details #course-instructors .page-shell,
      #course-details #course-faq .page-shell,
      #course-details #course-quality .page-shell{box-shadow:none!important}
      #course-details .intro-video,
      #course-details .chapter-tabs,
      #course-details .chapter-tab,
      #course-details .lesson-panel,
      #course-details .preview-filter,
      #course-details .preview-card,
      #course-details .preview-player,
      #course-details .faq-item,
      #course-details .faq-item.is-open{box-shadow:none!important}
      #course-details .faq-item.is-open{transform:none}
      #course-details .teacher-card,
      #course-details .teacher-card[data-state="active"]{box-shadow:none!important}

      /* Purchase rail: course identity, price, trust signal, then the primary action. */
      .sticky-course-purchase{gap:13px;padding:20px;background:#fff;box-shadow:0 12px 28px rgba(49,57,47,.06);backdrop-filter:none}
      .sticky-course-purchase-thumb{display:block;width:100%;height:auto;aspect-ratio:16 / 9;border-radius:12px;object-fit:cover;object-position:center;opacity:1}
      .sticky-course-purchase-title{font-size:1.08rem;line-height:1.5}
      .sticky-course-purchase-copy{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"old label" "price .";align-items:center;gap:4px 10px;padding:2px 0;border:0;border-radius:0;background:transparent;direction:ltr}
      .sticky-course-purchase-label{grid-area:label;align-self:center;width:max-content;justify-self:end;direction:rtl}
      .sticky-course-purchase-old-price{grid-area:old;white-space:nowrap;justify-self:start;direction:rtl}
      .sticky-course-purchase-price{grid-area:price;display:block;justify-self:start;margin-right:auto!important;margin-left:0!important;text-align:left;direction:rtl;line-height:1.25}
      #course-details .sticky-course-payment{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:10px 0 2px;overflow:hidden;border-top:1px solid rgba(65,111,150,.18);border-radius:0;background:linear-gradient(90deg,transparent,rgba(83,139,190,.035),transparent);color:rgba(51,90,122,.82);font-size:.72rem;font-weight:550;line-height:1.7;animation:none}
      #course-details .sticky-course-payment::before{position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(90deg,transparent,rgba(105,166,207,.18),transparent);content:"";transform:translateX(220%);animation:payment-blue-sweep 4.6s ease-in-out infinite}
      #course-details .sticky-course-payment > span:first-child{position:relative;z-index:1;white-space:nowrap}
      #course-details .sticky-course-payment .payment-logos{position:relative;z-index:1;gap:5px}
      #course-details .sticky-course-payment .payment-logo{width:36px;height:36px;opacity:.92;filter:saturate(.9)}
      .sticky-course-purchase-benefits li{display:flex;align-items:center;gap:8px;padding-right:0}
      .sticky-course-purchase-benefits li::before{display:none}
      .sticky-course-purchase-benefits .benefit-icon{display:inline-grid;flex:0 0 18px;width:18px;height:18px;place-items:center;color:#576b50;font-size:.88rem;font-weight:800;line-height:1}
      @keyframes payment-blue-sweep{0%,62%{transform:translateX(220%)}88%,100%{transform:translateX(-360%)}}
      /* Registration CTA: the white icon capsule expands across the green action on hover. */
      .sticky-course-purchase-button{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:3.2em;min-height:0;padding:.35em 1.2em;border:0;border-radius:.9em;overflow:hidden;background:#576b50;color:#fff;font-family:'iransans',Tahoma,sans-serif;font-size:.98rem;font-weight:700;letter-spacing:0;line-height:1.35;box-shadow:inset 0 0 1.6em -.6em #40523c;cursor:pointer;transition:background-color 180ms ease,transform 180ms ease}
      .sticky-course-purchase-button .button-label{display:block;white-space:nowrap;text-align:center}
      .sticky-course-purchase-button .button-icon{position:absolute;top:50%;right:10px;display:flex;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin-left:1em;border-radius:.7em;background:#6b8065;color:#f7faf5;box-shadow:none;transform:translateY(-50%);transition:right .3s ease,width .3s ease,background-color .3s ease,transform .3s ease}
      .sticky-course-purchase-button .button-icon svg{display:block;width:1.16em;height:1.16em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9;transition:transform .3s ease}
      .sticky-course-purchase-button:hover{background:#50664a}
      .sticky-course-purchase-button:hover .button-icon{right:10px;width:calc(100% - 20px);background:#6b8065}
      .sticky-course-purchase-button:hover .button-icon svg{transform:translateX(.1em)}
      .sticky-course-purchase-button:active .button-icon{transform:translateY(-50%) scale(.95)}
      @media (prefers-reduced-motion:reduce){.sticky-course-purchase-button .button-icon,.sticky-course-purchase-button .button-icon svg{transition:none}.sticky-course-purchase-button:hover .button-icon,#course-details .sticky-course-payment,#course-details .sticky-course-payment::before{animation:none}}

      /* The focus line identifies the taught chapter; the redundant role line is retired. */
      #course-instructors .teacher-role{display:none}
      #course-instructors .teacher-focus{margin-top:5px;font-size:.74rem;font-weight:650;line-height:1.65}

      #course-overview .course-art{width:25%}
      #course-overview .course-art img{width:min(100%,165px);height:150px}
      #course-quality .quality-visual{flex-basis:178px}
      #course-quality .quality-art{width:min(100%,118px)}
      #course-quality .quality-lead{font-weight:400}

      /* The original final CTA is now represented by the persistent purchase rail. */
      #course-register{display:none}
    }

    @media (min-width:640px) and (max-width:899px){
      #course-register .final-cta{display:block}
      #course-register .cta-visual{width:100%;max-height:300px}
      #course-register .cta-content{padding:24px}
      #course-register .cta-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}
      #course-register .purchase-button{width:auto;min-width:190px;margin-top:0}
      #course-register .payment-row,#course-register .cta-note{grid-column:1/-1}
    }

}
@media screen and (max-width:767px){
    
    
    *{box-sizing:border-box}
    html{min-width:320px;background:#f5f5f5;scroll-behavior:smooth}
    body{min-width:320px;margin:0;background:#f5f5f5;color:#2e312d;font-family:'iransans',Tahoma,sans-serif;-webkit-font-smoothing:antialiased}
    body.modal-is-open{overflow:hidden}
    .course-mobile-page{width:100%;overflow:hidden}
    .course-section{display:block;width:100%;overflow:hidden}
    .course-section + .course-section{border-top:1px solid rgba(46,49,45,.065)}
    #course-intro{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.74);
        --line: rgba(46, 49, 45, 0.11);
        --soft-shadow: 0 18px 45px rgba(67, 72, 62, 0.055),
          0 3px 10px rgba(67, 72, 62, 0.035);
      }#course-intro *{
        box-sizing: border-box;
      }#course-intro{
        background: var(--canvas);
      }#course-intro{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          radial-gradient(
            30rem at 85% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-intro .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-intro,#course-intro{
        background: #ffffff;
        background-image: none;
        background-attachment: initial;
      }#course-intro .course-hero{
        display: contents;
      }#course-intro .breadcrumb{
        display: flex;
        align-items: center;
        gap: 8px;
        min-height: 28px;
        margin: 0 2px 18px;
        color: rgba(46, 49, 45, 0.58);
        font-size: 11px;
        font-weight: 500;
        line-height: 1.8;
        white-space: nowrap;
      }#course-intro .breadcrumb a{
        color: inherit;
        text-decoration: none;
      }#course-intro .breadcrumb a:last-of-type{
        color: var(--secondary);
      }#course-intro .breadcrumb-separator{
        color: rgba(46, 49, 45, 0.28);
        font-size: 14px;
      }#course-intro .page-title{
        display: block;
        width: 100%;
        max-width: none;
        align-self: stretch;
        margin: 2px 0 0;
        padding: 0 10px;
        color: var(--primary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.32rem, 6.2vw, 3.4rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.36;
        text-align: right;
      }#course-intro .title-description{
        width: 100%;
        margin: -4px 0 0;
        color: rgba(46, 49, 45, 0.68);
        font-size: clamp(0.78rem, 3.3vw, 1rem);
        line-height: 2;
        text-align: right;
      }#course-intro .course-purchase{
        display: grid;
        gap: 12px;
        width: 100%;
        margin-top: 2px;
        padding: 14px 10px 0;
        border-top: 1px solid rgba(46, 49, 45, 0.1);
      }#course-intro .course-prices{
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
      }#course-intro .course-price-old{
        color: rgba(46, 49, 45, 0.48);
        font-size: 0.78rem;
        text-decoration: line-through;
        white-space: nowrap;
      }#course-intro .course-price-current{
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.18rem, 5vw, 1.52rem);
        font-weight: 800;
        white-space: nowrap;
      }#course-intro .course-price-current small{
        margin-right: 4px;
        font-family: 'iransans', Tahoma, sans-serif;
        font-size: 0.62em;
        font-weight: 600;
      }#course-intro .course-price-head{
        display: none;
      }#course-intro .add-to-cart{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        width: 100%;
        border: 0;
        border-radius: 14px;
        color: #fff;
        background: var(--secondary);
        box-shadow: 0 9px 20px rgba(87, 107, 80, 0.16);
        cursor: pointer;
        font: 700 0.92rem/1.5 'iransans', Tahoma, sans-serif;
        transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
      }@media (max-width: 639px){#course-intro .course-hero{
          display: block;
          margin: -40px -16px 0;
          padding: 26px 16px 30px;
          background: transparent;
        }#course-intro .breadcrumb{
          margin-bottom: 24px;
          overflow: visible;
        }#course-intro .page-title{
          padding: 0 10px;
          font-size: clamp(1.18rem, 5.7vw, 2.15rem);
        }#course-intro .title-description{
          margin-top: 2px;
          color: rgba(46, 49, 45, 0.72);
          font-size: clamp(0.9rem, 3.8vw, 1rem);
          line-height: 2.05;
          text-align: justify;
          text-align-last: right;
        }#course-intro .course-purchase{
          gap: 12px;
          margin-top: 10px;
          padding: 14px;
          border: 1px solid rgba(87, 107, 80, 0.14);
          border-radius: 16px;
          background: rgba(87, 107, 80, 0.035);
          box-shadow: 0 12px 28px rgba(67, 72, 62, 0.08);
        }#course-intro .course-price-head{
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 8px;
          color: rgba(46, 49, 45, 0.58);
          font-size: 0.72rem;
          font-weight: 600;
        }#course-intro .course-discount{
          padding: 4px 8px;
          border: 1px solid rgba(170, 96, 69, 0.2);
          border-radius: 999px;
          color: var(--primary);
          background: rgba(170, 96, 69, 0.1);
          font-size: 0.72rem;
          font-weight: 800;
          white-space: nowrap;
        }#course-intro .course-prices{
          align-items: center;
          padding: 0 2px;
          direction: ltr;
        }#course-intro .course-price-current{
          font-size: clamp(1.35rem, 5.8vw, 1.52rem);
          direction: rtl;
        }#course-intro .course-price-old{
          font-size: 0.9rem;
          direction: rtl;
        }#course-intro .add-to-cart{
          min-height: 52px;
          font-size: 1rem;
          font-weight: 800;
        }
      }#course-intro .add-to-cart:hover{
        background: #4c6046;
        box-shadow: 0 11px 24px rgba(87, 107, 80, 0.2);
        transform: translateY(-1px);
      }#course-intro .add-to-cart:active{
        box-shadow: 0 6px 14px rgba(87, 107, 80, 0.14);
        transform: translateY(1px);
      }#course-intro .title-row{
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        direction: rtl;
      }#course-intro .course-banner{
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 14px;
        object-fit: cover;
        box-shadow: 0 8px 20px rgba(67, 72, 62, 0.08);
      }#course-intro .soft-divider{
        position: relative;
        height: 1px;
        margin: 26px 0 24px;
        background: linear-gradient(
          90deg,
          transparent,
          rgba(87, 107, 80, 0.16) 18%,
          rgba(170, 96, 69, 0.3) 50%,
          rgba(87, 107, 80, 0.16) 82%,
          transparent
        );
      }#course-intro .soft-divider::after{
        position: absolute;
        top: 50%;
        left: 50%;
        width: 28%;
        height: 10px;
        border-radius: 999px;
        background: rgba(170, 96, 69, 0.08);
        content: "";
        filter: blur(8px);
        transform: translate(-50%, -50%);
      }@media (max-width: 639px){#course-intro .title-row{
          gap: 20px;
        }#course-intro .course-purchase{
          margin-top: 4px;
        }
      }@media (max-width: 359px){#course-intro .title-row{
          gap: 10px;
        }#course-intro .course-banner{
          border-radius: 12px;
        }#course-intro .page-title{
          font-size: 1.18rem;
          line-height: 1.45;
        }

      }@media (prefers-reduced-motion: reduce){#course-intro *,#course-intro *::before,#course-intro *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }
    
#course-overview{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --line: rgba(46, 49, 45, 0.16);
        --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-overview *{
        box-sizing: border-box;
      }#course-overview{
        background: var(--canvas);
      }#course-overview{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          radial-gradient(
            30rem at 85% 50%,
            rgba(67, 92, 86, 0.08),
            rgba(67, 92, 86, 0.035) 30%,
            rgba(67, 92, 86, 0.012) 58%,
            transparent 82%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-overview .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-overview,#course-overview{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-overview .course-highlights{
        position: relative;
      }#course-overview .section-heading{
        max-width: 28rem;
        margin: 0 0 24px;
      }#course-overview .section-heading h2{
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.62rem, 7vw, 2.55rem);
        font-weight: 750;
        letter-spacing: -0.04em;
        line-height: 1.4;
      }#course-overview .section-heading p{
        max-width: 31ch;
        margin: 10px 0 0;
        color: rgba(46, 49, 45, 0.64);
        font-size: 12px;
        line-height: 2;
      }#course-overview .course-intro{
        position: relative;
        min-height: 216px;
        margin-bottom: 32px;
        overflow: hidden;
        isolation: isolate;
        padding-block: 48px;
      }#course-overview .course-art{
        position: absolute;
        top: 0;
        bottom: 0;
        left: -8px;
        z-index: -1;
        display: grid;
        place-items: center;
        width: 63%;
        pointer-events: none;
      }#course-overview .course-art img{
        display: block;
        width: min(100%, 190px);
        height: 220px;
        object-fit: contain;
        opacity: 0.96;
        filter: saturate(1.02) contrast(1.04) sepia(0.02);
        transform: translateY(2px) rotate(-2deg);
      }#course-overview .course-copy{
        display: flex;
        position: relative;
        z-index: 1;
        width: 62%;
        min-height: 216px;
        flex-direction: column;
        justify-content: center;
        margin-left: auto;
        padding: 28px 0 28px 4px;
      }#course-overview .course-copy::before{
        position: absolute;
        top: 50%;
        right: -16px;
        width: 2px;
        height: 74px;
        border-radius: 999px;
        background: linear-gradient(
          to bottom,
          transparent,
          rgba(170, 96, 69, 0.6) 22%,
          rgba(170, 96, 69, 0.6) 78%,
          transparent
        );
        content: "";
        transform: translateY(-50%);
      }#course-overview .course-copy h2{
        max-width: 18ch;
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.16rem, 5.2vw, 1.72rem);
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-overview .course-copy p{
        max-width: 28ch;
        margin: 13px 0 0;
        color: rgba(46, 49, 45, 0.7);
        font-size: 11.5px;
        line-height: 2;
      }#course-overview .course-scope{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 7px 10px;
        margin: 15px 0 0;
        color: rgba(87, 107, 80, 0.86);
        font-size: 10px;
        font-weight: 700;
        line-height: 1.8;
      }#course-overview .course-scope span{
        display: inline-flex;
        align-items: center;
        gap: 6px;
      }#course-overview .course-scope span + span::before{
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: var(--primary);
        content: "";
      }@media (max-width: 639px){#course-overview .course-intro{
          min-height: 240px;
          padding-block: 24px;
        }
      }#course-overview .highlight-grid{
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }#course-overview .highlight-grid::before,#course-overview .highlight-grid::after{
        position: absolute;
        z-index: 2;
        background: var(--line);
        content: "";
        pointer-events: none;
      }#course-overview .highlight-grid::before{
        top: 18px;
        bottom: 18px;
        left: 50%;
        width: 1px;
        transform: translateX(-50%);
      }#course-overview .highlight-grid::after{
        top: 50%;
        right: 18px;
        left: 18px;
        height: 1px;
        transform: translateY(-50%);
      }#course-overview .highlight-card{
        position: relative;
        display: flex;
        min-height: 202px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px 14px 24px;
        text-align: center;
        isolation: isolate;
        --card-halo: rgba(170, 96, 69, 0.13);
        transition: background-color 320ms var(--ease-out);
      }#course-overview .highlight-card::before{
        position: absolute;
        top: 20px;
        left: 50%;
        z-index: -1;
        width: 158px;
        height: 122px;
        border-radius: 50%;
        background: radial-gradient(
          circle,
          var(--card-halo) 0%,
          transparent 72%
        );
        content: "";
        opacity: 0.62;
        transform: translateX(-50%) scale(0.92);
        animation: ambient-halo 9s ease-in-out infinite;
        filter: blur(9px);
        pointer-events: none;
      }#course-overview .highlight-card::after{
        position: absolute;
        top: 43%;
        left: 50%;
        z-index: -1;
        width: 76%;
        height: 54%;
        border-radius: 50%;
        background: radial-gradient(
          circle,
          var(--card-halo) 0%,
          transparent 74%
        );
        content: "";
        opacity: 0.2;
        transform: translate(-50%, -50%) scale(0.96);
        animation: ambient-card-glow 11s ease-in-out infinite;
        filter: blur(20px);
        pointer-events: none;
      }#course-overview .highlight-card:nth-child(even){
        --card-halo: rgba(87, 107, 80, 0.14);
      }#course-overview .highlight-card:nth-child(2)::before,#course-overview .highlight-card:nth-child(2)::after{
        animation-delay: 1.6s;
      }#course-overview .highlight-card:nth-child(3)::before,#course-overview .highlight-card:nth-child(3)::after{
        animation-delay: 3.2s;
      }#course-overview .highlight-card:nth-child(4)::before,#course-overview .highlight-card:nth-child(4)::after{
        animation-delay: 4.8s;
      }@keyframes ambient-halo{
        0%,
        100% {
          opacity: 0.42;
          transform: translateX(-50%) scale(0.92);
        }
        50% {
          opacity: 0.7;
          transform: translateX(-50%) scale(1.04);
        }
      }@keyframes ambient-card-glow{
        0%,
        100% {
          opacity: 0.14;
          transform: translate(-50%, -50%) scale(0.96);
        }
        50% {
          opacity: 0.28;
          transform: translate(-50%, -50%) scale(1.04);
        }
      }#course-overview .highlight-card:hover{
        background: rgba(255, 255, 255, 0.22);
      }#course-overview .highlight-art{
        display: block;
        width: 72px;
        height: 72px;
        margin-bottom: 10px;
        object-fit: contain;
        transition: transform 320ms var(--ease-out), filter 320ms ease;
      }#course-overview .highlight-card:hover .highlight-art{
        transform: translateY(-3px) rotate(-1deg);
        filter: saturate(1.05);
      }#course-overview .highlight-card h2{
        max-width: 15ch;
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.1rem, 5.3vw, 1.5rem);
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.45;
      }#course-overview .highlight-card:nth-child(even) h2{
        color: var(--secondary);
      }#course-overview .highlight-card p{
        max-width: 19ch;
        margin: 8px 0 0;
        color: rgba(46, 49, 45, 0.67);
        font-size: 10.5px;
        line-height: 1.9;
      }#course-overview .payment-details{
        display: flex;
        flex-direction: column;
        align-items: center;
        width: min(100%, 236px);
        min-height: 0;
        margin-top: 12px;
        gap: 5px;
      }#course-overview .payment-details p{
        order: 1;
        display: block;
        min-height: 0;
        max-width: none;
        margin: 0;
        font-size: 10px;
        line-height: 1.85;
        text-align: center;
      }#course-overview .payment-brands{
        order: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 3px;
        margin: 0;
        opacity: 0.78;
        pointer-events: none;
      }#course-overview .payment-brand-logo{
        display: block;
        width: 28px;
        height: 21px;
        background: transparent;
        object-fit: contain;
      }@media (prefers-reduced-motion: reduce){#course-overview *,#course-overview *::before,#course-overview *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-description{
        --primary: #aa6045;
        --secondary: #576b50;
        --ink: #2e312d;
        --canvas: #f5f5f5;
        --line: rgba(46, 49, 45, 0.12);
        --soft-shadow: 0 20px 48px rgba(67, 72, 62, 0.08),
          0 5px 14px rgba(67, 72, 62, 0.04);
        --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-description *{
        box-sizing: border-box;
      }#course-description{
        background: var(--canvas);
      }#course-description{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 16%,
            rgba(87, 107, 80, 0.1),
            rgba(87, 107, 80, 0.035) 34%,
            transparent 76%
          ),
          radial-gradient(
            28rem at 88% 74%,
            rgba(170, 96, 69, 0.08),
            rgba(170, 96, 69, 0.025) 36%,
            transparent 76%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-description .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-description,#course-description{
        background: #ffffff;
        background-image: none;
        background-attachment: initial;
      }#course-description .section-heading{
        max-width: 34rem;
        margin: 0 0 20px;
      }#course-description .section-heading h2{
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.55rem, 7vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.42;
      }#course-description .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: rgba(46, 49, 45, 0.64);
        font-size: 12px;
        line-height: 2;
      }#course-description .intro-video{
        position: relative;
        overflow: hidden;
        aspect-ratio: 16 / 9;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.32);
        box-shadow: var(--soft-shadow);
        isolation: isolate;
      }#course-description .intro-video video{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: rgba(87, 107, 80, 0.12);
        object-fit: cover;
      }#course-description .intro-video iframe{
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        border: 0;
      }#course-description .intro-poster{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        object-fit: cover;
      }#course-description .description-panel{
        overflow: hidden;
        margin-top: 28px;
        padding: 24px 18px 30px;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow: 0 20px 48px rgba(67, 72, 62, 0.075),
          0 4px 14px rgba(67, 72, 62, 0.035);
        backdrop-filter: blur(5px);
      }#course-description .description-copy{
        margin-top: 30px;
      }#course-description .description-block{
        width: 100%;
        max-width: none;
      }#course-description .description-block + .description-block{
        margin-top: 25px;
        padding-top: 23px;
        border-top: 1px solid var(--line);
      }#course-description .description-block h2{
        margin: 0;
        color: var(--primary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.15rem, 5.4vw, 1.75rem);
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-description .description-block p{
        max-width: 64ch;
        margin: 9px 0 0;
        color: var(--ink);
        font-size: 12px;
        line-height: 2.1;
      }#course-description .description-reveal{
        margin-top: 25px;
        padding-top: 23px;
        border-top: 1px solid var(--line);
      }#course-description .description-extra{
        max-height: 154px;
        overflow: hidden;
        -webkit-mask-image: linear-gradient(
          to bottom,
          #000 0%,
          #000 30%,
          rgba(0, 0, 0, 0.78) 60%,
          transparent 100%
        );
        mask-image: linear-gradient(
          to bottom,
          #000 0%,
          #000 30%,
          rgba(0, 0, 0, 0.78) 60%,
          transparent 100%
        );
        transition: max-height 720ms var(--ease-out);
      }#course-description .description-copy.is-expanded .description-extra{
        max-height: 1400px;
        -webkit-mask-image: none;
        mask-image: none;
      }#course-description .expand-button{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-width: 132px;
        margin: 0 auto 24px;
        padding: 7px 5px 6px;
        border: 0;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.26);
        color: var(--primary);
        cursor: pointer;
        font-family: inherit;
        font-size: 11px;
        font-weight: 700;
        line-height: 1.6;
        transition: background-color 260ms ease, border-color 260ms ease,
          transform 260ms var(--ease-out);
      }#course-description .expand-button::after{
        width: 7px;
        height: 7px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        content: "";
        transform: rotate(45deg) translateY(-2px);
        transition: transform 360ms var(--ease-out);
      }#course-description .expand-button:hover{
        background: rgba(255, 255, 255, 0.48);
        transform: translateY(-1px);
      }#course-description .expand-button:active{
        transform: translateY(1px) scale(0.98);
      }#course-description .expand-button:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.22);
        outline-offset: 3px;
      }#course-description .expand-button[aria-expanded="true"]::after{
        transform: rotate(225deg) translateY(-2px);
      }@media (max-width: 639px){#course-description .page-shell{
          display: flex;
          flex-direction: column;
          background: transparent;
        }#course-description .description-panel{
          display: contents;
        }#course-description .section-heading{
          order: 1;
          max-width: none;
          margin: 0;
        }#course-description .section-heading h2{
          font-size: clamp(1.35rem, 6.2vw, 2rem);
        }#course-description .section-heading p{
          max-width: none;
          margin-top: 12px;
          font-size: 13px;
          line-height: 2.05;
        }#course-description .intro-video{
          order: 2;
          margin-top: 24px;
          border-radius: 16px;
          background: rgba(87, 107, 80, 0.035);
          box-shadow: 0 14px 32px rgba(67, 72, 62, 0.07);
        }#course-description .description-copy{
          order: 3;
          margin-top: 28px;
          padding: 0 2px 12px;
        }#course-description .description-block + .description-block{
          margin-top: 28px;
          padding-top: 24px;
        }#course-description .description-block h2{
          font-size: clamp(1.08rem, 5.2vw, 1.5rem);
          font-weight: 800;
        }#course-description .description-block p{
          margin-top: 11px;
          font-size: 13px;
          line-height: 2.1;
        }#course-description .description-reveal{
          margin-top: 28px;
          padding-top: 24px;
        }#course-description .description-copy.is-expanded .description-extra{
          max-height: 1400px;
        }#course-description .expand-button{
          margin-top: 20px;
        }
      }@media (prefers-reduced-motion: reduce){#course-description *,#course-description *::before,#course-description *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-content{
        --primary: #aa6045;
        --primary-dark: #814632;
        --secondary: #576b50;
        --secondary-dark: #40523c;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.78);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --shadow: 0 18px 44px rgba(67, 72, 62, 0.06),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-content *{
        box-sizing: border-box;
      }#course-content{
        min-width: 320px;
        background: var(--canvas);
      }#course-content{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(
            30rem at 15% 12%,
            rgba(87, 107, 80, 0.09),
            rgba(87, 107, 80, 0.025) 42%,
            transparent 76%
          ),
          radial-gradient(
            28rem at 88% 84%,
            rgba(170, 96, 69, 0.07),
            rgba(170, 96, 69, 0.02) 42%,
            transparent 76%
          ),
          linear-gradient(rgba(87, 107, 80, 0.025) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.025) 1px, transparent 1px);
        background-size: auto, auto, 56px 56px, 56px 56px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-content button{
        font: inherit;
      }#course-content .sr-only{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }#course-content .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-content,#course-content{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-content .section-heading{
        margin: 0 0 21px;
      }#course-content .section-heading h2{
        margin: 0;
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.62rem, 7vw, 2.55rem);
        font-weight: 800;
        letter-spacing: -0.045em;
        line-height: 1.42;
      }#course-content .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 12px;
        line-height: 2;
      }#course-content .chapter-banner{
        position: relative;
        overflow: hidden;
        min-height: 188px;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 21px;
        background: #c9b28a;
        box-shadow: var(--shadow);
        isolation: isolate;
      }#course-content .chapter-banner::before{
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(
          270deg,
          rgba(46, 49, 45, 0.68),
          rgba(46, 49, 45, 0.25) 42%,
          rgba(46, 49, 45, 0.03) 78%
        );
        content: "";
        pointer-events: none;
      }#course-content .chapter-banner-image{
        display: block;
        width: 100%;
        min-height: 188px;
        object-fit: cover;
        object-position: center;
        transition: opacity 220ms ease, transform 680ms var(--ease);
      }#course-content .chapter-banner.is-changing .chapter-banner-image{
        opacity: 0.45;
        transform: scale(1.025);
      }#course-content .chapter-banner-copy{
        position: absolute;
        top: 50%;
        right: 20px;
        left: 20px;
        z-index: 2;
        color: #fff;
        transform: translateY(-50%);
      }#course-content .banner-title{
        max-width: 14ch;
        margin: 0;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.38rem, 6.4vw, 2.1rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.4;
        text-shadow: 0 3px 16px rgba(46, 49, 45, 0.22);
      }#course-content .banner-meta{
        margin: 5px 0 0;
        color: rgba(255, 255, 255, 0.83);
        font-size: 10px;
        line-height: 1.8;
      }#course-content .chapter-tabs{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        margin-top: 17px;
      }#course-content .chapter-tab{
        position: relative;
        min-width: 0;
        padding: 12px 7px 11px;
        border: 1px solid var(--line);
        border-radius: 15px;
        background: rgba(255, 255, 255, 0.46);
        color: rgba(46, 49, 45, 0.7);
        cursor: pointer;
        text-align: center;
        transition: border-color 240ms var(--ease), background-color 240ms var(--ease),
          color 240ms var(--ease), transform 240ms var(--ease), box-shadow 240ms var(--ease);
      }#course-content .chapter-tab:hover{
        border-color: rgba(170, 96, 69, 0.25);
        background: rgba(255, 255, 255, 0.72);
        transform: translateY(-1px);
      }#course-content .chapter-tab:active{
        transform: translateY(1px) scale(0.985);
      }#course-content .chapter-tab:focus-visible,#course-content .lesson-button:focus-visible,#course-content .modal-close:focus-visible,#course-content .preview-filter:focus-visible,#course-content .preview-card:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.25);
        outline-offset: 3px;
      }#course-content .chapter-tab[aria-selected="true"]{
        border-color: rgba(170, 96, 69, 0.32);
        background: rgba(255, 255, 255, 0.88);
        color: var(--primary);
        box-shadow: 0 8px 22px rgba(67, 72, 62, 0.055);
      }#course-content .chapter-tab[aria-selected="true"]::after{
        position: absolute;
        right: 22%;
        bottom: -1px;
        left: 22%;
        height: 2px;
        border-radius: 999px;
        background: var(--primary);
        content: "";
      }#course-content .chapter-tab-number{
        display: block;
        color: rgba(87, 107, 80, 0.62);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 10px;
        line-height: 1.5;
      }#course-content .chapter-tab[aria-selected="true"] .chapter-tab-number{
        color: rgba(170, 96, 69, 0.78);
      }#course-content .chapter-tab-name{
        display: block;
        overflow: hidden;
        margin-top: 2px;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(0.82rem, 3.65vw, 1.05rem);
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.55;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .lesson-panel{
        margin-top: 14px;
        padding: 8px 14px 9px;
        border: 1px solid var(--line);
        border-radius: 18px;
        background: var(--paper);
        box-shadow: var(--shadow);
      }#course-content .lesson-panel-head{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 7px 2px 12px;
        border-bottom: 1px solid var(--soft-line);
      }#course-content .lesson-panel-head h2{
        margin: 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.06rem;
        font-weight: 750;
        letter-spacing: -0.03em;
        line-height: 1.6;
      }#course-content .lesson-panel-head p{
        flex: 0 0 auto;
        margin: 0;
        color: rgba(87, 107, 80, 0.82);
        font-size: 10px;
        font-weight: 700;
        line-height: 1.7;
      }#course-content .lesson-list{
        margin: 0;
        padding: 0;
        list-style: none;
      }#course-content .lesson-item{
        border-bottom: 1px solid var(--soft-line);
      }#course-content .lesson-item:last-child{
        border-bottom: 0;
      }#course-content .lesson-button{
        display: grid;
        grid-template-columns: 30px minmax(0, 1fr) auto;
        align-items: center;
        gap: 9px;
        width: 100%;
        min-height: 68px;
        padding: 9px 2px;
        border: 0;
        background: transparent;
        color: var(--ink);
        cursor: pointer;
        text-align: right;
        transition: color 220ms ease, transform 220ms var(--ease);
      }#course-content .lesson-button:hover{
        color: var(--primary);
        transform: translateX(-2px);
      }#course-content .lesson-number{
        display: grid;
        place-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid rgba(87, 107, 80, 0.15);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.045);
        color: var(--secondary);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 11px;
        font-weight: 750;
        line-height: 1;
      }#course-content .lesson-title{
        display: block;
        overflow: hidden;
        color: inherit;
        font-size: 10.7px;
        font-weight: 650;
        line-height: 1.9;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .lesson-copy{
        min-width: 0;
      }#course-content .lesson-duration{
        display: block;
        margin-top: 1px;
        color: rgba(46, 49, 45, 0.49);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .lesson-action{
        display: grid;
        place-items: center;
        width: 30px;
        height: 30px;
        border: 1px solid rgba(46, 49, 45, 0.12);
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.45);
      }#course-content .lesson-action-wrap{
        position: relative;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 6px;
        width: max-content;
        min-width: 30px;
        height: 30px;
        white-space: nowrap;
      }#course-content .access-tooltip{
        position: absolute;
        right: auto;
        left: 0;
        bottom: calc(100% + 8px);
        z-index: 6;
        width: max-content;
        max-width: min(180px, calc(100vw - 32px));
        padding: 8px 10px 9px;
        border: 1px solid rgba(170, 96, 69, 0.22);
        border-radius: 10px;
        background: #fbfbfa;
        color: var(--ink);
        box-shadow: 0 9px 24px rgba(67, 72, 62, 0.12);
        font-size: 9px;
        font-weight: 650;
        line-height: 1.7;
        opacity: 0;
        pointer-events: none;
        transform: translateY(5px);
        transition: opacity 180ms ease, transform 220ms var(--ease);
      }#course-content .access-tooltip::after{
        position: absolute;
        right: auto;
        left: 12px;
        bottom: -5px;
        width: 8px;
        height: 8px;
        border-right: 1px solid rgba(170, 96, 69, 0.22);
        border-bottom: 1px solid rgba(170, 96, 69, 0.22);
        background: #fbfbfa;
        content: "";
        transform: rotate(45deg);
      }#course-content .lesson-item.is-tooltip-open .access-tooltip{
        opacity: 1;
        transform: translateY(0);
      }#course-content .lesson-icon{
        display: block;
        width: 18px;
        height: 18px;
        object-fit: contain;
      }#course-content .lesson-item.is-preview .lesson-number{
        border-color: rgba(170, 96, 69, 0.21);
        background: rgba(170, 96, 69, 0.08);
        color: var(--primary);
      }#course-content .lesson-item.is-preview .lesson-action{
        border-color: rgba(87, 107, 80, 0.24);
        background: rgba(87, 107, 80, 0.12);
        color: var(--secondary-dark);
      }#course-content .lesson-item.is-preview .lesson-title{
        color: var(--primary-dark);
      }#course-content .preview-label{
        display: inline-flex;
        align-items: center;
        width: fit-content;
        margin: 0;
        padding: 3px 7px 4px;
        border: 1px solid rgba(87, 107, 80, 0.2);
        border-radius: 999px;
        background: rgba(87, 107, 80, 0.1);
        color: var(--secondary-dark);
        font-size: 8px;
        font-weight: 750;
        line-height: 1.45;
      }#course-content .preview-action{
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 5px;
        width: max-content;
        min-width: 30px;
        height: 30px;
        white-space: nowrap;
      }#course-content .preview-action .lesson-action{
        flex: 0 0 30px;
      }#course-content .preview-duration-inline{
        display: inline-flex;
        align-items: center;
        color: rgba(46, 49, 45, 0.56);
        font-size: 9px;
        line-height: 1.7;
        white-space: nowrap;
      }#course-content .lesson-action-wrap .lesson-duration{
        display: inline-flex;
        align-items: center;
        margin: 0;
        white-space: nowrap;
      }#course-content .play-mark{
        display: block;
        width: 0;
        height: 0;
        margin-right: 1px;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 7px solid currentColor;
      }#course-content .exam-item{
        margin-top: 7px;
        border: 1px solid rgba(87, 107, 80, 0.2);
        border-bottom: 0;
        border-radius: 13px;
        background: rgba(87, 107, 80, 0.075);
      }#course-content .exam-item .lesson-button{
        min-height: 64px;
        padding-right: 8px;
        padding-left: 8px;
      }#course-content .exam-item .lesson-number{
        border-color: rgba(87, 107, 80, 0.22);
        background: rgba(87, 107, 80, 0.12);
        color: var(--secondary-dark);
      }#course-content .exam-item .lesson-title{
        color: var(--secondary-dark);
      }#course-content .exam-item .lesson-action{
        border-color: rgba(87, 107, 80, 0.24);
        background: rgba(87, 107, 80, 0.12);
      }#course-content .course-preview{
        margin-top: 18px;
        padding: 18px 14px 15px;
        border: 1px solid rgba(87, 107, 80, 0.16);
        border-radius: 20px;
        background:
          linear-gradient(145deg, rgba(87, 107, 80, 0.1), transparent 45%),
          rgba(255, 255, 255, 0.68);
        box-shadow: var(--shadow);
      }#course-content .course-preview-head{
        display: flex;
        align-items: end;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 13px;
      }#course-content .course-preview-title{
        margin: 0;
        color: var(--secondary-dark);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.18rem;
        font-weight: 800;
        letter-spacing: -0.04em;
        line-height: 1.5;
      }#course-content .course-preview-copy{
        max-width: 18ch;
        margin: 0;
        color: var(--muted);
        font-size: 9px;
        line-height: 1.85;
        text-align: left;
      }#course-content .preview-filters{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        margin-bottom: 12px;
      }#course-content .preview-filter{
        min-width: 0;
        padding: 8px 6px 7px;
        border: 1px solid var(--line);
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.54);
        color: rgba(46, 49, 45, 0.64);
        cursor: pointer;
        font-size: 9px;
        font-weight: 700;
        line-height: 1.6;
        transition: border-color 220ms var(--ease), background-color 220ms var(--ease),
          color 220ms var(--ease), transform 220ms var(--ease);
      }#course-content .preview-filter:hover{
        border-color: rgba(87, 107, 80, 0.32);
        background: rgba(255, 255, 255, 0.84);
        transform: translateY(-1px);
      }#course-content .preview-filter:active{
        transform: translateY(1px) scale(0.985);
      }#course-content .preview-filter:focus-visible,#course-content .preview-card:focus-visible{
        outline: 3px solid rgba(87, 107, 80, 0.25);
        outline-offset: 3px;
      }#course-content .preview-filter[aria-selected="true"]{
        border-color: rgba(170, 96, 69, 0.3);
        background: rgba(170, 96, 69, 0.13);
        color: var(--primary-dark);
        box-shadow: 0 7px 16px rgba(170, 96, 69, 0.1);
      }#course-content .preview-player{
        position: relative;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.14);
        border-radius: 15px;
        background: #28332f;
        box-shadow: 0 14px 30px rgba(67, 72, 62, 0.11);
        isolation: isolate;
      }#course-content .preview-player iframe{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        border: 0;
        background: #28332f;
      }#course-content .preview-player-fallback{
        display: none;
        place-items: center;
        min-height: 184px;
        padding: 24px;
        color: rgba(255, 255, 255, 0.82);
        font-size: 10px;
        line-height: 1.9;
        text-align: center;
      }#course-content .preview-player.is-empty iframe{
        display: none;
      }#course-content .preview-player.is-empty .preview-player-fallback{
        display: grid;
      }#course-content .preview-player-caption{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 9px 11px 10px;
        background: rgba(46, 49, 45, 0.92);
        color: rgba(255, 255, 255, 0.86);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .preview-player-caption strong{
        color: #dbe6d4;
        font-weight: 750;
      }#course-content .preview-grid{
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
        margin-top: 10px;
      }#course-content .preview-card{
        display: grid;
        grid-template-columns: 29px minmax(0, 1fr);
        align-items: center;
        gap: 8px;
        min-width: 0;
        padding: 9px 8px;
        border: 1px solid rgba(46, 49, 45, 0.1);
        border-radius: 13px;
        background: rgba(255, 255, 255, 0.68);
        color: var(--ink);
        cursor: pointer;
        text-align: right;
        transition: border-color 220ms var(--ease), background-color 220ms var(--ease),
          transform 220ms var(--ease), box-shadow 220ms var(--ease);
      }#course-content .preview-card:hover{
        border-color: rgba(87, 107, 80, 0.28);
        background: rgba(255, 255, 255, 0.92);
        transform: translateY(-1px);
      }#course-content .preview-card[aria-current="true"]{
        border-color: rgba(87, 107, 80, 0.42);
        background: rgba(87, 107, 80, 0.1);
        box-shadow: inset 0 0 0 1px rgba(87, 107, 80, 0.08);
      }#course-content .preview-card-icon{
        display: grid;
        place-items: center;
        width: 29px;
        height: 29px;
        border: 1px solid rgba(87, 107, 80, 0.22);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.11);
        color: var(--secondary-dark);
      }#course-content .preview-card-copy{
        min-width: 0;
      }#course-content .preview-card-title{
        display: block;
        overflow: hidden;
        font-size: 9px;
        font-weight: 700;
        line-height: 1.8;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-content .preview-card-meta{
        display: block;
        margin-top: 1px;
        color: rgba(46, 49, 45, 0.52);
        font-size: 8px;
        line-height: 1.6;
      }#course-content .preview-card.is-hidden{
        display: none;
      }#course-content .course-preview{
        margin-top: 45px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
      }#course-content .course-preview-head{
        display: block;
        margin: 0 2px 21px;
      }#course-content .course-preview-title{
        color: var(--secondary-dark);
        font-size: 1.08rem;
      }#course-content .preview-title-brown{
        color: var(--primary);
      }#course-content .preview-filters{
        gap: 8px;
        margin: 0 0 20px;
      }#course-content .preview-grid{
        gap: 15px;
        margin-top: 0;
      }#course-content .preview-card{
        display: block;
        overflow: hidden;
        padding: 0;
        text-align: right;
      }#course-content .preview-card-media{
        position: relative;
        display: block;
        overflow: hidden;
        aspect-ratio: 16 / 8;
        background: rgba(87, 107, 80, 0.14);
      }#course-content .preview-card-media img{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: saturate(0.82);
        transition: transform 420ms var(--ease), filter 220ms ease;
      }#course-content .preview-card:hover .preview-card-media img{
        filter: saturate(1);
        transform: scale(1.035);
      }#course-content .preview-card-play{
        position: absolute;
        right: 50%;
        bottom: 50%;
        display: grid;
        place-items: center;
        width: 31px;
        height: 31px;
        border: 1px solid rgba(255, 255, 255, 0.55);
        border-radius: 50%;
        background: rgba(170, 96, 69, 0.92);
        color: #fff;
        box-shadow: 0 5px 16px rgba(46, 49, 45, 0.2);
        transform: translate(50%, 50%);
      }#course-content .preview-card-play .play-mark{
        margin-right: 2px;
        border-top-width: 4px;
        border-bottom-width: 4px;
        border-left-width: 6px;
      }#course-content .preview-card-copy{
        display: block;
        padding: 8px 9px 9px;
      }#course-content .preview-card-title{
        font-size: 8.8px;
      }#course-content .preview-card-meta{
        font-size: 7.8px;
      }#course-content .modal-backdrop{
        position: fixed;
        inset: 0;
        z-index: 30;
        display: grid;
        place-items: center;
        padding: 17px;
        background: rgba(46, 49, 45, 0.52);
        opacity: 0;
        pointer-events: none;
        transition: opacity 240ms ease;
        backdrop-filter: blur(7px);
      }#course-content .modal-backdrop.is-open{
        opacity: 1;
        pointer-events: auto;
      }#course-content .preview-modal{
        width: min(100%, 510px);
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.42);
        border-radius: 21px;
        background: #fbfbfa;
        box-shadow: 0 27px 80px rgba(46, 49, 45, 0.25);
        opacity: 0;
        transform: translateY(15px) scale(0.985);
        transition: opacity 280ms var(--ease), transform 280ms var(--ease);
      }#course-content .modal-backdrop.is-open .preview-modal{
        opacity: 1;
        transform: translateY(0) scale(1);
      }#course-content .modal-head{
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        padding: 18px 17px 14px;
      }#course-content .modal-kicker{
        margin: 0;
        color: rgba(170, 96, 69, 0.8);
        font-size: 9px;
        font-weight: 750;
        line-height: 1.7;
      }#course-content .modal-title{
        max-width: 26ch;
        margin: 4px 0 0;
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.14rem;
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.55;
      }#course-content .modal-close{
        display: grid;
        flex: 0 0 auto;
        place-items: center;
        width: 33px;
        height: 33px;
        border: 1px solid var(--line);
        border-radius: 11px;
        background: rgba(255, 255, 255, 0.75);
        color: var(--muted);
        cursor: pointer;
        font-size: 18px;
        line-height: 1;
      }#course-content .preview-stage{
        position: relative;
        margin: 0 12px;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.13);
        border-radius: 15px;
        background: #28332f;
        isolation: isolate;
      }#course-content .preview-stage::after{
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(180deg, transparent 50%, rgba(46, 49, 45, 0.55));
        content: "";
        pointer-events: none;
      }#course-content .preview-video{
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: #28332f;
        object-fit: cover;
      }#course-content .modal-play{
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 2;
        display: grid;
        place-items: center;
        width: 45px;
        height: 45px;
        border: 1px solid rgba(255, 255, 255, 0.62);
        border-radius: 50%;
        background: rgba(87, 107, 80, 0.92);
        color: #fff;
        cursor: pointer;
        box-shadow: 0 8px 26px rgba(46, 49, 45, 0.24);
        transform: translate(-50%, -50%);
        transition: background-color 220ms ease, transform 220ms var(--ease);
        backdrop-filter: blur(6px);
      }#course-content .modal-play:hover{
        background: var(--secondary-dark);
        transform: translate(-50%, -50%) scale(1.04);
      }#course-content .modal-play .play-mark{
        border-top-width: 5px;
        border-bottom-width: 5px;
        border-left-width: 8px;
      }#course-content .preview-caption{
        position: absolute;
        right: 13px;
        bottom: 11px;
        left: 13px;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        color: rgba(255, 255, 255, 0.88);
        font-size: 9px;
        line-height: 1.7;
      }#course-content .modal-foot{
        margin: 0;
        padding: 13px 17px 18px;
        color: var(--muted);
        font-size: 10px;
        line-height: 1.9;
      }#course-content .modal-foot strong{
        color: var(--primary);
        font-weight: 750;
      }#course-content .preview-note{
        min-height: 0;
        margin: 0;
        padding: 0 17px;
        color: var(--primary-dark);
        font-size: 9px;
        line-height: 1.8;
      }#course-content .preview-note:not(:empty){
        padding-top: 8px;
      }body.modal-is-open{
        overflow: hidden;
      }@media (prefers-reduced-motion: reduce){#course-content *,#course-content *::before,#course-content *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
#course-instructors{
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.8);
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 20px 48px rgba(67, 72, 62, 0.09),
          0 5px 16px rgba(67, 72, 62, 0.045);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-instructors *{
        box-sizing: border-box;
      }#course-instructors{
        min-width: 320px;
        background: var(--canvas);
      }#course-instructors{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.1), transparent 32%),
          radial-gradient(circle at 88% 90%, rgba(170, 96, 69, 0.07), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-instructors button{
        font: inherit;
      }#course-instructors .sr-only{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }#course-instructors .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-instructors,#course-instructors{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-instructors .section-heading{
        margin: 0 0 21px;
      }#course-instructors .section-heading h2{
        max-width: none;
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.8rem, 8vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.45;
        white-space: nowrap;
      }#course-instructors .section-heading p{
        max-width: 32ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-instructors .instructors-panel{
        position: relative;
        overflow: visible;
        padding: 0;
      }#course-instructors .instructors-panel::before{
        display: none;
      }#course-instructors .teacher-stage{
        position: relative;
        min-height: 380px;
        overflow: hidden;
        touch-action: pan-y;
        user-select: none;
      }#course-instructors .teacher-card{
        position: absolute;
        top: 0;
        right: 50%;
        display: block;
        width: min(54vw, 205px);
        height: 335px;
        padding: 0;
        overflow: hidden;
        border: 1px solid rgba(46, 49, 45, 0.16);
        border-radius: 21px;
        background: #dce2d7;
        box-shadow: 0 13px 28px rgba(67, 72, 62, 0.07);
        cursor: grab;
        opacity: 0;
        pointer-events: none;
        transform: translate3d(50%, 34px, 0) scale(0.88);
        transition: transform 560ms var(--ease), opacity 420ms ease, filter 420ms ease,
          box-shadow 420ms ease;
        will-change: transform, opacity;
      }#course-instructors .teacher-card:active{
        cursor: grabbing;
      }#course-instructors .teacher-card[data-state="active"]{
        z-index: 3;
        opacity: 1;
        pointer-events: auto;
        filter: none;
        box-shadow: 0 22px 42px rgba(67, 72, 62, 0.14),
          0 5px 15px rgba(67, 72, 62, 0.06);
        transform: translate3d(calc(50% + var(--drag-x, 0px)), 0, 0) scale(1);
      }#course-instructors .teacher-card[data-state="next"]{
        z-index: 2;
        opacity: 0.52;
        pointer-events: auto;
        filter: grayscale(1) saturate(0.35);
        transform: translate3d(calc(50% + 105%), 24px, 0) scale(0.76);
      }#course-instructors .teacher-card[data-state="back"]{
        z-index: 1;
        opacity: 0.34;
        pointer-events: auto;
        filter: grayscale(1) saturate(0.15);
        transform: translate3d(calc(50% - 105%), 24px, 0) scale(0.76);
      }#course-instructors .teacher-card[data-state="next"] .teacher-card-copy,#course-instructors .teacher-card[data-state="back"] .teacher-card-copy{
        opacity: 0.12;
      }#course-instructors .teacher-card[data-state="active"] .teacher-photo{
        filter: saturate(1.08) contrast(1.02);
      }#course-instructors .teacher-card[data-state="active"] .teacher-card-copy{
        opacity: 1;
        transform: translateY(0);
      }#course-instructors .teacher-photo{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        filter: grayscale(1) saturate(0.32);
        transition: filter 560ms ease;
      }#course-instructors .teacher-card-copy{
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 48px 15px 15px;
        background: linear-gradient(180deg, transparent, rgba(46, 49, 45, 0.78));
        color: #fff;
        opacity: 0.82;
        text-align: right;
        transform: translateY(5px);
        transition: opacity 360ms ease, transform 560ms var(--ease);
      }#course-instructors .teacher-role{
        display: block;
        margin-bottom: 4px;
        color: rgba(255, 255, 255, 0.76);
        font-size: 8px;
        line-height: 1.7;
      }#course-instructors .teacher-name{
        margin: 0;
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 1.16rem;
        font-weight: 800;
        letter-spacing: -0.04em;
        line-height: 1.55;
      }#course-instructors .teacher-focus{
        margin: 4px 0 0;
        color: rgba(255, 255, 255, 0.82);
        font-size: 8px;
        line-height: 1.7;
      }#course-instructors .teacher-stage.is-switching .teacher-card[data-state="active"]{
        animation: card-arrival 560ms var(--ease) both;
      }#course-instructors .teacher-stage.is-dragging .teacher-card{
        transition: none;
      }#course-instructors .teacher-stage.is-dragging .teacher-card[data-state="next"],#course-instructors .teacher-stage.is-dragging .teacher-card[data-state="back"]{
        pointer-events: none;
      }@keyframes card-arrival{
        0% {
          opacity: 0.58;
          transform: translate3d(calc(50% + 3px), 8px, 0) scale(0.96);
        }
        100% {
          opacity: 1;
          transform: translate3d(50%, 0, 0) scale(1);
        }
      }#course-instructors .teacher-card:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.25);
        outline-offset: 3px;
      }#course-instructors .stage-dots{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        margin-top: 13px;
      }#course-instructors .stage-dot{
        width: 7px;
        height: 7px;
        padding: 0;
        border: 1px solid rgba(87, 107, 80, 0.36);
        border-radius: 50%;
        background: transparent;
        cursor: pointer;
        transition: width 220ms var(--ease), background-color 220ms ease,
          border-color 220ms ease, transform 220ms var(--ease);
      }#course-instructors .stage-dot[aria-selected="true"]{
        width: 19px;
        border-color: var(--green);
        border-radius: 999px;
        background: var(--green);
      }#course-instructors .stage-dot:active{
        transform: scale(0.86);
      }#course-instructors .stage-dot:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.24);
        outline-offset: 3px;
      }@media (prefers-reduced-motion: reduce){#course-instructors *,#course-instructors *::before,#course-instructors *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-faq{
        --canvas: #f5f5f5;
        --paper: rgba(255, 255, 255, 0.72);
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 17px 40px rgba(67, 72, 62, 0.06),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-faq *{
        box-sizing: border-box;
      }#course-faq{
        min-width: 320px;
        background: var(--canvas);
      }#course-faq{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.09), transparent 32%),
          radial-gradient(circle at 88% 88%, rgba(170, 96, 69, 0.06), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-faq button{
        font: inherit;
      }#course-faq .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-faq,#course-faq{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-faq .section-heading{
        margin: 0 0 21px;
      }#course-faq .section-heading h2{
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.8rem, 8vw, 2.6rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.45;
        white-space: nowrap;
      }#course-faq .section-heading p{
        max-width: 34ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-faq .faq-list{
        display: flex;
        flex-direction: column;
        gap: 9px;
      }#course-faq .faq-extra-preview{
        display: grid;
        gap: 9px;
        max-height: 147px;
        overflow: hidden;
        -webkit-mask-image: linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.48) 0%,
          rgba(0, 0, 0, 0.35) 30%,
          rgba(0, 0, 0, 0.14) 65%,
          transparent 100%
        );
        mask-image: linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.48) 0%,
          rgba(0, 0, 0, 0.35) 30%,
          rgba(0, 0, 0, 0.14) 65%,
          transparent 100%
        );
        opacity: 0.65;
        filter: grayscale(0.8);
        transition: max-height 620ms var(--ease), opacity 420ms ease,
          filter 420ms ease;
      }#course-faq .faq-list.is-expanded .faq-extra-preview{
        max-height: 520px;
        -webkit-mask-image: none;
        mask-image: none;
        opacity: 1;
        filter: none;
        order: 1;
      }#course-faq .faq-extra-preview{
        order: 2;
      }#course-faq .faq-item{
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 17px;
        background: var(--paper);
        box-shadow: 0 7px 20px rgba(67, 72, 62, 0.025);
        transition: border-color 280ms ease, background-color 280ms ease,
          box-shadow 280ms ease, opacity 420ms var(--ease), filter 420ms var(--ease),
          max-height 520ms var(--ease), transform 520ms var(--ease);
      }#course-faq .faq-item.is-open{
        border-color: rgba(87, 107, 80, 0.32);
        background: rgba(255, 255, 255, 0.84);
        box-shadow: var(--shadow);
        transform: translateY(-1px);
      }#course-faq .faq-question{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        min-height: 68px;
        padding: 10px 13px;
        border: 0;
        background: transparent;
        color: var(--ink);
        cursor: pointer;
        text-align: right;
      }#course-faq .faq-question:hover{
        color: var(--green-dark);
      }#course-faq .faq-question:active{
        transform: scale(0.995);
      }#course-faq .faq-question:focus-visible,#course-faq .all-questions:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.24);
        outline-offset: 3px;
      }#course-faq .faq-question-copy{
        display: flex;
        align-items: center;
        min-width: 0;
        gap: 10px;
      }#course-faq .faq-index{
        display: grid;
        flex: 0 0 28px;
        place-items: center;
        width: 28px;
        height: 28px;
        border: 1px solid rgba(87, 107, 80, 0.17);
        border-radius: 10px;
        background: rgba(87, 107, 80, 0.045);
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 10px;
        font-weight: 750;
        line-height: 1;
      }#course-faq .faq-question-text{
        overflow: hidden;
        font-size: 10.7px;
        font-weight: 700;
        line-height: 1.9;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-faq .faq-toggle-icon{
        position: relative;
        display: grid;
        flex: 0 0 27px;
        place-items: center;
        width: 27px;
        height: 27px;
        border: 1px solid rgba(170, 96, 69, 0.2);
        border-radius: 50%;
        background: rgba(170, 96, 69, 0.07);
        color: var(--terracotta);
        transition: background-color 280ms ease, border-color 280ms ease,
          transform 360ms var(--ease);
      }#course-faq .faq-toggle-icon::before,#course-faq .faq-toggle-icon::after{
        position: absolute;
        width: 9px;
        height: 1.5px;
        border-radius: 999px;
        background: currentColor;
        content: "";
        transition: transform 360ms var(--ease), opacity 220ms ease;
      }#course-faq .faq-toggle-icon::after{
        transform: rotate(90deg);
      }#course-faq .faq-item.is-open .faq-toggle-icon{
        border-color: rgba(87, 107, 80, 0.25);
        background: rgba(87, 107, 80, 0.1);
        color: var(--green-dark);
        transform: rotate(180deg);
      }#course-faq .faq-item.is-open .faq-toggle-icon::after{
        opacity: 0;
        transform: rotate(90deg) scaleX(0.2);
      }#course-faq .faq-answer-wrap{
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 430ms var(--ease);
      }#course-faq .faq-item.is-open .faq-answer-wrap{
        grid-template-rows: 1fr;
      }#course-faq .faq-answer{
        min-height: 0;
        overflow: hidden;
      }#course-faq .faq-answer p{
        margin: 0;
        padding: 0 52px 16px 18px;
        color: var(--muted);
        font-size: 10px;
        line-height: 2;
      }#course-faq .faq-item.is-extra{
        max-height: 69px;
        opacity: 1;
        filter: grayscale(0.35);
        transform: translateY(3px);
      }#course-faq .faq-list.is-expanded .faq-item.is-extra{
        max-height: 230px;
        opacity: 1;
        filter: none;
        transform: translateY(0);
      }#course-faq .all-questions.is-hidden{
        display: none;
      }#course-faq .faq-list.is-expanded .all-questions{
        order: 2;
      }#course-faq .faq-item.is-extra .faq-question{
        cursor: default;
      }#course-faq .faq-list.is-expanded .faq-item.is-extra .faq-question{
        cursor: pointer;
      }#course-faq .all-questions{
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        width: 100%;
        margin-top: 5px;
        padding: 11px 16px 12px;
        border: 1px solid rgba(87, 107, 80, 0.23);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.52);
        color: var(--green-dark);
        cursor: pointer;
        font-size: 10px;
        font-weight: 750;
        transition: background-color 240ms ease, border-color 240ms ease,
          transform 240ms var(--ease), box-shadow 240ms ease;
      }#course-faq .all-questions:hover{
        border-color: rgba(87, 107, 80, 0.38);
        background: rgba(255, 255, 255, 0.84);
        box-shadow: 0 8px 20px rgba(67, 72, 62, 0.045);
        transform: translateY(-1px);
      }#course-faq .all-questions:active{
        transform: translateY(1px) scale(0.99);
      }#course-faq .all-questions-icon{
        position: relative;
        display: inline-block;
        width: 11px;
        height: 11px;
      }#course-faq .all-questions-icon::before,#course-faq .all-questions-icon::after{
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px;
        height: 1.5px;
        border-radius: 999px;
        background: currentColor;
        content: "";
        transform: translate(-50%, -50%);
        transition: transform 300ms var(--ease);
      }#course-faq .all-questions-icon::after{
        transform: translate(-50%, -50%) rotate(90deg);
      }#course-faq .faq-list.is-expanded + .all-questions .all-questions-icon::after{
        transform: translate(-50%, -50%) rotate(90deg) scaleX(0.2);
      }@media (prefers-reduced-motion: reduce){#course-faq *,#course-faq *::before,#course-faq *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-quality{
        --canvas: #f5f5f5;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.62);
        --line: rgba(46, 49, 45, 0.12);
        --soft-line: rgba(46, 49, 45, 0.07);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --shadow: 0 18px 44px rgba(67, 72, 62, 0.07),
          0 3px 12px rgba(67, 72, 62, 0.035);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-quality *{
        box-sizing: border-box;
      }#course-quality{
        min-width: 320px;
        background: var(--canvas);
      }#course-quality{
        min-width: 320px;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 12% 12%, rgba(87, 107, 80, 0.09), transparent 32%),
          radial-gradient(circle at 88% 88%, rgba(170, 96, 69, 0.06), transparent 30%),
          linear-gradient(rgba(87, 107, 80, 0.022) 1px, transparent 1px),
          linear-gradient(90deg, rgba(87, 107, 80, 0.022) 1px, transparent 1px);
        background-size: auto, auto, 54px 54px, 54px 54px;
        background-repeat: no-repeat, no-repeat, repeat, repeat;
        background-attachment: fixed;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-quality .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-quality,#course-quality{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-quality .section-heading{
        margin: 0 0 22px;
      }#course-quality .section-heading h2{
        max-width: 18ch;
        margin: 0;
        color: var(--green);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.65rem, 7.4vw, 2.55rem);
        font-weight: 800;
        letter-spacing: -0.05em;
        line-height: 1.5;
      }#course-quality .section-heading p{
        width: 100%;
        max-width: none;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 11px;
        line-height: 2;
      }#course-quality .quality-layout{
        display: grid;
        gap: 22px;
        align-items: center;
      }#course-quality .quality-visual{
        position: relative;
        display: grid;
        min-height: 245px;
        place-items: center;
        isolation: isolate;
      }#course-quality .quality-visual::before,#course-quality .quality-visual::after{
        position: absolute;
        right: 50%;
        bottom: 16px;
        width: min(68vw, 245px);
        height: 33px;
        border: 1px solid rgba(87, 107, 80, 0.15);
        border-radius: 50%;
        content: "";
        transform: translateX(50%);
        pointer-events: none;
      }#course-quality .quality-visual::after{
        bottom: 9px;
        width: min(50vw, 180px);
        border-color: rgba(170, 96, 69, 0.14);
      }#course-quality .quality-art{
        position: relative;
        z-index: 1;
        display: block;
        width: min(54vw, 190px);
        height: auto;
        filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12));
        transform: none;
      }#course-quality .quality-copy{
        padding-top: 2px;
      }#course-quality .quality-lead{
        max-width: none;
        margin: 0;
        color: var(--ink);
        font-size: 12px;
        font-weight: 650;
        line-height: 2.15;
        text-align: center;
      }#course-quality .quality-stats{
        position: relative;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        margin: 16px 0 0;
        padding: 0;
      }#course-quality .quality-stats::before,#course-quality .quality-stats::after{
        position: absolute;
        top: 12px;
        bottom: 12px;
        width: 1px;
        background: var(--soft-line);
        content: "";
        pointer-events: none;
      }#course-quality .quality-stats::before{
        right: 33.333%;
        transform: translateX(50%);
      }#course-quality .quality-stats::after{
        right: 66.666%;
        transform: translateX(50%);
      }#course-quality .quality-stat{
        position: relative;
        display: grid;
        min-height: 86px;
        place-items: center;
        padding: 12px 4px;
        isolation: isolate;
        text-align: center;
      }#course-quality .quality-stat::before{
        position: absolute;
        top: 12px;
        left: 50%;
        z-index: -1;
        width: 82px;
        height: 58px;
        border-radius: 50%;
        background: radial-gradient(circle, rgba(87, 107, 80, 0.12), transparent 72%);
        content: "";
        opacity: 0.55;
        transform: translateX(-50%);
        filter: blur(8px);
      }#course-quality .quality-stat-value{
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.2rem, 5.5vw, 1.8rem);
        font-weight: 800;
        letter-spacing: -0.06em;
        line-height: 1.2;
        white-space: nowrap;
      }#course-quality .quality-stat:nth-child(even) .quality-stat-value{
        color: var(--green);
      }#course-quality .quality-stat-label{
        margin-top: 5px;
        color: var(--muted);
        font-size: 9px;
        font-weight: 650;
        line-height: 1.7;
        white-space: nowrap;
      }@media (prefers-reduced-motion: no-preference){#course-quality .quality-art{
          animation: quality-arrival 760ms var(--ease) both,
            quality-glow 4.2s ease-in-out 760ms infinite;
        }#course-quality .quality-stat::before{
          animation: stat-halo 7s ease-in-out infinite;
        }
      }@keyframes quality-arrival{
        from {
          opacity: 0;
          transform: translateY(12px) rotate(-6deg) scale(0.96);
        }
        to {
          opacity: 1;
          transform: translateY(0) rotate(-3deg) scale(1);
        }
      }@keyframes quality-glow{
        0%,
        100% {
          transform: translateY(0);
          filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12))
            drop-shadow(0 0 0 rgba(87, 135, 77, 0));
        }
        50% {
          transform: translateY(-8px);
          filter: drop-shadow(0 16px 15px rgba(67, 72, 62, 0.12))
            drop-shadow(0 0 24px rgba(87, 135, 77, 0.34));
        }
      }@keyframes stat-halo{
        0%,
        100% {
          opacity: 0.35;
          transform: translateX(-50%) scale(0.92);
        }
        50% {
          opacity: 0.7;
          transform: translateX(-50%) scale(1.08);
        }
      }@media (prefers-reduced-motion: reduce){#course-quality *,#course-quality *::before,#course-quality *::after{
          scroll-behavior: auto !important;
          transition-duration: 0.01ms !important;
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
        }
      }

    
#course-register{
        --canvas: #f5f5f5;
        --paper: #fff;
        --ink: #2e312d;
        --muted: rgba(46, 49, 45, 0.64);
        --line: rgba(46, 49, 45, 0.11);
        --green: #576b50;
        --green-dark: #40523c;
        --terracotta: #aa6045;
        --terracotta-dark: #8f4e38;
        --soft-green: rgba(87, 107, 80, 0.055);
        --shadow: 0 22px 52px rgba(67, 72, 62, 0.09),
          0 4px 14px rgba(67, 72, 62, 0.04);
        --ease: cubic-bezier(0.23, 1, 0.32, 1);
      }#course-register *{
        box-sizing: border-box;
      }#course-register{
        min-width: 0;
        background: var(--canvas);
      }#course-register{
        min-width: 0;
        margin: 0;
        color: var(--ink);
        background-color: var(--canvas);
        background-image:
          radial-gradient(circle at 10% 12%, rgba(87, 107, 80, 0.07), transparent 30%),
          radial-gradient(circle at 90% 88%, rgba(170, 96, 69, 0.05), transparent 28%);
        background-repeat: no-repeat;
        font-family: 'iransans', Tahoma, sans-serif;
        -webkit-font-smoothing: antialiased;
      }#course-register button{
        font: inherit;
      }#course-register .page-shell{
        width: min(100%, 720px);
        margin: 0 auto;
        padding: 40px 16px;
      }#course-register,#course-register{
        background: transparent;
        background-image: none;
        background-attachment: initial;
      }#course-register .final-cta{
        overflow: hidden;
        border: 1px solid rgba(87, 107, 80, 0.14);
        border-radius: 22px;
        background: var(--paper);
        box-shadow: var(--shadow);
      }#course-register .cta-visual{
        position: relative;
        aspect-ratio: 16 / 9;
        height: auto;
        margin: 0;
        overflow: hidden;
        background: #eadfc9;
      }#course-register .cta-visual::after{
        position: absolute;
        inset: auto 0 0;
        height: 46%;
        background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.16));
        content: "";
        pointer-events: none;
      }#course-register .cta-visual img{
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
        filter: saturate(0.78) contrast(0.94);
        transform: none;
      }#course-register .cta-content{
        padding: 21px 18px 18px;
      }#course-register .cta-meta{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
      }#course-register .course-name{
        color: var(--green);
        font-size: 11px;
        font-weight: 760;
        line-height: 1.7;
      }#course-register .discount-badge{
        flex: 0 0 auto;
        padding: 5px 9px;
        border: 1px solid rgba(170, 96, 69, 0.18);
        border-radius: 999px;
        color: var(--terracotta-dark);
        background: rgba(170, 96, 69, 0.09);
        font-size: 10px;
        font-weight: 780;
        line-height: 1.5;
      }#course-register .cta-title{
        max-width: none;
        margin: 10px 0 0;
        color: var(--green-dark);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.45rem, 6.4vw, 1.9rem);
        font-weight: 820;
        letter-spacing: -0.045em;
        line-height: 1.45;
      }#course-register .cta-lead{
        max-width: 38ch;
        margin: 9px 0 0;
        color: var(--muted);
        font-size: 12px;
        line-height: 2;
      }#course-register .course-facts{
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 18px;
        padding: 13px 0;
        border-top: 1px solid var(--line);
        border-bottom: 1px solid var(--line);
      }#course-register .course-fact{
        min-width: 0;
        padding: 0 8px;
        text-align: center;
      }#course-register .course-fact + .course-fact{
        border-right: 1px solid var(--line);
      }#course-register .course-fact strong,#course-register .course-fact span{
        display: block;
      }#course-register .course-fact strong{
        color: var(--ink);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: 0.98rem;
        font-weight: 800;
        line-height: 1.5;
        white-space: nowrap;
      }#course-register .course-fact span{
        margin-top: 2px;
        overflow: hidden;
        color: rgba(46, 49, 45, 0.56);
        font-size: 9px;
        line-height: 1.65;
        text-overflow: ellipsis;
        white-space: nowrap;
      }#course-register .cta-offer{
        margin-top: 16px;
        padding: 15px;
        border: 1px solid rgba(87, 107, 80, 0.12);
        border-radius: 16px;
        background: var(--soft-green);
      }#course-register .price-head,#course-register .price-values,#course-register .payment-row{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
      }#course-register .price-head{
        justify-content: flex-start;
        color: rgba(46, 49, 45, 0.62);
        font-size: 11px;
        font-weight: 650;
      }#course-register .price-saving{
        color: var(--green);
        font-size: 10px;
        font-weight: 760;
        white-space: nowrap;
      }#course-register .price-values{
        align-items: baseline;
        margin-top: 5px;
        direction: ltr;
      }#course-register .current-price{
        color: var(--terracotta);
        font-family: 'gramophone', 'iransans', sans-serif;
        font-size: clamp(1.55rem, 7.6vw, 2rem);
        font-weight: 850;
        letter-spacing: -0.045em;
        line-height: 1.3;
        white-space: nowrap;
      }#course-register .current-price small{
        margin-right: 3px;
        font-family: 'iransans', Tahoma, sans-serif;
        font-size: 0.43em;
        font-weight: 700;
        letter-spacing: 0;
      }#course-register .old-price{
        color: rgba(46, 49, 45, 0.45);
        font-size: 12px;
        text-decoration: line-through;
        white-space: nowrap;
      }#course-register .purchase-button{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 54px;
        margin-top: 13px;
        border: 0;
        border-radius: 13px;
        color: #fff;
        background: var(--terracotta);
        box-shadow: 0 10px 22px rgba(170, 96, 69, 0.2);
        cursor: pointer;
        font: 800 0.95rem/1.5 'iransans', Tahoma, sans-serif;
        white-space: nowrap;
        transition: transform 180ms var(--ease), box-shadow 180ms ease,
          background-color 180ms ease;
      }#course-register .purchase-button:hover{
        background: var(--terracotta-dark);
        box-shadow: 0 13px 26px rgba(170, 96, 69, 0.23);
        transform: translateY(-1px);
      }#course-register .purchase-button:active{
        box-shadow: 0 7px 15px rgba(170, 96, 69, 0.16);
        transform: translateY(1px) scale(0.99);
      }#course-register .purchase-button:focus-visible{
        outline: 3px solid rgba(170, 96, 69, 0.3);
        outline-offset: 3px;
      }#course-register .payment-row{
        justify-content: center;
        margin-top: 13px;
        color: rgba(46, 49, 45, 0.58);
        font-size: 9px;
        line-height: 1.6;
      }#course-register .payment-logos{
        display: flex;
        align-items: center;
        gap: 5px;
      }#course-register .payment-logo{
        display: block;
        width: 25px;
        height: 25px;
        border-radius: 7px;
        object-fit: contain;
      }#course-register .cta-note{
        margin: 12px auto 0;
        color: rgba(46, 49, 45, 0.54);
        font-size: 9px;
        line-height: 1.85;
        text-align: center;
      }@media (max-width: 359px){#course-register .page-shell{
          padding-inline: 12px;
        }#course-register .cta-content{
          padding-inline: 15px;
        }#course-register .cta-offer{
          padding-inline: 12px;
        }#course-register .course-fact{
          padding-inline: 5px;
        }#course-register .course-fact strong{
          font-size: 0.88rem;
        }#course-register .course-fact span{
          font-size: 8px;
        }
      }@media (prefers-reduced-motion: reduce){#course-register *,#course-register *::before,#course-register *::after{
          scroll-behavior: auto !important;
          animation: none !important;
          transition-duration: 0.01ms !important;
        }
      }
    
    
    

    .sticky-course-purchase {
      position: fixed;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 20;
      display: flex;
      box-sizing: border-box;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      width: 100%;
      margin: 0;
      padding: 10px 16px calc(10px + env(safe-area-inset-bottom)) 16px;
      border: 0;
      border-radius: 0;
      background: rgba(251, 251, 250, 0.94);
      box-shadow: 0 -8px 24px rgba(67, 72, 62, 0.12),
        0 -2px 7px rgba(67, 72, 62, 0.05);
      color: #2e312d;
      direction: rtl;
      font-family: 'iransans', Tahoma, sans-serif;
      opacity: 1;
      transform: translateY(0);
      transition: opacity 220ms ease, transform 280ms cubic-bezier(0.23, 1, 0.32, 1);
      backdrop-filter: blur(10px);
    }

    .sticky-course-purchase[hidden] {
      display: flex;
      opacity: 0;
      pointer-events: none;
      transform: translateY(calc(100% + 24px));
    }

    .sticky-course-purchase-copy {
      min-width: 0;
    }

    .sticky-course-purchase-label {
      display: block;
      color: rgba(46, 49, 45, 0.58);
      font-size: 9px;
      line-height: 1.7;
    }

    .sticky-course-purchase-price {
      display: block;
      margin-top: 1px;
      color: #40523c;
      font-family: 'iransans', Tahoma, sans-serif;
      font-size: 16px;
      font-weight: 800;
      letter-spacing: -0.03em;
      line-height: 1.45;
      white-space: nowrap;
    }

    .sticky-course-purchase-price small {
      font-size: 9px;
      font-weight: 700;
    }

    .sticky-course-purchase-button {
      flex: 0 0 auto;
      min-width: 126px;
      padding: 10px 16px 11px;
      border: 0;
      border-radius: 11px;
      background: #576b50;
      color: #fff;
      cursor: pointer;
      font: inherit;
      font-size: 10px;
      font-weight: 750;
      line-height: 1.6;
      white-space: nowrap;
      transition: background-color 180ms ease, transform 180ms ease;
    }

    .sticky-course-purchase-button:hover {
      background: #40523c;
    }

    .sticky-course-purchase-button:active {
      transform: translateY(1px) scale(0.985);
    }

    .sticky-course-purchase-button:focus-visible {
      outline: 3px solid rgba(87, 107, 80, 0.3);
      outline-offset: 3px;
    }

    body.has-sticky-course-purchase {
      padding-bottom: 84px;
    }

    @media (max-width: 460px) {
      .sticky-course-purchase {
        gap: 10px;
        padding-right: 12px;
        padding-left: 12px;
      }

      .sticky-course-purchase-price {
        font-size: 14px;
      }

      .sticky-course-purchase-button {
        min-width: 112px;
        padding-right: 12px;
        padding-left: 12px;
      }
    }

    @media (min-width: 1024px) {
      .sticky-course-purchase {
        min-height: 76px;
        gap: 28px;
        padding-top: 12px;
        padding-right: max(40px, calc((100vw - 1200px) / 2));
        padding-bottom: 12px;
        padding-left: max(40px, calc((100vw - 1200px) / 2));
      }

      .sticky-course-purchase-copy {
        display: flex;
        align-items: baseline;
        gap: 14px;
      }

      .sticky-course-purchase-label {
        font-size: 0.72rem;
      }

      .sticky-course-purchase-price {
        font-size: 1.22rem;
      }

      .sticky-course-purchase-price small {
        font-size: 0.68rem;
      }

      .sticky-course-purchase-button {
        min-width: 190px;
        min-height: 46px;
        border-radius: 14px;
        font-size: 0.82rem;
      }

      body.has-sticky-course-purchase {
        padding-bottom: 76px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .sticky-course-purchase {
        transition-duration: 0.01ms;
      }
    }
  
    /* Mobile-only continuation sections: one focused card per view. */
    #course-mobile-students,#course-mobile-other,#course-mobile-support{font-family:'iransans',Tahoma,sans-serif}
    #course-mobile-students .page-shell,#course-mobile-other .page-shell,#course-mobile-support .page-shell{width:min(100% - 32px,520px);margin:0 auto;padding:34px 0}
    .mobile-section-heading{margin:0 0 17px}.mobile-section-heading h2{margin:0;color:#2e312d;font-family:'gramophone','iransans',sans-serif;font-size:1.45rem;line-height:1.5}.mobile-section-heading p{margin:5px 0 0;color:rgba(46,49,45,.62);font-size:.76rem;line-height:1.9}
    .mobile-student-viewport{width:100%;overflow:hidden;border-radius:17px;touch-action:pan-y;overscroll-behavior-x:contain;cursor:grab}.mobile-student-viewport.is-dragging{cursor:grabbing}.mobile-student-track{display:flex;width:100%;direction:ltr;transition:transform 240ms cubic-bezier(.32,.72,0,1);will-change:transform}.mobile-student-viewport.is-dragging .mobile-student-track{transition:none}.mobile-student-card{display:flex;flex:0 0 100%;min-width:0;min-height:164px;flex-direction:column;padding:19px;border:1px solid rgba(87,107,80,.16);border-radius:17px;background:#fff;direction:rtl;opacity:.58;transform:scale(.985);transition:opacity 180ms ease,transform 240ms cubic-bezier(.32,.72,0,1);user-select:none}.mobile-student-card.is-active{opacity:1;transform:scale(1)}.mobile-rating{color:#aa6045;font-size:.95rem;letter-spacing:1.5px}.mobile-student-card p{margin:12px 0 0;color:#2e312d;font-size:.82rem;line-height:2}.mobile-student-meta{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:13px;color:rgba(46,49,45,.62);font-size:.7rem}.mobile-student-meta strong{color:#2e312d;font-size:.8rem}
    .mobile-card-dots{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:13px}.mobile-card-dot{width:7px;height:7px;padding:0;border:1px solid rgba(87,107,80,.45);border-radius:999px;background:transparent;cursor:pointer;transition:width 180ms ease,background-color 180ms ease}.mobile-card-dot[aria-selected="true"]{width:21px;background:#576b50}
    #course-mobile-other{--paper:#fff;--ink:#1f2820;--muted:#687069;--primary:#aa6045;--primary-dark:#814632;--green:#587353;--green-dark:#40563d;--line:#dfe5de}
    .mobile-course-card{display:none;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.mobile-course-card.is-active{display:flex;flex-direction:column}.mobile-course-cover{position:relative;display:block;margin:10px 10px 0;overflow:hidden;border-radius:12px;background:#c6ad83;aspect-ratio:16/9}.mobile-course-cover img{display:block;width:100%;height:100%;object-fit:cover}.mobile-course-discount{position:absolute;top:8px;right:8px;padding:4px 8px;border-radius:8px;background:#c84d48;color:#fff;font-size:.58rem;font-weight:800}.mobile-course-body{display:flex;flex:1;flex-direction:column;padding:10px 12px 12px}.mobile-course-title{margin:0;color:var(--ink);font-size:.94rem;font-weight:750;line-height:1.55}.mobile-course-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.mobile-course-stats{display:flex}.mobile-course-stat{display:grid;width:40px;place-items:center;color:var(--muted);font-size:.52rem;line-height:1.12}.mobile-course-stat+.mobile-course-stat{border-right:1px solid var(--line)}.mobile-course-stat strong{color:var(--ink);font-size:.8rem;line-height:1.1}.mobile-payment{display:flex;gap:2px;align-items:center}.mobile-payment img{width:32px;height:32px;object-fit:contain}.mobile-course-footer{display:flex;flex-direction:column;gap:10px;margin-top:10px}.mobile-price{display:grid;gap:1px;text-align:right}.mobile-price del{color:#969b96;font-size:.68rem}.mobile-price strong{color:var(--ink);font-size:.96rem}.mobile-course-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 12px;border:0;border-radius:10px;background:var(--primary);color:#fff;font:800 .78rem/1 'iransans',Tahoma,sans-serif;text-decoration:none}.mobile-coming-status{display:flex;align-items:center;gap:6px;margin:13px 0 auto;color:var(--muted);font-size:.62rem}.mobile-coming-status i{color:var(--primary)}.mobile-coming-status strong{color:var(--primary-dark)}.mobile-coming-status small::before{margin:0 6px;color:#b9bdb7;content:"•"}.mobile-course-action--notify{margin-top:16px;border:2px solid var(--green);background:transparent;color:var(--green-dark)}
    .mobile-support-panel{position:relative;isolation:isolate;padding:23px 20px;overflow:hidden;border:1px solid rgba(37,77,96,.28);border-radius:18px;background-color:#365f72;background-image:linear-gradient(90deg,rgba(30,68,86,.94),rgba(39,82,99,.82)),url("../images/course-support-pattern.png");background-position:center;background-size:cover;color:#fff}.mobile-support-panel h2{position:relative;z-index:1;margin:0;font-family:'gramophone','iransans',sans-serif;font-size:1.5rem;line-height:1.45}.mobile-support-panel p{position:relative;z-index:1;margin:6px 0 0;color:rgba(255,255,255,.84);font-size:.78rem;line-height:1.9}.mobile-support-links{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.mobile-support-link{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:1px solid rgba(255,255,255,.7);border-radius:10px;background:#fff;color:#31586c;font-size:.74rem;font-weight:750;text-decoration:none}.mobile-support-link:last-child{grid-column:1/-1}.mobile-support-link-icon{display:grid;place-items:center;width:20px;height:20px;color:#24475b;font-size:.95rem;line-height:1}.mobile-support-link:hover{background:#e9f0ec;color:#24475b}.mobile-support-link:focus-visible{outline:3px solid rgba(255,255,255,.42);outline-offset:3px}

    /* The final mobile CTA uses the same information hierarchy as the desktop purchase rail. */
    #course-register .page-shell{width:min(100% - 32px,520px);padding:34px 0}
    #course-register .final-cta{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid rgba(64,82,60,.13);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 20px 48px rgba(49,57,47,.12)}
    #course-register .sticky-course-purchase-title{margin:0;color:#2e312d;font-family:'gramophone','iransans',sans-serif;font-size:1.2rem;line-height:1.55;text-align:center}
    #course-register .sticky-course-purchase-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:12px 0;border-top:1px solid rgba(46,49,45,.09);border-bottom:1px solid rgba(46,49,45,.09)}
    #course-register .sticky-course-purchase-facts span{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;color:rgba(46,49,45,.62);font-size:.68rem;line-height:1.55;text-align:center}
    #course-register .sticky-course-purchase-facts span + span::before{position:absolute;top:3px;right:0;bottom:3px;width:1px;background:rgba(46,49,45,.09);content:""}
    #course-register .sticky-course-purchase-facts strong{color:#40523c;font-size:.82rem;font-weight:800}
    #course-register .sticky-course-purchase-copy{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
    #course-register .sticky-course-purchase-label{align-self:flex-start;padding:4px 8px;border-radius:999px;background:rgba(170,96,69,.1);color:#9e593f;font-size:.7rem;font-weight:800}
    #course-register .sticky-course-purchase-old-price{color:rgba(46,49,45,.52);font-size:.78rem;text-decoration-thickness:1px}
    #course-register .sticky-course-purchase-price{color:#40523c;font-family:'gramophone','iransans',sans-serif;font-size:1.55rem;font-weight:800}
    #course-register .sticky-course-purchase-price small{font-family:'iransans',Tahoma,sans-serif;font-size:.62em;font-weight:600}
    #course-register .sticky-course-purchase-benefits{display:grid;gap:8px;margin:0;padding:0;list-style:none}
    #course-register .sticky-course-purchase-benefits li{position:relative;padding-right:20px;color:rgba(46,49,45,.76);font-size:.75rem;line-height:1.7}
    #course-register .sticky-course-purchase-benefits li::before{position:absolute;top:.5em;right:1px;width:8px;height:4px;border-bottom:2px solid #576b50;border-left:2px solid #576b50;content:"";transform:rotate(-45deg)}
    #course-register .sticky-course-payment{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding-top:11px;border-top:1px solid rgba(46,49,45,.09);color:rgba(46,49,45,.62);font-size:.72rem;line-height:1.6}
    #course-register .sticky-course-payment .payment-logos{display:inline-flex;align-items:center;gap:7px}
    #course-register .sticky-course-payment .payment-logo{display:block;width:30px;height:30px;object-fit:contain}
    #course-register .sticky-course-purchase-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;border:0;border-radius:12px;background:#aa6045;color:#fff;font:800 .92rem/1.5 'iransans',Tahoma,sans-serif;cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease,background-color 180ms ease}
    #course-register .sticky-course-purchase-button:hover{background:#8f4e38;box-shadow:0 13px 26px rgba(170,96,69,.23);transform:translateY(-1px)}
    #course-register .sticky-course-purchase-button:active{transform:translateY(1px) scale(.99)}
    #course-register .sticky-course-purchase-button:focus-visible{outline:3px solid rgba(170,96,69,.3);outline-offset:3px}
    #course-register .final-cta{gap:13px;padding:20px;background:#fff;box-shadow:0 12px 28px rgba(49,57,47,.06)}
    #course-register .sticky-course-purchase-thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:12px;object-fit:cover;object-position:center}
    #course-register .sticky-course-purchase-title{font-size:1.08rem;line-height:1.5}
    #course-register .sticky-course-purchase-copy{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"old label" "price .";align-items:center;gap:4px 10px;padding:2px 0;border:0;border-radius:0;background:transparent;direction:ltr}
    #course-register .sticky-course-purchase-label{grid-area:label;align-self:center;width:max-content;justify-self:end;direction:rtl}
    #course-register .sticky-course-purchase-old-price{grid-area:old;white-space:nowrap;justify-self:start;direction:rtl}
    #course-register .sticky-course-purchase-price{grid-area:price;display:block;justify-self:start;margin-right:auto!important;margin-left:0!important;text-align:left;direction:rtl;line-height:1.25}
    #course-register .sticky-course-payment{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:10px 0 2px;overflow:hidden;border-top:1px solid rgba(65,111,150,.18);border-radius:0;background:linear-gradient(90deg,transparent,rgba(83,139,190,.035),transparent);color:rgba(51,90,122,.82);font-size:.72rem;font-weight:550;line-height:1.7}
    #course-register .sticky-course-payment::before{position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(90deg,transparent,rgba(105,166,207,.18),transparent);content:"";transform:translateX(220%);animation:payment-blue-sweep 4.6s ease-in-out infinite}
    #course-register .sticky-course-payment > span:first-child,#course-register .sticky-course-payment .payment-logos{position:relative;z-index:1}#course-register .sticky-course-payment > span:first-child{white-space:nowrap}#course-register .sticky-course-payment .payment-logos{gap:5px}#course-register .sticky-course-payment .payment-logo{width:36px;height:36px;opacity:.92;filter:saturate(.9)}
    #course-register .sticky-course-purchase-benefits li{display:flex;align-items:center;gap:8px;padding-right:0}#course-register .sticky-course-purchase-benefits li::before{display:none}#course-register .sticky-course-purchase-benefits .benefit-icon{display:inline-grid;flex:0 0 18px;width:18px;height:18px;place-items:center;color:#576b50;font-size:.88rem;font-weight:800;line-height:1}
    #course-register .sticky-course-purchase-button{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:3.2em;min-height:0;padding:.35em 1.2em;border:0;border-radius:.9em;overflow:hidden;background:#576b50;color:#fff;font-family:'iransans',Tahoma,sans-serif;font-size:.98rem;font-weight:700;letter-spacing:0;line-height:1.35;box-shadow:inset 0 0 1.6em -.6em #40523c;cursor:pointer;transition:background-color 180ms ease,transform 180ms ease}
    #course-register .sticky-course-purchase-button:hover{background:#50664a;box-shadow:inset 0 0 1.6em -.6em #40523c;transform:none}#course-register .sticky-course-purchase-button .button-label{display:block;white-space:nowrap;text-align:center}#course-register .sticky-course-purchase-button .button-icon{position:absolute;top:50%;right:10px;display:flex;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin-left:1em;border-radius:.7em;background:#6b8065;color:#f7faf5;box-shadow:none;transform:translateY(-50%);transition:right .3s ease,width .3s ease,background-color .3s ease,transform .3s ease}#course-register .sticky-course-purchase-button .button-icon svg{display:block;width:1.16em;height:1.16em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9;transition:transform .3s ease}#course-register .sticky-course-purchase-button:hover .button-icon{right:10px;width:calc(100% - 20px);background:#6b8065}#course-register .sticky-course-purchase-button:hover .button-icon svg{transform:translateX(.1em)}#course-register .sticky-course-purchase-button:active .button-icon{transform:translateY(-50%) scale(.95)}
    @media (prefers-reduced-motion:reduce){#course-register .sticky-course-payment::before{animation:none}#course-register .sticky-course-purchase-button .button-icon,#course-register .sticky-course-purchase-button .button-icon svg{transition:none}}
    #course-mobile-other{display:none!important}
    #course-overview,#course-content,#course-instructors,#course-faq,#course-quality,#course-register,#course-mobile-students,#course-mobile-support{background-color:#f5f5f5;background-image:linear-gradient(rgba(87,107,80,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(87,107,80,.035) 1px,transparent 1px);background-size:56px 56px;background-attachment:initial}
    #course-instructors .teacher-card{transition:transform 260ms cubic-bezier(.32,.72,0,1),opacity 180ms ease,filter 220ms ease,box-shadow 220ms ease;-webkit-user-drag:none}
    #course-instructors .teacher-photo{-webkit-user-drag:none;pointer-events:none}
    #course-instructors .teacher-stage.is-switching .teacher-card[data-state="active"]{animation:none}
    @media (prefers-reduced-motion:reduce){.mobile-student-track{transition:none}.mobile-student-card{transition:opacity 160ms ease}.mobile-student-viewport.is-dragging .mobile-student-track{transition:none}#course-instructors .teacher-card{transition:opacity 160ms ease,filter 160ms ease}}
}
    /* Course comments: shared desktop and mobile discussion surface. */
    #course-comments {
      --comments-ink: #2e312d;
      --comments-muted: #687069;
      --comments-green: #576b50;
      --comments-green-dark: #40523c;
      --comments-clay: #aa6045;
      --comments-line: rgba(87, 107, 80, 0.16);
      background-color: #f5f5f5;
      background-image:
        linear-gradient(rgba(87, 107, 80, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(87, 107, 80, 0.035) 1px, transparent 1px);
      background-size: 56px 56px;
      color: var(--comments-ink);
      font-family: 'iransans', Tahoma, sans-serif;
    }

    #course-comments .page-shell {
      width: min(calc(100% - 48px), 1200px);
      margin: 0 auto;
      padding: 72px 0 116px;
    }

    .comments-heading {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 28px;
    }

    .comments-heading h2 {
      margin: 0;
      color: var(--comments-green);
      font-family: 'gramophone', 'iransans', sans-serif;
      font-size: clamp(2rem, 3vw, 3rem);
      font-weight: 800;
      letter-spacing: -0.045em;
      line-height: 1.42;
    }

    .comments-heading p {
      max-width: 48ch;
      margin: 7px 0 0;
      color: var(--comments-muted);
      font-size: 0.88rem;
      line-height: 2;
    }

    .comments-count {
      flex: 0 0 auto;
      padding-right: 14px;
      border-right: 3px solid var(--comments-clay);
      color: var(--comments-muted);
      font-size: 0.78rem;
      line-height: 1.8;
      white-space: nowrap;
    }

    .comments-count strong {
      display: block;
      color: var(--comments-ink);
      font-family: 'gramophone', 'iransans', sans-serif;
      font-size: 1.25rem;
      line-height: 1.2;
    }

    .comments-layout {
      display: grid;
      grid-template-columns: minmax(310px, 0.78fr) minmax(0, 1.22fr);
      gap: 24px;
      align-items: start;
    }

    .comment-form-panel,
    .comment-card {
      border: 1px solid var(--comments-line);
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.96);
    }

    .comment-form-panel {
      padding: 24px;
      box-shadow: 0 14px 34px rgba(49, 57, 47, 0.07);
    }

    .comment-form-heading {
      margin: 0;
      color: var(--comments-ink);
      font-family: 'gramophone', 'iransans', sans-serif;
      font-size: 1.32rem;
      line-height: 1.55;
    }

    .comment-form-intro {
      margin: 5px 0 20px;
      color: var(--comments-muted);
      font-size: 0.74rem;
      line-height: 1.9;
    }

    .comment-form-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .comment-field {
      display: grid;
      gap: 7px;
    }

    .comment-field--wide {
      grid-column: 1 / -1;
    }

    .comment-field label {
      color: var(--comments-ink);
      font-size: 0.72rem;
      font-weight: 700;
      line-height: 1.6;
    }

    .comment-field input,
    .comment-field textarea {
      box-sizing: border-box;
      width: 100%;
      border: 1px solid rgba(46, 49, 45, 0.22);
      border-radius: 11px;
      background: #fbfcfa;
      color: var(--comments-ink);
      font: 500 0.78rem/1.9 'iransans', Tahoma, sans-serif;
      outline: 0;
      transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
    }

    .comment-field input {
      min-height: 44px;
      padding: 9px 12px;
    }

    .comment-field textarea {
      min-height: 132px;
      padding: 11px 12px;
      resize: vertical;
    }

    .comment-field input::placeholder,
    .comment-field textarea::placeholder {
      color: var(--comments-muted);
      opacity: 1;
    }

    .comment-field input:focus,
    .comment-field textarea:focus {
      border-color: var(--comments-green);
      background: #fff;
      box-shadow: 0 0 0 3px rgba(87, 107, 80, 0.13);
    }

    .comment-form-note {
      margin: 13px 0 0;
      color: var(--comments-muted);
      font-size: 0.67rem;
      line-height: 1.8;
    }

    .comment-submit,
    .comment-reply-submit {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 44px;
      margin-top: 16px;
      padding: 10px 18px;
      border: 0;
      border-radius: 11px;
      background: var(--comments-green);
      color: #fff;
      cursor: pointer;
      font: 750 0.78rem/1.5 'iransans', Tahoma, sans-serif;
      transition: background-color 160ms ease, transform 160ms ease;
    }

    .comment-submit:hover,
    .comment-reply-submit:hover {
      background: var(--comments-green-dark);
    }

    .comment-submit:active,
    .comment-reply-submit:active {
      transform: translateY(1px) scale(0.985);
    }

    .comment-submit:focus-visible,
    .comment-reply-submit:focus-visible,
    .comment-reply-action:focus-visible,
    .comment-reply-cancel:focus-visible {
      outline: 3px solid rgba(87, 107, 80, 0.28);
      outline-offset: 3px;
    }

    .comment-form-status {
      min-height: 1.8em;
      margin: 9px 0 0;
      color: var(--comments-green-dark);
      font-size: 0.7rem;
      line-height: 1.8;
    }

    .comments-thread {
      display: grid;
      gap: 13px;
    }

    .comment-card {
      padding: 20px 22px;
      box-shadow: 0 9px 24px rgba(49, 57, 47, 0.045);
    }

    .comment-card.is-new {
      animation: comment-arrival 280ms cubic-bezier(0.16, 1, 0.3, 1) both;
    }

    @keyframes comment-arrival {
      from { opacity: 0; transform: translateY(8px); }
      to { opacity: 1; transform: translateY(0); }
    }

    .comment-card-header {
      display: flex;
      align-items: center;
      gap: 11px;
    }

    .comment-avatar {
      display: grid;
      flex: 0 0 38px;
      width: 38px;
      height: 38px;
      place-items: center;
      border: 1px solid rgba(87, 107, 80, 0.14);
      border-radius: 50%;
      background: #e9eee7;
      color: var(--comments-green-dark);
      font-size: 0.82rem;
      font-weight: 800;
      line-height: 1;
    }

    .comment-author {
      min-width: 0;
    }

    .comment-author-line {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 7px;
    }

    .comment-author strong {
      color: var(--comments-ink);
      font-size: 0.78rem;
      line-height: 1.7;
    }

    .comment-date {
      display: block;
      margin-top: 1px;
      color: var(--comments-muted);
      font-size: 0.64rem;
      line-height: 1.7;
    }

    .comment-admin-badge,
    .comment-pending-badge {
      display: inline-flex;
      align-items: center;
      min-height: 21px;
      padding: 2px 7px;
      border-radius: 7px;
      font-size: 0.58rem;
      font-weight: 800;
      line-height: 1.4;
    }

    .comment-admin-badge {
      background: var(--comments-green);
      color: #fff;
    }

    .comment-pending-badge {
      background: rgba(170, 96, 69, 0.11);
      color: #8d4e38;
    }

    .comment-body {
      margin: 14px 49px 0 0;
      color: #3d423c;
      font-size: 0.8rem;
      line-height: 2.05;
    }

    .comment-actions {
      display: flex;
      justify-content: flex-end;
      margin: 11px 49px 0 0;
    }

    .comment-reply-action,
    .comment-reply-cancel {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 5px 0;
      border: 0;
      background: transparent;
      color: var(--comments-green-dark);
      cursor: pointer;
      font: 750 0.68rem/1.6 'iransans', Tahoma, sans-serif;
    }

    .comment-reply-action:hover,
    .comment-reply-cancel:hover {
      color: var(--comments-clay);
    }

    .comment-replies {
      display: grid;
      gap: 10px;
      margin: 16px 36px 0 0;
      padding-right: 17px;
      border-right: 2px solid rgba(87, 107, 80, 0.17);
    }

    .comment-card--reply {
      padding: 16px 18px;
      border-radius: 14px;
      background: #f8faf7;
      box-shadow: none;
    }

    .comment-card--admin {
      border-color: rgba(87, 107, 80, 0.28);
      background: #f2f6f0;
    }

    .comment-card--admin .comment-avatar {
      border-color: var(--comments-green);
      background: var(--comments-green);
      color: #fff;
    }

    .comment-card--reply .comment-body {
      margin-right: 45px;
    }

    .comment-reply-form {
      display: grid;
      gap: 9px;
      margin: 15px 49px 0 0;
      padding: 14px;
      border: 1px solid rgba(87, 107, 80, 0.18);
      border-radius: 13px;
      background: #f8faf7;
    }

    .comment-reply-form label {
      color: var(--comments-ink);
      font-size: 0.7rem;
      font-weight: 750;
    }

    .comment-reply-form input,
    .comment-reply-form textarea {
      box-sizing: border-box;
      width: 100%;
      padding: 9px 11px;
      border: 1px solid rgba(46, 49, 45, 0.22);
      border-radius: 10px;
      background: #fff;
      color: var(--comments-ink);
      font: 500 0.76rem/1.9 'iransans', Tahoma, sans-serif;
      resize: vertical;
    }

    .comment-reply-form input {
      min-height: 40px;
      resize: none;
    }

    .comment-reply-form textarea {
      min-height: 88px;
    }

    .comment-reply-form input:focus,
    .comment-reply-form textarea:focus {
      border-color: var(--comments-green);
      outline: 0;
      box-shadow: 0 0 0 3px rgba(87, 107, 80, 0.13);
    }

    .comment-reply-controls {
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .comment-reply-submit {
      min-height: 38px;
      margin-top: 0;
      padding: 8px 14px;
      font-size: 0.7rem;
    }

    @media (max-width: 767px) {
      #course-comments .page-shell {
        width: min(calc(100% - 32px), 520px);
        padding: 38px 0 104px;
      }

      .comments-heading {
        display: block;
        margin-bottom: 19px;
      }

      .comments-heading h2 {
        font-size: 1.55rem;
        line-height: 1.5;
      }

      .comments-heading p {
        margin-top: 5px;
        font-size: 0.75rem;
        line-height: 1.9;
      }

      .comments-count {
        display: flex;
        align-items: baseline;
        gap: 5px;
        width: max-content;
        margin-top: 12px;
        padding: 0 10px 0 0;
        border-right-width: 2px;
      }

      .comments-count strong {
        display: inline;
        font-size: 1rem;
      }

      .comments-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
      }

      .comment-form-panel {
        padding: 19px 17px;
        border-radius: 17px;
        box-shadow: 0 10px 26px rgba(49, 57, 47, 0.055);
      }

      .comment-form-heading {
        font-size: 1.13rem;
      }

      .comment-form-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
      }

      .comment-field--wide {
        grid-column: auto;
      }

      .comment-submit {
        width: 100%;
      }

      .comments-thread {
        gap: 11px;
      }

      .comment-card {
        padding: 17px 15px;
        border-radius: 16px;
      }

      .comment-body,
      .comment-actions {
        margin-right: 0;
      }

      .comment-body {
        margin-top: 12px;
        font-size: 0.76rem;
        line-height: 2;
      }

      .comment-replies {
        margin-right: 6px;
        padding-right: 10px;
      }

      .comment-card--reply {
        padding: 14px 12px;
      }

      .comment-card--reply .comment-body {
        margin-right: 0;
      }

      .comment-reply-form {
        margin-right: 0;
        padding: 12px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .comment-card.is-new {
        animation: none;
      }
    }
    .seo-page-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
    @media (max-width:767px){.desktop-only{display:none!important}.mobile-only{display:block}.mobile-floating-purchase.mobile-only{display:flex;align-items:center;justify-content:space-between}.mobile-floating-purchase .sticky-course-purchase-copy{flex:1 1 auto}.mobile-floating-purchase .sticky-course-purchase-button{flex:0 0 auto}.course-details-layout,.course-details-main{display:block;width:100%;min-width:0}.course-details-section{display:block;width:100%}}
    @media (min-width:768px){.mobile-only{display:none!important}.desktop-only{display:block}}
    /* Brand color hierarchy: brown owns purchase actions, green supports secondary states. */
    .sticky-course-purchase-button,
    #course-register .sticky-course-purchase-button {
      background: #aa6045 !important;
      box-shadow: inset 0 0 1.6em -.6em #814632;
    }
    .sticky-course-purchase-button:hover,
    #course-register .sticky-course-purchase-button:hover {
      background: #8f4e38 !important;
    }
    .sticky-course-purchase-button:focus-visible,
    #course-register .sticky-course-purchase-button:focus-visible {
      outline-color: rgba(170, 96, 69, .34);
    }
    #course-register .sticky-course-purchase-price {
      color: #aa6045;
    }
    #course-description .section-heading h2,
    #course-content .section-heading h2,
    #course-instructors .section-heading h2,
    #course-faq .section-heading h2,
    #course-quality .section-heading h2 {
      color: #2e312d;
    }
    /* Final visual polish: a single readable type scale and clear color roles. */
    #course-intro .page-title {
      font-size: clamp(1.6rem, 6.5vw, 2.15rem);
      line-height: 1.4;
    }

    #course-description .section-heading h2,
    #course-content .section-heading h2,
    #course-instructors .section-heading h2,
    #course-student-experience .section-heading h2,
    #course-faq .section-heading h2,
    #course-quality .section-heading h2,
    #course-comments .comments-heading h2 {
      color: #2e312d;
      font-size: clamp(1.72rem, 2.45vw, 2.35rem);
      letter-spacing: -0.04em;
      line-height: 1.45;
    }

    #course-description .section-heading p,
    #course-content .section-heading p,
    #course-instructors .section-heading p,
    #course-student-experience .section-heading p,
    #course-faq .section-heading p,
    #course-quality .section-heading p,
    #course-comments .comments-heading p {
      font-size: clamp(0.85rem, 1.1vw, 0.95rem);
      line-height: 2;
    }

    #course-overview .course-intro p,
    #course-overview .course-scope,
    #course-overview .payment-details,
    #course-description .description-block p,
    #course-quality .quality-lead,
    #course-student-experience .experience-quote {
      font-size: clamp(0.86rem, 1.05vw, 0.96rem);
      line-height: 2.05;
    }

    #course-content .chapter-tab-number {
      font-size: 0.76rem;
    }

    #course-content .chapter-tab-name {
      font-size: clamp(0.86rem, 1.15vw, 0.98rem);
    }

    #course-content .lesson-title {
      font-size: clamp(0.9rem, 1.05vw, 0.98rem);
      line-height: 1.75;
    }

    #course-content .lesson-duration,
    #course-content .preview-duration-inline,
    #course-content .preview-label {
      font-size: clamp(0.75rem, 0.9vw, 0.84rem);
    }

    #course-content .course-preview-copy {
      font-size: clamp(0.86rem, 1vw, 0.94rem);
      line-height: 1.9;
    }

    #course-content .preview-filter {
      font-size: clamp(0.8rem, 0.95vw, 0.88rem);
      line-height: 1.6;
    }

    #course-content .preview-card-title {
      font-size: clamp(0.84rem, 0.95vw, 0.92rem);
      line-height: 1.65;
    }

    #course-content .preview-card-meta {
      font-size: clamp(0.74rem, 0.85vw, 0.8rem);
      line-height: 1.65;
    }

    #course-faq .faq-question {
      min-height: 64px;
    }

    #course-faq .faq-question-text {
      overflow: visible;
      font-size: clamp(0.9rem, 1.1vw, 0.98rem);
      font-weight: 650;
      line-height: 1.75;
      text-overflow: clip;
      white-space: normal;
    }

    #course-faq .faq-answer p {
      font-size: clamp(0.86rem, 1vw, 0.94rem);
      line-height: 2.05;
    }

    #course-quality .quality-stat-label,
    #course-student-experience .student-rating small,
    #course-student-experience .student-meta {
      font-size: 0.78rem;
    }

    #course-quality .quality-stat:nth-child(even) .quality-stat-value {
      color: #2e312d;
    }

    #course-intro .add-to-cart,
    #course-intro .add-to-cart:hover {
      background: #aa6045;
      box-shadow: 0 9px 20px rgba(170, 96, 69, 0.18);
    }

    #course-intro .add-to-cart:hover {
      background: #8f4e38;
    }

    .sticky-course-purchase-price,
    #course-register .sticky-course-purchase-price {
      color: #2e312d;
    }

    .sticky-course-purchase-label,
    #course-register .sticky-course-purchase-label,
    #course-intro .course-discount {
      background: rgba(200, 77, 72, 0.12);
      color: #a53f3b;
    }

    .sticky-course-purchase-button .button-icon,
    #course-register .sticky-course-purchase-button .button-icon {
      background: rgba(255, 255, 255, 0.16);
      color: #fff;
    }

    .sticky-course-purchase-button:hover .button-icon,
    #course-register .sticky-course-purchase-button:hover .button-icon {
      background: rgba(255, 255, 255, 0.2);
    }

    #course-details .sticky-course-payment,
    #course-register .sticky-course-payment {
      border-top-color: rgba(46, 49, 45, 0.1);
      background: transparent;
      color: rgba(46, 49, 45, 0.66);
    }

    #course-details .sticky-course-payment::before,
    #course-register .sticky-course-payment::before,
    #other-courses .course-card-payment::before {
      display: none;
      animation: none;
      content: none;
    }

    @media (min-width: 768px) {
      #course-intro .page-title {
        font-size: clamp(2rem, 2.8vw, 3rem);
        line-height: 1.3;
      }
    }
    /* Final purchase and preview refinements. */
    #course-content .preview-card {
      overflow: hidden;
      padding: 8px;
      border-radius: 14px;
    }

    #course-content .preview-card-media,
    #course-content .preview-card-media img {
      border-radius: 10px;
    }

    #course-content .preview-card-copy {
      padding: 10px 4px 4px;
    }

    #course-content .preview-card-title {
      text-align: center;
    }

    #other-courses .other-courses-viewport {
      touch-action: pan-y;
      overscroll-behavior-x: contain;
      cursor: grab;
    }

    #other-courses .other-courses-viewport.is-dragging {
      cursor: grabbing;
    }

    #other-courses .other-courses-viewport.is-dragging .course-card-track {
      transition: none;
    }

    #other-courses .course-card {
      user-select: none;
    }

    #course-register .sticky-course-purchase-price {
      font-weight: 900;
    }

    @media (min-width: 768px) {
      #course-details .desktop-purchase-rail .sticky-course-purchase-title {
        padding: 8px 6px 6px;
      }

      #course-details .desktop-purchase-rail .sticky-course-purchase-copy {
        padding: 12px 0 14px;
      }

      #course-details .desktop-purchase-rail .sticky-course-payment {
        margin-top: 10px;
        padding: 10px 0 12px;
      }

      #course-details .desktop-purchase-rail .sticky-course-purchase-button .button-icon,
      #course-details .desktop-purchase-rail .sticky-course-purchase-button:hover .button-icon {
        background: #c47b5f;
      }
    }

    @media (max-width: 767px) {
      .mobile-floating-purchase {
        gap: 12px;
      }

      .mobile-floating-purchase .sticky-course-purchase-copy {
        display: grid;
        flex: 1 1 auto;
        min-width: 0;
        grid-template-columns: max-content minmax(0, 1fr);
        grid-template-areas:
          "label old"
          "price price";
        align-items: center;
        gap: 2px 8px;
        direction: rtl;
      }

      .mobile-floating-purchase .sticky-course-purchase-label {
        grid-area: label;
        display: inline-block;
        width: max-content;
        justify-self: start;
        padding: 3px 7px;
        border-radius: 999px;
        line-height: 1.45;
        white-space: nowrap;
      }

      .mobile-floating-purchase .sticky-course-purchase-old-price {
        display: block;
        grid-area: old;
        justify-self: start;
        margin: 0;
        color: rgba(46, 49, 45, 0.55);
        font-size: 0.72rem;
        line-height: 1.35;
        text-decoration-thickness: 1px;
        white-space: nowrap;
      }

      .mobile-floating-purchase .sticky-course-purchase-price {
        grid-area: price;
        margin: 0;
        font-size: 1.24rem;
        font-weight: 900;
        line-height: 1.3;
      }

      .mobile-floating-purchase .sticky-course-purchase-button {
        min-width: 150px;
        min-height: 48px;
        padding: 0.4rem 0.85rem;
        font-size: 0.9rem;
        font-weight: 800;
        line-height: 1.25;
      }
    }
