/* Cursos: el mismo lenguaje visual de Yamibellezaa, con espacio para aprender. */
body.courses-page { background:#111; color:#f7f1ea; }
.courses-page .site-header { position:absolute; }
.courses-wrap { width:min(1180px,calc(100% - 48px)); margin:auto; }
.courses-top { padding:142px 0 54px; display:flex; justify-content:space-between; align-items:flex-start; gap:30px; }
.courses-kicker { font:500 12px/1.6 Inter,sans-serif; text-transform:uppercase; letter-spacing:.17em; color:#b89672; display:block; margin-bottom:18px; }
.courses-page h1,.courses-page h2,.courses-page h3 { font-family:'Cormorant Garamond',Georgia,serif; font-weight:400; }
.courses-top h1 { font-size:clamp(44px,5vw,66px); line-height:1.05; margin:0 0 20px; }
.courses-top p { max-width:530px; color:#bcb4aa; line-height:1.8; margin:0; }
.courses-account-link { margin-top:12px; padding:12px 0; font-size:14px; border-bottom:1px solid #655444; white-space:nowrap; }
.courses-feature { display:grid; grid-template-columns:.95fr 1fr; min-height:390px; max-width:1040px; border:1px solid #39332c; border-radius:24px; overflow:hidden; background:#1b1916; margin:0 auto 60px; transition:transform 260ms ease,box-shadow 260ms ease; }
.courses-feature-media { display:block; position:relative; min-height:340px; overflow:hidden; }
.courses-feature-image { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; transition:transform 650ms ease; }
.courses-feature-media:focus-visible { outline:3px solid #b89672; outline-offset:-6px; }
.courses-feature:focus-within { transform:translateY(-6px); box-shadow:0 34px 110px rgba(0,0,0,.34); }
.courses-feature:focus-within .courses-feature-image { transform:scale(1.045); }
@media(hover:hover) and (pointer:fine) {
  .courses-feature:hover { transform:translateY(-6px); box-shadow:0 34px 110px rgba(0,0,0,.34); }
  .courses-feature:hover .courses-feature-image { transform:scale(1.045); }
}
.courses-feature-copy { padding:clamp(28px,3.4vw,44px); align-self:center; }
.courses-feature h2 { font-size:clamp(38px,4vw,53px); margin:22px 0 16px; line-height:1.08; }
.courses-feature p { color:#c6bdb2; line-height:1.8; }
.courses-tag { display:inline-block; padding:7px 12px; border:1px solid #5b6554; color:#c8d1bf; border-radius:30px; font-size:12px; }
.courses-meta { display:flex; flex-wrap:wrap; gap:12px 24px; color:#bcb4aa; font-size:14px; margin:25px 0; }
.courses-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:26px 0 0; }
.courses-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; border:1px solid transparent; border-radius:999px; background:#f7f1ea; color:#211a17; font:500 14px/1.4 Inter,sans-serif; padding:15px 23px; cursor:pointer; text-decoration:none; min-height:48px; }
.courses-button:hover { background:#e8ddce; }
.courses-button.secondary { background:transparent; color:inherit; border-color:currentColor; }
.courses-button:disabled { opacity:.55; cursor:wait; }
.courses-button.dark { background:#211a17; color:#f7f1ea; }
.courses-link { text-decoration:underline; text-underline-offset:5px; }
.courses-features { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; padding:0 0 78px; }
.courses-features article { border-top:1px solid #40362b; padding-top:20px; }
.courses-features h3 { font-size:27px; margin:0 0 12px; }
.courses-features p { color:#bcb4aa; font-size:14px; line-height:1.8; }
.courses-breadcrumb { padding-top:133px; font-size:14px; display:flex; gap:12px; align-items:center; color:#bcb4aa; }
.courses-detail { display:grid; grid-template-columns:1.2fr .8fr; gap:70px; padding:42px 0 65px; }
.courses-detail h1 { font-size:clamp(50px,6vw,76px); line-height:1.02; margin:20px 0; }
.courses-detail .courses-intro { font-size:18px; line-height:1.8; color:#cdc5ba; }
.courses-detail-image { border-radius:24px; aspect-ratio:4/5; width:100%; object-fit:cover; }
.courses-outcomes { padding:0; list-style:none; }
.courses-outcomes li { border-bottom:1px solid #39332c; padding:17px 0; color:#d9d0c4; line-height:1.6; }
.courses-outcomes li::before { content:'✧'; color:#b89672; margin-right:12px; }
.courses-curriculum { padding:62px 0 75px; background:#1b1916; }
.courses-curriculum h2 { font-size:42px; margin:0 0 32px; }
.courses-module { border-top:1px solid #453a2e; padding:23px 0; }
.courses-module summary { display:flex; gap:20px; align-items:center; cursor:pointer; list-style:none; font-size:22px; font-family:'Cormorant Garamond',Georgia,serif; }
.courses-module summary::after { content:'+'; margin-left:auto; }
.courses-module[open] summary::after { content:'−'; }
.courses-module summary span { color:#b89672; font:400 13px Inter,sans-serif; }
.courses-module ul { list-style:none; margin:20px 0 0 36px; padding:0; }
.courses-module li { padding:12px 0; font-size:14px; display:flex; gap:20px; justify-content:space-between; color:#bcb4aa; }
.courses-module li a { text-decoration:underline; text-underline-offset:4px; color:#f7f1ea; }
.courses-note { font-size:14px; line-height:1.7; color:#bcb4aa; }
.courses-error { color:#ffe0d5; background:#542b24; border-radius:14px; padding:16px 20px; margin:16px 0; line-height:1.6; }
.courses-status { padding:14px 0; font-size:14px; line-height:1.6; }
.courses-loading { min-height:45vh; display:grid; place-content:center; padding:140px 24px 50px; }
.courses-classroom { background:#f7f1ea; color:#211a17; min-height:80vh; }
.courses-classbar { background:#171613; color:#f7f1ea; padding:122px max(24px,calc((100% - 1180px)/2)) 26px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.courses-classbar p { margin:6px 0 0; color:#bcb4aa; font-size:14px; }
.courses-learning { display:grid; grid-template-columns:280px minmax(0,1fr); gap:64px; padding-top:48px; padding-bottom:80px; }
.courses-sidebar { align-self:start; position:sticky; top:24px; }
.courses-sidebar h2 { font-size:25px; margin:0 0 16px; }
.courses-progress { height:5px; width:100%; accent-color:#788071; background:#e0d7cd; border:0; display:block; margin:14px 0; }
.courses-progress::-webkit-progress-bar { background:#e0d7cd; border-radius:5px; }
.courses-progress::-webkit-progress-value { background:#788071; border-radius:5px; }
.courses-sidebar details { border-top:1px solid #d9ccbe; padding:16px 0; }
.courses-sidebar summary { font-weight:500; font-size:14px; cursor:pointer; line-height:1.6; }
.courses-sidebar ul { padding:10px 0 0; margin:0; list-style:none; }
.courses-sidebar li { margin:4px 0; }
.courses-sidebar a,.courses-sidebar li>span { display:block; padding:10px 12px; border-radius:9px; font-size:14px; line-height:1.6; }
.courses-sidebar a[aria-current] { background:#e8e1d6; font-weight:500; border-left:2px solid #788071; }
.courses-sidebar .unavailable { color:#81776c; }
.courses-lesson { max-width:760px; }
.courses-lesson h1 { font-size:clamp(38px,4vw,54px); margin:0 0 20px; line-height:1.1; }
.courses-lesson h2 { font-size:31px; line-height:1.2; margin:0 0 18px; }
.courses-lesson p,.courses-lesson li { line-height:1.85; font-size:16px; }
.courses-lesson .courses-kicker { color:#755b3e; }
.courses-objective { font-size:18px!important; color:#665a4e; padding-bottom:24px; border-bottom:1px solid #dacfc3; }
.courses-reading { padding:12px 0 18px; }
.courses-media { width:100%; border-radius:16px; margin:20px 0; background:#211a17; }
.courses-practice { background:#eaece5; border:1px solid #d1d7c9; border-radius:18px; padding:30px; margin:22px 0; }
.courses-label { display:block; font-size:14px; font-weight:500; margin:16px 0 9px; }
.courses-input,.courses-textarea,.courses-select { width:100%; background:#fffaf3; color:#211a17; border:1px solid #cfc1b1; border-radius:10px; padding:13px 15px; font:400 16px/1.5 Inter,sans-serif; }
.courses-textarea { min-height:115px; resize:vertical; }
.courses-check { display:flex; align-items:flex-start; gap:12px; font-size:15px; line-height:1.6; margin:20px 0; }
.courses-check input { width:18px; height:18px; accent-color:#788071; flex:0 0 auto; margin-top:3px; }
.courses-resource { border:1px solid #d8cabb; border-radius:14px; padding:20px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:16px 0; font-size:15px; }
.courses-resource span { font-size:12px; letter-spacing:.12em; color:#75634e; }
.courses-quiz { border-top:1px solid #d8cabb; margin-top:38px; padding-top:32px; }
.courses-question { border:0; padding:0; margin:0 0 28px; }
.courses-question legend { line-height:1.7; font-weight:500; margin-bottom:12px; }
.courses-option { display:flex; gap:12px; padding:14px 16px; border:1px solid #d9ccbe; border-radius:12px; margin:8px 0; cursor:pointer; line-height:1.6; font-size:15px; }
.courses-option:has(input:checked) { border-color:#788071; background:#eaece5; }
.courses-option input { accent-color:#788071; margin-top:5px; flex:0 0 auto; }
.courses-feedback { color:#211a17; border-left:3px solid #788071; padding:12px 18px; margin:16px 0; background:#eaece5; font-size:14px; line-height:1.7; }
.courses-feedback.retry { border-color:#a87950; background:#f0e4d6; }
.courses-classroom .courses-note,.courses-lesson .courses-status { color:#6d6256; }
.courses-lesson .courses-error { background:#f6e0d8; color:#772b21; }
.courses-lesson-end { padding:30px 0; margin-top:34px; border-top:1px solid #d8cabb; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:15px; }
.courses-auth { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:140px 0 80px; min-height:85vh; align-items:center; }
.courses-auth h1 { font-size:58px; line-height:1.1; margin:15px 0 25px; }
.courses-auth-story { padding:35px 0; }
.courses-auth-story p { line-height:1.8; color:#bcb4aa; max-width:380px; }
.courses-form-card { background:#f7f1ea; color:#211a17; border-radius:22px; padding:38px; }
.courses-form-card h2 { font-size:34px; margin:0 0 12px; }
.courses-form-card .courses-error { background:#f6e0d8; color:#772b21; }
.courses-form-card .courses-note { color:#6d6256; }
.courses-form-card .courses-button { margin-top:20px; }
.courses-code { word-break:break-all; padding:20px; background:#eaece5; line-height:1.7; border-radius:12px; user-select:all; }
.courses-library-card { display:grid; grid-template-columns:200px 1fr; gap:32px; background:#1b1916; border:1px solid #39332c; border-radius:20px; padding:22px; margin-bottom:25px; }
.courses-library-card img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:12px; }
.courses-library-card h2 { font-size:35px; margin:12px 0; }
.courses-empty { border:1px solid #39332c; border-radius:22px; padding:50px; margin-bottom:70px; }
.courses-empty h2 { font-size:36px; margin:0 0 20px; }
.courses-page :focus-visible { outline:3px solid #b89672; outline-offset:5px; }
.courses-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media(max-width:850px) { .courses-detail { gap:35px; }.courses-learning { grid-template-columns:230px minmax(0,1fr);gap:32px; }.courses-auth {gap:32px;} }
@media(max-width:650px) { .courses-wrap {width:calc(100% - 36px);}.courses-top {padding-top:118px;flex-direction:column;gap:16px;padding-bottom:30px;}.courses-account-link {margin-top:0;}.courses-feature {grid-template-columns:1fr;margin-bottom:46px;}.courses-feature-media {min-height:0;height:240px;}.courses-feature-copy {padding:28px;}.courses-features {grid-template-columns:1fr;gap:18px;padding-bottom:40px;}.courses-features article {padding-top:18px;}.courses-features p {margin-bottom:10px;}.courses-detail {grid-template-columns:1fr;gap:30px;}.courses-detail-image {aspect-ratio:16/10;}.courses-breadcrumb {padding-top:115px;}.courses-curriculum {padding:42px 0;}.courses-classbar {padding:113px 18px 24px;align-items:flex-start;}.courses-learning {grid-template-columns:1fr;gap:34px;padding-top:28px;}.courses-sidebar {position:static;border-bottom:1px solid #d9ccbe;padding-bottom:14px;}.courses-sidebar>details {display:none;}.courses-sidebar.expanded>details {display:block;}.courses-sidebar-toggle {background:none;border:0;color:inherit;padding:10px 0;font:500 14px Inter;cursor:pointer;}.courses-practice {padding:22px;}.courses-auth {grid-template-columns:1fr;padding-top:112px;gap:12px;}.courses-auth-story {padding:0;}.courses-auth h1 {font-size:43px;}.courses-form-card {padding:26px;}.courses-library-card {grid-template-columns:1fr;gap:16px;}.courses-library-card img {aspect-ratio:16/8;}.courses-empty {padding:28px;}.courses-module li {flex-wrap:wrap;gap:6px;} }
@media(min-width:651px) { .courses-sidebar-toggle {display:none;} }
@media(prefers-reduced-motion:reduce) { .courses-page {scroll-behavior:auto;} }

.courses-bonus-module{margin-top:28px;border-top:1px solid #b8967266!important;padding-top:15px}
.courses-bonus-note{font-size:12px;line-height:1.7;color:#7c6855;margin:8px 0 14px}

@media(prefers-reduced-motion:reduce) { .courses-feature,.courses-feature-image {transition:none;} .courses-feature:hover,.courses-feature:focus-within,.courses-feature:hover .courses-feature-image,.courses-feature:focus-within .courses-feature-image {transform:none;} }
